/* =========================================================
   Arequipe La Colmena — Catálogo de Productos imprimible
   Tamaño página: CARTA (Letter, 8.5in x 11in) — NO A4.
   Reutiliza la paleta/tipografía oficial definida en
   style-v11.css (:root) para mantener coherencia exacta con
   el resto del sitio. Este hoja SOLO añade lo específico del
   documento paginado (portada, páginas de línea, impresión).
   ========================================================= */

/* ---------- Fondo de la "sala de vista previa" en pantalla ---------- */
.catalog-shell{
  background:
    radial-gradient(60% 40% at 50% 0%, rgba(255,194,0,.08) 0%, transparent 60%),
    #EDEAE2;
  padding:40px 16px 90px;
  min-height:100vh;
}

/* ---------- Barra flotante de acciones (solo pantalla) ---------- */
.catalog-toolbar{
  position:sticky; top:0; z-index:50;
  background:var(--color-black);
  color:#fff;
  box-shadow:0 12px 30px -10px rgba(0,0,0,.4);
}
.catalog-toolbar .toolbar-inner{
  max-width:1100px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;padding:.85rem 1.25rem;
}
.catalog-toolbar .toolbar-badge{
  font-family:var(--font-display);font-weight:800;font-size:.68rem;
  letter-spacing:.12em;text-transform:uppercase;
  background:var(--color-primary);color:var(--color-black);
  padding:.3rem .65rem;border-radius:999px;
}

/* ---------- Página tamaño carta ---------- */
.catalog-page{
  width:8.5in;
  height:11in;
  margin:0 auto 44px;
  background:var(--color-cream);
  position:relative;
  overflow:hidden;
  box-shadow:0 40px 90px -30px rgba(29,30,24,.45), 0 2px 0 rgba(0,0,0,.04);
  border-radius:6px;
}
.catalog-page-inner{
  position:relative;
  z-index:3;
  height:100%;
  box-sizing:border-box;
  padding:.62in .66in;
  display:flex;
  flex-direction:column;
}

/* Numeración / pie de página interior (no aplica a portada) */
.catalog-foot{
  position:absolute;
  left:.66in; right:.66in; bottom:.32in;
  display:flex;align-items:center;justify-content:space-between;
  font-family:var(--font-display);font-weight:600;font-size:.62rem;
  letter-spacing:.06em;text-transform:uppercase;
  color:rgba(29,30,24,.4);
  z-index:5;
}
.catalog-foot img{ height:16px;width:auto;opacity:.65; }

/* =========================================================
   PORTADA — réplica exacta del tratamiento visual del Hero
   ========================================================= */
.catalog-cover{
  background:
    radial-gradient(120% 90% at 88% -10%, rgba(255,194,0,.32) 0%, transparent 55%),
    radial-gradient(90% 90% at -5% 115%, rgba(232,142,0,.18) 0%, transparent 60%),
    linear-gradient(155deg, #FFFDF5 0%, var(--color-cream) 55%, #FFF3D2 100%);
}
.catalog-cover .cover-orb{
  position:absolute;border-radius:50%;pointer-events:none;
}
.catalog-cover .cover-hexsvg{
  position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;
}
.catalog-cover-inner{
  position:relative;z-index:3;height:100%;
  display:flex;flex-direction:column;
  padding:.55in .62in .4in;
  box-sizing:border-box;
}
.cover-topbar{
  display:flex;align-items:center;justify-content:space-between;
}
.cover-topbar img{ height:104px;width:auto; } /* +100% a pedido del usuario (era 52px) */
.cover-topbar .cover-year{
  font-family:var(--font-display);font-weight:700;font-size:.68rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--color-amber);
  border:1.5px solid rgba(232,142,0,.4);border-radius:999px;
  padding:.4rem .9rem;
}
.cover-main{
  flex:1;display:flex;align-items:center;gap:.4in;margin-top:.15in;
}
.cover-copy{ flex:1.05; position:relative; z-index:4; }
.cover-copy .label-pro{ align-items:flex-start; }
.cover-brand-word{
  font-family:var(--font-display);font-weight:800;
  font-size:3.6rem;line-height:1.0;color:var(--color-black);
  letter-spacing:-.02em;margin-top:.28in;
}
.cover-brand-word .accent-script{ font-size:3.2rem; display:block; }
.cover-legal-name{
  font-family:var(--font-display);font-weight:700;
  font-size:.86rem;letter-spacing:.05em;
  color:var(--color-black);
  margin-top:.28in;
  padding-top:.2in;
  border-top:1.5px solid rgba(232,142,0,.35);
  max-width:4.2in;
}
.cover-legal-name span{ display:block;font-weight:400;font-size:.72rem;color:rgba(29,30,24,.55);margin-top:.06in; }
.cover-tagline{
  margin-top:.22in;color:rgba(29,30,24,.62);font-size:.92rem;line-height:1.55;max-width:3.9in;
}
.cover-badges{
  display:flex;gap:.55rem;margin-top:.3in;flex-wrap:wrap;
}
.cover-badge{
  display:inline-flex;align-items:center;gap:.4rem;
  background:#fff;border:1px solid rgba(232,142,0,.3);
  border-radius:999px;padding:.35rem .8rem;
  font-family:var(--font-display);font-weight:700;font-size:.66rem;
  color:var(--color-black);box-shadow:0 10px 24px -14px rgba(232,142,0,.3);
}
.cover-badge i{ color:var(--color-amber); }

.cover-visual{
  flex:.95;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
}
.cover-jar-stage{
  position:relative;width:100%;display:flex;align-items:center;justify-content:center;
}
.cover-jar-shadow{
  position:absolute;left:50%;bottom:2%;transform:translateX(-50%);
  width:100%;aspect-ratio:2.1/1;border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(255,222,62,.75) 0%, rgba(255,194,0,.5) 32%, transparent 72%);
  filter:blur(18px);z-index:0;
}
.cover-jar-stage img.cover-jar{
  position:relative;z-index:2;width:112%;
  filter:drop-shadow(0 30px 40px rgba(0,0,0,.28));
}
.cover-jar-stage .cover-bee{
  position:absolute;z-index:3;width:15%;
}
/* Sello "100% Natural": mismo componente que en el Hero de la Home
   (".seal-medal" de css/style-v11.css, anclado esquina inferior derecha
   del propio envase), con el tamaño fijado explícitamente como la
   CUARTA PARTE del ancho real del tarro (tarro=112% del contenedor →
   sello=28%), anulando los límites min-width/max-width en px del
   componente compartido (pensados para el tamaño de viewport de la
   Home, no para este contenedor). Se fuerza aspect-ratio 1/1 de forma
   explícita (además del ya heredado) para garantizar un círculo
   perfecto y no una elipse, y se reducen las fuentes internas del
   sello en la misma proporción que su nuevo tamaño físico más pequeño,
   para que el texto "100% / NATURAL" quede bien contenido dentro del
   disco sin solaparse ni desbordarse (causa real del efecto "distorsionado"
   señalado). También se anula el giro continuo del aro dorado: aquí es
   una página estática impresa, sin animación. */
.cover-jar-stage .cover-seal{
  display:flex !important;
  animation:none;
  width:23.8% !important; /* tamaño del sello sin cambios, tal como pidió el usuario */
  aspect-ratio:1/1 !important;
  min-width:0 !important;
  max-width:none !important;
}
.cover-jar-stage .cover-seal .seal-medal-rays{
  animation:none;
}
.cover-jar-stage .cover-seal .seal-medal-disc{
  padding:3px;
}
.cover-jar-stage .cover-seal .seal-medal-inner{
  border-width:1px; /* borde del círculo blanco afinado un 50% (era 2px) */
}
/* Solo el texto "100% / NATURAL" se reduce un 15% (el sello/círculo en sí
   NO cambia de tamaño, según pidió el usuario explícitamente). */
.cover-jar-stage .cover-seal .seal-medal-icon{
  font-size:.867rem;margin-bottom:0;line-height:1;
}
.cover-jar-stage .cover-seal .seal-medal-num{
  font-size:1.003rem;line-height:.95;
}
.cover-jar-stage .cover-seal .seal-medal-label{
  font-size:.391rem;letter-spacing:.03em;margin-top:.02rem;line-height:1;
}

/* "Pura Leche de Vaca": ya NO es un sello ni un círculo — es un ícono de
   vaca simple, con el texto DEBAJO del ícono (no al lado), integrado
   dentro de la misma fila de insignias que "100% Natural" / "+15 años de
   tradición" / "Distribución nacional", en vez de flotar sobre el tarro. */
.cover-cow-badge{
  display:inline-flex;flex-direction:column;align-items:center;gap:.12rem;
  padding:.1rem .3rem 0;
}
.cover-cow-badge img{ width:3rem;height:3rem;object-fit:contain; }
.cover-cow-text{
  font-family:var(--font-display);font-weight:700;font-size:.6rem;
  letter-spacing:.02em;color:var(--color-black);line-height:1.15;text-align:center;
}
.cover-footer-strip{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:.2in;padding-top:.18in;
  border-top:1px solid rgba(29,30,24,.1);
  font-family:var(--font-display);font-weight:600;font-size:.68rem;
  letter-spacing:.06em;color:rgba(29,30,24,.5);
}
.cover-footer-strip span i{ color:var(--color-amber);margin-right:.35rem; }

/* =========================================================
   PÁGINA INTRO / NOSOTROS EN CIFRAS
   ========================================================= */
.intro-stats-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:.22in;margin-top:.28in;
}
.intro-stat{
  background:#fff;border-radius:16px;border:1px solid rgba(29,30,24,.07);
  padding:.24in .18in;text-align:center;
  box-shadow:0 14px 30px -18px rgba(29,30,24,.18);
}
.intro-stat .num{ font-family:var(--font-display);font-weight:800;font-size:1.55rem;color:var(--color-black); }
.intro-stat .lbl{ font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;color:rgba(29,30,24,.5);margin-top:.05in; }

.intro-pillars{
  display:grid;grid-template-columns:repeat(3,1fr);gap:.24in;margin-top:.3in;
}
.intro-pillar{
  background:#fff;border-radius:18px;border:1px solid rgba(29,30,24,.06);
  padding:.24in;box-shadow:0 14px 32px -20px rgba(29,30,24,.18);
}
.intro-pillar .icon-circle-pro{ width:46px;height:46px;font-size:1rem; }
.intro-pillar h3{ font-family:var(--font-display);font-weight:800;font-size:.92rem;margin-top:.14in; }
.intro-pillar p{ font-size:.74rem;line-height:1.5;color:rgba(29,30,24,.6);margin-top:.06in; }

.intro-lines-strip{
  margin-top:.32in;display:grid;grid-template-columns:repeat(4,1fr);gap:.18in;
}
.intro-line-chip{
  border-radius:14px;padding:.16in .14in;color:#fff;
  display:flex;flex-direction:column;gap:.04in;
}
.intro-line-chip .chip-name{ font-family:var(--font-display);font-weight:800;font-size:.78rem; }
.intro-line-chip .chip-count{ font-size:.64rem;opacity:.85; }

/* =========================================================
   PÁGINAS DE LÍNEA DE PRODUCTO
   ========================================================= */
.line-header{
  display:flex;align-items:flex-end;justify-content:space-between;gap:.3in;
  padding-bottom:.2in;border-bottom:2px solid var(--line-color, var(--color-amber));
}
.line-header .line-eyebrow{
  font-family:var(--font-display);font-weight:700;font-size:.66rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--line-color, var(--color-amber));
}
.line-header h2{
  font-family:var(--font-display);font-weight:800;font-size:2rem;
  color:var(--color-black);line-height:1.02;margin-top:.06in;
}
.line-header .line-tagline{
  font-size:.82rem;color:rgba(29,30,24,.58);max-width:3.2in;text-align:right;line-height:1.45;
}
.line-badge-icon{
  width:.62in;height:.62in;border-radius:50%;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  background:var(--line-color, var(--color-amber));color:#fff;font-size:1.15rem;
  box-shadow:0 12px 26px -12px rgba(0,0,0,.35);
}

.line-grid{
  display:grid;gap:.2in;margin-top:.26in;flex:1;
}
.line-grid.cols-3{ grid-template-columns:repeat(3,1fr); }
.line-grid.cols-2{ grid-template-columns:repeat(2,1fr); }

.line-card{
  background:#fff;border-radius:18px;border:1px solid rgba(29,30,24,.07);
  box-shadow:0 14px 28px -18px rgba(29,30,24,.18);
  padding:.16in;display:flex;flex-direction:column;
  position:relative;overflow:hidden;
}
.line-card .card-line-tab{
  position:absolute;top:0;left:0;right:0;height:5px;background:var(--line-color, var(--color-amber));
}
.line-card .card-img-wrap{
  height:1.55in;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 40% 30%, rgba(255,194,0,.14), transparent 70%);
  border-radius:12px;margin-top:.06in;
}
.line-card .card-img-wrap img{ max-height:100%;max-width:88%;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(0,0,0,.14)); }
.line-card h3{ font-family:var(--font-display);font-weight:800;font-size:.82rem;margin-top:.12in;color:var(--color-black); }
.line-card .card-meta{
  display:flex;gap:.14in;margin-top:.05in;font-size:.62rem;color:rgba(29,30,24,.55);
}
.line-card .card-meta span i{ color:var(--line-color, var(--color-amber));margin-right:.2rem; }
.line-card p.card-desc{ font-size:.68rem;line-height:1.42;color:rgba(29,30,24,.62);margin-top:.08in; }
.line-card .card-specs{
  display:flex;flex-wrap:wrap;gap:.1in;margin-top:.08in;padding-top:.08in;
  border-top:1px dashed rgba(29,30,24,.12);
  font-size:.56rem;color:rgba(29,30,24,.48);
}
.line-card .card-specs span{ display:inline-flex;align-items:center; }
.line-card .card-specs span i{ color:var(--line-color, var(--color-amber));margin-right:.18rem;font-size:.56rem; }

/* Cards grandes (líneas con pocos productos: layout editorial horizontal) */
.line-card-lg{
  background:#fff;border-radius:20px;border:1px solid rgba(29,30,24,.07);
  box-shadow:0 16px 34px -18px rgba(29,30,24,.2);
  padding:.22in;display:flex;gap:.24in;align-items:center;
  position:relative;overflow:hidden;
}
.line-card-lg .card-line-tab{ position:absolute;top:0;left:0;bottom:0;width:6px;background:var(--line-color, var(--color-amber)); }
.line-card-lg .card-img-wrap{
  width:2.1in;height:2.1in;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 40% 30%, rgba(255,194,0,.16), transparent 70%);
  border-radius:16px;
}
.line-card-lg .card-img-wrap img{ max-height:92%;max-width:92%;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(0,0,0,.16)); }
.line-card-lg .card-body h3{ font-family:var(--font-display);font-weight:800;font-size:1.05rem;color:var(--color-black); }
.line-card-lg .card-meta{ display:flex;gap:.2in;margin-top:.06in;font-size:.68rem;color:rgba(29,30,24,.55); }
.line-card-lg .card-meta span i{ color:var(--line-color, var(--color-amber));margin-right:.25rem; }
.line-card-lg p.card-desc{ font-size:.76rem;line-height:1.55;color:rgba(29,30,24,.65);margin-top:.1in; }
.line-card-lg .card-specs{
  display:flex;flex-wrap:wrap;gap:.16in;margin-top:.1in;padding-top:.1in;
  border-top:1px dashed rgba(29,30,24,.12);
  font-size:.64rem;color:rgba(29,30,24,.5);
}
.line-card-lg .card-specs span{ display:inline-flex;align-items:center; }
.line-card-lg .card-specs span i{ color:var(--line-color, var(--color-amber));margin-right:.22rem;font-size:.62rem; }
.line-card-lg .card-use{
  display:inline-flex;align-items:center;gap:.3rem;margin-top:.12in;
  background:var(--line-color, var(--color-amber));color:#fff;
  font-family:var(--font-display);font-weight:700;font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;
  border-radius:999px;padding:.14rem .55rem;
}

.line-footer-note{
  margin-top:auto;padding-top:.18in;
  display:flex;align-items:center;gap:.14in;
  font-size:.68rem;color:rgba(29,30,24,.5);
  border-top:1px dashed rgba(29,30,24,.15);
}
.line-footer-note i{ color:var(--line-color, var(--color-amber)); }

/* Bloque de beneficios usado para llenar con elegancia las líneas que
   tienen pocos productos (Alter Naturec / Chocolate), en vez de dejar
   espacio vacío en la página tamaño carta. */
.line-benefits{
  margin-top:.24in;background:#fff;border-radius:18px;
  border:1px solid rgba(29,30,24,.07);
  box-shadow:0 14px 30px -18px rgba(29,30,24,.16);
  padding:.24in;display:grid;grid-template-columns:repeat(3,1fr);gap:.22in;
}
.line-benefit{ text-align:center; }
.line-benefit .icon-circle-pro{ width:48px;height:48px;font-size:1rem;margin:0 auto;border-color:var(--line-color, var(--color-amber));color:var(--line-color, var(--color-amber)); }
.line-benefit h4{ font-family:var(--font-display);font-weight:700;font-size:.76rem;margin-top:.1in;color:var(--color-black); }
.line-benefit p{ font-size:.66rem;color:rgba(29,30,24,.55);margin-top:.04in;line-height:1.4; }

/* =========================================================
   PÁGINA DE CONTACTO / CIERRE
   ========================================================= */
.contact-hero{
  border-radius:26px;position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(125deg, var(--color-red) 0%, var(--color-amber) 55%, var(--color-primary) 100%);
  padding:.32in .34in;
}
.contact-hero h2{ font-family:var(--font-display);font-weight:800;font-size:1.5rem; }
.contact-hero p{ font-size:.82rem;opacity:.92;margin-top:.06in;max-width:4.4in; }

.contact-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:.2in;margin-top:.26in;
}
.contact-item{
  background:#fff;border-radius:16px;border:1px solid rgba(29,30,24,.07);
  padding:.2in;display:flex;gap:.16in;align-items:flex-start;
  box-shadow:0 12px 26px -16px rgba(29,30,24,.16);
}
.contact-item .icon-circle-pro{ width:44px;height:44px;font-size:.95rem; }
.contact-item h4{ font-family:var(--font-display);font-weight:700;font-size:.78rem; }
.contact-item p{ font-size:.72rem;color:rgba(29,30,24,.6);margin-top:.04in;line-height:1.4; }

.contact-steps{
  margin-top:.28in;display:grid;grid-template-columns:repeat(3,1fr);gap:.2in;
}
.contact-step{ text-align:center; }
.contact-step .index-pro{ margin:0 auto; }
.contact-step h4{ font-family:var(--font-display);font-weight:700;font-size:.76rem;margin-top:.1in; }
.contact-step p{ font-size:.68rem;color:rgba(29,30,24,.55);margin-top:.04in;line-height:1.4; }

/* =========================================================
   IMPRESIÓN — Tamaño CARTA obligatorio (8.5 x 11 in)
   ========================================================= */
@media print{
  @page{ size: letter; margin:0; }
  html,body{ margin:0!important; padding:0!important; background:#fff!important; }
  .catalog-toolbar, .no-print{ display:none!important; }
  .catalog-shell{ background:none!important;padding:0!important;min-height:0; }
  .catalog-page{
    box-shadow:none!important; border-radius:0!important;
    margin:0!important; width:8.5in; height:11in;
    page-break-after:always; break-after:page;
  }
  .catalog-page:last-of-type{ page-break-after:auto; break-after:auto; }
  a{ color:inherit!important;text-decoration:none!important; }
}

@media screen and (max-width:900px){
  .catalog-page{ width:100%; height:auto; min-height:11in; transform:none; }
}
