/* IMPORTS */
@import "../../../css/theme.css";
@import "../../../css/custom.css";
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');

html,
body {
	background: white;
	font-family: "Jost", sans-serif;
	scroll-behavior: smooth;
}

.bg-light-solaris {
	background-color: #FEF9F9;
}

.bg-light-solaris-2 {
	background-color: #F6F5F2!important;
}

.bg-light-solaris-3 {
	background-color: rgba(205,202,197,.2);
}

.bg-primary {
	background-color: #f8f8f8!important;
}

.bg-golden {
	background-color: #dd3327!important;
}

.c-text {
	color: #444!important;
}

.text-orange-light {
	color: #dd3327;
}

.border-end-dotted {
	border-right: 1px dotted #dd3327;
}

.border-start-dotted {
	border-left: 1px dotted #dd3327;
}

.border-top-dotted {
	border-top: 1px dotted #dd3327;
}

.btn-orange {
	background-color: #dd3327;
	font-size: 15px!important;
	border-radius: 25px!important;
}

.btn-orange:hover {
	background-color: #292828;
}

.btn-style-1 {
	display: flex;
	justify-content: center;
}

.btn-style-1 a:hover {
	background-color: #323232;
	color: white!important;
}

a,
button,
img,
input,
span {
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
}

.header-extras {
	display: flex;
	flex-direction: column;
}

.postal-code-indicator button {
	color: inherit;
	background-color: transparent;
}

button,
.btn {
	background-color: #dd3327;
	border: 0 none;
	border-radius: 25px;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	height: 50px;
	line-height: 50px;
	display: inline-block;
	padding: 0 40px;
	text-transform: uppercase;
	transition: .3s;
}

input {
	font-family: "Jost", sans-serif;
}

/* HEADER */
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	transition: transform 0.3s ease-in-out;
	background-color: #fff;
}

header .logo {
	max-height: 48px;
}

header nav {
	font-weight: 500;
}

header nav a,
header nav button {
	color: #121519;
	font-weight: 500;
	font-size: 18px;
}

header nav a:hover,
header nav button:hover {
	color: #dd3327;
}

header nav ul li a {
	text-transform: none;
	color: #7e7e7e;
}

header .dropdown-menu {
	max-height: calc(100vh - 130px);
	overflow: auto;
	width: 200px;
	z-index: 9999;
}

header .menu {
	width: 30px;
}

header .menu span {
	height: 2px;
	transition: all ease-in-out .3s;
}

header .menu.active span:first-child {
	transform: rotate(45deg);
}

header .menu.active span:nth-child(2) {
	opacity: 0;
}

header .menu.active span:last-child {
	transform: rotate(-45deg);
	margin-top: -11px;
}

header .icon-c,
header .icon-search {
	border-radius: 20px;
	float: left;
	text-align: center;
	font-size: 22px;
	color: #000;
	transition: .3s;
}

header .menu span {
	background-color: #323232;
}

header.hidden {
	box-shadow: 0 -6px 10px 5px rgba(0,0,0,0.5);
}

body {
	padding-top: 93px;
}

body.with-name {
	padding-top: 137px;
}

body.with-bar {
	padding-top: 119px;
}

body.with-name.with-bar {
	padding-top: 163px;
}

a,
a:hover,
button,
button:hover {
	-webkit-transition: all .3s ease-in-out 0s;
	-o-transition: all .3s ease-in-out 0s;
	transition: all .3s ease-in-out 0s;
}

#carouselBanners .carousel-indicators button {
	background-color: #D9D9D9;
	border-radius: 50%;
	height: 16px;
	opacity: 1;
	width: 16px;
}

#carouselBanners .carousel-indicators button.active {
	background-color: #FCD9B8;
}

#carouselBanners img.banner-image {
	height: 90vh;
	object-fit: cover;
}

#carouselBanners img.d-sm-none {
	object-fit: cover;
}

#carouselBanners .tns-nav {
	position: absolute;
	z-index: 1;
	bottom: 5vh;
	left: 50%;
	transform: translate(-50%, -50%);
}

#carouselBanners .tns-nav button {
	border-radius: 25px;
	width: 12px;
	height: 12px;
	background: #000;
	border: 0;
	margin: 0 5px;
	padding: 0;
}

.sliderCategories .tns-controls {
	top: 50%;
	margin-top: -12px;
}

.sliderCategories .item {
	transition: all 0.3s ease-in-out;
}

.sliderCategories .item h3 {
	transition: color 0.3s ease-in-out;
}

.sliderCategories .item a.btn-cat {
	z-index: 1;
}

.sliderCategories .item .bg-img {
	transition: all 0.3s ease-in-out;
	position: relative;
	overflow: hidden;
}

.sliderCategories .item .bg-img::after {
	display: none;
	content: '';
	position: absolute;
	inset: 0;
	background-color: rgba(255,80,73,0.15);
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
	border-radius: inherit;
}

.sliderCategories .item:hover .bg-img::after {
	opacity: 1;
}

.img-zoom {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 1.5s cubic-bezier(0,0,0.2,1);
}

.item:hover h3 {
	color: #ff7345;
}

.category-hover .category-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.75);
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	transition: all 0.3s ease-in-out;
}

.category-hover:hover .category-overlay {
	opacity: 1;
}

.product-count {
	background-color: #dd3327;
	color: white;
	font-weight: bold;
	font-size: 1rem;
	padding: 0.6rem 1.2rem;
	border-radius: 50px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.tns-controls {
	left: 0;
	position: absolute;
	top: 30%;
	width: 100%;
}

.tns-controls [data-controls="prev"],
.tns-controls [data-controls="next"] {
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	border: 0;
	height: 24px;
	padding: 0;
	position: absolute;
	width: 24px;
}

.tns-controls [data-controls="prev"] {
	background-image: url('https://emidica.com/img/icos/ico-arrow-prev.svg');
}

.tns-controls [data-controls="next"] {
	background-image: url('https://emidica.com/img/icos/ico-arrow-next.svg');
	right: 0;
}

.shipping_type.active::after,
.payment_method.active::after {
	color: var(--bs-green);
	content: '\F26A';
	display: block;
	font-family: 'bootstrap-icons';
	height: 16px;
	position: absolute;
	right: 5px;
	top: 5px;
	width: 16px;
}

.longDescription,
.short_description {
	overflow: hidden;
}

.longDescription figure img,
.longDescription p img,
.short_description figure img,
.short_description p img {
	max-width: 100%;
	height: auto;
}

.longDescription figure,
.short_description figure {
	display: block;
	margin: 20px auto;
	max-width: 100%;
}

.longDescription figure img,
.short_description figure img {
	display: block;
	margin: 20px auto;
}

.longDescription figure.image-style-side,
.short_description figure.image-style-side {
	float: right;
	margin: 20px 0 20px 20px;
}

.menu-categories li .imgblack {
	display: block;
}

.menu-categories li .imgcolor {
	display: none;
}

.menu-categories li.active > div > a {
	color: #CB8161;
}

.menu-categories li.active > div > button .imgblack {
	display: none;
}

.menu-categories li.active > div > button .imgcolor {
	display: block;
}

.menu-categories > ul > li ul {
	list-style: none;
	padding-left: 20px;
}

.menu-categories > ul > li > ul {
	display: block !important;
}

/* FOOTER */
footer {
	background-color: #1c1b1b;
	color: white!important;
	position: relative;
}

footer .bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 127px;
	width: 100%;
	pointer-events: none;
}

footer .text-box {
	padding-top: 90px;
}

footer .logo {
	max-height: 45px;
	max-width: 115px;
}

footer .social-media a {
	transition: all ease-in-out .3s;
}

footer .social-media a.fs-4 {
	padding: 6px;
	border-radius: 15px;
	font-size: 20px!important;
	height: 40px;
	justify-content: center;
	align-items: center;
	display: flex;
	transition: all 0.3s ease-in-out 0s;
	-moz-transition: all 0.3s ease-in-out 0s;
	-webkit-transition: all 0.3s ease-in-out 0s;
}

footer .social-media a.fs-4:hover {
	background-color: #dd3327;
}

footer .social-media .gap-4 {
	border-top: 1px solid #393939;
	padding-top: 40px;
}

#thumbnail-carousel-track {
	height: 516px !important;
}

#icons-items .icon-hover-flip {
	padding: 60px 40px;
	text-align: center;
	border-radius: 30px;
	background-color: #f5f5f5;
	border: 2px solid #f5f5f5;
	transition: all 0.3s ease 0s;
}

#icons-items .icon-hover-flip .bg {
	width: 120px;
	height: 120px;
	background-color: #dd3327;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	margin-bottom: 20px;
}

#icons-items .icon-hover-flip:hover {
	background-color: white;
	border: 2px solid #dd3327;
}

#icons-items .icon-hover-flip .d-flex {
	padding: 20px 10px!important;
}

#icons-items p {
	color: #444;
	font-weight: 400;
	text-align: left;
}

#icons-items h4 {
	font-size: 24px;
	font-weight: 800;
	line-height: 24px;
	color: #000;
	margin-bottom: 18px;
	text-align: left;
}

#icons-items .text-sm {
	margin: 0;
	font-size: 16px;
	line-height: 28px;
	color: #666;
	font-weight: 400;
}

.price-offer {
	border-radius: 5px;
	z-index: 1;
}

.scroll-top-btn {
	display: none;
	bottom: 0;
	right: 30px;
	margin-bottom: 15px;
	z-index: 999;
	border-radius: 50%;
	border: 0;
	color: white;
	transition: all ease-in-out .3s;
}

.scroll-top-btn:hover {
	background-color: #292828!important;
}

.btn-buy-add button {
	background-color: #f5f5f5;
	border: 0 !important;
	color: #000;
	font-weight: 700 !important;
	border-radius: 25px;
	font-size: 13px;
	transition: background 0.2s, color 0.2s;
	cursor: pointer;
}

.product-card {
	position: relative;
	overflow: hidden;
	background: #fff;
	border-radius: 15px;
	height: 100%;
}

.product-card .btn-buy-add {
	position: absolute;
	width: max-content;
	bottom: 0px;
	left: 50%;
	transform: translate(-50%, -50%)!important;
}

.product-card .btn-buy-add .btn-buy {
	background-color: #dd3327;
	border: 0!important;
	color: white;
	font-weight: 700!important;
	border-radius: 25px;
}

.product-card .btn-buy-add .btn-buy:hover {
	background-color: #000;
	border-color: #000;
	color: #fff;
}

.product-card .ratio {
	background-size: 100%;
	background-repeat: no-repeat;
	transition: background-size 1.5s cubic-bezier(0,0,0.2,1);
	will-change: background-size;
	overflow: hidden;
	border-radius: 25px;
	position: relative;
}

.product-card:hover .ratio {
	background-size: 110%;
}

.product-card img {
	transition: 1.5s cubic-bezier(0,0,0.2,1);
	will-change: background-size;
	object-fit: cover;
}

.product-card .box-text h3 {
	font-size: 16px!important;
	line-height: 22px;
	color: #000;
	font-weight: 500!important;
}

.product-card .box-text span {
	font-size: 18px!important;
	padding-top: 10px;
	padding-bottom: 10px;
	font-weight: 700!important;
}

.call-to-action .container .book-image img {
	margin: 0 auto;
	display: block;
}

.search form input {
	background-color: #f2f2f2;
	border-radius: 20px!important;
}

.featuredCategories {
	background-color: white;
}

.featuredCategories h2 {
	font-size: 40px;
	line-height: 60px;
	font-weight: 400;
}

.featuredCategories .item .item-box {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.featuredCategories .item .item-box .ratio {
	padding: 0;
	transition: .3s;
	overflow: hidden;
	background-color: #f5f5f5;
	border-top-left-radius: 0;
	height: 100%;
	border-radius: 23px;
}

.featuredCategories .item .item-box .ratio:hover {
	opacity: 0.8;
	background-color: transparent;
	box-shadow: #000 0em 0em 0em;
}

.featuredCategories .item .item-box h3 {
	font-size: 20px;
	font-weight: 500;
	box-shadow: 0 5px 30px #0000000d;
	background-color: white;
	padding-left: 35px;
	padding-right: 35px;
	border-radius: 30px;
	position: absolute;
	bottom: 15px;
	left: 50%;
	transform: translate(-50%, -50%);
}

.featuredProducts h2,
.best-sellers h2 {
	font-size: 40px;
	line-height: 60px;
	font-weight: 400;
	text-align: center;
}

.lastProducts {
	background-color: white;
}

.lastProducts .row .product-card {
	margin: 0;
	padding: 13px;
	position: relative;
	border-radius: 30px;
	background-color: #ffffff;
	transition: all 0.3s ease-in-out 0s;
}

.btn-buy-add button:hover {
	background-color: #323232;
	color: white!important;
	box-shadow: rgba(149,157,165,0.2) 0px 8px 24px;
	transition: .3s;
}

.carouselBanners {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.carouselBanners .tns-item {
	opacity: 0;
	transition: opacity 0.5s ease;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transform: translateY(20px);
	transition: all 0.5s ease;
}

.carouselBanners .tns-item.tns-slide-active {
	opacity: 1;
	position: relative;
	transform: translateY(0);
}

.carousel-counter {
	z-index: 10;
	color: white;
	font-size: 0.9rem;
	background-color: rgba(0,0,0,0.5);
}

.carousel-numbers {
	min-width: 40px;
	z-index: 2;
	right: 0;
	top: 50%;
	transform: translate(-50%,-50%);
}

.carousel-number {
	width: 50px;
	height: 50px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	background-color: #eee;
	transition: all 0.3s ease;
	font-size: 14px;
}

.carousel-number:hover,
.carousel-number.active {
	background-color: #dd3327;
	color: white;
	font-weight: bold;
}

.banner-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lastProducts h2,
.sale h2 {
	font-size: 40px;
	line-height: 60px;
	font-weight: 400;
	text-align: center;
}

.callAction .bg {
	background-color: #ffe5a6;
}

.callAction .bg h3 {
	font-size: 45px;
	line-height: 60px;
	color: #000;
	font-weight: 800;
}

.img-review .btn {
	height: inherit;
	line-height: 30px;
	position: absolute;
	top: 0;
	right: 0;
	padding-left: 10px;
	padding-right: 10px;
}

.img-review .btn i {
	color: white;
}

.breadcrumb-item.active {
	color: #dd3327;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
	background-color: #000;
}

.nav-pills .nav-link {
	background-color: #f5f5f5;
	color: #000;
}

.form-control {
	border-radius: 25px !important;
}

.contact .text-start button {
	background-color: #000;
}

.contact .text-start button:hover {
	transition: .3s;
	opacity: 0.7;
}

.offcanvas-header {
	background-color: #f5f5f5;
}

.preview-cart .btn-group a:hover,
.total-confirm a:hover {
	opacity: 0.7;
	transition: .3s;
}

#submitBtn {
	line-height: normal;
}

.btn-variations button {
	line-height: normal;
}

.btn-buy-detail {
	border: 1px solid #dd3327;
}

.btn-add-detail {
	color: #292828;
	margin-left: 10px;
	border: 1px solid;
}

.btn-buy-detail:hover,
.btn-add-detail:hover {
	opacity: 0.7;
}

.badge {
	background-color: #dd3327;
	opacity: 0.8;
}

.order-detail .form-floating .form-control {
	position: relative;
	z-index: 3;
	background: transparent;
}

.splide__arrow svg {
	fill: #6c757d;
}

.product-detail {
	position: relative;
	overflow: hidden;
}

.buttons-box {
	opacity: 0;
	pointer-events: none;
	transform: translateY(20px);
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.product-detail:hover .buttons-box {
	opacity: 1;
	pointer-events: all;
	transform: translateY(0);
}

.buttons-box button {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.buttons-box button:nth-child(1) {
	transition-delay: 0.1s;
}

.buttons-box button:nth-child(2) {
	transition-delay: 0.25s;
}

.product-detail:hover .buttons-box button {
	opacity: 1;
	transform: translateY(0);
}

.btn-share a {
	background-color: #313131!important;
	line-height: normal;
	height: auto;
}

.btn-icon{
    padding: initial;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width:991px) {
	body {
		padding-top: 79px;
	}

	body .mobile-nav {
		left: -100%;
		padding-top: 62px;
		transition: all ease-in-out .3s;
		z-index: 5;
		max-width: 425px;
	}

	body .mobile-nav.active {
		left: 0;
		background-color: #444;
		color: white;
	}

	body.with-name {
		padding-top: 118px;
	}

	body.with-name .mobile-nav {
		padding-top: 118px;
	}

	body.with-bar {
		padding-top: 92px;
	}

	body.with-bar .mobile-nav {
		padding-top: 105px;
	}

	body.with-name.with-bar {
		padding-top: 144px;
	}

	body.with-name.with-bar .mobile-nav {
		padding-top: 144px;
	}
}

@media (max-width: 767px) {
	.border-start-dotted {
		border-left: 0;
	}

	.border-end-dotted {
		border: none;
	}

	.scroll-top-btn {
		right: 21px;
	}

	.call-action .bg-dark-vertex-light-2 .row {
		padding: 35px !important;
	}

	.div-sellfast .btn-sellfast,
	.el-sellfast .btn-sellfast {
		height: auto;
		line-height: inherit;
	}
}

@media(max-width: 576px) {
	.order-detail .subtotal-price {
		position: absolute;
		top: 0;
		right: 0;
	}

	.featuredCategories .item .item-box h3 {
		font-size: 15px;
		padding-top: 7px !important;
		padding-bottom: 7px !important;
		padding-left: 20px;
		padding-right: 20px;
	}

	.btn-buy-detail,
	.btn-add-detail {
		border-radius: 0px!important;
	}

	.btn-add-detail {
		margin-left: 0px!important;
	}

	.product-card {
		padding: 0px!important;
	}

	.product-card .btn-buy-add {
		width: auto;
		transform: none !important;
		position: inherit;
		left: inherit;
		opacity: 1;
	}

	.buttons-box button {
		opacity: 1;
		font-size: 12px;
		padding: 0;
	}

	.postal-holder {
		display: flex;
		justify-content: center;
		background: #f8f9fa;
	}

	header .logo {
		margin: 0px!important;
	}
}

@media (max-width:425px) {
	#thumbnail-carousel-track {
		height: 276px !important;
	}

	.row .box-items {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.row .box-items .item {
		padding: 10px;
	}

	.row .box-items .item:first-child {
		grid-area: 1 / 1 / 3 / 2;
	}

	.row .box-items .item:nth-child(2) {
		grid-area: 3 / 1 / 4 / 2 !important;
	}

	.row .box-items .item:nth-child(3) {
		grid-area: 1 / 2 / 2 / 3 !important;
	}

	.row .box-items .item:last-child {
		grid-area: 2 / 2 / 4 / 3 !important;
	}

	.item h3 {
		font-size: 14px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.featuredCategories h2,
	.featuredProducts h2,
	.lastProducts h2,
	.sale h2,
	.best-sellers h2 {
		font-size: 32px !important;
	}
}

@media (max-width: 375px) {
	#thumbnail-carousel-track {
		height: 240px !important;
	}
}

@media (max-width: 320px) {
	#thumbnail-carousel-track {
		height: 198px !important;
	}
}