/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: Astra is fast, fully customizable &amp; beautiful WordPress theme suitable for blog, personal portfolio, business website and WooCommerce storefront. 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 and is Native AMP ready so search engines will love your site. It offers special features and templates so it works perfectly with all page builders like Elementor, Beaver Builder, Visual Composer, SiteOrigin, Divi, etc. Some of the other features: # WooCommerce Ready # Responsive # RTL &amp; Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained &amp; Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and WooCommerce ready theme that you can use for building any kind of website!
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.5.1.1702266148
Updated: 2023-12-11 04:42:28

*/
.wttw {display: none;}
h1, h2, h3, h4, h5, h6 {
	text-wrap: balance;
}
a:focus, .ast-menu-toggle:focus, button:focus, #menu-toggle-close:focus {
  outline: 0;
}
.site-header .menu-link * {
  display: inline-block;
}
.tcenter {text-align: center;}

/* close mobile menu */
.ahfb-svg-iconset svg {
  width: 32px;
  height: 32px;
}

/* mega menu */
.ast-desktop .ast-builder-menu-1 .menu-item .sub-menu li.menu-turismo-title .menu-link {
	font-size: 16px;
	border-bottom: 1px solid #8ac14a;
	color: #8ac14a;
	margin-bottom: 20px;
	padding: 0 0 5px 0;
}
.ast-desktop .ast-builder-menu-1 .menu-item .sub-menu li.menu-turismo-title .menu-link:last-child {
	margin-top: 15px;
}
.turismo-class ul.sub-menu {
	padding: 20px 18px 10px 18px;
	min-width: 310px;
}
.turismo-class ul.sub-menu .menu-turismo-item a.menu-link {
	line-height: 1;
	border: none;
	padding: 8px 0 8px 18px;
	position: relative;
}
.turismo-class ul.sub-menu .menu-turismo-item a.menu-link:before{
	content: "\f054";
	position: absolute; top: 8px; left: 0;
  display: inline-block; text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: 700 14px "Font Awesome 5 Free";
}

ul.sub-menu .crmm-widget {
  margin-bottom: 20px;
}
/* h5.crmm-widget-title {
	font-size: 16px;
	border-bottom: 1px solid #8ac14a;
	color: #8ac14a;
	margin-bottom: 20px;
	padding-bottom: 5px;
} */


ul.crmm-list > li:first-child {
  padding: 0 0 8px;
}
ul.crmm-list a {
	color: #000000;
}
ul.crmm-list a:hover {
	color: var(--ast-global-color-0);
}
ul.crmm-list li a::before {
  content: "\f105";
  font-weight: 500;
  font-size: 11px;
}

/* subscriptions */
.woocommerce-js div.product form.cart .variations select {padding: .75em;}
js div.product span.price {font-size: 1.1rem;}
.wapf-wrapper {margin-left: 0 !important;}
.wapf-field-container {padding: 0 0 15px 0 !important;}
.wapf-field-label label, .variations label {
  font-weight: 700;
  font-size: 14px;
  color: #ff8400;
}
.label-above .wapf-field-label,
.woocommerce-js div.product form.cart .variations th {
  margin-bottom: 5px;
}
.wapf-field-group input {font-size: 15px;}

/* contact form reset */
.wpcf7-form-control-wrap textarea {resize: none; max-height:130px;}
.wpcf7-not-valid-tip {font-size: 12px;}
.wpcf7 input:not([type="submit"]), .wpcf7 select, .wpcf7 textarea {
  padding: 8px 15px;
}
#requestForm p label {width: 100%;}
#requestForm .wpcf7-select {
	color: #9ca3af;
}
/* modal */
	.modalContent {cursor: pointer;}
	.dark, .message {display: none; opacity: 0; position: fixed;}
	.dark {
		background: rgba(0,0,0,.75);
		z-index: 1001; left: 0; top: 0; 
		width: 100%; height: 100%;
	}
	.message {
		max-width: 600px;
		max-height: 85vh;
		overflow-y: auto;
		z-index: 1002; background: #fff;
		border-radius: 8px;
		padding: 25px 30px 10px; left: 50%; top: 50%;
		-moz-transform: translate(-50%, -50%);
		-o-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%); 
	}
	.message .close {
		position: absolute;
		top: 15px; right: 12px;
		cursor: pointer; z-index: 1003;
	}

	.message .bar {
	    width: 25px; height: 4px; margin: 6px 0;
		border-radius: 2px;
	    background: #910000; transition: 0.4s;
	}
	.message .bar1 {
	    -webkit-transform: rotate(-45deg) translate(-3px, 3px);
	    transform: rotate(-45deg) translate(-3px, 3px);
	}.message .bar2 {
	    -webkit-transform: rotate(45deg) translate(-4px, -4px);
	    transform: rotate(45deg) translate(-4px, -4px);
	}

	@media screen and (max-width: 860px) {
		.promo img {width: 100%;}
		.message {width: 95%;}
	}


/* woocommerce resets */
.woocommerce-js .woocommerce-ordering select, .woocommerce-page .woocommerce-ordering select {
	border: 1px solid var(--ast-border-color);
	border-radius: 3px;
	padding: .8em;
	min-width: 280px;
}

.sidebar-main button.wp-block-search__button.has-icon {
  padding: .7em 1em;
  background: transparent;
  color: #333;
  padding: 5px 5px;
}
.ast-left-sidebar #secondary {
	padding-right: 30px;
}
.ast-woo-sidebar-widget {
  margin: 0 0 2em 0;
	border-bottom: 1px solid #dddddd;
}
.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls {
  justify-content: space-between;
}
.woocommerce-page .widget .wc-block-price-slider input[type="range"]::-moz-range-thumb {
  width: 5px;
}
.sidebar-main h2, .widget .wp-block-heading {
	font-size: 18px;
	text-transform: uppercase;
	color: #ff8400;
}
.wp-widget-group__inner-blocks {
	margin: 0;
}
.woocommerce-js ul.products {
  padding-top: 15px;
	border-top: 1px solid #ddd;
}
.woocommerce .woocommerce-ordering {
  margin-bottom: 1.5em;
}
h2.woocommerce-loop-product__title {
	color: #ff8400;
}
.woocommerce-js div.product form.cart .button.single_add_to_cart_button {
  padding: 15px 20px;
}
ul.tabs.wc-tabs {
	text-align: center;
	text-transform: uppercase;
}
.woocommerce-js div.product .woocommerce-tabs .panel {
  margin: 0 auto 1.2em;
  max-width: 1024px;;
}
.wc-block-components-price-slider--is-input-inline .wc-block-components-price-slider__controls .wc-block-components-price-slider__amount {
	border: none;
	font-size: 0.9rem;
	padding: 0;
}
.wc-block-components-price-slider--is-input-inline .wc-block-components-price-slider__controls .wc-block-components-price-slider__amount:last-child {
	text-align: right;
}
/* search */
.searchButton .wp-block-search__inside-wrapper {
	outline: 0 !important;
 	border: none;
	padding: 0;
}
 /* shop categories */
.shopCategories a span:hover {color: var(--ast-global-color-0)}
.priceFIlter {}

.searchButton button {margin: 0;}
input[type="search"]:focus {
	outline: 0;
}
 /*footer menu */
li.footer_menu a {color: var(--white);}
li.footer_menu a:hover,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner a:hover {
	color: var(--ast-global-color-0)
}

/* valoraciones */
.woocommerce-Reviews {display: flex;}
.woocommerce-js #reviews #review_form {border-radius: 5px;}
.woocommerce-js #review_form #respond textarea {resize: none;}
.woocommerce-js .comment-reply-title {
  font-size: 16px;
  font-weight: 700;
}
.woocommerce-js #reviews .comment-form-rating label, .woocommerce-js #reviews .comment-form-comment label {font-size: 14px;}
.woocommerce .comment-form-rating .stars a {color: #EABE12;}
.woocommerce .comment-form-rating .stars a:hover {color: #EABE12;}
.woocommerce-js p.stars a::before {top: -5px;}

/* cart */
.woocommerce.widget_shopping_cart .cart_list li {
	padding: 1.1em 1.1rem 1.1em 4.5em;
	font-size: 15px;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  line-height: 1rem;
}
.woocommerce-js table.shop_table {font-size: 15px;}
.woocommerce-js table.shop_table .order-total {font-size:18px;}
.woocommerce-js table.shop_table tbody th {font-weight:700; padding: .7em 0.5em;}
.woocommerce-js table.shop_table tbody td {text-align: right; padding: .7em 0.5em;}
.woocommerce-js #content table.cart td {text-align: center;}
.woocommerce-js #content table.cart td.product-name,
.woocommerce-page.woocommerce-checkout form #order_review td.product-name {text-align: left;}

.woocommerce-variation-price .price .price_time_opt,
.woocommerce-variation-price .price .ywsbs-price-detail {
	display: none;
}

.wapf-field-label .wapf-pricing-hint {
	display: none;
}

.lcc-forms {
	box-shadow: 0px 4px 16px 0px rgba(17, 17, 26, 0.05), 0px 8px 32px 0px rgba(17, 17, 26, 0.05);
	border-radius: 30px;
    padding: 60px;
	border-width: 0 !important;
}

.lcc-forms .ur-frontend-form .ur-form-row .ur-form-grid .ur-field-item {
	margin-bottom: 10px;
}

.lcc-forms .ur-frontend-form .ur-form-row .ur-form-grid label {
	margin-top: 0;
}

@media (min-width: 1024px) {
	.woocommerce-message {margin-bottom: 1rem;}
	.woocommerce-notices-wrapper {width: 100%;}
	.woocommerce-cart-form {
		float: left;
 		width: calc(66.666667% - 15px);
	}
	.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals {
		float: right;
		width: calc(33.333333% - 15px);
	}
	.woocommerce-cart .cart-collaterals .cart_totals {
		width: 100%;
	}
	.site .site-content #primary .ast-article-single,.ast-separate-container .site-content #secondary .widget {
		padding-top: 0px;
	}
}
.elementor-widget-video .e-hosted-video .elementor-video {
	background-color: transparent !important;
}
/* mobile main menu */
@media (max-width: 921px) {
	#menu-toggle-close, .ast-menu-toggle {border: none}
		a:focus, .ast-menu-toggle:focus, button:focus, #menu-toggle-close:focus {
		outline: 0;
	}
	.ast-header-break-point .ast-builder-menu-1 .main-header-menu .menu-item > .menu-link,
	.ast-header-break-point .ast-builder-menu-2 .main-header-menu .menu-item > .menu-link {
		padding: 0 20px 0 20px;
		font-size: 1.2rem;
	}
	.ast-builder-menu-1 .main-header-menu > .menu-item > .sub-menu, .ast-builder-menu-1 .main-header-menu > .menu-item > .astra-full-megamenu-wrapper {
		margin-top: 0;
		padding: 12px 0 0;
	  }
	.ast-header-break-point .ast-builder-menu-1 .main-header-menu .menu-turismo-title .menu-link {
		padding-left: 20px;
		font-size: 1.2rem;
		font-weight: 600;
		border: none;
	}
	.ast-header-break-point .ast-builder-menu-2 .main-header-menu .menu-item > .menu-turismo-title .menu-link {
		padding: 0;
		font-size: 1.2rem;
	}
	.sub-menu li.menu-turismo-item  {
		padding: 0 20px 0 16px;
	}
	.sub-menu li.menu-turismo-item:last-child {
		border-bottom-width: 1px;
		border-style: solid;
		border-color: var(--ast-border-color);
		padding-bottom: 15px;
	}
	.turismo-class ul.sub-menu .menu-turismo-item a.menu-link {
		padding: 0 0 0 25px;
	}
	.ast-header-break-point .main-navigation ul .sub-menu .menu-item:not(.menu-item-has-children) .menu-link .icon-arrow:first-of-type { display: none;}
	.turismo-class ul.sub-menu .menu-turismo-item a.menu-link::before {
	  top: 3px;
		left: 8px;
		font-size: 12px;
	}
	.site .site-content #primary .ast-article-single,.ast-separate-container .site-content #secondary .widget {
		padding-top: 0px;
	}
	.heading-title-green h2 {
		font-size: 40px !important;
	}
	.nav-links {
		padding: 0 20px;
	}
	
	.ecocultiva-form, .ur-form-row {
		display: block !important;
	}
	
	.ur-form-row div {
		width: 100% !important;
	}
	
}

@media (max-width: 544px) {
  .ast-header-break-point .ast-builder-menu-1 .menu-item.menu-item-has-children > .ast-menu-toggle {
    top: 5px;
  }
}

/* Listing Directory */
.directorist-single-listing-header .directorist-card__body {
	display: flex;
}
.directorist-single-listing-header #directorist-single-listing-slider {
	width: auto !important;
	min-width: 45% !important;
    display: block;
    position: relative;
    left: 0;
    transform: initial;
    margin-right: 30px;
	height: auto !important;
	
}
	.footer-address,
	.sponsours-box {
		padding-bottom: 24px;
		max-width: 80%;
	}
    .footer-address h2 {
		color: var(--ast-global-color-5);
        font-size: 1.2rem;
	}
    .sponsours-box h2 {
        color: var(--ast-global-color-5);
        font-size: 1.2rem;
    }
    .sponsours {
		display: flex;
		gap: 4px;
		max-width: 80%;
		align-items: flex-start;
		object-fit: contain;
		width: max-content;
    }
    .sponsours img{
        flex: 1;
		max-height: 36px;
		object-fit: contain;
    }
	

.ecocultiva-form {
	display: inline-grid;
    column-gap: 20px;
    grid-template-columns: auto auto auto auto;
}

.ecocultiva-form p {
	padding: 0;
	margin: 0;
}

.ecocultiva-form .ur-field-item {	
	margin-bottom: 0 !important;
}

.ecocultiva-form .ur-label {
	margin-left: 5px;
    color: #676d8a;
}

.default-disabled {
	background-color: #f0f0f0 !important
}

/* Contact Forms  */
/* --- REJILLA (Layout) --- */
.custom-grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Dos columnas */
    column-gap: 26px;
    row-gap: 10px;
    align-items: start;
}

/* En móviles, una sola columna */
@media (max-width: 768px) {
    .custom-grid-container {
        grid-template-columns: 1fr;
    }
}

/* --- ESTILOS VISUALES (Recuperando el look redondeado/gris) --- */

/* Labels (Etiquetas) */
.custom-grid-container .ur-label {
    display: block;    
	margin-top: 0;
    margin-bottom: 12px;
    color: #222;
    font-size: 15px;
    font-weight: 500;
    line-height: 19px;
	padding-left: 10px;
}

.custom-grid-container .ur-label .required {
	color: red;
}

/* Inputs, Textareas y Selects */
.custom-grid-container input[type="text"],
.custom-grid-container input[type="email"],
.custom-grid-container input[type="tel"],
.custom-grid-container textarea,
.custom-grid-container select {
    border: 1px solid #e1e1e1 !important;     /* Borde sutil */
    border-radius: 25px !important;       /* Espacio interno cómodo */
    width: 100%;
    box-sizing: border-box;
    color: #666;
    transition: all 0.3s ease;
	min-height: 38px;
    max-height: 38px;
    font-size: 14px;
    line-height: 20px;
    padding: 0 14px;	
}

.custom-grid-container textarea {
	border-radius: 15px !important;
	padding: 10px 15px !important;
}

/* Efecto al hacer clic en el campo (Focus) */
.custom-grid-container input:focus,
.custom-grid-container textarea:focus,
.custom-grid-container select:focus {
    background-color: #ffffff !important;
    border-color: #999 !important;
    outline: none;
}

/* Ajuste específico para el Textarea para que no sea muy bajo */
.custom-grid-container textarea {
    min-height: 120px;
}

/* Botón de Enviar (Alineado a la derecha como en tu diseño) */
.ur-button-container {
    margin-top: 25px;
}
.ur-button-container p {
    width: 100%;
    text-align: right;
}