/**** font-family: 'Bai Jamjuree', sans-serif;  ****/


/*********** CSS Variables ***********/
:root {

  --black_color1: #191920;
  --black_color2: #32333F;
  --black_color3: #4A4D5F;
  --black_color4: #828598;
  --black_color5: #E0E0E5;
  --black_color6: #1C1D1D;

  --blue_color1: #032490;
  --blue_color2: #2349C3;
  --blue_color3: #D7DFF7;
  --blue_color4: #395FD8;

  --purple_color1: #451B5D;
  --purple_color2: #794198;
  --purple_color3: #E8DCEF;
  --purple_color4: #A254CC;
  --purple_color5: #FAEFFF;
  --purple_color6: #C588E6;
  --purple_color7: #E3B1FF;
  --purple_color8: #F1D8FF;
  --purple_color9: #9BAEEB;

  --green_color1: #447957;
  --green_color2: #549B6E;
  --green_color3: #E3F0E8;
  --green_color4: #8DB912;
  --green_color5: #F4FDDA;
  --green_color6: #AEDB2E;
  --green_color7: #E2F8A3;
  --green_color8: #C6F249;
  --green_color9: #40FFB5;

  --orange_color1: #F1AD30;
  --orange_color2: #FCEFD5;
  --orange_color3: #B9821E;
  --orange_color4: #D89E33;

  --cyan_color1: #26B1C4;
  --cyan_color2: #EFFDFF;
  --cyan_color3: #D6FAFF;
  --cyan_color4: #ADF5FF;
  --cyan_color5: #67D4E3;

  --yellow_color1: #FFDB45;
  --yellow_color2: #FFF8DA;
  --yellow_color3: #FFEDA1;

  --gray_color: #F9F9FA;

  --paragraph_color: #515467;
  --white_color: #ffffff;
  --black_color: #000000;
  --border_color: rgba(28, 29, 29, 0.05);

  --body_font: 'Bai Jamjuree', sans-serif;
  --heading_font: "stolzl";

  --fw-700: 700;
  --fw-600: 600;
  --fw-500: 500;
  --fw-400: 400;
  --fw-300: 300;
  --fw-200: 200;

  --font_14: 14px;
  --font_16: 16px;

}

/*********** CSS Variables END ***********/






/*********** Common Style ***********/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}


html {
  -webkit-font-smoothing: antialiased;
}

body {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: none;
  color: var(--black_color1);
  font-weight: var(--fw-500);
  font-size: var(--font_16);
  font-family: var(--body_font);
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.row:before,
.row:after,
.nav:before,
.nav:after {
  display: table;
  content: " ";
}

.clearfix:after,
.container:after,
.row:after,
.nav:after {
  clear: both;
}

.row:after,
.row:before {
  display: none;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 20px 0;
  padding: 0;
  letter-spacing: -0.42px;
  text-transform: capitalize;
  font-family: var(--heading_font);
}

h1,
.h1,
.h1_design {
  font-size: 38px;
  line-height: 42px;
  letter-spacing: -0.76px;
  color: var(--blue_color1);
}

h2,
.h2 {
  font-size: 28px;
  line-height: 36px;
  font-weight: var(--fw-700);
  letter-spacing: -0.56px;
  color: var(--blue_color1);
}

h3,
.h3 {
  font-size: 21px;
  line-height: 28px;
  font-weight: var(--fw-500);
  color: var(--black_color2);
}

h4,
.h4 {
  font-size: 20px;
  line-height: 26px;
}

h5,
.h5 {
  font-size: 18px;
  line-height: 24px;
}

h6,
.h6 {
  font-size: 16px;
  line-height: 24px;
}

h1.hero_title ,.h1_style{
  letter-spacing: -1.02px;
  font-size: 51px;
  line-height: 58px;
}

.body_font {
  font-family: var(--body_font);
}

.heading_font {
  font-family: var(--heading_font);
}

p {
  margin: 0 0 15px 0;
  letter-spacing: -0.08px;
  color: var(--paragraph_color);
  line-height: 22px;
}

.intro-text,
.intro-text p {
  font-size: 21px;
  line-height: 28px;
  color: var(--black_color3);
}

img {
  vertical-align: middle;
  border: 0;
  max-width: 100%;
}

a {
  text-decoration: none;
  color: var(--black_color1);
  outline: none;
  transition: all ease-in 0.3s;
}

a:hover {
  outline: none;
  color: var(--blue_color1);
}

a[href^=tel] {
  text-decoration: none;
}

ul,
ol {
  margin: 0 0 15px;
  padding: 0 0 20px;
}

	
.tt-none {
  text-transform: none;
}

.button {
  letter-spacing: 0;
  background-color: var(--blue_color2);
  color: var(--white_color);
  font-weight: var(--fw-700);
  display: inline-flex;
  font-size: var(--font_14);
  line-height: 19px;
  padding: 8px 15px;
  border-radius: 6px;
  text-transform: capitalize;
  align-items: center;
  transition: all ease-out 0.3s;
}

.button:hover {
  background: var(--cyan_color2);
  color: var(--cyan_color1);
}

.button .arrow {
  display: flex;
  margin-left: 10px;
  align-items: center;
  height: 18px;
  width: 18px;
  position: relative;
}

.button .arrow:before {
  content: '';
  height: 14px;
  width: 14px;
  background: var(--cyan_color5);
  border-radius: 4px;
  display: block;
  position: absolute;
  transform: rotate(45deg);
  transition: all ease-out 0.3s;
  right: 3px;
}

.button:hover .arrow:before {
  background: var(--cyan_color3);
  border-radius: 50%;
}

.button .arrow svg {
  position: relative;
  left: -1px;
  transition: all 0.3s ease-out;
}

.button:hover .arrow svg {
  left: 2px;
}

.button .arrow path+path,
.button .arrow line {
  stroke: var(--white_color);
  transition: all 0.3s ease-out;
}

.button:hover .arrow path+path,
.button:hover .arrow line {
  stroke: var(--cyan_color1);
}

.button+.button {
  margin-left: 10px;
}


/* Button Green */
.button.button-green {
  background: var(--green_color2);
}

.button.button-green:hover {
  background: var(--green_color5);
  color: var(--green_color4);
}

.button.button-green .arrow:before {
  background: var(--green_color6);
}

.button.button-green:hover .arrow:before {
  background: var(--green_color7);
}

.button.button-green:hover .arrow path+path,
.button.button-green:hover .arrow line {
  stroke: var(--green_color4);
}

/* Button Purple */
.button.button-purple {
  background: var(--purple_color2);
}

.button.button-purple:hover {
  background: var(--purple_color5);
  color: var(--purple_color4);
}

.button.button-purple .arrow:before {
  background: var(--purple_color6);
}

.button.button-purple:hover .arrow:before {
  background: var(--purple_color7);
}

.button.button-purple:hover .arrow path+path,
.button.button-purple:hover .arrow line {
  stroke: var(--purple_color4);
}

/* Button Yellow */
.button.button-yellow {
  background: var(--yellow_color1);
  color: var(--black_color1);
}

.button.button-yellow:hover {
  background: var(--yellow_color2);
  color: var(--black_color1);
}

.button.button-yellow .arrow:before {
  background: var(--yellow_color3);
}

.button.button-yellow:hover .arrow:before {
  background: var(--yellow_color3);
}

.button.button-yellow .arrow path+path,
.button.button-yellow .arrow line {
  stroke: var(--black_color1);
}

/* Button Green2 */
.button.button-green2 {
  background: var(--green_color8);
  color: var(--black_color1);
}

.button.button-green2:hover {
  background: var(--green_color5);
  color: var(--black_color1);
}

.button.button-green2 .arrow:before {
  background: var(--green_color7);
}

.button.button-green2 .arrow path+path,
.button.button-green2 .arrow line {
  stroke: var(--black_color1);
}

/* Button Purple 2 */
.button.button-purple2 {
  background: var(--purple_color7);
  color: var(--black_color1);
}

.button.button-purple2:hover {
  background: var(--purple_color5);
  color: var(--black_color1);
}

.button.button-purple2 .arrow:before {
  background: var(--purple_color8);
}

.button.button-purple2:hover .arrow:before {
  background: var(--purple_color7);
}

.button.button-purple2 .arrow path+path,
.button.button-purple2 .arrow line {
  stroke: var(--black_color1);
}

/* Button Cyan */
.button.button-cyan {
  background: var(--cyan_color4);
  color: var(--black_color1);
}

.button.button-cyan:hover {
  background: var(--cyan_color2);
  color: var(--black_color1);
}

.button.button-cyan .arrow:before {
  background: var(--cyan_color3);
}

.button.button-cyan:hover .arrow:before {
  background: var(--cyan_color4);
}

.button.button-cyan .arrow path+path,
.button.button-cyan .arrow line {
  stroke: var(--black_color1);
}

/* Button Black */
.button.button-black {
  background: var(--black_color1);
  color: var(--white_color);
}

.button.button-black:hover {
  background: var(--white_color);
  color: var(--black_color1);
}

.button.button-black .arrow:before {
  background: var(--yellow_color1);
}

.button.button-black:hover .arrow:before {
  background: var(--yellow_color2);
}

.button.button-black .arrow path+path,
.button.button-black .arrow line {
  stroke: var(--white_color);
}

.button.button-black:hover .arrow path+path,
.button.button-black:hover .arrow line {
  stroke: var(--yellow_color1);
}

/* Button Read More */
.button.button-read-more {
  background: transparent;
  color: var(--black_color1);
  padding: 0;
  position: relative;
}

.button.button-read-more.button-white-read-more {
  color: var(--white_color);
}

.button.button-read-more.button-white-read-more .read_text::before {
  background: var(--white_color);
}

.button.button-read-more.button-white-read-more .arrow:before {
  border-radius: 50%;
}

.button.button-read-more.button-white-read-more .arrow svg path + path, 
.button.button-read-more.button-white-read-more .arrow line {
  stroke: var(--blue_color1);
}

.button.button-read-more.button-white-read-more:hover .arrow svg path + path, 
.button.button-read-more.button-white-read-more:hover .arrow line {
  stroke: var(--white_color);
}


.button.button-read-more .arrow.purple:before {
  background-color: var(--purple_color5);
}

.button.button-read-more:hover .arrow.purple:before {
  background-color: var(--purple_color7);
}

.button.button-read-more .arrow.green:before {
  background-color: var(--green_color5);
}

.button.button-read-more:hover .arrow.green:before {
  background-color: var(--green_color8);
}

.button.button-read-more .arrow:before {
  background: var(--cyan_color3);
}

.button.button-read-more:hover .arrow:before {
  background: var(--cyan_color4);
}


.button.button-read-more .arrow svg path+path,
.button.button-read-more .arrow line {
  stroke: var(--black_color1);
}

.button.button-read-more .read_text {
  position: relative;
  font-weight: var(--fw-600);
}

.button.button-read-more .read_text::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 0;
  background: var(--black_color1);
  transition: all ease-out 0.3s;
  height: 1px;
}

.button.button-read-more:hover .read_text::before {
  width: 100%;
}

/* Forn Inputs Style */
input,
textarea,
select {
  font-size: var(--font_16);
  font-weight: var(--fw-400);
  line-height: 24px;
  color: var(--black_color1);
  font-family: var(--body_font);
  border: 1px solid var(--black_color3);
  outline: none;
  font-size: 21px;
  line-height: 28px;
  padding: 17px 35px;
  width: 100%;
  border-radius: 4px;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--purple_color1);
  background-color: var(--purple_color5);
  color: var(--purple_color4);
}

select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='6' viewBox='0 0 11 6'%3E%3Cpath id='Polygon_4' data-name='Polygon 4' d='M5.5,0,11,6H0Z' transform='translate(11 6) rotate(180)' fill='%234a4d5f'/%3E%3C/svg%3E%0A");
  background-position: right 30px center;
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-input {
  margin-bottom: 30px;
}

.form-input:last-child {
  margin-bottom: 0;
}

.form-submit input[type="submit"],
.form-submit input[type="button"],
.form-submit input[type="reset"] {
  width: auto;
  border: 0;
  cursor: pointer;
  transition: all ease-in 0.3s;
}

.form_label {
  display: block;
  color: var(--black_color3);
  margin-bottom: 30px;
  letter-spacing: -0.08px;
  font-weight: var(--fw-500);
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: var(--black_color1);
  opacity: 1;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: var(--black_color1);
  opacity: 1;
}


/* Flex Common Classes */
.flex_center_all {
  display: flex;
  align-items: center;
  justify-content: center;
}

.d_flex {
  display: flex;
}

.justify_center {
  justify-content: center;
}

.justify_end {
  justify-content: flex-end;
}

.justify_start {
  justify-content: flex-start;
}

.justify_s_b {
  justify-content: space-between;
}

.align_center {
  align-items: center;
}

.align_bottom {
  align-items: flex-end;
}

.align_top {
  align-items: flex-start;
}

.flex_wrap {
  flex-wrap: wrap;
}

/* Common Structure Classes */
.list_none {
  list-style: none;
}

.default_ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.subtitle {
  display: block;
  font-size: var(--font_14);
  line-height: 24px;
  color: var(--blue_color4);
  text-transform: uppercase;
  letter-spacing: 1.4px;
  font-weight: var(--fw-500);
}

span.headings {
  display: block;
  font-weight: var(--fw-700);
  margin-bottom: 18px;
  margin-top: 18px;
  font-size: 20px;
  text-transform: capitalize;
}

.w_100 {
  width: 100%;
}
figure,
.mb-0 {
    margin-bottom: 0;
}

.flex-direction {
    flex-direction: column;
}



.bg_green {
    background-color: var(--green_color1);
}

.bg_blue {
  background-color: var(--blue_color1);
  color: var(--white_color);
}

.light_green_txt{
    color: var(--green_color8);
}

.bg_gray {
  background-color: var(--gray_color);
}

.bg_transparent {
  background-color: transparent;
}

/* Font Weight Classes */
.fw-700 {
  font-weight: var(--fw-700);
}

.fw-600 {
  font-weight: var(--fw-600);
}

.fw-500 {
  font-weight: var(--fw-500);
}

.fw-400 {
  font-weight: var(--fw-400);
}

.fw-300 {
  font-weight: var(--fw-300);
}


/* Common Spacing Classes */

.mb0 {
  margin-bottom: 0 !important;
}

.mb150 {
  margin-bottom: 150px;
}

.mb120 {
  margin-bottom: 120px;
}

.mb50 {
  margin-bottom: 50px;
}

.ptb120 {
  padding-bottom: 120px;
  padding-top: 120px;
}


.ptb40 {
  padding-bottom: 45px;
  padding-top: 45px;
}

.pt40 {
  padding-top: 45px;
}

.pb40 {
  padding-bottom: 45px;
}

.ptb80 {
  padding-bottom: 90px;
  padding-top: 90px;
}

.pt80 {
  padding-top: 90px;
}

.pb80 {
  padding-bottom: 90px;
}


.pt0 {
  padding-top: 0;
}

.pt-90 {
  padding-top: 90px;
}

.pb-90 {
  padding-bottom: 90px;
}

.section_title { 
  margin-bottom: 52px;
}



/* Grid Classes */

.column-12 {
  width: 100%;
}

.column-6 {
  width: 50%;
}

.column-4 {
  width: 33.33%;
}

.column-3 {
  width: 25%;
}

.column-5 {
  width: 20%;
}

.container {
  max-width: 1240px;
  padding: 0 20px;
  margin: 0 auto;
}

.container_fluid {
  max-width: 100%;
  padding: 0;
}


/*********** BG Classes ***********/
.bg_black {
  background-color: var(--black_color1);
  color: var(--white_color);
}

.bg_dark_purple {
  background-color: var(--purple_color1);
  color: var(--white_color);
}

.bg_green {
  background-color: var(--green_color1);
  color: var(--white_color);
}

.bg_lightgreen {
  background-color: var(--green_color5); 
} 

.bg_purple_light {
  background-color: var(--purple_color5);
}

.bg_blue {  
  background-color: var(--blue_color1);
  color: var(--white_color);
}


.bg_white {  
  background-color: var(--white_color); 
}

.text_white {
  color: var(--white_color);
}

.text_black {
  color: var(--black_color);
}

.text_dark_purple {
  color: var(--purple_color1);
}

.text_light_purple {
  color: var(--purple_color4);
}

/*********** BG Classes ***********/


/*********** Common Style END ***********/


@media screen and (max-width: 1365px) {
  /*** 1280px to 1365px (Laptop Views) ***/

}

@media screen and (max-width: 1279px) {
  /*** 1024px to 1279px (Tablet View - 1024px) ***/

}

@media screen and (max-width: 1199px) {
  /*** 1024px to 1279px (Tablet View - 1024px) ***/

  h1.hero_title, .h1_style { 
    font-size: 46px;
    line-height: 54px;
  }

}




@media screen and (max-width: 1023px) {
  /*** 768px to 1023px (Tablet View - 768px) ***/

  .button {
    padding: 6px 13px;
  }

  .button + .button {
    margin-left: 16px;
  }

  .button .arrow {
    margin-left: 8px;
  }

}

@media screen and (max-width: 767px) {
  /*** below 767px (Mobile Views) ***/

  h1,
  .h1 {
    font-size: 28px;
    line-height: 34px;
    letter-spacing: -0.56px;
  }

  h2,
  .h2 {
    font-size: 24px;
    line-height: 32px;
    letter-spacing: -0.56px;
  }

 

  .ptb40 {
    padding-bottom: 24px;
    padding-top: 24px;
  }
  
  .pt40 {
    padding-top: 24px;
  }
  
  .pb40 {
    padding-bottom: 24px;
  }
  
  .ptb80 {
    padding-bottom: 48px;
    padding-top: 48px;
  }
  
  .pt80 {
    padding-top: 48px;
  }
  
  .pb80 {
    padding-bottom: 48px;
  }

  .section_title {
    margin-bottom: 30px;
  }
  
  .mb50 {
    margin-bottom: 28px;
  }






}