/*
Theme Name: Handlavet Child
Theme URI: https://handlavet.qodeinteractive.com
Description: A child theme of Handlavet Theme
Author: Edge Themes
Author URI: https://themeforest.net/user/edge-themes
Version: 1.0.1
Text Domain: handlavet
Template: handlavet
*/

/* ============================
GERAL 
==============================*/
h1, h2, h3, h4, h5, h6, p{
  font-family: 'Bangla Mn', sans-serif !important;
	color: #3d2b1f !important;
}
/* TEXTO NORMAL – limpo e elegante */
 p, li, a {
  font-family: 'Avenir Next Light', sans-serif !important;
}










/* =========================================
                   HEADER
========================================= */
/* GTRANSLATE — HEADER vs FOOTER*/
/* Footer: garantir que aparece sempre */
.jl-footer-gtranslate-li{
  display: block !important;
}
/* Header: esconder apenas abaixo dos 1025px */
@media (max-width: 1025px) {
  /* GTranslate no header */
  .gt_switcher_wrapper{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

}
/* INSTAGRAM ICON — HEADER MENU (FIX)*/
.wp-social-link-instagram{
    background-color: transparent !important;
    margin-left: 10px !important;
}
.wp-social-link-instagram a{
    color: black !important;
    font-size: 25px !important;
    text-transform: none !important;
    text-decoration: none !important;
}

/* Empurra o menu (centro) mais para a esquerda */
.edgtf-page-header .edgtf-position-center{
  padding-left: 0 !important;
}

.edgtf-page-header .edgtf-main-menu{
  margin-left: -40px !important; /* ajusta: -20 / -30 / -50 */
}
/* Aproximar IG do Carrinho/Minha Conta */
.edgtf-page-header .wp-social-link-instagram{
  margin-left: 0 !important;
  margin-right: -6px !important; /* aproxima do seguinte */
}

.edgtf-position-right-inner{
    margin-right: 40px !important;
}
/* força o "grid" do header a ocupar o ecrã todo */
.edgtf-page-header .edgtf-grid,
.edgtf-page-header .edgtf-grid .edgtf-vertical-align-containers{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* padding lateral geral (desktop) — ajusta aqui */
.edgtf-page-header .edgtf-grid{
  padding-left: 10px !important;
  padding-right: 10px !important; /* era 50px */
}

/* remove offsets/margens que puxam conteúdo para dentro */
.edgtf-page-header .edgtf-position-left,
.edgtf-page-header .edgtf-position-right{
  margin: 0 !important;
  transform: none !important;
}

/* (IMPORTANTE) remove o empurrão que tinhas para a direita */
.edgtf-position-right{
  margin-right: 0 !important;
}

/* =========================================
   HEADER — FULL WIDTH EM TODAS AS LARGURAS
========================================= */
/* 1) Remove o empurrão que estava a causar quebra */
@media (max-width: 1400px){
  .edgtf-position-right{
    margin-right: 0 !important; /* antes tinhas 50px */
  }
}
/* se ainda faltar espaço perto dos 1200px */
@media (max-width: 1200px){
  .edgtf-main-menu > ul > li > a{
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}
/* 2) Entre 1026px e 1200px: encosta tudo mais às margens */
@media (max-width: 1200px) and (min-width: 1026px){

  /* menos padding lateral no header */
  .edgtf-page-header .edgtf-grid{
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* NÃO deixar o bloco da direita quebrar */
  .edgtf-page-header .edgtf-position-right{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    gap: 14px !important;
  }

  /* garante que o menu não faz wrap */
  .edgtf-main-menu > ul{
    display: flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  /* reduz um bocadinho o espaçamento dos links para ganhar largura */
  .edgtf-main-menu > ul > li > a{
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* se o switcher do gtranslate estiver a “roubar” muito espaço, reduz */
  .gt_switcher_wrapper{
    transform: scale(0.92);
    transform-origin: right center;
  }
}

/* 3) Se ainda quebrar perto dos 1100px, este micro-ajuste salva */
@media (max-width: 1100px) and (min-width: 1026px){
  .edgtf-main-menu > ul > li > a{
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}
/* Esconder My Account no desktop */
@media (min-width: 1026px){
  .edgtf-main-menu a[href*="my-account"]{
    display: none !important;
  }
}
/* Garantir que aparece no mobile */
@media (max-width: 1025px){
  .edgtf-mobile-nav a[href*="my-account"]{
    display: block !important;
  }
}
@media (max-width: 1025px){

  .edgtf-mobile-header .edgtf-grid,
  .edgtf-mobile-header .edgtf-grid .edgtf-vertical-align-containers{
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* mais encostado à margem no mobile */
  .edgtf-mobile-header .edgtf-grid{
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .edgtf-mobile-header .edgtf-vertical-align-containers{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .edgtf-mobile-header .edgtf-position-left,
  .edgtf-mobile-header .edgtf-position-right{
    margin: 0 !important;
    transform: none !important;
  }

  /* garante que logo não tem "respiros" extra */
  .edgtf-mobile-logo-wrapper,
  .edgtf-logo-wrapper{
    margin: 0 !important;
    padding: 0 !important;
  }

  /* opener (hamburger) colado à direita */
  .edgtf-mobile-menu-opener{
    margin: 0 !important;
    padding: 0 !important;
  }

  /* dropdown/mobile nav (não cortar links) */
  .edgtf-mobile-nav{
    position: relative !important;
    z-index: 99999 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .edgtf-mobile-nav ul,
  .edgtf-mobile-nav .sub_menu{
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
}
/*============================
    HEADER
========================== /*










/*============================
    PÁGINA INICIAL
==========================*/

/*GALERIA DE OBRAS - CARROSSEL*/
.edgtf-image-gallery.edgtf-has-shadow.edgtf-ig-carousel-type .owl-stage-outer, .edgtf-image-gallery.edgtf-has-shadow.edgtf-ig-slider-type .owl-stage-outer {
    padding: 0px !important;
}
/*IMAGE GALLERY — MOBILE WIDE*/
@media (max-width: 680px){
  .jl-gallery-mobile{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: -40px !important;   /* 👈 ajusta aqui */
    background-color: none !important;
  }

  .jl-gallery-mobile img{
    width: 92% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    height: 520px !important;
    object-fit: cover !important;
    display: block !important;
  }

}
/* ===============================
   FIM DE IMAGE GALERY CARROSSEL
==================================*/










/*//////////////////////////////
GRID DE CARROSSEL — ATUALIZADO (com MOBILE “igual jl-gallery-mobile”)
//////////////////////////////*/
/* =========================================================
   HOME — CARROSSEL DIREITA (Product List Carousel)
========================================================= */
.col-carousel-right{
  height: 635px !important;
  max-height: 635px !important;
  overflow: hidden !important;
  position: relative !important;
}
/* Exemplo de como tornar o seletor mais forte */
body.home .edgtf-pl-holder .col-carousel-right img {
    height: 420px !important;
    object-fit: cover !important;
}

.col-carousel-right .owl-stage-outer,
.col-carousel-right .slick-list{
  height: 635px !important;
  max-height: 635px !important;
  overflow: hidden !important;
  padding: 0 !important;
}

.col-carousel-right .owl-stage,
.col-carousel-right .slick-track,
.col-carousel-right .owl-item,
.col-carousel-right .slick-slide{
  height: 635px !important;
  max-height: 635px !important;
}

.col-carousel-right img{
  width: 100% !important;
  height: 635px !important;
  max-height: 635px !important;
  object-fit: cover !important;
  display: block !important;
  opacity: 1 !important;
  filter: none !important;
}
/* remove overlay “lavado” */
.col-carousel-right .edgtf-plc-image-outer:before,
.col-carousel-right .edgtf-plc-image-outer:after,
.col-carousel-right .edgtf-plc-link:before,
.col-carousel-right .edgtf-plc-link:after,
.col-carousel-right .edgtf-plc-item-inner:before,
.col-carousel-right .edgtf-plc-item-inner:after{
  background: transparent !important;
  opacity: 0 !important;
  content: none !important;
}
.col-carousel-right .edgtf-plc-item,
.col-carousel-right .edgtf-plc-item-inner,
.col-carousel-right .edgtf-plc-image-outer,
.col-carousel-right .edgtf-plc-link{
  opacity: 1 !important;
}
/* remove carrinho */
.col-carousel-right a.add_to_cart_button,
.col-carousel-right a.ajax_add_to_cart,
.col-carousel-right .edgtf-plc-add-to-cart,
.col-carousel-right .edgtf-plc-add-to-cart-holder,
.col-carousel-right a.add_to_cart_button:after,
.col-carousel-right a.ajax_add_to_cart:after{
  display: none !important;
  content: none !important;
}
a.button.add_to_cart_button.ajax_add_to_cart.edgtf-button,
a.button.add_to_cart_button.ajax_add_to_cart.edgtf-button::after{
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}


/* =========================
   RESPONSIVE – CAROUSEL RIGHT
========================= */
@media (max-width: 1400px){
  .col-carousel-right,
  .col-carousel-right .owl-stage-outer,
  .col-carousel-right .owl-stage,
  .col-carousel-right .owl-item,
  .col-carousel-right .slick-track,
  .col-carousel-right .slick-slide,
  .col-carousel-right img{
    height: 540px !important;
    max-height: 540px !important;
  }
}
@media (max-width: 1200px){
  .col-carousel-right,
  .col-carousel-right .owl-stage-outer,
  .col-carousel-right .owl-stage,
  .col-carousel-right .owl-item,
  .col-carousel-right .slick-track,
  .col-carousel-right .slick-slide,
  .col-carousel-right img{
    height: 460px !important;
    max-height: 460px !important;
  }

  .col-carousel-right{
    margin-top: 10px !important;
  }
}
@media (max-width: 992px){
  .col-carousel-right,
  .col-carousel-right .owl-stage-outer,
  .col-carousel-right .owl-stage,
  .col-carousel-right .owl-item,
  .col-carousel-right .slick-track,
  .col-carousel-right .slick-slide,
  .col-carousel-right img{
    height: 420px !important;
    max-height: 420px !important;
  }
}
/* HOME — PRODUCT LIST (EXCLUSIVE ART) — MOBILE FORCE */
@media (max-width: 680px){

  body.home .edgtf-pl-holder,
  body.home .edgtf-pl-inner{
    width: 94% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
    float: none !important;
    box-sizing: border-box !important;
  }

  body.home .edgtf-pl-item,
  body.home .edgtf-pl-item-inner{
    width: 100% !important;
    margin: 0 auto 24px auto !important;
    float: none !important;
  }

  body.home .edgtf-pl-image img{
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }
}
@media (max-width: 680px){

  /* A ROW ocupa o ecrã e sai fora do container */
  .jl-mosaic-mobile{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: -50px !important; /* ajusta o espaço ao banner */
  }

  /* Este é o "miolo" centrado com bordas brancas iguais */
  .jl-mosaic-mobile > .vc_row,
  .jl-mosaic-mobile .vc_row,
  .jl-mosaic-mobile .vc_row-fluid,
  .jl-mosaic-mobile .vc_row.wpb_row,
  .jl-mosaic-mobile .vc_row.wpb_row.vc_row-fluid,
  .jl-mosaic-mobile .vc_row.vc_row-fluid{
    width: 92% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Zera paddings que empurram para um lado */
  .jl-mosaic-mobile .vc_column_container,
  .jl-mosaic-mobile .vc_column-inner{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Esconde o carrossel da direita */
  .jl-mosaic-mobile .col-carousel-right{
    display: none !important;
  }

  /* Faz o product list ocupar o miolo todo (2 colunas) */
  .jl-mosaic-mobile .edgtf-pl-holder,
  .jl-mosaic-mobile .edgtf-pl-inner{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* “Velhotas” (background do Elements Holder) — força para o miolo */
  .jl-mosaic-mobile .edgtf-elements-holder,
  .jl-mosaic-mobile .edgtf-eh-item{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
}
@media (max-width: 680px){

  /* centra tudo à força dentro da grid */
  .jl-mosaic-mobile{
    display: flex !important;
    justify-content: center !important;
  }

  /* força os wrappers internos a ficarem centrados */
  .jl-mosaic-mobile .vc_row,
  .jl-mosaic-mobile .vc_row-fluid,
  .jl-mosaic-mobile .vc_column_container,
  .jl-mosaic-mobile .vc_column-inner{
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }

  /* product list / quadros */
  .jl-mosaic-mobile .edgtf-pl-holder,
  .jl-mosaic-mobile .edgtf-pl-inner,
  .jl-mosaic-mobile .edgtf-pl-item{
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }

  /* caso o tema esteja a usar text-align:left para layout */
  .jl-mosaic-mobile{
    text-align: center !important;
  }

  /* mas mantém os conteúdos internos normais */
  .jl-mosaic-mobile .edgtf-pl-item-inner{
    text-align: left !important;
  }
}
/* trava o shrink esquisito abaixo de 480px */
@media (max-width: 480px){
  .jl-mosaic-mobile .edgtf-pl-holder,
  .jl-mosaic-mobile .edgtf-pl-inner{
    width: 92% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/*//////////////////////////////
FIM DE GRID DE CARROSSEL — ATUALIZADO (com MOBILE “igual jl-gallery-mobile”)
//////////////////////////////*/










/* ==========================
   WHAT INSPIRES MY ART
========================== */
.jl-split-section{
  display:flex !important;
  align-items:center !important;     /* centra vertical */
  justify-content:space-between !important;
  gap:80px !important;
}
/* LEFT: mantém forma */
.jl-left-carousel{
  flex: 0 0 620px !important;        /* largura real */
  max-width: 620px !important;
  min-width: 420px !important;
}
.jl-viewport{
  overflow:hidden !important;
  width:100% !important;
}
.jl-track{
  display:flex !important;
  transition:transform .6s ease !important;
}
.jl-slide{
  flex:0 0 100% !important;
}
.jl-slide img{
  width:100% !important;
  height:380px !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:2px !important;
}
/* DOTS */
.jl-dots{
  display:flex !important;
  justify-content:center !important;
  gap:10px !important;
  margin-top:18px !important;
}
.jl-dots button{
  width:8px !important;
  height:8px !important;
  border-radius:50% !important;
  border:none !important;
  background:rgba(0,0,0,.25) !important;
  cursor:pointer !important;
  padding:0 !important;
}
.jl-dots button.is-active{
  background:#6B4B3A !important;
}
/* RIGHT: centra o bloco no meio do carrossel */
.jl-right-content{
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display:flex !important;
  align-items:center !important;     /* centra vertical */
  justify-content:center !important; /* centra horizontal */
  margin-top:0 !important;           /* REMOVE o -10 */
  padding:0 40px !important;
}
.what-inspires-text{
  margin:0 !important;
  max-width:550px !important;
  width:100% !important;
  font-family:'Bangla MN', serif !important;
  font-size:30px !important;
  text-transform:uppercase !important;
  letter-spacing:4px !important;
  line-height:1 !important;
}

/* ====== RESPONSIVO ====== */
@media (max-width: 1400px){
  .jl-split-section{ gap:60px !important; }
  .jl-left-carousel{ flex-basis:560px !important; max-width:560px !important; }
  .jl-slide img{ height:340px !important; }
  .what-inspires-text{ font-size:26px !important; letter-spacing:3.5px !important; max-width:520px !important; }
}

@media (max-width: 1200px){
  .jl-left-carousel{ flex-basis:520px !important; max-width:520px !important; min-width:380px !important; }
  .jl-slide img{ height:320px !important; }
  .what-inspires-text{ font-size:24px !important; letter-spacing:3px !important; max-width:480px !important; }
}

@media (max-width: 1025px){
  .jl-split-section{
    flex-direction: column !important;
    gap: 28px !important;
    align-items: center !important;
  }
  .jl-left-carousel{
    flex: none !important;
    width: 100% !important;
    max-width: 720px !important;   /* podes subir/descer */
    min-width: 0 !important;
    margin: 0 auto !important;
  }
  .jl-slide img{
    height: 520px !important;      /* ajusta se quiseres */
  }
  .jl-right-content{
    width: 100% !important;
    padding: 0 20px !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .what-inspires-text{
    max-width: 720px !important;
    width: 100% !important;
    font-size: 24px !important;    /* ajusta ao teu gosto */
    letter-spacing: 3px !important;
    line-height: 1.35 !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 680px){

  /* wrapper do carrossel ocupa o viewport mas mantém bordas */
  .jl-split-section .jl-left-carousel{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: -50px !important;
  }
  /* imagem com o mesmo “corpo” visual dos outros */
  .jl-split-section .jl-slide img{
    width: 92% !important;
    max-width: 520px !important;
    height: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    object-fit: cover !important;
  }
  /* centra dots */
  .jl-split-section .jl-dots{
    justify-content: center !important;
  }
}
.marquee-empty-space{
    height: 40px !important;
}
/*//////////////////////////////
FIM DE WHAT INSPIRES ME
///////////////////////////////*



      






/*COLUNA DE 3 IMAGENS - COLOCAR NOME ///////////////////////////////*
/* ===== TEXTO CENTRADO NO HOVER — SEM ALTERAR OVERLAY DO TEMA ===== */
.category-gallery a,
.category-gallery .vc_grid-item,
.category-gallery .vc_gitem {
  position: relative !important;
}
/* texto centrado */
.category-gallery a::before,
.category-gallery .vc_grid-item a::before,
.category-gallery .vc_gitem a::before {
  content: attr(title) !important; /* texto vem do TITLE da imagem */
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  font-size: 26px !important;
  letter-spacing: 1px !important;
  line-height: 1.2 !important;
  text-transform: none !important;
  color: #6b4b3a !important; /* castanho elegante */
	font-family: 'Bangla Mn', sans-serif !important;
  opacity: 0 !important;
  z-index: 10 !important;
  pointer-events: none !important;
  text-align: center !important;
  width: 90% !important;
  transition: opacity 0.25s ease !important;
}
/* aparece apenas no hover */
.category-gallery a:hover::before,
.category-gallery .vc_grid-item:hover a::before,
.category-gallery .vc_gitem:hover a::before {
  opacity: 1 !important;
}
/* remove labels automáticas se existirem */
.category-gallery .wp-caption-text,
.category-gallery .vc_gitem-post-data,
.category-gallery .vc_gitem-zone-mini {
  display: none !important;
}
/* =================================================
   CATEGORY GALLERY — MOBILE COM BORDAS BRANCAS
   (MESMA LÓGICA DO jl-gallery-mobile)
================================================= */
@media (max-width: 680px){
  /* wrapper full width mas com “bordas” (padding) */
  .category-gallery{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;

    padding-left: 30px !important;   /* ✅ borda branca */
    padding-right: 30px !important;  /* ✅ borda branca */
    box-sizing: border-box !important;

    margin-top: -40px !important;    /* ajusta como quiseres */
  }

  /* garante que o “grid container” respeita o padding */
  .category-gallery .vc_grid,
  .category-gallery .vc_grid-container,
  .category-gallery .vc_grid-container-wrapper{
    width: 100% !important;
    max-width: 520px !important;     /* igual ao outro */
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* WPBakery às vezes usa floats — mata isso para centrar */
  .category-gallery .vc_grid-item{
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 auto 22px auto !important;
  }

  /* imagem */
  .category-gallery img{
    width: 100% !important;
    height: 520px !important;
    object-fit: cover !important;
    display: block !important;
  }
}
/*//////////////////////////////
FIM DE COLUNA DE 3 IMAGENS - COLOCAR NOME 
///////////////////////////////*










/* ===========================
MARQUEE
============================ */
/* WRAPPER */
.jl-marquee-js{
  width: 100% !important;
  overflow: hidden !important;
  padding: 40px 0 !important;
}
/* LINHA */
.jl-marquee-line{
  width: 100% !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  margin: 20px 0 !important;
}
/* INNER (movido por JS) */
.jl-marquee-inner{
  display: inline-flex !important;
  align-items: center !important;
  gap: 80px !important;
  will-change: transform !important;
}
/* TEXTO */
.jl-marquee-inner span{
  font-family: "Bangla MN", serif !important;
  font-size: 80px !important;
  line-height: 1.1 !important;      /* evita cortar letras */
  letter-spacing: 6px !important;
  text-transform: uppercase !important;
  color: #6B4B3A !important;
  white-space: nowrap !important;
  display: inline-block !important;
}
/* MOBILE */
@media (max-width: 768px){
  .jl-marquee-inner span{
    font-size: 34px !important;
    letter-spacing: 4px !important;
  }
}
/*============================
FIM DE MARQUEE
==============================*/










/*===========================
   SITE REVIEWS / REVIEWS FORM – FULL FORCE OVERRIDE
========================================================= */
/* container geral */
.glsr-form {
  background-color: #e4e2df !important;
  padding: 60px 80px !important;
 	margin: auto !important;
  max-width: 100% !important;
	border-radius: 10px !important;
	font-family: 'Avenir Next Light', sans-serif;
}
/* cada campo */
.glsr-form .glsr-field {
  margin-bottom: 28px !important;
}
/* labels */
.glsr-form label {
  display: block !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #777 !important;
  margin-bottom: 6px !important;
}
/* inputs + textarea */
.glsr-form input[type="text"],
.glsr-form input[type="email"],
.glsr-form textarea {
  width: 100% !important;
  border: none !important;
  border-bottom: 1px solid #ccc !important;
  padding: 10px 0 !important;
  font-size: 15px !important;
  background: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  color: #000 !important;
}
/* focus */
.glsr-form input:focus,
.glsr-form textarea:focus {
  border-bottom-color: #000 !important;
  box-shadow: none !important;
}
/* textarea */
.glsr-form textarea {
  resize: none !important;
  min-height: 120px !important;
}
/* estrelas */
.glsr-form .glsr-star-rating {
  margin: 20px 0 10px 0 !important;
}
.glsr-form .glsr-star {
  font-size: 18px !important;
  color: #bbb !important;
}
.glsr-form .glsr-star.is-active,
.glsr-form .glsr-star:hover {
  color: #000 !important;
}
/* checkbox / switch */
.glsr-form input[type="checkbox"],
.glsr-form input[type="radio"] {
  accent-color: #000 !important;
}
/* texto do consentimento */
.glsr-form .glsr-field-consent label {
  font-size: 11px !important;
  letter-spacing: 0.8px !important;
  color: #777 !important;
}
/* botão submit */
.glsr-form button[type="submit"],
.glsr-form input[type="submit"] {
  margin-top: 32px !important;
  background: none !important;
  border: 1px solid #000 !important;
  padding: 12px 28px !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: none !important;
  color: #000 !important;
}
/* hover botão */
.glsr-form button[type="submit"]:hover,
.glsr-form input[type="submit"]:hover {
  background: #000 !important;
  color: #fff !important;
}
/* remove qualquer centragem forçada */
.glsr-form * {
  text-align: left !important;
}
.reviews-subtitle{
	margin-top: -20px !important;
	font-size: 20px !important;
}
/* 🔧 evita "descentragens" por causa de padding/box model */
.jl-reviews-section,
.jl-reviews-section *{
  box-sizing: border-box !important;
}
.parceiros-row{
    margin-top: -30px !important;
}

/* =================================================
   REVIEWS — TITULO/SUBTITULO A ACOMPANHAR O FORM
   (mesma largura + mesmo alinhamento à esquerda)
================================================= */
#custom-reviews-carousel .glsr-reviews {
    display: flex;
    overflow: hidden;
    position: relative;
    min-height: 200px;
    align-items: center;
}

#custom-reviews-carousel .glsr-review {
    flex: 0 0 100%;
    width: 100%;
    display: none; /* Escondemos todos inicialmente */
    text-align: center;
    animation: fadeEffect 1s;
    border: none !important;
}

#custom-reviews-carousel .glsr-review:first-child {
    display: block; /* Mostra apenas o primeiro */
}

@keyframes fadeEffect {
    from {opacity: 0.4;} 
    to {opacity: 1;}
}

.glsr-review-content {
    font-size: 18px !important;
    font-style: italic;
    line-height: 1.6;
    color: #333;
}

/* =================================================
   REVIEWS — MOBILE COM BORDAS BRANCAS (igual aos de cima)
   Requer: Row WPBakery com classe: jl-reviews-section
   (Opcional: wrapper .jl-reviews-inner a envolver o bloco)
================================================= */
/* mobile */
@media (max-width: 768px) {
  .glsr-form {
    padding: 40px 24px !important;
  }
}
/* MOBILE */
@media (max-width: 680px){

  /* 1) ROW a esticar full width (igual ao resto) */
  .jl-reviews-section{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: -40px !important;  /* ajusta se precisares */
  }

  /* 2) tira paddings internos do WPBakery que empurram */
  .jl-reviews-section .vc_column_container,
  .jl-reviews-section .vc_column-inner{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 3) LIMITADOR (igual aos de cima) — MAIS PREENCHIDO */
  /*    (menos branco que antes) */
  .jl-reviews-section .jl-reviews-inner,
  .jl-reviews-section .wpb_wrapper{
    width: 94% !important;         /* 👈 mais largo (antes 92%) */
    max-width: 560px !important;   /* 👈 mais largo (antes 520) */
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 4) TÍTULOS alinhados à esquerda e na mesma linha do form */
  .jl-reviews-section .vc_custom_heading,
  .jl-reviews-section h1,
  .jl-reviews-section h2,
  .jl-reviews-section h3{
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* 5) O FORM ocupa a largura do limitador (não a página toda) */
  .jl-reviews-section .glsr-form{
    width: 100% !important;
    max-width: 560px !important;   /* igual ao limitador */
    margin: 0 auto !important;
    padding: 38px 26px !important; /* mais "corpo", sem exagerar */
    border-radius: 10px !important;
  }

  /* 6) subtítulo a acompanhar alinhamento */
  .jl-reviews-section .reviews-subtitle{
    text-align: left !important;
    margin-top: -14px !important;
  }
}
@media (max-width: 680px){

  /* limita e centra os headings igual ao form */
  .jl-reviews-section .vc_custom_heading,
  .jl-reviews-section .reviews-subtitle{
    width: 94% !important;
    max-width: 560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: left !important;
  }

  /* alinha o texto pelo mesmo "start" do conteúdo do form (por causa do padding) */
  .jl-reviews-section .vc_custom_heading,
  .jl-reviews-section .reviews-subtitle{
    padding-left: 26px !important;   /* igual ao padding-left do .glsr-form */
    padding-right: 26px !important;  /* opcional, para consistência */
  }

  /* remove margens estranhas que o tema mete */
  .jl-reviews-section .vc_custom_heading{
    margin-top: 0 !important;
    margin-bottom: 6px !important;
  }

  .jl-reviews-section .reviews-subtitle{
    margin-top: 0 !important;
    margin-bottom: 14px !important;
  }
}
@media (max-width: 487px){
    .parceiros-row{
        margin-top: -50px !important;
    }
}
/* Se em algum breakpoint (<=480px) o tema "encurta", força o limitador */
@media (max-width: 480px){
  .jl-reviews-section .jl-reviews-inner,
  .jl-reviews-section .wpb_wrapper{
    width: 94% !important;
    max-width: 560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .jl-reviews-section .glsr-form{
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 auto !important;
  }
}

/*============================
FIM DE REVIWEWS
==============================*/

/*============================
FIM DE PÁGINA INICIAL
==============================*/










 /* =========================================================
   ART CATEGORIES (page-id-1146) — MOBILE
   full width + margens brancas (VERSÃO QUE FUNCIONA)
========================================================= */
@media (max-width: 768px) {
  /* Impede o scroll horizontal */
  body.page-id-1146 {
    overflow-x: hidden !important;
  }

  /* 1. Remove paddings do tema que podem estar a empurrar o conteúdo */
  body.page-id-1146 .edgtf-eh-item-content,
  body.page-id-1146 .vc_column_container,
  body.page-id-1146 .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 2. Força o container principal a ocupar a largura total do ecrã */
  /* Aplicamos apenas ao elemento de topo para evitar acumulação de margens */
  body.page-id-1146 .edgtf-elements-holder {
    width: 100vw !important;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
  }

  /* 3. Centralização real do conteúdo (as imagens/grid) */
  body.page-id-1146 .edgtf-pcl-holder {
    width: 90% !important; /* Ajusta conforme a margem branca que desejas */
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important; /* Garante que não há floats a puxar para a esquerda */
    display: block !important;
  }
}
 /* =========================================================
   FIM DE ART CATEGORIES (page-id-1146) — MOBILE
   full width + margens brancas (VERSÃO QUE FUNCIONA)
========================================================= */











/*////////////////////////////// CATEGORIAS E QUADROS INDIVIDUAIS //////////////////////////////*/
.edgtf-title-holder .edgtf-page-title.entry-title {
    color: #ffffff !important;
}
.jl-request-info-btn{
  display:inline-block !important;
  margin-top:14px !important;
  padding:12px 18px !important;
  border:1px solid rgba(0,0,0,.18) !important;
  text-decoration:none !important;
  letter-spacing:.5px !important;
}
.jl-request-info-btn:hover{
  opacity:.85 !important;
}
/* ===== POPUP MAKER - FUNDO (overlay) TRANSPARENTE ===== */
.pum-overlay,
.pum-overlay.pum-overlay-disabled { 
  background: rgba(0,0,0,0.55) !important; /* preto com transparência */
}
/* ===== POPUP MAKER - CAIXA DO POPUP ===== */
.pum-container,
.pum-theme-default-theme .pum-container{
  background: rgba(255,255,255,0.92) !important; /* branco mas “leve” */
  border-radius: 16px !important;
  box-shadow: 0 25px 60px rgba(0,0,0,0.25) !important;
  padding: 28px !important;
  max-width: 720px !important;
  width: calc(100% - 40px) !important;
}
/* ===== BOTÃO CLOSE mais discreto ===== */
.pum-close{
  background: rgba(0,0,0,0.65) !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  box-shadow: none !important;
}
/* ===== AJUSTES DO FORM (CF7) no popup ===== */
.pum-container .wpcf7 input[type="text"],
.pum-container .wpcf7 input[type="email"],
.pum-container .wpcf7 textarea{
  width: 100% !important;
  background: rgba(0,0,0,0.04) !important;
  border: 1px solid rgba(0,0,0,0.12) !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
}
.pum-container .wpcf7 textarea{
  min-height: 140px !important;
  resize: vertical !important;
}
.pum-container .wpcf7 input[type="submit"]{
  background: #6B4B3A !important;
  color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 12px 18px !important;
  cursor: pointer !important;
}
/* Esconder botão add to cart no hover (loop de produtos) */
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product .button {
    display: none !important;
}

/* Descrição da categoria (Exclusive / Available Art) */
.jl-cat-description,
.jl-cat-description p {
    font-family: "Avenir Next Light", "Avenir Light", "Avenir", sans-serif !important;
    font-weight: 700 !important;
    font-size: 25px !important;
    text-align: center !important;
    line-height: 1.6 !important;
    color: #3d2b1f !important;
    margin-bottom: 60px !important;
}

/* Ajuste específico para Tablet e Mobile (Abaixo de 1025px) */
@media (max-width: 1025px) {
    .jl-cat-description,
    .jl-cat-description p {
        font-size: 20px !important; /* Diminui ligeiramente o texto para caber melhor */
        line-height: 1.4 !important;
        margin-bottom: 80px !important;
    }
}

@media (max-width: 830px) {
    .jl-cat-description,
    .jl-cat-description p {
        font-size: 16px !important; /* Diminui ligeiramente o texto para caber melhor */
        line-height: 1.4 !important;
        margin-bottom: 60px !important;
    }
}
@media (max-width: 768px) {
    .jl-cat-description,
    .jl-cat-description p {
        font-size: 16px !important; /* Diminui ligeiramente o texto para caber melhor */
        margin-bottom: 40px !important;
        line-height: 1.4 !important;
        margin-bottom: 60px !important;
        margin-top:-10px !important; 
    }
}

@media (max-width: 680px) {
    .jl-cat-description,
    .jl-cat-description p {
        font-size: 18px !important; /* Tamanho ideal para telemóveis */
        padding: 0 15px !important;
    }
}
/* =========================================================
   CATEGORIAS WOOCOMMERCE (EXCLUSIVE, AVAILABLE, EBOOKS)
   ========================================================= */
@media (max-width: 680px) {
    
    .jl-cat-description{
        margin-top: 80px !important;
    }
     .woocommerce-result-count{
        margin-left: 20px !important;
    }
    
  /* 1. Alargar o contentor principal do tema Handlavet */
  body.archive.tax-product_cat .edgtf-container-inner,
  body.archive.tax-product_cat .edgtf-full-width-inner {
    width: 100% !important;
    padding: 0 !important;
  }

  /* 2. Ajustar a Grelha de Produtos para criar as bordas laterais */
  body.archive.tax-product_cat ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 92% !important; /* Cria a borda branca lateral */
    margin: 0 auto !important;
    padding: 0 !important;
  }

  /* 3. Tamanho de cada Quadro (Produto) */
  body.archive.tax-product_cat ul.products li.product {
    width: 100% !important; /* Um quadro por linha para maior detalhe */
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 40px !important; /* Espaço entre quadros */
    float: none !important;
  }

  /* 4. Ajuste da Imagem do Quadro */
  body.archive.tax-product_cat ul.products li.product img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
  }
  
  /* 5. Alinhamento dos Títulos das Obras */
  body.archive.tax-product_cat .woocommerce-loop-product__title,
  body.archive.tax-product_cat .price {
    text-align: center !important;
    display: block !important;
  }
}

/*////////////////////////////// FIM DAS CATEGORIAS E QUADROS INDIVIDUAIS //////////////////////////////*/














/*////////////////////////////// MINI ART //////////////////////////////*/
.mini-art-galeria-grid-2{
	margin-top: 30px !important;
}
.jl-request-info-btn {
  background: transparent !important;
  border: 1px solid #000 !important; /* linha fina preta */
  color: #000 !important;           /* texto preto */
  padding: 18px 24px !important;
  transition: color 0.3s ease, border-color 0.3s ease;
	cursor: pointer !important;
}
.jl-request-info-btn:hover {
  color: #D8C6A3 !important; /* bege (ajusta se quiseres) */
  border-color: #000 !important; /* mantém a borda preta */
  background: transparent !important;
}
/* =========================================================
   MINI ART — MOBILE FIX (<=680px)
   - imagem grande centrada
   - 3 thumbs em grelha certinha
   - texto passa para baixo das imagens
========================================================= */
/* =========================================================
   MINI ART — ALINHAMENTO PERFEITO (<=680px)
   ========================================================= */
@media (max-width: 768px) {

  /* 1) Criar um eixo central para todo o conteúdo */
  .jl-product-visuals,
  .jl-product-info {
    width: 90% !important; /* Define a largura total do conteúdo */
    max-width: 500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    display: block !important;
    float: none !important;
    margin-top: -15px !important;
  }

  /* 2) Reset de colunas internas do WPBakery */
  .jl-product-visuals .vc_column-inner,
  .jl-product-info .vc_column-inner,
  .jl-product-visuals .wpb_wrapper,
  .jl-product-info .wpb_wrapper {
    padding: 0 !important;
    margin: 0 !important;
  }

  /* 3) Imagem Grande - Ocupar a largura total do eixo */
  .jl-product-visuals .wpb_single_image {
    margin: 0 0 10px 0 !important; /* Espaço apenas para as thumbs abaixo */
  }

  .jl-product-visuals .wpb_single_image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  /* 4) Grelha de 3 Thumbs - Alinhada exatamente com a de cima */
  .mini-art-galeria-grid-2 {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important; /* Remove margens que desalinham */
    padding: 0 !important;
  }

  .mini-art-galeria-grid-2 .vc_column_container {
    width: 100% !important;
    padding: 0 !important;
  }

  .mini-art-galeria-grid-2 img {
    width: 100% !important;
    height: 100px !important; /* Altura fixa para manter simetria */
    object-fit: cover !important;
  }

  /* 5) Texto Alinhado à ESQUERDA (na mesma linha das imagens) */
  .jl-product-info {
    margin-top: 25px !important;
    text-align: left !important; /* Alinhamento à esquerda pedido */
  }

  .jl-product-info *, 
  .jl-product-info .wpb_text_column,
  .jl-product-info .vc_custom_heading {
    text-align: left !important; /* Garante que títulos e p alinham à esquerda */
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  /* Botão: Bloco à esquerda, TEXTO CENTRADO */
  .jl-request-info-btn {
    display: inline-block !important; /* Mantém o botão na linha do texto */
    text-align: center !important;    /* Força o centro do conteúdo */
    
    /* Reset de espaçamentos que podem estar a empurrar o texto */
    padding-left: 0 !important;       
    padding-right: 0 !important;
    
    /* Largura fixa ou min-width é essencial para veres o texto centrado */
    width: 240px !important;          
    margin-left: 0 !important;        /* Alinha o botão à esquerda da página */
    margin-top: 20px !important;
    
    box-sizing: border-box !important;
    line-height: 1.2 !important;      /* Ajusta a altura da linha do texto */
  }
}

/* =========================================================
   PÁGINA DE PRODUTO ÚNICO (MINI ART) — MOBILE
   ========================================================= */
/*////////////////////////////// FIM MINI ART
//////////////////////////////*/














/*////////////////////////////// PRINTS
//////////////////////////////*/
/* JL Prints Gallery */
.jl-prints-gallery{max-width:1200px;margin:0 auto;padding:10px 0 30px
}
.jl-prints-gallery .jl-main{
  position:relative;
  width:100%;
  max-height:700px;
  overflow:hidden;
  background:#f3f3f3
}
.jl-prints-gallery .jl-main-img{
  width:700px;
  height:100%px;
  object-fit:cover;
  display:block
}
.jl-prints-gallery .jl-main-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.22);
  pointer-events:none
}
.jl-prints-gallery .jl-main-title{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  color:#fff;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:18px;
  text-align:center;
  padding:10px 14px;
  width:min(90%,700px)
}
.jl-prints-gallery .jl-thumbs-wrap{
  display:flex;
  align-items:center;
  gap: 14px;
  margin-top:18px
}
.jl-prints-gallery .jl-nav{
  border:0;
  background:transparent;
  font-size:34px;
  line-height:1;
  cursor:pointer;
  padding:6px 10px;
  opacity:.8
}
.jl-prints-gallery .jl-nav:hover{opacity:1}
.jl-prints-gallery .jl-thumbs{
  flex:1;
  display:flex!important;
  gap:12px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  padding:4px 2px;
  -webkit-overflow-scrolling:touch
}
.jl-prints-gallery .jl-thumb{
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer;
  flex:0 0 auto;
  width:100px;
  height: 130px;
  opacity:.65;
  outline:none
}
.jl-prints-gallery .jl-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover
}
.jl-prints-gallery .jl-thumb.is-active{
  opacity:1;
 
}

/* Aplicar apenas na página de Prints através do ID da página */
.page-id-4851 .wpb_text_column {
    width: 80% !important;
}

@media (max-width: 880px) {
    .page-id-4851 .wpb_text_column {
        width: 68% !important;
    }
}
@media (max-width:768px){
  .jl-prints-gallery .jl-main{max-height:360px}
  .jl-prints-gallery .jl-main-img{height:360px}
  .jl-prints-gallery .jl-thumb{width:92px;height:60px}
  .jl-prints-gallery .jl-main-title{font-size:14px;letter-spacing:.18em}
}
@media (max-width: 768px){

  /* 1) row toda com a mesma largura “padrão” */
  body.page-id-4851 .prints-art-gallery-custom{
    width: 94% !important;
    max-width: 560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) mata os offsets que estão a estragar tudo */
  body.page-id-4851 .prints-art-gallery-custom .vc_column_container,
  body.page-id-4851 .prints-art-gallery-custom .vc_column-inner{
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 3) garante que os 1/2 viram 100% e não ficam com “restos” */
  body.page-id-4851 .prints-art-gallery-custom .vc_col-sm-6{
    width: 100% !important;
    float: none !important;
  }

  /* 4) galeria (o teu Raw HTML com jl-centered-gallery) */
  body.page-id-4851 .jl-centered-gallery,
  body.page-id-4851 .jl-prints-gallery{
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }

  /* 5) o bloco da imagem principal não pode ter max-width “solto” */
  body.page-id-4851 .jl-main{
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 6) texto: alinhado à esquerda e com a mesma largura do conteúdo */
  body.page-id-4851 .prints-art-gallery-custom .wpb_text_column,
  body.page-id-4851 .prints-art-gallery-custom .wpb_wrapper{
    width: 100% !important;
    max-width: 560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: left !important;
  }

  /* 7) remove o margin-top do texto se estiver a criar buraco gigante */
  body.page-id-4851 .prints-art-gallery-custom .vc_custom_heading{
    margin-top: -25px !important;
  }
}
/*////////////////////////////// 
        FIM PRINTS
//////////////////////////////*/










/* ===========================
EBOOKS
/* =========================================================
   POPUP EBOOKS — GLOBAL
   ========================================================= */
/* Padding interno do popup (Popup Maker específico) */
#popmake-5248{
  padding: 40px !important;
}
/* Botão "Read More" — estilo link */
.ebook-read-more{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin-top: 10px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font: inherit !important;
  color: #6b5b4b !important;
}
.ebook-read-more:hover{
  color: #a07b55 !important;
  text-decoration: underline !important;
}
/* Container geral do popup */
.jl-ebook-popup{
  max-width: 720px !important;
}
/* Título do popup */
.jl-ebook-popup-title{
  margin: 0 0 16px 0 !important;
}
/* Corpo do popup — respeitar texto do editor */
.jl-ebook-popup-body{
  white-space: normal !important;
}
/* Parágrafos */
.jl-ebook-popup-body p{
  margin: 0 0 14px 0 !important;
  line-height: 1.7 !important;
}
/* Listas */
.jl-ebook-popup-body ul{
  margin: 0 0 14px 22px !important;
  padding: 0 !important;
}
.jl-ebook-popup-body li{
  margin: 0 0 6px 0 !important;
  line-height: 1.6 !important;
}
/* Botão CTA dentro do popup */
.jl-ebook-popup-cta{
  display: inline-block !important;
  margin-top: 30px !important;
  padding: 10px 18px !important;
  border: 1px solid #000 !important;
  text-decoration: none !important;
  font: inherit !important;
}
/* /* === REMOVER "DESCRIÇÃO" (tabs do WooCommerce) — GLOBAL === */
.single-product .woocommerce-tabs.wc-tabs-wrapper,
.single-product .woocommerce-tabs,
.single-product .wc-tabs-wrapper,
.single-product #tab-description,
.single-product .woocommerce-Tabs-panel--description {
  display: none !important;
}

/* Remove também o espaçamento que alguns temas deixam */
.single-product .woocommerce-tabs.wc-tabs-wrapper,
.single-product .wc-tabs-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}
/* Se o tema estiver a usar wrappers próprios */
.single-product .edgtf-woo-single-page .woocommerce-tabs,
.single-product .edgtf-woo-single-page .wc-tabs-wrapper {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.related{
margin-top: 50px !important;
}


/* BANNER DIFERENTE DA CAPA - CATEGORIA EBOOKS */
.tax-product_cat.term-ebooks .edgtf-title-holder {
    background-image: url('http://joanalopesart.com/wp-content/uploads/2026/01/WhatsApp-Image-2026-01-19-at-21.25.30.jpeg') !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
}
/* Adicionar sombra castanha aos títulos de todos os banners */
.edgtf-title-holder .edgtf-title-wrapper .edgtf-page-title, 
.edgtf-title-holder .edgtf-title-wrapper h1,
.edgtf-title-holder .edgtf-title-wrapper h2 {
    color: #ffffff !important; /* texto branco */
    text-shadow: 
        2px 2px 10px rgba(107, 75, 58, 0.65) !important; /* castanho elegante */
}

/* esconder botões de quantidade */
.edgtf-quantity-buttons{
    display: none !important;
}

/* =====================================================
   EBOOKS — MOBILE/TABLET FIX (<=1025px)
   Tema usa <img>, não background
===================================================== */
@media (max-width: 1025px){

  /* força o container */
  .tax-product_cat.term-ebooks .edgtf-title-image{
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
  }

  /* força a imagem certa */
  .tax-product_cat.term-ebooks .edgtf-title-image img{
    content: url('http://joanalopesart.com/wp-content/uploads/2026/01/WhatsApp-Image-2026-01-19-at-21.25.30.jpeg') !important;

    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;

    /* 🔥 isto é o equivalente ao background-position */
    object-position: center top !important;
  }
}
/* ===========================
EBOOKS
============================= */










/* ==============================
   WE PROJECT (page-id-5276)
============================== */
/* GLOBAL */
.we-project-text-description{
  width: 70% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.ebook-left img{
  width: 100% !important;
  height: auto !important;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08) !important;
}

.ebook-right h2.product_title{
  font-size: 28px !important;
  margin: 0 0 5px 0 !important;
  font-weight: 600 !important;
}

.ebook-price{
  font-size: 20px !important;
  color: #000 !important;
  margin-bottom: 20px !important;
  font-weight: 500 !important;
}

.ebook-description{
  margin-bottom: 30px !important;
  line-height: 1.6 !important;
}

/* BOTAO "ADICIONAR" (link manual) */
.ebook-button-wrapper .jl-buy-now{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 1px solid #000 !important;
  color: #000 !important;
  padding: 14px 28px !important;
  font-size: 12px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all .25s ease !important;
}

.ebook-button-wrapper .jl-buy-now:hover{
  background: #000 !important;
  color: #fff !important;
}

/* =====================================================
   WE PROJECT (page-id-5276) — REVIEWS FORCE FILL
   (independente de classes extra na row)
===================================================== */
.page-id-5276 .glsr-form{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  display: block !important;
}

/* Se algum wrapper estiver a limitar a largura do form */
.page-id-5276 .glsr-form,
.page-id-5276 .glsr-form-wrap,
.page-id-5276 .glsr-form-wrap .wpb_wrapper,
.page-id-5276 .glsr-form-wrap .vc_column-inner,
.page-id-5276 .glsr-form-wrap .vc_column_container,
.page-id-5276 .glsr-form-wrap .edgtf-container-inner,
.page-id-5276 .glsr-form-wrap .edgtf-full-width-inner{
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  box-sizing: border-box !important;
}
/* WooCommerce — remover ordenação (Ordenação padrão) em todo o site */
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering{
  display: none !important;
}

/* =====================================================
   WE PROJECT (page-id-5276) — FIX TITLE/BANNER FULL WIDTH
   remove "boxed" + faz cover
===================================================== */
.page-id-5276 .edgtf-title-holder,
.page-id-5276 .edgtf-title-holder .edgtf-title-inner,
.page-id-5276 .edgtf-title-holder .edgtf-grid,
.page-id-5276 .edgtf-title-holder .edgtf-grid .edgtf-vertical-align-containers{
  width: 100% !important;
  max-width: 100% !important;
}

.page-id-5276 .edgtf-title-holder{
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* Se o banner estiver a ser injetado como <img> (e não como background) */
.page-id-5276 .edgtf-title-holder .edgtf-title-image,
.page-id-5276 .edgtf-title-holder .edgtf-title-image img{
  width: 100% !important;
  max-width: 100% !important;
}

.page-id-5276 .edgtf-title-holder .edgtf-title-image img{
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Opcional: garantir que não fica com cor "a preencher" dos lados */
.page-id-5276 .edgtf-title-holder{
  background-color: transparent !important;
}

/* DESKTOP > 1025px */
@media (min-width: 1026px){
  .weproject-ebook-clean{
    display: flex !important;
    align-items: flex-start !important;
    gap: 35px !important;
    margin: 40px 0 !important;
  }

  .ebook-left{
    flex: 0 0 28% !important;
    max-width: 28% !important;
  }

  .ebook-right{
    flex: 1 !important;
    text-align: left !important;
  }

  .we-project-heading-text{
    margin-top: -28px !important;
  }
}

/* TABLET/MOBILE <= 1025px */
@media (max-width: 1025px){
    
     .ebook-right{
        margin-top: 40px !important;
    }
  /* row principal */
  .page-id-5276 .vc_row.jl-two-col-stack-1025{
    display: block !important;
    width: 94% !important;
    max-width: 800px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  /* reset WPBakery */
  .page-id-5276 .jl-two-col-stack-1025 .vc_column_container,
  .page-id-5276 .jl-two-col-stack-1025 .vc_column-inner{
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* esconder dots/paginação */
  .page-id-5276 .jl-two-col-stack-1025 .slick-dots,
  .page-id-5276 .jl-two-col-stack-1025 .vc_pagination,
  .page-id-5276 .jl-two-col-stack-1025 .flex-control-nav{
    display: none !important;
  }

  /* imagem (não mexe na tua lógica <=480, só espaçamento) */
  .page-id-5276 .jl-two-col-stack-1025 .vc_images_carousel{
    width: 100% !important;
    margin-bottom: 30px !important;
  }

  /* TEXTO: bloco centrado, texto alinhado à esquerda */
  .page-id-5276 .jl-two-col-stack-1025 .vc_custom_heading,
  .page-id-5276 .jl-two-col-stack-1025 .wpb_text_column,
  .page-id-5276 .jl-two-col-stack-1025 .ebook-description,
  .page-id-5276 .jl-two-col-stack-1025 .vc_btn3-container{
    text-align: left !important;

    /* em vez de padding fixo, centra o miolo */
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 92% !important;
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;

    box-sizing: border-box !important;
  }

  /* descrição com “mais corpo” (sem ficar estreita) */
  .page-id-5276 .we-project-text-description{
    width: 92% !important;
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .we-project-heading-text{
    margin-top: 40px !important;
  }

  .social-share-heading-we{
    margin-top: -20px !important;
  }

  /* BLOCO SOCIAL — centrado */
  .page-id-5276 .col-social-share,
  .page-id-5276 .col-social-share .vc_column-inner,
  .page-id-5276 .col-social-share .wpb_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  .page-id-5276 .social-share-heading-we,
  .page-id-5276 .col-social-share .vc_custom_heading{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important;
    max-width: 100% !important;
    display: table !important;
  }

  .social-share-subheading-we{
    margin-top: -15px !important;
  }
}

/* <= 900px (ajuste de largura do miolo) */
@media (max-width: 900px){
  .page-id-5276 .jl-two-col-stack-1025 .vc_custom_heading,
  .page-id-5276 .jl-two-col-stack-1025 .wpb_text_column,
  .page-id-5276 .jl-two-col-stack-1025 .ebook-description,
  .page-id-5276 .jl-two-col-stack-1025 .vc_btn3-container{
    width: 92% !important;
    max-width: 720px !important;
  }

  .page-id-5276 .we-project-text-description{
    width: 92% !important;
    max-width: 720px !important;
  }
}

/* <= 768px (botão com texto centrado dentro) */
@media (max-width: 768px){
  .page-id-5276 .jl-two-col-stack-1025 .vc_btn3,
  .page-id-5276 .jl-two-col-stack-1025 .add_to_cart_button,
  .page-id-5276 .jl-two-col-stack-1025 .jl-request-info-btn{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: auto !important;
    min-width: 180px !important;
    padding: 12px 25px !important;
    float: none !important;
  }

  .we-project-heading-text{
    margin-top: 30px !important;
  }
}

/* =====================================================
   WE PROJECT (page-id-5276) — TEXTO MOBILE IGUAL AO CARROSSEL
   <= 768px: mesma largura (100vw-24px) + alinhado à esquerda
===================================================== */
@media (max-width: 768px){

  /* garante que a coluna do texto não fica “encaixada” por paddings do VC */
  .page-id-5276 .col-text-we-project-responsive,
  .page-id-5276 .col-text-we-project-responsive .vc_column-inner,
  .page-id-5276 .col-text-we-project-responsive .wpb_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
  }

  /* este é o “contentor” que fica do MESMO tamanho do carrossel */
  .page-id-5276 .col-text-we-project-responsive .vc_column-inner{
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;

    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* tudo dentro do texto alinhado à esquerda */
  .page-id-5276 .col-text-we-project-responsive .wpb_wrapper,
  .page-id-5276 .col-text-we-project-responsive .vc_custom_heading,
  .page-id-5276 .col-text-we-project-responsive .wpb_text_column,
  .page-id-5276 .col-text-we-project-responsive p,
  .page-id-5276 .col-text-we-project-responsive a,
  .page-id-5276 .col-text-we-project-responsive li{
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* remove “centragens” típicas do VC em headings */
  .page-id-5276 .col-text-we-project-responsive .vc_custom_heading{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* se a tua descrição tiver largura fixa, força a ocupar o contentor */
  .page-id-5276 .col-text-we-project-responsive .we-project-text-description{
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 682px){

  /* libertar limites do WPBakery */
  .page-id-5276 .vc_row,
  .page-id-5276 .vc_row-fluid,
  .page-id-5276 .wpb_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }

  /* slider / imagem */
  .page-id-5276 .wpb_gallery_slides.wpb_flexslider{
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;

    /* 🔥 isto é o que faltava */
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    margin: 0 !important;
  }

  /* viewport interno do flexslider */
  .page-id-5276 .wpb_gallery_slides.wpb_flexslider .flex-viewport,
  .page-id-5276 .wpb_gallery_slides.wpb_flexslider .slides{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  /* imagem */
  .page-id-5276 .wpb_gallery_slides.wpb_flexslider img{
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }
  h4.vc_custom_heading.social-share-heading-we{
    text-align: center !important;
    font-size: 16px !important;      /* ajusta aqui se quiseres mais pequeno */
    line-height: 1.4 !important;

    margin-top: 18px !important;     /* afasta da imagem */
    margin-bottom: 10px !important;

    padding-left: 12px !important;
    padding-right: 12px !important;

    width: 100% !important;
    box-sizing: border-box !important;
  }
}
/* =====================================================
   MOBILE <= 682px — FOLLOW THE PROJECT (1 linha)
===================================================== */
@media (max-width: 682px){

  /* wrapper do bloco social */
  .vc_row.col-social-share,
  .vc_row.col-social-share .vc_column-inner{
    text-align: center !important;
  }

  /* heading */
  h4.vc_custom_heading.social-share-heading-we{
    display: inline-block !important;   /* impede quebra */
    width: auto !important;
    max-width: 100% !important;

    white-space: nowrap !important;     /* 🔥 chave */
    text-align: center !important;

    font-size: 14px !important;         /* menor */
    line-height: 1.3 !important;

    margin-top: 18px !important;        /* afasta da imagem */
    margin-bottom: 10px !important;

    padding: 0 12px !important;         /* respiro lateral */
  }

  /* força o texto interno a não quebrar */
  h4.vc_custom_heading.social-share-heading-we span,
  h4.vc_custom_heading.social-share-heading-we strong{
    white-space: nowrap !important;
    display: inline !important;
  }

}

@media (max-width: 680px){
    .col-partners{
        margin-top: -80px !important;
    }
}

@media (max-width: 678px){
  .we-project-heading-text{
    margin-top: 30px !important;
  }

  .we-project-text-description p{
    width: 100% !important;
  }
}
/* =====================================================
   WE PROJECT (page-id-5276) — REVIEWS ROW <= 680px
   full width (100vw) + pequenas bordas brancas
===================================================== */
@media (max-width: 680px){

  /* 1) Row a ocupar o ecrã todo */
  .page-id-5276 .jl-reviews-section{
    width: 100vw !important;
    max-width: 100vw !important;

    /* sai do container central do tema */
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
  }

  /* 2) matar paddings do WPBakery que desalinham */
  .page-id-5276 .jl-reviews-section .vc_column_container,
  .page-id-5276 .jl-reviews-section .vc_column-inner{
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* 3) “contentor” interno com bordas brancas pequenas */
  .page-id-5276 .jl-reviews-section .wpb_wrapper{
    width: calc(100vw - 24px) !important;      /* 12px + 12px */
    max-width: calc(100vw - 24px) !important;

    margin-left: auto !important;
    margin-right: auto !important;

    box-sizing: border-box !important;
  }

  /* 4) garantir que títulos/subtítulo seguem o contentor */
  .page-id-5276 .jl-reviews-section .vc_custom_heading,
  .page-id-5276 .jl-reviews-section .reviews-subtitle{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  /* 5) o form ocupa 100% do contentor */
  .page-id-5276 .jl-reviews-section .glsr-form{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
}
/* =====================================================
   WE PROJECT — FIX CENTER SOCIAL TITLE <= 480px
   (mata margins negativos inline e centra de verdade)
===================================================== */
@media (max-width: 480px){

  /* garante que o row/col não empurra */
  .page-id-5276 .vc_row.col-social-share,
  .page-id-5276 .vc_row.col-social-share .vc_column-inner,
  .page-id-5276 .vc_row.col-social-share .wpb_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  /* o heading que estava a ir para a direita por causa do -68px */
  .page-id-5276 h4.vc_custom_heading.social-share-heading-we{
    /* mata qualquer margem inline/VC */
    margin: 16px 0 10px 0 !important;
    padding: 0 12px !important;

    /* centra REAL, igual à imagem */
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;

    text-align: center !important;
    box-sizing: border-box !important;

    /* opcional: manter em 1 linha, mas sem rebentar layout */
    white-space: normal !important; /* deixa quebrar se precisar */
  }

  /* se quiseres MESMO 1 linha sempre (pode cortar em ecrãs muito pequenos) */
  /* .page-id-5276 h4.vc_custom_heading.social-share-heading-we{ white-space: nowrap !important; } */

  /* impede que spans/strong metam quebras estranhas */
  .page-id-5276 h4.vc_custom_heading.social-share-heading-we span,
  .page-id-5276 h4.vc_custom_heading.social-share-heading-we strong{
    white-space: inherit !important;
  }
}
/*////////////////////////////// FIM DE WE PROJECT //////////////////////////////*/











/*////////////////////////////// ABOUT THE ARTIST //////////////////////////////*/
.artist-title{
	margin-top: 150px !important;
}
.artist-text{
    max-width: 1100px;      /* controla o quão “encurtado” fica */
    margin: 40px auto;     /* auto = centra horizontalmente */
    font-size: 18px;
    font-family: 'Avenir Next Light', sans-serif;
    line-height: 1.7;      /* MUITO importante para leitura */
}

/* =========================================
   ABOUT THE ARTIST (page-id-1159) — MOBILE
   - texto mais largo
   - remover assinatura (traço)
========================================= */
@media (max-width: 680px){

  /* 1) Texto com mais largura (menos “encurtado”) */
  body.page-id-1159 .artist-text,
  body.page-id-1159 .wpb_text_column,
  body.page-id-1159 .wpb_text_column .wpb_wrapper{
    width: 100% !important;        /* podes subir p/ 96% se quiseres */
    max-width: 1100px !important;  /* antes estava demasiado curto */
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* se o tema estiver a meter padding estranho */
  body.page-id-1159 .vc_column_container,
  body.page-id-1159 .vc_column-inner{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 2) Assinatura (normalmente é background na row/coluna) */
  body.page-id-1159 .vc_row,
  body.page-id-1159 .vc_column_container,
  body.page-id-1159 .vc_column-inner{
    background-image: none !important;
  }

  /* 3) Se a assinatura for um elemento/imagem, mata também (fallback) */
  body.page-id-1159 img[src*="sign"],
  body.page-id-1159 img[src*="assin"],
  body.page-id-1159 .signature,
  body.page-id-1159 .jl-signature{
    display: none !important;
  }
}
@media (max-width: 680px){
/* se houver "Empty Space" acima a empurrar, reduz */
  body.page-id-1159 .empty_space_meet_the_art{
    height: 65px !important; /* ajusta conforme precisares */
  }
}
@media (max-width: 680px){

  /* ❌ remove dots do carrossel */
  body.page-id-1159 .owl-dots,
  body.page-id-1159 .slick-dots,
  body.page-id-1159 .swiper-pagination{
    display: none !important;
  }

  /* e tira o espaço que às vezes fica */
  body.page-id-1159 .owl-nav,
  body.page-id-1159 .owl-dots{
    margin-top: 0 !important;
  }
}
.artist-image-rounded-top img {
    mask-image: radial-gradient(
        circle, 
        rgba(0,0,0,1) 50%, 
        rgba(0,0,0,0) 95%
    );
    -webkit-mask-image: radial-gradient(
        circle, 
        rgba(0,0,0,1) 50%, 
        rgba(0,0,0,0) 95%
    );
}
@media (max-width:680px){
    .artist-image-rounded-top img {
    mask-image: none !important;
    -webkit-mask-image: none !important;
    }
}
/*////////////////////////////// FIM DE ABOUT THE ARTIST //////////////////////////////*/













/*////////////////////////////// CONTACTOS //////////////////////////////*/
/* ==========================
   CONTACT US — LARGURA / BORDAS (igual aos outros)
========================== */
.form-row .wpb_wrapper{
  width: 88% !important;        /* menos branco -> aumenta % */
  max-width: 520px !important;  /* igual ao padrão que tens usado */
  margin-left: auto !important;
  margin-right: auto !important;
}
.contact-form-text{
	margin-top: -25px !important;
	font-family: 'Avenir Next Light', sans-serif;
	font-size: 16px !important;
}
.wpcf7-form-control{
	background-color: #e4e2df !important;
}
.edgtf-pi-image{
	margin-left: 60px !important;
	border: 1px solid black;
}

/* ================================
   CONTACT US — imagens full width mobile
================================ */
/* um bocadinho mais largo em ecrãs maiores */
@media (min-width: 680px){
  .form-row .wpb_wrapper{
    width: min(900px, 88%) !important;
    max-width: 900px !important;
  }
}
@media (max-width: 680px){

  /* sai do container central */
  .single-product-contactos{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    margin-top: 55px !important;
  }

  /* cria as margens brancas suaves */
  .single-product-contactos .wpb_wrapper{
    width: 94% !important;   /* ajusta aqui: 92–96% */
    margin: 0 auto !important;
  }

  /* remove paddings do WPBakery */
  .single-product-contactos .vc_column_container,
  .single-product-contactos .vc_column-inner{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* imagem ocupa o espaço certo */
  .single-product-contactos .wpb_single_image img{
    width: 100% !important;
    height: auto !important;
    display: block;
  }

  /* título do quadro (Safe Place, Roots, etc.) */
  .single-product-contactos .wpb_text_column{
    margin-top: 28px !important;
  }
}
/* ===============================
   CONTACT US — FORÇAR CENTRAGEM REAL
================================ */
@media (max-width: 680px){

  /* força cada coluna a centrar */
  .single-product-contactos{
    display: flex !important;
    justify-content: center !important;
  }

  /* wrapper central real */
  .single-product-contactos .vc_column-inner,
  .single-product-contactos .wpb_wrapper{
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }

  /* imagem mesmo ao centro */
  .single-product-contactos .wpb_single_image{
    display: flex !important;
    justify-content: center !important;
  }
}
/*////////////////////////////// FIM DE CONTACTOS //////////////////////////////*/










/* ================================================
FOOTER 
==================================================*/
/* ===== FOOTER TOP CUSTOM ===== */
.jl-footer-top{
  width: min(1200px, 92%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.3fr 1fr 1fr 1fr !important;
  gap: 50px !important;
	margin-bottom: -50px !important;
}
.jl-footer-col{
  display: flex !important;
  flex-direction: column !important;
}
.jl-footer-desc{
  line-height: 1.6 !important;
  opacity: .8 !important;
  max-width: 320px !important;
}
.jl-footer-title{
  font-family: "Bangla MN", serif !important;
  text-transform: uppercase !important;
  letter-spacing: 3px !important;
  font-size: 13px !important;
  margin: 0 0 18px 0 !important;
}
.jl-footer-links{
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.jl-footer-links li{
  margin-bottom: 10px !important;
}
.jl-footer-links a{
  text-decoration: none !important;
  opacity: .85 !important;
	color: black !important;
}
.jl-footer-links a:hover{
  opacity: 1 !important;
}
/* RESPONSIVE */
@media (max-width: 1025px){
  .jl-footer-top{
    margin-bottom: 0 !important;
    padding-bottom: 35px !important;
  }

  .jl-footer-bottom{
    margin-top: 10px !important;
    clear: both !important;
  }
}
@media (max-width: 900px){
  .jl-footer-top{
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
/* =========================
   FOOTER MOBILE – LAYOUT FINAL
========================= */
/* MOBILE */
@media (max-width: 680px){
  .jl-footer-bottom{
    flex-direction: column !important;
    gap: 10px !important;
    text-align: center !important;
  }
}
@media (max-width: 520px){

  .jl-footer-top{
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
  }

  /* Logo em cima */
  .jl-footer-brand{
    grid-column: 1 / -1 !important;
    text-align: center !important;
    align-items: center !important;
  }

  /* MENU à esquerda */
  .jl-footer-menu{
    grid-column: 1 / 2 !important;
    text-align: left !important;
  }

  /* CATEGORIES à direita */
  .jl-footer-categories{
    grid-column: 2 / 3 !important;
    text-align: left !important;
  }

  /* CONTACT centrado abaixo dos dois */
  .jl-footer-contact{
    grid-column: 1 / -1 !important;
    text-align: center !important;
    align-items: center !important;
    margin-top: 10px !important;
  }

  .jl-footer-contact .jl-footer-links{
    align-items: center !important;
  }
}

/* ===== FOOTER BOTTOM CUSTOM ===== */
.jl-footer-bottom{
  width: min(1200px, 92%) !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  font-size: 13px !important;
  opacity: .75 !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
}

.jl-footer-bottom a{
  text-decoration: none !important;
}

.jl-footer-bottom a:hover{
  opacity: 1 !important;
}

.jl-footer-bottom-right{
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.jl-footer-sep{
  opacity: .5 !important;
}

/* Esconder os botões do Stripe nas páginas de produto */
.single-product #wc-stripe-express-checkout-element,
.single-product .wc-stripe-express-checkout-button-container {
    display: none !important;
}

/* Garante que eles continuam visíveis na página de Checkout */
.woocommerce-checkout #wc-stripe-express-checkout-element {
    display: block !important;
}
/* ================================================
            FIM DE FOOTER 
==================================================*/















