/*
Theme Name: Blackville Theme
... (seu cabeçalho de tema) ...
*/

/* --- Reset Básico e Padrões --- */
body { margin: 0; font-family: Arial, sans-serif; color: #333; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; margin: 0; padding: 0; }
.header-container { max-width: 1200px; margin: 0 auto; padding: 0 15px; display: flex; justify-content: space-between; align-items: center; width: 100%; }

/* =================================================================
   HEADER DESKTOP
   ================================================================= */
.header-desktop { background-color: #000; color: #fff; }
.top-bar { background-color: #111; padding: 8px 0; font-size: 12px; }
.top-bar__promo a { font-weight: bold; }
.top-bar__links a, .top-bar__social a { margin: 0 8px; }
.main-navigation { padding: 15px 0; border-top: 1px solid #333; }
/* --- Alinhamento Estrutural da Navegação Principal --- */
.main-nav__logo {
    flex-shrink: 0; /* Impede que a logo encolha e suma */
}

.main-nav__menu {
    flex-grow: 1; /* Faz o menu ocupar o espaço flexível no centro */
    display: flex;
    justify-content: center; /* Centraliza a lista de links do menu */
}

.main-nav__tools {
    flex-shrink: 0; /* Impede que as ferramentas encolham */
}
.main-nav__logo img { height: 25px; width: auto; display: block; }
.main-nav__menu ul { display: flex; }
.main-nav__menu li { position: relative; } /* Para o dropdown */
.main-nav__menu a { padding: 10px 15px; text-transform: uppercase; font-weight: bold; font-size: 14px; display: block; }
/* Estilo do Dropdown */
.main-nav__menu ul ul { display: none; position: absolute; background-color: #111; list-style: none; padding: 0; margin: 0; min-width: 180px; z-index: 1000; }
.main-nav__menu li:hover > ul { display: block; }
.main-nav__menu ul ul li { width: 100%; }
.main-nav__menu ul ul a { padding: 10px 15px; }
.main-nav__user-icons { display: flex; align-items: center; }
.main-nav__user-icons a { margin-left: 15px; }

/* =================================================================
   HEADER MOBILE
   ================================================================= */
.header-mobile { display: none; } /* Escondido por padrão */

/* =================================================================
   MENU OFF-CANVAS (MOBILE)
   ================================================================= */
.mobile-menu-container { position: fixed; top: 0; left: -280px; /* Começa fora da tela */ width: 280px; height: 100%; background-color: #111; color: #fff; padding: 20px; transition: left 0.3s ease-in-out; z-index: 9998; }
body.mobile-menu-active .mobile-menu-container { left: 0; /* Entra na tela */ }
.mobile-menu-nav a { padding: 10px 0; display: block; text-transform: uppercase; }

/* =================================================================
   MEDIA QUERY PARA MOBILE
   ================================================================= */
@media (max-width: 992px) {
    .header-desktop { display: none; }
    .header-mobile { display: block; background-color: #000; color: #fff; padding: 10px 0; }
    .mobile-top-row { display: flex; justify-content: space-between; align-items: center; padding: 0 15px; }
    .mobile-nav__logo img { height: 25px; width: auto; }
    .mobile-nav__user-icons { display: flex; align-items: center; }
    .mobile-nav__user-icons a { margin-left: 15px; }
    .mobile-nav__hamburger { display: flex; flex-direction: column; justify-content: space-around; width: 24px; height: 24px; cursor: pointer; z-index: 9999; }
    .mobile-nav__hamburger span { width: 100%; height: 2px; background-color: #fff; }
}
/* =================================================================
   REFINAMENTO DAS FERRAMENTAS DO HEADER (BUSCA E ÍCONES)
   ================================================================= */

/* --- Correção do Alinhamento Geral das Ferramentas --- */
.main-nav__tools {
    display: flex;
    align-items: center;
    flex-shrink: 0; /* Impede que o container encolha */
}

/* --- Estilização Avançada da Barra de Busca --- */
.main-nav__search .search-form {
    display: flex;
    border: 1px solid #ccc; /* Borda externa sutil */
    border-radius: 4px;
    overflow: hidden;
    background-color: #fff;
}

.main-nav__search select,
.main-nav__search .search-field {
    background-color: #fff;
    color: #333;
    border: none;
    padding: 8px 12px;
    font-size: 14px;
    -webkit-appearance: none; /* Remove o estilo padrão do navegador */
    -moz-appearance: none;
    appearance: none;
}

.main-nav__search select {
    border-right: 1px solid #eee;
    padding-right: 25px; /* Espaço para a seta */
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.4-12.8z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: right 10px top 50%;
    background-size: .65em auto;
}

.main-nav__search .search-field {
    border-radius: 0; /* Reseta o radius para encaixar */
}

.main-nav__search .search-field::placeholder {
    color: #999;
}

.main-nav__search .search-submit {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0 12px;
    color: #333; /* Cor do ícone de lupa */
}

/* --- Ajuste dos ícones de usuário --- */
.main-nav__user-icons {
    display: flex;
    align-items: center;
    margin-left: 20px; /* Aumenta o espaço entre a busca e os ícones */
}

.main-nav__user-icons a {
    margin-left: 18px; /* Espaamento entre os ícones */
}

/* =================================================================
FASE 6: ORDENACAO E PAGINACAO (V6 PAGINACAO FINAL)
================================================================= */

/* --- Esconde "Mostrando 1-6 de X resultados" --- */
.woocommerce-result-count {
display: none;
}
.woocommerce-page .woocommerce-before-shop-loop {
display: flex;
justify-content: flex-end;
align-items: center;
margin-bottom: 20px;
}
.woocommerce-ordering {
float: none;
margin-bottom: 0;
}
.woocommerce-ordering select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: #f0f0f0;
border: 1px solid #e0e0e0;
border-radius: 4px;
padding: 10px 35px 10px 15px;
font-size: 14px;
font-weight: 500;
color: #333;
cursor: pointer;
background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%2Dxmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%2Dwidth%3D%22292.4%22%2Dheight%3D%22292.4%22%3E%3Cpath%2Dfill%3D%22%23333333%22%2Dd%3D%22M287%2D69.4a17.6%2D17.6%2D0%2D0%2D0-13-5.4H18.4c-5%2D0-9.3%2D1.8-12.9%2D5.4A17.6%2D17.6%2D0%2D0%2D0%2D0%2D82.2c0%2D5%2D1.8%2D9.3%2D5.4%2D12.9l128%2D127.9c3.6%2D3.6%2D7.8%2D5.4%2D12.8%2D5.4s9.2-1.8%2D12.8-5.4L287%2D95c3.5-3.5%2D5.4-7.8%2D5.4-12.8%2D0-5-1.9-9.2-5.4-12.8z%22%2F%3E%3C%2Fsvg%3E');
background-repeat: no-repeat;
background-position: right 12px top 50%;
background-size: .65em auto;
}
.woocommerce-pagination {
margin-top: 60px;
}
.woocommerce-pagination ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
justify-content: center;
border: none;
}
.woocommerce-pagination ul li {
margin: 0 5px;
border: none;
}
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span {
text-decoration: none;
display: flex;
align-items: center;
justify-content: center;
min-width: 45px;
height: 45px;
box-sizing: border-box;
background-color: #FFFFFF;
color: #000;
border: 2px solid #000;
border-radius: 4px;
font-weight: 700;
font-size: 16px;
transition: all 0.2s ease;
line-height: 1;
padding: 0 5px;
}
.woocommerce-pagination ul li a.prev,
.woocommerce-pagination ul li a.next {
padding: 0;
width: 45px;
}
.woocommerce-pagination ul li a.prev::before {
content: '\00AB';
}
.woocommerce-pagination ul li a.next::before {
content: '\00BB';
}
.woocommerce-pagination ul li a.prev,
.woocommerce-pagination ul li a.next {
text-indent: -9999px;
overflow: hidden;
position: relative;
}
.woocommerce-pagination ul li a.prev::before,
.woocommerce-pagination ul li a.next::before {
text-indent: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.woocommerce-pagination ul li a:hover {
background-color: #000;
color: #FFF;
border-color: #000;
}
.woocommerce-pagination ul li span.current {
background-color: #000 !important;
color: #FFF !important;
border-color: #000 !important;
}
.woocommerce-pagination ul li a:focus,
.woocommerce-pagination ul li span.current:focus {
outline: none !important;
box-shadow: none !important;
}
/*
=================================================================
FASEFINAL:LAYOUTDALOJAERESPONSIVO(CONSOLIDADO)
=================================================================
*/

/*---1.FixBannerFull-Width---*/
body.woocommerce-shop .site-main,
body.tax-product_cat .site-main{
max-width:none!important;
padding:0!important;
margin:0!important;
}
.blackville-shop-banner-container.entry-content{
max-width:100%;
margin-bottom:30px;
padding:0;
box-sizing:border-box;
}
.blackville-shop-banner-container.entry-content p,
.blackville-shop-banner-container.entry-content figure{
margin:0;
padding:0;
line-height:1;
}
.blackville-shop-banner-container.entry-content img {
width: 100%;
height: auto; /* Altura automtica por padrão (mobile primeiro) */
object-fit: cover;
display: block;
}

@media (min-width: 769px) {
.blackville-shop-banner-container.entry-content img {
height: 450px; /* Aplica altura fixa apenas em desktop */
}
}

/*---2.EstruturaBase(Flexbox)---*/
.woocommerce-page ul.products{
display:flex!important;
flex-wrap:wrap!important;
margin:0!important;
padding:0!important;
}
.woocommerce-page ul.products li.product{
float:none!important;
padding:0!important;
display:flex!important;
flex-direction:column!important;
justify-content:space-between!important;
height:100%!important;
box-sizing:border-box;
}
.products .product .blackville-quick-view-button{
margin-top:auto!important;
}

/*---3.LayoutDesktop(3Colunas)---*/
@media(min-width:769px){
.blackville-shop-container{
display:flex;
width:100%;
max-width:none;
padding:0 40px;
margin:30px auto;
box-sizing:border-box;
}
.blackville-shop-sidebar{
width:25%;
flex-shrink:0;
padding-right:30px;
box-sizing:border-box;
}
.blackville-shop-products{
width:75%;
flex-shrink:0;
}
.woocommerce-page ul.products{
justify-content:space-between;
}
.woocommerce-page ul.products li.product{
width:31.5%!important;
margin-left:0!important;
margin-right:0!important;
margin-top:0!important;
margin-bottom:20px!important;
padding:0!important;
}
.woocommerce-page .woocommerce-before-shop-loop .button.mobile-filter-trigger{
display:none!important;
}
.mobile-filter-modal,
.mobile-filter-overlay{
display:none!important;
}
}

/*---4.LayoutMobile(2Colunas)---*/
@media(max-width:768px){
.blackville-shop-sidebar{
display:none;
}
.blackville-shop-container{
padding:0 15px;
flex-direction:column;
margin:20px auto;
}
.blackville-shop-products{
width:100%;
}
.woocommerce-page .woocommerce-before-shop-loop{
justify-content:space-between;
gap:10px;
}
.woocommerce-ordering{
flex-grow:1;
max-width:50%;
}
.woocommerce-ordering select{
width:100%;
}
.woocommerce-page .woocommerce-before-shop-loop .button.mobile-filter-trigger{
display:block;
background-color:#000!important;
color:#FFF!important;
border:1px solid #000!important;
border-radius:4px;
padding:10px 15px;
font-size:14px;
font-weight:500;
cursor:pointer;
flex-grow:1;
max-width:50%;
text-align:center;
margin-bottom:0;
}
.woocommerce-page ul.products{
}
.woocommerce-page ul.products li.product{
width:48%!important;
margin:0 1% 20px 1%!important;
padding:0!important;
box-sizing:border-box!important;
}
.mobile-filter-overlay{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.5);
z-index:10000;
}
.mobile-filter-modal{
position:fixed;
top:0;
left:0;
width:300px;
max-width:85%;
height:100%;
background:#FFF;
z-index:10001;
transform:translateX(-100%);
transition:transform 0.3s ease-in-out;
display:flex;
flex-direction:column;
}
.mobile-filter-header{
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 20px;
border-bottom:1px solid #eee;
}
.mobile-filter-header h4{
margin:0;
font-size:18px;
font-weight:700;
}
.mobile-filter-close{
background:none;
border:none;
font-size:24px;
cursor:pointer;
line-height:1;
padding:0;
}
.mobile-filter-content{
padding:20px;
overflow-y:auto;
flex-grow:1;
}
body.mobile-filters-active .mobile-filter-overlay{
display:block;
}
body.mobile-filters-active .mobile-filter-modal{
transform:translateX(0);
}
}
/*=================================================================
FASE4-PLANO B:MELHORANDOOPADRAOWOOCOMMERCE
=================================================================*/

/*---EstiloGeraldoWidget---*/
.blackville-shop-sidebar .widget,
.mobile-filter-content .widget{
border-bottom:1px solid #eee;
margin-bottom:25px;
padding-bottom:25px;
}
.blackville-shop-sidebar .widget:last-child,
.mobile-filter-content .widget:last-child{
border-bottom:none;
margin-bottom:0;
}

/*---TitulodoWidget---*/
.blackville-shop-sidebar .widget-title,
.mobile-filter-content .widget-title{
font-size:16px;
font-weight:700;
text-transform:uppercase;
color:#000;
margin-bottom:15px;
}

/*---FiltrodePreco,Botao,Categorias(Mantido)---*/
.blackville-shop-sidebar .widget_price_filter .price_slider_wrapper .ui-widget-content,
.mobile-filter-content .widget_price_filter .price_slider_wrapper .ui-widget-content{
background-color:#f0f0f0;
border:none;
}
.blackville-shop-sidebar .widget_price_filter .price_slider_wrapper .ui-slider-range,
.mobile-filter-content .widget_price_filter .price_slider_wrapper .ui-slider-range{
background-color:#000;
}
.blackville-shop-sidebar .widget_price_filter .price_slider_wrapper .ui-slider-handle,
.mobile-filter-content .widget_price_filter .price_slider_wrapper .ui-slider-handle{
background-color:#000;
border:none;
border-radius:50%;
top:-0.4em;
}
.blackville-shop-sidebar .widget_price_filter .button,
.mobile-filter-content .widget_price_filter .button{
background-color:#000 !important;
color:#FFF !important;
border:none !important;
border-radius:4px;
padding:12px 15px;
font-weight:600;
cursor:pointer;
transition:all 0.2s ease;
width:100%;
text-align:center;
font-size:14px;
}
.blackville-shop-sidebar .widget_price_filter .button:hover,
.mobile-filter-content .widget_price_filter .button:hover{
background-color:#333 !important;
}
.blackville-shop-sidebar .widget_price_filter .price_label,
.mobile-filter-content .widget_price_filter .price_label{
color:#333;
font-weight:500;
}
.blackville-shop-sidebar .widget_product_categories ul,
.mobile-filter-content .widget_product_categories ul{
list-style:none;
padding:0;
margin:0;
}
.blackville-shop-sidebar .widget_product_categories ul li,
.mobile-filter-content .widget_product_categories ul li{
margin-bottom:8px;
}
.blackville-shop-sidebar .widget_product_categories ul li a,
.mobile-filter-content .widget_product_categories ul li a{
color:#333;
text-decoration:none;
font-weight:500;
}
.blackville-shop-sidebar .widget_product_categories ul li a:hover,
.mobile-filter-content .widget_product_categories ul li a:hover{
color:#000;
}
.blackville-shop-sidebar .widget_product_categories ul li.current-cat a,
.mobile-filter-content .widget_product_categories ul li.current-cat a{
color:#000;
font-weight:700;
}
/*---(FimdoCódigoRepetido)---*/


/*---BaseparaFiltrosdeAtributo---*/
.blackville-shop-sidebar .woocommerce-widget-layered-nav ul,
.mobile-filter-content .woocommerce-widget-layered-nav ul{
list-style:none;
padding:0;
margin:0;
display:flex;
flex-wrap:wrap;
gap:8px;/*AregraprinciPALquevocêpediu:margem/espaçamento*/
}
.blackville-shop-sidebar .woocommerce-widget-layered-nav li,
.mobile-filter-content .woocommerce-widget-layered-nav li{
margin-bottom:0;
}

/*---(SOLUÇÃO PLANO B)ESTILIZARTODOSOSFILTROSCOMO"BOTÕES"---*/
/*Esteestiloseaplicaatodososfiltros(Cor,Tamanho,etc)*/
.blackville-shop-sidebar .woocommerce-widget-layered-nav li a,
.mobile-filter-content .woocommerce-widget-layered-nav li a{
color:#333;
font-weight:500;
background-color:#f0f0f0;/*Fundocinza*/
border:1px solid #e0e0e0;/*Bordaparaacaixa*/
border-radius:4px;/*Caixacomcantosleves*/
font-size:14px;
text-align:center;
padding:20px 25px;/*Espaçamentointerno*/
display:block;/*Fazolinkpreencherobotão*/
text-decoration:none;
transition:all 0.2s ease;
}
.blackville-shop-sidebar .woocommerce-widget-layered-nav li a:hover,
.mobile-filter-content .woocommerce-widget-layered-nav li a:hover{
background-color:#e0e0e0;
color:#000;
}
/*Selecionado*/
.blackville-shop-sidebar .woocommerce-widget-layered-nav li.chosen a,
.mobile-filter-content .woocommerce-widget-layered-nav li.chosen a{
background-color:#000;/*Fundopreto*/
color:#FFF;
border-color:#000;
font-weight:600;
}
/*=================================================================
FASEFINAL:ESTILOSDOFOOTER(V3-GUTENBERG)
=================================================================*/

/* 1. Adiciona o "respiro" (padding) vertical ao Grupo do rodapé */
/* O .site-footer vem do seu footer.php, e o .wp-block-group é o grupo que você criou */
.site-footer .wp-block-group {
padding-top: 60px;
padding-bottom: 60px;
/*O paddinghorizontal é desnecessário,pois você já definiu1320pxde largura*/
}

/* 2. Garante que os títulos dentro do grupo sejam brancos */
.site-footer .wp-block-group .wp-block-heading {
color: #FFFFFF;
}

/* 3. Garante que o texto dos parágrafos (como o da logo) seja cinza */
.site-footer .wp-block-group p {
color: #a0a0a0;
}

/* 4. Garante que os links da lista sejam cinzas e brancos no hover */
.site-footer .wp-block-group .wp-block-list li {
color: #a0a0a0; /* Define a cor do texto da lista */
margin-bottom: 10px;
}
.site-footer .wp-block-group .wp-block-list li a {
color: #a0a0a0;
text-decoration: none;
transition: all 0.2s ease;
}
.site-footer .wp-block-group .wp-block-list li a:hover {
color: #FFFFFF;
}

/* 5. Estiliza o formulário fictício (para ficar igual ao da Insider) */
.rodape-form-ficticio{
display:flex;
width:100%;
border:1px solid #555;/*Borda cinza-escura*/
border-radius:4px;
overflow:hidden;
}
.rodape-form-ficticio input[type="email"]{
flex-grow:1;
border:none;
background-color:transparent;/*Fundo transparente (preto)*/
color:#FFFFFF;
padding:12px 15px;
font-size:14px;
min-width:0;
outline:none;
line-height:1.5;
}
.rodape-form-ficticio input[type="email"]::placeholder{
color:#a0a0a0;
opacity:1;
}
.rodape-form-ficticio button[type="submit"]{
background-color:#FFFFFF;/*Botao branco*/
color:#000000;
border:none;
border-left:1px solid #555;
padding:12px 20px;
font-size:14px;
font-weight:600;
text-transform:uppercase;
cursor:pointer;
transition:all 0.2s ease;
flex-shrink:0;
}
.rodape-form-ficticio button[type="submit"]:hover{
background-color:#f0f0f0;
}
/*=================================================================
CORRECAO:RESPONSIVODOFOOTER(PADDINGMOBILE)
=================================================================*/

@media(max-width:768px) {
/*
* Esta regra so afeta telas menores (mobile).
*/

/* 1. Adicionaa"margininterna"quevocepediu*/
.site-footer .wp-block-group {
padding-left: 20px;
padding-right: 20px;
}

/*
* 2. (Bonus) Melhora o formulariodeemailnomobile
*/

/* Fazo campoeo botao ficaremumembaixodooutro*/
.rodape-form-ficticio{
flex-direction:column;/*Empilhaos itens*/
border:none;/*Removeaborda"unificada"*/
}

/* Adicionabordadevoltaao campodeemail*/
.rodape-form-ficticio input[type="email"]{
border:1px solid #555;
border-radius:4px;
}

/* Adicionamargeme bordaao botao*/
.rodape-form-ficticio button[type="submit"]{
margin-top:10px;/*Espacoentreo campoeo botao*/
border-left:none;
border-radius:4px;
}
}
/*=================================================================
  FASE HOME: SLIDER COMPLETO (V-FLEX / autoHeight)
  =================================================================*/

/* 1. Estrutura Base do Slider */
.blackville-hero-slider {
    position: relative;
    width: 100%;
    /* A ALTURA FOI REMOVIDA - O 'autoHeight' cuida disso */
    overflow: hidden;
    background-color: #000;
}

/* 2. O Slide e a Imagem */
.blackville-hero-slider .swiper-slide {
    position: relative; /* O slide agora é o container */
    line-height: 0; /* Remove espaço extra da imagem */
}
.swiper-slide .slide-image {
    width: 100%; /* Imagem sempre 100% da largura */
    height: auto; /* Altura flexível, mantendo a proporção */
    display: block;
}

/* 3. Setas e Paginação */
.blackville-hero-slider .swiper-button-prev,
.blackville-hero-slider .swiper-button-next {
    color: #FFFFFF;
    background-color: rgba(0, 0, 0, 0.4);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    transition: background-color 0.2s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
}
/* ... (o resto das regras de setas e paginação se mantêm) ... */
.blackville-hero-slider .swiper-button-prev:hover,
.blackG-hero-slider .swiper-button-next:hover {
    background-color: rgba(0, 0, 0, 0.7);
}
.blackville-hero-slider .swiper-button-prev::after,
.blackville-hero-slider .swiper-button-next::after {
    font-size: 20px;
    font-weight: 900;
}
.blackville-hero-slider .swiper-pagination-bullet {
    background: #FFFFFF;
    opacity: 0.6;
    width: 10px;
    height: 10px;
}
.blackville-hero-slider .swiper-pagination-bullet-active {
    background: #FFFFFF;
    opacity: 1;
}


/* 4. Overlays "Inteligentes" */
.swiper-slide.text-light::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 1;
}
.swiper-slide.text-dark::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.3);
    z-index: 1;
}

/* 5. Conteúdo (Alinhamento e Posição) */
.swiper-slide .slide-content-wrapper {
    /* POSICIONAMENTO: Flutua sobre a imagem */
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2; 
    
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 40px;
    box-sizing: border-box;
}
.slide-content-wrapper.align-center {
    justify-content: center;
    text-align: center;
}
.slide-content-wrapper.align-left {
    justify-content: flex-start;
    text-align: left;
}
.slide-content-wrapper.align-right {
    justify-content: flex-end;
    text-align: right;
}

/* 6. Estilos de Texto (Desktop) */
.text-light .slide-content h2,
.text-dark .slide-content h2 {
    font-size: 48px;
    font-weight: 800;
    text-transform: uppercase;
    margin: 0 0 10px 0;
    line-height: 1.1;
}
.text-light .slide-content p,
.text-dark .slide-content p {
    font-size: 20px;
    margin: 0;
    line-height: 1.4;
}
.text-light .slide-content h2,
.text-light .slide-content p {
    color: #FFFFFF;
}
.text-dark .slide-content h2,
.text-dark .slide-content p {
    color: #000000;
}

/* 7. Estilos do Botão (Desktop) */
.text-light .slide-button {
    display: inline-block;
    background-color: #FFFFFF;
    color: #000000;
    padding: 12px 30px;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 20px;
    transition: all 0.2s ease;
}
.text-light .slide-button:hover {
    background-color: #000000;
    color: #FFFFFF;
    border: 1px solid #FFFFFF;
}
.text-dark .slide-button {
    display: inline-block;
    background-color: #000000;
    color: #FFFFFF;
    padding: 12px 30px;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 20px;
    transition: all 0.2s ease;
}
.text-dark .slide-button:hover {
    background-color: #FFFFFF;
    color: #000000;
    border: 1px solid #000000;
}

/* 8. Link de Slide Inteiro */
.slide-content .slide-full-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
}

/* 9. REGRAS DE MOBILE (Tablet) */
@media (max-width: 768px) {
    /* Diminui o padding geral */
    .swiper-slide .slide-content-wrapper {
        padding: 20px;
    }
    /* Diminui as fontes */
    .text-light .slide-content h2,
    .text-dark .slide-content h2 {
        font-size: 28px;
        margin-bottom: 5px;
    }
    .text-light .slide-content p,
    .text-dark .slide-content p {
        font-size: 14px;
    }
    /* Diminui o botão */
    .text-light .slide-button,
    .text-dark .slide-button {
        padding: 10px 20px;
        font-size: 14px;
        margin-top: 10px;
    }
}

/* 10. REGRAS DE MOBILE (Celular) */
@media (max-width: 480px) {
    /* (Não precisamos de altura fixa, autoHeight cuida disso) */
    /* Você pode adicionar mais reduções de fonte aqui se precisar */
}
/* =================================================================
   CARROSSEL DE PRODUTOS (NETFLIX STYLE)
   ================================================================= */

.blackville-carousel-section {
    padding: 40px 20px; /* Espaçamento da seção */
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden; /* Previne barra de rolagem horizontal na página */
}

.carousel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-right: 20px; /* Espaço para as setas não colarem */
}

.carousel-title {
    font-size: 24px;
    font-weight: 800;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

/* Estilo do Swiper para permitir o efeito "corte" */
.product-carousel-swiper {
    padding-bottom: 40px !important; /* Espaço para sombra e scrollbar */
    overflow: visible !important; /* Permite ver o 'próximo' fora da caixa */
}

/* --- A MÁGICA DO TAMANHO (Efeito Netflix Desktop - 3.5 Itens) --- */
.product-carousel-swiper .swiper-slide {
    height: auto; /* Altura flexível */
    
    /* MUDANÇA AQUI: */
    /* 29% garante que caibam 3 itens inteiros (81%) e sobre espaço para a metade do 4º */
    width: 29%; 
    
    margin-right: 20px; /* Espaço entre cards */
}

/* Garante que as imagens dentro dos cards não estiquem */
.product-carousel-swiper .swiper-slide .product img {
    width: 100%; /* Ocupa a largura total do seu contêiner (o card) */
    height: auto; /* Mantém a proporo da imagem */
    object-fit: contain; /* Adicionalmente, ajusta a imagem dentro do espaço se necessário, sem cortar */
}

/* O Card do produto dentro do slide */
.product-carousel-swiper .swiper-slide .product {
    width: 100% !important; /* Garante que o card ocupe o slide */
    margin: 0 !important;
}

/* Estilização das Setas do Carrossel (Pequenas e Discretas no topo) */
.carousel-arrows {
    display: flex;
    gap: 10px;
}
.carousel-prev, .carousel-next {
    position: static !important; /* Tira da posiço absoluta padrão */
    margin: 0 !important;
    width: 35px !important;
    height: 35px !important;
    background-color: transparent !important;
    border: 1px solid #000;
    border-radius: 50%;
    color: #000 !important;
}
.carousel-prev::after, .carousel-next::after {
    font-size: 14px !important;
    font-weight: bold;
}
.carousel-prev:hover, .carousel-next:hover {
    background-color: #000 !important;
    color: #FFF !important;
}

/* --- RESPONSIVO (MOBILE) --- */
@media (max-width: 768px) {
    .carousel-title {
        font-size: 20px;
    }
    
    /* No mobile, as setas somem (usamos o dedo) */
    .carousel-arrows {
        display: none; 
    }

    .blackville-carousel-section {
        padding: 30px 0 30px 15px; /* Padding esquerdo para alinhar, sem padding direito para vazar */
    }

    /* AQUI ACONTECE O EFEITO "UM E MEIO" */
    .product-carousel-swiper .swiper-slide {
        width: 80% !important; /* Mostra 80% da tela (o card + pontinha do próximo) */
        margin-right: 15px;
    }
}
/* =================================================================
   BARRA DE AUTORIDADE (TRUST BAR) - V-FINAL E CONTÍNUA (LIMPO)
   ================================================================= */
.blackville-trust-bar {
    background-color: #000000;
    color: #FFFFFF;
    padding: 12px 0;
    border-bottom: 1px solid #1a1a1a;
    border-top: 1px solid #1a1a1a;
    overflow: hidden;
}

/* Oculta as bolinhas de paginação em todas as telas */
.trust-pagination { 
    display: none !important;
}

/* 1. ESTRUTURA E SWIPER */
.trust-swiper {
    width: 100%;
}
.trust-swiper .swiper-slide {
    width: auto !important; /* Essencial para o scroll horizontal */
    flex-shrink: 0;
}

/* 2. ESTILO DO ITEM */
.trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 20px; /* Espaçamento interno */
}

.trust-item i {
    font-size: 16px;
    width: 20px;
    flex-shrink: 0;
}

.trust-content strong {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.2;
    white-space: nowrap;
}
.trust-content span {
    display: none; /* Esconde o subtítulo */
}

/* --- RESPONSIVO (MOBILE) --- */
@media (max-width: 900px) {
    .trust-content strong {
        font-size: 12px;
    }
}
/* =================================================================
   ALINHAMENTO GLOBAL PERFEITO (GRID 1320px) - VERSÃO CORRIGIDA
   ================================================================= */

/* 1. Elementos de Conteúdo (Containers Internos) */
/* Estes são seguros para limitar a largura pois não têm fundo full-width */
.header-container,
.bv-container,
.branding-grid-container, 
.trust-container,
.carousel-header,
.product-carousel-swiper,
.bv-contact-container,
.bv-post-container,
.bv-content-container,
.bv-related-container {
    max-width: 1320px !important; 
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important; 
    padding-right: 20px !important;
    width: 100%;
    box-sizing: border-box;
}

/* 2. RODAPÉ (Correção para manter Fundo Preto Full-Width) */
/* Usamos padding dinâmico para centralizar o conteúdo sem cortar o fundo */
.site-footer .wp-block-group {
    width: 100% !important;
    max-width: none !important; /* Remove limite do fundo */
    
    /* A MÁGICA: Calcula a margem para simular um container de 1320px */
    padding-left: max(20px, calc((100% - 1320px) / 2)) !important;
    padding-right: max(20px, calc((100% - 1320px) / 2)) !important;
    
    box-sizing: border-box;
}

/* 3. Carrossel de Produtos (Ajuste Fino) */
.blackville-carousel-section {
    width: 100%;
    max-width: none !important; /* Fundo da seção (se houver) total */
    
    /* Centraliza o conteúdo interno */
    padding-left: max(20px, calc((100% - 1320px) / 2)) !important;
    padding-right: max(20px, calc((100% - 1320px) / 2)) !important;
    padding-top: 40px;
    padding-bottom: 40px;
}
.product-carousel-swiper {
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important; /* Permite ver a pontinha do próximo slide */
    max-width: 100% !important; /* Garante que não estoure */
}

/* 4. Header (Alinhamento) */
.header-desktop .header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
/* =================================================================
   CORREÇÃO SCROLL LATERAL V2 (SEM QUEBRAR O HEADER)
   ================================================================= */

/* 1. Remove a trava do HTML (Isso conserta o Header Sticky) */
html {
    overflow-x: visible !important; 
}

/* 2. Aplica a trava suave no Body */
body {
    overflow-x: hidden; /* Esconde o que passar da largura */
    position: relative;
    width: 100%;
}

/* 3. A CURA REAL: Trava especificamente os containers que costumam vazar (Carrosséis) */
.blackville-carousel-section,
.blackville-hero-slider,
.product-carousel-swiper,
.blackville-trust-bar,
.site-footer {
    max-width: 100vw; /* Garante que não passem da tela */
    overflow: hidden; /* Corta o excesso localmente */
    box-sizing: border-box;
}

/* 4. Garante que o Header não cause o problema, mas continue Sticky */
.site-header {
    max-width: 100%;
}