/*
Theme Name: WebGoc
Theme URI: https://webgoc.com
Description: Thiết Kế Website Chất Lượng Cao
Author: Võ Vương
Author URI: https://webgoc.com
Template: hello-elementor
Version: 2.0.0
Text Domain: webgoc
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

b, strong {
	font-weight: 700;
}

.lucide {
	fill: none;
}

.elementor .e-paragraph-base a,
.elementor .e-heading-link-base,
.elementor .e-paragraph-link-base,
.elementor a.e-svg-base {
	transition: all 200ms;
}

.elementor .e-divider-base {
	background-color: var(--color-border);
}

.elementor .e-divider-base.divider {
	background-color: var(--color-secondary);
}

.elementor .elementor-widget-heading .elementor-heading-title {
	line-height: 1.3;
}

.elementor-widget-icon-box .elementor-icon-box-title a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.elementor-select-wrapper .select-caret-down-wrapper svg {
	fill: var(--e-global-color-accent);
}
.elementor-field-group .elementor-select-wrapper select {
	color: var(--e-global-color-accent);
}

.elementor-button-icon svg {
	height: 1em;
}

.elementor table td, 
.elementor table th {
	border: 0;
	line-height: inherit;
	padding: 10px;
}
.elementor table strong {
	font-weight: 600;
}

.elementor .elementor-widget-theme-post-content ul,
.elementor .elementor-widget-theme-post-content ol,
.elementor .term-description ul,
.elementor .term-description ol,
.elementor .elementor-widget-text-editor ul,
.elementor .elementor-widget-text-editor ol {
	margin-bottom: 20px;
}
.elementor .elementor-widget-theme-post-content ul li,
.elementor .elementor-widget-theme-post-content ol li,
.elementor .term-description ul li,
.elementor .term-description ol li,
.elementor .elementor-widget-text-editor ul li,
.elementor .elementor-widget-text-editor ol li {
	margin-bottom: 5px;
}
.elementor .elementor-widget-theme-post-content hr,
.elementor .term-description hr {
	border: 0;
	border-top: 1px solid var(--color-border);
	margin-bottom: 20px;
}
.elementor .elementor-widget-theme-post-content pre,
.elementor .term-description pre {
	background-color: #F8F8F8;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	padding: 15px;
}

.elementor .text-muted a {
	color: inherit;
}
.elementor .text-muted a:hover {
	color: var(--color-primary);
}
.text-truncate {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/**
 * Pagination
 */
.woocommerce-pagination a.page-numbers,
.woocommerce-pagination span.page-numbers ,
.elementor-pagination a.page-numbers,
.elementor-pagination span.page-numbers {
	font-weight: 600;
	color: var(--color-primary) !important;
	background-color: var(--color-light) !important;
	border-radius: 20px;
	display: inline-block;
	min-width: 40px !important;
	min-height: 40px;
	line-height: 30px !important;
	padding: 5px !important;
	margin: 4px !important;
}
.woocommerce-pagination a.page-numbers:hover,
.woocommerce-pagination span.page-numbers.current,
.elementor-pagination a.page-numbers:hover,
.elementor-pagination span.page-numbers.current  {
	color: #FFF !important;
	background-color: var( --color-primary ) !important;
	border-color: var( --color-primary );
}
.woocommerce-pagination a.page-numbers svg,
.woocommerce-pagination span.page-numbers svg,
.elementor-pagination a.page-numbers svg,
.elementor-pagination span.page-numbers svg {
	height: 14px;
	line-height: 1;
}
.woocommerce-pagination a.page-numbers:hover svg,
.elementor-pagination a.page-numbers:hover svg {
	fill: #FFF !important;
}

.limit-2-lines {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

/**
 * Woocommerce Style 
 */
.woocommerce-message {
	border-top-color: var( --e-global-color-primary );
}
.woocommerce-message::before {
	color: var( --e-global-color-primary );
}

.webgoc-orderby {
	display: flex; 
	gap: 5px; 
	align-items: center;
}
.webgoc-orderby span {
	font-size: 14px;
	color: var(--color-muted);
}
.webgoc-orderby select {
	font-size: 14px;
	background-color: #FFF;
	border: 1px solid var(--color-border);
	border-radius: 10px;
	padding: 8px 12px;
}

.woocommerce .widget_price_filter h5,
.widget_product_categories h5,
.widget_layered_nav h5 {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 0;
	margin-bottom: 15px;
}
.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
	background-color: var(--color-border);
	height: 6px;
}
.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
	background-color: var( --color-secondary );
}
.woocommerce .widget_price_filter .price_slider_amount .button {
	font-size: 13px;
	font-weight: 600;
	color: #FFF;
	background-color: var( --color-secondary );
	border: 0;
	border-radius: 8px;
}
.woocommerce .widget_price_filter .price_slider_amount .button:hover {
	background-color: var( --color-secondary-hover );
}
.woocommerce .widget_price_filter .price_label {
	font-size: 13px;
	color: var(--color-muted);
}

.widget_product_categories ul {
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}
.widget_product_categories ul li + li {
	margin-top: 8px;
}
.widget_product_categories ul li a {
	font-size: 13px;
	color: var(--color-muted);
	display: inline-block;
    padding-left: 25px !important;
    position: relative;
}
.widget_product_categories ul li a:hover,
.widget_product_categories ul li.current-cat > a {
	color: var(--color-secondary);
}
.widget_product_categories ul li a:before {
    content: '';
    position: absolute;
    top: 4px;
    left: 0;
    background-color: #FFF;
    border: 2px solid var(--color-border);
    border-radius: 4px;
    width: 15px;
    height: 15px;
    transition: all 0.3s ease 0s;
}
.widget_product_categories ul li.current-cat > a:before {
    background-color: var( --color-secondary );
    border-color: var( --color-secondary );
}
.widget_product_categories ul li.current-cat > a:after {
    content: '';
    position: absolute;
    top: 6px;
    left: 4px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    width: 6px;
    height: 9px;
    transform: rotate(45deg);
}
.widget_product_categories .count {
	font-size: 14px;
	color: var(--color-muted);
}
.widget_product_categories .children {
	padding-left: 15px;
}
.widget_product_categories .children {
	margin-top: 8px;
}

.select2-container .selection .select2-selection--single {
    border-color: var(--color-border);
    height: 40px;
    border-radius: 8px;
}
.select2-container .selection .select2-selection--single .select2-selection__arrow {
    height: 40px;
}

/**
 * Single product
 */
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::before {
	border-color: var(--e-global-color-accent);
}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::after {
	background-color: var(--e-global-color-accent);
}
.single-product table.shop_attributes {
	border: 0;
	margin-bottom: -20px;
}
.woocommerce table.shop_attributes th {
	font-weight: 500;
	text-align: left;
	background-color: transparent !important;
	border: 0;
	padding: 0;
	padding-bottom: 12px;
}
.woocommerce table.shop_attributes td {
	font-style: normal;
	text-align: left;
	background-color: transparent !important;
	border: 0;
	padding: 0;
	padding-bottom: 12px;
}
.woocommerce table.shop_attributes td p {
	padding: 0;
}
.single-product .product .price ins {
	font-weight: 600 !important;
	text-decoration: none;
}
.single-product .product .price del {
	font-weight: 400;
	color: #999;
	opacity: 1;
}
.single-product .product_meta .detail-label {
	font-weight: inherit;
	color: var(--e-global-color-accent);
}
.single-product .product_meta .posted_in {
	color: var(--e-global-color-accent);
	margin-top: 5px;
}
.single-product .product_meta .sku {
	font-weight: 400;
}
.single-product .product_meta .posted_in > a {
	margin-left: 2px;
}
.woocommerce div.product form.cart .reset_variations {
	display: none !important;
}
.woocommerce-variation.single_variation {
	margin-bottom: 20px;
}
.woocommerce .woocommerce-breadcrumb,
.woocommerce .elementor-element .price {
	margin-bottom: 0;
}
.woocommerce-result-count {
	color: var( --e-global-color-accent );
}
.woocommerce div.product div.images {
	margin-bottom: 0;
}
.woocommerce div.product form.variations_form {
	margin-top: -10px !important;
}
.woocommerce div.product .single_add_to_cart_button {
	opacity: 1;
}
.woocommerce div.product form.cart .variations {
	margin-bottom: 20px;
}
.woocommerce div.product form.cart .variations tr td {
	background-color: transparent;
	padding: 0;
}
.woocommerce div.product form.cart {
	flex-wrap: wrap !important;
}
.woocommerce div.product p.stock {
	display: none;
}

/**
 * Tour cart
 */
.cart {
	font-family: var(--font-family-primary);
}
.tour-cart-media {
	width: 35%;
}
.tour-cart-info {
	width: 65%;
}
.tour-cart-price {
	font-size: 22px;
	font-weight: 700;
	color: var(--color-secondary);
	display: inline-flex;
	align-items: flex-end;
	line-height: 1.2;
	margin-left: 3px;
}
.tour-cart-price ins {
	text-decoration: none;
}
.tour-cart-price del {
	font-size: 14px;
	font-weight: 400;
	color: var(--color-muted);
	order: 2;
	line-height: 1.6;
	margin-left: 5px;
}
.customer-quantity {
	background-color: #FFF;
	border: 1px solid var(--color-border);
	border-radius: 12px;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    padding-left: 37px;
    padding-right: 37px;
}
.customer-quantity .up,
.customer-quantity .down {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 37px;
    height: 100%;
    position: absolute;
    top: 0;
}
.customer-quantity .down {
	border-radius: 8px 0 0 8px;
    left: 0;
}
.customer-quantity .up {
	border-radius: 0 8px 8px 0;
    right: 0;
}
.customer-quantity .up svg,
.customer-quantity .down svg {
    stroke: var(--color-primary);
    height: 14px;
}
.customer-quantity input {
	font-weight: 500;
	text-align: center;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	outline: none;
	width: 50px;
	padding: 10px 0 !important;
}
.customer-label {
	gap: 10px;
	min-width: 150px;
}
.customer-price,
.adult-total,
.child-total,
.infant-total {
	font-size: 15px;
	font-weight: 500;
	text-align: right;
	min-width: 95px;
}
.order-total {
	font-size: 22px;
	font-weight: 700;
	color: var(--color-secondary);
}
@media (max-width: 767px) {
	.tour-cart-media {
		width: 100%;
	}
	.tour-cart-info {
		width: 100%;
	}
	.tour-cart-title {
		margin-top: 0;
	}
	.customer-quantity {
	    padding-left: 32px;
	    padding-right: 32px;
	}
	.customer-quantity .up,
	.customer-quantity .down {
		width: 32px;
	}
	.customer-quantity input {
		width: 25px;
		padding: 8px 0 !important;
	}
	.customer-label {
		gap: 5px;
	}
}

/**
 * Animation
 */
.tada {
	animation-duration:1.25s;
	animation-iteration-count:infinite;
	animation-name:tada
}
@keyframes tada {
	from,
	to {
		transform:scale3d(1,1,1)
	}
	10%,
	20% {
		transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)
	}
	30%,
	50%,
	70%,
	90% {
		transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)
	}
	40%,
	60%,
	80% {
		transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)
	}
}
