/*FONTES*/
@font-face {
	/*COOPER*/
	font-family: "Cooper"; /* Licença hospedada junto ao código fonte do site */
	src: url('../webfonts/cooper'); 
}

html,

body {

    padding: 1px 0 0 0;

    margin: 0;

    scroll-behavior: smooth;

    height: auto;

    width: 100vw;

    /*font-family: "Exo 2", serif !important;*/

    background-color: #fff;

    color: #41273A;

    overflow-y:inherit;

    overflow-x: hidden;

    scrollbar-width: thin;/* "auto" or "thin" */

    scrollbar-color: #BDACE6 #E1E1E1;/* scroll thumb and track */

}

a, a:visited, a:active, a:any-link, a:default, a:focus, a:hover{

    text-decoration: none !important;
    text-decoration-line: none !important;
	text-decoration-color: none !important;

}
.swiper-button-next, .swiper-button-prev {
	color: #41273A !important;
}

.banner-button>a, a:visited, a:active, a:any-link, a:default, a:focus, a:hover{

    text-decoration: none !important;
    text-decoration-line: none !important;
	text-decoration-color: none !important;

}

html::-webkit-scrollbar {

 z-index: 9999999999999999 !important;

 width: 12px;               /* width of the entire scrollbar */

}

html::-webkit-scrollbar-track {

    background: #E1E1E1;        /* color of the tracking area */

}

html::-webkit-scrollbar-thumb {

  	background-color: #BDACE6;

    border-radius: 6px !important;

    border: 2px solid #E1E1E1;

}
.navbar{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	z-index: 1050;
	backdrop-filter: blur(0px);
}
#navbar_top{
	background-color: rgba(255, 255, 255, 0);  /* Cor alterada com transparência */
	transition: background-color 0.3s ease;
}
.nav-link{
	font-family: "cooper-black-std", serif !important;
	color: #E3E1DB;
}
.nav-link:hover {
	border-bottom: 2px solid transparent; /* Garante que a transição não fique quebrada */
	transition: border-bottom 0s ease;
}

.collapse{

    border: none !important;

}

.nav-link-button{
	font-family: "cooper-black-std", serif !important;
	color: #41273A !important;
}
.nav-item-button{
	padding: 10px 25px;
	border-radius: 30px;
	background-color: #E3E1DB;
	transition: .2s ease;
}
.nav-item-button:hover{
	background-color: #BDACE6;
	transition: .2s ease;
}
.navbar-toggler {
    border: none !important;  /* Remove a borda */
}
.navbar-toggler {
    opacity: 0;
    pointer-events: none; /* Evita cliques quando invisível */
    transition: opacity 0.3s ease;
}

/* Exibe o botão quando o menu tem cor alterada */
.navbar-toggler.show {
    opacity: 1;
    pointer-events: auto;
}

.carousel, .carousel-inner, .carousel-item{
	height: 100vh;
}
.carousel-item img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.carousel-caption p {
	padding-top: 30px;
	max-width: 30vw;
	text-align: center;
}
.banner-button{
	font-family: "cooper-black-std", serif !important;
	background-color: #BDACE6;
	color: #41273A;
	padding: 10px 25px;
	border-radius: 30px;
	transition: .2s ease;
}
.banner-button:hover{
	background-color: #E3E1DB;
	transition: .2s ease;
}
.contato-button{
	font-family: "cooper-black-std", serif !important;
	background-color: #BDACE6;
	color: #41273A;
	padding: 10px 25px;
	border-radius: 30px;
	transition: .2s ease;
}
.contato-button:hover{
	background-color: #E3E1DB;
	transition: .2s ease;
}
.contato-button-2{
	font-family: "cooper-black-std", serif !important;
	background-color: #41273A;
	color: #E3E1DB;
	border: 2px solid #E3E1DB;
	padding: 10px 25px;
	border-radius: 30px;
	transition: .2s ease;
}
.contato-button-2:hover{
	background-color: #E3E1DB;
	transition: .2s ease;
	color: #41273A;
}

article{

    height: auto;

    width: 100vw;

    padding: 150px 100px;

    background-color: #fff;

}

p{
	font-family: "Exo 2", serif !important;
	font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

span{
	font-family: "Exo 2", serif !important;
    font-size: 12pt;

}

h1,h2,h3,h4{
	font-family: "cooper-black-std", serif !important;
}

h1{
    font-size: 30pt;
    margin-bottom: 60px;
}
h3{
	font-size: 12pt;
}

h4{

    text-align: center;

}

.link-lilas{
	font-family: "cooper-black-std", serif !important;
	color: #BDACE6 !important;
}

.texto{

    padding: 60px 60px 60px 120px;

}
.bg-cinza{
	background-color: #E3E1DB;
}
.bg-verde{
	background-color: #88813E;
}
.bg-roxo{
	background-color: #41273A;
}
.bg-lilas{
	background-color: #BDACE6;
	padding: 30px 0 10px 0 !important;
}
.bg-lilas>p{
	color: #41273A !important;
	font-weight: 600 !important;
}
#pra-quem{
	background-image: url('../images/pra-quem.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#contato{
	background-image: url('../images/contato.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: bottom right;
}


.card-abordagem{
	color: #41273A;
	border-radius: 15px;
	background-color: #FFFFFF;
	height: auto;
	padding: 120px 30px 60px 30px;
	background-repeat: no-repeat;
	background-size: 250px;
	background-position: top right;
}

.card-servico{
	color: #41273A;
	border-radius: 15px;
	background-color: #FFFFFF;
	height: auto;
	padding: 100px 80px 60px 60px;
	transition: .2s ease;
	background-image: url('../images/cravo-cinza.svg');
	background-repeat: no-repeat;
	background-size: 300px;
	background-position: top right;
}

.card-servico:hover{
	background-color: #BDACE6;
	transition: .2s ease;
	background-image: url('../images/cravo-roxo.svg');
	background-repeat: no-repeat;
	background-size: 300px;
	background-position: top right;
}
.card-servico>h3{
	font-size: 12pt;
	color: #BDACE6;
	font-family: "cooper-black-std", serif !important;
	text-align: right;
	transition: .2s ease;
}
.card-servico:hover>h3{
	color: #41273A;
	transition: .2s ease;
}

.imagem-01{

    height: 500px;

    width: 400px;

    background-image: url('../images/perfil.jpg');

    background-size: cover;

    background-repeat: no-repeat;

    border-radius: 0 200px 0 0;

}
/* BACK-TOP */
.back-top {
    z-index: 9999;
    width: 50px;
    height: 50px;
    position: fixed;
    bottom: 1.5%;
    right: 20px;
    float: right;
    background-color: #BDACE6;
    opacity: 0; /* Começa invisível */
    transform: translateY(20px); /* Movido para baixo */
    transition: opacity 0.4s ease, transform 0.4s ease;
    pointer-events: none; /* Desativa clique quando invisível */
	transition: 0.2s;
}
.back-top:hover {
    height: 80px;
    opacity: 1 !important;
    transition: 0.2s;
}

/*WHATSAPP*/
.whatsapp-botao{
    z-index: 9999;
    width: 50px;
    height: 50px;
    position: fixed;
    bottom: 1.5%;
    right: 70px;;
    float: right;
    background-color: #41273A;
	opacity: .25;
    transition: .2s;
	backdrop-filter: blur(15px) !important;
}
.whatsapp-botao:hover{
    width: 80px;
	opacity: 1;
    transition: .2s;
	backdrop-filter: blur(15px) !important;
}


/*MEDIA*/

@media (max-width: 767px) {

    article {
        padding: 30px 20px !important; /* Reduz o padding geral no mobile */
    }

    #sobre .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    #sobre .col-6 {
        width: 100% !important; /* Faz os itens ocuparem a tela toda no mobile */
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .imagem-01 {
        width: 100% !important;
        height: 250px !important; /* Reduz a altura da imagem no mobile */
		margin-bottom: 50px;
    }

    #sobre p {
        font-size: 14px !important; /* Diminui o tamanho da fonte do texto */
        line-height: 1.4 !important; /* Reduz o espaçamento entre linhas */
        padding: 5px !important; /* Reduz ainda mais o padding interno */
    }
	
	/* Centralização flexível da legenda */
    .carousel-caption {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        height: 100vh;  /* Garante que a legenda ocupe toda a altura da tela */
        width: 100%;    /* Garante que a legenda ocupe toda a largura da tela */
        padding: 0 20px;  /* Adiciona um padding leve para evitar que o texto fique grudado nas bordas */
        position: absolute;
        top: 0;
        left: 0;
    }

    .carousel-caption h1 {
        font-size: 20pt !important;
        margin-bottom: 10px; /* Espaçamento entre o título e o texto */
    }

    .carousel-caption p {
        font-size: 12pt !important;
        max-width: 80%; /* Limita a largura do texto */
        margin: 0;  /* Remove margens que podem desalinhar o conteúdo */
    }

    .banner-button {
        padding: 8px 15px !important;
        font-size: 12pt !important;
        margin-top: 15px; /* Adiciona uma margem para separar o botão do texto */
        background-color: #BDACE6;
        color: #41273A;
        border-radius: 30px;
        text-align: center;
    }

    .carousel-item {
        position: relative; /* Garante que o conteúdo da legenda tenha posicionamento absoluto */
    }

    .carousel-item img {
        object-fit: cover;
        width: 100%;
        height: 100%;
    }
	
	 /* Alinha os itens verticalmente e centraliza */
    article.bg-lilas .row {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 10px 0; /* Adiciona padding para espaçamento entre os itens */
    }

    article.bg-lilas .col-9,
    article.bg-lilas .col-3 {
        width: 100% !important; /* Faz os itens ocuparem toda a largura da tela */
        text-align: center;
        margin-bottom: 10px; /* Espaço entre os itens */
    }

    article.bg-lilas .col-3 img {
        margin-top: 5px; /* Ajusta a posição da imagem */
    }
	.px-5 {
        padding-left: 1rem !important;  /* Ajusta o padding para o lado esquerdo */
        padding-right: 1rem !important; /* Ajusta o padding para o lado direito */
    }
	.navbar-toggler {
        position: absolute;
        right: 20px;  /* Distância da borda direita */
    }

}