/*
Theme Name: Greenery 420
Theme URI: http://drfuri.com/supro
Author: Greenery+Hiru
Author URI: http://drfuri.com
Description: Supro Child Theme customized for greenery
Version: 2.0
License: GNU General Public License v2+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: supro
Domain Path: /lang/
Tags: one-column, two-columns, left-sidebar, right-sidebar, full-width-template, post-formats, theme-options, threaded-comments, translation-ready
Template: supro
*/

/*
05-09-2022
Hiru 
*/
.site-footer {clear: both}
@import url("fonts/stylesheet.css");
@import url("fonts/recoleta/stylesheet.css");
@import url("https://greenery420cbd.com/wp-content/themes/supro-child/fonts/Recoleta-Regular.woff2");
@import url("https://greenery420cbd.com/wp-content/themes/supro-child/fonts/Recoleta-Regular.woff");
@import url("https://greenery420cbd.com/wp-content/themes/supro-child/fonts/Recoleta-Regular.ttf");
@import url("https://greenery420cbd.com/wp-content/themes/supro-child/fonts/Recoleta-Regular.eot");


:root {
  --font-body: 'TT Norms', Arial, sans-serif;
  --h1: 'Recoleta', Arial, sans-serif !important;
  --font-body-weight: 400;
  --green-one: #c7cfc1;
  --green-two: #e2e5da;
  --beige-one: #efe8de;
  --beige-two: #fef5ed;
  --black-one: #5c5c5c;
  --black-two: #5e5e5e;
  --clear: #eeeeee;
}

.page-id-69933 .site-header {
    display: none !important;
}






.toggle-text-content { display: none; }

/* Textos y links */

.woocommerce div.product.product-type-variable form.cart .woocommerce-variation {
    margin-bottom: 0px;
    margin-top: 0px;
}
/* Textos y links */

.single-post .entry-cat {
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 200;
  letter-spacing: 3px;
}

p,
h1,
h2,
h3,
h4,
ul,
li {
  font-variant-ligatures: no-common-ligatures;
	font-variant-ligatures: none;

}

h1,
h2,
h3
{
  font-family: 'Recoleta', Arial, sans-serif !important;
  font-weight: 500;
}

h4 {
  font-family: 'TT Norms', Arial, sans-serif !important;
  font-weight: normal;
}

h1 {
  line-height: 1.2em;
  letter-spacing: -0.5px;
  color: var(--black-two);
}

h2 {
  letter-spacing: 0.3px;
	font-size: 38px;
  color: var(--black-one);
}

h3 {
  line-height: 1em;
  letter-spacing: 0px;
  color: var(--black-two);
}

h4 {
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 1px;
}

p {
  font-family: var(--font-body);
	font-weight: var(--font-body-weight);
	color: var(--black-one);
  line-height: 1.8em;
}
ul {
    list-style-type: circle;
    line-height: 1.8;
}
ul li p {
  color: var(--black-one);
}

p a {
  transition: 0.5s;
  color: var(--black-two);
  text-decoration: underline;
  background-color: var(--beige-two);
  padding: 5px;
}

a {
	transition: 0.5s;	
	color: var(--black-two);
	text-decoration: none!important;
}

.single-post .entry-title {
	font-weight: inherit;
}




/* Toogle */
/* Por defecto, el botón está oculto y el texto se muestra */
#hidtextprod {
    display: block;
}
.boton-toggle {
    display: none;
    background-color:#000;
}
/* En pantallas más pequeñas que un iPad, mostrar el botón y ocultar el texto */
@media screen and (max-width: 1024px) {
    .boton-toggle {
        display: block;
    }
    #hidtextprod {
        display: none;
    }
}

#hidtextcat {
    display: none;
}
.botoncategoria {
    display: block;
	background-color:#000;
}
/* Botones */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
  height: 100%;
  margin-right: 20px;
  border: none;
  color: white;
  padding: 15px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 18px;
}
::selection {
	background-color: #c7cfc1;
    color: #777777;
}
.boton-flower {
  border-radius: 40px;
  background-color: #fff;
  line-height: 30px;
  padding: 15px 20px;
  margin-left: auto;
  margin-right: auto;
  border: 0px !important;
  cursor: pointer;
  width: auto;
}
.boton-flower a:hover {
  opacity: 0.3;
}
.boton-flower-2 {
  border-radius: 40px;
  background-color: #fff;
  line-height: 30px;
  padding: 20px 20px;
  margin-left: auto;
  margin-right: auto;
  border: 0px !important;
  cursor: pointer;
  width: auto;
}
.boton-flower-2 a:hover {
  opacity: 0.3;
}
.boton-txt-flower a {
  font-size: 11px;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  color: #DDA417 !important;
  color: rgb(221, 164, 23);
  text-decoration: underline;
  padding: 0px !important;
  cursor: pointer;
}
.boton-txt-flower a:hover {
  text-decoration: none;
}

/* Elementos */

#gmaps{
	width:100%!important;
	min-height:450px;
}

/* Header */
.menu-extra .menu-item-cart .mini-cart-counter{
	top:initial!important;
	right:initial!important;
	margin:-5px 0 0 4px;
}

/* Header - Megamenu*/
#menu-megamenu .dropdown-submenu,
#menu-megamenu-pt .dropdown-submenu{
	min-height:360px;
	padding-right:270px;
}
#menu-megamenu .dropdown-submenu .sub-menu li a,
#menu-megamenu-pt .dropdown-submenu .sub-menu li a{
	text-transform:capitalize!important;
}

/* Minicart*/

.mini-cart .cross-sells{
	margin-top:30px;
}

.mini-cart .cross-sells h2{
	font-size:14px!important;
}
.mini-cart .cross-sells ul{
	margin:0 -10px!important;
}
.mini-cart .cross-sells li{
	padding:10px!important;
	border-bottom:none!important;
	margin-bottom:30px!important;
}

/* Footer - Menus */
@media (max-width: 767px) {
	.footer-sidebar .widget.widget_nav_menu,
	.footer-sidebar:first-child {
		margin-bottom:0!important;
	}
}
/* Collapsable menu mobile*/

.site-footer .widget .menu li a{
	font-weight:bold;
}

.site-footer .widget .menu li ul,
.submenu{
	display:block!important;
}
.site-footer .widget .menu li ul li a{
	font-weight:400!important;
}
@media (max-width: 767px) {
	.site-footer .widget .menu li ul{
		padding-left:5px;
		display:block;
		background-color:white;
		height: 0;
		transform: scaleY(0);
		transition: transform .2s ease-out;
	}

	.site-footer .widget .menu li:hover ul{
		height: 100%;
		transform-origin: top;
		transition: transform .2s ease-out;
		transform: scaleY(1); 
	}
}


/* Footer - Notice banner */

.woocommerce-store-notice,
p.demo_store {
	padding:15px!important;
  	font-family: var(--font-text)!important;
	font-size: 14px !important;
	line-height: 1em;
	align-items: center;
	color: var(--black-one)!important;
	background-color: var(--green-one) !important;
}

.woocommerce-store-notice a,
p.demo_store a {
	color: var(--black-one)!important;
	margin-left: 10px;
	padding: 5px 10px;
	text-decoration: none !important;
}

/* Tienda */

.catalog-sidebar .widget ul li,
.product-sidebar .widget ul li {
  padding: 0;
}

.woocommerce ul.products li.product .footer-button .supro-product-quick-view {
  padding: 0 15px;
  position: relative;
  top: 1px;
}

/* Tienda - sidebar */

.catalog-full-width-layout .catalog-sidebar {
    border-radius: 25px 0 0 25px;
    line-height: 1.6;
}
@media screen and (min-width: 1200px) {
	.catalog-full-width-layout .catalog-sidebar{
		 /* border-radius: 25px 25px 25px 25px;*/
		 /* background-color: #f2f1f0!important;*/
		 /* max-width: 260px!important;*/
		margin-top: 150px;
	}
}
.catalog-sidebar .widget:last-child, .product-sidebar .widget:last-child {
    border-bottom: none;
    padding-bottom: 30px;
    margin-bottom: 0;
}

.woocommerce .shop-toolbar .supro-catalog-filter-mobile a i {
	color: #050505 !important;}


.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a, .woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span {
    font-size: 15px !important;
    width: 53px !important;

}

/* Tienda - Productos variables - Producto en Loop  */

.un-attr-swatches {
  font-size: 10px;
  margin: 10px 0 0 0;
}

.un-attr-swatches:before {
  color: #686868;
  content: 'disponible en:';
  margin-right: 5px;
  letter-spacing: .5px;
  font-size: 10px;
  text-transform: uppercase;
}

.un-attr-swatches .swatch-label {
  color: inherit !important;
  cursor: default !important;
  border-color: var(--beige-two) !important;
}

/* Tienda - Productos variables - Producto en Loop en Bundle */

table.bundled_products{
  border-collapse: separate;
}

.bundled_products thead{
      background-color: var(--clear);
      text-transform: uppercase;
      font-size: 10px;
}
table.bundled_products td.bundled_item_col{
  padding:10px;
}
.bundled_products .variations td.label{
  padding-bottom: 5px;
  text-transform: uppercase;
  font-size: 10px;
}

.bundled_products .variations tr{
  width: 100%;
}
.bundled_products .swatch-label {
  display: flex;
  align-items: center;
  justify-content: center;
  float: left !important;
  margin: 0;
  width: 35px;
  height: 35px;
  box-shadow: none;
  overflow: hidden;
  font-size: 10px;
  color: var(--black-two);
  background-color: var(--clear);
  border: 1px solid var(--clear);
}

.bundled_products .swatch-label.selected {
  background-color: white;
}

.bundled_products div.quantity{
  padding: 35px;
}

.bundled_products .single_variation_wrap.bundled_item_wrap,
.bundled_products p.stock,
.bundled_products span.price {
  margin: 0!important;
}
.bundled_products p.stock,
.bundle_form .bundle_price:before{
  text-transform:uppercase;
  font-size: 10px!important;
  color: var(--black-two)!important;
}

.bundle_form .bundle_price{
  padding: 15px;
  background-color: var(--green-two);
  margin-bottom:20px!important;
}

.bundle_form .bundle_price:before{
  content:'Mira lo que te ahorras…'!important;
}

/* Tienda - Productos variables - Producto en Loop en Bundle - mobile */
.small_width.bundle_form table.bundled_products tr td.bundled_item_images_col{
  width:20%!important;
  min-width: 50px;
  float:left;
  padding:0;
  margin:0;
}
.small_width.bundle_form table.bundled_products tr td.bundled_item_details_col{
  width: 80%;
  float: left;
  padding:0 0 0 15px;
}

/* Ficha de producto - Productos variables - Variables gramos  */

.variations th,
.woocommerce div.product.product-type-variable form.cart .variations td.value,
.woocommerce div.product .tawcvs-swatches,
.woocommerce div.product.product-type-variable form.cart .variations .reset_variations {
  width: 100%;
  float: left;
  text-align: left;
}

.variations th,
.woocommerce div.product .tawcvs-swatches {
  padding: 0;
  margin:0;
}

.woocommerce div.product.product-type-variable form.cart .tawcvs-swatches .swatch-label {
  display: flex;
  align-items: center;
  justify-content: center;
  float: left !important;
  margin: 0 5px 0 0;
  width: 40px;
  height: 40px;
}

/* Ficha de producto - Productos variables - Variables color  */

.woocommerce div.product .tawcvs-swatches .swatch.swatch-color {
  display: flex;
  align-items: center;
  justify-content: center;
  float: left;
  margin: 0 5px 0 0;
  width: 80px;
  height: 40px;
  text-transform: uppercase;
  font-size: 10px;
  color: rgba(0, 0, 0, 0.3);
  border: solid 1px white;
}

.woocommerce div.product .tawcvs-swatches .swatch.swatch-color.selected {
  color: #686868;
  border-color: #686868;
}

.woocommerce div.product .tawcvs-swatches .swatch.swatch-color:after {
  display: none;
}

.woocommerce div.product .tawcvs-swatches .swatch.swatch-color.selected {
  color: #686868;
}

.woocommerce div.product.product-type-variable form.cart .tawcvs-swatches .swatch-label.disabled {
  color: #dadada;
  background-color: #fafafa;
}

.woocommerce div.product.product-type-variable form.cart .variations .reset_variations {
  text-decoration: none;
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 1px;
}

/*Checkout - Envío*/

#ship-to-different-address {
  font-size: 14px!important;
}

.woocommerce-checkout form.checkout .woocommerce-form__label>span:before {
  top: 0!important;
}

textarea {
  border-radius: 15px!important;
}

#order_review,
#payment {
  background: #fff;
}

.woocommerce-checkout-review-order{
  border: solid 1px #d9d9d9 !important;
  background: #fff;
}


#order_review table {
  border: none!important;
}

/*Checkout - Pago*/

#payment_heading {
  margin: 30px 0 15px 0!important;
}

.woocommerce-form__label-for-checkbox span.required {
  display: none !important;
}

#place_order {
  border: none;
}



/* Blog */

.widget .widget-title {
  font-size: 17px!important;
}

.blog-wrapper .entry-metas {
    padding-bottom: 10px;
    margin: 0 -5px;
    color: #b8b7b7 !important;
}
.blog-wrapper .entry-thumbnail {
    margin-bottom: 10px;
    position: relative;
}
.cat-adicional{
	color: #b8b7b7;
	float:left;
}
.textos-seo {
	color: #b9b9b9;
	font-size: 13px;
}

/* Popup edad/canarias*/

.my-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--green-one);
  z-index: 100000;
 display:none;
}

.content-popup {
  width: 1300px;
  background: #fff;
  margin: 188px auto;
  padding: 20px 50px;
  text-align: center;
  color: #474747;
  font-size: 18px;
}

.content-popup h3 {
  text-transform: uppercase;
  color: #474747;
  font-size: 42pt;
  margin-bottom: 30px;
  letter-spacing: 2.3px;
}

.content-popup p {
  margin-bottom: 1em;
}

.content-popup ul {
  list-style: none;
  margin-bottom: 15px;
}

.content-popup ul li {
  margin-bottom: 20px;
}

.content-popup ul li label {
  color: #252525;
  font-size: 21pt;
}

.content-popup ul li .required {
  color: #252525;
}

.closed-popup {
  display: none;
}


.content-popup .btn {
  font-size: 18pt;
  font-weight: bold;
  min-width: 280px;
  border-radius: 150px;
  color: #252525;
  background-color: #dddddd;
  margin: 20px auto;
  font-family: 'TT Norms', Arial;
  font-weight: 400;
  letter-spacing: 2.3px;
}



.content-popup .btn:hover {
  background: #6a8661;
  color: #fff;
}

.content-popup .error-msg {
  color: #e95353;
  margin-bottom: 20px;
  display: none;
}

.content-popup .show-error {
  display: block;
}

@media screen and (max-width: 1440px) {
  .content-popup {
    width: 700px;
    background: #fff;
    margin: 70px auto;
    padding: 50px;
    text-align: center;
    color: #474747;
    font-size: 18px;
    opacity: 0.9;
  }

  .content-popup h3 {
    font-size: 28px;
  }

  .content-popup ul li label {
    font-size: 18px;
  }

  .content-popup .btn {
    font-size: 13pt;
    max-width: 236px;

  }

}

@media screen and (max-width: 910px) {
  .content-popup {
    width: 90%;
    background: #fff;
    margin: 100px auto;
    padding: 50px;
    text-align: center;
    color: #474747;
    font-size: 18px;
  }

  .content-popup h3 {
    font-size: 28px;
  }

  .content-popup .btn {
    min-width: 50%;
    border-radius: 150px;
    color: #252525;
    background-color: #dddddd;
    margin: 20px auto;
  }

}

@media screen and (max-width: 560px) {
  .content-popup {
    background: #fff;
    padding: 15px;

  }

  .content-popup h3 {
    font-size: 28px;
  }

  .content-popup .btn {
    font-size: 13pt;
  }
}

/* Área Cliente */

.woocommerce-MyAccount-navigation{
	background-color:#f4f4f4;
	border-radius:5px;
	padding:15px;
}

.woocommerce-MyAccount-navigation-link--downloads{
	display:none!important;
}

.woocommerce-MyAccount-navigation ul{
	padding:0;
	margin:0;
	display:flex;
	align-items:center;
	justify-content:space-around;
}
.woocommerce-MyAccount-navigation ul li{
	padding-left:5px!important;
	padding-right:5px!important;
	margin:0;
	font-size:12px;
	text-transform:uppercase;
}
.woocommerce-MyAccount-navigation ul li.is-active a{
	font-size:12px!important;
	font-weight:700;
}
.woocommerce-MyAccount-navigation-link--customer-logout a{
	color:#cc0000!important;
}
.myaccount-sidebar ul{
	padding:30px!important;
}
.myaccount-sidebar ul li:first-child{
	display:none;
	visibility:hidden;
}
.myaccount-sidebar ul li{
	text-align:left;
}
.myaccount-sidebar span.m-title{
	padding-top:0!important;

	line-height:1em;
}
.myaccount-sidebar ul li span{
	display:block;
	margin: 0 0 8px 0;
	font-size:14px;
}

.woocommerce-orders-table a{
	color: var(--green-one);
}

/* Amount left free shipping */

@keyframes barra {
	from{	width:0%;}
	to{		width:100%;}
}
.envio-gratuito{
	display:block;
	text-align:center;
	border-radius:5px;
	overflow:hidden;
	border:solid 1px;
}
.envio-gratuito *{
	font-size:14px!important;
	line-height:1em;
}
.envio-gratuito p{
	padding:5px;
	margin:5px;
}
.envio-gratuito .barra{
	height:5px!important;
	display:block;
}
.envio-gratuito.parcial{
	background-color:#fef5ed;
	border-color:#efe8de;
}
.envio-gratuito.completo{
	background-color:#e2e5da;
	border-color:#c7cfc1;
}
.envio-gratuito.parcial .barra{
	background-color:#efe8de;
    animation: barra 3s ease 1s infinite alternate running;
    -moz-animation: barra 3s ease 1s infinite alternate running;
    -webkit-animation: barra 3s ease 1s infinite alternate running;
    -o-animation: barra 3s ease 1s infinite alternate running;
}
.envio-gratuito.completo .barra{
	background-color:#c7cfc1;
    animation: barra 3s ease 1s;
    -moz-animation: barra 3s ease 1s;
    -webkit-animation: barra 3s ease 1s;
    -o-animation: barra 3s ease 1s infinite alternate running;
}

/*	Fin 	css revisado */
/*	Inicio 	css sin revisar*/

.supro-instagram-2 .instagram-wrapper a.has-video:before,
.supro-instagram-shortcode span.supro-instagram:before {
  display: none;
}

.supro-instagram-shortcode video,
.supro-instagram-2 video {
  width: 100%;
  height: auto;
}

.supro-instagram-2 .instagram-wrapper a.has-video span {
  padding-top: initial;
}


/* Customize the label (the container) */
.custom-switch {
  display: block;
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: fit-content;
  width: -moz-fit-content;
  margin: 0 auto;
}

.custom-switch label {
  padding: 0 15px 0 60px;
  font-size: 11px;
  text-transform: none;
  letter-spacing: 0.4pt;
}

.custom-switch label a {
  color: #292929
}

/* Hide the browser's default checkbox */
.custom-switch input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 30px;
  width: 30px;
  z-index: 1;
  top: 10px;
  left: 44px;

}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 10px;
  left: 44px;
  height: 30px;
  width: 30px;
  background-color: #dddddd;
  border: 1px solid #dddddd;
}

/* On mouse-over, add a grey background color */
.custom-switch :hover input~.checkmark {
  background-color: #dddddd;
}

/* When the checkbox is checked, add a blue background */
.custom-switch input:checked~.checkmark {
  background-color: #dddddd;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.custom-switch input:checked~.checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.custom-switch .checkmark:after {
  content: 'X';
  line-height: 24px;
  left: 8px;
}

@media screen and (max-width: 1440px) {

  .checkmark,
  .custom-switch input {
    top: 0px;
  }
}

@media screen and (max-width: 560px) {
  .custom-switch input {
    left: 0px;
  }

  /* Create a custom checkbox */
  .checkmark {
    left: 0px;
  }

  .custom-switch {
    padding-left: 15px;
  }

  .custom-switch label {
    padding-left: 25px;
  }
}

/*Correccion*/
@media screen and (max-width: 767px) {
  div.wpgdprc-consent-bar {
    width: 100vw;
  }

  .woocommerce-store-notice,
  p.demo_store {
    width: 100vw;
  }

  html,
  body {
    overflow-x: hidden;
  }

  .single-portfolio h1 {
    background-repeat: no-repeat;
    background-size: 350px;
    line-height: 50px !important;
    text-align: center;
    padding: 20px 0px 20px 0px;
  }
}

	
/*boton descuento*/

.cupon-btn {
  max-width: 170px;
  text-align: center;
  border: 2px dashed #1c1c21;
  border-radius: 8px;
  padding: 7px 0px;
  font-size: 18px;
  margin-bottom: 15px;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bold;
  background-color: #eaf6f5;
  letter-spacing: 0.1rem;
  margin-top: 0;
}

.woocommerce div.product.supro-product-layout-2 .supro-single-product-detail {
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
}

.additional_information_tab { display:none !important;}

/*ocultar recaptcha*/
.grecaptcha-badge {

visibility: hidden;
	display:none;

}

/*TABS - Estilos desktop */
@media (min-width: 768px) {
    .woocommerce-tabs .row {
        display: flex;
        flex-wrap: wrap;
    }
    .woocommerce-tabs .col-md-8 {
        width: 66.6667%;
        padding-right: 15px;
    }
    .woocommerce-tabs .col-md-4 {
        width: 33.3333%;
        padding-left: 15px;
    }
}

/* 
/*TABS - Estilos mobile*/
@media (max-width: 767px) {
    .woocommerce-tabs .row {
        display: block;
    }
    .woocommerce-tabs .col-md-8, .woocommerce-tabs .col-md-4 {
        width: 100%;
        padding: 0;
    }
    .woocommerce-tabs .col-md-8 .wc-tab, .woocommerce-tabs .col-md-4 .wc-tab {
        display: none;
        padding: 15px;
        border-top: 1px solid #ddd;
    }
    .woocommerce-tabs .col-md-8 .wc-tab.active, .woocommerce-tabs .col-md-4 .wc-tab.active {
        display: block;
    }
    .woocommerce-tabs .col-md-8 .wc-tab::before, .woocommerce-tabs .col-md-4 .wc-tab::before {
        content: attr(id);
        display: block;
        font-weight: bold;
        cursor: pointer;
        padding: 10px;
        background: #f1f1f1;
    }
    .woocommerce-tabs .col-md-8 .wc-tab::before:hover, .woocommerce-tabs .col-md-4 .wc-tab::before:hover {
        background: #e1e1e1;
    }
}

/* --- ESTILOS GENERALES DE LA PÁGINA DE ARCHIVO DE TIENDAS CBD --- */

/* Título de la página */
.page-header .page-title {
    text-align: center;
    margin-bottom: 30px;
    font-size: 2.5em; /* Ajusta al tamaño que prefieras */
    color: #333; /* Color oscuro para el título */
}

/* --- ESTILOS PARA EL FILTRO DE UBICACIÓN --- */
.cbd-location-filter {
    margin-bottom: 40px;
    text-align: center;
    background-color: #f9f9f9;
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.cbd-location-filter ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex; /* Para poner los enlaces en línea */
    flex-wrap: wrap; /* Para que los elementos pasen a la siguiente línea si no caben */
    justify-content: center; /* Centrar los filtros */
    gap: 15px; /* Espacio entre los enlaces */
}

.cbd-location-filter li {
    margin: 0;
}

.cbd-location-filter a {
    text-decoration: none;
    color: #555;
    padding: 8px 15px;
    border: 1px solid #ddd;
    border-radius: 20px;
    transition: all 0.3s ease;
    white-space: nowrap; /* Evita que los nombres largos de ubicación se rompan */
}

.cbd-location-filter a:hover,
.cbd-location-filter li.current-cat a {
    background-color: #70a1a3; /* Un verde/azul suave de ejemplo */
    color: #fff;
    border-color: #70a1a3;
}

/* Texto para lectores de pantalla */
.cbd-location-filter .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}


/* --- ESTILOS DE LA CUADRÍCULA (GRID) --- */
.cbd-shops-grid-container {
    display: grid;
    /* 3 columnas por fila en pantallas grandes, con espacio entre ellas */
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px; /* Espacio entre las tarjetas */
    max-width: 1200px; /* Ancho máximo del contenedor de la cuadrícula */
    margin: 0 auto; /* Centrar el contenedor de la cuadrícula */
    padding: 20px 0;
}

/* Estilo individual de cada tarjeta de tienda */
.cbd-shop-item {
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    overflow: hidden; /* Asegura que la imagen no se salga de los bordes redondeados */
    text-align: center; /* Centra el texto dentro de la tarjeta */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%; /* Asegura que todas las tarjetas tengan la misma altura dentro del grid */
    display: flex; /* Flexbox para controlar el contenido interno */
    flex-direction: column; /* Contenido apilado verticalmente */
}

.cbd-shop-item:hover {
    transform: translateY(-5px); /* Pequeño efecto al pasar el ratón */
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}

/* Contenedor del enlace para que toda la tarjeta sea cliqueable */
.cbd-shop-link-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none; /* Quita el subrayado del enlace */
    color: inherit; /* Hereda el color del texto de la tarjeta */
}


/* --- IMAGEN DESTACADA CUADRADA (no masonry) --- */
.shop-thumbnail-square {
    width: 100%;
    /* Truco para mantener una proporción 1:1 (cuadrado) */
    padding-bottom: 100%; /* 100% del ancho del padre */
    background-size: cover; /* La imagen cubre todo el espacio */
    background-position: center center; /* Centra la imagen */
    background-repeat: no-repeat;
    border-top-left-radius: 8px; /* Bordes redondeados de la imagen */
    border-top-right-radius: 8px;
    display: block; /* Asegura que el div ocupe su propio espacio */
}


/* Detalles de la tienda (título, dirección, etc.) */
.shop-details {
    padding: 15px 20px;
    flex-grow: 1; /* Permite que este div ocupe el espacio restante */
    display: flex;
    flex-direction: column;
    justify-content: center; /* Centra verticalmente el contenido si hay espacio extra */
}

.shop-title {
    font-size: 1.6em; /* Tamaño del título de la tienda */
    margin-top: 0;
    margin-bottom: 10px;
    color: #222;
}

.shop-details p {
    font-size: 0.95em;
    color: #666;
    line-height: 1.4;
    margin-bottom: 8px;
}

/* --- MEDIA QUERIES PARA LA RESPONSIVIDAD --- */

/* Para tablets (2 columnas) */
@media (max-width: 992px) {
    .cbd-shops-grid-container {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 25px;
    }
}

/* Para móviles (1 columna) */
@media (max-width: 768px) {
    .cbd-shops-grid-container {
        grid-template-columns: 1fr; /* Una columna */
        gap: 20px;
        padding: 15px;
    }
    .page-header .page-title {
        font-size: 2em;
    }
    .cbd-location-filter ul {
        flex-direction: column; /* Filtros apilados en móviles */
        gap: 10px;
    }
    .cbd-location-filter a {
        width: 80%; /* Ancho para los botones de filtro */
        margin: 0 auto;
    }
}




