/* =====================================================
   PROFRUTAS - CATALOGO Y PLANTILLA DE FICHA
   Reutiliza ../styles.css sin modificar la web principal.
   ===================================================== */

.catalogo{background:#fafbf7;min-height:75vh;padding:58px 0 80px}
.catalogo-encabezado{max-width:760px;margin-bottom:48px}
.catalogo-encabezado .kicker{display:block;color:#4ea134;font-size:11px;font-weight:800;letter-spacing:2px;margin-bottom:14px}
.catalogo-encabezado h1{color:#233b2e;font-size:clamp(35px,4vw,50px);line-height:1.12;letter-spacing:-1.5px;font-weight:800;margin:0 0 15px}
.catalogo-encabezado p{max-width:650px;color:#62746a;font-size:15px;line-height:1.8;margin:0}
.catalogo-seccion{margin:0 0 60px;scroll-margin-top:110px}
.catalogo-seccion+.catalogo-seccion{border-top:1px solid #dce5dc;padding-top:42px}
.catalogo-seccion-encabezado{margin-bottom:24px;max-width:760px}
.catalogo-seccion-encabezado h2{color:#233b2e;font-size:clamp(25px,3vw,32px);line-height:1.25;letter-spacing:-.8px;margin:0 0 9px;font-weight:800}
.catalogo-seccion-encabezado p{color:#62746a;font-size:14px;line-height:1.7;margin:0}
.catalogo-productos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-items:start}
.catalogo-producto{display:block;background:#fff;border:1px solid #dce5dc;border-radius:5px;overflow:hidden;min-width:0;transition:border-color .2s ease,box-shadow .2s ease}
.catalogo-producto-enlace{cursor:pointer}
.catalogo-producto-enlace:hover,.catalogo-producto-enlace:focus-visible{border-color:#4ea134;box-shadow:0 8px 24px #233b2e12}
.catalogo-producto-enlace:focus-visible{outline:2px solid #4ea134;outline-offset:3px}
.catalogo-producto-imagen{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#edf2e9}
.catalogo-producto-imagen img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:translate(var(--foto-x,0%),var(--foto-y,0%)) scale(var(--foto-escala,1));transform-origin:center}
/* Escala y centrado del contenido visible: compensan los márgenes propios de cada foto. */
.catalogo-producto[data-producto="pulpa-maracuya"]{--foto-escala:1.076;--foto-x:0.43%;--foto-y:-0.75%}
.catalogo-producto[data-producto="pulpa-mora"],.catalogo-producto[data-producto="mora-entera-iqf"]{--foto-escala:1.180;--foto-x:0.47%;--foto-y:-2.01%}
.catalogo-producto[data-producto="pulpa-guanabana"]{--foto-escala:0.986;--foto-x:0.99%;--foto-y:3.45%}
.catalogo-producto[data-producto="pulpa-naranjilla"]{--foto-escala:0.959;--foto-x:-1.73%;--foto-y:2.01%}
.catalogo-producto[data-producto="pulpa-mango"],.catalogo-producto[data-producto="mango-chunks-iqf"]{--foto-escala:0.993;--foto-x:-0.30%;--foto-y:1.59%}
.catalogo-producto[data-producto="pulpa-guayaba"]{--foto-escala:0.955;--foto-x:4.77%;--foto-y:2.77%}
.catalogo-producto[data-producto="pulpa-pina"],.catalogo-producto[data-producto="pina-chunks-iqf"]{--foto-escala:0.929;--foto-x:-3.90%;--foto-y:-3.25%}
.catalogo-producto[data-producto="pulpa-frutilla"],.catalogo-producto[data-producto="frutilla-entera-iqf"]{--foto-escala:1.203;--foto-x:0.36%;--foto-y:3.01%}
.catalogo-producto[data-producto="pulpa-tomate-arbol"]{--foto-escala:1.012;--foto-x:-0.30%;--foto-y:1.32%}
.catalogo-producto[data-producto="pulpa-tamarindo"]{--foto-escala:1.317;--foto-x:5.40%;--foto-y:3.55%}
.catalogo-producto[data-producto="pulpa-limon"]{--foto-escala:1.200;--foto-x:-1.44%;--foto-y:2.04%}
.catalogo-producto[data-producto="pulpa-naranja"]{--foto-escala:1.176;--foto-x:3.88%;--foto-y:2.59%}
.catalogo-producto[data-producto="pulpa-mandarina"]{--foto-escala:1.061;--foto-x:-0.42%;--foto-y:0.21%}
.catalogo-producto[data-producto="pulpa-toronja"]{--foto-escala:1.069;--foto-x:0.11%;--foto-y:-2.89%}
.catalogo-producto[data-producto="pulpa-ciruela"]{--foto-escala:1.058;--foto-x:0.32%;--foto-y:1.69%}
.catalogo-producto[data-producto="pulpa-papaya"]{--foto-escala:0.896;--foto-x:-0.45%;--foto-y:0.45%}
.catalogo-producto[data-producto="pulpa-frutimora"]{--foto-escala:0.915;--foto-x:0.27%;--foto-y:-0.92%}
.catalogo-producto[data-producto="pulpa-papaya-naranja"]{--foto-escala:0.897;--foto-x:-0.36%;--foto-y:0.99%}
.catalogo-producto[data-producto="crema-coco"]{--foto-escala:1.017;--foto-x:-0.10%;--foto-y:0.10%}
/* Un realce suave de color mantiene el aspecto natural de los cítricos. */
.catalogo-producto:is([data-producto="pulpa-naranja"],[data-producto="pulpa-mandarina"],[data-producto="pulpa-toronja"]) .catalogo-producto-imagen img{filter:saturate(1.2) contrast(1.04)}
.catalogo-producto-imagen .foto-alterna{position:absolute;inset:0;opacity:0;transition:opacity .25s ease}
.catalogo-producto:hover .catalogo-producto-imagen.con-dos-fotos .foto-alterna{opacity:1}
.catalogo-imagen-pendiente{padding:15px;color:#859582;font-size:11px;font-weight:400;line-height:1.5;text-align:center}
.catalogo-producto-info{padding:14px 12px 16px;text-align:center}
.catalogo-producto-info h3{color:#233b2e;font-size:14px;font-weight:750;line-height:1.35;margin:0}
.catalogo-header .head-actions{display:flex;align-items:center;gap:14px}
.catalogo-header .head-contact{display:inline-flex;align-items:center;justify-content:center;text-align:center}

/* =====================================================
   FICHA UNICA
   ===================================================== */
.ficha-pagina{padding-top:45px}
.ficha-encabezado{margin-bottom:30px}
.ficha-volver{display:inline-block;color:#398e31;font-size:13px;font-weight:700;margin-bottom:17px}
.ficha-volver:hover{text-decoration:underline}
.ficha-encabezado h1{font-size:clamp(32px,4vw,48px);letter-spacing:-1px;line-height:1.16;margin:0 0 8px}
.ficha-traduccion{color:#62746a;font-size:16px;margin:0}
.ficha-superior{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:start;margin-bottom:36px}
.ficha-imagen{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;background:#edf2e9;border:1px solid #dce5dc;border-radius:6px;overflow:hidden}
.ficha-imagen img{display:block;width:100%;height:100%;object-fit:contain}
.ficha-descripcion{min-width:0}
.ficha-descripcion h2,.ficha-bloque h2{font-size:21px;letter-spacing:-.35px;color:#233b2e;margin:0 0 12px}
.ficha-descripcion>p{font-size:15px;line-height:1.85;color:#52695b;margin:0 0 22px}
.ficha-datos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;padding-top:20px;border-top:1px solid #dce5dc}
.ficha-campo{min-width:0;display:flex;flex-direction:column;gap:5px}
.ficha-campo-etiqueta{font-size:12px;color:#738376}
.ficha-campo strong{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.ficha-bloque{padding:28px 0;border-top:1px solid #dce5dc}
.ficha-microtitulo{color:#62746a;font-size:13px;margin:0 0 12px}
.ficha-selectores{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.ficha-selector{border:1px solid #bed1bb;background:#fff;color:#254b2b;border-radius:5px;padding:10px 17px;font-size:13px;font-weight:700;cursor:pointer}
.ficha-selector:hover{border-color:#4ea134}
.ficha-selector.activo,.ficha-selector[aria-pressed="true"]{background:#4ea134;color:#fff;border-color:#4ea134}
.ficha-selector:focus-visible{outline:2px solid #f18d1b;outline-offset:2px}
.ficha-tabla-scroll{width:100%;overflow-x:auto;border:1px solid #dce5dc;border-radius:6px;background:#fff}
.ficha-tabla{width:100%;border-collapse:collapse;min-width:620px;font-size:13px}
.ficha-tabla-general{min-width:0}
.ficha-tabla th,.ficha-tabla td{padding:14px 16px;text-align:left;border-bottom:1px solid #e6ece5}
.ficha-tabla th{background:#edf3e9;color:#23422a;font-weight:750}
.ficha-tabla tbody tr:last-child td{border-bottom:0}
.ficha-tabla td:first-child{font-weight:700}
.ficha-nota{color:#6d7b6e;font-size:12px;line-height:1.6;margin:13px 0 0}
.ficha-usos{display:flex;flex-wrap:wrap;gap:9px}
.ficha-usos span{display:inline-block;border-radius:4px;background:#eaf1e6;color:#2c5833;padding:9px 12px;font-size:13px}
.ficha-navegacion{border-top:1px solid #dce5dc;margin-top:12px;padding-top:25px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}
.ficha-navegacion a{font-size:13px;color:#328b32;font-weight:700}
.ficha-sin-datos{padding:65px 0}
.ficha-sin-datos p{color:#62746a}

@media(max-width:1000px){.catalogo-productos{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ficha-superior{gap:24px}}
@media(max-width:720px){
  .catalogo{padding:35px 0 50px}
  .catalogo-encabezado{margin-bottom:36px}
  .catalogo-encabezado h1{font-size:clamp(32px,8vw,42px)}
  .catalogo-encabezado p{font-size:14px}
  .catalogo-seccion{margin-bottom:42px}
  .catalogo-seccion+.catalogo-seccion{padding-top:32px}
  .catalogo-seccion-encabezado{margin-bottom:20px}
  .catalogo-productos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .catalogo-producto-info{padding:12px 10px 14px}
  .catalogo-producto-info h3{font-size:14px}
  .catalogo-header .head-actions{gap:7px}
  .catalogo-header .head-contact{display:inline-flex;font-size:11px;line-height:1.3;padding:9px 10px;white-space:normal}
  .catalogo-header .brand img{width:120px}
  .ficha-superior{grid-template-columns:1fr;gap:25px}
  .ficha-imagen{max-width:500px;width:100%;margin:auto}
  .ficha-datos{gap:16px}
}
@media(max-width:380px){
  .catalogo-header .brand img{width:105px}
  .catalogo-header .head-contact{font-size:10px;padding:8px}
  .ficha-datos{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.catalogo-producto,.catalogo-producto-imagen .foto-alterna{transition:none}}


/* ==========================================
   GALERIA DE FOTOGRAFIAS - FICHAS
   ========================================== */

.ficha-galeria {
  display: flex;
  flex-direction: column;
  gap: 14px;
  height: auto;
  min-height: 0;
}

.ficha-galeria-principal {
  width: 100%;
  min-height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.ficha-galeria .ficha-foto-grande {
  display: block;
  width: 100%;
  height: auto;
  max-height: 420px;
  object-fit: contain;
}

.ficha-miniaturas {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  width: 100%;
}

.ficha-miniatura {
  width: 76px;
  height: 76px;
  padding: 5px;
  background: #fff;
  border: 1px solid #d8e3d5;
  border-radius: 9px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.ficha-galeria .ficha-miniatura img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ficha-miniatura:hover {
  border-color: #4ea134;
}

.ficha-miniatura.activo {
  border: 2px solid #4ea134;
  box-shadow: 0 0 0 2px rgba(78, 161, 52, 0.12);
}

.ficha-miniatura:focus-visible {
  outline: 2px solid #20470e;
  outline-offset: 3px;
}

@media (max-width: 600px) {
  .ficha-galeria-principal {
    min-height: 220px;
  }

  .ficha-miniatura {
    width: 64px;
    height: 64px;
  }
}


/* ==========================================
   CORRECCION GALERIA - ESCRITORIO Y MOVIL
   Evita recortar fotografías verticales
   ========================================== */

.ficha-imagen.ficha-galeria {
  aspect-ratio: auto;
  height: auto;
  overflow: visible;
  padding: 14px;
  box-sizing: border-box;
}

.ficha-galeria-principal {
  min-height: 0;
  height: auto;
  overflow: visible;
}

.ficha-imagen.ficha-galeria .ficha-foto-grande {
  display: block;
  width: 100%;
  height: auto;
  max-height: 420px;
  object-fit: contain;
}

/* Ajustes exclusivos para celulares */

@media (max-width: 600px) {

  .ficha-imagen.ficha-galeria {
    padding: 12px;
  }

  .ficha-imagen.ficha-galeria .ficha-foto-grande {
    width: 100%;
    height: auto;
    max-height: 360px;
    object-fit: contain;
  }

}


/* ==========================================
   TIPOGRAFIA DE NOTAS TECNICAS
   ========================================== */

.ficha-campo .ficha-campo-nota {
  display: block;
  margin-top: 3px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  color: #233b2e;
}

/* Navigation visible au-dessus du titre, avec positions conservées aux extrémités. */
.ficha-navegacion {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 12px;
  border-top: 0;
  padding: 0;
  margin: 0 0 28px;
}
.ficha-navegacion a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid #c5d8c0;
  background: #fff;
  color: #315b36;
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
  overflow-wrap: anywhere;
}
.ficha-nav-previous { grid-column: 1; grid-row: 1; justify-self: start; }
.ficha-navegacion .ficha-nav-catalog { grid-column: 2; grid-row: 1; justify-self: center; background: #315b36; color: #fff; }
.ficha-nav-next { grid-column: 3; grid-row: 1; justify-self: end; }
.ficha-navegacion a:hover { border-color: #4ea134; text-decoration: underline; text-underline-offset: 3px; }
.ficha-navegacion a:focus-visible { outline: 2px solid #4ea134; outline-offset: 3px; }
@media (max-width: 580px) {
  .ficha-navegacion { gap: 8px; margin-bottom: 22px; }
  .ficha-navegacion a { padding: 9px 6px; font-size: 12px; justify-self: stretch; }
}

/* Estado comercial visible sin ocultar la ficha técnica. */
.catalogo-disponibilidad{display:inline-block;margin-top:10px;padding:5px 8px;border:1px solid #d4ddd2;border-radius:3px;background:#f1f4ef;color:#55644f;font-size:11px;font-weight:600;line-height:1.4}
.ficha-disponibilidad{margin-top:20px;padding:14px 18px;border-left:3px solid #8b9b80;background:#f0f3ed;color:#4d5c46}
.ficha-disponibilidad strong{display:block;font-size:15px}
.ficha-disponibilidad p{margin:4px 0 0;font-size:13px;line-height:1.6}

/* Las instrucciones de preparación ocupan todo el ancho para facilitar la lectura. */
.ficha-campo[data-campo="preparacion"]{grid-column:1/-1}
.ficha-campo[data-campo="preparacion"] strong{font-weight:400;line-height:1.6;white-space:pre-line}
