/* IS Ficha de producto 1.0.0 */

/* Recuadro de confianza */
.is-ficha-confianza { border: 1px solid #e3e8f0; border-radius: 10px; padding: 14px 16px; background: #f7f9fc; }
.is-ficha-confianza ul { list-style: none; margin: 0 0 12px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; }
.is-ficha-confianza li { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 13.5px; line-height: 1.35; color: #444; }
.is-ficha-confianza li strong { color: #222; font-weight: 600; }
.is-ficha-confianza li svg { flex: 0 0 22px; width: 22px; height: 22px; fill: none; stroke: #2E6BC6; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.is-ficha-wa { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 10px 14px; border-radius: 8px; background: #25D366; color: #fff !important; font-size: 14px; line-height: 1.2; text-decoration: none !important; transition: background .2s; }
.is-ficha-wa:hover, .is-ficha-wa:focus { background: #1ebe5b; color: #fff; }
.is-ficha-wa strong { color: #fff; font-weight: 600; }
.is-ficha-wa svg { width: 20px; height: 20px; fill: currentColor; flex: 0 0 20px; }
@media (max-width: 400px) {
	.is-ficha-confianza ul { grid-template-columns: 1fr; }
}

/* Variantes como botones */
form.variations_form.is-var-ready table.variations select.is-var-select { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
form.variations_form.is-var-ready table.variations td.value { position: relative; }
form.variations_form.is-var-ready table.variations tr { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-bottom: 14px; }
form.variations_form.is-var-ready table.variations th.label,
form.variations_form.is-var-ready table.variations td.value { padding: 0; width: 100%; }
.is-var-btns { display: flex; flex-wrap: wrap; gap: 8px; }
.is-var-btn { min-height: 40px; padding: 8px 16px !important; border: 1.5px solid #d5dbe5 !important; border-radius: 8px !important; background: #fff !important; color: #333 !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.2 !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important; cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.is-var-btn:hover { border-color: #2E6BC6 !important; color: #2E6BC6 !important; }
.is-var-btn.is-on { border-color: #2E6BC6 !important; background: #2E6BC6 !important; color: #fff !important; }
.is-var-btn.is-off { opacity: .45; text-decoration: line-through; }
.is-var-btn.is-off:hover { opacity: .7; }
.is-var-btn:focus-visible { outline: 2px solid #2E6BC6; outline-offset: 2px; }

/* Opiniones sin reseñas */
#reviews.is-sin-opiniones { display: block; }
#reviews.is-sin-opiniones > * { width: 100% !important; max-width: 100% !important; }
#reviews.is-sin-opiniones #review_form_wrapper { display: none; }
#reviews.is-sin-opiniones.is-form-open #review_form_wrapper { display: block; margin-top: 20px; max-width: 640px !important; }
#reviews.is-sin-opiniones #comments { margin-bottom: 0; }
#reviews.is-sin-opiniones .woocommerce-Reviews-title { display: none; }
.is-review-toggle { margin-top: 12px; border-radius: 8px !important; }

/* Galeria: sin miniaturas en movil (se usan los puntos) */
@media (max-width: 767px) {
	.single-product .woocommerce-product-gallery .wd-gallery-thumb { display: none !important; }
	.single-product .woocommerce-product-gallery .wd-gallery-images { margin-bottom: 0; }
}
@media (min-width: 768px) {
	.single-product .woocommerce-product-gallery .wd-gallery-images .wd-nav-pagin-wrap { display: none; }
}

/* Informacion adicional: una columna en movil */
@media (max-width: 767px) {
	.single-product .wd-single-attrs .shop_attributes { --wd-attr-col: 1 !important; }
	.single-product .wd-single-attrs .shop_attributes td { max-width: 60%; }
}

/* Barra fija: sin comparar */
.wd-sticky-btn .wd-compare-btn, .wd-sticky-btn [class*="compare"] { display: none !important; }

/* Pestañas Descripción / Información adicional */
.is-ficha-tabs { width: 100%; padding-top: 30px; }
.is-ficha-tabs-in { margin: 0 auto; display: flex; gap: 8px; border-bottom: 1px solid rgba(0,0,0,.11); overflow-x: auto; scrollbar-width: none; }
.is-ficha-tabs-in::-webkit-scrollbar { display: none; }
.is-ficha-tabs .is-ficha-tab.is-ficha-tab { position: relative; appearance: none; background: transparent !important; border: 0 !important; border-radius: 0 !important; margin: 0; padding: 14px 18px !important; min-height: 0; font-size: 15px !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .3px; color: #8a8a8a !important; white-space: nowrap; cursor: pointer; box-shadow: none !important; transition: color .2s; }
.is-ficha-tabs .is-ficha-tab.is-ficha-tab::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: rgb(46,107,198); transform: scaleX(0); transition: transform .2s; }
.is-ficha-tabs .is-ficha-tab.is-ficha-tab:hover { color: #333 !important; }
.is-ficha-tabs .is-ficha-tab.is-ficha-tab.is-on { color: #242424 !important; }
.is-ficha-tabs .is-ficha-tab.is-ficha-tab.is-on::after { transform: scaleX(1); }
.is-ficha-tabs .is-ficha-tab.is-ficha-tab:focus-visible { outline: 2px solid rgb(46,107,198); outline-offset: -2px; }
.is-ficha-has-tabs .elementor-element-81ef30d,
.is-ficha-has-tabs .elementor-element-716ea74 { display: none !important; }
.is-ficha-has-tabs .elementor-element-aa67a64,
.is-ficha-has-tabs .elementor-element-cafb1da { padding-top: 24px !important; border-top: 0 !important; }
.is-tab-panel.is-tab-hidden { display: none !important; }
@media (max-width: 767px) {
	.is-ficha-tabs { padding-top: 20px; }
	.is-ficha-tabs .is-ficha-tab.is-ficha-tab { font-size: 14px !important; padding: 12px 10px !important; flex: 1 1 auto; }
}

/* Descripción en 2 columnas (computador) */
@media (min-width: 1025px) {
	.is-desc-2col > .elementor-widget-container { column-count: 2; column-gap: 56px; column-rule: 1px solid rgba(0,0,0,.06); }
	.is-desc-2col > .elementor-widget-container > * { break-inside: avoid; }
	.is-desc-2col li, .is-desc-2col img, .is-desc-2col figure, .is-desc-2col blockquote { break-inside: avoid; }
	.is-desc-2col h1, .is-desc-2col h2, .is-desc-2col h3, .is-desc-2col h4, .is-desc-2col h5 { break-after: avoid; break-inside: avoid; }
	.is-desc-2col > .elementor-widget-container > :first-child { margin-top: 0; }
	.is-desc-2col table, .is-desc-2col iframe, .is-desc-2col video, .is-desc-2col .wp-video, .is-desc-2col .wp-block-embed { column-span: all; }
	.is-desc-2col img { max-width: 100%; height: auto; }
}

/* ===== 1.2.0 Descripción larga con formato ===== */
.is-desc { --is-azul: rgb(46,107,198); color: #555; }
.is-desc h3 { font-size: 20px; line-height: 1.3; margin: 0 0 14px; color: #242424; }
.is-desc p:last-child, .is-desc ul:last-child { margin-bottom: 0; }
.is-desc .is-desc-cta { display: none !important; }
.is-desc .is-emoji { font-family: "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol",sans-serif; font-style: normal; }

.is-desc-lead { margin-bottom: 30px; }
.is-desc-lead p:first-child { font-size: 17px; line-height: 1.65; color: #333; }

.is-desc-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 30px; }
.is-desc-col { display: flex; flex-direction: column; gap: 30px; min-width: 0; }
.is-desc-sec { min-width: 0; }
@media (min-width: 1025px) {
  .is-desc-grid { grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); gap: 56px; align-items: start; }
  .is-desc-grid.is-desc-grid-1 { grid-template-columns: minmax(0,1fr); }
}

/* Beneficios con check */
.is-desc-checks ul { list-style: none; margin: 0; padding: 0; }
.is-desc-checks li { position: relative; padding-left: 30px; margin-bottom: 10px; }
.is-desc-checks li::before { content: ""; position: absolute; left: 0; top: .2em; width: 19px; height: 19px; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%2711%27%20fill%3D%27%232e6bc6%27%2F%3E%3Cpath%20d%3D%27M7%2012.5l3.2%203.2L17%209%27%20fill%3D%27none%27%20stroke%3D%27%23fff%27%20stroke-width%3D%272.4%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E") no-repeat center / contain; }
.is-desc-checks li > .is-emoji:first-child { display: none; }

/* Recuadros */
.is-desc-aviso, .is-desc-caja, .is-desc-datos { border-radius: 10px; padding: 20px 22px; }
.is-desc-aviso h3, .is-desc-caja h3, .is-desc-datos h3 { font-size: 17px; display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.is-desc-aviso h3::before, .is-desc-caja h3::before, .is-desc-datos h3::before { content: ""; flex: 0 0 22px; width: 22px; height: 22px; background: no-repeat center / contain; }
.is-desc-aviso { background: #fff8e8; border: 1px solid #f6e0ad; border-left: 4px solid #e39b00; }
.is-desc-aviso h3::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12%202.8L1.8%2020.5h20.4z%27%20fill%3D%27%23e39b00%27%2F%3E%3Cpath%20d%3D%27M12%209v5.2%27%20stroke%3D%27%23fff%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2717.3%27%20r%3D%271.3%27%20fill%3D%27%23fff%27%2F%3E%3C%2Fsvg%3E"); }
.is-desc-aviso, .is-desc-aviso li { color: #4d4220; }
.is-desc-caja, .is-desc-datos { background: #f4f7fc; border: 1px solid #dde6f4; }
.is-desc-caja h3::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%232e6bc6%27%20stroke-width%3D%271.8%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%207.5L12%203l9%204.5v9L12%2021l-9-4.5z%27%2F%3E%3Cpath%20d%3D%27M3%207.5L12%2012l9-4.5M12%2012v9%27%2F%3E%3C%2Fsvg%3E"); }
.is-desc-datos h3::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%232e6bc6%27%20stroke-width%3D%271.8%27%3E%3Crect%20x%3D%274%27%20y%3D%273%27%20width%3D%2716%27%20height%3D%2718%27%20rx%3D%272%27%2F%3E%3Cpath%20d%3D%27M8%208h8M8%2012h8M8%2016h5%27%20stroke-linecap%3D%27round%27%2F%3E%3C%2Fsvg%3E"); }
.is-desc-aviso ul, .is-desc-caja ul, .is-desc-datos ul { margin: 0; padding-left: 18px; }
.is-desc-aviso li, .is-desc-caja li, .is-desc-datos li { margin-bottom: 6px; }
.is-desc-datos table { margin: 0; }

/* Preguntas frecuentes plegables */
.is-desc-faq { margin-top: 40px; padding-top: 30px; border-top: 1px solid #ececec; }
.is-faq-list { display: grid; grid-template-columns: minmax(0,1fr); column-gap: 40px; align-items: start; }
@media (min-width: 1025px) { .is-faq-list { grid-template-columns: minmax(0,1fr) minmax(0,1fr); } }
.is-faq { border-bottom: 1px solid #e6e6e6; }
.is-faq > summary { list-style: none; cursor: pointer; position: relative; padding: 15px 34px 15px 0; font-weight: 600; color: #242424; line-height: 1.4; }
.is-faq > summary::-webkit-details-marker { display: none; }
.is-faq > summary::after { content: ""; position: absolute; right: 6px; top: 50%; width: 9px; height: 9px; margin-top: -7px; border-right: 2px solid var(--is-azul); border-bottom: 2px solid var(--is-azul); transform: rotate(45deg); transition: transform .2s, margin-top .2s; }
.is-faq[open] > summary::after { transform: rotate(-135deg); margin-top: -2px; }
.is-faq > summary:hover { color: var(--is-azul); }
.is-faq > summary:focus-visible { outline: 2px solid var(--is-azul); outline-offset: 2px; }
.is-faq-a { padding: 0 34px 16px 0; }

/* Computador: la descripción ya es compacta, se muestra completa (sin "Ver más") */
@media (min-width: 1025px) {
  .elementor-element-aa67a64.wd-collapsible-content.e-con:has(.is-desc) { max-height: none !important; overflow: visible; }
  .elementor-element-aa67a64.wd-collapsible-content:has(.is-desc):not(.wd-opened)::after { display: none; }
  .elementor-element-aa67a64:has(.is-desc) .elementor-element-c127cd8 { display: none !important; }
}
@media (max-width: 767px) { .is-desc-lead p:first-child { font-size: 16px; } .is-desc-lead { margin-bottom: 24px; } }

/* 1.3.0 Botón asistente (azul de la tienda en vez de verde WhatsApp) */
.is-ficha-confianza .is-ficha-wa.is-ficha-asistente { background: rgb(46,107,198); border-color: rgb(46,107,198); color: #fff; }
.is-ficha-confianza .is-ficha-wa.is-ficha-asistente:hover { background: rgb(36,88,166); border-color: rgb(36,88,166); color: #fff; }
.is-ficha-confianza .is-ficha-wa.is-ficha-asistente svg { fill: currentColor; }
