/*
Theme Name: Vietcoder Theme
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.18.6
*/
@import url('https://fonts.googleapis.com/css2?family=Gentium+Book+Plus:ital,wght@0,400;0,700;1,400;1,700&display=swap');

:root {
    --color-primary: 207, 157, 115;
/* 	    --color-primary: 192, 75, 98; */
    --color-secondary: 255, 235, 194;
    --color-alert: 236, 69, 60;
    --color-success: 74, 159, 83;
    --color-process: 63, 162, 246;
    --color-warning: 255, 175, 0;
    --color-border-1: 33, 35, 34;
    --color-border-opposite: 255, 255, 255;
    --bg: 255, 255, 255;
    --bg-2nd: 247, 247, 247;
    --bg-opposite: 53, 33, 35;
	--color-text-body: 51, 51, 51;
    --color-text-title: 71, 45, 48 ;

    --blog-img-ratio: 75%;
	--program-img-ratio: 75%;

    --radius-1: 6px;
    --radius-2: 10px;
    --radius-3: 16px;
    --radius-4: 28px;
    --radius-sm: 4px;

    --size-ratio: 1.175;
    --size-small: 16px;
	--size-small-a: 14px;
	
	font-size: 18px;
}

body {
	color: rgb(var(--color-text-body));
}


/* Header ------- */
.header {
    --color-menu: rgb(var(--color-text-title));
    --color-menu-hover: rgb(var(--color-primary));
	--btn-h: 38px;
}

.header-main .header-nav.nav-left {
	justify-content: center;
}

.searchform .autocomplete-suggestions {
    background: rgb(var(--bg));
    color: rgb(var(--color-text-body));
    font-size: 0.95rem;
}

.searchform .autocomplete-suggestion {
	padding:  12px ;
	margin-top: 15px;
	border-radius: var(--radius-1);
}

.searchform .flex-row {
    background-color: transparent;
    border-radius: var(--radius-1);
    border: 1px solid rgb(var(--color-primary));
}

#search-lightbox .searchform-wrapper {
	padding: 20px;
    background: rgb(var(--bg));
    border-radius: var(--radius-2);	
	--input-height: 48px;
}


.header-search>a svg {
    width: var(--btn-h);
    height: var(--btn-h);
    background-color: rgb(var(--color-primary));
    color: rgb(var(--bg));
    padding: 8px;
    border-radius: 50%;
}

.header-search>a svg:hover {
    background-color: rgb(var(--bg-opposite));
    color: rgb(var(--bg));
}

.header-button .button {
	height: var(--btn-h);
    font-size: 1rem;
    line-height: 1.2;
    min-height: unset;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-transform: unset;
    letter-spacing: 0;
    font-weight: bold;
	color: rgb(var(--bg));
	background-color: rgb(var(--color-primary));	
}

.header-button .button:hover {
    color: rgb(var(--bg));
    background-color: rgb(var(--bg-opposite));	
}




/* Custom nav dropdown ---- */ 
#header .nav-dropdown .header-search-form {
	padding: 0 12px;
}

#header .sub-menu,
#header .nav-dropdown {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  padding: 0;
  min-width: 240px;
  background-color: rgb(var(--color-primary));
}

header .nav .nav-dropdown li {
  width: 100%;
  margin: 0;
  border: 0;
  padding: 0;
  position: relative;
  transition: 300ms all;
}

header .nav .nav-dropdown li+li {
  border-top: 0px;
}

#header .sub-menu>li>a,
#header .nav-dropdown>li>a {
	padding: 10px 20px;
	margin: 0;
	border: 0px;
	text-transform: capitalize;
	color: rgb(var(--bg));
	font-size: 0.95rem;
	font-weight: 400;
	position: relative;
}

#header .sub-menu>li>a:hover,
#header .nav-dropdown>li>a:hover {
	color: rgb(var(--bg));
	background-color: rgb(var(--bg-opposite), 20%);
}

header .menu-item-design-default .nav-dropdown-col>a:after {
  content: '\e5e1';
  font-family: var(--ff-material-round);
  float: right;
  margin-left: 5px;
  font-size: 1em;
  line-height: 1;
  vertical-align: text-top;
  transform: translateY(2px);
  display: inline-block;
}

header .menu-item-design-default .sub-menu .sub-menu {
  position: absolute;
  left: 80%;
  top: 0px;
  opacity: 0;
  visibility: hidden;
  transition: 300ms all;
}

#header .sub-menu .sub-menu a {
  font-weight: 400;
}

header .menu-item-design-default .sub-menu li:hover>.sub-menu {
  left: 100%;
  opacity: 1;
  visibility: visible;
} 


/* Menu - Aside ------------ */
.off-canvas-left .mfp-content {
    background-color: var(--background);
    width: 100%;
    max-width: var(--drawer-width, 500px);
    --background: rgb(var(--bg));
    --on-background: rgb(var(--color-text-title));
    --color-border: rgb(var(--color-border-1));
	--btn-h: 44px;
}

.mfp-content .header-logo-link  {
	padding-left: 0!important;
}

.mfp-content .header-logo-link img {
    width: 60%;
    margin: 10px auto 30px;
    height: 35px;
    display: block;
    object-fit: contain;
}

/* Menu toggle ----- */
.mfp-content .nav-sidebar li+li {
    border-top: 0;
}

.mfp-content .nav-sidebar>li.menu-item.active,
.mfp-content .nav-sidebar>li.menu-item:hover {
    background-color: transparent;
}

.mfp-content .nav-sidebar .children {
    padding-bottom: 20px;
    padding-left: 15px;
}


.mfp-content .nav .menu-item {
    padding: 0 35px;
    margin-bottom: 5px;
}

.off-canvas .mfp-content .nav .menu-item>a {
    color: var(--on-background);
    font-size: 1.2rem;
    font-weight: 600;
    text-transform: capitalize;
    transition: 300ms all;
    padding: 6px 0;
}

.off-canvas .mfp-content .nav .menu-item>a:hover {
	color: rgb(var(--color-primary));
}

.off-canvas .mfp-content .nav .menu-item .menu-item>a {
	font-weight: normal;
    font-size: 1.2rem;
    text-transform: capitalize;
    justify-content: flex-start;
    text-align: left;
    width: 100%;
    padding: 5px 0px;;

}

.off-canvas .mfp-content .nav .menu-item .menu-item {
    margin: 0;
    padding: 0;
} 

.off-canvas .nav .active>.children {
    padding-top: 10px;
    padding-bottom: 18px;
}


.nav-icon .qodef-m-line {
    height: 3px;
    width: 100%;
    background-color: rgb(var(--color-primary));
}

.nav-icon .qodef-m-line.qodef--2 {
	width: 74%; 
}

.nav-icon .qodef-m-lines {
    width: 25px;
    height: 24px;
    padding: 0;
    align-items: flex-end;
	border-radius: 30px;
}


/* Ux - Pt button ----- */
body .pt-btn {
	color: var(--btn-color)!important; 
}

body .pt-btn:hover {
	color: var(--btn-color-hover)!important; 
}

body .pt-btn-size--md {
    --btn-padding: 8px 22px 10px;
    --btn-size: 40px;
    --btn-font-size: 1rem;
    --btn-line-height: 1.4;
    --btn-radius: var(--radius-2);
	font-weight: 600; 
}

.pt-btn-kind--outline.pt-btn-color--primary {
    --btn-bg-hover: rgb(var(--color-primary));
	--btn-color-hover: rgb(var(--bg)); 
}




/* Home - Hero ----- */
.home-hero h6 span {
	font-size: 1.2em;
    vertical-align: middle;
    margin-top: -4px;
}

.home-hero h6 {
	margin: 0 0 12px;
    opacity: 1;
    color: rgb(var(--color-secondary));
    text-transform: unset;
    letter-spacing: 0;
    font-size: 1rem;
    font-weight: 700;
}

.home-hero h2 {
    margin: 0 0 1.5rem;
    font-size: var(--size-8);
    line-height: 1.2;	
}

.home-hero p {
	font-size: 1rem;
}

.slider-nav-dots-dashes-spaced .flickity-page-dots .dot {
    border-radius: var(--radius-2);
    height: 8px;
    width: 30px;
    border: 0;
    background-color: rgb(var(--color-secondary));
    opacity: 1;
}

.slider-nav-light .flickity-page-dots .dot.is-selected {
    background-color: rgb(var(--color-primary));
    width: 60px;
}


/* Home - Title ---- */
.dark .home-title {
	--color-text-title: 255, 255, 255;
}

.home-title h6 span {
	font-size: 1.2em;
    vertical-align: middle;
    margin-top: -4px;
}

.home-title h6 {
	margin-bottom: 12px;
    opacity: 1;
    color: rgb(var(--color-text-title));
    text-transform: unset;
    letter-spacing: 0;
    font-size: 1rem;
    font-weight: 700;
}

.home-title .el-title,
.home-title h2 {
    margin: 0 0 1.5rem;
    font-size: var(--size-4);
    line-height: 1.2;	
	color: rgb(var(--color-text-title));
}

.home-title.is-big .el-title,
.home-title.is-big h2{
    font-size: var(--size-6);
}

.home-title.home-light h6 {
	color: rgb(var(--color-secondary));
}

.home-title.home-light .el-title, 
.home-title.home-light h2 {
    color: rgb(var(--bg));
}




/* Home - Title ---- */
.home-about {
	overflow: hidden;
}


.home-about .el-decor-tl {
    top: 12%;
    left: 20px;
    position: absolute;
    width: 12px !important;
	z-index: -10;
}

.home-about .el-decor-tr {
	position: absolute;
    top: 7%;
    left: calc(100% - 9% - 20px);
    width: 9% !important;
	z-index: -10;
}


/* Home - Service ------ */
.home-service .el-item {
	position: relative;
    border: 2px solid rgb(var(--color-primary));
    border-radius: var(--radius-3);
    overflow: hidden;
    transition: 320ms all;	
}

.home-service .el-item-bg img,
.home-service .el-item-bg svg {
	position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -10;	
	left: 0;
    top: 0;
}


.home-service .el-item h5 {
	font-size: var(--size-4);
    font-weight: bold;
    color: rgb(var(--color-text-title));
    line-height: 1.3;
    margin-bottom: 7px;	
}


.home-service .el-item h6 {
    text-transform: unset;
    letter-spacing: 0;
    opacity: 1;
    color: rgb(var(--color-text-title));
    font-size: var(--size-4);
    font-weight: bold;
    line-height: 1.1;	
}


.home-service .el-item-content {
	background-color: rgb(var(--bg));
    padding: 20px;	
	transition: 320ms all;
	opacity: 0;
	min-height: 100%;
	border-bottom: 7px solid rgb(var(--color-primary));
	border-radius: calc(var(--radius-3) - 4px);
}

.home-service .el-item:hover .el-item-content {
	opacity: 1;
}

.home-service .el-item p {
    font-size: var(--size-small);	
}


/* Home - Why ----- */
.home-why .el-count-wrap {
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgb(var(--color-primary));
    color: rgb(var(--bg));
    text-align: center;
    max-width: 220px;
    border: 3px solid rgb(var(--bg));
    padding: 30px;
    border-radius: var(--radius-3);
    box-shadow: 0 0 30px rgb(0 0 0 / 30%);
}

.home-why .el-count-wrap p {
    line-height: 1.2;
    margin-bottom: 3px;	
}

.home-why .el-count-wrap h6 {
	opacity: 1;
    color: currentColor;
    line-height: 1;
    font-size: var(--size-8);
    font-weight: bold;
    margin: 0 0 9px;
    letter-spacing: 0;
}

.home-why .icon-box {
	flex-wrap: nowrap;
}

.home-why .icon-box-img svg {
	color: rgb(var(--bg));
    background: rgb(114 61 69);
    padding: 12px;
    border-radius: var(--radius-2);	
}

.home-why .icon-box h6 {
    opacity: 1;
    color: rgb(var(--color-text-title));
    text-transform: unset;
    letter-spacing: 0;
    font-weight: 600;
    font-size: var(--size-3);
    line-height: 1.3;
    margin-bottom: 5px;	
}

.home-why .icon-box p {
	font-size: var(--size-small);	
}


/* Home - Count goal --- */
.home-count-goal {
	
}

.home-count-goal .wrap {
    border: 2px solid rgb(var(--color-primary));
    border-radius: var(--radius-3);
    padding: 24px 10px;
    text-align: center;
    min-height: 100%;
    transition: 300ms all;
    color: rgb(var(--color-text-title));	
}

.home-count-goal .wrap h5 {
    margin-bottom: 5px;
    font-weight: 600;
    font-size: var(--size-2);
    line-height: 1.3;
    color: inherit;	
}

.home-count-goal .icon-box-img {
    width: 55px!important;
    color: rgb(var(--color-primary));	
}

.home-count-goal .icon-box {
	flex-wrap: nowrap;
    align-items: center;
	justify-content: center;
	margin-bottom: 8px;
}

.home-count-goal h6 {
    opacity: 1;
    color: inherit;
    font-weight: 700;
    line-height: 1;
    text-transform: unset;
    font-size: var(--size-8);
    margin-bottom: 0.1em;	
}

.home-count-goal h6 span {
	font-weight: inherit;
}

.home-count-goal .icon-box .icon-box-text {
    padding-left: 12px;
    width: fit-content;
    flex: unset;
}


/* Home - Country ----- */
#wrapper .slider-infinity .slider-item,
#wrapper .slider-infinity .post-item {
  opacity: 1;
  max-width: var(--item-w)!important;
  padding: var(--item-p);
	min-height: 100%;
}

.home-country {
	overflow: hidden;
	--item-p: 0 10px;
	--item-w: calc(100% / 4);
}


.country-slider-infinitie .country-item.col {
	max-width: var(--item-w);
}

.box-country {
	background-color: rgb(var(--bg));
    border-radius: var(--radius-3);
    transition: 320ms all;
    padding: 25px;
	text-align: center;
	display: block;
}

.box-country:hover {
	background: rgb(255, 235, 194);
}

.box-country h6 {
	opacity: 1;
    font-weight: bold;
    font-size: var(--size-3);
    line-height: 1.3;
    margin-bottom: 3px;
    text-transform: unset;
    color: rgb(var(--color-text-title));
}

.box-country .el-description {
    margin-bottom: 10px;
    font-size: var(--size-small);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
    color: rgb(var(--color-text-body));
}

.box-country .el-decor {
	margin-bottom: 8px;
}

.box-country .el-thumbnail {
	width: 60%!important;
	margin: 0 auto 15px;
}

.box-country .el-thumbnail img {
	filter: drop-shadow(0px -3px 10px rgb(0 0 0 / 20%));	
	border-radius: var(--radius-3);
}

.box-country .el-thumbnail .img-inner {
	overflow: visible;
	padding-top: 77% !important;
}

.box-country_border {
	border: 1px solid rgb(var(--color-text-title), 12%);
}

.home-line {
	--position-x: 20px; 
	--position-y: 30px; 
	position: absolute;
	left: var(--position-x);
	top: var(--position-y);
	z-index: -1;
	width: fit-content;
}

.home-line.home-line-tr {
	left: unset;
	right: var(--position-x);
	
}

.home-line.home-line-bl {
	top: unset;
	bottom: var(--position-y);
}

.home-line.home-line-br {
	left: unset;
	right: var(--position-x);
	top:unset;
	bottom: var(--position-y);
}

.home-line > *{
	height: 190px;
    width: auto!important;
    object-fit: contain;
}

.slider-nav-circle .flickity-prev-next-button svg {
    background-color: rgb(var(--color-primary));
    border: 0;
    padding: 10px;	
}


/* Home - Team ---- */
.home-team {	
	overflow: hidden;
	--item-p: 0 15px;
	--item-w: calc(100% / 3);
	--item-p-x: 46px;
	--img-ratio: 115%;
}

.home-team .el-names {
    display: flex;
    gap: 10px;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    padding: 10px 16px 0;
}

.home-team .el-names h6 {
	margin: 0;
    opacity: 1;
    font-size: 1rem;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    flex: 1;
    color: inherit;	
}

.home-team .el-names p {
	display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
    max-width: 30%;
    text-align: right;
    font-size: var(--size-small);
}

.home-team .el-avatar {
	position: relative;
	z-index: 20;
}

.home-team .el-avatar .img-inner {
	padding-top: var(--img-ratio) !important;
	border-radius: var(--radius-2);
	border:  1px solid rgb(var(--color-border-1),10%);
}

.home-team .slider .col-inner {
    padding-left: var(--item-p-x);
    padding-top: var(--item-p-x);	
}

.home-team .el-item-body {
	width: calc(100% - var(--item-p-x));
	position: absolute;
	left: 0;
	top: 0;
	z-index: 10;
}

.home-team .el-item-body > .wrap-inner {
    border: 2px solid rgb(var(--color-text-title));
    border-radius: var(--radius-3);
    padding-top: var(--img-ratio);
    border-right-width: 8px;
    border-bottom-width: 8px;	    
	transition: 420ms all;
    color: rgb(var(--bg));
    background-color: rgb(var(--bg));
}

.home-team .slider-item:hover .el-item-body > .wrap-inner {
    background-color: rgb(var(--color-text-title));
}

.home-team .social-icons {
	display: flex;
    flex-direction: column;
    gap: 20px;
    width: var(--item-p-x);
    justify-content: flex-end;
    align-items: center;
    padding: 10px 7px;
    position: absolute;
	left: 0;
    bottom: 0;
    max-height: 70%;
    overflow: hidden;
}


.home-team .social-icons a {
	margin: 0;
    color: rgb(var(--bg));
    font-size: 20px;
    line-height: 1;
}


/* Home - Course  */
.home-course {
	overflow: hidden;
}

.box-blog-post:not(.blog-not-img-ratio) .image-cover {
	padding-top: var(--blog-img-ratio) !important;
}

.box-blog-post .post-title a {
    -webkit-line-clamp: 2;
    line-height: 1.4;
    font-weight: 600;
    font-size: 1rem;
    color: rgb(var(--color-text-body));
    font-weight: 600;
}

.box-blog-post .post-title {
    margin-bottom: 5px;
}

.box-blog-post .is-divider {
	display: none;
}

.box-blog-post .button {
	font-size: var(--size-small);
    text-transform: unset;
    letter-spacing: 0;
    border-radius: 300px;
    min-height: unset;
    line-height: 1.3;
    padding: 4px 16px;
    border-width: 1px;
	margin-top: auto;
}

.box-blog-post .from_the_blog_excerpt {
    margin-bottom: 18px;
}

.blogs_course {
	--item-w: calc(100% / 3);
	--item-p: 0 15px;
	--blog-img-ratio: 63%;
}

.blogs_course .col.post-item {
	opacity: 1;
	max-width: var(--item-w)!important;
}

.blogs_course .col.post-item > .col-inner {
	padding: var(--item-p);
}

.blogs_course .box-blog-post {
    border: 1px solid rgb(var(--color-text-title));
    border-radius: var(--radius-3);
    overflow: hidden;	
	border-bottom-width: 7px;
	display: flex;
    flex-direction: column;
}

.blogs_course .box-blog-post .box-image {
	width: 100%;
}

.blogs_course .box-blog-post:hover .box-text {
    background-color: rgb(var(--bg-opposite));
    color: white;
}

.blogs_course .box-blog-post .post-title a {
    -webkit-line-clamp: 2;
    font-weight: 600;
    color: rgb(var(--color-text-title));
    font-size: var(--size-3);
    line-height: 1.3;
	transition: 320ms all;
}

.blogs_course .box-blog-post:hover .post-title a {
    color: white;
}

.blogs_course .box-blog-post .is-divider {
    height: 1px;
    margin-bottom: 12px;
    margin-top: 0px;
    max-width: unset;
    opacity: 1;
    background: rgb(var(--color-text-title));
	transition: 320ms all;
	display: block;
}

.blogs_course .box-blog-post:hover .is-divider {
    background: white;
}


.blogs_course .box-blog-post .box-text {
    padding: 15px 18px 22px;
	flex: 1;
	transition: 320ms all;
}

.blogs_course .box-blog-post .box-text-inner {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    align-items: flex-start;	
}

/* Blog vertical ------ */
.box-blog-post.box-vertical  {
	gap: 12px;
}

.box-blog-post.box-vertical  .box-image {
	flex: 0 0 125px;
}


.box-blog-post.box-vertical .box-text {
	padding: 0;
}

.box-blog-post.box-vertical .from_the_blog_excerpt {
    font-size: var(--size-small);
    -webkit-line-clamp: 2;
    opacity: var(--opacity-text-sub);
}

.row-xsmall> .post-item:has(.box-blog-post)  {
	padding-bottom: 10px;
}



/* Home - Workflow ----- */
.home-workflow {
	overflow: hidden;
	--item-p: 0 10px;
	--item-w: calc(100% / 4);
}

.home-workflow .box {
	background: rgb(var(--bg));
    padding: 0px 15px 20px;
    overflow: hidden;
    border: 1px solid rgb(var(--color-primary));
    border-bottom-width: 7px;
    border-radius: var(--radius-3);	
}

.home-workflow .box h6 {
    width: fit-content;
    background-color: rgb(var(--color-primary));
    color: rgb(var(--bg));
    margin: 0 auto 24px;
    line-height: 1;
    padding: 8px 12px;
    font-size: var(--size-6);
    opacity: 1;
    letter-spacing: 0;
    text-transform: unset;
    border-radius: 0 0 var(--radius-2) var(--radius-2);
}

.home-workflow .box h5 {
	font-size: var(--size-2);
    line-height: 1.2;
    margin-bottom: 6px;
    color: rgb(var(--color-text-title));
}

.home-workflow .box p{
	font-size: var(--size-small);
    line-height: 1.4;	
}

.home-workflow .box .pt-svg {
	margin-bottom: 8px;
}

/* Home - Workflow ----- */
.home-testi {
	overflow: hidden;
	--item-p: 0 15px 10px;
	--item-w: calc(100% / 3);
}

.home-testi .box {
	--box-p: 34px;
    position: relative;
    padding: var(--box-p) 0 0 var(--box-p);
}

.home-testi .box:before {
	content: '';
    display: block;
    background: rgb(var(--color-text-title));
    position: absolute;
    left: 0;
    top: 0;
    border-radius: var(--radius-3);
    width: calc(100% - var(--box-p));
    height: calc(100% - var(--box-p));
    z-index: -20;
}

.home-testi .box:after {
    content: '\e244';
    color: rgb(var(--color-primary));
    font-family: var(--ff-material-round);
    position: absolute;
    top: 2px;
    left: 2px;
    font-size: 42px;
    line-height: 1;
}

.home-testi .box > .wrap-inner {
	background: rgb(var(--bg));
    color: rgb(var(--color-text-title));
    font-size: var(--size-small);
    border: 2px solid rgb(var(--color-primary));
    padding: 18px;
    border-radius: var(--radius-3);	
	min-height: 100%;
	display: flex;
    flex-direction: column;
}

.home-testi .box .pt-star-rating {
    margin-bottom: 10px;
}

.home-testi .box .el-box-text p:first-letter {
	font-weight: bold;
    color: rgb(var(--color-text-title));
	font-size: var(--size-4);
}

.home-testi .box .pt-svg {
	margin-top: auto;
}

.home-testi .box .icon-box {
    align-items: center;
    flex-wrap: nowrap;	
	margin-top: 12px;
}

.home-testi .box .icon-box-text {
    padding-left: 16px;
}

.home-testi .box .icon-box-img {
    width: 50px !important;
}

.home-testi .icon-box h6 {
    opacity: 1;
    text-transform: capitalize;
    letter-spacing: 0;
    color: rgb(var(--color-text-title));
    font-size: var(--size-2);
    line-height: 1.3;
    margin-bottom: 2px;	
}

.home-testi .icon-box p {
    font-size: var(--size-small);
    color: rgb(var(--color-text-body));
    line-height: 1.3;
    margin: 0 0;	
}

/* Home - Blogs ----- */
.home-blog {
	overflow: hidden;
}

.home-blog  .blog-not-img-ratio .post-title a{
	font-size: var(--size-3);
}

.home-blog  .blog-not-img-ratio .box-text {
	padding-bottom: 10px;
}


/* Footer ------ */
footer .absolute-footer {
	display: none;
}


.footer-info {
	font-size: var(--size-small);
}

.footer-info .el-logo img {
    height: 45px;
    width: auto;
    margin-bottom: 24px;	
}

.footer-info h5 {
	font-size: var(--size-3);
    line-height: 1.3;
    margin-bottom: 2px;
    color: rgb(var(--color-secondary));	
}

.footer-info .el-title-decor {
	color: rgb(var(--color-secondary))!important;
    fill: rgb(var(--color-secondary))!important;
    margin-bottom: 14px;
}

.social-icons {
	display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;	
}

.social-icons a.icon.plain {
	font-size: 20px;
    margin-left: 0;
    margin-right: 0;
}

.footer-info .ux-menu  {
    --stack-gap: 18px;	
}

.footer-info .ux-menu-link__link {
    min-height: unset;
    line-height: 1.3;
    padding: 0;
	font-size: 1rem;
}

.footer-info .ux-menu-link__text:before {
    content: '\ef56';
    font-family: var(--ff-material-round);
    color: rgb(var(--color-secondary));
    line-height: 1;
    font-size: 1.2em;
    vertical-align: text-top;
    transform: translateY(3px);
    display: inline-block;
    margin-right: 4px;
}

.footer-info p {
	margin-bottom: 12px;
}


.form-wrap.form-oneline {
	--field-h: 40px;
}
.form-wrap.form-oneline > p{
	display: flex;
    border-radius: 300px;
    border: 2px solid rgb(var(--color-primary));
    align-items: center;
    background: rgb(var(--bg));
    color: rgb(var(--color-text-title));
    padding: 5px;
}

.form-wrap.form-oneline .wpcf7-form-control:not(.wpcf7-submit) {
	margin: 0;
    height: var(--field-h);
    background-color: transparent;
    font-size: 16px;
    box-shadow: none;
    border: 0;	
	padding: 0 24px 0 14px;
}

.form-wrap.form-oneline .wpcf7-form-control::placeholder {
	font-size: var(--size-small);
}

.form-wrap.form-oneline .wpcf7-submit {
    margin: 0;
    height: var(--field-h);
    width: var(--field-h);
    border: 0;
    color: rgb(var(--bg));
    background: rgb(var(--color-primary));
    font-size: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;	
}

.form-wrap.form-oneline .wpcf7-submit:before {
	content: '\e163';
	font-family: var(--ff-material-round);
    font-size: 22px;
}

.form-wrap.form-oneline .wpcf7-form-control-wrap {
	flex: 1 1;
}

.form-wrap.form-oneline .wpcf7-not-valid-tip {
    position: absolute;
}

/* Box Program ------ */
.box-program .box-program_img {
	display: block;
}

.box-program_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;	
    transition: 320ms all;
}

.box-program_img:hover img {
    transform: scale(1.1);
}

.box-program_img-inner {
    position: relative;
    padding-top: var(--program-img-ratio);
    border-radius: var(--radius-2);
    overflow: hidden;
    background-color: rgb(var(--bg-opposite), 7%);
}

.box-program_content {
	padding: 16px 0 10px;
}

.box-program .box-program_title {
	display: -webkit-box;
    -webkit-line-clamp: 2;
	overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    line-height: 1.4;
    margin-bottom: 15px;
    font-size: var(--size-2);
    font-weight: 600;
    color: rgb(var(--color-text-title));
    transition: 320ms all;
}

.box-program .box-program_title:hover {
    color: rgb(var(--color-primary));	
}

.box-program_excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    line-height: 1.5;
    margin: 0;
    color: rgb(var(--color-text-body));
    opacity: var(--opacity-text-sub);	
}

.box-program .box-program_btn {
	display: block;
    width: fit-content;
    background: rgb(var(--color-primary), 10%);
    font-size: 1rem;
    line-height: 1.3;
    padding: 7px 18px;
    border-radius: 500px;
    color: rgb(var(--color-primary));
    transition: 320ms all;
}

.box-program .box-program_btn:hover {
    background: rgb(var(--color-primary), 20%);	
}


/* Single - Program --- */
.single-program  .page-header-excerpt {
	display: none;
}



/* Archive - Blog ------- */
.blogs-header {
	margin-top: -30px;
}

.blogs-header .page-title {
	font-size: var(--size-7);
    line-height: 1.15;
    margin-bottom: 10px;
    font-weight: 700;	
}

.breadcrumbs {
    font-size: var(--size-small);
    color: rgb(var(--color-text-body));
    font-weight: 500;
	opacity: 1;
	line-height: 1.3;
}

.breadcrumbs a {
    color: rgb(var(--color-primary));
    transition: 320ms all;
}

.breadcrumbs a:hover {
    color: rgb(var(--color-text-title));
}


aside.widget {
    margin-bottom: 2rem;	
}

aside.widget .widget-title {
	display: block;
    width: 100%;
    color: rgb(var(--color-text-title));
    letter-spacing: 0;
    font-weight: bold;
    font-size: var(--size-3);
    line-height: 1.3;
    margin-bottom: 24px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgb(var(--color-text-title));
}

aside.widget .cat-item {
    font-size: 1rem;
    line-height: 1.4;
    color: rgb(var(--color-text-title));
	border: 2px solid rgb(var(--color-primary));
    position: relative;
    border-radius: 500px;
    padding: 8px 18px;
	font-weight: 500;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}

aside.widget .cat-item .cat-item {
	margin-top: 16px;
}

aside.widget .cat-item a {
	flex: 1;
	text-decoration: none;
}

aside.widget .cat-item a:hover {
	text-decoration: none;
	color: rgb(var(--color-primary));
	transition: 320ms color;
}

aside.widget .cat-item.current-cat > a {
	font-weight: 400;
    color: rgb(var(--color-primary));
}

.blogs-lastest .box-vertical {
	display: grid;
    grid-template-columns: 100px 1fr;
    gap: 14px;
    align-items: flex-start;
    background: transparent;
    border: 2px solid rgb(var(--color-primary));
    padding: 0;
	border-radius: var(--radius-2);
    overflow: hidden;
    --blog-img-ratio: 100%;
}

.blogs-lastest .box .box-text-inner {
	text-align: left;
    display: flex;
    flex-direction: column;
}

.blogs-lastest .box .box-image {
	width: 100%;
}

.blogs-lastest  .post-meta {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    width: 100%;
    font-size: var(--size-small-a);
    text-transform: unset;
    letter-spacing: 0;
    color: rgb(var(--color-text-body));
    font-weight: 500;
    opacity: var(--opacity-text-sub);
	order: -1;
    margin-bottom: 10px;
}

.blogs-lastest .post-title a {
    -webkit-line-clamp: 2;
    line-height: 1.2;
    font-weight: 400;
    font-size: 1rem;
}

.blogs-lastest .post-title a:hover {
	color: rgb(var(--color-primary));
}

.blogs-lastest .post-title {
    margin-bottom: 0;
}

.blogs-lastest .box .box-text {
    padding: 12px 12px 12px 0;
}

.blogs-lastest .post-item + .post-item .col-inner {
}

.blogs-lastest .box  .image-cover {
    border-radius: var(--radius-1);
}

.tagcloud {
	display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.tagcloud a {
	font-size: var(--size-small)!important;
	font-weight: 600;
    background: transparent;
    color: rgb(var(--color-primary));
    line-height: 1.3;
    border-radius: 500px;
    border: 2px solid rgb(var(--color-primary));
    padding: 6px 16px;
    transition: 320ms all;
    margin: 0;
}

.tagcloud a:hover {
    color: rgb(var(--bg));
    background: rgb(var(--color-primary));
	border-color: rgb(var(--color-primary));
}


/* Single - Blog ------ */
.single-post .blogs-header .col-inner {
	padding: 30px 15px 30px 15px!important;
}

.single-post .page-title {
	display: none;
}

.single-post .entry-header {
	display: flex;
    flex-direction: column;
    gap: 20px;	
	border-bottom: 1px solid rgb(var(--color-text-title));
    padding-bottom: 22px;
}

.single-post .entry-image {
	order: -1;
}

.single-post .entry-image a {
	position: relative;
    display: block;
    width: 100%;
    padding-top: 50%;
    border-radius: var(--radius-2);
    overflow: hidden;
}

.single-post .entry-image img {
	position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    object-fit: cover;	
}

.single-post .entry-title {
    font-size: var(--size-5);
    font-weight: 700;
    color: rgb(var(--color-text-title));
    line-height: 1.2;
	margin-bottom: 14px; 
}

.single-post .entry-category {
    margin-bottom: 12px;
    font-size: var(--size-small);
    line-height: 1.4;
    color: rgb(var(--color-primary));
    opacity: 1;
}

.single-post .entry-meta {
    font-size: var(--size-small);
    text-transform: unset;
    letter-spacing: 0;
    color: rgb(var(--color-text-body));
}

.single-post .entry-header .posted-on:before {
	content: '\ebcc';
	font-family: var(--ff-material-outline);
    font-size: 1.2em;
    vertical-align: baseline;
    transform: translateY(0.2em);
    display: inline-block;
    margin-right: 7px;
    color: rgb(var(--color-primary));
}

.single-blog_release h3 {
    font-size: var(--size-4);
    line-height: 1.3;
    margin-bottom: 28px;
    color: rgb(var(--color-text-title));
    border-bottom: 1px solid currentColor;
    padding-bottom: 12px;
}


/* Page Contact ------- */
.ux-page-header .page-title {
    font-size: var(--size-7);
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 18px;	
}


/* Page FAQ - FAQ ---- */
.ux-two-imgs-group {
	position: relative;
}
.ux-two-imgs-group:before {
    content: '';
    position: absolute;
    width: 80%;
    height: 100%;
    border: 3px solid rgb(var(--color-primary));
    border-radius: var(--radius-3);
    top: 7%;
    right: 10%;
    z-index: 1;

}

.ux-two-imgs-group .el-img-down {
    margin: 0;
    border-radius: var(--radius-3);
    overflow: hidden;
    width: 80% !important;	
	z-index: 2;
	box-shadow: 0 0 14px rgb(0 0 0 /60%);
}

.ux-two-imgs-group .el-img-up {
    margin: 0;
    border-radius: var(--radius-3);
    overflow: hidden;
    width: 80% !important;
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translateY(12%);
    z-index: 5;	
}

.ux-two-imgs-group.is-to-left .el-img-down {
    margin: 0 0 0 auto;
}

.ux-two-imgs-group.is-to-left .el-img-up {
    right: unset;
	left: 0;
}

/* -----  */
.faq-faq  .accordion .accordion-item {
	margin-top: 16px;
    border: 2px solid rgb(var(--color-primary));
    border-radius: var(--radius-4);
    padding: 0;
	overflow: hidden;
	background: rgb(var(--bg));
}

.faq-faq  .accordion-title {
    font-size: 1rem;
    font-weight: 600;
    padding: 8px 16px;
    color: rgb(var(--color-text-title));
}

.faq-faq .accordion-title.active {
    font-weight: 600;
    background: rgb(var(--color-primary));
    color: rgb(var(--bg));
}

.faq-faq .accordion-inner {
    padding: 14px 16px 12px;
}


/* Page Contact - Form ------ */
.contact-box {
	border: 2px solid rgb(var(--color-primary));
    border-bottom-width: 8px;
    border-radius: var(--radius-2);
    padding: 22px;	
}

.contact-box .icon-box-img svg {
	padding: 0;
    color: rgb(var(--color-primary));	
}

.contact-box h6 {
    font-size: var(--size-3);
    letter-spacing: 0;
    text-transform: unset;
    color: rgb(var(--color-text-title));
    opacity: 1;
    line-height: 1.3;
    margin-bottom: 16px;
}


.contact-box  .is-divider {
	background: rgb(var(--color-text-title));
    height: 1px;
    width: 100%;
    max-width: 300px;
    margin: 16px 0;	
}

.contact-box p {
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 14px;	
}

.contact-box > :last-child {
	margin-bottom: 0;
}

/* Ux - Form Advise ---- */
.form-advise {
	background: rgb(var(--bg));
    border: 1px solid rgb(var(--color-border-1), 15%);
    border-radius: var(--radius-2);
    padding: 20px 16px 24px;	
}

.form-advise h4 {
    text-align: center;
    color: rgb(var(--color-primary));
    opacity: 1;
    font-size: var(--size-3);
    line-height: 1.3;
    margin-bottom: 20px;	
}

.form-advise .wpcf7-form-control:not(.wpcf7-submit) {
    font-size: 16px;
    box-shadow: unset;
    background: unset;
    border-radius: var(--radius-1);
    line-height: 1.3;	
	margin-bottom: 18px;
}

.form-advise .wpcf7-form-control:not(.wpcf7-submit):hover {
    box-shadow: unset;
    background: unset;
}

.form-advise .wpcf7-submit {
    margin: 14px 0 0;
    min-height: unset;
    line-height: 1.2;
    text-align: center;
    width: 100%;
    border-radius: var(--radius-1);
    padding: 10px 20px;
    letter-spacing: 0;
    color: rgb(var(--bg));
    text-transform: unset;	
}

.form-advise .el-label {
    font-size: 1rem;
    font-weight: bold;
    color: rgb(var(--color-text-title));
    line-height: 1.5;
    margin-bottom: 10px;	
}

.form-advise .checkbox {
    margin-top: 0;
    margin-bottom: 10px;	
}

.form-advise .wpcf7-checkbox .wpcf7-list-item-label {
    font-size: 1rem;
    text-transform: unset;
    line-height: 1.5;
    font-weight: 400;
}

.form-advise  span.wpcf7-list-item {
    margin-right: 24px;
}

.form-advise .el-field {
	margin-bottom: 10px;
}















/* Responsive ---------------- */
@media only screen and (min-width: 1025px) and (max-width: 1600px) {}

@media only screen and (max-width: 1024px) {}

@media only screen and (max-width: 849px) {
	:root {
		--size-ratio: 1.15;
		--size-small: 15px;
		--size-small-a: 13px;

		font-size: 16px;
	}
	
	.header {
		--btn-h: 34px; 
	}
	body .header-main {
		height: 58px;
	}
	body #logo img {
		max-height: 58px;
		padding: 14px 0;
	}
	body .stuck .header-main {
		height: 58px !important;
	}
	body .stuck #logo img {
		max-height: 58px !important;
	}
	
	.md-text-center {
		text-align: center;	
	}
	
	.home-count-goal .wrap {
		padding: 18px 10px;
	} 
	
	.home-country {
		--item-w: calc(100% / 2);
	}
	
	.home-team {	
		--item-w: calc(100% / 2);
	}
	.home-team .el-item-body > .wrap-inner {
		background-color: rgb(var(--color-text-title));
	}
	
	.blogs_course {
		--item-w: calc(100% / 2);
	}
	
	.home-workflow {
		--item-w: calc(100% / 3);
	}
	
	.home-testi {
		--item-w: calc(100% / 2);
	}
	.home-testi .box {
		--box-p: 26px; 
	}
	.home-testi .box:after {
		font-size: 34px;
	}
	
	.box-country {
		padding: 15px 
	}
}

@media only screen and (max-width: 549px) {
	.home-country {
		--item-w: calc(100% / 1.6);
	}
	
	.home-team {	
		--item-w: calc(100% / 1.3);
	}
		
	.blogs_course {
		--item-w: calc(100% / 1.4);
	}
	
	.home-workflow {
		--item-w: calc(100% / 1.6);
	}
	
	.home-testi {
		--item-w: calc(100% / 1.2);
	}
	
	.country-slider-infinitie .flickity-prev-next-button {
		display: none;
	}

	
}






