@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;500;600;700&display=swap');

:root{
   --main-color:#2980b9;
   --orange:#f39c12;
   --red:#e74c3c;
   --black:#333;
   --white:#fff;
   --light-color:#666;
   --light-bg:#eee;
   --border:.2rem solid var(--black);
   --box-shadow:0 .5rem 1rem rgba(0,0,0,.1);
}


.btn,
.delete-btn,
.option-btn,
.inline-btn,
.inline-option-btn,
.inline-delete-btn{
   margin-top: 1rem;
   border-radius: .5rem;
   cursor: pointer;
   font-size: 1.8rem;
   color:var(--white);
   padding:1.2rem 3rem;
   text-transform: capitalize;
   text-align: center;
}

.inline-btn,
.inline-option-btn,
.inline-delete-btn{
   display: inline-block;
   margin-right: 1rem;
}

.btn,
.delete-btn,
.option-btn{
   display: block;
   width: 100%;
}

.inline-btn,
.btn{
   background-color: var(--main-color);
}

.inline-delete-btn,
.delete-btn{
   background-color: var(--red);
}

.inline-option-btn,
.option-btn{
   background-color:var(--orange);
}
*{
   font-family: 'Nunito', sans-serif;
   margin:0; padding:0;
   box-sizing: border-box;
   outline: none; border:none;
   text-decoration: none;
}

.btn:hover,
.delete-btn:hover,
.option-btn:hover,
.inline-btn:hover,
.inline-delete-btn:hover,
.inline-option-btn:hover{
   background-color: var(--black);
}

.flex-btn{
   display: flex;
   gap:1rem;
}


*::selection{
   background-color: var(--main-color);
   color:var(--white);
}

::-webkit-scrollbar{
   height: .5rem;
   width: 1rem;
}

::-webkit-scrollbar-track{
   background-color: transparent;
}

::-webkit-scrollbar-thumb{
   background-color: var(--main-color);
}

html{
   font-size: 62.5%;
   overflow-x: hidden;
}

body{
   background-color: var(--light-bg);
}

section{
   padding:2rem;
   max-width: 1200px;
   margin:0 auto;
}

.heading {
    font-size: clamp(1rem, 5vw, 1.5rem); /* mínimo 1rem, máximo 1.5rem, escala com a tela */
    color: #fff;
    margin-bottom: 1rem;
    text-align: center;
    background-color: #2980b9;
    padding: 0.5em 1em; /* padding proporcional ao texto */
    border-radius: 4px;
    display: inline-block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    position: relative;
    margin-top: 0;
    transition: all 0.3s ease;
    max-width: 90%; /* nunca ultrapassa a largura da tela */
    word-break: break-word; /* quebra palavras se for preciso */
}

.heading::after {
    content: '';
    position: absolute;
    bottom: 0.2em; /* distância proporcional ao texto */
    left: 50%;
    width: 40%; /* 40% do tamanho do texto */
    max-width: 60px; /* limite máximo */
    min-width: 20px; /* limite mínimo */
    height: 0.2em; /* proporcional à fonte */
    background-color: #fff;
    transform: translateX(-50%);
    border-radius: 2px;
}

.heading:hover {
    transform: scale(1.05);
}
.btn,
.delete-btn,
.option-btn{
   display: block;
   width: 100%;
   margin-top: 1rem;
   border-radius: .5rem;
   padding:1rem 3rem;
   font-size: 1.7rem;
   text-transform: capitalize;
   color:var(--white);
   cursor: pointer;
   text-align: center;
}

.btn:hover,
.delete-btn:hover,
.option-btn:hover{
   background-color: var(--black);
}

.btn{
   background-color: var(--main-color);
}

.option-btn{
   background-color: var(--orange);
}

.delete-btn{
   background-color: var(--red);
}

.flex-btn{
   display: flex;
   gap:1rem;
}

.message{
   position: sticky;
   top:0;
   max-width: 1200px;
   margin:0 auto;
   background-color: var(--light-bg);
   padding:2rem;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap:1.5rem;
   z-index: 1100;
}

.message span{
   font-size: 2rem;
   color:var(--black);
}

.message i{
   cursor: pointer;
   color:var(--red);
   font-size: 2.5rem;
}

.message i:hover{
   color:var(--black);
}

.empty{
   padding:1.5rem;
   background-color: var(--white);
   border: var(--border);
   box-shadow: var(--box-shadow);
   text-align: center;
   color:var(--red);
   border-radius: .5rem;
   font-size: 2rem;
   text-transform: capitalize;
}

.disabled{
   pointer-events: none;
   user-select: none;
   opacity: .5;
}

@keyframes fadeIn{
   0%{
      transform: translateY(1rem);
   }
}

.header{
   position: sticky;
   top:0; left:0; right:0;
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   z-index: 1000;
}

.header .flex{
   display: flex;
   align-items: center;
   justify-content: space-between;
   position: relative;
}

.header .flex .logo{
   font-size: 2.5rem;
   color:var(--black);
}

.header .flex .logo span{
   color:var(--main-color);
}

.header .flex .navbar a{
   margin:0 1rem;
   font-size: 2rem;
   color:var(--black);
}

.header .flex .navbar a:hover{
   color:var(--main-color);
   text-decoration: underline;
}


.header .flex .icons > *{
   margin-left: 1rem;
   font-size: 2.5rem;
   cursor: pointer;
   color:var(--black);
}

.header .flex .icons > *:hover{
   color:var(--main-color);
}

.header .flex .icons a span{
   font-size: 2rem;
}

.header .flex .profile{
   position: absolute;
   top:120%; right:2rem;
   background-color: var(--white);
   border-radius: .5rem;
   box-shadow: var(--box-shadow);
   border:var(--border);
   padding:2rem;
   width: 30rem;
   padding-top: 1.2rem;
   display: none;
   animation:fadeIn .2s linear;
}

.header .flex .profile.active{
   display: inline-block;
}

.header .flex .profile p{
   text-align: center;
   color:var(--black);
   font-size: 2rem;
   margin-bottom: 1rem;
}

#menu-btn{
   display: none;
}

.home-bg{
   background:url(../images/home-bg.png) no-repeat;
   background-size: cover;
   background-position: center;
}

.home-bg .home .slide{
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   gap:1.5rem;
   padding-bottom: 6rem;
   padding-top: 2rem;
   user-select: none;
}


.home .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.home .swiper-slide img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

.home .swiper-slide .image img {
    height: 40rem;
    width: 100%;
    object-fit: contain;
}

/* Estilos para o Swiper na classe .category */
.category .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.category .swiper-slide img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

.home-bg .home .slide .image img{
   height: 40rem;
   width: 100%;
   object-fit: contain;
}


.home-bg .home .slide .image {
   flex: 1 1 100%; /* Alterado para ocupar todo o espaço disponível */
   max-width: 40rem; /* Define a largura máxima de 40rem */
   height: 20rem; /* Define a altura fixa de 20rem */
   display: flex;
   align-items: center;
   justify-content: center;
}

.home-bg .home .slide .image img {
   max-width: 100%; /* Ajusta a largura da imagem para não ultrapassar o contêiner */
   max-height: 100%; /* Ajusta a altura da imagem para não ultrapassar o contêiner */
   object-fit: contain; /* Ajusta o comportamento da imagem dentro do contêiner */
}

.home-bg .home .slide .content{
   flex:1 1 40rem;
}

.home-bg .home .slide .content span{
   font-size: 2rem;
   color:var(--white);
}

.home-bg .home .slide .content h3{
   margin-top: 1rem;
   font-size: 4rem;
   color:var(--white);
   text-transform: uppercase;
}

.home-bg .home .slide .content .btn{
   display: inline-block;
   width: auto;
}

/* Indicadores retangulares para a paginação do Swiper */
.swiper-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1rem;
}

.swiper-pagination-bullet {
    width: 12px;
    height: 4px;
    display: inline-block;
    border-radius: 2px;
    background-color: rgba(0, 0, 0, 0.3); /* Mais destaque para os indicadores inativos */
    margin: 0 4px;
    transition: background-color 0.3s, transform 0.3s;
}

.swiper-pagination-bullet-active {
    background-color: var(--main-color);
    width: 24px;
    transform: scaleX(1.5);
}


.category .slide {
    margin-bottom: 2rem; /* Reduzindo a margem inferior */
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); /* Sutil sombra para destacar */
    border: 1px solid #ddd;
    text-align: center;
    padding: 1.4rem; /* Reduzindo o preenchimento interno */
    background: #2980b9; /* Cor de fundo inicial (azul) */
    border-radius: 1.2rem;
    transition: background-color 0.3s, box-shadow 0.3s;
    overflow: hidden;
    display: flex; /* Usando flexbox para alinhar os itens */
    align-items: center; /* Centralizando verticalmente os itens */
}

.category .slide:hover {
    background-color: #fff; /* Cor de fundo ao passar o mouse (branco) */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Sutil aumento na sombra ao passar o mouse */
}


.category .slide img {
    height: 4rem; /* Altura reduzida da imagem */
    width: auto; /* Largura ajustada automaticamente */
    object-fit: contain;
    margin-right: 1rem; /* Espaço à direita da imagem */
    user-select: none;
    filter: brightness(0) invert(1); /* Filtro para tornar a imagem branca inicialmente */
    transition: transform 0.3s, filter 0.3s;
}
.category .slide:hover img {
    filter: none; /* Remover o filtro para mostrar a cor original do ícone */
    transform: scale(1.1);
    transition: filter 0.3s, transform 0.3s;
}
.category .slide h3 {
    font-size: 1.6rem; /* Tamanho menor para o título */
    color: #fff; /* Cor do texto inicial (branco) */
    margin-bottom: 0.5rem; /* Reduzindo a margem inferior do título */
    user-select: none;
    transition: color 0.3s;
    flex: 1; /* Ocupa o espaço restante no flex container */
}
.category .slide:hover h3 {
    color: #2980b9; /* Cor do texto ao passar o mouse (azul) */
}
.category .slide:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(41, 128, 185, 0.6); /* Destaque de foco mais sutil */
}

.home-products .slide {
   position: relative;
   padding: 2rem;
   border-radius: 1rem;
   border: var(--border);
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   margin-bottom: 5rem;
   overflow: hidden;
   user-select: none;

   /* NOVO: uniformizar altura e organizar conteúdo */
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   height: 100%; /* permite que todos cresçam igualmente */
   min-height: 55rem; /* ajuste conforme necessário */
}


.home-products .slide img{
   width: 100%;
   height: 20rem;
   object-fit: contain;
   margin-bottom: 2rem;
}

.home-products .slide .name{
   font-size: 2rem;
   color:var(--black);
}

.home-products .slide .flex{
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap:1rem;
}

.home-products .slide .flex .qty{
   width: 7rem;
   padding:1rem;
   border:var(--border);
   font-size: 1.8rem;
   color:var(--black);
   border-radius: .5rem;
}

.home-products .slide .flex .price{
   margin:1rem 0;
   font-size: 2rem;
   color:var(--main-color);
}

.home-products .slide .fa-heart,
.home-products .slide .fa-eye{
   position: absolute;
   top:1rem;
   height: 4.5rem;
   width: 4.5rem;
   line-height: 4.2rem;
   font-size: 2rem;
   background-color: var(--white);
   border:var(--border);
   border-radius: .5rem;
   text-align: center;
   color:var(--black);
   cursor: pointer;
   transition: .2s linear;
}

.home-products .slide .fa-heart{
   right: -6rem;
}

.home-products .slide .fa-eye{
   left: -6rem;
}

.home-products .slide .fa-heart:hover,
.home-products .slide .fa-eye:hover{
   background-color: var(--black);
   color:var(--white);
}

.home-products .slide:hover .fa-heart{
   right: 1rem;
}

.home-products .slide:hover .fa-eye{
   left: 1rem;
}

.quick-view form{
   padding:2rem;
   border-radius: .5rem;
   border:var(--border);
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   margin-top: 1rem;
}

.quick-view form .row{
   display: flex;
   align-items: center;
   gap:1.5rem;
   flex-wrap: wrap;
}

.quick-view form .row .image-container{
   margin-bottom: 2rem;
   flex:1 1 40rem;
}

.quick-view form .row .image-container .main-image img{
   height: 30rem;
   width: 100%;
   object-fit: contain;
}

.quick-view form .row .image-container .sub-image{
   display: flex;
   gap:1.5rem;
   justify-content: center;
   margin-top: 2rem;
}

.quick-view form .row .image-container .sub-image img{
   height: 7rem;
   width: 10rem;
   object-fit: contain;
   padding:.5rem;
   border:var(--border);
   cursor: pointer;
   transition: .2s linear;
}

.quick-view form .flex .image-container .sub-image img:hover{
   transform: scale(1.1);
}

.quick-view form img{
   width: 100%;
   height: 20rem;
   object-fit: contain;
   margin-bottom: 2rem;
}

.quick-view form .row .content{
   flex:1 1 40rem;
}

.quick-view form .row .content .name{
   font-size: 2rem;
   color:var(--black);
}

.quick-view form .row .flex{
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap:1rem;
   margin:1rem 0;
}

.quick-view form .row .flex .qty{
   width: 7rem;
   padding:1rem;
   border:var(--border);
   font-size: 1.8rem;
   color:var(--black);
   border-radius: .5rem;
}

.quick-view form .row .flex .price{
   font-size: 2rem;
   color:var(--main-color);
}

.quick-view form .row .content .details{
   font-size: 1.6rem;
   color:var(--light-color);
   line-height: 2;
}  

.products .box-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 0.5rem;
    justify-content: center;
}

.products .box-container .box {
    position: relative;
    background-color: var(--white);
    box-shadow: var(--box-shadow);
    border-radius: 1rem;
    border: var(--border);
    padding: 2rem;
    overflow: hidden;
    transition: transform 0.3s;
    display: flex;
    flex-direction: column; /* Adiciona direção de coluna para alinhar conteúdo verticalmente */
    justify-content: space-between; /* Espaça elementos superiores e inferiores */
    display: flex;

}

.products .box-container .box img {
    height: 20rem;
    width: 100%;
    object-fit: contain;
    margin-bottom: 1rem;
}

.products .box-container .box .fa-heart,
.products .box-container .box .fa-eye {
    position: absolute;
    top: 1rem;
    height: 4.5rem;
    width: 4.5rem;
    line-height: 4.2rem;
    font-size: 2rem;
    background-color: var(--white);
    border: var(--border);
    border-radius: .5rem;
    text-align: center;
    color: var(--black);
    cursor: pointer;
    transition: .2s linear;
}

.products .box-container .box .fa-heart {
    right: -6rem;
}

.products .box-container .box .fa-eye {
    right: -6rem;
}

.products .box-container .box:hover .fa-heart,
.products .box-container .box:hover .fa-eye {
    background-color: var(--black);
    color: var(--white);
}

.products .box-container .box:hover .fa-heart {
    right: 1rem;
}

.products .box-container .box:hover .fa-eye {
    left: 1rem;
}

.products .box-container .box .name {
    font-size: 2rem;
    color: var(--black);
    margin-bottom: 1rem; /* Espaço abaixo do nome */
}

.products .box-container .box .details {
    margin-top: auto; /* Move os detalhes para o fim do contêiner */
}

.products .box-container .box .flex {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem; /* Espaço acima do contêiner flexível */
}

.products .box-container .box .flex .qty {
    width: 7rem;
    padding: 1rem;
    border: var(--border);
    font-size: 1.8rem;
    color: var(--black);
    border-radius: 0.5rem;
}

.products .box-container .box .flex .price {
    font-size: 2rem;
    color: var(--main-color);
    margin-left: auto; /* Alinha à direita */
}

.products .box-container .box .flex .add-to-cart {
    padding: 1rem 2rem;
    background-color: var(--main-color);
    color: var(--white);
    border: none;
    border-radius: 0.5rem;
    cursor: pointer;
    font-size: 1.8rem;
}
/* Rodapé com destaque profissional e moderno para Marketplace */
.marketplace-footer {
    margin-top: 12px;
    background: linear-gradient(135deg, #fff3cd, #ffe8a1);
    border: 1px solid #ffd36b;
    border-left: 5px solid #ff9900;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 15px;
    color: #333;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
    font-weight: 600;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    transition: all 0.3s ease;
    backdrop-filter: blur(2px);
}

.marketplace-footer:hover {
    background: linear-gradient(135deg, #ffecb3, #ffe28f);
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12);
}

.marketplace-footer i {
    color: #e68500;
    font-size: 18px;
    animation: pulse-icon 1.2s infinite alternate ease-in-out;
}

/* Animação leve no ícone */
@keyframes pulse-icon {
    from {
        transform: scale(1);
        opacity: 0.85;
    }
    to {
        transform: scale(1.15);
        opacity: 1;
    }
}

.recommendations {
    text-align: center;
    padding: 40px 20px;
    background-color: var(--main-color);
    color: #fff; /* Ajuste a cor do texto para branco para melhor contraste */
	border-radius: 1rem;
}

.recommendations h1 {
    margin-bottom: 10px;
    font-size: 24px;
    font-weight: bold;
}

.recommendations p {
    margin-bottom: 40px;
    font-size: 16px;
}

.recommendations-grid {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.recommendation-item {
    text-align: center;
    margin: 20px;
    flex: 1;
    min-width: 150px;
    max-width: 200px;
}

.recommendation-item img {
    width: 120px; /* Aumente o tamanho da imagem */
    height: 120px;
    margin-bottom: 10px;
}

.recommendation-item span {
    display: block;
    margin-top: 10px;
    font-weight: bold;
    font-size: 14px;
    color: var(--white); /* Ajuste a cor do texto para branco */
}

.form-container form{
   background-color: var(--white);
   padding:2rem;
   border-radius: .5rem;
   border:var(--border);
   box-shadow: var(--box-shadow);
   text-align: center;
   margin:0 auto;
   max-width: 50rem;
}

.form-container form h3{
   font-size: 2.5rem;
   text-transform: uppercase;
   color:var(--black);
}

.form-container form p{
   font-size: 2rem;
   color:var(--light-color);
   margin:1.5rem 0;
}

.form-container form .box{
   margin:1rem 0;
   background-color: var(--light-bg);
   padding:1.4rem;
   font-size: 1.8rem;
   color:var(--black);  
   width: 100%;
   border-radius: .5rem;
}

.about .row{
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   gap:1.5rem;
}

.about .row .image{
   flex:1 1 40rem;
}

.about .row .image img{
   width: 100%;
}

.about .row .content{
   flex:1 1 40rem;
}

.about .row .content h3{
   font-size: 3rem;
   color:var(--black);
}

.about .row .content p{
   line-height: 2;
   font-size: 1.5rem;
   color:var(--light-color);
   padding:1rem 0;
}

.about .row .content .btn{
   display: inline-block;
   width: auto;
}

.reviews .slide{
   padding:2rem;
   text-align: center;
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   border-radius: .5rem;
   border:var(--border);
   margin-bottom: 5rem;
   user-select: none;
}

.reviews .slide img{
   height: 10rem;
   width: 10rem;
   border-radius: 50%;
   margin-bottom: .5rem;
}

.reviews .slide p{
   padding:1rem 0;
   line-height: 2;
   font-size: 1.5rem;
   color:var(--light-color);
}

.reviews .slide .stars{
   display: inline-block;
   margin-bottom: 1rem;
   background-color: var(--light-bg);
   padding:1rem 1.5rem;
   border-radius: .5rem;
}

.reviews .slide .stars i{
   margin:0 .3rem;
   font-size: 1.7rem;
   color:var(--orange);
}

.reviews .slide h3{
   font-size: 2rem;
   color:var(--black);
}
    .manage-users {
        font-family: Arial, sans-serif;
        background-color: #fff;
        padding: 20px;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        text-align: center;
    }

    .manage-users h1 {
        font-size: 24px;
        color: #333;
        margin-bottom: 20px;
    }

    .manage-users table {
        width: 100%;
        border-collapse: collapse;
    }

    .manage-users table th,
    .manage-users table td {
        padding: 14px;
        text-align: center;
        color: #555;
        font-size: 14px;
    }

    .manage-users table th {
        background-color: #3498db;
        color: #fff;
        font-weight: bold;
    }

    .manage-users table tr:nth-child(even) {
        background-color: #f2f2f2;
    }

    .manage-users table tr:hover {
        background-color: #ddd;
    }

    .manage-users table a {
        color: #3498db;
        text-decoration: none;
    }

    .manage-users table a:hover {
        text-decoration: underline;
    }

    .manage-users .menu-container {
        position: relative;
        display: inline-block;
    }

    .manage-users .menu-dropdown {
        display: none;
        position: absolute;
        right: 0;
        background-color: #fff;
        box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2);
        z-index: 1;
        border-radius: 4px;
        overflow: hidden;
        width: 150px;
    }

    .manage-users .menu-dropdown a {
        color: #333;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
        background-color: #fff;
        text-align: left;
        box-sizing: border-box;
    }

    .manage-users .menu-dropdown a:hover {
        background-color: #f1f1f1;
    }

    .manage-users .menu-container:hover .menu-dropdown {
        display: block;
    }

    .manage-users .menu-button {
        background-color: transparent;
        border: none;
        cursor: pointer;
        color: #3498db;
        font-size: 16px;
        padding: 10px;
        border-radius: 4px;
    }

    .manage-users .menu-dropdown a:hover,
    .manage-users .menu-dropdown form:hover {
        background-color: #3498db;
        color: #fff;
    }

    .manage-users .menu-dropdown a {
        text-decoration: none; /* Remove o sublinhado */
    }
	        .user-counts {
            display: flex;
            gap: 15px;
            margin-bottom: 15px;
            justify-content: center;
        }
    .manage-users .menu-dropdown a {
        text-decoration: none; /* Remove o sublinhado */
    }
		.status-info {
    margin: 5px 0;
    font-size: 14px;
}

.status-info span {
    font-weight: bold;
    color: #3498db; /* Cor azul para destacar */
}
.manage-users .menu-container:hover .menu-dropdown {
    display: block;
}

.faq .box-container{
   display: flex;
   flex-wrap: wrap;
   gap: 2rem;
   align-items: flex-start;
}

.faq .box-container .box{
   flex: 1 1 40rem;
   box-shadow: var(--box-shodow);
}

.faq .box-container .box h3{
   padding: 1.5rem 2rem;
   font-size: 2rem;
   background-color: var(--black);
   color: var(--white);
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 1rem;
   cursor: pointer;
}

.faq .box-container .box p{
   font-size: 1.6rem;
   color: var(--light-color);
   background-color: var(--white);
   padding: 1.5rem 2rem;
   line-height: 1.5;
   display: none;
}
.faq .box-container .box.active p{
   display: block;
}

.faq .box-container .box.active h3{
   background-color: var(--main-color);
}
.newsletter-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #2980b9; /* azul principal */
    color: white;
    padding: 25px 40px;
    border-radius: 12px;
    max-width: 1200px;
    margin: 30px auto;
    gap: 25px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* ======== ÍCONES ======== */
.icon-group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.icon-group .icon-box {
    width: 55px;
    height: 55px;
    background-color: #1f6694; /* tom mais escuro */
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
}

.icon-group .icon-box img {
    width: 28px;
    height: 28px;
    filter: brightness(0) invert(1);
}

.icon-group .icon-box:hover {
    background-color: #3498db; /* tom mais claro ao hover */
}

/* ======== TEXTO ======== */
.text-content {
    flex: 1;
    font-size: 16px;
    line-height: 1.5;
}

.text-content strong {
    font-weight: 700;
}

/* ======== BOTÃO ======== */
.newsletter-button {
    display: inline-block;
    padding: 16px 32px;
	font-weight: bold;
	font-size:1.2rem;
    background-color: #fff;
    color: #2980b9;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    text-decoration: none;

}

.newsletter-button:hover {
    background-color: var(--main-color);
    color: #fff;
	border: 1px solid #fff; /* Adiciona borda branca ao hover */
}

/* ======== RESPONSIVO ======== */
@media (max-width: 768px) {
    .newsletter-banner {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }

    .icon-group {
        justify-content: center;
    }
}
.campaign .promo-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #2980b9;;
    color: var(--white);
    padding: 20px;
    border-radius: 1rem;
    margin-bottom: 20px;
    gap: 20px; /* Adiciona um espaço entre a imagem e o texto */
}

.campaign .promo-box .promo-content {
    flex: 1;
    padding-right: 20px;
}

.campaign .promo-box .promo-image {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
}

.campaign .promo-title {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
}

.campaign .promo-details {
    font-size: 18px;
    margin-bottom: 10px;
}

.campaign .promo-description {
    font-size: 14px;
    margin-bottom: 20px;
}

.campaign .promo-btn {
    display: inline-block;
    padding: 16px 32px;
	font-weight: bold;
	font-size:1.2rem;
    background-color: #fff;
    color: #2980b9;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    text-decoration: none;
}

.campaign .promo-btn:hover {
    background-color: var(--main-color);
    color: #fff;
	border: 1px solid #fff; /* Adiciona borda branca ao hover */
}

.contact form{
   padding:2rem;
   text-align: center;
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   border-radius: 2rem;
   border:var(--border);
   max-width: 50rem;
   margin:0 auto;
}

.contact form h3{
   margin-bottom: 1rem;
   text-transform: capitalize;
   font-size: 2.5rem;
   color:var(--black);
}

.contact form .box {
    margin: 1.5rem 0; /* Aumenta a margem entre os elementos */
    width: 100%;
    background-color: #fff; /* Fundo branco */
    padding: 1.6rem 0; /* Padding vertical */
    padding-left: 1rem; /* Padding à esquerda */
    font-size: 1.6rem; /* Ajusta o tamanho da fonte */
    color: #333; /* Cor do texto */
    border-radius: 0; /* Remove bordas arredondadas */
    border-bottom: 2px solid #ddd; /* Adiciona uma borda inferior */
    transition: all 0.3s ease; /* Adiciona uma transição suave para o efeito de foco */
}

.contact form .box:focus-within {
    border-bottom-color: #2980b9; /* Altera a cor da borda inferior ao focar */
    background-color: #f9f9f9; /* Altera a cor de fundo ao focar */
}

.contact form .box input, 
.contact form .box textarea {
    border: none; /* Remove as bordas padrão dos campos de entrada */
    outline: none; /* Remove a borda ao focar */
    width: 100%; /* Garante que os campos preencham a largura da caixa */
    background: none; /* Remove a cor de fundo padrão */
    font-size: inherit; /* Herda o tamanho da fonte da caixa */
    color: inherit; /* Herda a cor do texto da caixa */
}

.contact form .box::placeholder {
    color: #aaa; /* Cor do texto do placeholder */
}

.contact form textarea{
   height: 15rem;
   resize: none;
}

.search-form form{
   display: flex;
   gap:1rem;
}

.search-form form input{
   width: 100%;
   border:var(--border);
   border-radius: .5rem;
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   padding:1.4rem;
   font-size: 1.8rem;
   color:var(--black);
}

.search-form form button{
   font-size: 2.5rem;
   height: 5.5rem;
   line-height: 5.5rem;
   background-color: var(--main-color);
   cursor: pointer;
   color:var(--white);
   border-radius: .5rem;
   width: 6rem;
   text-align: center;
}

.search-form form button:hover{
   background-color: var(--black);
}

.wishlist-total{
   max-width: 50rem;
   margin:0 auto;
   margin-top: 3rem;
   background-color: var(--white);
   border:var(--border);
   border-radius: .5rem;;
   padding:2rem;
   text-align: center;
}

.wishlist-total p{
   font-size: 2.5rem;
   color:var(--black);
   margin-bottom: 2rem;
}

.wishlist-total p span{
   color:var(--red);
}

.shopping-cart .fa-edit{
   height: 4.5rem;
   border-radius: .5rem;
   background-color: var(--orange);
   width: 5rem;
   font-size: 2rem;
   color:var(--white);
   cursor: pointer;
}

.shopping-cart .fa-edit:hover{
   background-color: var(--black);
}

.shopping-cart .sub-total{
   margin:2rem 0;
   font-size: 2rem;
   color:var(--light-color);
}

.shopping-cart .sub-total span{
   color:var(--red);
}

.cart-total{
   max-width: 50rem;
   margin:0 auto;
   margin-top: 3rem;
   background-color: var(--white);
   border:var(--border);
   border-radius: .5rem;;
   padding:2rem;
   text-align: center;
}

.cart-total p{
   font-size: 2.5rem;
   color:var(--black);
   margin-bottom: 2rem;
}

.cart-total p span{
   color:var(--red);
}

.display-orders{
   text-align: center;
   padding-bottom: 0;
}

.display-orders p{
   display: inline-block;
   padding:1rem 2rem;
   margin:1rem .5rem;
   font-size: 2rem;
   text-align: center;
   border:var(--border);
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   border-radius: .5rem;
}

.display-orders p span{
   color:var(--red);
}

.display-orders .grand-total{
   margin-top: 1.5rem;
   margin-bottom: 2.5rem;
   font-size: 2.5rem;
   color:var(--light-color);
}

.display-orders .grand-total span{
   color:var(--red);
}

.checkout-orders form{
   padding:2rem;
   border:var(--border);
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   border-radius: .5rem;
}

.checkout-orders form h3{
   border-radius: .5rem;
   background-color: var(--black);
   color:var(--white);
   padding:1.5rem 1rem;
   text-align: center;
   text-transform: uppercase;
   margin-bottom: 2rem;
   font-size: 2.5rem;
}

.checkout-orders form .flex{
   display: flex;
   flex-wrap: wrap;
   gap:1.5rem;
   justify-content: space-between;
}

.checkout-orders form .flex .inputBox{
   width: 49%;
}

.checkout-orders form .flex .inputBox .box{
   width: 100%;
   border:var(--border);
   border-radius: .5rem;
   font-size: 1.8rem;
   color:var(--black);
   padding:1.2rem 1.4rem;
   margin:1rem 0;
   background-color: var(--light-bg);
}

.checkout-orders form .flex .inputBox span{
   font-size: 1.8rem;
   color:var(--light-color);
}

.orders .box-container{
   display: flex;
   flex-wrap: wrap;
   gap:1.5rem;
   align-items: flex-start;
}

.orders .box-container .box{
   padding:1rem 2rem;
   flex:1 1 40rem;
   border:var(--border);
   background-color: var(--white);
   box-shadow: var(--box-shadow);
   border-radius: .5rem;
}

.orders .box-container .box p{
   margin:.5rem 0;
   line-height: 1.8;
   font-size: 2rem;
   color:var(--light-color);
}

.orders .box-container .box p span{
   color:var(--main-color);
}

.footer{
   background-color: var(--white);
   /* padding-bottom: 7rem; */
}

.footer .grid{
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(27rem, 1fr));
   gap:1.5rem;
   align-items: flex-start;
}

.footer .grid .box h3{
   font-size: 2rem;
   color:var(--black);
   margin-bottom: 2rem;
   text-transform: capitalize;
}

.footer .grid .box a{
   display: block;
   margin:1.5rem 0;
   font-size: 1.7rem;
   color:var(--light-color);
}

.footer .grid .box a i{
   padding-right: 1rem;
   color:var(--main-color);
   transition: .2s linear;
}

.footer .grid .box a:hover{
   color:var(--main-color);
}

.footer .grid .box a:hover i{
   padding-right: 2rem;
}

.footer .credit{
   text-align: center;
   padding: 2.5rem 2rem;
   border-top: var(--border);
   font-size: 2rem;
   color:var(--black);
}

.footer .credit span{
   color:var(--main-color);
}






@media (max-width:991px){

   html{
      font-size: 55%;
   }

}

@media (max-width:768px){

   #menu-btn{
      display: inline-block;
   }

   .header .flex .navbar{
      position: absolute;
      top:99%; left:0; right:0;
      border-top: var(--border);
      border-bottom: var(--border);
      background-color: var(--white);
      transition: .2s linear;
      clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
   }

   .header .flex .navbar.active{
      clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
   }

   .header .flex .navbar a{
      display: block;
      margin:2rem;
   }

   .home-bg .home .slide .content{
      text-align: center;
   }

   .home-bg .home .slide .content h3{
      font-size: 3rem;
   }

}
.comments-container .comment-title{
   background-color: var(--black);
   color:var(--white);
   padding:1.5rem;
   font-size: 2rem;
   border-radius: .5rem;
   border-bottom-left-radius: 0;
   border-bottom-right-radius: 0;
}

.comments-container .add-comment{
   border:var(--border);
   margin-bottom: 2rem;
   box-shadow: var(--box-shadow);
   border-radius: .5rem;
   padding:2rem;
   background-color: var(--white);
   border-top-left-radius: 0;
   border-top-right-radius: 0;
}

.comments-container .add-comment p{
   font-size: 2rem;
   color:var(--light-color);
   margin-bottom: 1rem;
}

.comments-container .add-comment p i{
   margin-right:1rem;
}

.comments-container .add-comment p a{
   color:var(--main-color);
}

.comments-container .add-comment p a:hover{
   text-decoration: underline;
   color:var(--black);
}

.comments-container .add-comment textarea{
   width: 100%;
   border-radius: .5rem;
   background-color: var(--light-bg);
   padding:1.5rem 2rem;
   margin:1rem 0;
   border: var(--border);
   font-size: 2rem;
   color:var(--black);
   height: 15rem;
   resize:none;
}

.comments-container .user-comments-container{
   display: grid;
   gap:2.5rem;
   border:var(--border);
   box-shadow: var(--box-shadow);
   border-radius: .5rem;
   padding:2rem;
   background-color: var(--white);
   border-top-left-radius: 0;
   border-top-right-radius: 0;
}

.comments-container .user-comments-container .show-comments .post-title{
   margin-bottom: 1rem;
   font-size: 2rem;
   color:var(--light-color);
}

.comments-container .user-comments-container .show-comments .post-title span{
   color:var(--black);
   line-height: 1.5;
}

.comments-container .user-comments-container .show-comments .post-title a{
   color:var(--main-color);
}

.comments-container .user-comments-container .show-comments .post-title a:hover{
   text-decoration: underline;
}

.comments-container .user-comments-container .show-comments .comment-user{
   display: flex;
   align-items: center;
   gap:1rem;
   margin-bottom: 1.5rem;
}

.comments-container .user-comments-container .show-comments .comment-user i{
   text-align: center;
   height: 5rem;
   width: 5rem;
   line-height: 4.7rem;
   font-size: 2rem;
   border:var(--border);
   border-radius: .5rem;
   background-color: var(--light-bg);
   color:var(--black);
}

.comments-container .user-comments-container .show-comments .comment-user span{
   font-size: 2rem;
   color:var(--main-color);
}

.comments-container .user-comments-container .show-comments .comment-user div{
   font-size: 1.5rem;
   margin-top: .2rem;
   color:var(--light-color);
}

.comments-container .user-comments-container .show-comments .comment-text{
   line-height: 1.5;
   font-size: 1.7rem;
   color:var(--light-color);
}

.comments-container .user-comments-container .show-comments .comment-box{
   border-radius: .5rem;
   background-color: var(--light-bg);
   padding:1.5rem 2rem;
   font-size: 2rem;
   color:var(--black);
   width: 100%;
   white-space: pre-line;
   line-height: 1.5;
   border: var(--border);
}

.comments-container .user-comments-container .show-comments textarea{
   resize: none;
   border:var(--border);
}

.comment-edit-form{
   padding-bottom: 0;
}

.comment-edit-form p{
   background-color: var(--black);
   color:var(--white);
   padding:1.5rem;
   font-size: 2rem;
   border-radius: .5rem;
   border-bottom-left-radius: 0;
   border-bottom-right-radius: 0;
}

.comment-edit-form form{
   border-bottom-left-radius: .5rem;
   border-bottom-right-radius: .5rem;
   border:var(--border);
   padding:2rem;
   background-color: var(--white);
   box-shadow: var(--box-shadow);
}

.comment-edit-form form textarea{
   font-size: 2rem;
   color:var(--black);
   line-height: 1.5;
   height: 15rem;
   width: 100%;
   resize: none;
   background-color: var(--light-bg);
   border:var(--border);
   border-radius: .5rem;
   padding:1.5rem;
   margin-bottom: .5rem;
}


@media (max-width:450px){

   html{
      font-size: 50%;
   }

   .heading{
      font-size: 2rem;
   }

   .flex-btn{
      flex-flow: column;
      gap:0;
   }

   .quick-view form .row .image-container .sub-image img{
      width: 8rem;
   }

   .checkout-orders form .flex .inputBox{
      width: 100%;
   }

}