/*
Theme Name: LUXURYFOODs
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
@font-face {
	font-family: 'D Din Pro';
	font-style: normal;
	font-weight: 400;
	src: local('Blacker Sans Display'), url('/wp-content/themes/luxuryfoods/assets/fonts/d_din_pro/D-DIN-PRO-400-Regular.otf') format('truetype');
}
@font-face {
	font-family: 'D Din Pro';
	font-style: normal;
	font-weight: 500;
	src: local('Blacker Sans Display'), url('/wp-content/themes/luxuryfoods/assets/fonts/d_din_pro/D-DIN-PRO-500-Medium.otf') format('truetype');
}
@font-face {
	font-family: 'D Din Pro';
	font-style: normal;
	font-weight: 600;
	src: local('Blacker Sans Display'), url('/wp-content/themes/luxuryfoods/assets/fonts/d_din_pro/D-DIN-PRO-600-SemiBold.otf') format('truetype');
}
@font-face {
	font-family: 'D Din Pro';
	font-style: normal;
	font-weight: 700;
	src: local('Blacker Sans Display'), url('/wp-content/themes/luxuryfoods/assets/fonts/d_din_pro/D-DIN-PRO-700-Bold.otf') format('truetype');
}
@font-face {
	font-family: 'D Din Pro';
	font-style: normal;
	font-weight: 800;
	src: local('Blacker Sans Display'), url('/wp-content/themes/luxuryfoods/assets/fonts/d_din_pro/D-DIN-PRO-800-ExtraBold.otf') format('truetype');
}
@font-face {
	font-family: 'D Din Pro';
	font-style: normal;
	font-weight: 900;
	src: local('Blacker Sans Display'), url('/wp-content/themes/luxuryfoods/assets/fonts/d_din_pro/D-DIN-PRO-900-Heavy.otf') format('truetype');
}

.fixed-stuff {
	position: fixed;
	bottom: 40px;
	right: 36px;
	z-index: 9998;
}
.chat-container {
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}
@keyframes wave {
    from { transform: translate(-50%, -50%) scale(1); opacity: 1; }
    to { transform: translate(-50%, -50%) scale(2.5); opacity: 0; }
}

@keyframes shake {
    0%, 50%, 100% { transform: rotate(0deg); }
    60%, 80% { transform: rotate(15deg); }
    70%, 90% { transform: rotate(-15deg); }
}
.fixed-social {
	position: relative;
	z-index: 1;
	width: 50px;
	height: 50px;
}
.fixed-social::before,
.fixed-social::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	background-color: rgba(139, 0, 0, 0.5);
	border-radius: 50%;
	animation: wave 2s infinite ease-out;
	z-index: -1;
	pointer-events: none;
}
.fixed-social::after {
	animation-delay: -1s;
}
.trigger-fixed-list {
	border: none;
	cursor: pointer;
	padding: 0;
	position: relative;
	z-index: 2;
	animation: shake 4s infinite ease-in-out;
}
.fixed-social-list {
	position: relative;
	z-index: 2;
}
.fixed-social-list ul {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0 15px 0 0;
	gap: 12px;
}
.fixed-social-list li {
	opacity: 0;
	visibility: hidden;
	transform: translateX(25px);
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}
.mobile-actions i,
.fixed-stuff i {
	font-size: 20px;
}
.fixed-social-list.active li {
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}
.fixed-social-list.active li:nth-child(1) {
	transition-delay: 0.2s;
}
.fixed-social-list.active li:nth-child(2) {
	transition-delay: 0.1s;
}
.fixed-social-list.active li:nth-child(3) {
	transition-delay: 0s;
}
.fixed-social-list a,
.trigger-fixed-list,
.back-to-top {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: #8b0000;
	color: white;
	text-decoration: none;
	border: none;
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.4);
	transition: transform 0.4s ease-in-out, background-color 0.2s ease, box-shadow 0.2s ease, opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
}
.fixed-social-list a:focus,
.fixed-social-list a:hover,
.trigger-fixed-list:hover,
.back-to-top:hover {
	transform: translateY(-3px);
	background-color: #6a0000;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.45);
	color: #FFF;
}
.fixed-social:hover .trigger-fixed-list,
.back-to-top:hover {
	animation-play-state: paused;
}
.fixed-social:hover::before,
.fixed-social:hover::after {
	animation-play-state: paused;
}
.fixed-social-list img {
	width: 30px;
	height: auto;
	filter: brightness(0) invert(1);
}
.back-to-top {
	margin-left: 15px;
	opacity: 0;
	visibility: hidden;
	transform: scale(0.5) translateY(10px);
	position: absolute;
	right: 0;
	bottom: 90px;
}
.back-to-top.show {
	opacity: 1;
	visibility: visible;
	transform: scale(1) translateY(0);
}
.back-to-top i,
.back-to-top:hover i {
	color: #FFF;
}
/* --- CSS CHO GIAO DIỆN MOBILE --- */
.mobile-actions { display: none; }
@media (max-width: 768px) {
	.add-to-cart-container,
    .chat-container {
        display: none;
    }
	.back-to-top {bottom: 70px;}
    .fixed-social-list li {
        opacity: 0;
        visibility: hidden;
        transform: translateY(25px);
        transition: all 0.4s ease-in-out;
    }
    .fixed-social-list.active li {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .fixed-social-list.active li:nth-child(1) { transition-delay: 0.2s; }
    .fixed-social-list.active li:nth-child(2) { transition-delay: 0.1s; }
    .fixed-social-list.active li:nth-child(3) { transition-delay: 0s; }
    .mobile-actions {
        display: flex;
        flex-direction: column;
        position: fixed;
        bottom: -1px;
        left: 0;
        width: 100%;
        background-color: #fff;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
        z-index: 999;
    }
    .mobile-subtotal-container {
        padding: 8px 15px;
        text-align: right;
        border-bottom: 1px solid #f0f0f0;
    }
    .mobile-subtotal {
        font-size: 14px;
        color: #333;
    }
    .mobile-subtotal .woocommerce-Price-amount.amount {
        font-weight: bold;
        color: #8b0000;
    }

    .mobile-buttons-container {
        display: flex;
        width: 100%;
        height: 60px;
    }
    .mobile-buttons-container > * {
        display: flex;
        justify-content: center;
        align-items: center;
        text-decoration: none;
		color:  #000;
        height: 100%;
		padding-top: 4px;
		align-content: center;
    }
    .mobile-subtotal {
        width: 100%;
        text-align: right;
        font-size: 14px;
        color: #111;
    }
    .mobile-subtotal .woocommerce-Price-amount.amount {
        font-weight: bold;
    }
	.mobile-actions .added_to_cart,
	.mobile-button.alt {
        flex-basis: 25%;
        border-right: 1px solid #eee;
        flex-direction: column;
        font-size: 12px;
        color: #000;
        position: relative;
        cursor: pointer;
		padding: 0 6px;
    }
	.mobile-button.primary {
        flex-basis: 50%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 4px 8px;
        background-color: #8b0000 !important;
        color: white;
        font-size: 16px;
    }
	.mobile-button>span {
        font-size: 12px;
		line-height: 1;
	} 
	.mobile-button>i  {
        font-size: 18px;
        margin-bottom: 5px;
        color: #8b0000;
    }
	.mobile-button.buy-now {
        font-weight: 500;
		text-transform: uppercase;
	}
	.mobile-button.primary i,
	.fixed-social-list a:focus,
	.mobile-button:focus {color: #FFF !important}
    .mobile-chat-trigger .fixed-social-list {
        position: absolute;
        bottom: 100%;
        left: 50%;
        transform: translateX(-50%);
        margin-bottom: 15px;
    }
    .mobile-chat-trigger .fixed-social-list ul {
        flex-direction: column;
		margin: 0;
    }
     .mobile-chat-trigger .fixed-social-list li {
        opacity: 0;
        visibility: hidden;
        transform: translateY(25px);
    }
    .mobile-chat-trigger .fixed-social-list.active li {
         opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
}
