.especie-foto{margin:20px 0 24px}
.flora-ficha .especie-foto__abrir,.vista-fauna .especie-foto__abrir{display:block;position:relative;width:100%;height:170px;margin:0;padding:0;border:0;border-radius:0;background:#141414;overflow:hidden;cursor:zoom-in;color:#fff}
.especie-foto__abrir>img{display:block;width:100%;height:100%;object-fit:contain}
.especie-foto__expandir{position:absolute;bottom:8px;right:8px;width:36px;height:36px;display:grid;place-items:center;background:#202020e8;color:#fff;transition:background 180ms ease-out,color 180ms ease-out}
.especie-foto__expandir svg{width:20px;height:20px}
.especie-foto__abrir:hover .especie-foto__expandir{background:#f66227;color:#161616}
.especie-foto__abrir:focus-visible{outline:3px solid #e4fe44;outline-offset:4px}
.especie-foto__abrir:disabled{cursor:default}
.especie-foto__error{position:absolute;inset:0;display:grid;place-items:center;background:#141414;font:14px/1.4 Archivo,Arial,sans-serif}
.especie-foto figcaption{margin-top:8px;font:12px/1.45 Archivo,Arial,sans-serif;color:#d2c1ee}
.especie-foto__detalle,.especie-foto__credito{display:block}
.flora-ficha .especie-foto a,.vista-fauna .especie-foto a{font:inherit;color:inherit;text-decoration:underline;text-underline-offset:2px}
body.con-foto-especie{overflow:hidden}
.especie-visor{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:clamp(12px,3vw,40px);box-sizing:border-box;background:transparent;color:#f4f2ee;overflow:auto;overscroll-behavior:contain;font-family:Archivo,Arial,sans-serif}
.especie-visor[open]{display:grid;place-items:center}
.especie-visor::backdrop{background:#0b0b0bec;backdrop-filter:blur(8px)}
.especie-visor__interior{position:relative;width:min(1100px,100%);padding:56px 16px 16px;background:#202020;box-shadow:0 16px 48px #0006;box-sizing:border-box}
.especie-visor figure{margin:0}
.especie-visor__imagen{display:block;width:100%;height:auto;max-height:min(780px,calc(100dvh - 240px));object-fit:contain}
.especie-visor figcaption{padding:18px 8px 0}
.especie-visor h2{font-size:22px;line-height:1.2;font-weight:500;margin:0 0 8px;color:#e4fe44}
.especie-visor p{font-size:14px;line-height:1.45;margin:6px 0;color:#eee}
.especie-visor a{color:#d2b7ff;text-underline-offset:3px}
.especie-visor__cerrar{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:44px;height:44px;padding:10px;background:#f66227;color:#161616;border:0;cursor:pointer}
.especie-visor__cerrar svg{width:24px;height:24px}
.especie-visor__cerrar:hover{background:#fff}
.especie-visor :is(button,a):focus-visible{outline:3px solid #e4fe44;outline-offset:4px}
.especie-foto [hidden],.especie-visor [hidden]{display:none!important}
@media(max-width:600px){.especie-visor__interior{padding:56px 8px 12px}.especie-visor h2{font-size:20px}.especie-visor p{font-size:12px}.especie-foto__abrir{height:150px!important}}
@media(prefers-reduced-motion:reduce){.especie-foto__expandir{transition:none}}
.especie-galeria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.especie-galeria .vivienda-foto{margin:0;min-width:0}
.especie-galeria .vivienda-foto:first-child{grid-column:1/-1}
.especie-galeria:has(.vivienda-foto:nth-child(2):last-child) .vivienda-foto{grid-column:1/-1}
.especie-galeria .especie-foto__abrir{height:auto!important;aspect-ratio:16/9}
.especie-galeria figcaption{margin-top:6px;font:12px/1.4 Archivo,Arial,sans-serif;color:#d2c1ee}
.especie-visor__navegacion{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}
.especie-visor__navegacion button{width:44px;height:44px;border:0;background:#fff;color:#202020;font:24px 'Space Grotesk',sans-serif;cursor:pointer}
.especie-visor__navegacion button:hover{background:#7542bd;color:white}
.especie-visor__navegacion button{display:grid;place-items:center;padding:10px}
.especie-visor__navegacion svg{width:24px;height:24px;fill:currentColor}
.especie-visor__imagen{max-height:min(1080px,calc(100dvh - 330px))}
.especie-visor::backdrop{animation:foto-fondo 330ms ease both}
.especie-visor--cerrando::backdrop{animation:foto-fondo-salir 210ms ease both}
@keyframes foto-fondo{from{background:#0b0b0b00;backdrop-filter:blur(0)}to{background:#0b0b0bec;backdrop-filter:blur(8px)}}
@keyframes foto-fondo-salir{from{background:#0b0b0bec;backdrop-filter:blur(8px)}to{background:#0b0b0b00;backdrop-filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.especie-visor::backdrop{animation:none}}
html[data-detener=true] .especie-visor::backdrop{animation:none}
