/* IMPORT GOOGLE FONTS */

/* font-family: "Montserrat", serif; font-weight: 100 a 900; */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

/* Import Icons Google */

:root {
	--font-bold: 700;
	--font-semibold: 600;
	--font-medium: 500;
	--font-regular: 400;
	--font-light: 200;
	--font-thin: 100;
}

/* Btn universal */
.btn-univesal {
	color: black;
	border: 1px solid black;
	padding: 14px 50px;
	margin: auto;
	border-radius: 30px;
	transition: all 0.8s;
	background-color: rgba(0, 0, 0, 0);
}

.btn-univesal:hover {
	background-color: black;
	color: white;
	border: 1px solid rgba(255, 255, 255, 0);
	transition: all 0.8s;
}

/* SETUP  */
* {
	font-family: "Montserrat", serif;
	font-size: 15px;
	line-height: 1.3em;
	font-weight: 400;
	text-decoration: none !important;
	box-sizing: border-box;
}

html,
body {
	padding: 0;
	margin: 0;
	transition: opacity 0.3s ease-in-out;
	scroll-behavior: smooth;
}

main {
	background-color: #f7f5f6;
}

ul {
	list-style: none;
	padding-left: 0;
}

p {
	word-break: break-word;
}

a {
	text-decoration: none;
}

input {
	outline: none;
	border: 0;
}

input:focus {
	outline: none;
}

/* TOPBAR */
.topbar {
	width: 100%;
	height: 46px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0px;
	padding: 0px 20px 0px 20px;
	box-sizing: border-box;
	top: 0;
}

.topbar .col-1 {
	width: 50%;
	display: flex;
	align-items: center;
	gap: 5px;
}

.topbar .col-2 {
	width: 50%;
	display: flex;
	align-items: center;
	gap: 25px;
}

.topbar .area-lojista a,
.topbar .seja-lojista a {
	font-size: 12px;
}

.topbar .area-lojista,
.topbar .seja-lojista {
	width: 33%;
	min-width: 112px;
	transition: text-shadow 0.3s ease;
	text-shadow: none;
	margin-top: -2px;
}

.topbar .area-lojista:hover,
.topbar .seja-lojista:hover {
	text-shadow: 0 0 5px currentColor;
}

.topbar a,
.topbar a i {
	transition: text-shadow 0.3s ease;
	text-shadow: none;
}

.topbar a:hover,
.topbar a:hover i {
	text-shadow: 0 0 5px currentColor;
}

.topbar .horario i,
.topbar .area-lojista i,
.topbar .seja-lojista i {
	transform: translateX(-2px) translateY(1px);
}

/* HEADER */
header {
	position: relative;
	z-index: 999;
	transition: all 0.8s;
	background-color: white;
	width: 100%;
	top: 0px;
}

header a {
	text-decoration: none;
	color: #80807F;
	text-transform: uppercase;
	font-weight: var(--font-semibold);
	font-size: 13px;
	margin-top: 10px;
}

header .logo-header {
	width: 18dvh;
	height: 7dvh;
	object-fit: contain;
	position: relative;
	z-index: 99999;
}

header .icone::before {
	content: "";
	width: 15px;
	height: 15px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	margin-right: 4px;
}

header .icone-horario::before {
	content: "";
	width: 18px;
	height: 18px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

header .icone-home::before {
	background-image: url();
}

header .icone-eventos::before {
	background-image: url();
}

header .icone-acontece::before {
	background-image: url();
}

header .icone-loja::before {
	background-image: url();
}

header .icone-servico::before {
	background-image: url();
}

header .icone-espacos::before {
	background-image: url();
}

header .icone-contato::before {
	background-image: url();
}

header .icone-instagram::before {
	background-image: url(https://qa-uploads.madnezz.com.br/1b6d7add7bfb0f55b96829fe138a91d0);
}

header .icone-facebook::before {
	background-image: url(https://qa-uploads.madnezz.com.br/fb0277f2fde42203861cf943c82c1f6b);
}

header .icone-time::before {
	background-image: url(https://qa-uploads.madnezz.com.br/ee2e5fe087ea611d33d06462f048f8b7);
}

header .redes {
	display: flex;
	border-left: 1px solid rgba(255, 0, 0, 0.054);
	height: 10dvh;
}

header .icone {
	display: flex;
	align-items: center;
	gap: 5px;
}

header .line {
	padding: 0px 20px;
}

.bar {
	width: 0%;
	height: 2px;
	background-color: #F5A623;
	transition: width 0.5s ease;
}

.icone:hover+.bar {
	width: 100%;
}

.headerActive {
	transition: all 1s;
	z-index: 10;
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
	position: fixed;
}

.headerDisabled {
	position: relative;
	width: 100%;
	transition: all 0.8s;
	background-color: #fff;
	top: 0px;
}

.header-content-mobile {
	display: none;
}

/* Banner */
.banner .swiper-container .prev {
	background-image: url(https://qa-uploads.madnezz.com.br/8d2b0414c1b5d41e524116fbb4db1ee4);
	background-size: 15px;
	background-color: rgba(0, 0, 0, 0.568);
	background-repeat: no-repeat;
	background-position: center;
	transform: rotate(180deg);
	width: 40px;
	height: 40px;
}

.banner .swiper-container .next {
	background-image: url(https://qa-uploads.madnezz.com.br/8d2b0414c1b5d41e524116fbb4db1ee4);
	background-size: 15px;
	background-color: rgba(0, 0, 0, 0.568);
	background-repeat: no-repeat;
	background-position: center;
	width: 40px;
	height: 40px;
}

/* acesso rapido */
.card-1 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/5d410b52321a9c9681fe1f6ed0109ba3);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-2 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/21e7a1014a06f0b426d235b83a13803e);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-3 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/fe35fd8f54fc433cf298614bed2a7ae5);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-4 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/266a8cf4bf6d940675a0e3dbbeb1ff6a);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-2 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/8b922754835c6eefd6cbb66b14f0fc44);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-3 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/4a8707cef4096c1d160a5d42da163378);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-4 {
	background: linear-gradient(rgba(0, 0, 0, 0.288), rgba(0, 0, 0, 0.432)),
		url(https://qa-uploads.madnezz.com.br/c26ce40344fbf80862a01fbefca8a596);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	min-height: 50dvh;
	color: white;
}

.card-section {
	padding: 68px 30px 72px;
	position: relative;
	transition: all 0.5s;
}

.card-section::before {
	content: "";
	background-color: black;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.5;
	transition: all 0.5s;
}

.card-section:hover::before {
	height: 0%;
	transition: all 0.5s;
}

.card-section:hover {
	transform: scale(1.05);
	transition: all 0.5s;
}

.card-section h2 {
	font-size: x-large;
	font-weight: var(--font-light);
	color: white;
	text-transform: uppercase;
	margin-bottom: auto;
	text-align: left;
}

.card-section .btn-acesso-rapido {
	border: 1px solid white;
	margin: 0px;
	color: white;
	width: fit-content;
	padding: 10px 20px;
	border-radius: 28px;
	transition: all 0.8s;
	background-color: rgba(0, 0, 0, 0);
}

.card-section .btn-acesso-rapido:hover {
	background-color: white;
	color: black;
	transition: all 0.5s;
}

.card-section .icone {
	width: 35px;
	height: 35px;
	margin-bottom: 10px;
}

/* Serviços */
.imagem-servicos {
	width: 7rem;
	height: 7rem;
	border-radius: 50%;
	object-fit: cover;
	position: relative;
	left: 0;
	margin-right: .75rem;
	transform: scale(.9);
	transform-origin: center;
	box-shadow: 0 0 0 3px #fff, 0 2px 10px rgba(0, 0, 0, .06);
	left: -18px;
	filter: drop-shadow(0px 0px 1px gray);
	object-fit: contain;



}


.card-servico {
	background-color: white;
	padding: 0px 10px;
	border-radius: 72px;
	position: relative;
	width: 100%;
	margin: 10px 0px;
}

.card-servico .content {
	position: relative;
	text-transform: uppercase;
	padding-right: 28px;
}

.card-servico .content p {
	font-size: 0.8rem;
	font-weight: var(--font-bold);
	color: #80807F;
}

.card-servico .content h3 {
	font-size: 1.0rem;
	margin: 3px 0px;
	color: black;
}

#pagina-interna .card {
	border: none;
	border-radius: 0px;
	width: 80%;
	margin: auto;
	overflow: hidden;
	height: auto;
}

.swiper.thumbnail {
	position: relative;
}

.swiper-button-prev,
.swiper-button-next {
	top: 70%;
	transform: translateY(-50%);
	position: absolute;
	z-index: 10;
	color: #000;
	/* ajuste conforme necessário */
}

/* Setas dentro da área da imagem */
.swiper-button-prev {
	left: 10px;
}

.swiper-button-next {
	right: 10px;
}

/* Garante que a altura mínima da área swiper seja respeitada */
.swiper.thumbnail .swiper-wrapper,
.swiper.thumbnail .swiper-slide {
	height: auto;
}

#pagina-interna .next {
	background-image: url(https://qa-uploads.madnezz.com.br/8d2b0414c1b5d41e524116fbb4db1ee4);
	background-size: 15px;
	background-color: rgba(0, 0, 0, 0.795);
	background-repeat: no-repeat;
	opacity: 1;
	background-position: center;
	width: 40px;
	height: 40px;
}

#pagina-interna .prev {
	background-image: url(https://qa-uploads.madnezz.com.br/8d2b0414c1b5d41e524116fbb4db1ee4);
	background-size: 15px;
	background-color: rgba(0, 0, 0, 0.795);
	background-repeat: no-repeat;
	background-position: center;
	opacity: 1;
	transform: rotate(180deg);
	width: 40px;
	height: 40px;
}

#pagina-interna .card p {
	color: black;
	font-size: 1.3rem;
	display: block;
	margin: 2rem 0px 3rem;
}

#pagina-interna .card .btn-univesal {
	margin: 0px;
}

.servicos a:hover .imagem-servicos {
	transform: scale(1.1) !important;
	transition: all 0.5s !important;
}

.servicos h2 {
	color: #80807F;
	font-weight: var(--font-regular);
	font-style: italic;
}

/* Galeria */
.imagem-galeria {
	width: 100%;
	height: 500px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.imagem-galeria .textura {
	background-color: #0000009d;
	position: absolute;
	width: 100%;
	height: 0%;
	left: 0px;
	right: 0px;
	bottom: 0px;
	transition: all 0.5s;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}

.imagem-galeria:hover .textura {
	height: 100%;
	transition: all 0.5s;
}

.imagem-galeria .textura img {
	width: 20px;
	height: 20px;
	filter: invert(1);
}

#pageAcontece .visite-text {
	margin: 10rem 0px !important;
	text-align: center;
}

.visite-text strong,
.visite-text span {
	font-size: 2rem;
	color: black;
	margin-bottom: 50px;
}




.visite-text span {
	color: #80807F;
	font-weight: var(--font-regular);
	font-style: italic;

}

/* Acontece */
.acontece .card {
	border: none;
	border-radius: 0px;
	margin: 1rem 0px;
}

.acontece .thumbnail {
	width: 100%;
	height: 30rem;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}

.acontece .thumbnail:hover img {
	transform: scale(1.1);
	transition: all 0.5s;
}

.acontece .thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.5s;
}

.col-zero {
	padding: 1px !important;
}

.card .card-body {
	padding: 38px 53px 35px 44px;
}

.card-body .text-card {
	margin-bottom: 60px;
}

.card-body .btn-univesal {
	margin-top: 20px;
	display: inline-block;
}


.acontece .card .card-body .text-card {
	margin-bottom: 4rem;
	color: black;
}

.card .title-card {
	font-size: 2.1rem;
}

.title-card {
	display: -webkit-box;
	/* -webkit-line-clamp: 2; */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.text-card {
	display: -webkit-box;
	/* -webkit-line-clamp: 3; */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* FOOTER */

footer {
	padding-top: 2rem;
	padding-bottom: 3rem;
	text-transform: uppercase;
	background-color: #373B40;
}

footer a {
	color: white;
}

footer .logo-footer {
	width: 13rem;
	height: auto;
	object-fit: contain;
}

footer h4 {
	font-size: 1.2rem;
	font-weight: var(--font-semibold);
}

footer p {
	font-size: 12px;
	font-weight: var(--font-regular);
}

footer h4,
p {
	color: white;
}

p {
	color: rgb(0, 0, 0);
	margin-bottom: 6rem;
}

footer .instagram,
footer .facebook {
	width: 1.2rem;
	height: 1.2rem;
}

footer .col-interna {
	margin-bottom: 1.5rem;
}

footer .link {
	font-size: 0.9rem;
	font-weight: var(--font-medium);
	margin-bottom: 5px;
	display: flex;
	align-items: center;
	width: fit-content;
	text-transform: capitalize;
}

footer .link-footer {
	font-size: 0.8rem;
	font-weight: var(--font-medium);
	margin-bottom: 5px;
	display: flex;
	align-items: center;
	width: fit-content;
}

footer .link-footer:hover::before {
	margin-right: 10px;
	transition: all 0.3s ease;
}

footer ul {
	padding: 0px;
}

footer .link-footer::before {
	content: "";
	margin-right: 5px;
	background-image: url(https://qa-uploads.madnezz.com.br/8d2b0414c1b5d41e524116fbb4db1ee4);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 10px;
	width: 10px;
	transition: all 0.3s ease;
}

footer .horario {
	font-size: 0.9rem;
	font-weight: var(--font-medium);
	margin-bottom: 5px;
	display: flex;
	align-items: center;
	width: fit-content;
	text-transform: capitalize;
	color: white;
}

footer .patrocinio {
	padding-bottom: 5px;
	border-bottom: 1px solid #80807f67;
}

footer .img-patrocinio {
	width: 7rem;
	height: auto;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

footer .patrocinio-content {
	display: flex;
	flex-direction: column;
}

footer .top-header {
	position: fixed;
	left: 20px;
	bottom: 50px;
	transform: rotate(90deg);
	background-color: #ec2790;
	border-radius: 50%;
	z-index: 99;
	color: white;
	height: 50px;
	width: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.madnezz {
	color: rgba(121, 121, 121, 0.5) !important;
	text-transform: capitalize;
}

.newsletter {
	background-color: white !important;
	position: relative;
	overflow: hidden;
	height: 40rem;
	display: flex;
	align-items: center;
	padding-left: 9%;
}

.newsletter .thumbnail-news {
	position: absolute;
	right: 0px;
	top: 0px;
	height: 100%;
	width: 51%;
	object-fit: cover;
}

.newsletter span {
	font-size: 1.3rem;
	color: #80807F;
}

.newsletter h2 {
	font-size: 2.2rem;
}

.newsletter p {
	font-size: 1.1rem;
	color: #80807F;
}

.newsletter form {
	display: block;
	width: 100%;
	max-width: 600px;
}

.newsletter input {
	width: 100%;
	padding: 12px 20px;
	border-radius: 100px;
	border: 1px solid #80807f7a;
	font-weight: 500;
	font-size: 14px;
	box-sizing: border-box;
	margin-bottom: 16px;
	transition: all 0.3s ease;
}

.newsletter .btn-univesal {
	margin: 0px;
	font-weight: var(--font-bold);
}

.banner-secundario {
	width: 100%;
	height: 50dvh;
	display: flex;
	background-position: center;
	background-repeat: no-repeat;
	background-color: #D6D6D6;
	background-size: cover;
	align-items: center;
	justify-content: center;
	color: white;
	position: relative;
	overflow: hidden;
}

.banner-secundario::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 1;
}

.banner-secundario .container {
	position: relative;
	z-index: 2;
	text-align: center;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.banner-secundario h1 {
	font-size: 3rem;
	font-weight: 700;
	margin: 0 0 1rem 0;
	color: white;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
	letter-spacing: -0.5px;
}

.banner-secundario p {
	font-size: 1.2rem;
	font-weight: 400;
	margin: 0;
	color: rgba(255, 255, 255, 0.9);
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
	max-width: 600px;
	margin: 0 auto;
}

/* MODAL POP UP */
.d-none {
	display: none;
}

.modal_overlay {
	background: rgba(0, 0, 0, 0.5);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s;
}

.modal_close {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.modal_container {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px;
}

.modal {
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	transform: translateY(-50px);
	transition: transform 0.3s;
	width: 800px;
	max-width: 90%;
}

.modal_header {
	background: #ad132a;
	color: #fff;
	padding: 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.modal_header h4 {
	font-size: 24px;
	margin: 0;
}

.modal_header .btn_close {
	cursor: pointer;
}

.modal_body {
	background: #fff;
	padding: 10px 20px;
}

.modal_overlay.active {
	opacity: 1;
	pointer-events: all;
}

.modal_overlay.active .modal {
	transform: translateY(0);
}

.modal_body p {
	display: block;
}

/* TODOS SWIPERS */
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	width: 14px;
	height: 14px;
	opacity: .2;
}

.swiper-pagination-bullet-active {
	opacity: 1 !important;
}

.swiper-button-next,
.swiper-button-prev {
	border-radius: 50%;
	width: 31px;
	height: 30px;
	opacity: 0.16;
	transition: all 0.7s;
	display: flex;
	background: none;
	align-items: center;
	justify-content: center;
}

.swiper-container:hover .swiper-button-next,
.swiper-container:hover .swiper-button-prev {
	opacity: 0.8;
}

/* .swiper-button-next i,
.swiper-button-prev i {
	display: ;
}




/* ESTRUTURA */
.section {
	display: block;
	justify-content: space-around;
	gap: 0px;
	padding: 0px 20px 0px 20px;
	margin: 0px 0px 0px 0px;
	box-sizing: border-box;
}

.section-inicial {
	margin-top: 90px;
}

.container-section {
	display: flex;
	max-width: 1560px;
	margin: 0 auto;
}

.section-lojas-info {
	margin-top: 120px;
}

.spacing {
	height: 40px;
}

.title-section {
	font-size: 46px;
	font-weight: 300;
	text-align: center;
	letter-spacing: -1px;
	margin: 34px 0px 14px 0px;
	line-height: 1.1em;
	text-transform: uppercase;
}

.title-section span {
	font-weight: 400;
	font-size: 46px;
}

.subtitle-section {
	text-align: center;
	font-size: 20px;
	font-weight: 300;
	margin-top: -14px;
	margin-bottom: 40px;
}

.btn-section {
	display: block;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 28px 0 0 0;
}

.btn-section a {
	display: block;
	padding: 18px 38px;
	border: 2px solid #0a2143;
	color: #0a2143;
	font-size: 14px;
	border-radius: 100px;
	font-weight: 500;
	transition: all 0.2s ease;
}

.btn-section a:hover {
	border: 2px solid #0e3063;
	background-color: rgba(10, 33, 67, 0.1);
}

.title-bg-section {
	height: calc(100vh - 110px);
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	position: relative;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.title-bg-section::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4);
	z-index: 0;
}

/*Overlay*/
.title-bg-section .title-section {
	color: #FFF !important;
	z-index: 10;
}

.title-sec {
	height: 400px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	position: relative;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.title-sec::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

/*Overlay*/
.title-sec .title-section {
	color: #FFF !important;
	z-index: 10;
}

.text-format {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.3em;
}

.text-format b {
	font-size: 18px;
	font-weight: 700;
}

.text-format span {
	font-size: 30px;
	font-weight: 600;
	line-height: 1.1em;
}


/* ************************************************ */
/* INDEX */
/* ************************************************ */




/* BANNER */
.banner {
	display: block;
}

.banner .swiper-container {
	width: 100%;
	height: auto;
	display: block;
}

.banner .swiper-container img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	object-position: center;
}

.banner .swiper-container .banner-mobile {
	width: 100%;
	display: none;
}

.banner .swiper-container .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	background: transparent;
	border: 1px solid #fff;
}

.banner .swiper-container .swiper-pagination-bullet-active {
	background: #fff !important;
}

.banner .swiper-container .swiper-container-horizontal>.swiper-pagination-bullets {
	bottom: 20px;
}

@media screen and (max-width:1000px) {
	.banner .swiper-container .banner-desktop {
		display: none;
	}

	.banner .swiper-container .banner-mobile {
		display: block;
	}
}

/* HOME_NOVIDADES */
.home_evento {
	padding-top: 30px;
	padding-bottom: 80px;
	margin-top: 30px;
	margin-bottom: 0px;
	background-color: #f4f4f4;
}

.home_evento .title-section {
	margin-bottom: 14px;
}

.home_evento .home_evento_item {
	position: relative;
	overflow: hidden;
	transition: all 0.3s ease;
}

.home_evento .home_evento_item:hover {
	transform: scale(1.050);
}

.home_evento .home_evento_imagem {
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1;
	position: relative;
	overflow: hidden;
}

.home_evento .home_evento_imagem img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
}

.home_evento .home_evento_hover {
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 100%;
	padding: max(1.56vw, 15px);
	text-align: center;
	background-color: rgba(0, 0, 0, 0.7);
	color: white;
	transition: all ease 0.5s;
	box-sizing: border-box;
}

.home_evento .home_evento_hover h3 {
	font-size: 18px;
	font-weight: 500;
}

/* HOME ACESSO RÁPIDO */
.acessorapido {
	width: 100%;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-top: 20px;
	margin-bottom: 20px;
}

.acessorapido li {
	aspect-ratio: 1 / 1;
	background-size: cover;
	background-position: center center;
	width: 33%;
	box-sizing: border-box;
	padding: 100px 46px 150px 46px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.acessorapido h1 {
	width: 70%;
	font-size: 32px;
	font-weight: 300;
	color: #FFF;
	text-transform: uppercase;
	line-height: 1.1em;
}

.acessorapido p {
	width: 262px;
	font-size: 13px;
	font-weight: 300;
	color: #FFF;
	line-height: 1.3em;
}

.acessorapido a {
	padding: 10px 17px;
	font-size: 13px;
	border-radius: 100px;
	border: 1px solid #FFF;
	color: #FFF;
	font-weight: 400;
	transition: background .3s;
	margin-top: auto
}

.acessorapido a:hover {
	background-color: rgba(255, 255, 255, 0.15);
}



/* HOME GALERIA */
.section_galeria {
	padding-top: 20px;
	padding-bottom: 80px;
	margin-top: 0px;
	margin-bottom: 0px;
	background-color: #f4f4f4;
}

.home_galeria ul {
	width: 100%;
	display: flex;
	gap: 0px;
	justify-content: space-between;
	margin-top: 40px;
	margin-bottom: 50px;
}

.home_galeria li {
	aspect-ratio: 4/3;
	background-size: cover;
	background-position: center center;
	width: 33%;
	box-sizing: border-box;
	padding: 0;
}


/*HOME INSTA*/
.section_instagram {
	padding-top: 10px;
	padding-bottom: 60px;
}

/* HOME_LOJAS */
.home_lojas,
.home_alimentacao {
	/*background-color: #E8E8E8;*/
	padding-top: 50px;
	padding-bottom: 70px;
}

.home_lojas .swiper-container,
.home_alimentacao .swiper-container {
	padding-bottom: 60px;
}

.home_lojas .btn-section,
.home_alimentacao .btn-section {
	margin-top: -10px;
}

/*Aproxima o botão dos carrosséis*/

.home_lojas .home_lojas_lista .home_loja_item {
	border: 1px solid #eaebee;
	transition: all ease 0.5s;
	/*width: 176px; height: 176px;*/
	aspect-ratio: 1/1;
	background-color: #fff;
	position: relative;
	overflow: hidden;
}

.home_lojas .home_lojas_lista .home_loja_item:hover {
	transform: scale(1.1);
}

.home_lojas .home_lojas_lista .home_loja_imagem {
	min-height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	object-fit: cover;
	object-position: center;
}

.home_alimentacao .home_alimentacao_lista .home_loja_item {
	border: 1px solid #eaebee;
	transition: all ease 0.5s;
	/*width: 176px; height: 176px;*/
	aspect-ratio: 1/1;
	background-color: #fff;
	position: relative;
	overflow: hidden;
}

.home_alimentacao .home_alimentacao_lista .home_loja_item:hover {
	transform: scale(1.1);
}

.home_alimentacao .home_alimentacao_lista .home_loja_imagem {
	min-height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	object-fit: cover;
	object-position: center;
}

/*OCULTA BULLET-POINT SWIPER */
.home_lojas .swiper-container-horizontal>.swiper-pagination-bullets,
.home_alimentacao .swiper-container-horizontal>.swiper-pagination-bullets,
.home_servicos .swiper-container-horizontal>.swiper-pagination-bullets {
	display: none;
}

.home_alimentacao .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	background: #000;
}

.home_alimentacao .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #fff;
}

.home_lojas .swiper-button-prev,
.home_lojas .swiper-button-next,
.home_alimentacao .swiper-button-prev,
.home_alimentacao .swiper-button-next {
	top: calc(50% - 25px);
}

.home_servicos .swiper-button-prev,
.home_servicos .swiper-button-next {
	top: 23%;
}

.home_servicos .home_lojas_lista .home_servicos_item {
	border: 1px solid rgba(0, 0, 0, .3);
	transition: all ease 0.5s;
	cursor: pointer;
}

.home_servicos .home_lojas_lista .home_servicos_item:hover {
	border: 1px solid var(--cor_primaria100);
}

.home_servicos .home_servicos_lista .home_servicos_imagem img {
	width: fit-content;
	height: fit-content;
	max-width: 100%;
	max-height: 100%;
}

.home_servicos_item {
	cursor: pointer;
}

.home_servicos_imagem {
	height: 174px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
}

.home_lazer_imagem img {
	width: 100%;
	height: auto;
}

.home_vitrine .vitrine_lista {
	overflow: initial !important;
	list-style: none;
	margin-bottom: initial !important;
	flex-wrap: initial !important;
}

.home_vitrine .vitrine_produto {
	margin: 0px;
	padding-top: 0;
	padding-bottom: 5px;
	min-height: 528px;
}

.home_vitrine .vitrine_produto_nome {
	margin-top: 0;
	font-size: 14px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	opacity: 0.8;
	text-transform: initial;
	letter-spacing: initial;
	margin-bottom: 0px;
	min-height: 38px;
}

.home_vitrine .vitrine_produto_loja {
	margin-bottom: 0px;
	font-size: 17px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	opacity: 1;
	text-transform: initial;
	letter-spacing: initial;
	min-height: 33px;
}

.home_vitrine .vitrine_produto_imagem {
	display: block;
	height: 0;
	padding-bottom: 86%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	margin-bottom: 20px;
	cursor: zoom-in;
	width: 80%;
	margin: 0 auto;
	margin-top: 25px;
}

.home_vitrine .vitrine_produto_botoes {
	margin: 5px auto 10px auto;
}


.home_infos {
	display: flex;
	background-color: #e9ebed;
	align-items: center;
}

.home_infos>img {
	width: 49%;
	display: inline-block;
	padding: 0 0 0 0;
}

.home_infos>div {
	width: 49%;
	display: inline-block;
	align-items: center;
	padding: 0 0 0 30px;
	box-sizing: border-box;
}

.home_infos div span {
	color: #888888;
	text-transform: uppercase;
}

.home_infos div h1 {
	color: #131415;
	font-weight: 600;
	font-size: 38px;
	margin: 0;
}

.home_infos div p {
	color: #131415;
	font-weight: 400;
	font-size: 16px;
}

.home_infos .btn-section {
	justify-content: flex-start;
}

.home_img_full {
	height: 40vw;
	background-position: center center;
	background-size: cover;
	background-image: url(../img/shoppings/pamplona_home2.jpg);
}

/* ************************************************ */
/* LOJAS/ALIMENTAÇÃO e SERVIÇOS CONCATENADOS */
/* ************************************************ */

/* #lojas {
	background-color: #f6f7f8;
} */

#lojas .container-section {
	gap: 60px;
}

#lojas .col-1,
#alimentacao .col-1 {
	width: calc(20% - 30px);
}

#lojas .col-2,
#alimentacao .col-2 {
	width: calc(80% - 30px);
}

#lojas .filtro_nome {
	width: 100%;
	font-size: 14px;
	margin: -2px 0 8px 0;
	border-radius: 100px;
	padding: 11px 18px;
	color: #252525;
	box-sizing: border-box;
	font-weight: 500;
	border-width: 1px 46px 1px 1px;
	border-style: solid;
	border-color: #dcdfe2;
	cursor: pointer;
	text-transform: uppercase;
}

#lojas .filtro_nome::placeholder {
	font-size: 14px;
	color: #131415;
	text-transform: uppercase;
}

#lojas .lojas-menu select {
	width: 100%;
	font-size: 14px;
	margin: -2px 0 8px 0;
	border-radius: 100px;
	padding: 11px 18px;
	color: #252525;
	box-sizing: border-box;
	font-weight: 500;
	border-width: 1px 46px 1px 1px;
	border-style: solid;
	border-color: #dcdfe2;
	cursor: pointer;
	text-transform: uppercase;
}

#lojas .buscar {
	position: relative;
	cursor: pointer;
}

#lojas .buscar i {
	position: absolute;
	right: 9px;
	top: 6px;
	transform: translate(-50%, 50%);
	font-size: 14px;
}

/*
#lojas .lojas-menu .lojas-menu-lista{margin-top: 0; width:100%; border-width: 0px 1px 0px 1px; border-style: solid; border-color: rgb(231, 231, 231); background: #FFF; overflow: hidden;}
#lojas .lojas-menu .lojas-menu-lista li{border-width: 0px 0px 1px 0px; border-style: solid; border-color: rgb(231, 231, 231); padding: 10px 15px; cursor: pointer; transition: all 0.1s ease; font-weight: 500; text-transform: uppercase; font-size: 12px;}
#lojas .lojas-menu .lojas-menu-lista .destaque{ font-weight: 500; font-size: 15px;}
*/

/* Estilo para a lista de segmentos dentro de lojas-menu */
.lojas-menu {
	position: relative;
	/* Necessário para o degradê funcionar */
	overflow: hidden;
	/* Oculta qualquer conteúdo extra */
}

.lojas-menu .lojas-menu-lista {
	display: flex;
	/* Deixa a lista horizontal */
	gap: 12px;
	/* Espaçamento entre os itens */
	overflow-x: auto;
	/* Permite rolar horizontalmente */
	scroll-behavior: smooth;
	/* Rolagem suave */
	-webkit-overflow-scrolling: touch;
	/* Rolagem fluida no mobile */
	padding: 10px 0;
	margin: 0;
	white-space: nowrap;
	/* Impede quebra de linha */
	user-select: none;
	/* Impede a seleção de texto */
	-webkit-user-select: none;
	/* Safari */
	-ms-user-select: none;
	/* IE/Edge */
}

/* Esconder a barra de rolagem */
.lojas-menu .lojas-menu-lista::-webkit-scrollbar {
	display: none;
	/* Oculta no Chrome e Safari */
}

.lojas-menu .lojas-menu-lista {
	-ms-overflow-style: none;
	/* Oculta no IE e Edge */
	scrollbar-width: none;
	/* Oculta no Firefox */
}

/* Estilo dos itens da lista */
.lojas-menu .lojas-menu-lista li {
	border: 1px solid #dcdfe2;
	/* Borda cinza claro */
	padding: 6px 15px;
	/* Espaçamento interno */
	font-size: 14px;
	/* Tamanho da fonte */
	font-weight: 600;
	/* Negrito */
	text-transform: uppercase;
	/* Letras maiúsculas */
	cursor: pointer;
	/* Cursor de mão */
	border-radius: 20px;
	/* Bordas arredondadas */
	transition: background 0.3s ease, color 0.3s ease;
	/* Transição suave */
	white-space: nowrap;
	/* Impede quebra de linha */
}

/* Hover e Active */
.lojas-menu .lojas-menu-lista li:hover,
.lojas-menu .lojas-menu-lista li:active {
	background-color: #0a2143;
	/* Fundo azul escuro */
	color: white;
	/* Texto branco */
}

/* Degradê no final da lista (indicação de rolagem) */
.lojas-menu::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	/* Largura do degradê */
	height: 100%;
	background: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	pointer-events: none;
	/* Não bloqueia cliques */
}


#lojas .filtro-letras {
	margin-bottom: 30px;
	margin-top: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
}

#lojas .filtro-letras li {
	border: 1px solid #dcdfe2;
	padding: 5px 8px 4px 8px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	border-radius: 8px;
	transition: background 0.4s ease, text-shadow 0.3s ease;
	text-transform: uppercase;
	letter-spacing: -0.2px;
}

#lojas .filtro-letras li:hover {
	text-shadow: 0 0 5px currentColor;
}


#servicos .servicos-lista {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#lojas .lojas_lista {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: row;
	align-content: stretch;
	align-items: baseline;
}

#lojas .lojas_lista .lojas-imagem,
#servicos .servicos-lista .servicos-item .servicos-item-imagem img {
	background-color: white;
	/* background-size: contain; */
	background-position: center;
	background-repeat: no-repeat;
	height: 227px;
	aspect-ratio: 1/1;
	border-width: 0px 0px 1px 0px;
	border-style: solid;
	border-color: rgb(231, 231, 231);
	margin: 0px auto 0px auto;
	object-fit: contain;
}

#lojas .lojas_lista .lojas-item,
#servicos .servicos-lista .servicos-item {
	transition: transform 0.2s ease;
	width: 24%;
	/*width: min-content;*/
	border: 1px solid #dcdfe2;
	box-sizing: border-box;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 20px;
	justify-content: center;
	background: #FFF;
	text-align: center;
	cursor: pointer;
	position: relative;
}

#lojas .lojas_lista .lojas-item:hover,
#servicos .servicos-lista .servicos-item:hover {
	transform: scale(0.98);
}

#lojas .lojas_lista .lojas-item ul,
#servicos .servicos-lista .servicos-item ul {
	width: 100%;
	text-align: center;
	box-sizing: border-box;
	padding: 30px 20px 12px 20px;
}

#lojas .lojas_lista .lojas-item li,
#servicos .servicos-lista .servicos-item ul li {
	width: 100%;
	font-size: 14px;
	gap: 8px;
	margin-bottom: 30px;
	line-height: 1.1em;
	text-align: center;
}

#lojas .lojas_lista .lojas-item h1,
#servicos .servicos-lista .servicos-item h1 {
	font-weight: 600;
	font-size: 20px;
	line-height: 1.1em;
	margin-bottom: 0px;
}

#lojas .lojas_lista .lojas-item h2 {
	font-weight: 600;
	font-size: 14px;
	line-height: 1.1em;
	margin-bottom: 0px;
	text-transform: uppercase;
}

#lojas .lojas_lista .lojas-item i,
#servicos .servicos-lista .servicos-item i {
	transform: translateX(0px);
	width: 14px;
	margin-right: 6px;
}

#lojas .lojas_lista .fa-location-dot {
	transform: translateX(-2px) !important;
}

#lojas .btn-whatsapp {
	padding: 14px 28px;
	border-radius: 100px;
	font-size: 14px;
	margin: 0 auto;
}

/*personalização alimentação e serviços*/

#servicos .servicos-lista .servicos-item ul li span {
	font-size: 13px;
}

#servicos .servicos-lista .servicos-item ul li b {
	font-size: 13px;
	font-weight: 600;
}


#lojas .loja-mostraloja-item {
	display: flex;
	align-items: center;
	justify-content: center;
}

#lojas .mostraloja-item-informacoes b {
	font-weight: 700;
}

#lojas .mostraloja-item-informacoes a {
	font-weight: 700;
}

#lojas .mostraloja-item-informacoes #facebook,
#instagram {
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 10px;
}

#lojas .mostraloja-item-informacoes #facebook::before {
	content: '';
	background-image: url(https://qa-uploads.madnezz.com.br/98a1a8d6060556156bda57b4c30824f3);
	width: 15px;
	height: 15px;
	/* background-size: contain; */
	background-position: center;
	background-repeat: no-repeat;

}

#lojas .mostraloja-item-informacoes #instagram::before {
	content: '';
	background-image: url(https://qa-uploads.madnezz.com.br/241935bb30002f7846295f558e28b5c5);
	width: 15px;
	height: 15px;
	/* background-size: contain; */
	background-position: center;
	background-repeat: no-repeat;
}


.loja-item img {
	width: 13vw;
	height: 13vw;
	object-fit: contain;
	margin: auto;
	justify-content: center;
	display: flex;
}

.loja-item {
	transition: transform .2s ease;
	width: 100%;
	border: 1px solid #dcdfe2;
	box-sizing: border-box;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 20px;
	justify-content: center;
	background: #FFF;
	text-align: center;
	cursor: pointer;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 300px
}

.loja-item .lojas-imagem {
	background-color: white;
	/* background-size: contain; */
	background-position: center;
	background-repeat: no-repeat;
	width: 170px;
	height: 227px;
	aspect-ratio: 1 / 1;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: rgb(231, 231, 231);
	margin: 0 auto 0 auto;
	object-fit: contain
}


.loja-item h1 {
	font-weight: 600;
	font-size: 20px;
	line-height: 1.1em;
	margin-bottom: 0
}

.loja-item h2 {
	font-weight: 600;
	font-size: 14px;
	line-height: 1.1em;
	margin-bottom: 0;
	text-transform: uppercase
}

#lojas .section-inicial {
	margin-top: 120px;
}

#lojas .btn-loja {
	width: 76%;
	margin: 0px auto 0px auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

#lojas .btn-loja a {
	/*width: 160px;*/
	padding: 12px 20px;
	border-radius: 16px;
	font-weight: 500;
	font-size: 14px;
}

/*#lojas .loja-lojanome{font-size:32px; font-weight: 700;}*/

.section-lojas-info h1 {
	font-size: 32px;
	font-weight: 700;
}

.section-lojas-box {
	box-sizing: border-box;
	background: #FFF;
	border: 1px solid #F2F2F2;
}

#lojas .metrica {
	background: #FFF;
	padding: 10px 50px;
	border-radius: 30px;
	border: 1px solid #F2F2F2;
	font-weight: 500;
	margin: 14px 7vw 6px 7vw;
}

#lojas .metrica a {
	font-weight: 500;
}

#lojas .metrica i {
	font-style: normal;
	color: #686868;
}

#lojas .metrica span {
	font-weight: 600;
}

.mostraloja-item-informacoes {
	margin-bottom: 40px;
	margin-left: 40px;
}

.mostraloja-item-informacoes h1 {
	font-size: 32px;
}



.loja_empty {
	background: #d7d7d7;
	padding: 10px;
	width: 100%;
	text-align: center;
}

.loader {
	text-align: center;
	width: 100%;
}

.loader-1 {
	width: 35px;
	height: 35px;
	border: 5px solid #d7d7d7;
	border-bottom-color: var(--cor_primaria100);
	border-radius: 50%;
	margin: 0 auto;
	display: inline-block;
	-webkit-animation: rotation 1s linear infinite;
	animation: rotation 1s linear infinite;
}

@-webkit-keyframes rotation {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

@keyframes rotation {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}





/* ************************************************ */
/* SERVIÇOS BKP (ANTES DE SER UNIFICADO COM LOJAS E ALIMENTAÇÃO) */
/* ************************************************ */

/*
#servicos .servicos-lista{display: flex; flex-wrap: wrap; justify-content: space-around;}
#servicos .servicos-lista .servicos-item{transition:transform 0.3s ease; width: min-content; border: 1px solid #dcdfe2; padding: 0 30px 30px 30px; border-radius: 33px; margin-bottom: 130px; justify-content: center; background: #FFF; text-align: center; position: relative;}
#servicos .servicos-lista .servicos-item:hover{transform: scale(1.07);}
#servicos .servicos-lista .servicos-item .servicos-item-imagem img{background-color: white; background-size: contain; background-position: center; background-repeat: no-repeat; width: 210px; height: auto; aspect-ratio:1/1; border: 1px solid #dcdfe2; border-radius: 50%; margin: -70px auto 20px auto;}

#servicos .servicos-lista .servicos-item ul{width: 100%; text-align: left;}
#servicos .servicos-lista .servicos-item ul li{width: 100%; text-align: left; font-size: 13px !important; display: flex; align-items: flex-start; gap: 6px; margin-bottom: 12px; line-height: 1.1em;}
#servicos .servicos-lista .servicos-item ul li span{font-size: 13px;}
#servicos .servicos-lista .servicos-item ul li b{font-size: 13px; font-weight: 600;}
#servicos .servicos-lista .servicos-item h1{font-weight:600; font-size: 18px !important; line-height: 1.1em; margin-bottom: 18px; text-align: center; width: 100%;}
#servicos .servicos-lista .servicos-item i{transform: translateX(-5px); transform: translateY(1px); font-size: 16px;}
*/




/* ************************************************ */
/* EVENTOS */
/* ************************************************ */

#lazer .lazer-lista {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 50px
}

#lazer .lazer-lista li {
	width: calc(25% - 50px);
	min-width: 250px;
}

#lazer .lazer-lista li a {
	color: black;
	text-decoration: none;
}

#lazer .novidade_imagem {
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
	min-width: 250px;
	min-height: 250px;
	/* background-size: contain; */
	background-position: center;
	background-repeat: no-repeat;
}

#lazer .lazer-lista li .titulo {
	font-weight: 600;
	font-size: 24px;
	margin-bottom: 0;
	margin-top: 10px;
}

#lazer .lazer-lista li .texto {
	font-weight: 400;
	font-size: 14px;
	margin-bottom: 0;
	margin-top: 10px;
}

#lazer .lazer-lista li:hover * {
	color: var(--cor_primaria80);
}

#lazer .modal {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 99vw;
	height: 100vh;
}

#lazer .modal .shadow {
	display: none;
	background-color: rgba(0, 0, 0, 0.65);
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

#lazer .informacoes {
	position: fixed;
	z-index: 2;
	width: 41.67vw;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
}

#lazer .fecharmodal {
	position: absolute;
	top: 8px;
	right: 16px;
	width: 30px;
	height: 30px;
	font-size: 25px;
	text-align: center;
	color: white;
	border: 1px solid white;
	padding: 3px;
	border-radius: 50%;
	z-index: 2;
	cursor: pointer;
}

#lazer .modaltitulo {
	color: white;
	font-size: 24px;
	font-weight: 600;
	padding: 16px;
	background-color: var(--cor_primaria100);
	border-top-left-radius: 7px;
	border-top-right-radius: 7px;
}

#lazer .modaltexto {
	background-color: white;
	font-size: 16px;
	font-weight: 400;
	border-bottom-left-radius: 7px;
	border-bottom-right-radius: 7px;
	padding: 40px 10px;
	overflow-y: scroll;
	height: 400px;
}

#lazer .modaltexto::-webkit-scrollbar {
	width: 12px;
}

#lazer .modaltexto::-webkit-scrollbar-track {
	background: var(--cor_primaria100);
	border-radius: 2px;
}

#lazer .modaltexto::-webkit-scrollbar-thumb {
	background: var(--cor_branco100);
	border-radius: 4px;
	border: 2px solid var(--cor_primaria100);
}



/* ************************************************ */
/* CUPONS */
/* ************************************************ */

#cupom .cupom-lista {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 50px
}

#cupom .cupom-lista li {
	width: calc(25% - 50px);
	min-width: 250px;
}

#cupom .cupom-lista li a {
	color: black;
	text-decoration: none;
}

#cupom .novidade_imagem {
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
	min-width: 250px;
	min-height: 250px;
	/* background-size: contain; */
	background-position: center;
	background-repeat: no-repeat;
}

#cupom .cupom-lista li .titulo {
	font-weight: 600;
	font-size: 24px;
	margin-bottom: 0;
	margin-top: 10px;
}

#cupom .cupom-lista li .texto {
	font-weight: 400;
	font-size: 14px;
	margin-bottom: 0;
	margin-top: 10px;
}

#cupom .cupom-lista li:hover * {
	color: var(--cor_primaria80);
}

#cupom .modal {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 99vw;
	height: 100vh;
}

#cupom .modal .shadow {
	display: none;
	background-color: rgba(0, 0, 0, 0.65);
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

#cupom .informacoes {
	position: fixed;
	z-index: 2;
	width: 41.67vw;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
}

#cupom .fecharmodal {
	position: absolute;
	top: 8px;
	right: 16px;
	width: 30px;
	height: 30px;
	font-size: 25px;
	text-align: center;
	color: white;
	border: 1px solid white;
	padding: 3px;
	border-radius: 50%;
	z-index: 2;
	cursor: pointer;
}

#cupom .modaltitulo {
	color: white;
	font-size: 24px;
	font-weight: 600;
	padding: 16px;
	background-color: var(--cor_primaria100);
	border-top-left-radius: 7px;
	border-top-right-radius: 7px;
}

#cupom .modaltexto {
	background-color: white;
	font-size: 16px;
	font-weight: 400;
	border-bottom-left-radius: 7px;
	border-bottom-right-radius: 7px;
	padding: 40px 10px;
	overflow-y: scroll;
	height: 400px;
}

#cupom .modaltexto::-webkit-scrollbar {
	width: 12px;
}

#cupom .modaltexto::-webkit-scrollbar-track {
	background: var(--cor_primaria100);
	border-radius: 2px;
}

#cupom .modaltexto::-webkit-scrollbar-thumb {
	background: var(--cor_branco100);
	border-radius: 4px;
	background: var(--cor_primaria100);
}

/* ************************************************ */
/* O SHOPPING */
/* ************************************************ */


#oshopping .informacoes .imagem img {
	max-width: 40vw;
}

.oshopping {
	gap: 80px;
	align-items: center;
	justify-content: center;
}

.oshopping p {
	width: 55vw;
}

.oshopping img {
	width: 45vw;
	border-radius: 10px;
}

.shopping-faixa {
	position: relative;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding-top: 40px;
	padding-bottom: 50px;
	margin-top: 80px;
	margin-bottom: 80px;
}

.shopping-faixa::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

/*Overlay*/
.shopping-faixa .grid-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 20px;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 20px;
	box-sizing: border-box;
	justify-content: center;
	align-items: center;
	text-align: center;
	z-index: 10;
}

.shopping-faixa .grid-item {
	text-align: center;
	z-index: 10;
	padding: 2px 0;
	display: flex;
	align-items: center;
}

.shopping-faixa .grid-item img {
	width: 20%;
	margin-right: 30px;
	transform: translateX(14px);
}

.shopping-faixa .grid-item p {
	width: 100%;
	font-size: 17px;
	color: #FFF;
	text-align: left;
}

.shopping-faixa .grid-item b {
	font-size: 18px;
	color: #FFF;
	font-weight: 700;
}

#oshopping .mapa-google {
	padding-left: 0;
	padding-right: 0;
	margin-top: 0px;
	margin-bottom: -6px;
	position: relative;
}

#oshopping .mapa-google .box-endereco {
	position: absolute;
	max-width: 300px;
	z-index: 20;
	top: 30px;
	right: 30px;
	border-radius: 22px;
	text-align: center;
	padding: 20px;
}

#oshopping .mapa-google .box-endereco h1 {
	font-size: 22px;
	font-weight: 500;
}

#oshopping .mapa-google .box-endereco h1 i {
	font-size: 20px;
	transform: translateY(0);
}

#oshopping .mapa-google .box-endereco p {
	font-size: 14px;
}

.galeria {
	margin-bottom: 40px;
}

.gallery {
	max-width: 1332px;
	text-align: center;
}

.main-image {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 10px;
	transition: opacity 0.3s ease-in-out;
}

.thumbnails {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 15px;
}

.thumbnails img {
	width: 80px;
	height: 45px;
	object-fit: cover;
	cursor: pointer;
	border-radius: 5px;
	transition: transform 0.2s;
}

.thumbnails img:hover {
	transform: scale(1.1);
	border: 2px solid #1CC33D;
}

.restaurante {
	margin-top: 40px;
	margin-bottom: 4px;
}

.restaurante ul {
	display: flex;
	flex-wrap: wrap;
	/* Permite quebrar para várias linhas */
	gap: 40px;
	/* Espaçamento entre as fotos */
	padding: 0;
	margin: 0;
	list-style: none;
	/* Remove as bolinhas da lista */
	justify-content: center;
	/* Alinha as fotos no centro */
}

.restaurante ul li {
	flex: 0 0 calc(25% - 30px);
	/* 4 por linha com gap ajustado */
	border-radius: 12px;
	overflow: hidden;
	/* Garante que o arredondado pegue nas imagens */
}

.restaurante ul li img {
	width: 100%;
	aspect-ratio: 4 / 5;
	/* Mantém a proporção vertical */
	object-fit: cover;
	/* Corta a imagem mantendo a proporção */
	display: block;
}

/* Responsivo - 2 colunas em tablet */
@media (max-width: 992px) {
	.restaurante ul li {
		flex: 0 0 calc(50% - 20px);
		/* 2 por linha */
	}
}

/* Responsivo - 1 por linha em mobile */
@media (max-width: 576px) {
	.restaurante ul li {
		flex: 0 0 100%;
		/* 1 por linha */
	}
}



/* ************************************************ */
/* EVENTOS */
/* ************************************************ */

#eventos .section-filtros {
	justify-content: center;
	z-index: 5;
	position: relative;
	margin-top: 30px;
	margin-bottom: 30px;
}

#eventos #info {
	padding-bottom: 40px;
}

#eventos .filtros {
	padding: 0;
	display: block;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin: 0px 0;
}

#eventos .filtros select {
	padding: 10px;
	width: 250px;
	border-radius: 12px;
	font-weight: 500;
	text-transform: uppercase;
	color: #202020;
	font-size: 16px;
	outline: none;
	font-family: 'Montserrat', sans-serif;
	border: 1px solid #dcdfe2;
}

#eventos .evento_lista {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	align-items: flex-start;
	position: relative;
	z-index: 5;
}

#eventos .evento_lista .evento-item {
	border-radius: 10px;
}

#eventos .evento_lista a {
	text-decoration: none;
}

#eventos .evento_lista .evento-item .imagem {
	transition: all ease 0.3s;
	width: 26.00vw;
	aspect-ratio: 1/1;
	position: relative;
	overflow: hidden;
	/* height: 20.03vw; min-width: 270px; min-height: 202px;*/
	border-radius: 4px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

#eventos .evento_lista .evento-item:hover .imagem {
	transform: scale(0.98);
}

#eventos .evento_lista .evento-item .informacoes {
	opacity: 1;
	width: 26.00vw;
	font-size: 24px;
	font-weight: 600;
	margin-top: 20px;
	display: block;
	line-height: 1.1em;
	transition: all ease 0.3s;
}

#eventos .evento_lista .evento-item .informacoes .btn-saiba-mais {
	padding: 9px 15px;
	font-size: 13px;
	font-weight: 500;
	color: #FFF;
	background: #112143;
	cursor: pointer;
	border-radius: 100px;
	border: 0;
	margin-top: 10px;
}

#eventos .evento_lista .evento-item:hover .informacoes {
	opacity: 0.90;
}

#eventos .section-novidade {
	position: relative;
}

#eventos .section-novidade>.container-section {
	display: flex;
	justify-content: center;
}

#eventos .novidade_info {
	margin-top: 0px;
	display: flex;
	justify-content: center;
}

#eventos .novidade_info .imagem img {
	max-width: 100%;
	margin: 0 auto;
	display: block;
	border-radius: 10px;
}

#eventos #info .informacoes {
	max-width: 70%;
	background: #fff;
	padding: 10px;
	margin-top: -50px;
	border-radius: 10px;
	display: block;
	justify-content: center;
	border: 1px solid #dcdfe2;
}

#eventos #info .informacoes .imagem {
	width: 100%;
}

#eventos #info .informacoes .leia_mais {
	color: #0a2143;
	font-weight: 600;
}

#eventos #info .informacoes h1 {
	padding-top: 0px;
	font-size: 38px;
	font-weight: 600;
	text-align: center;
	line-height: 1.2em;
}

#eventos #info .informacoes h3 {
	text-align: center;
}

#eventos #info .informacoes p {
	padding: 0 30px;
	font-size: 18px;
	line-height: 1.4em;
}

#eventos #info .informacoes svg {
	width: 15px;
	opacity: 0.5;
	margin-right: 6px;
	top: 2px;
	position: relative;
}

#eventos #info .info_texto {
	overflow: hidden;
}

#eventos #info .info_texto.esconde {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	/* -webkit-line-clamp: 8; */
	text-overflow: ellipsis;
}

#eventos .leia_mais {
	/* color: var(--cor_primaria100); */
	cursor: pointer;
}

.clear {
	position: relative;
	display: block;
	clear: both;
}

#eventos #btn-validate {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	text-decoration: none;
	white-space: nowrap;
	margin: 5px;
	padding: 8px 22px;
	font-size: 15px;
	line-height: 24px;
	background-color: black;
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	width: fit-content;
	transition: all .2s ease-in-out;
	border-radius: 20px;
	margin-top: 20px;
}




/* ************************************************ */
/* VITRINE VIRTUAL */
/* ************************************************ */

#vitrine .section-vitrine {
	display: flex;
	justify-content: center;
}

#vitrine .vitrine_content {
	max-width: 1500px;
	;
}

#vitrine .vitrine_content select,
#vitrine .vitrine_content input {
	background: #F2f2f2;
	border: 1px solid #CCC;
	border-radius: 6px;
	box-sizing: border-box;
}

#vitrine .vitrine_filtro select,
.vitrine_filtro [type=text] {
	text-transform: initial !important;
	height: 45px;
	padding: 0 15px;
	box-sizing: border-box;
}

#vitrine .vitrine_menu {
	display: flex;
	overflow: visible;
	box-sizing: border-box;
}

#vitrine .vitrine_filtro {
	width: auto;
	flex: 1;
}

#vitrine .vitrine_lista,
.vitrine_produto_botoes {
	margin-left: 0 !important;
}

#vitrine .vitrine_lista {
	min-height: 40vw;
}

#vitrine ul.vitrine_categoria_lista {
	margin-left: 0;
}

/* ************************************************ */
/* FALE CONOSCO | CONTATO */
/* ************************************************ */

#contato .col-1 {
	width: 50%;
	padding: 0 0px 0 0;
	box-sizing: border-box;
}

#contato .col-2 {
	width: 50%;
	padding: 0 0 0 0px;
	box-sizing: border-box;
}

#contato .section-contato {
	margin-top: 60px;
	margin-bottom: 60px;
	justify-content: flex-start;
	gap: 40px;
}

#contato .title-section {
	position: relative;
	margin-top: 70px;
}

#contato form {
	display: flex;
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;
	position: relative;
	padding: 40px;
	background: #FFF;
	border-radius: 10px;
}

#contato form input,
#contato form textarea {
	margin-bottom: 13px;
	border: 1px solid #eeeeee;
	border-radius: 4px;
	padding: 12px 10px;
	box-sizing: border-box;
	font-size: 15px;
}

#contato label {
	margin-bottom: 30px;
}

#contato textarea.form-control {
	height: 100px;
}

#contato textarea.form-control {
	min-height: calc(1.5em + .75rem + 2px);
}

#contato #btn-validate {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	margin: 5px;
	padding: 8px 22px;
	font-size: 15px;
	line-height: 24px;
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	width: fit-content;
	transition: all .2s ease-in-out;
	border-radius: 20px;
	margin-top: 20px;
}

#contato .txt_captcha input {
	width: 100%;
}

#contato h1 {
	font-size: 34px;
	font-weight: 600;
	margin: 0 0 18px 0;
}

#contato h3 {
	font-size: 30px;
	font-weight: 500;
	margin: 0px 0 28px 0;
}

#contato h4 {
	font-size: 18px;
	font-weight: 400;
	margin: 0 0 0px 0;
}

#contato p {
	font-size: 17px;
	margin: 24px 0 0px 0;
}

#contato b {
	font-weight: 600;
}

#contato strong {
	font-weight: 600;
}

#contato a {
	color: #131415;
	text-decoration: underline;
}

#contato .contato-acesso {
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
}

#contato .contato-acesso li {
	width: 42%;
	box-sizing: border-box;
	padding: 18px;
	border-radius: 10px;
	background: #FFF;
	aspect-ratio: 3/2;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#contato .contato-acesso li h1 {
	font-size: 22px;
	margin-top: -10px;
}

#contato .contato-acesso li p {
	margin: -2px 0 0 0;
	font-size: 14px;
}

#contato .contato-acesso li i {
	font-size: 28px;
	color: #B6282E;
	margin-bottom: 14px;
}

#contato .contato-acesso li a {
	width: 145px;
	justify-content: center;
	margin-top: 18px;
	border-radius: 100px;
	color: #FFF;
	padding: 9px 0px;
	font-size: 12px;
	background: #0a2143;
	transition: all 0.3 ease;
	display: flex;
	text-decoration: none;
}

#contato .contato-acesso li a:hover {
	background: #0b336e;
}

#contato #comochegar .fa-location-dot {
	font-size: 26px;
}

#contato #comochegar i {
	color: #0b336e;
}

#contato .mapa-contato {
	border-radius: 10px;
	overflow: hidden;
}

#captcha {
	margin: 20px 0 0;
}

#contato .section-abrasualoja {
	margin: 20px 0 100px 0;
	border-radius: 44px;
}

#contato .section-abrasualoja .col-1 {
	padding: 50px;
	gap: 40px;
	box-sizing: border-box;
	border-radius: 44px;
	display: flex;
	margin: -60px 0px -50px 0px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#contato .section-abrasualoja .col-1 img {
	width: 90%;
	margin-bottom: 20px;
}

#contato .section-abrasualoja .col-1>div {
	text-align: center;
	font-size: 20px;
	font-weight: 500;
}

#contato .section-abrasualoja .col-1>div span {
	font-size: 80%;
}

#contato .section-abrasualoja .col-2 {
	padding-top: 30px;
	padding-bottom: 30px;
}

#contato .section-abrasualoja .col-2 h1 {
	font-size: 36px;
	font-weight: 500;
	margin: 0;
}

#contato .section-abrasualoja .col-2 p {
	font-size: 17px;
	margin-bottom: 12px;
}

.midia-mall-contact li {
	margin-bottom: 16px;
}

.midia-mall-contact i {
	font-size: 18px;
	color: #0e3063;
	transform: translateY(2px);
}

.midia-mall-contact a {
	font-size: 18px;
	text-decoration: none !important;
}

.btn-midiamall {
	padding: 12px 24px;
	border-radius: 100px;
	font-size: 15px;
	color: #FFF !important;
	background: #0b336e;
	text-decoration: none !important;
}

.btn-midiamall {
	background: #0d3d85;
}


/* ************************************************ */
/* OPORTUNIDADE */
/* ************************************************ */

#oportunidade .section-oportunidade {
	gap: 70px;
	margin: 30px auto 30px auto;
}

#oportunidade .col-1 {
	width: calc(45% - 20px);
	padding: 0 0px;
	box-sizing: border-box;
}

#oportunidade .col-2 {
	width: calc(55% - 20px);
	padding: 0 0px;
	box-sizing: border-box;
}

#oportunidade form {
	display: flex;
	flex-direction: column;
	width: 100%;
}

#oportunidade form input,
#oportunidade form select,
#oportunidade form textarea {
	margin-bottom: 16px;
	border-radius: 8px;
	padding: 14px 12px;
	box-sizing: border-box;
	font-size: 16px;
	border: 0;
}

#oportunidade label {
	margin-bottom: 30px;
}

#oportunidade textarea.form-control {
	height: 140px;
}

#oportunidade textarea.form-control {
	min-height: calc(1.5em + .75rem + 2px);
}

#oportunidade #btn-validate {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	margin: 5px;
	padding: 8px 22px;
	font-size: 15px;
	line-height: 24px;
	/* background-color: var(--cor_primaria100); */
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	width: fit-content;
	transition: all .2s ease-in-out;
	border-radius: 20px;
	margin-top: 20px;
}

#oportunidade .txt_captcha input {
	width: 100%;
}

#oportunidade .section-oportunidade h2 {
	text-transform: uppercase;
	font-size: 15px;
	font-weight: 600;
}

#captcha {
	margin: 20px 0 0;
}


#oportunidade .vagas_logo {
	width: 10%;
	height: 0px;
	background-size: 80%;
	background-repeat: no-repeat;
	background-position: center;
	background-color: #ffff;
	border: 1px solid #f0f0f0;
	padding: 30px;
	position: absolute;
	right: 5%;
	top: 5%;
	padding-bottom: 9%;
}

#oportunidade li.vagas_item {
	width: 87%;
	display: inline-block;
	vertical-align: top;
	/* text-align: center; */
	border-bottom: 1px solid #00000026;
	padding-bottom: 20px;
	margin-bottom: 20px;
	background-color: #fff;
	padding: 5%;
}

#oportunidade .conteudo {
	gap: 0;
}

#oportunidade span.tc_head {
	height: 0px;
	padding-bottom: 9%;
	position: relative;
	display: block;
	max-width: 76%;
}

#oportunidade .candidatarse {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	margin: 5px;
	padding: 8px 22px;
	font-size: 15px;
	line-height: 24px;
	/* background-color: var(--cor_primaria100); */
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	width: fit-content;
	transition: all .2s ease-in-out;
	border-radius: 20px;
	margin-top: 20px;
}



/* ************************************************ */
/* SEJA UM LOJISTA */
/* ************************************************ */

#lojista .informacao {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 30px;
}

#lojista .informacao>div {
	flex: 1;
}

#lojista .informacao img {
	max-width: 33vw;
	min-width: 300px;
	height: auto;
}

@media screen and (max-width: 1000px) {
	#lojista .informacao {
		flex-direction: column-reverse;
	}

	#lojista .informacao img {
		max-width: 55vw;
		min-width: 300px;
		margin: 0 auto;
		display: block;
	}

	#lojista .informacao>div {
		width: 100%;
	}
}

#lojista form {
	display: flex;
	flex-direction: column;
	width: 500px;
	margin: 0 auto;
}

#lojista form input {
	margin-bottom: 16px;
}

#lojista label {
	margin-bottom: 30px;
	text-align: center;
}

#lojista .form-control::placeholder {
	font-size: 16px;
}

#lojista .form-control {
	border: 0;
	padding: 14px 12px;
	color: #212529;
	background-color: #fff;
	font-size: 20px;
}

#lojista textarea.form-control {
	height: 200px;
}

#lojista textarea.form-control {
	min-height: calc(1.5em + .75rem + 2px);
}

#lojista #btn-validate {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	margin: 5px;
	padding: 8px 22px;
	font-size: 15px;
	line-height: 24px;
	/* background-color: var(--cor_primaria100); */
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	width: fit-content;
	transition: all .2s ease-in-out;
	border-radius: 20px;
	margin-top: 20px;
}





/* TERMOS DE USO */

#politica .section-politica {
	display: flex;
}

#politica-privacidade {
	max-width: 1300px;
}

#politica-privacidade h2 {
	font-weight: 700;
	font-size: 22px;
	text-align: center;
}

#politica-privacidade p {
	font-size: 17px;
	line-height: 1.5em;
	color: #383838;
}

#politica-privacidade b {
	font-size: 17px;
	line-height: 1.5em;
	font-weight: 700;
	color: #383838;
}

#politica-privacidade u {
	font-size: 17px;
	line-height: 1.5em;
	font-weight: 500;
	color: #383838;
}

#politica-privacidade .btn-politica {
	padding: 18px 30px;
	font-size: 16px;
	font-weight: 500;
	border-radius: 8px;
	transition: all 0.3 ease;
}

#politica-privacidade .btn-politica:hover {
	transform: scale(1.05);
}

.lojas-imagem {
	width: 200px;
	height: 200px;
	/* ou qualquer altura fixa */
	background-size: cover;
	/* para cobrir toda a área */
	background-position: center;
	/* centraliza a imagem */
	border-radius: 8px;
	/* opcional, só estética */
}



/*NÃO EM USO
.navigation {background:#E6E8EB;padding:50px 0;}
.navigation button {
	font-family: "Montserrat", Sans-serif; font-size: 12px; font-weight: 600; text-transform: uppercase;
    fill: #AD132A; color: #AD132A; background-color: #AD132A00; border-color: #AD132A;
    border-style: solid; border-width: 2px 2px 2px 2px; border-radius: 100px 100px 100px 100px; padding: 14px 30px 14px 30px; cursor:pointer;
}
.navigation button:hover {background:#CC1B3526;}
.navigation button.active {background:#AD132A9C;color:#fff;}
.navigation>div {display:flex;align-items:center;justify-content:center;gap:25px;}
*/
/* ====== Layout principal ====== */
.contato-section {
	padding: 60px 0;
}

.contato-wrapper {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 0;
}

/* ====== Coluna do formulário ====== */
.contato-form {
	flex: 1;
	background: #fff;
	padding: 40px;
	border-radius: 12px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.contato-form h4 {
	margin-bottom: 25px;
	font-size: 1.6rem;
	color: #0a2143;
}

/* Inputs, selects e textarea */
#form_contato input,
#form_contato select,
#form_contato textarea {
	width: 100%;
	padding: 16px 18px;
	border: 1px solid #dcdfe2;
	border-radius: 8px;
	font-size: 1rem;
	margin-bottom: 25px;
	/* espaçamento maior */
	transition: all 0.3s ease;
}

#form_contato input:focus,
#form_contato select:focus,
#form_contato textarea:focus {
	border-color: #0a2143;
	box-shadow: 0 0 0 3px rgba(10, 33, 67, 0.15);
	outline: none;
}

#form_contato textarea {
	min-height: 160px;
	resize: vertical;
}

/* Checkbox */
.check_politica {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.9rem;
	margin-bottom: 25px;
}

.check_politica a {
	color: #0a2143;
	text-decoration: underline;
}

/* Botão */
.btn-enviar {
	display: inline-block;
	background: #0a2143;
	color: #fff;
	border: none;
	padding: 14px 32px;
	border-radius: 50px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
}

.btn-enviar:hover {
	background: #08346b;
	transform: translateY(-2px);
}

/* ====== Coluna da imagem ====== */
.contato-img {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

.contato-img img {
	width: 100%;
	height: 100%;
	border-radius: 12px;
	object-fit: cover;
}

/* ====== Responsivo ====== */
@media (max-width: 992px) {
	.contato-wrapper {
		flex-direction: column;
	}

	.contato-img {
		margin-top: 30px;
	}
}


.name-page {
	text-transform: capitalize;
	text-shadow: 7px 8px 9px rgba(-1, 0, 0, 0.5);
	margin-top: 20%;
	margin-left: 40%;
	font-size: 40%;
	backdrop-filter: blur(4px);
	color: #fff;
}

.name-pages {
	text-transform: capitalize;
	text-shadow: 7px 8px 9px rgba(-1, 0, 0, 0.5);
	margin-top: 237px;
	margin-left: 981px;
	font-size: 88px;
	backdrop-filter: blur(4px);
	color: #fff;
}

.card-servico {
	background-color: white;
	padding: 0px 10px;
	border-radius: 72px;
	position: relative;
	width: 100%;
	margin: 10px 0px;
	width: 295px;
}


.lojas_lista.servicos-content {
	padding-left: 0 !important;
}

.popup-msg {
	display: none;
	/* começa oculto */
	position: fixed;
	inset: 0;
	/* atalho para top:0; left:0; right:0; bottom:0 */
	background: rgba(0, 0, 0, 0.5);
	z-index: 9999;

	/* flexbox centralizado */
	justify-content: center;
	align-items: center;
}

.popup-content {
	background: #fff;
	padding: 2rem;
	border-radius: 8px;
	max-width: 400px;
	width: 90%;
	text-align: center;
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
	animation: fadeIn 0.3s ease;
}

.popup-content #popup-text {
	display: block;
	margin-bottom: 1rem;
	font-size: 1rem;
	color: #333;
}

#popup-close {
	padding: 0.5rem 1.2rem;
	border: none;
	border-radius: 4px;
	background: #007bff;
	color: #fff;
	cursor: pointer;
}

#popup-close:hover {
	background: #0056b3;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: scale(0.9);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

.popup-success {
	border-left: 6px solid #28a745;
	/* verde */
}

.popup-error {
	border-left: 6px solid #dc3545;
	/* vermelho */
}


.card .thumbnail {
	width: 100%;
	height: 200px;
	/* altura padrão (mobile) */
	overflow: hidden;
	/* corta o excesso */
}

.card .thumbnail img {
	width: 100%;
	height: 100%;
	/* ocupa todo o espaço do container */
	object-fit: cover;
	/* mantém proporção e recorta o excesso */
	display: block;
	border-radius: 4px 4px 0 0;
}

/* Tablets */
@media (min-width: 768px) {
	.card .thumbnail {
		height: 250px;
	}
}

/* Telas grandes */
@media (min-width: 1200px) {
	.card .thumbnail {
		height: 300px;
	}
}

/* container da imagem */
.lojas-imagem {
	width: 100%;
	height: 180px;
	/* altura padrão em mobile */
	background-size: cover;
	/* cobre toda a área */
	background-position: center;
	/* centraliza o foco */
	background-repeat: no-repeat;
	/* evita repetição */
	border-radius: 6px;
	/* opcional: arredonda cantos */
	overflow: hidden;
}

/* tablets */
@media (min-width: 768px) {
	.lojas-imagem {
		height: 220px;
	}
}

/* telas grandes */
@media (min-width: 1200px) {
	.lojas-imagem {
		height: 260px;
	}
}

/* padrão: 1 coluna em mobile bem pequeno */
.lojas-lista li {
	flex: 0 0 100%;
	max-width: 100%;
}

/* de 576px até 991px → 3 colunas */
@media (min-width: 576px) and (max-width: 991.98px) {
	.lojas-lista li {
		flex: 0 0 33.3333%;
		max-width: 33.3333%;
	}
}

/* ≥ 992px → 3 colunas também */
@media (min-width: 992px) {
	.lojas-lista li {
		flex: 0 0 33.3333%;
		max-width: 33.3333%;
	}
}


.lojas-imagem {
	width: 100%;
	height: 200px;
	/* altura base */
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: 6px;
	overflow: hidden;
}

@media (min-width: 768px) {
	.lojas-imagem {
		height: 220px;
	}
}

@media (min-width: 1200px) {
	.lojas-imagem {
		height: 240px;
	}
}


.servicos {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 20px;
	padding: 20px;
	justify-content: center;
}

.servicos>* {
	max-width: 100%;
}

.col-lg-auto.col-md-6.col-12 {
	display: flex;
	justify-content: center;
	/* centraliza no eixo X */
	align-items: center;
	/* se quiser, centraliza no eixo Y */
	margin-left: auto;
	margin-right: auto;
	/* garante que a coluna em si vá pro centro */
	text-align: center;
	/* centraliza texto dentro */
}

/* Letras */
.filtro-letras-wrapper {
	overflow-x: auto;
	white-space: nowrap;
}

.filtro-letras-servicos {
	display: inline-flex;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 8px 0 0 0;
}

.filtro-letras-servicos .letra {
	cursor: pointer;
	padding: 6px 10px;
	border-radius: 8px;
	border: 1px solid #ddd;
	user-select: none;
}

.filtro-letras-servicos .letra.active {
	background: #111;
	color: #fff;
	border-color: #111;
}

/* Segmentos */
.servicos-menu-lista-wrapper {
	overflow-x: auto;
}

.servicos-menu-lista {
	display: inline-flex;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 8px 0 0 0;
}

.servicos-menu-lista .segmento {
	cursor: pointer;
	padding: 6px 10px;
	border-radius: 8px;
	border: 1px solid #ddd;
	white-space: nowrap;
}

.servicos-menu-lista .segmento.active {
	background: #111;
	color: #fff;
	border-color: #111;
}

/* ===== Base / container ===== */
.modal-servico-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .4);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity .2s;
	z-index: 9999;
}

.modal-servico-overlay.active {
	opacity: 1;
}

.modal-servico {
	position: relative;
	overflow: hidden;
	/* segura a faixa ::before */
	background: #fff;
	border-radius: 16px;
	width: min(900px, 94vw);
	/* nunca maior que a viewport */
	max-height: min(90vh, 94svh);
	/* respeita “small viewport height” em mobile */
	display: flex;
	/* header fixo + conteúdo rolável */
	flex-direction: column;
	padding: clamp(12px, 2vw, 16px);
	padding-left: calc(clamp(12px, 2vw, 16px) + 0.5cm + 12px);
	/* respiro por causa da faixa */
}

/* Faixa vertical (0,5cm): amarelo | azul | magenta */
.modal-servico::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 0.5cm;
	background: linear-gradient(to bottom,
			#fbbf2b 0% 33.333%,
			#5cc5ed 33.333% 66.666%,
			#ec2790 66.666% 100%);
}

/* Header sempre visível */
.modal-servico .modal-header {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 8px;
	position: sticky;
	top: 0;
	background: #fff;
	z-index: 1;
	padding-bottom: 4px;
}

.modal-servico .modal-close {
	border: 0;
	background: transparent;
	font-size: 20px;
	cursor: pointer;
}

/* ===== Corpo em 2 colunas responsivas ===== */
.modal-servico .modal-body {
	/* grid fluido; 2 colunas: imagem | dados */
	display: grid !important;
	grid-template-columns: minmax(220px, 36vw) minmax(0, 1fr);
	gap: clamp(16px, 2vw, 24px);
	align-items: start;
	justify-content: stretch;
	/* ocupa toda a largura do container */
	overflow: auto;
	/* rola só o conteúdo, header fica fixo */
	-webkit-overflow-scrolling: touch;
}

/* coloca cada bloco na sua coluna */
.modal-servico .servico-imagem {
	grid-column: 1;
}

.modal-servico .servico-dados {
	grid-column: 2;
	min-width: 0;
}

@media (max-width: 750px) {
	.servico-dados {
		justify-items: center;
	}
}
@media (max-width: 750px) {
	.servico-localizacao {
		justify-items: center;
	}
}

/* ===== Imagem ===== */
.modal-servico .servico-imagem img {
	display: block;
	width: 100%;
	max-width: 350px;
	height: auto;
	max-height: 60vh;
	/* nunca passa da viewport */
	object-fit: contain;
	/* não corta logos */
	border-radius: 20px;
	margin: clamp(8px, 1.5vh, 14px) auto clamp(12px, 2vh, 18px);
}

/* ===== Conteúdo textual ===== */
.modal-servico .servico-info h2 {
	margin: 0 0 8px 0;
	text-align: left;
	word-wrap: break-word;
	overflow-wrap: anywhere;
}

.modal-servico .contato-item {
	display: flex;
	gap: 10px;
	margin: 6px 0;
}

/* ===== Telas pequenas (largura) — empilha e compacta ===== */
@media (max-width: 768px) {
	.modal-servico {
		width: min(720px, 96vw);
		max-height: min(92vh, 96svh);
		padding-left: clamp(12px, 2vw, 16px);
		/* tira o recuo extra; faixa continua visível */
	}

	.modal-servico::before {
		width: 6px;
		/* faixa mais fina em telas pequenas */
	}

	.modal-servico .modal-body {
		display: block !important;
		/* empilha */
		overflow: auto;
	}

	.modal-servico .servico-imagem {
		margin-bottom: 12px;
	}

	.modal-servico .servico-info h2 {
		text-align: center;
	}
}

/* ===== Telas muito baixas (altura) — limita imagem e reduz respiros ===== */
@media (max-height: 640px) {
	.modal-servico {
		max-height: 92vh;
	}

	.modal-servico .servico-imagem img {
		max-height: 40vh;
	}
}

/* ===== Telas extremas (altura < 480px) — modo compacto total ===== */
@media (max-height: 480px) {
	.modal-servico {
		border-radius: 12px;
	}

	.modal-servico .modal-body {
		gap: 12px;
	}

	.modal-servico .servico-imagem img {
		max-height: 32vh;
		margin: 8px auto 10px;
	}
}

/* ====== Layout: tudo em coluna e centralizado ====== */
.filtros-servicos {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(14px, 2.2vw, 22px);
	/* espaço entre os blocos */
	margin-bottom: clamp(16px, 3vw, 28px);
}

/* cada bloco ocupa a mesma largura máxima, sempre centralizado */
.filtros-servicos>[class*="col-"] {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

/* largura confortável dos blocos */
.filtro-letras-wrapper,
.servicos-menu-lista-wrapper {
	width: 100%;
	max-width: min(960px, 92vw);
}

/* ====== Campo de busca (em cima) ====== */
#filtro_servico_nome {
	display: block;
	width: 100%;
	max-width: min(560px, 92vw);
	margin: 0 auto;
	text-align: center;
	/* deixa placeholder centralizado, bonitinho */
}

.filtros-servicos .form-label {
	width: 100%;
	text-align: center;
	font-weight: 600;
	margin-bottom: 8px;
}

/* ====== Letras (no meio) ====== */
.filtro-letras-wrapper {
	display: flex;
	justify-content: center;
}

.filtro-letras-servicos {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: clamp(6px, 1vw, 10px);
	padding: 0;
	margin: 0;
	list-style: none;
	flex-wrap: wrap;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	/* Firefox */
}

/* pastilhas das letras */
.filtro-letras-servicos li,
.filtro-letras-servicos .letra {
	cursor: pointer;
	padding: 8px 14px;
	border-radius: 999px;
	border: 1px solid #ddd;
	user-select: none;
	font-size: 0.95rem;
	line-height: 1;
	transition: background .15s ease, color .15s ease, border-color .15s ease, transform .05s ease;
}

.filtro-letras-servicos li:hover,
.filtro-letras-servicos .letra:hover {
	border-color: #bbb;
	transform: translateY(-1px);
}

.filtro-letras-servicos li.active,
.filtro-letras-servicos .letra.active {
	background: #111;
	color: #fff;
	border-color: #111;
}

/* ====== Segmentos (embaixo) ====== */
.servicos-menu-lista-wrapper {
	display: flex;
	justify-content: center;
}

.servicos-menu-lista {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: clamp(6px, 1vw, 10px);
	padding: 0;
	margin: 0;
	list-style: none;
	white-space: nowrap;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	flex-wrap: wrap;
}

.servicos-menu-lista li,
.servicos-menu-lista .segmento {
	cursor: pointer;
	padding: 8px 14px;
	border-radius: 999px;
	border: 1px solid #ddd;
	user-select: none;
	line-height: 1;
	transition: background .15s ease, color .15s ease, border-color .15s ease, transform .05s ease;
}

.servicos-menu-lista li:hover,
.servicos-menu-lista .segmento:hover {
	border-color: #bbb;
	transform: translateY(-1px);
}

.servicos-menu-lista li.active,
.servicos-menu-lista .segmento.active {
	background: #111;
	color: #fff;
	border-color: #111;
}

/* “Todos” destacado e central (é o primeiro item da lista) */
.servicos-menu-lista li:first-child,
.servicos-menu-lista .segmento:first-child {
	font-weight: 600;
	border-color: #111;
}

/* ====== Responsividade ======
   Em telas pequenas, permitimos quebrar as letras/segmentos em linhas. */
@media (max-width: 576px) {

	.filtro-letras-servicos,
	.servicos-menu-lista {
		flex-wrap: wrap;
		white-space: normal;
		justify-content: center;
	}
}

.card-servico {
	/* base */
	transition: transform 220ms cubic-bezier(.22, .61, .36, 1),
		box-shadow 220ms cubic-bezier(.22, .61, .36, 1),
		filter 220ms cubic-bezier(.22, .61, .36, 1);
	transform: translateZ(0);
	/* evita borrão em alguns browsers */
	will-change: transform, box-shadow;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
	background: #fff;
	position: relative;
	z-index: 0;
}

/* Só aplica hover em devices com hover real (evita “grudar” no mobile) */
@media (hover: hover) {
	.card-servico:hover {
		transform: scale(1.03);
		/* zoom discreto */
		box-shadow: 0 14px 34px rgba(0, 0, 0, .18), 0 6px 14px rgba(0, 0, 0, .10);
		z-index: 1;
		/* fica “por cima” dos vizinhos */
	}
}

/* Acessibilidade: mesmo efeito ao focar via teclado */
.card-servico:focus,
.card-servico:focus-within {
	outline: none;
	transform: scale(1.03);
	box-shadow: 0 14px 34px rgba(0, 0, 0, .18), 0 6px 14px rgba(0, 0, 0, .10);
}

/* Toque no mobile: dá um feedback rápido no tap */
@media (hover: none) {
	.card-servico:active {
		transform: scale(0.99);
		box-shadow: 0 10px 24px rgba(0, 0, 0, .14), 0 4px 10px rgba(0, 0, 0, .08);
	}
}

/* Respeita usuários que pedem menos animação */
@media (prefers-reduced-motion: reduce) {
	.card-servico {
		transition: none;
	}
}

#lojas {
	margin-top: 0 ! important;
}

/* 1) Deixa a coluna da imagem com largura fixa/limitada */
.modal-servico .modal-body {
	/* antes: grid-template-columns: minmax(220px, 36vw) 1fr; */
	grid-template-columns: minmax(180px, 260px) 1fr;
	/* <= mais estreito e estável */
	align-items: start;
}

/* 2) Limita o bloco .servico-imagem e centraliza o conteúdo */
.modal-servico .servico-imagem {
	max-width: 260px;
	/* nunca fica largo demais */
	width: 100%;
	justify-self: start;
	/* evita esticar para ocupar a coluna toda */
}

/* 3) A imagem em si: ocupa o bloco, mas respeita limites */
.modal-servico .servico-imagem img {
	width: 100%;
	height: auto;
	max-width: 260px;
	/* casa com o container */
	object-fit: contain;
	/* não corta logos */
}

/* Mobile: coluna única, imagem 100% da largura disponível (com limite) */
@media (max-width: 768px) {
	.modal-servico .modal-body {
		display: block !important;
	}

	.modal-servico .servico-imagem {
		max-width: 320px;
		margin: 0 auto 12px;
		/* centraliza em coluna única */
	}

	.modal-servico .servico-imagem img {
		max-width: 320px;
	}
}