/*
 Theme Name:     Flexi
 Theme URI:      https://www.ui-preview.com/site/flexi/
 Description:    All Web Studio - Divi Child Theme
 Author:         All Web Studio
 Author URI:     https://www.allwebstudio.com
 Template:       Divi
 Version:        1.0.0
*/

:root {
  --color-primary: #860c45;
  --color-secondary: #0c71c3;
}

.d-flex {
  display: flex;
}

.justify-between {
  justify-content: space-between !important;
}

.m-0 {
  margin: 0 !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-8 {
  margin: 2rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.mx-2 {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.my-4 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.mx-4 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.my-8 {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}

.mx-8 {
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.-mx-2 {
  margin-left: -0.5rem !important;
  margin-right: -0.5rem !important;
}

.-mx-3 {
  margin-left: -0.75rem !important;
  margin-right: -0.75rem !important;
}

.-mx-6 {
  margin-left: -1.5rem !important;
  margin-right: -1.5rem !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mr-1 {
  margin-right: 0.25rem !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1 {
  margin-left: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mr-2 {
  margin-right: 0.5rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2 {
  margin-left: 0.5rem !important;
}

.mt-3 {
  margin-top: 0.75rem !important;
}

.mr-3 {
  margin-right: 0.75rem !important;
}

.mb-3 {
  margin-bottom: 0.75rem !important;
}

.ml-3 {
  margin-left: 0.75rem !important;
}

.mt-4 {
  margin-top: 1rem !important;
}

.mr-4 {
  margin-right: 1rem !important;
}

.mb-4 {
  margin-bottom: 1rem !important;
}

.ml-4 {
  margin-left: 1rem !important;
}

.mt-5 {
  margin-top: 1.25rem !important;
}

.mr-5 {
  margin-right: 1.25rem !important;
}

.mt-6 {
  margin-top: 1.5rem !important;
}

.mr-6 {
  margin-right: 1.5rem !important;
}

.mb-6 {
  margin-bottom: 1.5rem !important;
}

.ml-6 {
  margin-left: 1.5rem !important;
}

.mt-7 {
  margin-top: 1.75rem !important;
}

.mt-8 {
  margin-top: 2rem !important;
}

.mr-8 {
  margin-right: 2rem !important;
}

.mb-8 {
  margin-bottom: 2rem !important;
}

.ml-8 {
  margin-left: 2rem !important;
}

.mb-10 {
  margin-bottom: 2.5rem !important;
}

.ml-10 {
  margin-left: 2.5rem !important;
}

.mt-12 {
  margin-top: 3rem !important;
}

.ml-12 {
  margin-left: 3rem !important;
}

.mt-16 {
  margin-top: 4rem !important;
}

.mr-auto {
  margin-right: auto !important;
}

.ml-auto {
  margin-left: auto !important;
}

.-mt-1 {
  margin-top: -0.25rem !important;
}

.-mr-1 {
  margin-right: -0.25rem !important;
}

.-ml-1 {
  margin-left: -0.25rem !important;
}

.-ml-3 {
  margin-left: -0.75rem !important;
}

.-mt-4 {
  margin-top: -1rem !important;
}

.-mb-4 {
  margin-bottom: -1rem !important;
}

.-mt-5 {
  margin-top: -1.25rem !important;
}

.-mt-6 {
  margin-top: -1.5rem !important;
}

.-mb-6 {
  margin-bottom: -1.5rem !important;
}

.-mt-8 {
  margin-top: -2rem !important;
}

.-mb-8 {
  margin-bottom: -2rem !important;
}

.-mt-12 {
  margin-top: -3rem !important;
}

.-mt-16 {
  margin-top: -4rem !important;
}

.-mb-16 {
  margin-bottom: -4rem !important;
}

.-mt-px {
  margin-top: -1px !important;
}

.-mb-px {
  margin-bottom: -1px !important;
}

.opacity-0 {
  opacity: 0 !important;
}

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-100 {
  opacity: 1 !important;
}

.p-0 {
  padding: 0 !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-4 {
  padding: 1rem !important;
}

.p-6 {
  padding: 1.5rem !important;
}

.p-8 {
  padding: 2rem !important;
}

.p-10 {
  padding: 2.5rem !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.px-2 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.py-3 {
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
}

.px-3 {
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
}

.py-4 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.px-5 {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}

.px-6 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.py-8 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.px-8 {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.py-10 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.py-12 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.py-16 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pl-1 {
  padding-left: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2 {
  padding-left: 0.5rem !important;
}

.pt-4 {
  padding-top: 1rem !important;
}

.pr-4 {
  padding-right: 1rem !important;
}

.pb-4 {
  padding-bottom: 1rem !important;
}

.pl-4 {
  padding-left: 1rem !important;
}

.pr-5 {
  padding-right: 1.25rem !important;
}

.pt-6 {
  padding-top: 1.5rem !important;
}

.pr-6 {
  padding-right: 1.5rem !important;
}

.pb-6 {
  padding-bottom: 1.5rem !important;
}

.pl-6 {
  padding-left: 1.5rem !important;
}

.pt-8 {
  padding-top: 2rem !important;
}

.pr-8 {
  padding-right: 2rem !important;
}

.pb-8 {
  padding-bottom: 2rem !important;
}

.pl-8 {
  padding-left: 2rem !important;
}

.pl-10 {
  padding-left: 2.5rem !important;
}

.pt-12 {
  padding-top: 3rem !important;
}

.pl-12 {
  padding-left: 3rem !important;
}

.pt-16 {
  padding-top: 4rem !important;
}

.pb-16 {
  padding-bottom: 4rem !important;
}

.pt-24 {
  padding-top: 6rem !important;
}

.pb-40 {
  padding-bottom: 10rem !important;
}

.text-muted {
  opacity: 0.5;
}

.center-xy {
  display: flex;
  justify-content: center;
  align-items: center;
}

.center-x {
  display: flex;
  justify-content: center;
}

.center-y {
  display: flex;
  align-items: center;
}

/**** This hides the sub menu items on mobile ****/

#primary-menu .et_mobile_menu li ul.hide {
  display: none !important;
}

/**** This adjusts the positioning and the background transparency of the parent menu item on mobile ****/

#primary-menu .et_mobile_menu .menu-item-has-children {
  position: relative;
}

#primary-menu .et_mobile_menu .menu-item-has-children > a {
  background: transparent;
}

/**** This styles the icon and moves it to the right ****/

#primary-menu .et_mobile_menu .menu-item-has-children > a + span {
  position: absolute;
  right: 0;
  top: 0;
  padding: 10px 20px;
  font-size: 20px;
  font-weight: 700;
  cursor: pointer;
  z-index: 3;
}

/**** Here you can swap out the actual icons ****/

span.menu-closed:before {
  content: "\4c";
  display: block;
  font-size: 16px;
  font-family: ETmodules;
}

span.menu-closed.menu-open:before {
  content: "\4d";
}

.hamburger-menu > .et_pb_text_inner {
  position: absolute;
  top: 0px;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  cursor: pointer;
}

.hamburger {
  height: 2px;
  width: 50%;
  margin-right: 5px;
  background-color: rgba(0, 0, 0, 0.5);
  display: inline-block;
  transition: width 0.25s;
}

.hamburger-menu:hover .hamburger {
  width: 80%;
}

.hamburger::after,
.hamburger::before {
  content: "";
  position: absolute;
  background-color: inherit;
  left: 5px;
  right: 5px;
  height: 2px;
}

.hamburger::before {
  top: 12px;
}

.hamburger::after {
  bottom: 12px;
}

.numbered-columns {
  counter-reset: column-counter;
}

.numbered-columns .et_pb_column_1_2 .et_pb_module:before,
.numbered-columns .et_pb_column_1_3 .et_pb_module:before,
.numbered-columns .et_pb_column_1_4 .et_pb_module:before,
.numbered-columns .et_pb_column_1_5 .et_pb_module:before,
.numbered-columns .et_pb_column_1_6 .et_pb_module:before {
  counter-increment: column-counter;
  content: counter(column-counter, decimal-leading-zero);
  line-height: 200%;
  font-size: 30px;
  font-weight: 300;
  opacity: 0.35;
}

.numbered-list ol {
  counter-reset: list-item-counter;
}

.numbered-list ol li {
  counter-increment: list-item-counter;
  display: flex;
  margin-bottom: 20px;
}

.numbered-list ol li::before {
  content: counter(list-item-counter, decimal-leading-zero);
  font-size: 30px;
  opacity: 0.35;
  font-weight: 300;
  margin-right: 10px;
}

.numbered-list.two-column-list ol,
.numbered-list.three-column-list ol,
.numbered-list.four-column-list ol {
  display: flex;
  flex-wrap: wrap;
}

.two-column-list ol li {
  width: 50%;
}

.three-column-list ol li {
  width: 33.3333%;
}

.four-column-list ol li {
  width: 25%;
}

.et_pb_slide_image > img {
  width: 100% !important;
  max-height: none !important;
}

.shape-box,
.shape-box-before::before,
.shape-box-after::after {
  content: "";
  height: 50px;
  width: 50px;
  background-color: rgba(0, 0, 0, 0.05);
  position: absolute;
}

.icon {
  content: attr(data-icon);
  font-family: ETmodules !important;
  font-size: inherit;
  display: inline-block;
  font-style: normal;
}

.icon:before {
  content: attr(data-icon);
}

:root {
  color: #860c45 !important;
}

.text-primary {
  color: #860c45;
}

.text-secondary {
  color: #0c71c3 !important;
}

.text-transparent {
  color: transparent !important;
}

.text-black {
  color: #000 !important;
}

.text-white {
  color: #fff !important;
}

.text-gray-200 {
  color: #edf2f7 !important;
}

.text-gray-300 {
  color: #e2e8f0 !important;
}

.text-gray-400 {
  color: #cbd5e0 !important;
}

.text-gray-500 {
  color: #a0aec0 !important;
}

.text-gray-600 {
  color: #718096 !important;
}

.text-gray-700 {
  color: #4a5568 !important;
}

.text-gray-800 {
  color: #2d3748 !important;
}

.text-gray-900 {
  color: #1a202c !important;
}

.text-red {
  color: red !important;
}

.text-red-500 {
  color: #f56565 !important;
}

.text-red-600 {
  color: #e53e3e !important;
}

.text-red-700 {
  color: #c53030 !important;
}

.text-orange-700 {
  color: #c05621 !important;
}

.text-green-200 {
  color: #c6f6d5 !important;
}

.text-green-500 {
  color: #48bb78 !important;
}

.text-green-600 {
  color: #38a169 !important;
}

.text-green-700 {
  color: #2f855a !important;
}

.text-green-900 {
  color: #22543d !important;
}

.text-teal-200 {
  color: #b2f5ea !important;
}

.text-teal-500 {
  color: #38b2ac !important;
}

.text-teal-600 {
  color: #319795 !important;
}

.text-teal-900 {
  color: #234e52 !important;
}

.text-blue-400 {
  color: #63b3ed !important;
}

.text-blue-500 {
  color: #4299e1 !important;
}

.text-blue-600 {
  color: #3182ce !important;
}

.text-blue-700 {
  color: #2b6cb0 !important;
}

.text-indigo-100 {
  color: #ebf4ff !important;
}

.text-indigo-600 {
  color: #5a67d8 !important;
}

.text-indigo-700 {
  color: #4c51bf !important;
}

.text-purple-300 {
  color: #d6bcfa !important;
}

.text-purple-500 {
  color: #9f7aea !important;
}

.text-purple-600 {
  color: #805ad5 !important;
}

.text-purple-700 {
  color: #6b46c1 !important;
}
