@charset "utf-8";
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800|Roboto:400,500,700");

/*********************************
2. Body and some general stuff
*********************************/

* {
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -webkit-text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
}
body {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 400;
  background: #ffffff;
  color: #a5a5a5;
}
div {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
ul {
  list-style: none;
  margin-bottom: 0px;
  padding-left: 0;
}
p {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  line-height: 2.29;
  font-weight: 400;
  color: #a5a5a5;
  -webkit-font-smoothing: antialiased;
  -webkit-text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
}
p a {
  display: inline;
  position: relative;
  color: inherit;
  border-bottom: solid 1px #ffa07f;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
a,
a:hover,
a:visited,
a:active,
a:link {
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  -webkit-text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
}
p a:active {
  position: relative;
  color: #ff6347;
}
p a:hover {
  color: #ffffff;
  background: #ffa07f;
}
p a:hover::after {
  opacity: 0.2;
}
::selection {
  background: #ffd266;
  color: #c88e00;
}
p::selection {
  background: #ffd266;
  color: #c88e00;
}
h1 {
  font-size: 36px;
}
h2 {
  font-size: 22px;
}
h3 {
  font-size: 18px;
}
h4 {
  font-size: 14px;
}
h5 {
  font-size: 11px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto", sans-serif;
  -webkit-font-smoothing: antialiased;
  -webkit-text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
}
::-webkit-input-placeholder {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #a5a5a5 !important;
}
:-moz-placeholder /* older Firefox*/ {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #a5a5a5 !important;
}
::-moz-placeholder /* Firefox 19+ */ {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #a5a5a5 !important;
}
:-ms-input-placeholder {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #a5a5a5 !important;
}
::input-placeholder {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #a5a5a5 !important;
}
.form-control {
  color: #db5246;
}
section {
  display: block;
  position: relative;
  box-sizing: border-box;
}
.clear {
  clear: both;
}
.clearfix::before,
.clearfix::after {
  content: "";
  display: table;
}
.clearfix::after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
.float_left {
  float: left;
}
.float_right {
  float: right;
}
.trans_200 {
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.trans_300 {
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}
.trans_400 {
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}
.trans_500 {
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}
.fill_height {
  height: 100%;
}
.super_container {
  width: 100%;
  overflow: hidden;
}
.prlx_parent {
  overflow: hidden;
}
.prlx {
  height: 130% !important;
}
.nopadding {
  padding: 0px !important;
}

img {
  width: 100%;
  max-width: 100%;
}
/*********************************
3. Header
*********************************/

.header {
  position: fixed;
  top: 45px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 1318px;
  height: 104px;
  background: #ffffff;
  z-index: 10;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.header.scrolled {
  top: 15px;
}
.header.scrolled .header_content::before {
  box-shadow: 0px 20px 49px rgba(0, 0, 0, 0.17);
}
.header_content {
  width: calc(100% - 279px);
  height: 100%;
}
.header_content::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  box-shadow: 0px 20px 49px rgba(0, 0, 0, 0.67);
  z-index: -1;
}

/*********************************
3.1 Logo
*********************************/

.logo_container {
  display: inline-block;
  padding-left: 76px;
}

.logo {
  width: 100px;
}
/*********************************
3.2 Main Nav
*********************************/

.main_nav_container {
  display: inline-block;
  margin-left: auto;
  padding-right: 93px;
}
.main_nav {
  margin-top: 7px;
}
.main_nav_item {
  display: inline-block;
  margin-right: 40px;
}
.main_nav_item:last-child {
  margin-right: 0px;
}
.main_nav_item a {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 700;
  color: #3a3a3a;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.main_nav_item a:hover {
  color: #3b7e65;
}

/*********************************
3.3 Header Side
*********************************/

.header_side {
  width: 279px;
  height: 100%;
  background: #3b7e65;
}
.header_side img {
  width: 29px;
  height: 29px;
}
.header_side span {
  display: block;
  position: relative;
  font-size: 18px;
  font-weight: 500;
  color: #ffffff;
  padding-left: 12px;
}

/*********************************
3.4 Hamburger
*********************************/

.hamburger_container {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20px;
  display: none;
  cursor: pointer;
}
.hamburger_container i {
  font-size: 24px;
  padding: 10px;
  color: #3a3a3a;
}
.hamburger_container:hover i {
  color: #3b7e65;
}

/*********************************
4. Menu
*********************************/

.menu_container {
  position: fixed;
  top: 0;
  right: -50vw;
  width: 50vw;
  height: 100vh;
  background: #ffffff;
  z-index: 12;
  -webkit-transition: all 0.6s ease;
  -moz-transition: all 0.6s ease;
  -ms-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
  visibility: hidden;
  opacity: 0;
}
.menu_container.active {
  visibility: visible;
  opacity: 1;
  right: 0;
}
.menu {
  position: absolute;
  top: 150px;
  left: 0;
  padding-left: 15%;
}
.menu_list {
  -webkit-transform: translateY(3.5rem);
  -moz-transform: translateY(3.5rem);
  -ms-transform: translateY(3.5rem);
  -o-transform: translateY(3.5rem);
  transform: translateY(3.5rem);
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 1000ms 600ms ease;
  opacity: 0;
}
.menu_container.active .menu_list {
  -webkit-transform: translateY(0px);
  -moz-transform: translateY(0px);
  -ms-transform: translateY(0px);
  -o-transform: translateY(0px);
  transform: translateY(0px);
  opacity: 1;
}
.menu_item {
  margin-bottom: 9px;
}
.menu_item a {
  font-family: "Open Sans", sans-serif;
  font-size: 36px;
  font-weight: 700;
  color: #3a3a3a;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.menu_item a:hover {
  color: #3b7e65;
}
.menu_close_container {
  position: absolute;
  top: 86px;
  right: 79px;
  width: 21px;
  height: 21px;
  cursor: pointer;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.menu_close {
  top: 9px;
  width: 21px;
  height: 3px;
  background: #3a3a3a;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.menu_close::after {
  display: block;
  position: absolute;
  top: -9px;
  left: 9px;
  content: "";
  width: 3px;
  height: 21px;
  background: #3a3a3a;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.menu_close_container:hover .menu_close,
.menu_close_container:hover .menu_close::after {
  background: #3b7e65;
}

/*********************************
4.1 Menu Social
*********************************/

.menu_social_container {
  margin-top: 100px;
  -webkit-transform: translateY(3.5rem);
  -moz-transform: translateY(3.5rem);
  -ms-transform: translateY(3.5rem);
  -o-transform: translateY(3.5rem);
  transform: translateY(3.5rem);
  -webkit-transition: all 1000ms 1000ms ease;
  -moz-transition: all 1000ms 1000ms ease;
  -ms-transition: all 1000ms 1000ms ease;
  -o-transition: all 1000ms 1000ms ease;
  transition: all 1000ms 1000ms ease;
  opacity: 0;
  padding-left: 4px;
}
.menu_social_item {
  display: inline-block;
  margin-right: 30px;
}
.menu_social_item a i {
  color: #3a3a3a;
}
.menu_social_item a i:hover {
  color: #3b7e65;
}
.menu_container.active .menu_social_container {
  -webkit-transform: translateY(0px);
  -moz-transform: translateY(0px);
  -ms-transform: translateY(0px);
  -o-transform: translateY(0px);
  transform: translateY(0px);
  opacity: 1;
}

/*********************************
4.2 Menu copyright
*********************************/

.menu_copyright {
  margin-top: 60px;
  -webkit-transform: translateY(3.5rem);
  -moz-transform: translateY(3.5rem);
  -ms-transform: translateY(3.5rem);
  -o-transform: translateY(3.5rem);
  transform: translateY(3.5rem);
  -webkit-transition: all 1000ms 1200ms ease;
  -moz-transition: all 1000ms 1200ms ease;
  -ms-transition: all 1000ms 1200ms ease;
  -o-transition: all 1000ms 1200ms ease;
  transition: all 1000ms 1200ms ease;
  opacity: 0;
  padding-left: 3px;
}
.menu_container.active .menu_copyright {
  -webkit-transform: translateY(0px);
  -moz-transform: translateY(0px);
  -ms-transform: translateY(0px);
  -o-transform: translateY(0px);
  transform: translateY(0px);
  opacity: 1;
}

/*********************************
5. Home
*********************************/

.home {
  width: 100%;
  height: 100vh;
}

/*********************************
5.1 Hero Slider
*********************************/

.hero_slider_container {
  width: 100%;
  height: 100%;
}
.hero_slide {
  width: 100%;
  height: 100%;
}
.hero_slide_background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.hero_slide_container {
  width: 100%;
  height: 100vh;
}
.hero_slide_content {
  max-width: 80%;
  -webkit-transform: translateY(30px);
  -moz-transform: translateY(30px);
  -ms-transform: translateY(30px);
  -o-transform: translateY(30px);
  transform: translateY(30px);
}
.hero_slide_content h1 {
  font-size: 72px;
  font-weight: 400;
  color: #ffffff;
}
.hero_slide_content h1 span {
  background: #3b7e65;
  padding-left: 13px;
  padding-right: 13px;
  margin-left: -12px;
  margin-right: -12px;
}
.animated {
  -webkit-animation-duration: 1s !important;
  animation-duration: 1s !important;
  -webkit-animation-delay: 500ms;
  animation-delay: 500ms;
}
.animate-out {
  -webkit-animation-delay: 0ms;
  animation-delay: 0ms;
}

/*********************************
5.2 Hero Slider Navigation
*********************************/

.hero_slider_nav {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(calc(-50% + 30px));
  width: 58px;
  height: 58px;
  background: #ffffff;
  z-index: 9;
  cursor: pointer;
}
.hero_slider_nav:hover {
  background: #3b7e65;
}
.hero_slider_nav:hover span {
  color: #ffffff;
}
.hero_slider_nav span {
  display: block;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  color: #121212;
  line-height: 1;
}
.hero_slider_left {
  left: 4.32%;
}
.hero_slider_right {
  right: 4.32%;
}

/*********************************
6. Hero Boxes
*********************************/

.hero_boxes {
  width: 100%;
  height: 0px;
  z-index: 9;
  padding-top: 0px;
}
.hero_boxes_inner {
  position: absolute;
  top: -212px;
  left: 0;
  width: 100%;
}
.hero_box {
  width: 100%;
  height: 161px;
  background: #1a1a1a;
  padding-left: 50px;
  cursor: pointer;
}
.hero_box:hover {
  background: #3b7e65;
}
.hero_box img {
  width: 62px;
  height: auto;
  margin-top: -6px;
  transition: filter 0.3s;
}
.hero_box:hover img {
  filter: brightness(0) saturate(100%) invert(10%) sepia(10%) saturate(1000%) hue-rotate(0deg);
}
.svg path {
  fill: #3b7e65;
}
.hero_box svg {
  width: 62px;
  height: auto;
}
.hero_box:hover svg path {
  fill: #ffffff;
}
.hero_box_content {
  padding-left: 13px;
  padding-top: 11px;
  margin-top: -6px;
}
.hero_box_title {
  font-size: 24px;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 7px;
}
.hero_box_link {
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
  color: #ffffff;
  padding-left: 3px;
}
.hero_box_link:hover {
  color: #1a1a1a;
}

/*********************************
7. Page Section
*********************************/

.page_section {
  padding-top: 117px;
  padding-bottom: 117px;
}

.section_title h1 {
  display: block;
  color: #1a1a1a;
  font-weight: 500;
  padding-top: 24px;
}
.section_title h1::before {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 55px;
  height: 4px;
  content: "";
  background: #3b7e65;
}

/*********************************
8. Buttons
*********************************/

.button {
  cursor: pointer;
}
.button:hover {
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
}
.button a {
  font-size: 14px;
  line-height: 48px;
  font-weight: 700;
  text-transform: uppercase;
}
.button_1 {
  width: 202px;
  height: 48px;
}

/*********************************
9. Popular
*********************************/
.course_boxes {
  margin-top: 68px;
}
.card {
  display: block;
  background: #f8f9fb;
  border: none;
}
.card-img-top {
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}
.card-body {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 15px;
  padding-right: 15px;
}
.card-title {
  margin-top: 55px;
}
.card-title a {
  font-size: 22px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1.2;
}
.card-title a:hover {
  color: #a5a5a5;
}
.card-text {
  font-size: 14px;
  font-weight: 500;
  color: #a5a5a5;
  margin-top: -12px;
}
.price_box {
  width: 100%;
  height: 67px;
  background: #eaebec;
  margin-top: 41px;
  padding-left: 35px;
}
.course_author_image {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  overflow: hidden;
}
.course_author_name {
  font-size: 14px;
  font-weight: 500;
  color: #1a1a1a;
  padding-left: 20px;
  margin-top: 7px;
}
.course_author_name span {
  color: #a5a5a5;
}
.course_price {
  width: 67px;
  height: 67px;
  background: #3b7e65;
  margin-left: auto;
}
.course_price span {
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
  margin-top: 7px;
}

/*********************************
10. Register
*********************************/

.register {
  width: 100%;
}
.register_section {
  width: 100%;
  background: #3b7e65;
  padding-top: 156px;
  padding-bottom: 161px;
}
.register_content {
  width: 522px;
}
.register_title {
  color: #ffffff;
  margin-bottom: 16px;
  line-height: 1.63;
}
.register_title:last-child {
  margin-bottom: 0px;
}
.register_title span {
  color: #1a1a1a;
}
.register_text {
  color: #ffffff;
  font-weight: 500;
  margin-top: 32px;
  padding-left: 25px;
  padding-right: 25px;
  margin-bottom: 0px;
}
.register_button {
  background: #1a1a1a;
  margin-top: 65px;
}
.register_button a {
  color: #ffffff;
}

/*********************************
11. Search
*********************************/

.search_section {
  width: 100%;
  height: 100%;
  background: #ececec;
}
.search_content {
  width: 522px;
}
.search_background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.23;
}
.search_title {
  color: #1a1a1a;
}

/*********************************
11.1 Search Form
*********************************/

.search_form {
  margin-top: 57px;
}
.input_field {
  width: 100%;
  height: 42px;
  background: #ffffff;
  box-sizing: border-box;
  border: solid 2px #ffffff;
  padding-left: 25px;
  margin-bottom: 24px;
}
.search_content input:last-of-type {
  margin-bottom: 0px;
}
.input_field:focus {
  outline: none !important;
  border: solid 2px #3b7e65;
}
.search_submit_button {
  width: 100%;
  height: 48px;
  background: #3b7e65;
  color: #ffffff;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 28px;
  border: none;
  cursor: pointer;
}
.search_submit_button:hover {
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
}
.search_submit_button:focus {
  outline: solid 2px #ffffff;
}

/*********************************
12. Services
*********************************/

.services {
  padding-bottom: 76px;
}
.services_row {
  margin-top: 65px;
}
.service_item {
  margin-bottom: 41px;
}
.service_item h3 {
  font-family: "Roboto", sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: #1a1a1a;
  margin-bottom: 13px;
}
.service_item p {
  font-size: 14px;
  font-weight: 500;
  color: #a5a5a5;
  max-width: 100%;
  margin-bottom: 0px;
}
.icon_container {
  height: 41px;
  width: auto;
  margin-bottom: 30px;
}
.icon_container img {
  height: 100%;
}

/*********************************
13. Testimonials
*********************************/

.testimonials {
  width: 100%;
  background: #1a1a1a;
}
.testimonials_background_container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.testimonials_background {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  opacity: 0.27;
}
.testimonials .section_title h1 {
  color: #ffffff;
}
.testimonials_slider_container {
  padding-left: 30px;
  padding-right: 30px;
  margin-top: 56px;
}
.testimonials_item {
  width: 100%;
  padding-bottom: 75px;
}
.quote {
  font-size: 36px;
  color: #3b7e65;
}
.testimonials_text {
  color: #ffffff;
  margin-bottom: 0px;
}
.testimonial_user {
  margin-top: 43px;
}
.testimonial_image {
  width: 98px;
  height: 98px;
  border-radius: 50%;
  overflow: hidden;
}
.testimonial_image img {
  width: 100%;
  height: auto;
}
.testimonial_name {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  color: #f6af03;
  margin-top: 21px;
}
.testimonial_title {
  font-size: 14px;
  font-weight: 500;
  color: #ffffff;
  margin-top: 6px;
}
.testimonials_slider .owl-dots {
  display: -webkit-box !important;
  display: -moz-box !important;
  display: -ms-flexbox !important;
  display: -webkit-flex !important;
  display: flex !important;
  flex-direction: row !important;
  justify-content: center;
  align-items: center;
}
.testimonials_slider .owl-dot span {
  width: 8px !important;
  height: 8px !important;
  border: solid 2px #ffffff;
  background: transparent !important;
}
.testimonials_slider .owl-dot.active span {
  width: 16px !important;
  height: 16px !important;
  border: none;
  background: #3b7e65 !important;
}

/*********************************
14. Events
*********************************/

.event_items {
  margin-top: 68px;
}
.event_item {
  margin-bottom: 56px;
}
.event_item:last-child {
  margin-bottom: 0px;
}
.event_date {
  width: 131px;
  height: 131px;
  border: solid 2px #3b7e65;
  margin-bottom: 18px;
}
.event_day {
  font-size: 48px;
  font-weight: 700;
  color: #3b7e65;
  margin-bottom: 1px;
  line-height: 1;
}
.event_month {
  font-size: 16px;
  font-weight: 700;
  color: #3b7e65;
}
.event_name a {
  font-size: 22px;
  font-weight: 500;
  color: #1a1a1a;
}
.event_name a:hover {
  color: #3b7e65;
}
.event_location {
  font-size: 14px;
  font-weight: 500;
  color: #1a1a1a;
  margin-top: 2px;
}
.event_content p {
  font-weight: 500;
  color: #a5a5a5;
  margin-top: 21px;
  margin-bottom: 13px;
}
.event_image img {
  width: 100%;
}

/*********************************
15. Footer
*********************************/

.footer {
  width: 100%;
  padding-top: 86px;
  background: #1a1a1a;
}
.footer .section_title h1 {
  color: #ffffff;
}

/*********************************
15.1 Newsletter
*********************************/

.newsletter {
  padding-bottom: 85px;
  border-bottom: solid 2px #4d4e4e;
}
.newsletter_form_container {
  width: 60%;
  margin-top: 48px;
}
.newsletter_email {
  width: calc(100% - 164px);
  height: 42px;
  border: none;
  padding-left: 27px;
  font-weight: 500;
  color: #1a1a1a;
}
.newsletter_email:focus {
  outline: solid 2px #3b7e65;
}
.newsletter_submit_btn {
  width: 164px;
  height: 42px;
  border: none;
  background: #3b7e65;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}
.newsletter_submit_btn:focus {
  border: solid 2px #ffffff;
}

/*********************************
15.2 Footer Content
*********************************/

.footer_content {
  padding-top: 80px;
  padding-bottom: 83px;
  border-bottom: solid 2px #4d4e4e;
}
.footer_content .logo_container {
  padding-left: 0px;
}
.footer_about_text {
  margin-top: 24px;
  margin-bottom: 0px;
  padding-right: 20px;
}
.footer_column_title {
  font-size: 18px;
  font-weight: 500;
  color: #ffffff;
  padding-top: 15px;
}
.footer_column_content {
  margin-top: 32px;
}
.footer_list_item {
  margin-bottom: 11px;
}
.footer_list_item a {
  font-size: 14px;
  color: #a5a5a5;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.footer_list_item a:hover {
  color: #3b7e65;
}
.footer_contact_item {
  font-size: 14px;
  font-weight: 400;
  color: #a5a5a5;
  margin-bottom: 22px;
}
.footer_contact_item:last-child {
  margin-bottom: 0px;
}
.footer_contact_icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px;
}
.footer_contact_icon img {
  width: 100%;
}

/*********************************
15.3 Footer Copyright
*********************************/

.footer_bar {
  padding-top: 19px;
  padding-bottom: 19px;
}
.footer_social .menu_social_item a i {
  color: #ffffff;
}
.footer_social .menu_social_item a i:hover {
  color: #3b7e65;
}
.footer_social .menu_social_item:last-child {
  margin-right: 0px;
}

@media only screen and (max-width: 1380px) {
  .header {
    width: 1200px;
  }
  .header_content {
    width: calc(100% - 219px);
  }
  .main_nav_container {
    padding-right: 63px;
  }
  .header_side {
    width: 219px;
  }
  .header_side span {
    font-size: 14px;
  }
  .header_side img {
    width: 20px;
    height: 20px;
  }
}

@media only screen and (max-width: 1280px) {
  .header {
    width: 90%;
  }
  .header_content {
    width: 100%;
  }
  .header_side {
    display: none !important;
  }
  .main_nav_container {
    padding-right: 53px;
  }
  .hero_slide_content h1 {
    font-size: 56px;
  }
  .card-title {
    font-size: 20px;
  }
  .register_content,
  .search_content {
    width: 442px;
  }
}

@media only screen and (max-width: 1199px) {
  .hero_box {
    padding-left: 20px;
  }
}

@media only screen and (max-width: 1024px) {
  .main_nav_item {
    margin-right: 33px;
  }
}

@media only screen and (max-width: 991px) {
  .main_nav_container {
    display: none;
  }
  .logo_container {
    padding-left: 30px;
  }
  .hamburger_container {
    display: block;
  }
  .hero_slide_content h1 {
    font-size: 48px;
  }
  .hero_boxes {
    width: 100%;
    height: auto;
    padding-top: 117px;
  }
  .hero_boxes_inner {
    position: relative;
    top: auto;
    left: auto;
  }
  .hero_box {
    padding-left: 50px;
  }
  .hero_box_col {
    margin-bottom: 30px;
  }
  .hero_box_col:last-child {
    margin-bottom: 0px;
  }
  .course_box {
    margin-bottom: 80px;
  }
  .course_box:last-child {
    margin-bottom: 0px;
  }
  .search_section {
    padding-top: 156px;
    padding-bottom: 161px;
  }
  .register_content,
  .search_content {
    width: 75%;
  }
  .testimonials_slider_container {
    padding-left: 0px;
    padding-right: 0px;
  }
  .event_date {
    margin-top: 30px;
  }
  .event_name {
    margin-top: 17px;
  }
  .event_content p {
    margin-bottom: 0px;
  }
  .newsletter_form_container {
    width: 90%;
  }
  .footer_col {
    margin-bottom: 30px;
  }
  .footer_col:last-child {
    margin-bottom: 0px;
  }
}

@media only screen and (max-width: 767px) {
  .menu_container {
    right: -100vw;
    width: 100vw;
    height: 100vh;
  }
  .newsletter_email {
    width: 100%;
  }
  .newsletter_submit_btn {
    margin-top: 15px;
  }
}

@media only screen and (max-width: 575px) {
  h1 {
    font-size: 24px;
  }
  p {
    font-size: 13px;
  }
  .header {
    height: 74px;
  }
  .logo_container {
    padding-left: 15px;
  }
  .logo img {
    width: 50px;
  }
  .hamburger_container {
    right: 5px;
  }
  .menu {
    top: 70px;
  }
  .menu_item {
    margin-bottom: 0px;
  }
  .menu_item a {
    font-size: 24px;
  }
  .menu_copyright {
    display: none;
  }
  .menu_social_container {
    margin-top: 50px;
  }
  .menu_close_container {
    right: 30px;
    top: 34px;
  }
  .hero_slider_nav {
    display: none;
  }
  .hero_slide_content {
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
  .card-title {
    margin-top: 30px;
  }
  .card-title a {
    font-size: 20px;
  }
  .card-text {
    font-size: 13px;
  }
  .price_box {
    margin-top: 37px;
  }
  .register_section,
  .search_section {
    padding-top: 115px;
    padding-bottom: 120px;
  }
  .register_content,
  .search_content {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
  .register_text {
    margin-top: 25px;
  }
  .register_button {
    margin-top: 53px;
  }
  .testimonials_slider .owl-dots {
    display: none !important;
  }
  .testimonials_item {
    padding-bottom: 0px;
  }
  .event_date {
    width: 100px;
    height: 100px;
  }
  .event_day {
    font-size: 36px;
  }
  .event_month {
    font-size: 14px;
  }
  .event_name {
    margin-top: 5px;
  }
  .footer_bar {
    padding-top: 49px;
    padding-bottom: 52px;
  }
  .footer_social {
    margin-top: 20px;
  }
  .footer_copyright span {
    font-size: 13px;
  }
}

@media only screen and (max-width: 479px) {
  .header {
    height: 60px;
    top: 15px;
  }
  .hero_slide_content h1 {
    font-size: 28px;
  }
  .hero_slide_content h1 span {
    padding-left: 5px;
    padding-right: 5px;
    margin-left: 0px;
    margin-right: 0px;
  }
  .hero_boxes {
    padding-top: 80px;
  }
  .hero_box {
    padding-left: 15px;
    height: 120px;
  }
  .hero_box_content {
    padding-top: 6px;
  }
  .hero_box img {
    width: 45px;
  }
  .hero_box_title {
    font-size: 18px;
    margin-bottom: 3px;
  }
  .hero_box_link {
    font-size: 10px;
  }
}

/*===============================
 16. Courses Home 
===============================*/
.half-banner {
  height: 447px;
}

.home_background_container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home_background {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.home_content {
  position: absolute;
  left: 50%;
  bottom: 109px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #3b7e65;
  padding-top: 24px;
  padding-bottom: 18px;
  padding-left: 39px;
  padding-right: 42px;
}
.home_content h1 {
  font-size: 72px;
  font-weight: 400;
  color: #ffffff;
  line-height: 0.5;
  white-space: nowrap;
}

/*********************************
16.1 Popular
*********************************/
.course-page .course_box {
  margin-bottom: 108px;
}
.course-page .course_box:nth-last-child(-n + 3) {
  margin-bottom: 0px;
}

@media only screen and (max-width: 991px) {
  .course-page .course_box:nth-last-child(-n + 3) {
    margin-bottom: 80px;
  }
  .course-page .course_box:last-child {
    margin-bottom: 0px !important;
  }
}

@media only screen and (max-width: 575px) {
  .half-banner {
    height: 372px;
  }
  .home_content {
    padding-top: 17px;
    padding-bottom: 11px;
    padding-left: 22px;
    padding-right: 24px;
  }
  .home_content h1 {
    font-size: 30px;
  }
}

/*********************************
17. Blogs
*********************************/

.news {
  width: 100%;
  padding-top: 103px;
  padding-bottom: 118px;
}
.news_post {
  margin-bottom: 85px;
}
.news_post_image {
  width: 100%;
}
.news_post_image img {
  width: 100%;
  height: auto;
}
.news_post_top {
  margin-top: 38px;
}
.news_post_date {
  width: 68px;
  height: 68px;
  background: #3b7e65;
}
.news_post_date div:first-child {
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1;
}
.news_post_date div:last-child {
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  color: #ffffff;
  line-height: 1;
  margin-top: 3px;
}
.news_post_title_container {
  padding-left: 31px;
  margin-top: -7px;
}
.news_post_title a {
  font-size: 36px;
  font-weight: 500;
  line-height: 1.2;
  color: #1a1a1a;
}
.news_post_title a:hover,
.news_post_author a:hover,
.news_post_comments a:hover {
  color: #a5a5a5;
}
.news_post_meta {
  color: #1a1a1a;
  margin-top: 5px;
  padding-left: 2px;
}
.news_post_author a {
  font-size: 12px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1;
}
.news_post_comments a {
  font-size: 12px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1;
}
.news_post_meta span:nth-child(2) {
  font-size: 12px;
  font-weight: 500;
  color: #1a1a1a;
  margin-left: 5px;
  margin-right: 5px;
}
.news_post_text {
  margin-top: 27px;
}
.news_post_button {
  width: 188px;
  height: 53px;
  background: #3b7e65;
  margin-top: 18px;
}
.news_post_button a {
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #ffffff;
  line-height: 53px;
}
.news_post_button:hover {
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
}

/*********************************
17.1 Blogs Page Nav
*********************************/

.news_page_nav ul li {
  display: inline-block;
  width: 43px;
  height: 43px;
  background: #d2d2d2;
  margin-right: 3px;
}
.news_page_nav ul li.active {
  background: #3b7e65;
}
.news_page_nav ul li:hover {
  background: #3b7e65;
}
.news_page_nav ul li a {
  display: block;
  font-size: 16px;
  font-weight: 500;
  color: #ffffff;
  line-height: 43px;
}

/*********************************
18. Sidebar
*********************************/

.sidebar {
  width: 100%;
}
.sidebar_section {
  margin-top: 48px;
}
.sidebar_section:first-child {
  margin-top: 0px;
}
.sidebar_section_title {
  margin-top: -1px;
}
.sidebar_section_title h3 {
  color: #1a1a1a;
  line-height: 1;
  font-weight: 700;
}
.sidebar_list {
  margin-top: 28px;
}
.sidebar_list_item {
  padding-top: 13px;
  padding-bottom: 13px;
  border-bottom: solid 2px #d2d2d2;
}
.sidebar_list_item a {
  font-size: 14px;
  font-weight: 500;
  color: #a5a5a5;
}
.sidebar_list_item a:hover {
  color: #3b7e65;
}
.latest_posts {
  margin-top: 50px;
}
.latest_post {
  margin-bottom: 27px;
}
.latest_post:last-child {
  margin-bottom: 0px;
}
.latest_post_image {
  width: 100%;
}
.latest_post_image img {
  width: 100%;
  height: auto;
}
.latest_post_title {
  margin-top: 24px;
}
.latest_post_title a {
  font-size: 18px;
  font-weight: 500;
  color: #1a1a1a;
}
.latest_post_title a:hover,
.latest_post_author a:hover,
.latest_post_comments a:hover {
  color: #a5a5a5;
}
.latest_post_meta {
  color: #1a1a1a;
  margin-top: 6px;
}
.latest_post_author a {
  font-size: 12px;
  font-weight: 500;
  color: #a5a5a5;
  line-height: 1;
}
.latest_post_comments a {
  font-size: 12px;
  font-weight: 500;
  color: #a5a5a5;
  line-height: 1;
}
.latest_post_meta span:nth-child(2) {
  font-size: 12px;
  font-weight: 500;
  color: #1a1a1a;
  margin-left: 5px;
  margin-right: 5px;
}
.tags {
  margin-top: 50px;
}
.tag {
  height: 40px;
  background: #3b7e65;
  margin-right: 12px;
  margin-bottom: 10px;
}
.tag a {
  display: block;
  font-size: 16px;
  font-weight: 500;
  color: #ffffff;
  line-height: 40px;
  padding-left: 30px;
  padding-right: 30px;
}

@media only screen and (max-width: 991px) {
  .sidebar {
    margin-top: 120px;
  }
}

@media only screen and (max-width: 767px) {
  .news_post_title_container {
    margin-top: -4px;
    padding-left: 21px;
  }
  .news_post_title a {
    font-size: 27px;
  }
}

@media only screen and (max-width: 575px) {
  .news_post_title_container {
    margin-top: 20px;
    padding-left: 0px;
  }
  .news_post_date {
    width: 55px;
    height: 55px;
  }
  .news_post_date div:first-child {
    font-size: 18px;
  }
  .news_post_date div:last-child {
    font-size: 11px;
  }
  .news_post_title a {
    font-size: 20px;
  }
  .news_post_text {
    margin-top: 20px;
  }
  .news_post_button {
    width: 138px;
    height: 42px;
  }
  .news_post_button a {
    font-size: 14px;
    line-height: 42px;
  }
  .tag {
    height: 35px;
  }
  .tag a {
    font-size: 14px;
    line-height: 35px;
    padding-left: 23px;
    padding-right: 23px;
  }
}

/*********************************
19. Quote
*********************************/

.news_post_quote {
  background: #f2f7f5;
  padding-left: 50px;
  padding-right: 30px;
  padding-top: 47px;
  padding-bottom: 40px;
  margin-top: 60px;
}
.news_post_quote::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: #3b7e65;
  content: "";
}
.news_post_quote_text {
  font-size: 18px;
  font-style: italic;
  font-weight: 400;
  line-height: 32.08px;
  margin-bottom: 0px;
}
.news_post_quote_text span {
  font-size: 36px;
  color: #3b7e65;
  margin-right: 2px;
}

/*********************************
19.1 Comments
*********************************/

.news_post_comments {
  margin-top: 67px;
}
.comments_title {
  font-size: 18px;
  font-weight: 700;
  color: #1a1a1a;
}
.comments_list {
  margin-top: 69px;
}
.comment {
  margin-bottom: 25px;
}
.comment:last-child {
  margin-bottom: 0px;
}
.comment_image {
  width: 70px;
  height: 70px;
  overflow: hidden;
  border-radius: 50%;
  margin-top: 13px;
}
.comment_image img {
  width: 100%;
  height: auto;
}
.comment_content {
  padding-left: 28px;
}
.comment_meta span {
  font-size: 14px;
  font-weight: 500;
  color: #1a1a1a;
}
.comment_name a {
  font-size: 14px;
  font-weight: 500;
  color: #1a1a1a;
}
.comment_name a:hover {
  color: #a5a5a5;
}
.comment_separator {
  margin-left: 7px;
  margin-right: 7px;
}
.comment_text {
  margin-top: 10px;
  padding-left: 2px;
}
.comment_reply_link a {
  font-size: 14px;
  font-weight: 500;
  color: #3b7e65;
}
.comment_reply_link a:hover {
  color: #1a1a1a;
}

/*********************************
19.2 Leave Comment
*********************************/

.leave_comment {
  margin-top: 51px;
}
.leave_comment_title {
  font-size: 18px;
  font-weight: 700;
  color: #1a1a1a;
}
.leave_comment_form_container {
  margin-top: 77px;
}
.input_field {
  width: 100%;
  background: #f2f7f5;
  border: solid 2px transparent;
  margin-bottom: 24px;
  height: 42px;
  padding-left: 33px;
}
.input_field:focus {
  outline: none !important;
  border-color: #3b7e65;
}
.text_field {
  width: 100%;
  height: 189px;
  background: #f2f7f5;
  border: solid 2px transparent;
  padding-left: 33px;
  margin-bottom: 24px;
}
.text_field:focus {
  outline: none !important;
  border-color: #3b7e65;
}
.comment_send_btn {
  width: 100%;
  height: 48px;
  background: #3b7e65;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
  cursor: pointer;
  border: none;
}
.comment_send_btn:focus {
  outline: solid 1px #3b7e65;
  border: green !important;
}

@media only screen and (max-width: 479px) {
  .comment_image {
    width: 50px;
    height: 50px;
  }
  .comment_content {
    padding-left: 19px;
  }
}

/*********************************
20. Teachers
*********************************/

.teacher {
  margin-bottom: 82px;
}
.teacher:nth-last-child(-n + 3) {
  margin-bottom: 0px;
}
.teachers .card:hover .card-img-top {
  opacity: 0.6;
}
.teachers .card:hover .card_plus {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) scale(1);
  -moz-transform: translate(-50%, -50%) scale(1);
  -ms-transform: translate(-50%, -50%) scale(1);
  -o-transform: translate(-50%, -50%) scale(1);
  transform: translate(-50%, -50%) scale(1);
}
.teachers .card_img {
  background: #1a1a1a;
}
.teachers .card_plus {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0.5);
  -moz-transform: translate(-50%, -50%) scale(0.5);
  -ms-transform: translate(-50%, -50%) scale(0.5);
  -o-transform: translate(-50%, -50%) scale(0.5);
  transform: translate(-50%, -50%) scale(0.5);
  width: 75px;
  height: 75px;
  background: #3b7e65;
  z-index: 10;
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
}
.teachers .card_plus a {
  display: block;
  font-size: 24px;
  line-height: 75px;
  color: #ffffff;
}
.teachers .card-body {
  padding-bottom: 55px;
}
.teachers .card-text {
  margin-top: -7px;
}
.t-title {
  background-color: transparent;
  border: none;
  font-size: 22px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1.2;
}
.t-title:hover {
  background-color: transparent;
  color: #3b7e65;
}
/*********************************
21. Milestones
*********************************/

.milestones {
  width: 100%;
  padding-top: 118px;
  padding-bottom: 107px;
}
.milestones_background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
}
.milestone {
  width: 100%;
}
.milestone_icon {
  display: inline-block;
  width: 70px;
  height: 70px;
}
.milestone_icon img {
  width: 100%;
}
.milestone_counter {
  font-size: 36px;
  font-weight: 500;
  color: #3b7e65;
  line-height: 1;
  margin-top: 41px;
}
.milestone_text {
  font-size: 22px;
  font-weight: 500;
  color: #ffffff;
  margin-top: 3px;
}

/*********************************
22. Become
*********************************/

.become {
  width: 100%;
  padding-top: 117px;
  padding-bottom: 117px;
}
.become_title h1 {
  display: block;
  color: #1a1a1a;
  font-weight: 500;
  padding-top: 24px;
}
.become_title h1::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 4px;
  content: "";
  background: #3b7e65;
}
.become_text {
  font-weight: 500;
  color: #a5a5a1;
  margin-top: 48px;
  margin-bottom: 0px;
}
.become_button {
  width: 188px;
  height: 53px;
  background: #3b7e65;
  margin-top: 37px;
}
.become_button a {
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #ffffff;
  line-height: 53px;
}
.become_button:hover {
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
}
.become_image {
  width: 100%;
  margin-top: 85px;
}
.become_image img {
  width: 100%;
}

@media only screen and (max-width: 991px) {
  .teacher:nth-last-child(-n + 3) {
    margin-bottom: 80px;
  }
  .teacher:last-child {
    margin-bottom: 0px !important;
  }
  .milestone_col {
    margin-bottom: 80px;
  }
  .milestone_col:last-child {
    margin-bottom: 0px;
  }
  .become_image {
    margin-top: 0px;
    margin-bottom: 67px;
  }

  @media only screen and (max-width: 557px) {
    .teachers .card-body {
      padding-bottom: 30px;
    }
  }
}

/*********************************
23. Contact
*********************************/

.contact {
  padding-top: 106px;
  padding-bottom: 117px;
}
.contact_title {
  font-size: 36px;
  font-weight: 500;
  color: #1a1a1a;
}
.contact_form_container {
  margin-top: 70px;
}
.input_field {
  width: 100%;
  background: #f2f7f5;
  border: solid 2px transparent;
  margin-bottom: 24px;
  height: 42px;
  padding-left: 33px;
}
.input_field:focus {
  outline: none !important;
  border-color: #3b7e65;
}
.text_field {
  width: 100%;
  height: 189px;
  background: #f2f7f5;
  border: solid 2px transparent;
  padding-left: 33px;
  margin-bottom: 24px;
}
.text_field:focus {
  outline: none !important;
  border-color: #3b7e65;
}
.contact_send_btn {
  width: 100%;
  height: 48px;
  background: #3b7e65;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
  cursor: pointer;
  border: none;
}
.contact_send_btn:focus {
  outline: solid 1px #3b7e65;
  border: green !important;
}

/*********************************
24. About
*********************************/

.about_title {
  font-size: 36px;
  font-weight: 500;
  color: #1a1a1a;
}
.about_text {
  margin-top: 20px;
}
.contact_info {
  margin-top: 64px;
  padding-left: 46px;
}
.contact_info_item {
  font-size: 14px;
  font-weight: 400;
  color: #a5a5a5;
  margin-bottom: 22px;
}
.contact_info_item:last-child {
  margin-bottom: 0px;
}
.contact_info_icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin-right: 10px;
}
.contact_info_icon img {
  width: 100%;
}

@media only screen and (max-width: 991px) {
  .about {
    margin-top: 80px;
  }
}

@media only screen and (max-width: 575px) {
  .contact_info {
    padding-left: 0px;
  }
}
