/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ===== HERO full-bleed para Astra ===== */

.ast-plain-container .entry-content[data-ast-blocks-layout] > .alignwide{margin-left:0px;}

body.home #primary {margin-top: 0px!important; }

/* 1) Na home, deixa o .ast-container em largura total,
   mas SEM tirar o "container" visual do resto */
.home .site-content .ast-container{
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}

/* 2) Hero com fundo ocupando 100% da tela */
.home .huu-hero{
  background: #f5fafc;
}

/* 3) Conteúdo do hero centralizado, com largura de container */
.home .huu-hero__inner{
  max-width: 1180px;       /* “container” */
  margin: 0 auto;
  padding: 80px 24px 90px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 64px;
}

/* Colunas */
.home .huu-hero__copy{
  flex: 1 1 55%;
}
.home .huu-hero__art{
  flex: 1 1 45%;
  display: flex;
  justify-content: center;
}

/* Títulos e texto */
.home .huu-hero__title{
  font-size: 40px;
  line-height: 1.2;
  margin: 0 0 14px;
  color: #111827;
}
.home .huu-hero__title strong{
  color: #1f7a2e;
}
.home .huu-hero__text{
  font-size: 16px;
  line-height: 1.7;
  color: #374151;
  max-width: 560px;
}

/* Cartão da ilustração */
.home .huu-hero__art-figure{
  width: 100%;
  max-width: 420px;
  background: radial-gradient(circle at 10% 0%, #fff9e9 0%, #ffe6bd 40%, #ffd79a 100%);
  border-radius: 32px;
  padding: 32px 32px 40px;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .18);
}
.home .huu-hero__art-figure img,
.home .huu-hero__art-figure svg{
  display: block;
  width: 100%;
  height: auto;
}

/* Responsivo */
@media (max-width: 992px){
  .home .huu-hero__inner{
    padding: 60px 20px 70px;
    flex-direction: column;
    text-align: center;
  }
  .home .huu-hero__text{
    margin: 0 auto;
  }
}
@media (max-width: 600px){
  .home .huu-hero__inner{
    padding: 48px 18px 60px;
  }
  .home .huu-hero__title{
    font-size: 32px;
  }
}


/* === HERO FULL BLEED (independe do Astra) ======================= */

/* Faz o bloco .huu-hero ocupar 100vw mesmo dentro do .ast-container */
.home .huu-hero.fullbleed{
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  max-width: 100vw;
  background:#f5fafc; /* cor do fundo do hero */
}

/* Conteúdo centralizado dentro do hero */
.huu-hero__inner{
  max-width: 1180px;
  margin: 0 auto;
  padding: 70px 24px 90px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 64px;
}

.huu-hero__copy{
  flex: 1 1 55%;
}
.huu-hero__art{
  flex: 1 1 45%;
  display:flex;
  justify-content:center;
}

/* Tipografia do hero */
.huu-hero__accent{
  display:block;
  color:#1f7a2e;
  font-weight:700;
}
#huu-hero-title{
  font-size: 40px;
  line-height: 1.2;
  margin: 0 0 16px;
  color:#111827;
}
.huu-hero__lead{
  font-size:16px;
  line-height:1.7;
  color:#374151;
  max-width:540px;
}

/* Ilustração */
.huu-hero__svg{
  display:block;
  width:100%;
  max-width:420px;
  height:auto;
  filter: drop-shadow(0 24px 60px rgba(15,23,42,.18));
  border-radius:32px;
}

/* === BOTÃO DO HERO (sem sublinhado) ============================= */

.huu-hero .huu-btn,
.huu-hero .huu-btn:visited,
.huu-hero .huu-btn:hover,
.huu-hero .huu-btn:focus{
  text-decoration:none !important;
}

.huu-hero .huu-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 22px;
  border-radius:999px;
  background:#1f7a2e;
  color:#fff;
  font-weight:600;
  border:none;
  box-shadow:0 10px 24px rgba(31,122,46,.25);
  transition:background .2s ease, transform .15s ease, box-shadow .2s ease;
}
.huu-hero .huu-btn:hover{
  background:#2aa241;
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(31,122,46,.28);
}

/* === RESPONSIVO ================================================== */
@media (max-width: 992px){
  .huu-hero__inner{
    padding:60px 20px 70px;
    flex-direction:column;
    text-align:center;
  }
  .huu-hero__lead{
    margin:0 auto;
  }
}
@media (max-width: 600px){
  #huu-hero-title{ font-size:32px; }
  .huu-hero__inner{ padding:48px 16px 60px; }
}



/* Botão do hero */
.huu-hero .huu-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 22px;
  border-radius: 999px;
  background:#1f7a2e;
  color:#fff;
  font-weight:600;
  text-decoration:none !important;
  border:none;
  box-shadow:0 10px 24px rgba(31,122,46,.25);
  transition:background .2s ease, transform .15s ease, box-shadow .2s ease;
}

.huu-hero .huu-btn:hover,
.huu-hero .huu-btn:focus{
  background:#2aa241;
  text-decoration:none !important;
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(31,122,46,.28);
}

/* Se o tema tentar sublinhar qualquer link dentro do botão */
.huu-hero .huu-btn *,
.huu-hero .huu-btn span{
  text-decoration:none !important;
}




/* ====== Garantia de full-bleed mesmo em layouts Astra ====== */
/* evita que .ast-container “aperte” o herói */
.ast-container .huu-hero.fullbleed{ width:100vw; }

/* Força o botão do hero SEM sublinhado */
.huu-hero .huu-btn,
.huu-hero .huu-btn:visited,
.huu-hero .huu-btn:hover,
.huu-hero .huu-btn:focus{
  text-decoration: none !important;
  border-bottom: none !important; /* se o tema usar border como "underline" */
}

.huu-hero .huu-btn span{
  text-decoration: none !important;
}




/* ===== Woo Single — layout limpo, alinhado e responsivo (consolidado) ===== */
/* Woo Single — layout limpo e alinhado */
.single-product div.product{
  background:#fff;
  border:1px solid #efe7da;
  border-radius:16px;
  box-shadow:0 12px 28px rgba(179,135,85,.12);
  padding:18px 16px;
}

.single-product .woocommerce-product-gallery{ margin:0 0 16px; }
.single-product .entry-summary{ margin:0; }

.single-product .product_title{
  color:#1b1b1b;
  font-size:24px;
  line-height:1.25;
  margin:0 0 10px;
}
.single-product .price{
  color:#1f7a2e;
  font-weight:700;
  font-size:20px;
  margin:6px 0 12px;
}

.single-product .single_add_to_cart_button{
  background:#1f7a2e;
  border:none;
  border-radius:10px;
  font-weight:600;
  padding:12px 18px;
  color:#fff;
  box-shadow:0 8px 20px rgba(32,122,46,.18);
  transition:background .2s, transform .15s;
}
.single-product .single_add_to_cart_button:hover{
  background:#2aa241;
  transform:translateY(-1px);
}

.single-product .product_meta .posted_in a, .single-product .product_meta .sku_wrapper span{
  display:inline-block;
  padding:4px 9px;
  border-radius:999px;
  background:#eef9f0;
  color:#185e24;
  text-decoration:none;
  border:1px solid rgba(24,94,36,.08);
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
}
.single-product .product_meta .posted_in a:hover, .single-product .product_meta .sku_wrapper span:hover{
  background:#e6f6ea;
  color:#0f4d1b;
  border-color:rgba(24,94,36,.18);
}

.single-product .woocommerce-product-gallery__image img{
  border-radius:14px;
  outline:6px solid #fff;
  box-shadow:0 14px 30px rgba(0,0,0,.08);
}


/* Desktop: 2 colunas com grid e respiro equilibrado */
@media (min-width: 992px) { 
  .single-product div.product {
    display: grid;
    grid-template-columns: minmax(400px, 560px) 1fr;
    gap: 64px;
    align-items: center;
    background: #fff;
    border: 1px solid #efe7da;
    border-radius: 16px;
    box-shadow: 0 16px 38px rgba(179, 135, 85, 0.12);
    padding: 42px 48px;
    max-width: 1180px;
    margin: 0px auto;
  }

  /* Galeria: centralizada visualmente */
  .single-product .woocommerce-product-gallery {
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  /* Caixa de conteúdo */
  .single-product .entry-summary {
    align-self: center;
    padding-right: 24px;
  }

  /* Título com mais destaque e espaçamento */
  .single-product .product_title {
    font-size: 32px;
    margin-bottom: 12px;
    line-height: 1.3;
    color: #1b1b1b;
  }

  /* Preço mais visível e separado */
  .single-product .price {
    font-size: 22px;
    margin-bottom: 18px;
    color: #1f7a2e;
    font-weight: 700;
  }

  /* Botão com contraste e arredondamento */
  .single-product .single_add_to_cart_button {
    background: #1f7a2e;
    border: none;
    border-radius: 10px;
    font-weight: 600;
    padding: 13px 22px;
    color: #fff;
    box-shadow: 0 8px 20px rgba(32, 122, 46, 0.18);
    transition: background 0.25s, transform 0.15s;
  }
  .single-product .single_add_to_cart_button:hover {
    background: #2aa241;
    transform: translateY(-1px);
  }

  /* Categoria em pill */
  .single-product .product_meta .posted_in a {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    background: #eef9f0;
    color: #185e24;
    text-decoration: none;
    border: 1px solid rgba(24, 94, 36, 0.08);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
  }
  .single-product .product_meta .posted_in a:hover {
    background: #e6f6ea;
    color: #0f4d1b;
  }
}


/* Telas muito estreitas */
@media (max-width:420px){
  .single-product div.product{ padding:14px 12px; }
  .single-product .product_title{ font-size:22px; }
}


/* 1) Galeria: usa a coluna por completo e centraliza a imagem */
.single-product .woocommerce-product-gallery,
.single-product .entry-summary{
  float: none !important; /* mata floats herdados do tema/Woo */
}

.single-product .woocommerce-product-gallery{
  width: 100% !important;
  max-width: 560px;              /* casa com sua grid */
  margin: 0; 
  display: flex; 
  justify-content: center; 
  align-items: center;
}

.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image{
  width: 100% !important;
  max-width: 100% !important;
}

.single-product .woocommerce-product-gallery__image img{
  width: 100% !important;
  height: auto !important;
  object-fit: contain;
}

/* 2) Some o traço (border) padrão do Woo abaixo do preço/btn */
.single-product .entry-summary .price,
.single-product .entry-summary form.cart,
.single-product .entry-summary .woocommerce-product-details__short-description{
  border: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 16px;
}

/* 3) Refinos para ≤ 991px (empilhado e centrado) */
@media (max-width: 991px){
  .single-product div.product{
    display: block;            /* volta ao empilhado limpo */
    padding: 18px 16px;
    max-width: 720px;
    margin: 28px auto;
  }
  .single-product .woocommerce-product-gallery{
    max-width: 520px;
    margin: 0 auto 16px;
  }
  .single-product .entry-summary{
    padding-right: 0;
    text-align: left;          /* pode trocar pra center se preferir */
  }
  .single-product .product_title{ font-size: 26px; }
  .single-product .price{ font-size: 20px; }
}

/* micro-ajuste no hover do zoom pra não "morder" a moldura */
.single-product .woocommerce-product-gallery__trigger{
  top: 10px; right: 10px;
}

/* ===== LARGURA DO SUMMARY (desktop) ===== */
@media (min-width: 992px){
  /* remove widths herdadas do tema */
  .single-product .summary,
  .single-product .entry-summary{
    width: 100% !important;
    max-width: none !important;
  }
  /* limite de leitura confortável (opcional) */
  .single-product .entry-summary{
    max-width: 680px;   /* ajuste entre 640–720 se quiser mais/menos largo */
  }
}

/* ===== TABS: mesma largura do card, centralizadas ===== */
.single-product .woocommerce-tabs{
  max-width: 1180px;      /* mesmo do .product */
}

/* tira linhas/resquícios do tema dentro das tabs */
.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-tabs .wc-tabs{
  border: 0 !important;
  box-shadow: none !important;
}

/* (Opcional) se quiser as TABS com o mesmo "cartão" da dobra */
@media (min-width: 992px){

  .woocommerce #content div.product .woocommerce-tabs{
    min-width:1090px;
  }

}

/* ===== Correções adicionais comuns ===== */
.single-product .summary,
.single-product .entry-summary,
.single-product .woocommerce-product-gallery{
  float:none !important;   /* mata floats de tema/Woo */
}

/* ===== Mobile: centralizar preço + botão no summary ===== */
@media (max-width: 767px){
  .single-product .entry-summary{
    text-align:center;              /* centraliza textos do bloco */
  }

  /* preço */
  .single-product .entry-summary .price{
    display:block;
    margin:10px auto 14px;          /* centraliza e dá respiro */
  }

  /* formulário do carrinho (qty + botão) */
  .single-product .entry-summary form.cart{
    display:flex;
    justify-content:center;         /* centraliza conteúdo do form */
    align-items:center;
    gap:10px;
    margin:0 auto 12px;
    width:100%;
  }

  /* botão */
  .single-product .entry-summary .single_add_to_cart_button{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    margin:0 auto;                  /* garante centralização */
  }

  /* se tiver campo de quantidade, deixar compacto */
  .single-product .entry-summary form.cart .quantity{
    margin:0;
  }
}

/* opcional: em telas bem estreitas empilha qty e botão */
@media (max-width: 420px){
  .single-product .entry-summary form.cart{
    flex-direction:column;
    gap:8px;
  }
}

/* Summary (mobile e desktop): limpar divisor e centralizar meta */
.single-product .entry-summary .product_meta{
  border-top: 0 !important;          /* remove o traço */
  text-align: center;                 /* centraliza o bloco */
}

/* mantém o pill centralizado e sem quebrar */
.single-product .entry-summary .product_meta .posted_in{
  display: inline-block;
  margin: 0;                          /* zera margens do tema */
}

/* garante respiro entre botão e meta */
.single-product .entry-summary form.cart{
  margin-bottom: 14px !important;
}

/* (segurança) preço e botão sempre centrados no mobile */
@media (max-width: 767px){
  .single-product .entry-summary{ text-align: center; }
  .single-product .entry-summary .price{ display:block; margin:10px auto 14px; }
  .single-product .entry-summary .single_add_to_cart_button{ margin:0 auto; }
}

/* === Add to cart: visual consistente (verde) === */
.single-product .entry-summary .single_add_to_cart_button,
.single-product .entry-summary .button.single_add_to_cart_button{
  background: #1f7a2e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 12px;
  padding: 12px 20px;
  font-weight: 700;
  line-height: 1.1;
  box-shadow: 0 8px 20px rgba(32,122,46,.18);
  transition: background .25s ease, transform .15s ease;
  width: 99% !important;
}
.single-product .entry-summary .single_add_to_cart_button:hover{
  background: #2aa241 !important;
  transform: translateY(-1px);
}

/* qty mais elegante (se estiver visível) */
.single-product .entry-summary form.cart{
  /*display: flex; */
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
}
.single-product .entry-summary form.cart .quantity .qty{
  height: 44px;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
  padding: 0 12px;
}

/* === Mobile: centralizar preço e botão === */
@media (max-width: 767px){
  .single-product .entry-summary{ text-align: center; }

  .single-product .entry-summary .price{
    display: block;
    margin: 10px auto 14px;
  }

  .single-product .entry-summary form.cart{
    justify-content: center;
    flex-direction: column;      /* empilha qty + botão */
    gap: 8px;
  }
  .single-product .entry-summary .single_add_to_cart_button{
    width: 100%;
    max-width: 320px;            /* não passa disso */
    margin: 0 auto;
  }

  /* meta/categoria centralizada no mobile */
  .single-product .entry-summary .product_meta{
    text-align: center !important;
    border-top: 0 !important;
    padding-top: 10px !important;
    margin-top: 10px !important;
  }
  .single-product .entry-summary .product_meta .posted_in{ display:inline-block; margin:0; }
}

/* === Desktop: tudo à esquerda (meta NÃO centraliza) === */
@media (min-width: 992px){
  .single-product .entry-summary{ text-align: left; }
  .single-product .entry-summary form.cart{ justify-content: flex-start; }
  .single-product .entry-summary .product_meta{ text-align: left !important; }
}

.woocommerce-js .sold-individually .button.single_add_to_cart_button {
  margin-left: 0em;
}

/* === Corrige layout de TABS e Produtos Relacionados na single === */
@media (min-width: 992px){

  /* Tabs e relacionados devem ocupar as 2 colunas do grid */
  .single-product div.product .woocommerce-tabs,
  .single-product div.product > section.related.products{
    grid-column: 1 / -1;      /* pega da coluna 1 até a última */
    width: 100%;
    max-width: 1180px;        /* casa com o card, se quiser */
    margin-top: 40px;
  }
}

/* segurança extra: nada de float nos relacionados */
.single-product section.related.products{
  clear: both;
}
