/* ===== Ficha de especie (fauna y flora): pestañas, panel, ficha técnica y «más animales» =====
   Usa los colores y tipografías de la web (Fraunces + Plus Jakarta Sans, verdes del bosque, crema, naranja). */
.zp{--ink:var(--ink,#1a1e17)}
.ficha-header{padding-bottom:64px}
/* pestañas */
.zp-tabs-wrap{position:sticky;top:64px;z-index:40;background:var(--forest-900);border-top:1px solid rgba(255,255,255,.08);box-shadow:0 12px 22px -16px rgba(12,31,16,.6)}
.zp-tabs{max-width:var(--container);margin:0 auto;padding:12px 24px;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}
.zp-tab{font-family:var(--font-body);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;padding:9px 18px;border-radius:999px;color:rgba(255,255,255,.82);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);transition:background .15s,color .15s,border-color .15s}
.zp-tab:hover{background:rgba(255,255,255,.16);color:#fff}
.zp-tab.on{background:var(--cream);color:var(--forest-950);border-color:var(--cream)}
/* panel */
.zp-paper{background:var(--cream);padding:54px 0 70px}
.zp-wrap{max-width:var(--container);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:44px;align-items:start}
.zp-sec{scroll-margin-top:var(--zp-off,140px);margin-bottom:44px}
.zp-h2{font-family:var(--font-display);font-weight:600;color:var(--forest-950);font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;margin:0 0 16px;display:flex;align-items:center;gap:16px}
.zp-h2::after{content:"";flex:1;min-width:30px;height:1px;background:var(--sand)}
.zp-prose{font-size:1.04rem;line-height:1.75;color:var(--ink-soft)}
.zp-prose p{margin:0 0 14px}
.zp-prose p:last-child{margin-bottom:0}
.zp-prose strong,.zp-prose b{color:var(--forest-900)}
.zp-prose ul,.zp-prose ol{margin:0 0 14px;padding-left:1.3em;list-style:disc}
.zp-prose ol{list-style:decimal}
.zp-prose li{margin-bottom:6px}
.zp-prose h3,.zp-prose h4,.zp-prose h5,.zp-prose h6{font-family:var(--font-display);color:var(--forest-950);margin:20px 0 8px;line-height:1.2;font-weight:600}
.zp-prose h3{font-size:1.3rem}.zp-prose h6{font-size:1.05rem}
.zp-prose a{color:var(--leaf-600);text-decoration:underline;text-underline-offset:3px}
.zp-prose img{max-width:100%;max-height:440px;width:auto;height:auto;border-radius:var(--radius-md);box-shadow:var(--shadow-tight);display:block;margin:8px 0}
.zp-prose hr{border:0;border-top:1px solid var(--sand);margin:18px 0}
.zp-prose table{max-width:100%;border-collapse:collapse}
.zp-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:24px}
.zp-photos.n1{grid-template-columns:minmax(0,520px)}
.zp-photo{margin:0;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-tight);background:#fff}
.zp-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .35s}
.zp-photo:hover img{transform:scale(1.04)}
.zp-curio .zp-prose,.zp-conserv .zp-prose{background:#fff;border:1px solid var(--sand);border-radius:var(--radius-md);padding:22px 26px;box-shadow:0 1px 0 rgba(12,31,16,.03)}
.zp-curio .zp-prose{border-left:5px solid var(--orange)}
.zp-conserv .zp-prose{border-left:5px solid var(--leaf)}
.zp-map{background:#fff;border:1px solid var(--sand);border-radius:var(--radius-md);padding:16px;text-align:center}
.zp-map .ficha-map{background:none;border:0;padding:0;box-shadow:none;margin:0}
.zp-map img{max-width:100%;max-height:440px;width:auto;margin:0 auto;display:block;background:none}
.zp-map .ficha-map-caption{display:block;color:var(--ink-soft);margin-top:8px;font-size:.82rem}
/* ficha técnica */
.zp-side{position:sticky;top:var(--zp-off,140px);display:grid;gap:20px}
.zp-card{background:#fff;border:1px solid var(--sand);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft)}
.zp-card h3{margin:0;background:var(--forest-900);color:#fff;font-family:var(--font-display);font-weight:600;font-size:1.25rem;letter-spacing:.01em;padding:14px 20px}
.zp-rows{padding:14px 14px 6px}
.zp-row{display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--cream);border-radius:var(--radius-sm);padding:9px 14px;margin-bottom:7px;font-size:.93rem}
.zp-row span:first-child{font-weight:700;color:var(--ink-soft);text-transform:uppercase;font-size:.7rem;letter-spacing:.09em}
.zp-row b{color:var(--forest-900);text-align:right;font-weight:700}
.zp-row b.lv{color:#c0392b}
.zp-row b.lv-lc{color:var(--leaf-600)}
.zp-row b.lv-ne{color:#7d8279}
.zp-scale{display:grid;grid-template-columns:repeat(9,1fr);gap:3px;margin:0 14px 12px;font-size:.6rem;font-weight:800;text-align:center}
.zp-scale span{padding:5px 0;border-radius:6px;background:var(--cream-2);color:#7b8470}
.zp-scale span.on{background:#e0452f;color:#fff;transform:scale(1.2);box-shadow:0 3px 8px -2px rgba(0,0,0,.3)}
.zp-scale span.on.lc{background:var(--leaf)}
.zp-scale span.on.ne,.zp-scale span.on.dd{background:#7d8279}
.zp-zone{margin:2px 14px 16px;padding:11px 14px;text-align:center;font-weight:700;font-size:.92rem;color:var(--forest-900);background:var(--leaf-100);border-radius:var(--radius-sm)}
.zp-spons{display:flex;gap:12px;align-items:center;padding:14px 18px}
.zp-spons img{width:54px;height:54px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-tight)}
.zp-spons small{display:block;color:var(--ink-soft);font-weight:700;text-transform:uppercase;font-size:.68rem;letter-spacing:.09em}
.zp-spons b{font-family:var(--font-display);color:var(--forest-950);font-size:1.15rem;font-weight:600}
/* más animales */
.zp-more{background:var(--cream-2);padding:54px 0 58px;border-top:1px solid var(--sand)}
.zp-more-in{max-width:var(--container);margin:0 auto;padding:0 24px;text-align:center}
.zp-more h2{font-family:var(--font-display);font-weight:600;color:var(--forest-950);font-size:clamp(1.5rem,2.6vw,2rem);margin:0 0 26px}
.zp-circles{display:flex;gap:22px;flex-wrap:wrap;justify-content:center}
.zp-circle{display:flex;flex-direction:column;align-items:center;gap:10px;width:126px;transition:transform .2s}
.zp-circle:hover{transform:translateY(-5px)}
.zp-ring{position:relative;width:116px;height:116px;border-radius:50%;overflow:hidden;box-shadow:var(--shadow-tight);display:block;background:#fff}
.zp-ring img{position:absolute;left:50%;top:50%;width:calc(105% / var(--r,.93));height:calc(105% / var(--r,.93));max-width:none;transform:translate(-50%,-50%);display:block}
.zp-circle b{color:var(--forest-900);font-family:var(--font-body);font-weight:700;font-size:.86rem;text-align:center;line-height:1.2}
.zp-circle:hover b{color:var(--leaf-600)}
@media (max-width:980px){.zp-wrap{grid-template-columns:1fr}.zp-side{position:static}.zp-tabs-wrap{top:56px}}
@media (max-width:760px){.ficha-header{padding-bottom:48px}.zp-tabs{flex-wrap:nowrap;overflow-x:auto;padding:10px 14px;scrollbar-width:none}.zp-tabs::-webkit-scrollbar{display:none}.zp-tab{white-space:nowrap;flex:none}}
@media (max-width:620px){.zp-tab{padding:8px 14px;font-size:.76rem}.zp-circle{width:100px}.zp-ring{width:92px;height:92px}.zp-wrap{padding:0 16px}.zp-curio .zp-prose,.zp-conserv .zp-prose{padding:18px}.zp-more{padding:44px 0}}
@media (prefers-reduced-motion:reduce){.zp *{transition:none!important}}
