html {
  height: 100%;
  font-size: 100%;
}

/*========== layout ==========*/
.body-inner {
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  min-height: 100%;
  background-repeat: no-repeat;
  background-size: 1200px 1200px, 1200px 1200px, 1000px 1000px, 760px 760px;
  background-position: -225px 0, -600px 180vmin, -125px calc(50% + 2000px), -5px 100%;
}

.body-inner.indexPage {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.2) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.2) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.2) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.2) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.2) 0%, rgba(93, 106, 232, 0) 100%) !important;
  background-size: 1040px 1040px, 660px 660px, 960px 960px, 960px 960px, 760px 760px !important;
  background-position: 100% -100px, calc(50% - 330px) 500px, -150px 50%, 50% calc(50% + 500px), 100% 100% !important;
}

.body-inner.bg-tech {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
  background-size: 1200px 1200px, 760px 760px;
  background-position: 50% 0, calc(100% + 100px) 100%;
}

.body-inner.bg-coral {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.3) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.3) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
}
.body-inner.bg-blue {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(0, 210, 254, 0.3) 0%, rgba(0, 210, 254, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(0, 210, 254, 0.3) 0%, rgba(0, 210, 254, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
}
.body-inner.bg-red {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(230, 0, 80, 0.3) 0%, rgba(230, 0, 80, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(230, 0, 80, 0.3) 0%, rgba(230, 0, 80, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
}
.body-inner.bg-long.bg-coral {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.3) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.3) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(243, 132, 120, 0.3) 0%, rgba(243, 132, 120, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
}
.body-inner.bg-long.bg-blue {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(0, 210, 254, 0.3) 0%, rgba(0, 210, 254, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(0, 210, 254, 0.3) 0%, rgba(0, 210, 254, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(0, 210, 254, 0.3) 0%, rgba(0, 210, 254, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
}
.body-inner.bg-long.bg-red {
  background-image: radial-gradient(50% 50% at 50% 50%, rgba(230, 0, 80, 0.3) 0%, rgba(230, 0, 80, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(230, 0, 80, 0.3) 0%, rgba(230, 0, 80, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(230, 0, 80, 0.3) 0%, rgba(230, 0, 80, 0) 100%), radial-gradient(50% 50% at 50% 50%, rgba(93, 106, 232, 0.3) 0%, rgba(93, 106, 232, 0) 100%);
}
@media (min-width: 768px) {
  .body-inner {
    background-size: 83vw 83vw, 83vw 83vw, 69vw 69vw, 53vw 53vw;
    background-position: 25vw 0, calc(((100vw - 768px) / 2 + 4%) * -1) 30vmax, 50% 50%, calc(100% + 100px) 100%;
  }
}
@media (min-width: 1200px) {
  .body-inner {
    background-position: 25vw -100px, calc(((100vw - 1180px) / 2 + 4%) * -1) 30vmax, 50% 50%, calc(100% + 100px) 100%;
  }
}
.body-inner.bg-long {
  background-size: 1200px 1200px, 1200px 1200px, 800px 800px, 1000px 1000px, 1000px 1000px, 760px 760px;
  background-position: -225px 0, -600px 180vmin, -25px calc(50% - 800px), -500px calc(50% + 1000px), -125px calc(50% + 2000px), -5px 100%;
}
@media (min-width: 768px) {
  .body-inner.bg-long {
    background-size: 83vw 83vw, 83vw 83vw, 55vw 55vw, 69vw 69vw, 69vw 69vw, 53vw 53vw;
    background-position: 25vw 0, calc(((100vw - 768px) / 2 + 4%) * -1) 30vmax, 45vw calc(50% - 400px), calc(((100vw - 768px) / 2 + 0%) * -1) calc(50% + 400px), 50% 82%, calc(100% + 100px) 100%;
  }
}
@media (min-width: 1200px) {
  .body-inner.bg-long {
    background-position: 25vw -100px, calc(((100vw - 1180px) / 2 + 4%) * -1) 30vmax, 45vw calc(50% - 400px), calc(((100vw - 1180px) / 2 + 0%) * -1) calc(50% + 400px), 50% 82%, calc(100% + 100px) 100%;
  }
}

@media (min-width: 768px) {
  html[lang=ar] .body-inner {
    background-position: -15vw 100px, calc(((100vw - 768px) / 2 + 100%) * 1) 29vmax, 50% 68%, -8% 100%;
  }
   html[lang=ar] .body-inner.indexPage {
    background-position: 0 -100px, calc(50% + 330px) 500px, calc(100% + 150px) 50%, 50% calc(50% + 500px), 0 100% !important;
  } 
}
@media (min-width: 1200px) {
  html[lang=ar] .body-inner {
    background-position: -15vw -100px, calc(((100vw - 1180px) / 2 + 100%) * 1) 29vmax, 50% 68%, -8% 100%;
  }
}
@media (min-width: 768px) {
  html[lang=ar] .body-inner.bg-long {
    background-position: -15vw -100px, calc(((100vw - 768px) / 2 + 10%) * 1) 29vmax, 0 calc(50% - 400px), calc(((100vw - 768px) / 2 + 100%) * 1) calc(50% + 400px), 50% 82%, -8% 100%;
  }
}
@media (min-width: 1200px) {
  html[lang=ar] .body-inner.bg-long {
    background-position: -15vw -100px, calc(((100vw - 1180px) / 2 + 100%) * 1) 29vmax, 0 calc(50% - 400px), calc(((100vw - 1180px) / 2 + 100%) * 1) calc(50% + 400px), 50% 82%, -8% 100%;
  }
}

html[lang=ar] .body-inner.bg-tech {
  background-position: 50% 0, -100px 100%;
}


.container-fluid {
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}
.container-fluid-main {
  flex: 1;
}
.container-fluid > .container-fluid-inner {
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.container-fluid.allWidth {
  padding-right: 0;
  padding-left: 0;
}
.container-fluid.allWidth img {
  max-width: 100%;
  height: auto;
}

/*========== /layout ==========*/
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 0;
  font-weight: 700;
  line-height: 1.2;
}

h1, .h1,
h2, .h2,
h3, .h3 {
  letter-spacing: -0.03em;
}

h1, .h1 {
  font-size: 32px;
  margin-bottom: 20px;
}

h2, .h2 {
  font-size: 32px;
  margin-bottom: 40px;
  line-height: 1.25;
}

.page-template-all_features_tpl h2 > a:hover {
	color: #000;
}

h3, .h3 {
  font-size: 24px;
  margin-bottom: 20px;
  line-height: 1.33;
}

h4, .h4 {
  font-size: 20px;
  margin-bottom: 20px;
}

h5, .h5 {
  font-size: 18px;
  margin-bottom: 20px;
}

h6, .h6 {
  font-size: 16px;
  margin-bottom: 20px;
}

@media (min-width: 992px) {
  h1, .h1 {
    font-size: 40px;
    margin-bottom: 20px;
  }
}



p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.fw-regular {
  font-weight: 400;
}
.fw-bold, .btn, b, strong {
  font-weight: 700;
}

small {
  font-size: 12px;
}

.c-white {
  color: #fff;
}

.c-gray {
  color: #B2B2B2;
}

.c-purple {
  color: #FF0090;
}

.c-red {
  color: #E60050;
}

.c-coral {
  color: #F38478;
}

.c-violet {
  color: #5D6AE8;
}

.c-green {
  color: #00AAB9;
}

.c-blue {
  color: #00D2FE;
}

.c-blueDark {
  color: #2100FF;
}

.btn {
  font-family: "Mulish";
  font-size: 20px;
  line-height: 1.4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  min-width: 120px;
  max-width: 100%;
  margin-bottom: 15px;
  padding: 14px 40px;
  text-decoration: none !important;
  border-radius: 16px;
  color: #fff !important;
  position: relative;
  z-index: 0;
  box-shadow: 0px 12px 24px rgba(255, 0, 144, 0.25);
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
}
.btn a {
  text-decoration: none;
  color: inherit !important;
}
.btn-purple {
  background-color: #FF0090;
}
.btn-purple:hover {
  box-shadow: 0px 16px 28px rgba(255, 0, 144, 0.3);
}
.btn-purple:active {
  box-shadow: inset 0px 4px 8px rgba(0, 0, 0, 0.2);
}
.btn-purple.disabled {
  pointer-events: none;
  box-shadow: 0px 12px 24px rgba(255, 0, 144, 0.25);
  opacity: 0.3;
}
.btn-w-auto {
  width: auto;
  min-width: auto;
}
@media (max-width: 767.98px) {
  .btn {
    width: 100%;
  }
}
.btn.btn-small {
  min-height: 48px;
  box-shadow: 0px 4px 12px rgba(255, 0, 144, 0.1);
}
.btn.btn-small:hover {
  box-shadow: 0px 8px 16px rgba(255, 0, 144, 0.1);
}
.btn.btn-small:active {
  box-shadow: inset 0px 4px 8px rgba(0, 0, 0, 0.2);
}
.btn.btn-small.disabled {
  opacity: 0.3;
  box-shadow: 0px 4px 12px rgba(255, 0, 144, 0.1);
}
.btn.disabled .btn-inner {
  opacity: 0.5;
}

/*========== Form ==========*/
.form-input_inner {
  position: relative;
  margin-bottom: 20px;
  min-height: 46px;
  border-radius: 16px;
  background: transparent;
  z-index: 0;
}
.form-input_inner [type=text],
.form-input_inner [type=email],
.form-input_inner [type=password],
.form-input_inner [type=tel],
.form-input_inner textarea {
  font-family: "Mulish";
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 22px 20px 8px;
  position: relative;
  z-index: 1;
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, 0.3);
  color: #000;
}

input {outline: none;}
input:-webkit-autofill {
	-webkit-box-shadow: inset 0 0 0 50px #f5f5f5 !important;
	-webkit-text-fill-color: rgba(0, 0, 0, 1) !important;
	color: rgba(0, 0, 0, 1) !important;
}

.form-input_inner [type=password]:not(:placeholder-shown), .form-input_inner [type=password]:focus,
.form-input_inner [type=text]:not(:placeholder-shown), .form-input_inner [type=text]:focus,
.form-input_inner [type=email]:not(:placeholder-shown),
.form-input_inner [type=email]:focus,
.form-input_inner [type=password]:not(:placeholder-shown),
.form-input_inner [type=password]:focus,
.form-input_inner [type=tel]:not(:placeholder-shown),
.form-input_inner [type=tel]:focus,
.form-input_inner textarea:not(:placeholder-shown),
.form-input_inner textarea:focus {
  border-color: #000;
  box-shadow: none;
}

.form-input_inner [type=password]:focus,
.form-input_inner [type=text]:focus,
.form-input_inner [type=email]:focus,
.form-input_inner [type=tel]:focus {
	border-color: #FF0090;
	box-shadow: 0 0 0 1px #ff0090;
}

.form-input_inner [type=password].error,
.form-input_inner [type=text].error,
.form-input_inner [type=email].error,
.form-input_inner [type=tel].error {
	border-color: #E60050;
	box-shadow: 0 0 0 1px #E60050;
}

.form-input_inner [type=password].error,
.form-input_inner [type=tel].error,
.form-input_inner [type=email].error,
.form-input_inner [type=text].error,
.form-input_inner [type=password].error ~ .form-label,
.form-input_inner [type=tel].error ~ .form-label,
.form-input_inner [type=email].error  ~ .form-label,
.form-input_inner [type=text].error  ~ .form-label {
	color: rgba(230,0,80,.3);
}


.form-input_inner [type=password].error:focus,
.form-input_inner [type=tel].error:focus,
.form-input_inner [type=email].error:focus,
.form-input_inner [type=text].error:focus {
	color: #000;
}


.form-input_inner [type=password].error:focus ~ .form-label,
.form-input_inner [type=tel].error:focus ~ .form-label,
.form-input_inner [type=email].error:focus  ~ .form-label,
.form-input_inner [type=text].error:focus  ~ .form-label {
	color: rgba(230,0,80,1);
}


.form-input_inner [type=password]:not(:placeholder-shown) ~ label, .form-input_inner [type=password]:focus ~ label,
.form-input_inner [type=text]:not(:placeholder-shown) ~ label, .form-input_inner [type=text]:focus ~ label,
.form-input_inner [type=email]:not(:placeholder-shown) ~ label,
.form-input_inner [type=email]:focus ~ label,
.form-input_inner [type=password]:not(:placeholder-shown) ~ label,
.form-input_inner [type=password]:focus ~ label,
.form-input_inner [type=tel]:not(:placeholder-shown) ~ label,
.form-input_inner [type=tel]:focus ~ label,
.form-input_inner textarea:not(:placeholder-shown) ~ label,
.form-input_inner textarea:focus ~ label {
  color: rgba(0,0,0,.3);
  font-size: 12px;
  top: 8px;
}
.form-input_inner [type=text][disabled],
.form-input_inner [type=email][disabled],
.form-input_inner [type=password][disabled],
.form-input_inner [type=tel][disabled],
.form-input_inner textarea[disabled] {
  pointer-events: none;
}
.form-input_inner textarea {
  height: 100px !important;
  resize: vertical;
  padding-top: 20px;
}
.form-input_inner label {
  font-family: "Mulish";
  color: #B2B2B2;
  font-size: 16px;
  line-height: 1;
  left: 21px;
  position: absolute;
  top: 19px;
  margin: 0;
  transition: ease all 0.2s;
  z-index: 1;
  width: 0;
  white-space: nowrap;
  pointer-events: none;
}

html[lang=ar] .form-input_inner label {
	right: 21px;
	left: auto;
}

.form-radio, .form-check {
  margin: 0;
  padding: 0;
}
.form-radio_inner, .form-check_inner {
  display: inline-flex;
  position: relative;
  vertical-align: top;
  align-items: center;
  cursor: pointer;
}
.form-radio_inner > input[type=radio], .form-radio_inner > input[type=checkbox], .form-check_inner > input[type=radio], .form-check_inner > input[type=checkbox] {
  cursor: pointer;
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 1;
}
.form-radio_inner.checked .form-check-box, .form-radio_inner.checked .form-radio-box, .form-radio_inner > input:checked ~ .form-check-box, .form-radio_inner > input:checked ~ .form-radio-box, .form-check_inner.checked .form-check-box, .form-check_inner.checked .form-radio-box, .form-check_inner > input:checked ~ .form-check-box, .form-check_inner > input:checked ~ .form-radio-box {
  box-shadow: 0 0 0 1px #FF0090;
  border-color: #FF0090;
  transition: box-shadow 0.2s, border-color 0.2s 0s;
}
.form-radio_inner.checked .form-check-box::after, .form-radio_inner.checked .form-radio-box::after, .form-radio_inner > input:checked ~ .form-check-box::after, .form-radio_inner > input:checked ~ .form-radio-box::after, .form-check_inner.checked .form-check-box::after, .form-check_inner.checked .form-radio-box::after, .form-check_inner > input:checked ~ .form-check-box::after, .form-check_inner > input:checked ~ .form-radio-box::after {
  opacity: 1;
  transition: opacity 0.2s 0s;
}
.form-radio_inner.checked:hover .form-check-box::after, .form-radio_inner.checked:hover .form-radio-box::after, .form-radio_inner > input:checked:hover ~ .form-check-box::after, .form-radio_inner > input:checked:hover ~ .form-radio-box::after, .form-check_inner.checked:hover .form-check-box::after, .form-check_inner.checked:hover .form-radio-box::after, .form-check_inner > input:checked:hover ~ .form-check-box::after, .form-check_inner > input:checked:hover ~ .form-radio-box::after {
  filter: contrast(0.4);
  opacity: 0.9;
}
.form-radio_inner input:disabled ~ .form-check-content,
.form-radio_inner input:disabled ~ .form-radio-content,
.form-radio_inner input:disabled ~ .targetChecked,
.form-radio_inner input:disabled ~ .form-radio-box,
.form-radio_inner input:disabled ~ .form-radio-txt,
.form-radio_inner input:disabled ~ .form-check-box,
.form-radio_inner input:disabled ~ .form-check-txt,
.form-radio_inner input.disabled ~ .form-check-content,
.form-radio_inner input.disabled ~ .form-radio-content,
.form-radio_inner input.disabled ~ .targetChecked,
.form-radio_inner input.disabled ~ .form-radio-box,
.form-radio_inner input.disabled ~ .form-radio-txt,
.form-radio_inner input.disabled ~ .form-check-box,
.form-radio_inner input.disabled ~ .form-check-txt, .form-check_inner input:disabled ~ .form-check-content,
.form-check_inner input:disabled ~ .form-radio-content,
.form-check_inner input:disabled ~ .targetChecked,
.form-check_inner input:disabled ~ .form-radio-box,
.form-check_inner input:disabled ~ .form-radio-txt,
.form-check_inner input:disabled ~ .form-check-box,
.form-check_inner input:disabled ~ .form-check-txt,
.form-check_inner input.disabled ~ .form-check-content,
.form-check_inner input.disabled ~ .form-radio-content,
.form-check_inner input.disabled ~ .targetChecked,
.form-check_inner input.disabled ~ .form-radio-box,
.form-check_inner input.disabled ~ .form-radio-txt,
.form-check_inner input.disabled ~ .form-check-box,
.form-check_inner input.disabled ~ .form-check-txt {
  cursor: default;
  opacity: 0.2;
}
.form-radio_inner input:disabled ~ .radio-box,
.form-radio_inner input.disabled ~ .radio-box,
.form-radio_inner input:disabled ~ .check-box,
.form-radio_inner input.disabled ~ .check-box, .form-check_inner input:disabled ~ .radio-box,
.form-check_inner input.disabled ~ .radio-box,
.form-check_inner input:disabled ~ .check-box,
.form-check_inner input.disabled ~ .check-box {
  opacity: 0.8;
}
.form-radio-txt, .form-check-txt {
  line-height: 1.2;
}
.form-check-box, .form-radio-box {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  align-self: center;
  background-color: transparent;
  margin-right: 7px;
  border: 1px solid rgba(0, 0, 0, 0.7);
  margin-top: 0;
  width: 24px;
  height: 24px;
  min-width: 24px;
  position: relative;
  transition: border-color 0.3s 0s;
}
.form-check-box::after, .form-radio-box::after {
  content: "";
  opacity: 0;
  position: absolute;
  z-index: 0;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-position: center;
  transition: opacity 0.3s 0s;
}
.form-check-box {
  border-radius: 8px;
}
.form-check-box::after {
  background-image: url(../images/icon/check.svg);
}
.form-radio-box {
  border-radius: 50%;
}
.form-radio-box::after {
  background-image: url(../images/icon/check.svg);
}

/*========== /Form ==========*/
