/* The Flower Kids — estilos de marca para WooCommerce. Removible. */
:root{
  --tfk-yellow:#FFD700;
  --tfk-blue:#0019CC;
  --tfk-red:#CC0000;
  --tfk-ink:#231400;
  --tfk-font:"roc-grotesk","Inter",system-ui,sans-serif;
  --tfk-cond:"roc-grotesk-condensed",var(--tfk-font);
}

/* ---- FIX galería de producto atascada en opacity:0 ---- */
.woocommerce-product-gallery{opacity:1 !important;transition:none !important;}
.woocommerce div.product .woocommerce-product-gallery__image img{border-radius:16px;display:block;}
.woocommerce-product-gallery__trigger{background:var(--tfk-yellow);border-radius:50%;}

/* ---- Layout ficha de producto: 2 columnas con galería sticky ---- */
@media(min-width:900px){
  .single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,4rem);align-items:start;}
  .single-product div.product .woocommerce-product-gallery{position:sticky;top:2rem;float:none;width:auto;margin:0;}
  .single-product div.product .summary{float:none;width:auto;margin:0;}
  .single-product div.product .woocommerce-tabs,
  .single-product div.product .related,
  .single-product div.product .up-sells{grid-column:1/-1;}
}
.single-product div.product .summary .price{font-family:var(--tfk-font);font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);}
.single-product div.product .summary .woocommerce-product-details__short-description{font-family:var(--tfk-cond);font-size:1.15rem;opacity:.95;}

/* ---- Botones de marca (global WooCommerce) ---- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce .single_add_to_cart_button,.woocommerce #respond input#submit,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #place_order,.woocommerce a.button.alt,.woocommerce button.button.alt{
  background:var(--tfk-yellow);color:var(--tfk-ink);
  font-family:var(--tfk-font);font-weight:700;text-transform:none;letter-spacing:0;
  border:2px solid var(--tfk-yellow);border-radius:999px;
  padding:1em 2.4em;font-size:1rem;line-height:1;cursor:pointer;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
  box-shadow:none;text-shadow:none;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce .single_add_to_cart_button:hover,.woocommerce #respond input#submit:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout #place_order:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
  background:var(--tfk-blue);color:var(--tfk-yellow);border-color:var(--tfk-blue);
  transform:translateY(-2px);
}
.single-product .single_add_to_cart_button{width:100%;text-align:center;}

/* ---- Selector de cantidad ---- */
.woocommerce .quantity .qty{
  background:transparent;color:var(--tfk-yellow);
  border:2px solid var(--tfk-yellow);border-radius:999px;
  font-family:var(--tfk-font);font-weight:700;font-size:1.05rem;
  padding:.7em .4em;min-height:48px;text-align:center;
}
.single-product form.cart{display:flex;gap:1rem;align-items:stretch;flex-wrap:wrap;}

/* ---- Pestañas + valoraciones ---- */
.woocommerce-tabs ul.tabs{border:none;padding:0;margin:0 0 1.5rem;display:flex;gap:1.5rem;flex-wrap:wrap;}
.woocommerce-tabs ul.tabs::before{display:none;}
.woocommerce-tabs ul.tabs li{
  background:transparent !important;border:none !important;border-radius:0 !important;
  margin:0;padding:0 0 .4rem;
}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none !important;}
.woocommerce-tabs ul.tabs li a{
  font-family:var(--tfk-font);font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  color:var(--tfk-yellow);opacity:.55;padding:0;
}
.woocommerce-tabs ul.tabs li.active a{opacity:1;border-bottom:3px solid var(--tfk-yellow);}
.woocommerce #reviews .star-rating,.woocommerce .stars a{color:var(--tfk-yellow);}
.woocommerce #review_form input:not([type=submit]),.woocommerce #review_form textarea,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{
  background:rgba(0,0,0,.18);border:2px solid var(--tfk-yellow);color:#fff;border-radius:10px;padding:.7em;
}
.woocommerce #review_form label,.woocommerce form .form-row label{color:var(--tfk-yellow);font-family:var(--tfk-font);}

/* ---- Carrito / Checkout / Totales ---- */
.woocommerce table.shop_table{border:2px solid var(--tfk-yellow);border-radius:14px;border-collapse:separate;overflow:hidden;}
.woocommerce table.shop_table th{font-family:var(--tfk-font);text-transform:uppercase;letter-spacing:.04em;}
.woocommerce-checkout #payment{background:rgba(0,0,0,.12);border-radius:14px;}
.woocommerce .select2-container--default .select2-selection--single,
.woocommerce select{background:rgba(0,0,0,.18);border:2px solid var(--tfk-yellow);border-radius:10px;color:#fff;min-height:46px;}

/* ---- Avisos ---- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top:3px solid var(--tfk-yellow);background:rgba(0,0,0,.14);color:#fff;border-radius:0 0 10px 10px;
}
.woocommerce-message a,.woocommerce-info a{color:var(--tfk-yellow);}

/* ---- Badge de oferta ---- */
.woocommerce span.onsale{
  background:var(--tfk-blue);color:var(--tfk-yellow);font-family:var(--tfk-font);font-weight:700;
  text-transform:uppercase;border-radius:999px;border:none;min-height:auto;padding:.4em 1em;
}

/* ---- Refinos precio (evita el gris por defecto de WooCommerce) ---- */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.single-product .summary .price,
.single-product .summary .price .amount,
.single-product .summary .price bdi,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price .amount{
  color:var(--tfk-yellow) !important;
}
.single-product .summary .price del{opacity:.5;font-weight:400;}
.single-product .summary .price ins{text-decoration:none;}

/* ===== TIENDA / ARCHIVE: grid responsive + tarjetas con hover ===== */
.woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(340px,1fr));
  gap:clamp(1.5rem,3vw,2.5rem);
  margin:0 0 3rem !important;list-style:none;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none !important;display:none !important;}
.woocommerce ul.products li.product{
  width:auto !important;margin:0 !important;float:none !important;clear:none !important;
  display:flex;flex-direction:column;padding:0;
  transition:transform .3s cubic-bezier(.2,.7,.2,1);
}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:block;overflow:hidden;border-radius:16px;margin-bottom:.4rem;
}
.woocommerce ul.products li.product img{
  margin:0 !important;width:100%;display:block;border-radius:16px;
  transition:transform .55s cubic-bezier(.2,.7,.2,1);
}
.woocommerce ul.products li.product:hover img{transform:scale(1.05);}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2{
  font-family:var(--tfk-font);font-weight:700;font-size:1.3rem;line-height:1.05;
  text-transform:uppercase;letter-spacing:.01em;color:var(--tfk-yellow);padding:.6rem 0 .15rem;
}
.woocommerce ul.products li.product .price{font-family:var(--tfk-font);font-weight:700;margin:0 0 .9rem;}
.woocommerce ul.products li.product .button{margin-top:auto;align-self:flex-start;padding:.75em 1.8em;font-size:.92rem;}
/* cabecera de tienda: contador y orden */
.woocommerce .woocommerce-result-count{font-family:var(--tfk-cond);color:var(--tfk-yellow);opacity:.85;}
.woocommerce .woocommerce-ordering select{font-family:var(--tfk-font);font-weight:600;}

/* ===== Cabecera GLOBAL en páginas internas ===== */
/* El contenedor del home venía oculto (fixed, opacity 0, translateY -78px) para reveal-on-scroll;
   en la cabecera global lo forzamos visible y en flujo. NO afecta a la home (otra instancia). */
.elementor-location-header{position:relative;z-index:50;}
.elementor-location-header > div{
  position:relative !important;opacity:1 !important;transform:none !important;
  top:auto !important;left:auto !important;right:auto !important;bottom:auto !important;
}

/* ===== Imagen de producto al 100% del ancho de su columna (escritorio) ===== */
.single-product .woocommerce-product-gallery,
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery__wrapper{width:100% !important;}
.single-product .woocommerce-product-gallery__image img{width:100% !important;height:auto !important;}

/* ===== MOVIMIENTO (capa creativa) ===== */
/* Fade de entrada de página (CSS puro, siempre completa) */
@keyframes tfkFade{from{opacity:0}to{opacity:1}}
.woocommerce .site-main,.single-product .site-main{animation:tfkFade .5s ease both;}

/* Marquee de marca */
.tfk-marquee{overflow:hidden;border-top:2px solid var(--tfk-yellow);border-bottom:2px solid var(--tfk-yellow);padding:.55rem 0;margin:clamp(2rem,5vw,4rem) 0;}
.tfk-marquee__track{display:flex;width:max-content;animation:tfkMarquee 30s linear infinite;will-change:transform;}
.tfk-marquee__track span{font-family:var(--tfk-font);font-weight:700;font-size:clamp(1.3rem,2.6vw,2.3rem);color:var(--tfk-yellow);text-transform:uppercase;white-space:nowrap;padding-right:1ch;letter-spacing:.02em;}
@keyframes tfkMarquee{to{transform:translateX(-50%)}}
.tfk-marquee:hover .tfk-marquee__track{animation-play-state:paused;}

/* Cursor personalizado */
.tfk-cursor,.tfk-cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:99999;border-radius:50%;}
.tfk-cursor{width:8px;height:8px;background:var(--tfk-yellow);margin:-4px 0 0 -4px;}
.tfk-cursor-ring{width:34px;height:34px;border:2px solid var(--tfk-yellow);margin:-17px 0 0 -17px;opacity:.7;transition:width .2s,height .2s,margin .2s,background .2s,opacity .2s;}
.tfk-cursor-hover .tfk-cursor-ring{width:56px;height:56px;margin:-28px 0 0 -28px;background:rgba(255,215,0,.14);opacity:1;}
.tfk-has-cursor{cursor:none;}
.tfk-has-cursor a,.tfk-has-cursor button,.tfk-has-cursor .button{cursor:none;}
.tfk-has-cursor input,.tfk-has-cursor textarea,.tfk-has-cursor select{cursor:auto;}
@media (hover:none),(pointer:coarse){.tfk-cursor,.tfk-cursor-ring{display:none!important;}.tfk-has-cursor,.tfk-has-cursor a,.tfk-has-cursor button{cursor:auto;}}
@media (prefers-reduced-motion:reduce){.tfk-marquee__track{animation:none;}.woocommerce .site-main,.single-product .site-main{animation:none;}}

/* Micro-hovers cabecera */
.elementor-location-header a{transition:opacity .2s ease;}
.elementor-location-header a:hover{opacity:.65;}

/* Marquee a ancho completo dentro del grid de producto */
.single-product div.product .tfk-marquee{grid-column:1/-1;width:auto;}
