/* Benefits card halo — targets Elementor's inner wrapper */

html {
    scroll-behavior: smooth;
}

.cam-bcard .e-con-inner {

    position: relative;

}

#cam-hero {
  position: relative;
  background-size: 100% auto;
}

#cam-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    transparent           68%,
    rgba(255,255,255,.45) 88%,
    #ffffff              100%
  );
  pointer-events: none;
  z-index: 0;
}


/* Fade to white at the bottom so it blends into the next section */
.aurora::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
            transparent 68%,
            rgba(255, 255, 255, .45) 88%,
            #ffffff 100%);
}

#cam-site-header.elementor-sticky--active {
    backdrop-filter: blur(18px);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .08);
}

.top-text .elementor-icon {
    position: relative;
}

.top-text .elementor-icon::after {
    content: "";
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    border: 1.5px solid #3bb78a;
    opacity: 0.5;
    animation: ping 2s cubic-bezier(0, 0, .2, 1) infinite;
    pointer-events: none;
}

.cam-pt-list-before svg,
.cam-pt-list-after svg {
    margin: 0 !important;
}

@keyframes ping {
    0% {
        transform: scale(1);
        opacity: 0.5;
    }

    75%,
    100% {
        transform: scale(1.9);
        opacity: 0;
    }
}

.cam-bcard .e-con-inner::before {

    content: '';

    position: absolute;

    inset: -1px;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    transition: opacity .4s;

    background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%),

            rgba(59, 183, 138, .16),

            transparent 55%);

    z-index: 0;

}

.cam-bcard:hover .e-con-inner::before {

    opacity: 1;

}



/* Content sits above halo */

.cam-bcard .e-con-inner>* {

    position: relative;

    z-index: 1;

}



.sub-title {

    max-width: max-content !important;

    padding: 4px 16px !important;

}



.sub-title .elementor-icon-box-icon {

    margin-top: 10px
}



.sub-title .elementor-icon-box-content {

    height: 24px
}



.sub-title h3 {

    margin-block-start: 0.4rem !important;

}


.use-cases img {

    filter: saturate(.96) contrast(.98);

}



.use-cases .usecase-icon .elementor-icon-box-content {

    max-height: 30px;
    ;

}



.process-list .elementor-icon-box-content {

    max-height: 20px !important
}



.process-list .elementor-icon-box-icon {

    margin-top: 12px
}

.solution-icon-box .elementor-icon-box-icon {
    width: 30px;
    height: 30px;
    border-radius: 9px;
    background: #e9fbf4;
    color: #239b63;
    display: grid !important;
    place-items: center;
    border: 1px solid rgba(35, 155, 99, .18);
    margin-top: -2px
}

.solution-icon-box .elementor-icon-box-content {
    height: 35px
}

.process-container .source-lines {
    display: grid;
    gap: 6px;
}

.process-container .source-lines i {
    display: block;
    height: 6px;
    border-radius: 999px;
    background: #dfe8e6;
}

.process-container h3 {
    margin-block-end: 0.5em
}

.example-arrow .elementor-icon {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #3bb78a, #20b0c7);
    box-shadow: 0 18px 34px -22px rgba(32, 176, 199, 0.8);
    margin: 0 auto;
}


.step-label {
    background: linear-gradient(180deg, #3bb78a 0%, #20b0c7 48%, #784f9e 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    /* important fix for Safari/Chrome */
    color: transparent;
    text-shadow: none;
}

.process-inner-text {
    max-width: max-content !important;
}

#submit-btn {
    background: linear-gradient(135deg, #3bb78a, #20b0c7);
}

.step-icon .elementor-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 13px;
    transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.step-icon .elementor-icon-wrapper svg {
    fill: none !important;
}

.bg-green .elementor-icon-wrapper {
    background: linear-gradient(135deg, #3ec79b, #2aa57e);
}

.bg-blue .elementor-icon-wrapper {
    background: linear-gradient(135deg, #35bdd3, #1ba0b6);
}

.process-icon-box-container:hover .elementor-icon-wrapper {
    transform: scale(1.08) rotate(-4deg);
}


.bg-purple .elementor-icon-wrapper {
    background: linear-gradient(135deg, #8a5fb0, #784f9e);
}

.cam-hero-btn .elementor-button-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.25);
  margin-left: 15px;
}

.cam-hero-btn .elementor-button-content-wrapper {
  align-items: center;
}

.cam-hero-btn .elementor-button-icon svg {
  transition: transform 0.3s ease;
}

.cam-hero-btn:hover .elementor-button-icon svg {
  transform: translateX(3px);
}



.footer a:hover {

    color: #20b0c7;

}

#inlineReviewConfirm,
#inlineReviewConfirmPopup {
  display: none !important;
  visibility: hidden !important;
}

#inlineReviewConfirm.cam-confirm-visible,
#inlineReviewConfirmPopup.cam-confirm-visible {
  display: flex !important;
  visibility: visible !important;
}

[data-widget_type="form.default"] .elementor-message-success {
  display: none !important;
}


#process-review input:focus, #process-review textarea:focus{
    border-color: #20b0c7;
    box-shadow: 0 0 0 4px rgba(32, 176, 199, .1);
}


@media (max-width:767px) {
   #cam-hero{
    background-image: unset !important;
   }

  .sub-title {
    max-width: max-content !important;
    padding: 10px 16px !important;
}

.sub-title .elementor-icon-box-wrapper{
    margin-top: -5px;
}


    
}