/*
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=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root {
    --color-primary: 123, 102, 78;
    --color-secondary: 66, 41, 23;
    --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: 223, 216, 206;
	--bg-3nd: 242, 242, 242;
    --bg-opposite: 33, 34, 38;
    --color-text-title: 35, 31, 32;

    --opacity-text-sub: 0.75;

	--blog-img-ratio: 56.5%;

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

    --size-ratio: 1.175;
}


/* Header ------------- */
body.home .header-bg-color {
    background-color: #f2f2f2;
}

.header {
    --color-menu: rgba(var(--color-text-title), var(--opacity-text-sub));
    --color-menu-hover: rgb(var(--color-text-title));
}

.header-nav-main > .menu-item > a {
    font-size: var(--size-small);
    letter-spacing: 1px;	
}

.header-search-form .searchform .flex-row {
    background-color: transparent;
}

.header .header-search>a svg,
.header .account-item svg ,
.header .cart-item svg {
	width: 20px;
    height: 20px;	
}


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

#header .header-search-dropdown .nav-dropdown {
	margin: 0!important;
	right: -40px;
	left: unset;
	
}

#header .sub-menu,
#header .nav-dropdown {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  padding:  5px 0;
  min-width: 280px;
  background-color: rgb(var(--bg));
	box-shadow: 0 0 20px rgb(0 0 0 / 10%);
}

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

header .nav .nav-dropdown li+li {
	border-top: 1px solid rgba(var(--color-text-title), 10%);
}

#header .sub-menu>li>a,
#header .nav-dropdown>li>a {
  padding: 0;
  margin: 0;
  border: 0px;
  text-transform: capitalize;
  color: rgba(var(--color-text-title), var(--opacity-text-sub));
  font-size: var(--size-small);
  font-weight: 500;
  position: relative;
}

#header .sub-menu>li>a:hover,
#header .nav-dropdown>li>a:hover {
  color: rgb(var(--color-text-title));
}

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: 0;
  opacity: 0;
  visibility: hidden;
  transition: 300ms all;
}

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

.mobile-nav > .li {
	margin: 0 12px;
}


/* 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));
}

/* 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 .menu-item .children {
    padding-bottom: 20px;
    padding-left: 15px;
	margin-left: 12px;
}


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

.off-canvas .mfp-content .nav .menu-item>a {
    color: var(--on-background);
    font-size: var(--size-4);
    font-weight: 500;
    text-transform: capitalize;
    transition: 300ms all;
    padding: 7px 15px;
}

.off-canvas .mfp-content .nav .menu-item>a:hover {
    background-color: transparent;
}

.off-canvas .mfp-content .nav .menu-item .menu-item>a {
    font-weight: 500;
    font-size: var(--size-2);
    text-transform: capitalize;
    justify-content: space-between;
    text-align: center;
    width: 100%;
    padding: 6px 0px;

}

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

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

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











/* Home - Hero ----- */
.home-hero {
	overflow: hidden;
	--img-h: 572px;
	--img-p: 26px;
}

.home-hero .el-thumb.img {
    margin: 0 0 5px;
    padding: var(--img-p) 0;	
}

.home-hero .el-thumb .img-inner {
	padding-top: var(--img-h) !important;	
}

.home-hero .flickity-page-dots {
    bottom: unset;
    top: calc(var(--img-h) - 25px);
}

.home-hero .flickity-viewport {
	overflow: visible;
}

.home-hero .el-line {
	position: absolute;
    top: var(--img-p);
    left: 0;
	--off-t: unset;
	--off-b: 0px;
	--off-l: unset;
	--off-r: 5px;
}

.home-hero .el-line .wrap-inner {
	position: relative;
}

.home-hero .el-line .wrap-inner:before,
.home-hero .el-line .wrap-inner:after {
	content: '';
	width: 22px;
    display: block;
    height: 1px;
    background: rgb(var(--bg-opposite));
    position: absolute;
    bottom: var(--off-b);
    right: var(--off-r);
	left: var(--off-l);
	top: var(--off-t);
}

.home-hero .el-line .wrap-inner:after {
	width: 1px;
    height: 22px;
    --off-b: 5px;
    --off-r: 0px;
}

.home-hero .el-line-top-right {
	left: 100%;
    top: var(--img-p);
}

.home-hero .el-line-bottom-left {
	left: 0;
    top: calc(var(--img-h) + var(--img-p));
}

.home-hero .el-line-bottom-right {
	left: 100%;
    top: calc(var(--img-h) + var(--img-p));
}

.home-hero .el-line-bottom-left .wrap-inner:before {
	--off-t: 0px;
	--off-b: unset;
	--off-l: unset;
	--off-r: 5px;	
}

.home-hero .el-line-bottom-left .wrap-inner:after,
.home-hero .el-line-bottom-right .wrap-inner:after {
	--off-t: 5px;
	--off-b: unset;
	--off-l: unset;
	--off-r: 0;	
}

.home-hero .el-line-top-right .wrap-inner:before,
.home-hero .el-line-bottom-right .wrap-inner:before {
	--off-t: 0px;
	--off-b: unset;
	--off-l: 5px;
	--off-r: unset;		
}

.home-hero .el-texts {
	max-width: 50%;
}

.home-hero h2{
	font-size: var(--size-7);
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 14px;	
}

.home-hero p {  
	letter-spacing: 1px;
	font-size: 14px;
    color: rgba(var(--color-text-title), var(--opacity-text-sub));
}

/* Ux - Pt - Button -------  */
body .pt-btn-kind--default, 
body .pt-btn-kind--text, 
body .pt-btn-kind--filled, 
body .pt-btn-kind--outline {
	border-width: 2px!important;
	letter-spacing: 1px;
	--btn-radius: 500px; 
}

body .pt-btn-size--sm {
    --btn-padding: 2px 20px;
    --btn-size: 30px;
    --btn-font-size: var(--size-small);
    --btn-line-height: 1.3;
}

/* Home - Title ------ */
.home-title {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px 15px;
    align-items: center;	
}

.home-title .title-simple {
    font-weight: 500;
    font-size: var(--size-5);
    letter-spacing: 1px;
    width: fit-content;
    margin: 0;
    line-height: 1.3;	
}

.home-title .title-simple:after {
	content: '';
	display: inline-block;
    height: 1px;
    width: 22px;
    background: currentColor;
    margin-left: 3px;
}

.home-title .pt-btn__text {
	width: max-content;
}




/* Ux - Product Slider ------ */
.product-slide-infinity .flickity-slider .product-small.col {
	max-width: 25%;	
}


/* Ux - Product ------ */
.product-small.box .name {
    margin: 0 0 8px;
}

.product-small.box  .image-fade_in_back {
    position: absolute;
    top: 0;
    left: 0;	
}

.product-small.box  .box-image img {
	background-color: rgb(var(--bg));	
}

.product-small.box .name a {
    font-size: 1rem;
    -webkit-line-clamp: 2;
    font-weight: 500;
    letter-spacing: 1px;
}

.product-small.box .name a:hover {
    text-decoration: underline 1px;
    text-underline-offset: 3px;
}

span.woocommerce-Price-amount.amount bdi {
    font-size: 1rem;
    color: rgb(var(--price-color), var(--opacity-text-sub));
    font-weight: 400;
    line-height: 1.3;
}

.product-small.box  .box-text {
    display: grid;
    grid-template-columns: 1fr;	
	padding: 8px 0 10px;
}

body .ux-swatches {
    --color-border-selected: rgb(var(--color-alert));
    --color-text-selected: rgb(var(--color-alert));
}

.product-small.box .ux-swatches.ux-swatches-in-loop {
    gap: 8px;
    width: 100%;
    order: 100;
    margin: 14px 0 0;
	align-items: center;
}

.product-small.box  .ux-swatches .ux-swatch {
    margin: 0;
    min-height: unset;
    min-width: unset;
    padding: 5px 6px;
    font-size: 13px;
    line-height: 1.1;
}

.product-small.box .ux-swatches .ux-swatch:nth-child(n+5) {
	display: none;
}

.product-small.box .ux-swatches:has( .ux-swatch:nth-child(n+5)):after {
	content: '+';
    font-size: 23px;
    line-height: 1;
    font-weight: 400;
    transform: translateY(-2px);
}

.product-small .badge-container {
    margin: 7px 0 0 7px;
} 

.product-small .badge .badge-inner {
    font-size: 13px;
    font-weight: 500;
    color: rgb(var(--bg));
    opacity: 1;
    line-height: 1.1;
    padding: 5px 10px;
    border-radius: var(--radius-sm);
    background-color: rgb(var(--color-secondary));
}


/* UX  - Slider infinity */
#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 - Production ---- */
.home-production {
	--item-w: calc(100% / 3);
	--item-p: 10px 10px;
	--img-h: 440px;
	
}

.home-production .slider .img-inner {
	padding-top: var(--img-h)!important;
}

.home-production .flickity-page-dots {
    bottom: unset;
    top: calc(var(--img-h) - 20px);
	display: none;
}

.home-production .slider h6 {
	opacity: 1;
    letter-spacing: 1px;
    font-weight: 600;
    font-size: 1rem;
    color: rgb(var(--color-text-title));
    margin-bottom: 10px;
}


.home-production .slider p {
    letter-spacing: 1px;
    opacity: var(--opacity-text-sub);
    font-size: var(--size-small);	
}

.slider-nav-dots-dashes-spaced .flickity-page-dots .dot {
    height: 3px;
    width: 30px;
    border: 0;
    background-color: #fff;
	margin: 0 2px;
}


/* Home- Subscribe ------ */
.home-subscribe h2 {
	font-size: var(--size-4);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 1px;
    margin-bottom: 14px;	
}

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


.form-subsc,
form:has(.form-subsc) {
	margin-bottom: 0;
}

.form-subsc .el-body > p {
    display: flex;
    gap: 10px;
    border-bottom: 1px solid currentColor;
    margin-bottom: 16px;
	
}

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

.form-subsc .wpcf7-form-control:not(.wpcf7-submit){
	font-size: 16px;
    margin: 0;
    background: transparent;
    color: currentColor;
    box-shadow: unset;
    border: 0;
    padding: 0;	
}

.form-subsc .wpcf7-form-control:not(.wpcf7-submit):hover, 
.form-subsc .wpcf7-form-control:not(.wpcf7-submit):focus {
    background: transparent;
    box-shadow: unset;
}

.form-subsc .wpcf7-submit {
    margin: 0;
    line-height: 1.5;
    padding: 0;
    font-size: 14px;
    background: transparent;
    color: currentColor;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: unset;
    border: 0;
    box-shadow: unset;	
}

.form-subsc .wpcf7-submit:disabled {
	opacity: 0.75;
}

.form-subsc .wpcf7-submit:hover {
    background: transparent;
    color: currentColor!important;
    box-shadow: unset;	
	text-decoration: underline 1px;
}


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

.form-subsc .wpcf7-acceptance input {
	margin-bottom: 0;
}

.form-subsc .wpcf7-acceptance a {
	color: currentColor;
    text-decoration: underline 1px;
}

.form-subsc .wpcf7-acceptance .wpcf7-list-item-label {
    font-weight: 400;
    font-size: var(--size-small);	
}


/* Home - Description ----- */
.box-home-desc h3 {
    font-size: var(--size-5);
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 1.3;
    margin-bottom: 14px;
    text-transform: uppercase;	
}

.box-home-desc p {
    margin-bottom: 14px;
    line-height: 1.4;
    font-size: var(--size-small);
    opacity: var(--opacity-text-sub);
    letter-spacing: 1px;	
}


/* Footer -------- */
body:is(.woocommerce-page ) .footer-wrapper {
	border-top: 1px solid rgb(var(--color-border-1), 10%);	
}

footer .absolute-footer {
	display: none;
}

.footer-info {
	--logo-h: 30px;
}

.footer-info p {
	font-size: var(--size-small);
	margin-bottom: 14px;
	line-height: 1.5;
	letter-spacing: 1px;
}

.footer-info h5 {
	font-size: var(--size-2);
	margin-bottom: 14px;
	text-decoration: underline 1px;
	font-weight: 600;
	line-height: 1.4;
}

.footer-info h6 {
	font-size: var(--size-small);
	margin-bottom: 14px;
	text-decoration: underline 1px;
	font-weight: 600;
	text-transform: unset;
	line-height: 1.4;
	opacity: 1;
}

.footer-info h3 {
	font-size: var(--size-2);
	margin-bottom: 14px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 1px;
}

.footer-info .el-logo-placeholder {
	height: var(--logo-h);
    margin-bottom: 16px;	
}

.footer-info .logo {
	margin-bottom: 16px;
}

.footer-info .logo  .img-inner {
	padding-top: var(--logo-h) !important;
}

.footer-info .logo img {
	object-fit: content;
}

.footer-info .ux-menu-link__link {
    min-height: unset;
    line-height: 1.4;
    font-size: var(--size-small);
    padding: 6px 0;
    opacity: var(--opacity-text-sub);	
}

.footer-info .ux-menu-link__link:hover {
    text-decoration: underline 1px;
    opacity: 1;	
}


.footer-info .col-copyright > .col-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: space-between;
    align-items: baseline;
    border-top: 1px solid currentColor;
    padding-top: 16px;
	margin-top: 20px;
}

.footer-info .col-copyright p {
	margin: 0;
}

.footer-info .col-copyright .ux-menu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 16px;	
	justify-content: flex-end;
}


.footer-info .col-copyright .ux-menu-link__link {
	text-decoration: underline 1px;
}


/* Archive - Post ------ */
.box-blog-post .is-divider {
	display: none;
}

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

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

.box-blog-post .post-title a {
    -webkit-line-clamp: 3;
    font-weight: 500;
    letter-spacing: 1px;
}

.box-blog-post .from_the_blog_excerpt {
    -webkit-line-clamp: 6;
    opacity: var(--opacity-text-sub);
	letter-spacing: 0.5px; 
}

body:is(.category, .single-post) .page-wrapper,
body:is(.category, .single-post) .header-bg-color {
    background: rgb(var(--bg-3nd));
	padding-bottom: 0;
}


/* Single - Post ------- */
body.single-post .entry-image {
	margin-top: 24px;
}

.entry-header .entry-category a {
    opacity: 1;
    font-weight: 600;
    letter-spacing: 1px;
}

.entry-header .entry-meta a {
    text-decoration: underline 1px;
}

.entry-header .entry-title {
    font-size: var(--size-5);
    font-weight: 500;
    color: rgb(var(--color-text-title));
    line-height: 1.3;
    margin-bottom: 14px;
    letter-spacing: 0.5px;
}


/* Shop ------ */
.shop-page-title .woocommerce-result-count {
    display: none;
}

.shop-page-title .flex-col:has(.filter-button) {
    display: flex;
    gap: 14px;
    --btn-h: 38px;
    flex: 1;
    justify-content: flex-end;	
}

.category-filtering .filter-button {
    padding: 9px 20px 7px;
    border-radius: var(--radius-1);
    line-height: 1.4;
    font-size: var(--size-small);
    position: relative;
    height: var(--btn-h);
    border: 1px solid rgb(var(--color-text-title),10%);
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
	transition: 320ms all;
	background-color: transparent;
}

.category-filtering .filter-button:hover {
    background-color: rgb(var(--color-text-title), 8%);
}

.shop-page-title .shop-page-title {
    font-weight: 500;
    font-size: var(--size-5);
    letter-spacing: 1px;
    width: fit-content;
    margin: 0;
    line-height: 1.3;	
}

.shop-page-title .shop-page-title:after {
    content: '';
    display: inline-block;
    height: 1px;
    width: 22px;
    background: currentColor;
    margin-left: 3px;
}

body:is(.post-type-archive-product, .tax-product_cat ) .breadcrumbs {
	display: none;
}



/* Plugin - Husky Filter --------- */
.woof_redraw_zone .woof_container_inner h4 {
	margin-bottom: 9px;
    font-weight: 500;
    letter-spacing: 0.5px;
    font-size: var(--size-2);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.woof_redraw_zone .woof_list label {
    display: inline-block !important;
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: rgb(var(--color-text-title));
	line-height: 1.4;
    padding-bottom: 0;
	padding-right: 12px;
}

.woof_redraw_zone .icheckbox_square-blue:before {
	content: '\e5ca';
    font-family: var(--ff-material-round);
    font-size: 18px;
    line-height: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: rgb(var(--color-alert));
    transition: 220ms all;
    opacity: 0;
}

.woof_redraw_zone .icheckbox_square-blue.checked:before {
	opacity: 1;
}

.woof_redraw_zone .icheckbox_square-blue, .woof_redraw_zone .iradio_square-blue {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    padding: 0;
    width: 19px;
    height: 19px;
    background: unset;
    cursor: pointer;
    border: 1px solid rgb(var(--color-text-title));
}

.woof_redraw_zone .icheckbox_square-blue.checked,
.woof_redraw_zone .iradio_square-blue.checked {
}

.widget .woof_redraw_zone ul li {
	margin-bottom: 6px;
}

.woof_redraw_zone .woof_container {
    padding-bottom: 0;
    margin-bottom: 24px;
}

.woof_redraw_zone .woof_submit_search_form_container {
    justify-content: flex-start;
    gap: 12px 20px;	
}

.woof_submit_search_form_container .button {
    margin: 0;
    min-height: unset;
    line-height: 1.2;
    font-size: 0;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: unset;
    border-radius: var(--radius-1);
    padding: 8px 24px;
    background-color: rgb(var(--color-primary));
    color: rgb(var(--bg));	
	border: 0px;
	
}

.woof_submit_search_form_container .woof_reset_search_form {
	background-color: rgb(var(--color-text-title), 8%);
    color: rgb(var(--color-text-title));
}

.woof_submit_search_form_container .button:before {
	content: 'Áp dụng';
	font-size: 14px;
}

.woof_submit_search_form_container .woof_reset_search_form:before {
	content: 'Xoá lọc';
}

.woof_products_top_panel {
	margin-bottom: 30px;
    margin-top: -10px;
}

.woof_products_top_panel .woof_products_top_panel_ul {
	display: flex;
    gap: 12px 18px;
    flex-wrap: wrap;	
}

.woof_products_top_panel li:has(.woof_reset_button_2) {
	display: none;
}

.woof_products_top_panel > ul > li {
    margin: 0 !important;	
}

.woof_products_top_panel li {
	font-size: var(--size-small);
    font-weight: 500;
	color: rgb(var(--color-text-title));
}

.woof_products_top_panel li a {
    text-decoration: none;
    background: rgb(var(--color-text-title), 5%);
    padding: 5px 10px;
    border-radius: var(--radius-1);
    color: rgb(var(--color-text-title));
    display: inline-block;
    line-height: 1.3;
    font-weight: 500;
}

.woof_products_top_panel li a:hover {
    background: rgb(var(--color-text-title), 10%);
}

.woof_products_top_panel ul ul  {
	display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;	
}

.woof_products_top_panel_ul li ul li {
	margin: 0 !important; 
}

.woof_products_top_panel li span, .woof_products_top_panel2 li span {
	background: unset;
	padding: 0;
}

.woof_products_top_panel li span:after, .woof_products_top_panel2 li span:after  {
	content: '\e5cd';
	font-family: var(--ff-material-round);
    font-size: 1.4em;
    line-height: 1;
    vertical-align: middle;
    display: inline-block;
    margin-left: 2px;
    color: rgb(var(--color-alert));
    font-weight: 300;
}


/* Sinlge Product - Info ------ */
.single-prd-info {
	--gallery-item-w: calc(100% / 2.2);
	--gallery-item-p: 0 20px 0 0;
}

.single-prd-info .product-thumbnails {
	display: none!important;
}

.single-prd-info .product-images .slide {
    max-width: var(--gallery-item-w);
    padding: var(--gallery-item-p);	
}

.single-prd-info .el-summary {
	border-top: 1px solid rgb(var(--color-border-1), 15%);
    padding-top: 10px;
    margin-bottom: 20px;
}

.single-prd-info .image-tools .zoom-button {
	display: none;
}

.single-prd-info .col .badge-container {
	margin: 10px 0 0 10px;
}

.single-prd-info .el-infos.product-info .cart {
	display: none;
}

.product-info .product-short-description {
    line-height: 1.3;
    font-size: var(--size-small);
    letter-spacing: 0.5px;
    margin-top: 20px;
	color: rgb(var(--color-text-title), var(--opacity-text-sub));
}

.product-info .entry-title {
    font-size: var(--size-5);
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 13px;
}

.product-info span.woocommerce-Price-amount.amount bdi {
	color: rgb(var(--price-color));
    font-weight: 500;
}

.product-info ins span.woocommerce-Price-amount.amount bdi {
    color: rgb(var(--price-sale-color));
}

.product-info .variations .label label {
    margin: 0;
}

.product-info table.variations .label {
    padding-bottom: 5px;
}

.product-info table.variations .label + .label {
    padding-top: 5px;
}

.product-info .product_meta {
    font-size: var(--size-small);
    margin-bottom: 14px;
    color: rgb(var(--color-text-title));
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.product_meta a:hover {
	text-decoration: underline 1px;
}

body .breadcrumbs {
    color: rgb(var(--color-text-title));
    font-weight: 400;
    letter-spacing: 0;
    padding: 0;
    font-size: var(--size-small);
}

.breadcrumbs a {
    color: rgb(var(--color-text-title), var(--opacity-text-sub));
    font-weight: inherit;
	transition: 320ms all;
}

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

.product-section .product-section-title, .product-section .col>h5 {
    margin-top: 0;
    position: relative;
    padding: 0;
    margin-bottom: 20px;
    width: fit-content;
    text-transform: unset;
    font-weight: 500;
    font-size: var(--size-5);
    line-height: 1.2;
    text-align: left;
    display: inline-block;
    letter-spacing: 0.5px;
}

.product-section .product-section-title, .product-section .col>h5 {
    margin-top: 0;
    position: relative;
    padding: 0;
    margin-bottom: 20px;
    width: fit-content;
    text-transform: unset;
    font-weight: 500;
    font-size: var(--size-5);
    line-height: 1.2;
    text-align: left;
    display: inline-block;
    letter-spacing: 0.5px;
}

.product-section .product-section-title:after, 
.product-section .col>h5:after {
    content: '';
    display: inline-block;
    height: 1px;
    width: 22px;
    background: currentColor;
    margin-left: 3px;	
}

.product-section .entry-content {
    padding-top: 0;
    padding-bottom: 0;
}

.shop_attributes .woocommerce-product-attributes-item__value a {
    color: rgb(var(--color-text-title));
}

.shop_attributes .woocommerce-product-attributes-item__value a:hover {
	text-decoration: underline 1px;
}

table.shop_attributes {
	border: 1px solid rgb(var(--color-border-1), 10%);
    border-bottom: 0;
    border-right: 0;	
}

table.shop_attributes td,
table.shop_attributes th {
    border: 1px solid rgb(var(--color-border-1), 10%);
    border-top: 0;
    border-left: 0;
    padding: 8px 10px ;	
}

.product-info .cart:not(.variations_form), 
.product-info .woocommerce-variation-add-to-cart {
	display: flex;
    flex-wrap: wrap;
    gap: 12px 16px;	
}

.quantity {
	border: 1px solid rgb(var(--color-text-title));
    border-radius: 300px;
	overflow: hidden;
}

.quantity .button.is-form {
    background: transparent;
    line-height: 1;
    padding: 0;
    max-height: unset;
    border: 0;
    font-size: 25px;
    min-height: unset;
    padding: 0 10px;
	border-radius: 50%;
}

.quantity input[type=number] {
    font-size: 16px;
    max-width: unset;
    text-align: center;
    width: 50px;
    border: 0;
}

.quantity input[type=number]:hover,
.quantity input[type=number]:focus {
	box-shadow: none;
}

.product-info .quantity {
    height: 36px;
}

.product-info .quantity input[type=number] {
    max-width: unset;
	width: 100px;
}

.product-info .single_add_to_cart_button {
    flex: 1;
    background-color: rgb(var(--color-text-title));
    color: rgb(var(--bg));
    text-transform: unset;
    letter-spacing: 0.5px;
    font-weight: 500;
    border-radius: 300px;
	min-height: unset;
    line-height: 1.2;
    height: 36px;

}

.product-info .single_add_to_cart_button:hover {
    background-color: rgb(var(--color-primary));
}

.single-prd-info .el-cart-right > .wrap-inner {
    position: sticky;
    top: calc(var(--flatsome--header--sticky-height) + 60px);
}


.product-more-infos {
	font-size: var(--size-small);
	letter-spacing: 0.5px;
}

.product-more-infos .accordion-inner p {
	margin-bottom: 12px;
}

.product-more-infos .accordion-inner a {
	color: rgb(var(--color-text-title));
	text-decoration: underline 1px;
	font-weight: 500;
}

.product-more-infos .accordion-inner a:hover {
	color: rgb(var(--color-primary));
}

.product-more-infos .accordion-title {
    font-size: var(--size-small);
    font-weight: 500;
    color: rgb(var(--color-text-title));	
}

.product-more-infos.accordion .accordion-item {
	border-top: 0px;
    margin-top: 5px;
	border-top: 0px;
    border-bottom: 1px solid rgb(var(--color-border-1), 15%);
    padding-bottom: 5px;
	padding-top: 0;
}

.product-more-infos.accordion .accordion-item:first-child {
    padding-top: 5px;
    border-top: 1px solid rgb(var(--color-border-1), 15%);	
	
}

.product-more-infos .accordion-title .toggle {
	height: 30px;
}

.product-more-infos .accordion .accordion-inner {
    padding: 12px 0 12px;
}

/* Checkout Page ------ */

.checkout-inline-error-message {
    color: rgb(var(--color-alert));
    margin-top: -5px;
    margin-bottom: 15px;	
}

.woocommerce .shop_table td, .woocommerce .shop_table th, .woocommerce .shop_table thead th {
    border-width: 1px;
    font-size: var(--size-small);
    color: rgb(var(--color-text-title));
}

/* Account Page ----- */
body.woocommerce-checkout,
body.woocommerce-account,
.shop_table {
    --border-color: rgb(var(--color-border-1), 15%);
    --border-title-color: rgb(var(--color-border-1));
    --bg-gray: rgb(var(--bg-2nd));
    --input-h: 50px;
}

body.woocommerce-checkout .input-text,
body.woocommerce-account .input-text {
    height: var(--input-h);
    font-size: 16px;
    box-shadow: none;
    border: 1px solid var(--border-color);
    padding: 12px 15px;
}

body.woocommerce-checkout .woocommerce-invalid .input-text,
body.woocommerce-account .woocommerce-invalid .input-text {
    border-color: var(--fs-color-alert);
}

body.woocommerce-page .select2-container .select2-selection--single {
    height: var(--input-h);
    align-items: center;
    display: flex;
    box-shadow: unset;
	border: 1px solid var(--border-color);
}

body.woocommerce-page .select2-search--dropdown .select2-search__field {
    height: 40px;
	font-size: 16px; 
}



/* Ux - Content Loadmore --- ---- */
.content-box-loadmore {
  position: relative;
  z-index: 20;
  overflow: hidden;
}

.pt_content_btn_loadmore .btn-loadmore {
	background-color: rgb(var(--bg));
    font-size: 1rem;
    font-weight: 500;
    border: 1px solid var(--fs-color-primary);
    padding: 12px 24px;
    border-radius: var(--radius-2);
    color: var(--fs-color-primary);
    transition: 220ms all;
    cursor: pointer;
    letter-spacing: 0.5px;
}

.pt_content_btn_loadmore .btn-loadmore:hover {
  background-color: var(--fs-color-primary);
  color: white;
}

.pt_content_btn_loadmore {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  height: 100px;
  background: linear-gradient(to top, rgb(var(--bg)) 10%, transparent);
  padding: 20px 20px 5px;
} 




















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


@media only screen and (max-width: 1260px) {
    .container-width,
    .ubermenu-nav,
    .container,
    .row:not(.row-full-width) {
        max-width: 1000px !important;
    }
	
	.home-hero .row-slider > .col > .col-inner {
		padding: 0 15px;
	}
}

@media only screen and (max-width: 1024px) {
	.container-width,
    .ubermenu-nav,
    .container,
    .row:not(.row-full-width) {
        max-width: 830px !important;
    }
}

@media only screen and (max-width: 849px) {
	:root {
		font-size: 14px;
		--size-ratio: 1.15;
	}
	
	#wrapper .header-main {
		height: 70px!important;
	}
	#wrapper #logo img {
		max-height: 28px!important;
		padding: 0;
	}
	body.home .header-bg-color {
		background-color: rgb(var(--bg));
	}
	
	.home-hero {
		--img-h: 405px;
		--img-p: 0;
	}
	.home-hero .el-line {
		display: none;
	}
	.home-hero .row-slider {
		max-width: 100%!important;
	}
	.home-hero .el-texts {
		max-width: unset;
		padding: 0 15px;
		margin: 24px auto 0; 
	}
	.home-hero .row-slider > .col > .col-inner {
		padding: 0 ;
	}
	
	.product-slide-infinity .flickity-slider .product-small.col {
		max-width: calc(100% / 2.5);
	}
	.product-slide-infinity .flickity-viewport {
		overflow: visible;
	}
	.product-slide-infinity  .flickity-button {
		display: none;
	}
	
	.home-production {
		--item-w: 100%;
		--item-p: 10px 0px;
		--img-h: 340px;
	}
	.home-production .flickity-page-dots {
		display: block;
	}
	.home-production .el-texts {
		padding: 0 15px;
	}
	
	.home-subscribe h2 {
		text-align: center;
		font-size: var(--size-6);
	}
	
	.footer-info .el-logo-placeholder {
		display: none;
	}
	.footer-info h3 {
		font-size: var(--size-4); 
	}
	.footer-info .col-copyright > .col-inner {
		margin-top: 0;
	}
	
	.category-page-title .flex-col.medium-text-center:has(.woocommerce-ordering) {
		margin-top: 12px;
        justify-content: flex-start;
	}
	
		.single-prd-info .el-infos.product-info .cart {
		display: flex;
		margin-top: 24px;
	}
	.single-prd-info .el-summary {
		border-top: unset;
		padding-top: 0px; 
	}
	
}

@media only screen and (max-width: 549px) {
	.product-slide-infinity .flickity-slider .product-small.col {
		max-width: calc(100% / 2.2);
		padding-left: 5px;
        padding-right: 5px;
	}
	.row .product-slide-infinity:not(.row-collapse)  {
		margin-left: -5px;
		margin-right: -5px;
	}
	
	.single-prd-info {
		--gallery-item-w: 100%;
		--gallery-item-p: 0 0 0;
	}
	.single-prd-info .breadcrumbs {
		padding: 0 15px;
	}
	.single-prd-info .flickity-prev-next-button {
		opacity: 1;
	}
	
	.checkout-page-title .page-title-inner {
		display: none;
	}
	
}








