/* ADMIN EDITOR (DON'T DELETE THIS LINE) */
@import 'admin-editor.css';
/* END ADMIN EDITOR */

/* FRONTEND STYLE */
html {
	scroll-behavior: smooth !important;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto !important;
	}
}

body {
	position: relative;
}

*:focus {
	outline: none !important;
}

a:hover,
a {
	text-decoration: none;
	/* color: inherit; */
}

/* CONFIG */
.reset-links a {
	text-decoration: underline !important;
	color: var(--base-color) !important;
}

.text-outlet-color {
	color: var(--outlet-color) !important;
}

.bg-outlet-color {
	background-color: var(--outlet-color) !important;
}

.btn-outlet-color {
	background-color: var(--outlet-color) !important;
	color: #000000;
}

.text-alert {
	color: var(--alert-color) !important;
}

.bg-very-light-gray .terms-condition-box .box:before {
	background: #ffffff !important;
}

/* #faqs-sobre .accordion-body a {
	text-decoration: underline !important;
	color: var(--base-color) !important;
} */
#faqs-sobre .accordion-body ul,
#faqs-sobre .accordion-body li {
	list-style: unset !important;
}

.headerProdDestaque {
	position: relative;
	margin-bottom: 15px;
	cursor: pointer;
	/* overflow: hidden; */
}

/* .headerProdDestaque:hover img {
	transform: scale(1.05);
} */

.headerProdDestaque span {
	transition: 0.3s;
}

.headerProdDestaque:hover span {
	padding-left: 3px;
}

.headerProdDestaque a {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 15px;
	right: 15px;
	color: #fff !important;
	padding: 0 !important;
}

.slider-navigation-style-01-small {
	width: 30px !important;
	height: 30px !important;
}

.swiper-category-banners .swiper-button-prev {
	left: 15px !important;
}

.swiper-category-banners .swiper-button-next {
	right: 15px !important;
}

.noScroll {
	overflow: hidden;
}

.critec {
	font-weight: 800;
	font-size: 28px;
	font-family: 'Gilroy';
	text-transform: lowercase;
}

form label.error {
	color: #dc3545 !important;
	line-height: 1.4;
}

.contact-form-style-03 .form-group .form-icon {
	position: absolute;
	top: 27px;
	right: 5px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.terms-condition-box .box::after {
	border-color: #000 !important;
}

#newsletterForm .terms-condition-box .box::after {
	border-color: #fff !important;
}

.contact-form-style-03 .terms-condition-box a {
	color: var(--base-color) !important;
	text-decoration: underline;
}

/* .accordion-style-02 .accordion-item:not(.active-accordion) .accordion-header {
	padding: 10px 0 !important;
	line-height: 1.2;
}
.accordion-style-02 .accordion-item.active-accordion .accordion-header {
	padding: 10px 8px !important;
	line-height: 1.2;
} */

.btn-spinner {
	transition: opacity 0.2s ease-in-out;
}

.hidden {
	display: none;
}

label.is-invalid {
	color: #dc3545;
	width: 100%;
	text-align: start;
	order: 2;
	line-height: 1.4;
}

.terms-condition-box label {
	display: flex;
	flex-direction: column;
}

.terms-condition-box input[type="checkbox"].is-invalid~.box::before {
	border-color: #dc3545;
}

.terms-condition-box input[type="checkbox"]:checked~.box::after {
	display: block;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Firefox */
input[type="number"] {
	-moz-appearance: textfield;
}


.select.disabled::after {
	content: none;
}

.select.disabled select {
	background-color: #1B1B1B !important;
}

.menu-loja .dropdown-menu {
	min-width: 320px;
	width: max-content !important;
}



.header-cart-icon:not(#client-badge) .header-cart .cart-item-list:not(.inner) {
	min-width: 365px !important;
}

@media (max-width: 425px) {
	.header-cart-icon:not(#client-badge) .header-cart .cart-item-list:not(.inner) {
		right: -45px;
	}
}

@media (max-width: 400px) {
	.header-cart-icon:not(#client-badge) .header-cart .cart-item-list:not(.inner) {
		min-width: 330px !important;
		max-width: 350px !important;
	}
}

.header-cart-icon .header-cart .cart-item-list .cart-item .product-image {
	max-width: 70px !important;
}

#returnMessage {
	position: fixed;
	bottom: 15px;
	right: -100%;
	transition: all ease-in-out 300ms;
}

#returnMessage.active {
	right: 15px;
}

.bg-gradient-base-color-transparent {
	background-image: -webkit-gradient(linear, left bottom, left top, from(var(--base-color)), to(transparent));
	background-image: linear-gradient(to top, var(--base-color) 0%, transparent 100%);
}

.bg-gradient-outlet-color-transparent {
	background-image: -webkit-gradient(linear, left bottom, left top, from(var(--outlet-color)), to(transparent));
	background-image: linear-gradient(to top, var(--outlet-color) 0%, transparent 100%);
}

.btn-switch-text.multiline .btn-double-text,
.btn-switch-text.multiline .btn-double-text::after {
	transform: none !important;
	transition: none !important;
}

loader {
	background: #ffffff;
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	opacity: 0;
	pointer-events: none;
	transition: opacity ease-in-out 300ms;
}

loader.active {
	opacity: 1;
	pointer-events: unset;
}

.loader {
	width: 50px;
	aspect-ratio: 1;
	border: 3px solid currentColor;
	/* thicker */
	border-radius: 50%;
	/* round */
	box-sizing: border-box;
	color: var(--base-color);
	position: relative;
	background:
		radial-gradient(circle 3px, currentColor 95%, #0000);
	/* center dot only */
}

/* hands */
.loader::before,
.loader::after {
	content: "";
	position: absolute;
	inset: 18% 50% 18% 50%;
	/* thin vertical strip centered */
	width: 3px;
	background: currentColor;
	transform-origin: 50% calc(100% - -1px);
	/* pivot near the center */
	border-radius: 2px;
}

/* minute hand: 10 minutes => 60deg */
.loader::after {
	height: 38%;
	top: 12%;
	bottom: auto;
	transform: translateX(-50%) rotate(60deg);
}

/* hour hand: 10:10 => 10*30 + 10*0.5 = 305deg (or -55deg) */
.loader::before {
	height: 28%;
	top: 22%;
	bottom: auto;
	transform: translateX(-50%) rotate(-55deg);
}

/* pendulum (moved to child so we still have ::before/::after for hands) */
.loader>span {
	position: absolute;
	height: 50px;
	inset: 100% 10% auto;
	background:
		radial-gradient(circle closest-side at 50% calc(100% - 10px), currentColor 94%, #0000),
		linear-gradient(currentColor 0 0) top/3px 80% no-repeat;
	transform-origin: top;
	animation: l2 2s infinite cubic-bezier(0.5, 200, 0.5, -200);
}

@keyframes l2 {
	100% {
		transform: rotate(0.4deg);
	}
}

.mfp-img {
	aspect-ratio: 1;
	object-fit: contain;
	background-color: #ffffff;
}

#info-adicional h1,
#info-adicional h2,
#info-adicional h3,
#info-adicional h4 {
	font-family: var(--alt-font);
	color: #000000;
	line-height: 1.4;
	margin-bottom: 1.5rem;
}

#info-adicional h3 {
	font-size: 24px;
}

#info-adicional h4 {
	font-size: 22px;
}

#perfilForm .terms-condition-box label.box::before {
	width: 24px;
	height: 24px;
	border: 2px solid var(--extra-medium-gray);
}

#perfilForm .terms-condition-box label.box::after {
	left: 9px;
	top: 10px;
	width: 7px;
	height: 11px;
}

.shop-filter {
	max-height: 500px;
	overflow-y: auto;
}

.add-to-cart:disabled,
.add-to-cart:disabled:hover {
	border-color: #828282;
	opacity: 0.6 !important;
	cursor: not-allowed;
}

.category-btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	overflow: hidden;
	min-height: 2.25rem;
	/* adjust to your button size */
	padding-inline: 1rem;
}

.category-btn__text-wrap {
	position: relative;
	display: grid;
	place-items: center;
	line-height: 1.2;
	max-width: 100%;
}

.category-btn__text {
	grid-area: 1 / 1;
	display: block;
	max-width: 100%;
	white-space: normal;
	/* allow wrapping */
	overflow-wrap: break-word;
	transition: transform .35s ease, opacity .35s ease;
}

.category-btn__text--current {
	transform: translateY(0);
	opacity: 1;
}

.category-btn__text--hover {
	transform: translateY(100%);
	opacity: 0;
}

.category-btn:hover .category-btn__text--current,
.category-btn:focus-visible .category-btn__text--current {
	transform: translateY(-100%);
	opacity: 0;
}

.category-btn:hover .category-btn__text--hover,
.category-btn:focus-visible .category-btn__text--hover {
	transform: translateY(0);
	opacity: 1;
}

/* loader {
    background: #ffffff;
    position: fixed;
    inset: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    opacity: 0;
    pointer-events: none;
    transition: opacity ease-in-out 300ms;
}

loader.active {
    opacity: 1;
    pointer-events: unset;
}
.loader {
	width: 40px;
	aspect-ratio: 1;
	border:2px solid;
	box-sizing: border-box;
	color: var(--base-color);
	background: 
	  radial-gradient(circle 3px, currentColor 95%,#0000),
	  linear-gradient(      currentColor 50%,#0000 0) 50%/3px 80% no-repeat,
	  linear-gradient(90deg,currentColor 50%,#0000 0) 50%/60% 3px no-repeat;
	position: relative;
}
.loader:before {
	content: "";
	position: absolute;
	height: 50px;
	inset: 100% 10% auto;
	background:
	  radial-gradient(circle closest-side at 50% calc(100% - 10px), currentColor 94%,#0000),
	  linear-gradient(currentColor 0 0) top/3px 80% no-repeat;
	transform-origin: top;
	animation: l2 2s infinite cubic-bezier(0.5,200,0.5,-200);
}
@keyframes l2 {
	100% {transform: rotate(0.4deg)}
} */

@media (min-width: 992px) {
	#menu-loja .col:last-child {
		padding-top: 1lh
	}
}

@media (max-width: 991px) {
	#menu-loja .col:last-child ul {
		padding-top: 0;
	}
}

.registoForm input,
.registoForm textarea,
.registoForm form-control,
.registoForm select {
	padding: 6px 18px !important
}

.shop-box .alert,
.product-price .alert {
	padding: 6px 12px 6px 12px;
}

.discount-badge {
	padding: 6px 6px;
	color: #ffffff;
	font-size: 14px;
	line-height: 1;
	border-radius: 2px;
	text-transform: uppercase;
	font-family: monospace;
	font-weight: 700;
	background-color: var(--green);
}

.discount-badge.small {
	padding: 4px 6px;
	font-size: 12px;
}

/* Product grid card alignment (equal row heights via shop-grid.js) */
.shop-modern .grid-item {
	display: flex;
}

.shop-modern .shop-box {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
}

.shop-modern .shop-box .shop-image {
	flex-shrink: 0;
	aspect-ratio: 1 / 1;
}

.shop-modern .shop-box .shop-image a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.shop-modern .shop-box .shop-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.shop-modern .shop-box .shop-footer {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.shop-modern .shop-box .product-card-title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	overflow: hidden;
}

/* .shop-modern .shop-box .product-card-meta {
	margin-top: auto;
} */

/* .footer-grid {
	display: grid;
	grid-template-columns: 3fr 3fr 3fr 3fr;
	grid-template-areas:
	  "contactos links links2 newsletter"
	  "contactos frase  frase  newsletter";
} */

@media (max-width: 991px) {
	.header-icon .icon>a {
		color: #ffffff;
	}
}

@media (max-width: 767px) {
	header .header-top-bar {
		display: block !important;
		height: auto !important;
	}
}

.footer-contactos {
	grid-area: contactos;
}

.footer-links {
	grid-area: links;
}

.footer-links2 {
	grid-area: links2;
}

.footer-news {
	grid-area: newsletter;
}

.footer-frase {
	grid-area: frase;
}

.checkout-table,
.cart-table {
	width: 100%;
	border-collapse: collapse;
}

.checkout-table thead,
.checkout-table tbody.cart-items-scroll,
.cart-table thead,
.cart-table tbody.cart-items-scroll {
	display: table;
	width: 100%;
	table-layout: fixed;
}

.checkout-table tbody.cart-items-scroll {
	display: block;
	max-height: 350px;
	overflow-y: auto;
}

.cart-table tbody.cart-items-scroll {
	display: block;
	max-height: 500px;
	overflow-y: auto;
}

.checkout-table tbody.cart-items-scroll tr,
.checkout-table tbody:not(.cart-items-scroll) tr,
.cart-table tbody.cart-items-scroll tr,
.cart-table tbody:not(.cart-items-scroll) tr {
	display: table;
	width: 100%;
	table-layout: fixed;
}

@media (min-width: 992px) {
	.footer-grid {
		display: grid;
		grid-template-columns: 3fr 3fr 3fr 3fr;
		grid-template-areas:
			"contactos links links2 newsletter"
			"contactos frase  frase  newsletter";
	}
}

/* @media (max-width: 991px) {
	.menu-loja .dropdown-menu {
		width: 100% !important;
	}
}
@media (max-width: 576px) {
	.menu-loja .dropdown-menu {
		padding: 0 0 15px 0 !important;
	}
	.navbar .navbar-nav .simple-dropdown .dropdown-menu .col-6 li {
		padding: 0 12px !important;
	}
} */

.comercial-card {
	border: 1px solid var(--light-gray);
	border-radius: 15px;
	padding: 16px 24px;
}

.comercial-card img {
	aspect-ratio: 1;
	border-radius: 50%;
}

@media (max-width: 576px) {
	.comercial-card {
		padding: 16px 18px;
		align-items: flex-start !important;
	}

	.comercial-card img {
		width: 75px;
	}
}

@media (max-width: 1400px) {
	#contacts-map iframe {
		width: calc(100% - 27vw);
	}

}

@media (max-width: 1200px) {
	#contacts-map iframe {
		max-height: 450px;
	}

}

@media (max-width: 991px) {
	#contacts-map {
		margin: 0;
	}

	#contacts-map iframe {
		width: 100%;
		max-height: 500px;
	}
}

@media (max-width: 425px) {
	#contacts-map iframe {
		max-height: 400px;
	}
}

.spacer150 {
	grid-column: inherit;
	height: 150px;
	width: 100%;
}

.spacer120 {
	grid-column: inherit;
	height: 120px;
	width: 100%;
}

.spacer90 {
	grid-column: inherit;
	height: 90px;
	width: 100%;
}

.spacer60 {
	grid-column: inherit;
	height: 60px;
	width: 100%;
}

.spacer30 {
	grid-column: inherit;
	height: 30px;
	width: 100%;
}

.spacer15 {
	grid-column: inherit;
	height: 15px;
	width: 100%;
}

/* LARGE DISPLAY'S */
@media (max-width: 1200px) {
	.lg-spacer150 {
		height: 150px;
	}

	.lg-spacer120 {
		height: 120px;
	}

	.lg-spacer90 {
		height: 90px;
	}

	.lg-spacer60 {
		height: 60px;
	}

	.lg-spacer30 {
		height: 30px;
	}

	.lg-spacer15 {
		height: 15px;
	}

	.lg-block150 {
		display: inline-block;
		width: 150px;
	}

	.lg-block120 {
		display: inline-block;
		width: 120px;
	}

	.lg-block90 {
		display: inline-block;
		width: 90px;
	}

	.lg-block60 {
		display: inline-block;
		width: 60px;
	}

	.lg-block30 {
		display: inline-block;
		width: 30px;
	}

	.lg-block15 {
		display: inline-block;
		width: 15px;
	}

	.lg-taleft {
		text-align: left;
	}

	.lg-tacenter {
		text-align: center;
	}

	.lg-taright {
		text-align: right;
	}

	.lg-tajustify {
		text-align: justify;
	}
}

/* DESKTOP */
@media (max-width: 992px) {
	.md-spacer150 {
		height: 150px;
	}

	.md-spacer120 {
		height: 120px;
	}

	.md-spacer90 {
		height: 90px;
	}

	.md-spacer60 {
		height: 60px;
	}

	.md-spacer30 {
		height: 30px;
	}

	.md-spacer15 {
		height: 15px;
	}

	.md-block150 {
		display: inline-block;
		width: 150px;
	}

	.md-block120 {
		display: inline-block;
		width: 120px;
	}

	.md-block90 {
		display: inline-block;
		width: 90px;
	}

	.md-block60 {
		display: inline-block;
		width: 60px;
	}

	.md-block30 {
		display: inline-block;
		width: 30px;
	}

	.md-block15 {
		display: inline-block;
		width: 15px;
	}

	.md-taleft {
		text-align: left;
	}

	.md-tacenter {
		text-align: center;
	}

	.md-taright {
		text-align: right;
	}

	.md-tajustify {
		text-align: justify;
	}
}

/* TABLET */
@media (max-width: 768px) {
	.sm-spacer150 {
		height: 150px;
	}

	.sm-spacer120 {
		height: 120px;
	}

	.sm-spacer90 {
		height: 90px;
	}

	.sm-spacer60 {
		height: 60px;
	}

	.sm-spacer30 {
		height: 30px;
	}

	.sm-spacer15 {
		height: 15px;
	}

	.sm-block150 {
		display: inline-block;
		width: 150px;
	}

	.sm-block120 {
		display: inline-block;
		width: 120px;
	}

	.sm-block90 {
		display: inline-block;
		width: 90px;
	}

	.sm-block60 {
		display: inline-block;
		width: 60px;
	}

	.sm-block30 {
		display: inline-block;
		width: 30px;
	}

	.sm-block15 {
		display: inline-block;
		width: 15px;
	}

	.sm-taleft {
		text-align: left;
	}

	.sm-tacenter {
		text-align: center;
	}

	.sm-taright {
		text-align: right;
	}

	.sm-tajustify {
		text-align: justify;
	}

	.outlet-icon {
		width: 150px;
	}
}

@media (max-width: 575px) {
	.outlet-icon {
		width: 100px;
	}

	#returnMessage.active {
		left: 15px !important;
	}
}

/* MOBILE */
@media (max-width: 420px) {
	.xs-spacer150 {
		height: 150px;
	}

	.xs-spacer120 {
		height: 120px;
	}

	.xs-spacer90 {
		height: 90px;
	}

	.xs-spacer60 {
		height: 60px;
	}

	.xs-spacer30 {
		height: 30px;
	}

	.xs-spacer15 {
		height: 15px;
	}

	.xs-block150 {
		display: inline-block;
		width: 150px;
	}

	.xs-block120 {
		display: inline-block;
		width: 120px;
	}

	.xs-block90 {
		display: inline-block;
		width: 90px;
	}

	.xs-block60 {
		display: inline-block;
		width: 60px;
	}

	.xs-block30 {
		display: inline-block;
		width: 30px;
	}

	.xs-block15 {
		display: inline-block;
		width: 15px;
	}

	.xs-taleft {
		text-align: left;
	}

	.xs-tacenter {
		text-align: center;
	}

	.xs-taright {
		text-align: right;
	}

	.xs-tajustify {
		text-align: justify;
	}
}

img {
	max-width: 100%;
}

/* Order history page */
.order-history-table th {
	white-space: nowrap;
}

@media (min-width: 768px) and (max-width: 1199px) {
	.order-history-table-wrapper {
		-webkit-overflow-scrolling: touch;
	}

	.order-history-table {
		min-width: 720px;
	}
}

@media (max-width: 767px) {
	.order-history-table-wrapper {
		overflow: visible;
	}

	.order-history-table thead {
		display: none;
	}

	.order-history-table tbody tr.order-history-row {
		display: block;
		border: 1px solid var(--extra-medium-gray);
		border-radius: 4px;
		padding: 15px;
		margin-top: 16px;
		background: var(--white);
	}

	.order-history-table tbody tr.order-history-row td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 12px;
		padding: 0 0 12px 0;
		border: 0;
		text-align: right;
		word-break: break-word;
	}

	.order-history-table tbody tr.order-history-row td:last-child {
		padding-bottom: 0;
		padding-top: 8px;
		justify-content: stretch;
	}

	.order-history-table tbody tr.order-history-row td::before {
		content: attr(data-title);
		font-weight: 500;
		color: var(--dark-gray);
		font-size: 14px;
		text-align: left;
		flex-shrink: 0;
		max-width: 48%;
	}

	.order-history-table tbody tr.order-history-row td.order-history-action::before {
		display: none;
	}

	.order-history-table tbody tr.order-history-row td.order-history-action .toggle-order-details {
		width: 100%;
		min-height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 8px 12px !important;
		border-top: 1px solid var(--extra-medium-gray);
		margin-top: 4px;
	}

	.order-history-table tbody tr.order-details-row {
		display: block;
		border: none;
		margin: 0 0 20px 0;
		padding: 0;
	}

	.order-history-table tbody tr.order-details-row:not(.d-none) {
		margin-top: -1px;
	}

	.order-history-table tbody tr.order-details-row>td {
		display: block;
		padding: 0 !important;
		border: 0;
	}

	.order-history-table tbody tr.order-details-row>td::before {
		display: none;
	}

	.order-history-details-panel {
		border: 1px solid var(--extra-medium-gray);
		border-top: 0;
		border-radius: 0 0 4px 4px;
	}

	.order-history-doc-buttons .btn {
		width: 100%;
		justify-content: center;
	}

	.order-history-table tbody tr.order-history-empty td {
		display: block;
		text-align: center;
		padding: 30px 15px;
		border: 1px solid var(--extra-medium-gray);
		border-radius: 4px;
	}

	.order-history-table tbody tr.order-history-empty td::before {
		display: none;
	}

	.order-history-products-responsive {
		overflow: visible;
	}

	.order-history-products-table thead {
		display: none;
	}

	.order-history-products-table tbody tr {
		display: block;
		border-bottom: 1px solid var(--extra-medium-gray);
		padding: 15px 0;
		margin-bottom: 15px;
	}

	.order-history-products-table tbody tr:last-child {
		margin-bottom: 0;
		border-bottom: 0;
		padding-bottom: 0;
	}

	.order-history-products-table tbody tr td {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		padding: 0 0 10px 0;
		border: 0;
		text-align: right;
		word-break: break-word;
		line-height: normal;
	}

	.order-history-products-table tbody tr td:last-child {
		padding-bottom: 0;
	}

	.order-history-products-table tbody tr td::before {
		content: attr(data-title);
		font-weight: 500;
		color: var(--dark-gray);
		font-size: 13px;
		text-align: left;
		flex-shrink: 0;
		max-width: 48%;
	}

	.order-history-products-table tbody tr td.order-history-product-name {
		flex-direction: column;
		align-items: stretch;
		text-align: left;
	}

	.order-history-products-table tbody tr td.order-history-product-name::before {
		margin-bottom: 4px;
	}

	.order-history-products-table tbody tr td.order-history-product-action {
		justify-content: stretch;
	}

	.order-history-products-table tbody tr td.order-history-product-action .btn {
		width: 100%;
		justify-content: center;
	}
}

@media (min-width: 576px) and (max-width: 767px) {
	.order-history-doc-buttons .btn {
		width: auto;
	}
}