/**
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;
}



/* =========================================================
   HUUGUU / WOO SINGLE
   Tema filho – layout da single compatível com Huuguu Variation UI
========================================================= */

/* Card geral do produto */
.single-product div.product {
	background: #fff;
	border: 1px solid #efe7da;
	border-radius: 16px;
	box-shadow: 0 12px 28px rgba(179, 135, 85, 0.12);
	padding: 18px 16px;
}

/* Galeria */
.single-product .woocommerce-product-gallery {
	position: relative;
	width: 100% !important;
	max-width: 560px;
	margin: 0 0 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	float: none !important;
}

.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;
	border-radius: 14px;
	outline: 6px solid #fff;
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.08);
}

.single-product .woocommerce-product-gallery__trigger {
	top: 10px;
	right: 10px;
}

/* Badge de oferta */
.single-product div.product {
	position: relative;
}

.single-product div.product .ast-onsale-card-wrapper,
.single-product div.product .onsale,
.single-product div.product .ast-on-card-button {
	position: absolute !important;
	top: 58px !important;
	left: 48px !important;
	z-index: 5;
}

/* Summary */
.single-product .summary,
.single-product .entry-summary {
	float: none !important;
	margin: 0;
}

.single-product .entry-summary {
	text-align: left;
}

.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;
}

/* Remove divisores herdados */
.single-product .entry-summary .price,
.single-product .entry-summary .woocommerce-product-details__short-description,
.single-product .entry-summary form.cart {
	border: 0 !important;
	padding-bottom: 0 !important;
}

/* Botão base */
.single-product .single_add_to_cart_button,
.single-product .button.single_add_to_cart_button {
	background: #1f7a2e;
	border: none;
	border-radius: 12px;
	font-weight: 700;
	padding: 12px 20px;
	color: #fff;
	box-shadow: 0 8px 20px rgba(32, 122, 46, 0.18);
	transition: background 0.25s ease, transform 0.15s ease;
	line-height: 1.1;
	min-height: 48px;
}

.single-product .single_add_to_cart_button:hover,
.single-product .button.single_add_to_cart_button:hover {
	background: #2aa241;
	transform: translateY(-1px);
}

/* Estado disabled */
.single-product .single_add_to_cart_button.disabled,
.single-product .single_add_to_cart_button:disabled,
.single-product .single_add_to_cart_button.wc-variation-selection-needed {
	opacity: 1;
	background: #8fbd97;
	color: #fff;
	cursor: not-allowed;
	box-shadow: none;
}

/* Corrigir regras herdadas do Woo/Astra */
.woocommerce-js div.product .single_add_to_cart_button,
.woocommerce-js .sold-individually .button.single_add_to_cart_button,
.single-product.woocommerce-js div.product form.cart .button.single_add_to_cart_button,
.single-product.woocommerce-js div.product form.cart .single_add_to_cart_button {
	margin-left: 0 !important;
	float: none !important;
}

/* Quantity oculta não pode ocupar espaço */
.single-product div.product .variations_form .quantity,
.single-product div.product .variations_form .quantity[style*="display: none"] {
	display: none !important;
	float: none !important;
	margin: 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

/* Botão do produto variável */
.single-product div.product .variations_form .single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 360px;
	padding: 14px 24px;
	border-radius: 12px;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* SKU / categorias */
.single-product .product_meta {
	margin-top: 22px;
	line-height: 1.9;
}

.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as,
.single-product .product_meta .sku_wrapper {
	white-space: normal;
}

.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as a,
.single-product .product_meta .sku_wrapper span {
	margin-right: 6px;
	margin-bottom: 6px;
}

.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as 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, 0.08);
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
}

.single-product .product_meta .posted_in a:hover,
.single-product .product_meta .tagged_as a:hover,
.single-product .product_meta .sku_wrapper span:hover {
	background: #e6f6ea;
	color: #0f4d1b;
	border-color: rgba(24, 94, 36, 0.18);
}

@media (min-width: 992px) {
	.single-product div.product {
		display: grid;
		grid-template-columns: minmax(320px, 520px) minmax(420px, 1fr);
		gap: 40px;
		align-items: start;
		padding: 42px 40px;
		max-width: 1180px;
		margin: 0 auto;
		overflow: visible;
	}

	.single-product .woocommerce-product-gallery {
		position: sticky;
		top: 0px;
		align-self: start;
		display: block;
		margin: 0;
		max-width: 520px;
		overflow: visible;
	}

	.single-product .entry-summary {
		align-self: start;
		padding-right: 0;
		width: 100% !important;
		max-width: none !important;
		text-align: left;
	}

	.single-product .product_title {
		font-size: 32px;
		margin-bottom: 12px;
		line-height: 1.3;
	}

	.single-product .price {
		font-size: 22px;
		margin-bottom: 18px;
	}

	.single-product div.product .single_variation {
		text-align: left;
	}

	.single-product div.product .product_meta {
		text-align: left;
        padding-top: 15px;
        margin-top: 5px;
	}

	.woocommerce-js div.product .product_meta {
	  border-top: 1px solid #F0F1F2;
	}

	.single-product div.product .woocommerce-tabs,
	.single-product div.product > section.related.products {
		grid-column: 1 / -1;
		width: 100%;
		max-width: 1180px;
		margin-top: 10px;
	}

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



/* Tablet */
@media (max-width: 991px) {
	.single-product div.product {
		display: block;
		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;
	}

	.single-product .product_title {
		font-size: 26px;
	}

	.single-product .price {
		font-size: 20px;
	}
	.single-product div.product .ast-onsale-card-wrapper,
	.single-product div.product .onsale,
	.single-product div.product .ast-on-card-button {
		top: 18px !important;
		left: 18px !important;
	}
}

/* Mobile */
@media (max-width: 782px) {
	.single-product div.product .single_variation_wrap,
	.single-product div.product .variations_form .woocommerce-variation-add-to-cart {
		text-align: center;
	}

	.single-product div.product .variations_form .single_add_to_cart_button {
		display: inline-flex !important;
		width: auto !important;
		min-width: 260px;
		max-width: 100%;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.single-product div.product .product_meta {
		text-align: left;
	}

	#ast-scroll-top,
	.ast-scroll-top-icon,
	.ast-scroll-to-top-right {
		bottom: 100px !important;
	}
}

@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 .product_meta {
		text-align: left !important;
		border-top: 0 !important;
		padding-top: 10px !important;
		margin-top: 10px !important;
	}
	.single-product .product_meta .sku_wrapper,
	.single-product .product_meta .posted_in,
	.single-product .product_meta .tagged_as {
		display: block;
		text-align: left;
	}

	.single-product .product_meta .posted_in a,
	.single-product .product_meta .tagged_as a,
	.single-product .product_meta .sku_wrapper span {
		margin-right: 6px;
		margin-bottom: 6px;
	}
}

@media (max-width: 420px) {
	.single-product div.product {
		padding: 14px 12px;
	}

	.single-product .product_title {
		font-size: 22px;
	}
}

/* Tabs */
.single-product .woocommerce-tabs {
	max-width: 1180px;
}

.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-tabs .wc-tabs {
	border: 0 !important;
	box-shadow: none !important;
}

/* Relacionados */
.single-product section.related.products {
	clear: both;
}