/*
  Landing Page
  .
  .
  .
*/

:root{
    --m-color-gray-200:#E5E7EB;
    --m-color-gray-300: #D2D5DA;
}

/* Container */
.landing-page-container {
    background-color: #f4f4f4;
}
.landing-page-container .site-main{
    max-width: 640px!important;
    min-height: 100dvh;
    margin: auto;
    display: flex;
    flex-direction: column;
    gap:6px;
}
.landing-page-container .site-main .entry-content{
  background-color: #fff;
}

/* Button */
button {
    background-color: var(--e-global-color-accent, #3B82F6);
}
.elementor-widget-button > span{
  align-items: center;
}
.elementor-widget-button :is(.elementor-button-wrapper, .elementor-button-icon) {
  display: flex!important;
}
.elementor-widget-button.elementor-align-justify .elementor-button-text{
  flex-grow: 0;
}
.elementor-widget-button.button-vertical .elementor-button-content-wrapper{
  flex-direction: column;
  align-items: center;
  gap:3px;
}
.elementor-widget-button.button-vertical .elementor-button-icon{
  margin: 0;
}
.elementor-widget-button.button-vertical .elementor-button-text{
  font-size: 0.5em;
}
.elementor-widget-button svg{
  animation: pulse 0.2s infinite;
}
/* Form */
input, textarea{
    margin-top: 0.25rem;
    border: 1px solid var(--m-color-gray-300)!important;
}
/* .elementor-field-group{
    margin-top: 1rem;
} */
.elementor-field-group.elementor-field-type-acceptance{
    margin: 0;
    font-size: 0.9em;
}
.elementor-field-group.elementor-field-type-acceptance .elementor-field-option{
    display: flex;
    align-items: flex-start;
    gap:8px;
}
.elementor-field-group.elementor-field-type-acceptance input{
    margin-top: 0.25rem;
}
.elementor-field-group.elementor-field-type-acceptance label{
    line-height: 1.3em;
}

/* Alert */
  .elementor-form .elementor-form-fields-wrapper .elementor-error {
    padding: 0.75rem !important;
    border: 1px solid #edd3d1 !important;
    border-radius: 4px;
    margin-left: 5px;
    margin-right: 5px;
    background: #fff2f1;
  }
  .elementor-form .elementor-form-fields-wrapper .elementor-error input {
    box-shadow: 0 2px rgba(221, 0, 0, 0.062745098), 0 4px 6px -4px rgba(221, 0, 0, 0.062745098);
    background: #fff;
  }
  .elementor-form .elementor-form-fields-wrapper .elementor-error.edited {
    border: 1px solid #d2e0c2 !important;
    background: #f5f8f1;
  }
  .elementor-form .elementor-form-fields-wrapper .elementor-error.edited input {
    box-shadow: 0 2px rgba(210, 224, 194, 0.2705882353), 0 4px 6px -4px rgba(210, 224, 194, 0.2705882353);
  }
  .elementor-message{
    box-shadow: 0 2px 4px;
      padding: 0.375rem;
      border-radius: 4px;
  }
  .elementor-message-danger{
      background: #fff1f1;
  }

  /* Tel validate */
  .elementor-form .progress-wrapper {
    width: 100%;
    height: 0;
    margin-top: 0;
    background: #e4e4e4;
    position: relative;
    border-radius: 10px;
  }
  .elementor-form .progress-wrapper .validate-progress {
    width: 0;
    height: 100%;
    background: #6bd36f;
    position: absolute;
    border-radius: 10px;
  }
  .elementor-form .progress-wrapper.active {
    height: 4px;
    margin-top: 10px;
  }


  /* Redirect */
  .redirect-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-height: 60dvh;
    z-index: 1000;
    background: #fff;
  }
  .redirect-container .redirect-box{
    min-height: 60dvh;
    width:100%;
    background: #fff;
    color: #323232;
    padding: 1rem;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    font-size: 1.35em;
    position: relative;
  }
  .redirect-container .tag{
    /* background: #dcffdb; */
    /* margin-left: 5px; */
    border-radius: 10px;
    /* padding: 0px 10px; */
    color: #02aa00;
  }
  .redirect-container img{
    max-width: 60px;
    margin-bottom: 1em;
  }
  .redirect-container .redirect-counter{
    font-size: 1rem;
    color: #9c9c9c;
    margin-top: 5px;
  }
  .redirect-container .loading{
    animation: spin 1.2s infinite;
    fill:#2dc62b;
  }
    @keyframes spin {
      from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
    }
  /* Button */
  .redirect-container .redirect-button{
    background-color: #2dc62b;
    color: #fff;
    border: 0;
    border-radius: 30px;
    margin-top: 1rem;
    font-weight: bold;
    padding: 0.5rem 1rem;
  }
  .redirect-container .cancel{
    background-color: #fff!important;
    border: none;
    color: #9c9c9c; 
    position: absolute;
    top: 15px;
    right:15px;
    display: none;
    fill:#bebebe;
    cursor: pointer;
  }
  /* Effect */
  .redirect-container.fade-out .redirect-box{
    opacity: 0;
    bottom: -100%!important;
  }
  .redirect-container.fixed .redirect-box{
    position: fixed;
    transition: all 0.3s ease-in;width: 100%;
    max-width: 640px;
    bottom: 0;
    transition: all 0.6s ease-in-out;
  }
  .redirect-container.fixed .cancel{
    display: block;
  }
  /* Mobile */
  @media screen and (max-width:649px) {
    .redirect-container.fixed .redirect-box{
      box-shadow: 1px -30px 30px #0c0d0e20;
    }
  }

/* Editor mode */
.elementor-editor-active .redirect-container.fixed .redirect-box{
	position:relative!important;
}

/* Checkout */
.checkout-sumary{
  border: 1px solid #e8e8e8;
  border-radius: 6px;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
  background: #fcfcfc;
  box-shadow: 0 10px 10px #00000010;
}
.checkout-product span{
  float: right;
}
.checkout-product .discount{ 
  color: #01aa01;
}
.checkout-product .total-payment{
  text-align: center;
  font-weight: bold;
  color: #049d04;
  background: #eafaea;
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
  margin-top: 0.25rem;
}
/* Form */
.elementor-message.elementor-message-success{
  display: none!important;
}
.elementor-field-group-field_6{
  margin-top:0.5em!important;
}