/* NOVA TI Fichas Tecnicas 1.0.3 — presentation inherits BeTheme typography/colors */
.nvft-specs,.nvft-description,.nvft-highlights{font-family:inherit;color:inherit;box-sizing:border-box;min-width:0}
.nvft-specs *,.nvft-description *,.nvft-highlights *{box-sizing:border-box}
.nvft-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px}
.nvft-heading h3{margin:0!important;font-size:1.2em!important;line-height:1.4!important;color:inherit!important}
.nvft-heading span{font-size:.8em;opacity:.75}
.nvft-search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.nvft-search{display:block;width:100%;max-width:340px;margin:0 0 20px!important;padding:11px 14px!important;border:1px solid rgba(100,115,140,.25)!important;border-radius:8px!important;font:inherit!important;font-size:.9em!important;background:transparent!important;color:inherit!important}
.nvft-grid{columns:2;column-gap:20px;padding:4px 12px 12px}
.nvft-card{display:inline-block;width:100%;vertical-align:top;break-inside:avoid;page-break-inside:avoid;margin:0 0 16px!important;border:1px solid rgba(100,115,140,.20);border-radius:9px;overflow:hidden;background:transparent;box-sizing:border-box}
.nvft-card h4{margin:0!important;padding:12px 15px!important;border-left:3px solid currentColor;background:rgba(100,115,140,.07);color:inherit!important;font-size:.88em!important;line-height:1.45!important;font-weight:700!important;overflow-wrap:anywhere}
.nvft-card dl{margin:0!important}
.nvft-row{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);column-gap:14px;padding:11px 15px;border-top:1px solid rgba(100,115,140,.13);font-size:.85em;line-height:1.5;box-sizing:border-box}
.nvft-row dt{font-weight:400;opacity:.75;overflow-wrap:anywhere}.nvft-row dd{margin:0;font-weight:600;color:inherit;overflow-wrap:anywhere}
.nvft-card[hidden],.nvft-row[hidden],.nvft-no-results[hidden]{display:none!important}
.nvft-no-results{margin:20px 0;opacity:.75}
.nvft-description{border:1px solid rgba(100,115,140,.20);border-radius:10px;padding:20px 22px;line-height:1.75}
.nvft-description h3{font-size:1.1em!important;color:inherit!important;margin:0 0 14px!important;padding:0 0 12px;border-bottom:1px solid rgba(100,115,140,.20)}
.nvft-description-body{font-size:.95em;line-height:1.8}.nvft-description-body p{margin:0 0 12px}.nvft-description-body p:last-child{margin-bottom:0}
/* v1.0.5: BeTheme native typography, no nested visual boxes */
.woocommerce .nvft-highlights, .nvft-highlights {
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:10px!important;padding:12px!important;margin:12px 0 20px!important;
 width:100%!important;max-width:100%!important;min-width:0!important;
 border:1px solid rgba(100,115,140,.20)!important;border-radius:12px!important;
 background:transparent!important;box-sizing:border-box!important;
 font-family:inherit!important;font-size:inherit!important;color:inherit!important;
}
.woocommerce .nvft-highlights .nvft-highlight, .nvft-highlights .nvft-highlight {
 display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;
 grid-template-rows:auto auto!important;column-gap:7px!important;row-gap:2px!important;
 align-content:center!important;align-items:center!important;
 min-width:0!important;min-height:70px!important;padding:10px 8px!important;
 margin:0!important;background:rgba(100,115,140,.065)!important;
 border:0!important;border-radius:9px!important;box-shadow:none!important;
 overflow:visible!important;box-sizing:border-box!important;
 font-family:inherit!important;font-size:inherit!important;color:inherit!important;
}
.woocommerce .nvft-highlights .nvft-highlight .nvft-hi-icon,
.woocommerce .nvft-highlights .nvft-highlight .nvft-hi-label,
.woocommerce .nvft-highlights .nvft-highlight .nvft-hi-value,
.nvft-highlights .nvft-highlight .nvft-hi-icon,
.nvft-highlights .nvft-highlight .nvft-hi-label,
.nvft-highlights .nvft-highlight .nvft-hi-value {
 display:block!important;position:static!important;float:none!important;
 width:auto!important;max-width:100%!important;min-width:0!important;
 height:auto!important;margin:0!important;padding:0!important;
 background:transparent!important;border:0!important;border-radius:0!important;
 outline:0!important;box-shadow:none!important;
 font-family:inherit!important;font-style:normal!important;
 text-transform:none!important;text-decoration:none!important;letter-spacing:normal!important;
 white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;
 text-align:left!important;line-height:1.35!important;
}
.nvft-highlights .nvft-highlight .nvft-hi-icon {
 grid-column:1!important;grid-row:1 / 3!important;
 font-size:17px!important;font-weight:400!important;
 color:var(--mfn-link-color,#23469A)!important;
}
.nvft-highlights .nvft-highlight .nvft-hi-label {
 grid-column:2!important;grid-row:1!important;
 font-size:11px!important;font-weight:400!important;
 color:inherit!important;opacity:.72!important;
}
.nvft-highlights .nvft-highlight .nvft-hi-value {
 grid-column:2!important;grid-row:2!important;
 font-size:12px!important;font-weight:600!important;
 color:inherit!important;opacity:1!important;
}
.nvft-specs{padding:12px 14px 20px!important;width:100%;max-width:100%}
.nvft-grid{padding:0!important;column-gap:18px!important}
@media(max-width:767px){
 .nvft-specs{padding:12px 8px 18px!important}.nvft-grid{columns:1!important}
 .woocommerce .nvft-highlights,.nvft-highlights{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:8px!important;gap:8px!important}
 .woocommerce .nvft-highlights .nvft-highlight,.nvft-highlights .nvft-highlight{min-height:68px!important;padding:9px 7px!important}
}

/* v1.0.6: neutralize code formatting injected by BeTheme's shortcode renderer.
   Keep these rules strictly within the product highlights component. */
.woocommerce .nvft-highlights .nvft-highlight,
.woocommerce .nvft-highlights .nvft-highlight :is(div,span,small,strong,code,pre),
.nvft-highlights .nvft-highlight,
.nvft-highlights .nvft-highlight :is(div,span,small,strong,code,pre) {
  font-family: inherit !important;
  font-variant: normal !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-decoration: none !important;
  text-shadow: none !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  max-width: 100% !important;
}
.woocommerce .nvft-highlights .nvft-highlight :is(code,pre),
.nvft-highlights .nvft-highlight :is(code,pre) {
  display: inline !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  padding: 0 !important;
  margin: 0 !important;
  color: inherit !important;
}
.woocommerce .nvft-highlights .nvft-hi-label,
.nvft-highlights .nvft-hi-label { color: #626b7a !important; opacity: 1 !important; }
.woocommerce .nvft-highlights .nvft-hi-value,
.nvft-highlights .nvft-hi-value { color: #2B2B2B !important; opacity: 1 !important; }
.woocommerce .nvft-highlights .nvft-hi-icon,
.nvft-highlights .nvft-hi-icon { color: #23469A !important; }

/* v1.0.7 | Tarjeta de compra. Solo Wrap con clase novati-buy-card. */
body.single-product .novati-buy-card {
  box-sizing:border-box;
  padding:20px!important;
  border:1px solid rgba(100,115,140,.22);
  border-radius:14px;
  background:transparent;
  min-width:0;
}
body.single-product .novati-buy-card :is(.product_meta,.woocommerce-product-details__short-description) {margin-bottom:14px;}
body.single-product .novati-buy-card .product_meta {font-size:.9em;line-height:1.6;}
body.single-product .novati-buy-card .price {line-height:1.35;}
body.single-product .novati-buy-card :is(.single_variation_wrap,.variations_form,.cart) {max-width:100%;}
/* WhatsApp appearance is controlled by the dedicated NOVA TI WhatsApp snippet. */
@media(max-width:767px){body.single-product .novati-buy-card{padding:15px!important;}}

/* v1.0.8: A single visual border when the BeBuilder purchase wrap uses novati-buy-card.
   Preserves shortcode, dynamic prices and WooCommerce cart. */
body.single-product .novati-buy-card .nvft-highlights,
body.single-product .novati-buy-card .woocommerce .nvft-highlights {
 border:0!important; border-radius:0!important; background:transparent!important;
 padding:4px 0 14px!important; margin:0 0 12px!important;
 border-bottom:1px solid rgba(100,115,140,.18)!important;
}
body.single-product .novati-buy-card .nvft-highlight {background:transparent!important;}
body.single-product .novati-buy-card .nvft-highlights + .product_meta {margin-top:0!important;}

/* v1.0.9: Existing BeBuilder column has title and purchase fields together.
   Remove redundant border around specs, while preserving title outside any future purchase card. */
body.single-product .novati-unified-purchase .nvft-highlights {
  border:0!important; border-radius:0!important; background:transparent!important;
  padding:4px 0 12px!important; margin:0 0 12px!important;
  border-bottom:1px solid rgba(100,115,140,.18)!important;
}
body.single-product .novati-unified-purchase .nvft-highlight {background:rgba(100,115,140,.045)!important;}

/* v1.0.10 | Compact product summary. Scoped to existing NOVA TI wrap.
   No extra purchase border: the current wrap includes the product title. */
body.single-product .novati-unified-purchase .nvft-highlights {
  margin: 0 0 8px !important; padding: 0 0 10px !important;
  gap: 8px !important;
}
body.single-product .novati-unified-purchase .nvft-highlight {
  min-height: 60px !important; padding: 8px 9px !important;
}
body.single-product .novati-unified-purchase .product_meta {
  margin-top: 0 !important; margin-bottom: 8px !important;
  padding-top: 0 !important; padding-bottom: 0 !important;
}
body.single-product .novati-unified-purchase .product_meta > span {
  margin-bottom: 3px !important;
}
body.single-product .novati-unified-purchase .price {
  margin-top: 0 !important; margin-bottom: 10px !important;
}
/* Empty BeBuilder placeholders: hide only truly empty nodes. */
body.single-product .novati-unified-purchase .column_attr:empty,
body.single-product .novati-unified-purchase .woocommerce-product-details__short-description:empty {
  display:none !important;
}
@media(max-width:767px){
 body.single-product .novati-unified-purchase .nvft-highlights {gap:7px!important;}
 body.single-product .novati-unified-purchase .nvft-highlight {min-height:58px!important;}
}


/* v1.0.13 | Ajustes responsive NOVA TI.
   No altera la estructura de BeBuilder, el carrito ni el snippet de WhatsApp. */
@media screen and (max-width: 767px) {
  /* Respiración superior para la galería de BeTheme; sin altura fija ni recortes. */
  body.single-product .mfn-product-images-wrapper {
    box-sizing: border-box;
    padding-top: 12px !important;
    max-width: 100%;
    min-width: 0;
  }
  body.single-product .mfn-product-images-wrapper .woocommerce-product-gallery {
    max-width: 100%;
    min-width: 0;
  }
  /* Ajuste exclusivo para móviles: imagen completa sin límite fijo de 260 px.
     No recortar ni estirar; respeta la proporción original de cualquier producto. */
  body.single-product .mfn-product-images-wrapper .woocommerce-product-gallery__image img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /* Dos columnas legibles, incluso con nombres de componentes largos. */
  body.single-product .novati-unified-purchase .nvft-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    width: 100% !important;
  }
  body.single-product .novati-unified-purchase .nvft-highlight {
    grid-template-columns: 18px minmax(0,1fr) !important;
    column-gap: 6px !important;
    min-width: 0 !important;
    min-height: 60px !important;
    padding: 8px 7px !important;
  }
  body.single-product .novati-unified-purchase .nvft-hi-label {
    font-size: 10px !important;
    line-height: 1.3 !important;
  }
  body.single-product .novati-unified-purchase .nvft-hi-value {
    font-size: 11px !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
  }
  /* Tablas de especificaciones y descripción sin desbordamiento lateral. */
  body.single-product .nvft-specs {padding: 10px 6px 16px !important;}
  body.single-product .nvft-description {padding: 14px 12px !important;}
  body.single-product .nvft-row {
    grid-template-columns: minmax(0, 40%) minmax(0, 60%);
    column-gap: 9px;
    padding: 10px 11px;
  }
  body.single-product .nvft-heading {
    flex-wrap: wrap;
    gap: 6px;
  }
}
@media screen and (max-width: 359px) {
  body.single-product .novati-unified-purchase .nvft-highlight {padding: 7px 5px !important;}
  body.single-product .novati-unified-purchase .nvft-hi-value {font-size: 10px !important;}
}

/* v1.0.14 | Altura del precio uniforme en todos los productos.
   Corrige el contenedor colapsado (line-height:0) observado en UPS.
   No cambia precios, carrito, galeria ni tarjetas tecnicas. */
body.single-product .summary .price,
body.single-product .novati-unified-purchase .price {
  line-height: normal !important;
  height: auto !important;
  min-height: 36px !important;
  margin-bottom: 10px !important;
}
