/*
	Theme Name: Hello Biz
	Theme URI: https://elementor.com/products/hello-biz/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello Biz is a free, user-friendly Hybrid WordPress Theme that was crafted for seamless integration with the Elementor site builder and tailored specifically for business websites. Perfect for beginners, but far from limited to just them, it features a dedicated beginner-oriented “Home” screen to simplify and streamline the web-building process. Hello Biz also integrates with Elementor’s premium features, giving you access to tools like AI, and accessibility enhancements in one place. Whether launching a startup site or refining a company portfolio, Hello Biz offers a solid, responsive foundation for all web creators. Report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team validates, triages, and handles vulnerabilities. Report here: https://patchstack.com/database/wordpress/theme/hello-biz/vdp.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 1.2.0
	Stable tag: 1.2.0
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-biz
	Tags: flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready, style-variations
*/

.content-area {
  padding: 2rem 0;
}

footer a,
footer a:hover {
  color: unset;
}

.border-rounded .elementor-slides-wrapper {
  border-radius: 10px;
}

.tfhb-see-description {
  font-weight: 600;
  margin: 0.5rem;
}

.tfhb-meeting-box
  .tfhb-meeting-card
  .tfhb-meeting-booking-form
  .tfhb-forms
  .wpcf7
  .wpcf7-submit:disabled {
  background: gray;
}

.wpcf7-list-item {
  margin: 0;
}

input[type="checkbox"] {
  width: 20px;
  height: 20px;
  border: 2px solid #555;
  border-radius: 4px;
  background-color: #fff;
  cursor: pointer;
  position: relative;
}

.wpcf7-list-item-label {
  padding: 0.25rem;
  font-size: 1rem;
}

.container-fluid.e-con.e-flex > .e-con-inner {
  margin: 0;
}

.tfhb-time-slot-remaining.tfhb-flexbox {
  display: none;
}

[type="button"],
[type="submit"],
button {
  border: 1px solid #ac0c22;
  color: #ac0c22;
}

[type="button"]:focus,
[type="button"]:hover,
[type="submit"]:focus,
[type="submit"]:hover,
button:focus,
button:hover {
  background-color: #ac0c22;
}

.tfhb-meeting-confirmation-action {
  display: none !important;
}

.sbi_item {
  border-radius: 10px;
}
/* Evita scroll horizontal global (soporte moderno + fallback) */
html, body { overflow-x: clip; }
@supports not (overflow: clip) {
  html, body { overflow-x: hidden; }
}

/* Contenedor wrapper para el elemento que escala */
.scale-wrap{
  position: relative;
  overflow: hidden;           /* clave */
  contain: paint;             /* aísla el desborde visual */
  /* opcional si notas difuminados o filtros saliéndose:
     will-change: contents; */
}

.scroll-scale {
  transition: transform 0.1s ease-out;
  transform-origin: center center;
  will-change: transform;
  backface-visibility: hidden;
  display: inline-block;
  position: relative;
  z-index: 2;
  max-width: 100%;
  pointer-events: none;
}

/* En algunos themes de Woo/Hello + Elementor ayuda también: */
#page, .site, .elementor-location-header, .elementor-location-footer {
  overflow-x: clip;
}

.product_type_simple.add_to_cart_button {
  width: 100%;
  text-align: center;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  padding: 0 1em 0.5em 1em;
}

.woocommerce ul.products li.product .price {
  margin: 0em 1em;
}

.woocommerce-loop-product__buttons {
  padding: 0.5em;
  text-align: center;
}

.woocommerce ul.products li.product .button {
  margin-top: 0;
}

.orderable-products-list--grid .orderable-products-list__item {
  width: 25%;
}

.orderable-products-list.orderable-products-list--grid {
  font-family: "Subjectivity";
}

.orderable-product__title {
  font-size: 0.9rem !important;
  line-height: 1.2 !important;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 0 !important;
}

.orderable-product__content {
  padding: 18px 20px 12px;
}

.orderable-products-list__item .orderable-product {
  background: white;
  border-radius: 10px;
}

.orderable-product__actions-price .amount {
  color: #9d2235;
  font-size: 1rem;
}

@media screen and (min-width: 768px) {
  .orderable-products-list--grid .orderable-product {
    padding: 0 0 65px;
  }
}

.elementor-menu-cart__container.elementor-lightbox {
  display: none;
}

.orderable-floating-cart__button,
.orderable-floating-cart__button:hover {
  background: transparent;
  padding: unset !important;
  width: auto;
  height: auto;
  line-height: 1.2;
  box-shadow: unset;
}

#elementor-menu-cart__toggle_button {
  border: 0;
}

.orderable-product__add-to-order {
  font-size: 0.8rem;
}

.orderable-drawer {
  font-family: "Subjectivity";
}

.products-home .orderable-products-list--grid .orderable-products-list__item {
  width: 50%;
}

@media screen and (min-width: 768px) {
  .products-home .orderable-products-list--grid .orderable-product {
    padding: 0 0 60px;
  }
}

@media screen and (max-width: 480px) {
  .products-home .orderable-products-list--grid .orderable-products-list__item {
    padding: 0;
    border-bottom: 0;
    width: 100%;
  }

  .orderable-product__content-wrap {
    padding: 0.5rem;
    width: 60%;
  }

  .orderable-products-list__item .orderable-product__hero {
    min-width: 40%;
    max-width: 40%;
  }

  .orderable-products-list__item .orderable-product__actions {
    padding: 0;
  }

  .orderable-products-list .orderable-product__title {
    height: 2rem;
    line-height: 1.2rem;
  }

  .orderable-product__actions-price .amount {
    font-size: 0.75rem;
    margin: 0 0 0 0.5rem;
  }

  .orderable-product__add-to-order {
    font-size: 0.75rem;
  }

  .orderable-products-list__item .orderable-product__content {
    padding: 0.5rem;
  }
}

.wpcf7-form label {
  width: 100%;
  line-height: 1.5;
  font-weight: 600;
}

.wpcf7-form {
  font-family: "Subjectivity";
  font-size: 1rem;
}

.center {
  text-align: center;
}

.wpcf7-form-control.wpcf7-submit {
  padding: 0.5rem 4rem;
  text-transform: uppercase;
  font-weight: 600;
}

.wpcf7-spinner {
  display: block;
}

.orderable-product--image-cropped .orderable-product__hero {
  height: 400px;
}

.orderable-accordion {
  margin: 0;
  background: transparent;
  padding: 0;
}

.orderable-product-fields__title {
  font-weight: 600;
  color: #9d2235;
}

.orderable-product--options .orderable-product__title {
  margin: 15px 0 !important;
}

.orderable-products-list__item .orderable-product__description {
  font-size: 0.85rem;
}

.product-category-view .orderable-product__hero {
  height: 140px;
  width: 100%;
  margin: 0 !important;
}

.product-category-view .orderable-products-list.orderable-products-list--grid {
  width: 100%;
  margin: 0;
}

.product-category-view
  .orderable-products-list--grid
  .orderable-product__hero
  img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover;
  position: static;
}

.product-category-view .orderable-product__title {
  margin: 0 !important;
  font-size: 0.8rem !important;
  line-height: 1.2;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
  color: black;
}

.product-category-view .orderable-product__content {
  padding: 5px 10px;
  display: block;
  height: 3.5rem;
}

/* Móviles pequeños (480px o menos) */
@media screen and (max-width: 480px) {
  .product-category-view .orderable-product__content {
    padding: 2px 3px;
  }
}

/* .orderable-sb-container {
    overflow-y: overlay;
    overflow-x: hidden;
} */

.product-category-view .orderable-product__actions {
  display: block;
  padding: 5px !important;
  flex-direction: row;
  width: 100%;
  justify-content: center;
  align-items: center;
  border-top: 0;
  position: static;
  text-align: center;
}

.product-category-view .orderable-product__actions-price {
  margin: 0 !important;
  width: 100%;
}

.product-category-view .orderable-product__actions-price .amount {
  font-size: 1rem;
}

.product-category-view .orderable-product__add-to-order {
  width: 100%;
  padding: 0 10px !important;
  height: auto !important;
}

.product-category-view .orderable-products-list__item {
  padding: 0 10px;
}

.product-category-view .orderable-products-list--grid .orderable-product {
  padding: 0 0 10px;
}

.product-category-view .orderable-product__actions-button {
  padding-top: 0.5rem;
  justify-content: center;
}

.product-category-view .orderable-main__group {
  margin: 0 0 0;
}

.product-category-view
  .orderable-products-list--grid
  .orderable-products-list__item {
  width: 33.3%;
}

.orderable-drawer__inner .orderable-product-fields {
  margin-bottom: 0.5rem;
}

.orderable-product--options .orderable-product__actions {
  margin-top: auto;
  padding-top: 10px;
  border-top: 0;
}

.orderable-drawer {
  padding: 5px 24px;
}

.orderable-drawer h3 {
  margin: 1rem;
}

.card-product {
  display: inline-flex;
}

.checkout_left_section .orderable-checkout-section > h3:first-of-type {
  margin-bottom: 1rem;
}

.woocommerce-checkout label {
  line-height: 1.2 !important;
}

.woocommerce-terms-and-conditions {
  padding: 1.5rem;
}

.card-product img {
  width: 80px;
  border-radius: 10px;
  margin-right: 1rem;
}

.wpcf7-not-valid-tip {
  font-size: 0.9em;
  margin-top: 2px;
}

/* --- CONTENEDOR GENERAL --- */
.productos-slider {
  position: relative;
  margin: 0;
  padding: 0;
}

/* --- TITULO DE SECCIÓN --- */
.productos-slider h2 {
  font-size: 1.4rem;
  font-weight: 600;
  color: #a31924;
  /* tono vino o guinda */
  margin-bottom: 1rem;
}

/* --- SLIDER Y SLIDES --- */
.productos-slider {
  width: 100%;
}

.productos-slider .swiper-wrapper {
  align-items: stretch;
}

.productos-slider .swiper-slide {
  display: flex;
  justify-content: center;
  transition: transform 0.3s ease;
}

.productos-slider .swiper-slide:hover {
  transform: translateY(-4px);
}

/* --- CARD DEL PRODUCTO --- */
.card-producto {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  text-align: center;
  transition: box-shadow 0.3s ease;
  max-width: 220px;
}

.card-producto:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.card-producto img {
  width: 100%;
  height: auto;
}

/* --- NOMBRE DEL PRODUCTO --- */
.card-producto h3 {
  font-size: 1rem;
  font-weight: 600;
  color: #333;
  margin: 0.5rem 0.3rem !important;
}

/* --- PRECIO --- */
.card-producto .precio {
  color: #a31924;
  font-weight: 700;
  margin-bottom: 0.3rem;
}

/* --- BOTÓN AGREGAR --- */
.card-producto .boton-agregar {
  display: inline-block;
  border: 1px solid #000;
  border-radius: 25px;
  margin-bottom: 0.5rem;
  padding: 0.5rem 1rem;
  color: #000;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
}

.card-producto .boton-agregar:hover,
.card-producto .boton-agregar:focus {
  background: #000;
  color: #fff;
}

/* --- FLECHAS DEL SWIPER --- */
.productos-slider .swiper-button-prev,
.productos-slider .swiper-button-next {
  color: #a31924;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  width: 36px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}

.productos-slider .swiper-button-prev:hover,
.productos-slider .swiper-button-next:hover {
  background: #a31924;
  color: #fff;
}

.productos-slider .swiper-button-prev::after,
.productos-slider .swiper-button-next::after {
  font-size: 18px;
}

.quantity.buttons_added {
  display: flex;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  gap: 5px;
}

.quantity.buttons_added .qty {
  text-align: center;
}

/* Quitar flechas en Chrome, Safari, Edge y Opera */
.quantity.buttons_added input[type="number"]::-webkit-outer-spin-button,
.quantity.buttons_added input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Quitar flechas en Firefox */
.quantity.buttons_added input[type="number"] {
  -moz-appearance: textfield;
}

.productos-slider .minus,
.productos-slider .plus {
  font-size: 0.8rem;
  padding: 0 1rem;
}

.productos-slider .qty {
  font-size: 0.9rem;
  padding: 0.3rem;
}

.productos-slider .boton-agregar {
  font-size: 0.85rem;
  width: 70%;
  padding: 0.3rem;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__contents {
  display: flex;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__bump {
  width: 33.3%;
  display: block;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__bump-content {
  display: block;
  text-align: center;
  padding: 0 5px;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__bump-content img {
  margin: 0 auto;
  width: 80%;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__heading {
  font-size: 0.95rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #9d2235;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__bump-title {
  font-size: 0.8rem;
  text-transform: uppercase;
  padding-top: 0.5rem;
  height: 2.5rem;
  margin: 0 !important;
  line-height: 1.2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.orderable-cart-bumps-extras .orderable-cart-bumps__bump-data {
  margin: 0;
}

.orderable-cart-bumps-extras
  .orderable-button.orderable-cart-bumps__bump-button {
  margin: 0 auto;
  font-size: 0.8rem;
  line-height: 2;
  height: auto;
}

.orderable-cart-bumps-extras {
  padding-bottom: 1rem;
}

.orderable-drawer h3 {
  margin: 15px 24px !important;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  font-weight: 600;
}

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

.woocommerce-MyAccount-navigation ul > li {
  background: black;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  margin-bottom: 0.5rem;
  text-align: center;
}

.woocommerce-MyAccount-navigation-link a > br {
  display: none;
}

.woocommerce-MyAccount-navigation ul > li > a {
  color: white;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 25%;
}

.ywpar_myaccount_entry_info > div {
  background-color: white !important;
}

.ywpar_myaccount_entry_info .ywpar_levels_badges .ywpar_level.ywpar_level {
  font-size: 1.2em !important;
}

#share_points {
  background-color: white !important;
}

#ywpar-share-points > br {
  display: none;
}

#ywpar-share-points__submit {
  color: white;
}

.ywpar_points_rewards-points {
  text-align: center;
}

#ywpar-copy-to-clipboard-wrapper
  input[type="text"].ywpar-copy-to-clipboard__field {
  font-size: 1rem !important;
  height: auto !important;
}

#share_points
  table.shop_table.ywpar_points_rewards.my_account_orders
  td.ywpar-share-points-code {
  padding: 5px 10px !important;
}

.ywpar-copy-to-clipboard_field-wrap > p {
  display: none;
}

.ywpar_entry_info_title {
  font-weight: 600;
}

.woocommerce table.my_account_orders .button {
  background: black;
  color: white;
}

#customer_login {
  width: 70%;
  margin: 0 auto;
}

@media screen and (max-width: 480px) {
  #customer_login {
    width: 90%;
  }
}

.woocommerce {
  font-family: "Subjectivity";
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
  margin: 1em 0;
}

.woocommerce-account .woocommerce h2 {
  text-align: center;
  font-weight: 600;
  font-size: 1.8rem;
}

.woocommerce form.register {
  padding: 1.5rem 2.5rem;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-Button.woocommerce-button.woocommerce-form-register__submit {
  background: black;
  color: white;
}

.woocommerce-ResetPassword.lost_reset_password {
  padding: 2rem;
}

.orderable-drawer__cart .orderable-mini-cart-wrapper {
  border-top: 0;
}

.woocommerce-Address .edit {
  color: white;
  background: var(--tfhb-primary-color);
  border-radius: 20px;
  padding: 0.3rem 0.5rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
}

/* Estilos base para desktop (por defecto) */

/* Tablets (768px o menos) */
@media screen and (max-width: 1100px) {
  /* Ajustes para tablets */
  .orderable-products-list--grid .orderable-products-list__item {
    width: 50%;
  }
}

/* Móviles pequeños (480px o menos) */
@media screen and (max-width: 480px) {
  /* Ajustes para móviles pequeños */
  .orderable-products-list--grid .orderable-products-list__item {
    width: 100%;
  }
}

.orderable-main__group {
  margin: 0;
}

@media screen and (max-width: 480px) {
  .orderable-products-list__item .orderable-product {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.orderable-cart-bumps {
  background: #f7f5e9;
  border-radius: 8px;
  padding: 10px;
  margin: 0;
}

.orderable-drawer h4 {
  font-size: 1rem;
  font-weight: 600;
}

.product-category-view.extra-salsas .orderable-product__content {
  height: 1.5rem;
}

@keyframes shake {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-1px);
  }
  50% {
    transform: translateX(1px);
  }
  75% {
    transform: translateX(-1px);
  }
  100% {
    transform: translateX(0);
  }
}

.orderable-field--invalid > label {
  animation: shake 0.9s infinite;
}

@media screen and (max-width: 480px) {
  .woocommerce-ResetPassword.lost_reset_password {
    padding: 1rem;
  }
  .woocommerce form .form-row label {
    line-height: 1.5;
  }
}

.woocommerce-account .addresses .title .edit {
  display: none;
}

.text-welcome {
  font-size: 1.1rem;
}

.rewards-banner {
  margin: 20px 0;
  padding: 65px;
  text-align: center;
  border: 2px dashed #ccc;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
}

.rewards-banner img.banner-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.35;
  z-index: 0;
}

.rewards-banner .content {
  position: relative;
  z-index: 1;
  color: #333;
}

.rewards-banner .content h2 {
  margin-bottom: 10px;
  font-size: 1.5em;
}

.rewards-banner .content a.button {
  background-color: #811c2b;
  color: #fff;
  padding: 10px 20px;
  border-radius: 4px;
  text-decoration: none;
  display: inline-block;
  font-weight: bold;
}

.rewards-banner .content a.button:hover {
  background-color: #9d2235;
}

.woocommerce-MyAccount-navigation-link--payment-methods {
	display: none;
}

.added_to_cart.wc-forward {
    display: none !important;
}

.card-rewards-points {
    padding: 1rem;
    background: black;
    color: white;
    font-family: 'Subjectivity';
    border-radius: 10px;
}

.card-rewards-points p {
    margin-bottom: 0;
}

.wp-singular .elementor-element.elementor-element-2443b709 .woocommerce.wp-block-group {
    display: none;
}

.woocommerce table.shop_table {
    border: 1px solid #333333;
}

table td, table th {
    border: 1px solid #333;
}

.woocommerce .woocommerce-customer-details address {
    border: 1px solid #333;
}

.woocommerce-thankyou-order-details.order_details {
    border: 1px dashed #333 !important;
}

.button-primary {
    background-color: #9d2235 !important;
    color: white !important;
}

.button-secondary {
    background-color: black !important;
    color: white !important;
}

.woocommerce ul.order_details li {
    border-right: 1px dashed #333;
}

.ywpar_myaccount_entry_info .points_worth {
  display: none !important;
}

.ywpar_myaccount_entry_info span.ywpar_to_redeem_title {
    color: #333 !important;
    margin-top: 0 !important;
}

.ywpar_total_collected_title {
    display: none !important;
}

.cypr-points-price {
    font-weight: bold;
    color: #9d2235;
}

.button.cypr-redeem-btn {
    background: black !important;
    color: white !important;
}

.cypr-loop-redeem-button {
    background-color: black !important;
    color: white !important;
    border-radius: 20px !important;
}

.product_cat-recompensas .woocommerce-loop-product__title {
    text-align: center;
}

.page-id-10184 .product_cat-recompensas .price {
    text-align: center;
     padding-bottom: 0.5rem;
}

.tax-product_cat .product_cat-recompensas .price {
    text-align: center;
     padding-bottom: 0.5rem;
}

.single-product .product_meta {
    display: none;
}

img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
    border-radius: 10px;
}

.page-id-10184 .woocommerce-loop-product__title, .tax-product_cat .woocommerce-loop-product__title {
    color: black;
    font-size: 0.9rem !important;
    font-weight: bold;
    height: 2.5rem;
    text-transform: uppercase;
}

.woocommerce div.product .product_title {
    font-size: 2rem;
}

section.related.products {
    display: none;
}

.single-product .woocommerce-breadcrumb {
    display: none;
}

.wp-singular .woocommerce ul.products li.product {
    text-align: center;
}

.tfhb-calander-times.tfhb-flexbox {
    z-index: 0;
}

.woocommerce-tabs {
    display: none;
}

.orderable-product-option {
    height: auto;
}

@media screen and (max-width: 480px) {
  .woocommerce form.register {
    padding: 1.5rem 1.5rem;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100%;
  }
  .woocommerce-MyAccount-navigation ul {
    padding: 0;
  }
  .woocommerce-MyAccount-content {
    padding: 1rem;
  }
  .woocommerce-account .woocommerce h2 {
    text-align: left;
    font-size: 1.8rem;
  }
  .woocommerce-column--shipping-address.col-2 {
    padding-top: 1rem;
  }
  .orderable-drawer__cart .orderable-edit-cart-item__button {
    right: 35px;
  }
  .orderable-cart-bumps__bump-image {
    display: block;
  }
  .orderable-cart-bumps__bump-button {
    font-size: 0.75rem;
  }
  .orderable-cart-bumps__bump-title {
    line-height: 1.2;
  }
}
