/* Rich content components: all local, no external fonts, scripts or embeds. */

/* Cronologías: secuencia conectada, legible y claramente ordenada. */
.timeline{counter-reset:timeline-step;position:relative;display:flex;gap:0;margin:3rem 0;padding:3.4rem 1rem 2rem;overflow-x:auto;scroll-snap-type:x proximity;background:linear-gradient(135deg,#eef2eb,#f8f4eb);border:1px solid rgba(17,36,30,.12);border-radius:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.timeline::before{content:"";position:absolute;left:3rem;right:3rem;top:2.25rem;height:2px;background:linear-gradient(90deg,#c96e4a,#d6b36d 45%,#2d745b);opacity:.9}
.timeline-item{counter-increment:timeline-step;position:relative;flex:0 0 min(245px,72vw);padding:0 .8rem;scroll-snap-align:start;min-width:0}
.timeline-item::before{content:counter(timeline-step,decimal-leading-zero);position:absolute;z-index:2;top:-2.35rem;left:50%;width:2.25rem;height:2.25rem;display:grid;place-items:center;transform:translateX(-50%);border:4px solid #f5f2ea;border-radius:50%;background:#0b3026;color:#fff;font-size:.61rem;font-weight:900;letter-spacing:.06em;box-shadow:0 5px 16px rgba(8,39,31,.2)}
.timeline-item:not(:last-child)::after{content:"→";position:absolute;z-index:3;top:-2.05rem;right:-.35rem;color:#c96e4a;font-size:1.05rem;font-weight:900}
.timeline-content{height:100%;padding:1.45rem 1.35rem 1.35rem;background:rgba(255,253,248,.96);border:1px solid rgba(17,36,30,.11);border-radius:18px;box-shadow:0 14px 30px rgba(8,39,31,.08);transition:transform .25s,box-shadow .25s,border-color .25s}
.timeline-content:hover{transform:translateY(-5px);box-shadow:0 20px 36px rgba(8,39,31,.13);border-color:rgba(201,110,74,.45)}
.timeline-date{display:block;margin-bottom:.7rem;color:#c96e4a;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.timeline p{margin:0!important;font-size:.9rem!important;color:#617069}

/* Notas manuscritas: sin viñeta exterior, con chincheta y pliegue de papel. */
.note-stack{list-style:none!important;padding-left:0!important;margin:2rem 0!important;display:grid;gap:1.4rem}
.note-list-item{list-style:none!important;margin:2.2rem 0!important;padding-left:0!important}
.note-list-item::marker{content:""!important}
.postit-verde,.editorial-note,.official-source-note{position:relative;margin:2.5rem 0 2.7rem;padding:2.7rem 2rem 2rem;border:1px solid rgba(45,116,91,.36);border-left:0;border-radius:8px 8px 22px 8px;background:linear-gradient(145deg,#edf4e9 0%,#e6efe2 72%,#d8e6d5 100%);color:#173a2f;max-width:760px!important;max-height:none!important;overflow:visible!important;box-shadow:0 18px 38px rgba(8,39,31,.15),inset 0 1px 0 rgba(255,255,255,.85);font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;line-height:1.75;transform:rotate(-.65deg)!important;transform-origin:50% 0;transition:transform .28s,box-shadow .28s}
.note-list-item:nth-child(even) .postit-verde{transform:rotate(.55deg)!important}
.postit-verde:hover,.editorial-note:hover,.official-source-note:hover{transform:rotate(0) translateY(-5px)!important;box-shadow:0 24px 45px rgba(8,39,31,.2),inset 0 1px 0 rgba(255,255,255,.9)!important}
.postit-verde::before{content:"📌";position:absolute;z-index:3;top:-1.35rem;left:50%;transform:translateX(-50%) rotate(-6deg);font-size:2.2rem;line-height:1;filter:drop-shadow(0 5px 4px rgba(8,39,31,.28));text-shadow:none}
.postit-verde::after{content:"";position:absolute;right:-1px;bottom:-1px;width:38px;height:38px;background:linear-gradient(135deg,rgba(255,255,255,.75) 0 49%,rgba(45,116,91,.18) 50% 52%,#cdddc9 53%);clip-path:polygon(0 100%,100% 0,100% 100%);border-bottom-right-radius:20px;pointer-events:none}
.postit-verde>p:first-child{display:inline-block;margin:0 0 .9rem!important;padding:.28rem .62rem;border-radius:999px;background:rgba(45,116,91,.11);color:#176148;font-family:var(--sans,ui-sans-serif,sans-serif);font-size:.69rem!important;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.postit-verde p:last-child,.editorial-note p:last-child{margin-bottom:0}
.postit-verde strong::before{display:none!important}

.expert-card{position:relative;margin:3rem 0;padding:2rem 2rem 2rem 4.3rem;background:#f6f0e5;border:1px solid rgba(17,36,30,.14);border-radius:4px 22px 22px 4px;box-shadow:10px 14px 0 #dfe7de;max-width:none!important;max-height:none!important;overflow:visible!important;transform:rotate(-.35deg)!important;font-family:inherit!important;background-image:linear-gradient(90deg,transparent 42px,rgba(201,110,74,.35) 43px,transparent 44px)!important}
.expert-card::after{display:none!important}
.expert-card:hover{transform:rotate(0)!important;box-shadow:7px 10px 0 #dfe7de!important}
.fixation-emoji-left,.fixation-emoji-right{position:absolute!important;top:-1rem!important;font-size:1.55rem!important;text-shadow:none!important}
.fixation-emoji-left{left:1rem!important}.fixation-emoji-right{right:1rem!important}
.expert-card .icon-container{position:absolute!important;left:1.15rem!important;top:3.4rem!important;color:#c96e4a!important;font-size:1.2rem!important;animation:none!important}
.expert-card h3{margin-top:.4rem!important}
.expert-card h5{color:#2d745b}

.table-wrap,.table-container{width:100%;overflow:auto;margin:2rem 0;border:1px solid rgba(17,36,30,.12);border-radius:16px;background:#fff}
table,.content-table,.styled-table{width:100%;border-collapse:collapse;min-width:620px;font-size:.86rem}
th{background:#0b3026;color:#fff;text-align:left;padding:.8rem .9rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}
td{padding:.75rem .9rem;border-bottom:1px solid rgba(17,36,30,.1);vertical-align:top}
tr:nth-child(even) td{background:#f6f2ea}

.chart-container,.responsive-chart{margin:2rem 0;padding:1rem;border:1px solid rgba(17,36,30,.12);border-radius:18px;background:#fff}
.chart-caption,.caption{color:#617069;font-size:.76rem;text-align:left}

.animal-hover,.planta-hover{position:relative;display:inline-block;margin:.2rem .12rem;padding:.18rem .55rem;border-radius:999px;background:#e9efe8;border:1px solid rgba(45,116,91,.24);cursor:help;outline:none;font-size:.94em}
.tooltip-ficha,.tooltip-planta{position:absolute;z-index:40;left:0;bottom:calc(100% + .55rem);width:min(340px,82vw);padding:1rem;background:#0b3026;color:#fff;border-radius:14px;box-shadow:0 18px 40px rgba(8,39,31,.25);opacity:0;visibility:hidden;transform:translateY(7px);transition:.2s;pointer-events:none}
.animal-hover:hover .tooltip-ficha,.animal-hover:focus .tooltip-ficha,.planta-hover:hover .tooltip-planta,.planta-hover:focus .tooltip-planta{opacity:1;visibility:visible;transform:none}
.tooltip-ficha p,.tooltip-planta p{font-size:.78rem!important;margin:.3rem 0!important;color:rgba(255,255,255,.8)}
.tooltip-ficha strong,.tooltip-planta strong{color:#d6b36d}

.book-entry{margin:2rem 0;padding:1.5rem;border:1px solid rgba(17,36,30,.12);border-radius:18px;background:#fff}
.book-entry h3{margin-top:0!important}

.header-message{padding:1rem 1.2rem;margin:1.5rem 0;background:#f6f0e5;border-radius:14px;border-left:3px solid #c96e4a}
.small-warning{display:none!important}

.creator-profile,.sound-memory{margin:3rem 0;padding:clamp(1.4rem,3vw,2.5rem);background:#0b3026;color:#fff;border-radius:22px;display:grid;grid-template-columns:1.3fr .7fr;gap:2rem;align-items:center;overflow:hidden}
.creator-profile h2,.sound-memory h2{color:#fff!important;margin-top:0!important}
.creator-profile p,.sound-memory p{color:rgba(255,255,255,.75)}
.creator-profile img{width:100%;height:100%;min-height:300px;object-fit:cover;border-radius:16px}
.sound-memory{grid-template-columns:1fr}
.sound-memory audio{filter:sepia(.25) saturate(.7)}
.creator-profile .section-number,.sound-memory .section-number{color:#d6b36d}

.inline-icon{display:inline-grid;place-items:center;min-width:1.25em;color:#c96e4a;font-family:ui-sans-serif,sans-serif;font-size:.78em;font-weight:900}

.novedad-item,.denuncia-item,.microsite{padding:1.25rem;margin:1rem 0;border:1px solid rgba(17,36,30,.12);border-radius:16px;background:#fff}

@media(max-width:850px){.creator-profile{grid-template-columns:1fr}.creator-profile img{max-height:420px}}
@media(max-width:540px){.expert-card{padding:1.4rem 1.1rem 1.4rem 2.6rem}.tooltip-ficha,.tooltip-planta{position:fixed;left:1rem;right:1rem;bottom:1rem;width:auto}.creator-profile,.sound-memory{border-radius:17px}}


/* Enlaces externos editoriales: visibles sin incrustar mapas ni activar terceros. */
.resource-links{display:grid;grid-template-columns:1fr;gap:1rem;margin:1.5rem 0 2.5rem}
.resource-links--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.resource-card{position:relative;display:flex!important;min-height:150px;flex-direction:column;justify-content:flex-end;padding:1.45rem 4rem 1.35rem 1.45rem;border:1px solid rgba(17,36,30,.13);border-radius:20px;background:linear-gradient(135deg,#0b3026,#154b3b);color:#fff!important;text-decoration:none!important;overflow:hidden;box-shadow:0 14px 30px rgba(8,39,31,.11);transition:transform .25s,box-shadow .25s,border-color .25s}
.resource-card::before{content:"";position:absolute;width:180px;aspect-ratio:1;right:-80px;top:-95px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.025),0 0 0 56px rgba(255,255,255,.018)}
.resource-card:hover{transform:translateY(-5px);box-shadow:0 22px 42px rgba(8,39,31,.2);border-color:rgba(214,179,109,.55);color:#fff!important}
.resource-eyebrow{position:relative;margin-bottom:.55rem;color:#d6b36d;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.resource-card strong{position:relative;font:700 clamp(1.25rem,2vw,1.65rem)/1.05 var(--serif,Georgia,serif);letter-spacing:-.025em}
.resource-card small{position:relative;display:block;margin-top:.55rem;color:rgba(255,255,255,.66);font-size:.73rem;line-height:1.45;font-weight:500}
.resource-arrow{position:absolute;right:1.3rem;bottom:1.25rem;width:2.25rem;height:2.25rem;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#d6b36d;font-size:1rem;transition:transform .25s,background .25s}
.resource-card:hover .resource-arrow{transform:rotate(45deg);background:rgba(255,255,255,.1)}
.resource-card.external-link::after{display:none}
.inline-icon--intro{color:#c96e4a!important}

@media(max-width:760px){
  .timeline{display:grid;gap:1.1rem;padding:1.4rem 1rem 1.4rem 3.8rem;overflow:visible;scroll-snap-type:none}
  .timeline::before{left:2.15rem;right:auto;top:2.15rem;bottom:2.15rem;width:2px;height:auto;background:linear-gradient(180deg,#c96e4a,#d6b36d 45%,#2d745b)}
  .timeline-item{width:auto;min-width:0;padding:0;flex:none}
  .timeline-item::before{top:1.2rem;left:-1.65rem;transform:translate(-50%,0);width:2rem;height:2rem;border-width:3px}
  .timeline-item:not(:last-child)::after{content:"↓";top:auto;right:auto;left:-1.86rem;bottom:-1.2rem;font-size:.9rem}
  .timeline-content{padding:1.25rem}
  .resource-links--two{grid-template-columns:1fr}
  .postit-verde,.editorial-note,.official-source-note{max-width:100%!important;padding:2.5rem 1.25rem 1.5rem;transform:rotate(-.25deg)!important}
}


/* Notas editoriales con apariencia de papel. */
.postit-verde::before{
  animation:pin-settle .65s cubic-bezier(.2,.85,.25,1.2) both;
  transform-origin:50% 80%;
}
.postit-verde>p:first-child strong::before{
  content:"💡";
  display:inline-block!important;
  margin-right:.48rem;
  font-size:1.05rem;
  line-height:1;
  vertical-align:-.08em;
  animation:note-glow 2.4s ease-in-out infinite;
}
.postit-verde>p:first-child strong{display:inline-flex;align-items:center}
@keyframes pin-settle{
  0%{opacity:0;transform:translateX(-50%) translateY(-12px) rotate(-15deg) scale(.72)}
  72%{opacity:1;transform:translateX(-50%) translateY(2px) rotate(3deg) scale(1.05)}
  100%{opacity:1;transform:translateX(-50%) rotate(-6deg) scale(1)}
}
@keyframes note-glow{0%,100%{filter:saturate(.9);transform:scale(1)}50%{filter:saturate(1.35) drop-shadow(0 0 5px rgba(214,179,109,.55));transform:scale(1.08)}}
@media (prefers-reduced-motion:reduce){.postit-verde::before,.postit-verde>p:first-child strong::before{animation:none!important}}


/* Ajustes de interfaz y accesibilidad */
.discovery-note,.reading-note{margin:1.35rem 0;border-radius:20px;overflow:hidden;isolation:isolate}
.discovery-note>summary,.reading-note>summary{list-style:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.discovery-note>summary::-webkit-details-marker,.reading-note>summary::-webkit-details-marker{display:none}

.discovery-note{position:relative;border:1px solid rgba(17,36,30,.12);background:linear-gradient(115deg,#fbfaf6 0%,#f0f4ec 100%);box-shadow:0 12px 30px rgba(8,39,31,.07);transition:box-shadow .25s,border-color .25s,transform .25s}
.discovery-note:hover{transform:translateY(-2px);border-color:rgba(45,116,91,.3);box-shadow:0 17px 36px rgba(8,39,31,.11)}
.discovery-note[open]{border-color:rgba(201,110,74,.34);box-shadow:0 22px 48px rgba(8,39,31,.13)}
.discovery-note>summary{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:86px;padding:1rem 1.15rem 1rem 1.1rem;color:#123b30}
.discovery-note>summary::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 50%,rgba(214,179,109,.12),transparent 25%),linear-gradient(90deg,transparent,rgba(255,255,255,.65));pointer-events:none;z-index:-1}
.discovery-note-marker{position:relative;width:42px;height:42px;border-radius:50%;background:#0b3026;box-shadow:0 7px 18px rgba(8,39,31,.2),inset 0 0 0 1px rgba(255,255,255,.16)}
.discovery-note-marker::before{content:"?";position:absolute;inset:0;display:grid;place-items:center;color:#e3c58a;font:800 1.15rem/1 Georgia,serif}
.discovery-note-marker::after{content:"";position:absolute;width:8px;height:8px;right:0;top:1px;border-radius:50%;background:#c96e4a;border:2px solid #fbfaf6}
.discovery-note-copy{display:grid;gap:.2rem;min-width:0}
.discovery-note-kicker,.reading-note-kicker{color:#b45f40;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.14em}
.discovery-note-copy strong{font:700 clamp(1rem,1.7vw,1.2rem)/1.25 var(--serif,Georgia,serif);letter-spacing:-.012em;color:#143a30}
.discovery-note-action{display:flex;align-items:center;gap:.7rem;color:#2d745b;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.discovery-note-close{display:none}
.discovery-note[open] .discovery-note-open{display:none}.discovery-note[open] .discovery-note-close{display:inline}
.discovery-note-chevron,.reading-note-chevron{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(17,36,30,.16);border-radius:50%;background:rgba(255,255,255,.58);transition:transform .3s,background .3s}
.discovery-note-chevron::before,.reading-note-chevron::before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.discovery-note[open] .discovery-note-chevron,.reading-note[open] .reading-note-chevron{transform:rotate(180deg);background:#fff}
.discovery-note-panel,.reading-note-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.2,.78,.25,1)}
.discovery-note[open] .discovery-note-panel,.reading-note[open] .reading-note-panel{grid-template-rows:1fr}
.discovery-note-paper,.reading-note-body{min-height:0;overflow:hidden}
.discovery-note-paper{position:relative;margin:0 1rem 1rem;padding:2.3rem clamp(1.2rem,3vw,2rem) 1.5rem;border:1px solid rgba(45,116,91,.2);border-radius:8px 8px 18px 8px;background:linear-gradient(145deg,#eef5e9,#e3eddf);box-shadow:0 13px 28px rgba(8,39,31,.12),inset 0 1px 0 rgba(255,255,255,.82);transform:rotate(-.18deg)}
.discovery-note-paper::after{content:"";position:absolute;right:-1px;bottom:-1px;width:34px;height:34px;background:linear-gradient(135deg,rgba(255,255,255,.78) 0 49%,rgba(45,116,91,.18) 50% 52%,#ccdcca 53%);clip-path:polygon(0 100%,100% 0,100% 100%);border-bottom-right-radius:17px}
.discovery-note-pin{position:absolute;z-index:2;top:-.78rem;left:50%;width:18px;height:18px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle at 35% 30%,#f4d5b9 0 18%,#c96e4a 20% 58%,#7b3725 60% 100%);box-shadow:0 5px 8px rgba(8,39,31,.27),0 0 0 4px rgba(255,255,255,.7)}
.discovery-note-body{font-family:var(--sans,ui-sans-serif,sans-serif);color:#173a2f}
.discovery-note-body>*:first-child{margin-top:0!important}.discovery-note-body>*:last-child{margin-bottom:0!important}
.discovery-note-body p,.discovery-note-body li{font-size:.96rem!important;line-height:1.72}

.reading-note{border:1px solid rgba(17,36,30,.12);background:#f7f3ea;box-shadow:0 9px 24px rgba(8,39,31,.06)}
.reading-note>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:.9rem 1.05rem;color:#173a2f}
.reading-note-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#dfe9df;color:#2d745b}
.reading-note-icon::before{content:"i";font:italic 800 1rem/1 Georgia,serif}
.reading-note-copy{display:grid;gap:.12rem}.reading-note-copy strong{font-size:.88rem;line-height:1.3;color:#173a2f}
.reading-note-kicker{color:#2d745b;font-size:.56rem}
.reading-note-chevron{width:27px;height:27px;color:#2d745b}
.reading-note-body{padding:0 1.15rem;color:#53665e}
.reading-note[open] .reading-note-body{padding:0 1.15rem 1.1rem}
.reading-note-body>*:first-child{margin-top:.35rem!important}.reading-note-body>*:last-child{margin-bottom:0!important}
.reading-note-body p,.reading-note-body li{font-size:.82rem!important;line-height:1.65}

.note-list-item>.discovery-note{margin:1.2rem 0!important}.note-stack>.discovery-note{margin:0!important}
@media(max-width:620px){
  .discovery-note>summary{grid-template-columns:auto minmax(0,1fr);gap:.75rem;min-height:78px;padding:.9rem}
  .discovery-note-action{grid-column:2;justify-content:flex-start;margin-top:-.15rem}
  .discovery-note-marker{width:38px;height:38px}
  .discovery-note-paper{margin:0 .65rem .65rem;padding:2.15rem 1rem 1.2rem}
  .discovery-note-copy strong{font-size:1rem}
  .reading-note>summary{grid-template-columns:auto minmax(0,1fr) auto;padding:.82rem .85rem}
}
@media(prefers-reduced-motion:reduce){.discovery-note,.discovery-note-panel,.reading-note-panel,.discovery-note-chevron,.reading-note-chevron{transition:none!important}}


/* Ajustes de interfaz y accesibilidad */
.animal-hover,.planta-hover{
  position:relative;display:inline-flex;align-items:baseline;gap:.42rem;
  margin:.22rem 0;padding:.3rem .62rem .32rem .72rem;border-radius:12px;
  background:linear-gradient(135deg,#edf3ea,#f8f6ef);border:1px solid rgba(45,116,91,.24);
  color:#173a2f;cursor:help;outline:none;font-size:.96em;line-height:1.4;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
  transition:background .2s,border-color .2s,box-shadow .2s,transform .2s;
}
.animal-hover:hover,.planta-hover:hover,.animal-hover:focus-visible,.planta-hover:focus-visible,.animal-hover.is-active,.planta-hover.is-active{
  background:#fff;border-color:rgba(201,110,74,.48);box-shadow:0 8px 22px rgba(8,39,31,.12);transform:translateY(-1px);
}
.animal-hover:focus-visible,.planta-hover:focus-visible{box-shadow:0 0 0 3px rgba(214,179,109,.32),0 8px 22px rgba(8,39,31,.12)}
.species-hint{flex:0 0 auto;width:1.35rem;height:1.35rem;display:inline-grid;place-items:center;border-radius:50%;background:#0b3026;color:#e5c98f;font:italic 800 .76rem/1 Georgia,serif;box-shadow:0 3px 8px rgba(8,39,31,.18)}
.species-guide{display:flex;align-items:center;gap:.65rem;margin:1rem 0 1.25rem!important;padding:.72rem .9rem;border:1px solid rgba(45,116,91,.16);border-radius:14px;background:#f5f2e9;color:#53665e;font-size:.76rem!important;line-height:1.45!important}
.species-guide>span{flex:0 0 auto;width:1.5rem;height:1.5rem;display:grid;place-items:center;border-radius:50%;background:#2d745b;color:#fff;font:italic 800 .78rem/1 Georgia,serif}
.tooltip-ficha,.tooltip-planta{
  position:fixed!important;z-index:1800;left:-9999px;top:-9999px;bottom:auto!important;
  width:min(390px,calc(100vw - 1.5rem));max-height:min(540px,72vh);overflow:auto;
  padding:1.15rem 1.2rem 1.1rem;border:1px solid rgba(214,179,109,.42);border-top:4px solid #c96e4a;
  border-radius:18px;background:linear-gradient(145deg,#102f27,#0a281f);color:#fff;
  box-shadow:0 24px 62px rgba(4,24,19,.35),inset 0 1px 0 rgba(255,255,255,.08);
  opacity:0;visibility:hidden;transform:translateY(8px) scale(.985);transform-origin:50% 100%;
  transition:opacity .18s,visibility .18s,transform .22s;pointer-events:none;
  scrollbar-width:thin;scrollbar-color:#c96e4a rgba(255,255,255,.08);
}
.animal-hover:hover .tooltip-ficha,.animal-hover:focus .tooltip-ficha,.animal-hover.is-active .tooltip-ficha,
.planta-hover:hover .tooltip-planta,.planta-hover:focus .tooltip-planta,.planta-hover.is-active .tooltip-planta{
  opacity:1;visibility:visible;transform:none;pointer-events:auto;
}
.tooltip-ficha[data-placement="below"],.tooltip-planta[data-placement="below"]{transform-origin:50% 0}
.tooltip-ficha p,.tooltip-planta p{font-size:.8rem!important;line-height:1.55!important;margin:.48rem 0!important;color:rgba(255,255,255,.82)}
.tooltip-ficha .species-tooltip-title,.tooltip-planta .species-tooltip-title{margin:0 0 .72rem!important;padding-bottom:.65rem;border-bottom:1px solid rgba(255,255,255,.13);color:#e5c98f!important;font-size:.65rem!important;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.tooltip-ficha .species-tooltip-title strong,.tooltip-planta .species-tooltip-title strong{color:inherit}
.tooltip-ficha .species-tooltip-line,.tooltip-planta .species-tooltip-line{display:grid;grid-template-columns:1.35rem minmax(0,1fr);gap:.55rem;align-items:start}
.tooltip-ficha .species-tooltip-line>span,.tooltip-planta .species-tooltip-line>span{display:grid;place-items:center;width:1.35rem;min-height:1.35rem;margin-top:.04rem;border-radius:7px;background:rgba(255,255,255,.09);font-size:.78rem}
@media(max-width:620px){
  .tooltip-ficha,.tooltip-planta{width:calc(100vw - 1rem);max-height:min(62vh,470px);border-radius:17px}
  .animal-hover,.planta-hover{display:flex;width:100%;justify-content:space-between;margin:.3rem 0}
  .species-guide{font-size:.72rem!important}
}
@media(prefers-reduced-motion:reduce){.animal-hover,.planta-hover,.tooltip-ficha,.tooltip-planta{transition:none!important}}


/* Ajustes de interfaz y accesibilidad */
.timeline{
  counter-reset:timeline-step;position:relative;display:block!important;overflow:visible!important;
  margin:3rem 0;padding:2.15rem clamp(1rem,3vw,2rem);background:linear-gradient(145deg,#eef2eb,#f8f4eb);
  border:1px solid rgba(17,36,30,.12);border-radius:26px;box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}
.timeline::before{
  content:"";position:absolute;z-index:0;left:50%;top:2.5rem;bottom:2.5rem;width:3px;height:auto;
  transform:translateX(-50%);background:linear-gradient(180deg,#c96e4a 0%,#d6b36d 50%,#2d745b 100%);
  border-radius:999px;box-shadow:0 0 0 5px rgba(255,255,255,.62);
}
.timeline-item{
  counter-increment:timeline-step;position:relative;display:block!important;width:100%!important;min-width:0!important;
  padding:0!important;margin:0 0 1.45rem!important;scroll-snap-align:none!important;
}
.timeline-item:last-child{margin-bottom:0!important}
.timeline-item::before{
  content:counter(timeline-step,decimal-leading-zero);position:absolute;z-index:3;top:1.25rem;left:50%;
  width:2.55rem;height:2.55rem;display:grid;place-items:center;transform:translateX(-50%);
  border:5px solid #f4f2eb;border-radius:50%;background:#0b3026;color:#fff;
  font-size:.64rem;font-weight:900;letter-spacing:.07em;box-shadow:0 8px 20px rgba(8,39,31,.22);
}
.timeline-item:not(:last-child)::after{
  content:"↓";position:absolute;z-index:3;left:50%;bottom:-1.22rem;right:auto;top:auto;
  transform:translateX(-50%);width:1.35rem;height:1.35rem;display:grid;place-items:center;
  border-radius:50%;background:#f5f2ea;color:#c96e4a;font-size:.82rem;font-weight:900;
}
.timeline-content{
  position:relative;z-index:1;width:calc(50% - 3.1rem);height:auto!important;min-height:128px;
  padding:1.45rem 1.45rem 1.35rem;background:rgba(255,253,248,.98);border:1px solid rgba(17,36,30,.12);
  border-radius:19px;box-shadow:0 14px 32px rgba(8,39,31,.09);
}
.timeline-item:nth-child(odd) .timeline-content{margin-right:calc(50% + 3.1rem);margin-left:0}
.timeline-item:nth-child(even) .timeline-content{margin-left:calc(50% + 3.1rem);margin-right:0}
.timeline-item:nth-child(odd) .timeline-content::after,.timeline-item:nth-child(even) .timeline-content::after{
  content:"";position:absolute;top:1.65rem;width:14px;height:14px;background:inherit;border-top:1px solid rgba(17,36,30,.12);transform:rotate(45deg);
}
.timeline-item:nth-child(odd) .timeline-content::after{right:-8px;border-right:1px solid rgba(17,36,30,.12)}
.timeline-item:nth-child(even) .timeline-content::after{left:-8px;border-left:1px solid rgba(17,36,30,.12);border-bottom:1px solid rgba(17,36,30,.12);border-top:0}
.timeline-content:hover{transform:translateY(-3px)!important}
@media(max-width:760px){
  .timeline{padding:1.55rem .9rem 1.55rem 3.9rem!important}
  .timeline::before{left:2.15rem;top:2rem;bottom:2rem;transform:none}
  .timeline-item::before{left:-1.75rem;top:1rem;transform:translateX(-50%);width:2.2rem;height:2.2rem;border-width:4px}
  .timeline-item:not(:last-child)::after{left:-1.75rem;bottom:-1.22rem;transform:translateX(-50%)}
  .timeline-content,.timeline-item:nth-child(odd) .timeline-content,.timeline-item:nth-child(even) .timeline-content{width:100%;margin:0!important;min-height:0}
  .timeline-item:nth-child(odd) .timeline-content::after,.timeline-item:nth-child(even) .timeline-content::after{left:-8px;right:auto;border-left:1px solid rgba(17,36,30,.12);border-bottom:1px solid rgba(17,36,30,.12);border-right:0;border-top:0}
}

/* Ajustes de interfaz y accesibilidad */
.animal-hover,.planta-hover,.animal-hover:hover,.planta-hover:hover,.animal-hover:focus-visible,.planta-hover:focus-visible,.animal-hover.is-active,.planta-hover.is-active{transform:none!important}
.tooltip-ficha,.tooltip-planta{z-index:2200!important;width:min(410px,calc(100vw - 1.25rem));max-height:min(560px,76vh)}
.tooltip-ficha::after,.tooltip-planta::after{content:"Pulsa de nuevo o Esc para cerrar";display:block;margin-top:.85rem;padding-top:.72rem;border-top:1px solid rgba(255,255,255,.13);color:rgba(255,255,255,.55);font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.animal-hover.is-active,.planta-hover.is-active{z-index:2201}
@media(max-width:620px){
  .tooltip-ficha,.tooltip-planta{left:.5rem!important;right:.5rem!important;top:auto!important;bottom:.5rem!important;width:auto!important;max-height:min(68vh,520px);border-radius:20px}
}

/* Revision 8 — real button-driven accordions
   Native <details> was replaced so the complete card is reliably clickable
   in Live Server, Firebase Hosting, desktop browsers and touch devices. */
.accordion-trigger{
  appearance:none;-webkit-appearance:none;width:100%;margin:0;border:0;
  font:inherit;text-align:left;color:inherit;background:transparent;cursor:pointer;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.accordion-trigger:focus-visible{
  outline:3px solid rgba(201,110,74,.5);outline-offset:4px;border-radius:16px;
}
.accordion-panel{
  display:block!important;grid-template-rows:none!important;height:0;overflow:hidden;
  transition:height .42s cubic-bezier(.2,.78,.25,1);
}
.accordion-panel[hidden]{display:none!important}

/* Curiosities: compact editorial capsule that opens into a pinned paper note. */
.discovery-note{overflow:visible}
.discovery-note-trigger{
  position:relative;z-index:2;display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;
  min-height:88px;padding:1rem 1.15rem 1rem 1.1rem;border-radius:19px;color:#123b30;
}
.discovery-note-trigger::after{
  content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;
  background:radial-gradient(circle at 8% 50%,rgba(214,179,109,.14),transparent 26%),
             linear-gradient(90deg,transparent,rgba(255,255,255,.68));
  pointer-events:none;
}
.discovery-note-trigger:hover .discovery-note-copy strong{color:#9b4f34}
.discovery-note-trigger:active{transform:scale(.997)}
.discovery-note-action{position:relative;z-index:3}
.accordion-state{white-space:nowrap}
.discovery-note.is-open{border-color:rgba(201,110,74,.36);box-shadow:0 22px 48px rgba(8,39,31,.13)}
.discovery-note.is-open .discovery-note-chevron,
.reading-note.is-open .reading-note-chevron{transform:rotate(180deg);background:#fff}
.discovery-note.is-open .discovery-note-paper{animation:note-arrives .4s cubic-bezier(.2,.8,.25,1) both}
@keyframes note-arrives{from{opacity:0;transform:translateY(-7px) rotate(-.45deg)}to{opacity:1;transform:translateY(0) rotate(-.18deg)}}

/* Reading notes: discreet and clearly interactive. */
.reading-note-trigger{
  position:relative;z-index:2;display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.85rem;
  padding:.9rem 1.05rem;border-radius:19px;color:#173a2f;
}
.reading-note-trigger:hover{background:rgba(255,255,255,.36)}
.reading-note-action{
  color:#2d745b;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;
}
.reading-note.is-open .reading-note-body{padding:0 1.15rem 1.1rem}

@media(max-width:620px){
  .discovery-note-trigger{grid-template-columns:auto minmax(0,1fr);gap:.75rem;min-height:78px;padding:.9rem}
  .discovery-note-action{grid-column:2;justify-content:flex-start;margin-top:-.15rem}
  .reading-note-trigger{grid-template-columns:auto minmax(0,1fr) auto;padding:.82rem .85rem}
  .reading-note-action{display:none}
}
@media(prefers-reduced-motion:reduce){
  .accordion-panel{transition:none!important}
  .discovery-note.is-open .discovery-note-paper{animation:none!important}
}


/* Ajustes de interfaz y accesibilidad */
.tooltip-ficha,.tooltip-planta{display:none!important}
.animal-hover,.planta-hover{cursor:pointer!important;user-select:none}
.animal-hover::after,.planta-hover::after{
  content:"Ver ficha";margin-left:.1rem;color:#2d745b;font-size:.58rem;font-weight:900;
  text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;
}
.animal-hover.is-active,.planta-hover.is-active{
  background:#fff!important;border-color:rgba(201,110,74,.58)!important;
  box-shadow:0 9px 24px rgba(8,39,31,.14)!important;
}
.species-popover-layer{position:fixed;z-index:5000;inset:0;pointer-events:none}
.species-popover-layer[hidden]{display:none!important}
.species-popover-scrim{
  position:absolute;inset:0;border:0;background:rgba(4,24,19,.28);opacity:0;
  pointer-events:none;transition:opacity .22s;backdrop-filter:blur(2px);
}
.species-card-pinned .species-popover-scrim{opacity:1;pointer-events:auto}
.species-popover{
  position:fixed;z-index:2;width:min(430px,calc(100vw - 24px));max-height:min(620px,78vh);
  overflow:auto;padding:0;border:1px solid rgba(214,179,109,.44);border-radius:22px;
  background:linear-gradient(150deg,#12372d 0%,#09261f 100%);color:#fff;
  box-shadow:0 30px 80px rgba(4,24,19,.42),inset 0 1px 0 rgba(255,255,255,.09);
  opacity:0;visibility:hidden;transform:translateY(10px) scale(.985);
  pointer-events:none;transition:opacity .2s,visibility .2s,transform .24s;
  scrollbar-width:thin;scrollbar-color:#c96e4a rgba(255,255,255,.08);
}
.species-popover-layer.is-visible .species-popover{
  opacity:1;visibility:visible;transform:none;pointer-events:auto;
}
.species-popover-header{
  position:sticky;z-index:2;top:0;display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;align-items:start;padding:1.15rem 1.15rem .95rem;
  background:linear-gradient(180deg,rgba(18,55,45,.99),rgba(18,55,45,.94));
  border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px);
}
.species-popover-kicker{display:block;margin-bottom:.3rem;color:#e5c98f;font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em}
.species-popover-header h3{margin:0!important;color:#fff!important;font-size:1.05rem!important;line-height:1.3!important;text-transform:none!important;letter-spacing:0!important}
.species-popover-close{
  width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);
  border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:1.45rem;line-height:1;
  transition:background .2s,transform .2s;
}
.species-popover-close:hover{background:#c96e4a;transform:rotate(6deg)}
.species-popover-close:focus-visible{outline:3px solid rgba(229,201,143,.55);outline-offset:3px}
.species-popover-content{padding:1rem 1.2rem .55rem}
.species-popover-content p{margin:.58rem 0!important;color:rgba(255,255,255,.84)!important;font-size:.83rem!important;line-height:1.58!important}
.species-popover-content .species-tooltip-title{display:none}
.species-popover-content .species-tooltip-line{display:grid;grid-template-columns:1.45rem minmax(0,1fr);gap:.65rem;align-items:start}
.species-popover-content .species-tooltip-line>span{display:grid;place-items:center;width:1.45rem;min-height:1.45rem;border-radius:8px;background:rgba(255,255,255,.09)}
.species-popover-help{margin:0!important;padding:.7rem 1.2rem 1rem;color:rgba(255,255,255,.5)!important;font-size:.58rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
@media(max-width:700px){
  .animal-hover,.planta-hover{align-items:center!important}
  .species-popover{left:12px!important;right:12px!important;top:auto!important;bottom:12px!important;width:auto!important;max-height:min(72vh,570px);border-radius:24px}
  .species-popover-header h3{font-size:.98rem!important}
}
@media(prefers-reduced-motion:reduce){.species-popover,.species-popover-scrim{transition:none!important}}

/* Ajustes de interfaz y accesibilidad */
.timeline{isolation:isolate!important;overflow:visible!important}
.timeline::before{
  z-index:1!important;top:-1px!important;bottom:-1px!important;height:auto!important;
  background:linear-gradient(180deg,#c96e4a 0%,#d6b36d 50%,#2d745b 100%)!important;
  box-shadow:0 0 0 5px rgba(255,255,255,.7),0 0 18px rgba(201,110,74,.16)!important;
}
.timeline-item{z-index:2!important}
.timeline-content{z-index:3!important}
.timeline-item::before{z-index:5!important}
.timeline-item:not(:last-child)::after{z-index:6!important}
@media(max-width:760px){
  .timeline::before{top:-1px!important;bottom:-1px!important;left:2.15rem!important}
}

/* La flecha queda superpuesta sin cortar visualmente el eje. */
.timeline-item:not(:last-child)::after{background:transparent!important;box-shadow:none!important}


/* --- Integración editorial con el libro --- */
.integration-block{margin:3rem 0;padding:2rem 1.4rem 1.6rem;border:1px solid rgba(17,36,30,.11);border-radius:26px;background:linear-gradient(145deg,#fcfbf6 0%,#f5f0e6 52%,#eef4ee 100%);box-shadow:0 18px 42px rgba(8,39,31,.08)}
.integration-block > h2{margin-top:.35rem}
.integration-lead{max-width:68ch;color:#52655e}
.insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.35rem 0}
.insight-card{padding:1rem 1rem 1.05rem;border:1px solid rgba(17,36,30,.1);border-radius:20px;background:rgba(255,255,255,.72);box-shadow:0 10px 25px rgba(8,39,31,.05)}
.insight-card h3{margin:.35rem 0 .45rem;font-size:1.06rem;line-height:1.25}
.insight-card p{margin:0;color:#556861;font-size:.94rem;line-height:1.72}
.insight-tag{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .62rem;border-radius:999px;background:rgba(214,179,109,.18);color:#8f5835;font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.source-chip-row{display:flex;flex-wrap:wrap;gap:.55rem;margin:.8rem 0 0}
.source-chip{display:inline-flex;align-items:center;padding:.38rem .68rem;border-radius:999px;border:1px solid rgba(17,36,30,.12);background:#fff;color:#183b30;font-size:.7rem;font-weight:800;letter-spacing:.03em}
.source-chip--book{background:#173a2f;color:#fff;border-color:#173a2f}
.source-sheet .reading-note-icon::before{content:"⊕";font:800 1rem/1 Georgia,serif}
.source-sheet .reading-note-copy strong{font-size:.95rem}
.source-sheet .reading-note-body ul{padding-left:1.1rem}
.source-sheet .reading-note-body li{margin:.35rem 0}
.source-sheet .reading-note-body em{color:#2d745b;font-style:normal;font-weight:700}
.quote-badge{display:inline-flex;align-items:center;padding:.28rem .56rem;border-radius:999px;background:rgba(45,116,91,.12);color:#2d745b;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.list-card{margin:1rem 0 1.25rem;padding:1rem 1rem 1rem 1.1rem;border-radius:18px;background:rgba(255,255,255,.68);border:1px solid rgba(17,36,30,.1)}
.list-card ul{margin:.4rem 0 0;padding-left:1.1rem}
.list-card li{margin:.4rem 0;color:#546760}
.home-source-feature{margin-top:2.6rem}
.home-source-feature .resource-links{margin-top:1.25rem}
.editorial-mini{margin:.9rem 0 0;color:#52655e;font-size:.93rem}
@media (max-width: 720px){.integration-block{padding:1.45rem 1rem 1.2rem}.insight-grid{grid-template-columns:1fr}}


/* Componentes editoriales del archivo documental */
.book-expanded-page .article-card{overflow:visible}
.fact-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:1.7rem 0 2.2rem;overflow:hidden;border:1px solid rgba(17,36,30,.12);border-radius:22px;background:rgba(17,36,30,.12)}
.fact-strip>div{min-height:135px;padding:1.2rem;background:#fbfaf6}.fact-strip strong{display:block;margin-bottom:.55rem;color:#b45f40;font:800 1.25rem/1.05 var(--serif,Georgia,serif)}.fact-strip span{color:#5d6e67;font-size:.82rem;line-height:1.55}
.callout-dark{position:relative;margin:2rem 0;padding:1.7rem;border-radius:24px;background:linear-gradient(135deg,#0a2f26,#154a3b);color:#fff;overflow:hidden;box-shadow:0 20px 42px rgba(8,39,31,.16)}.callout-dark::after{content:"";position:absolute;right:-80px;top:-100px;width:220px;aspect-ratio:1;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 68px rgba(255,255,255,.018)}.callout-dark>*{position:relative;z-index:1}.callout-dark>span{color:#d6b36d;font-size:.63rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.callout-dark h3{max-width:26ch;margin:.65rem 0;color:#fff;font-size:1.55rem}.callout-dark p{max-width:62ch;margin:0;color:rgba(255,255,255,.72)!important}
.chapter-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:2rem 0}.chapter-links>a{display:flex;min-height:110px;flex-direction:column;justify-content:flex-end;padding:1rem;border:1px solid rgba(17,36,30,.11);border-radius:18px;background:#fff;text-decoration:none!important;box-shadow:0 10px 25px rgba(8,39,31,.05);transition:transform .2s,box-shadow .2s}.chapter-links>a:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(8,39,31,.1)}.chapter-links span{margin-bottom:.35rem;color:#b45f40;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.chapter-links strong{color:#173a2f;font-size:.98rem}
.toponym-grid,.material-grid,.occupation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1.5rem 0 2rem}.toponym-grid>div,.material-grid>div,.occupation-grid>div{padding:1rem;border:1px solid rgba(17,36,30,.1);border-radius:18px;background:linear-gradient(145deg,#fff,#f5f0e6)}.toponym-grid span,.occupation-grid span{display:block;margin-bottom:.4rem;color:#b45f40;font-size:.61rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.toponym-grid strong,.material-grid strong,.occupation-grid strong{display:block;color:#173a2f;font-size:1rem}.toponym-grid small,.material-grid span{display:block;margin-top:.35rem;color:#62736c;font-size:.78rem;line-height:1.45}
.timeline--compact{margin-top:1.6rem}
.book-expanded-page .page-hero .hero-inner>p{max-width:62ch}
.book-expanded-page .article-rail{position:sticky;top:7.5rem;align-self:start}
.editorial-grid{align-items:stretch}
@media(max-width:760px){.fact-strip{grid-template-columns:1fr}.fact-strip>div{min-height:0}.chapter-links,.toponym-grid,.material-grid,.occupation-grid{grid-template-columns:1fr}.book-expanded-page .article-rail{position:static}}


/* Enlaces documentales y fuentes relacionadas. */
.external-resource-list{display:grid;gap:.75rem;margin:1.15rem 0 2rem}
.external-resource-item{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:.18rem 1rem;align-items:center;padding:1rem 3.8rem 1rem 1.1rem;border:1px solid rgba(17,36,30,.13);border-radius:18px;background:linear-gradient(135deg,#f7f3e9,#eef4ee);color:#173a2f!important;text-decoration:none!important;box-shadow:0 9px 24px rgba(8,39,31,.06);transition:transform .25s,box-shadow .25s,border-color .25s}
.external-resource-item:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(8,39,31,.11);border-color:rgba(45,116,91,.42)}
.external-resource-label{grid-column:1;color:#b45f40;font-size:.61rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.external-resource-item strong{grid-column:1;font-size:1rem;line-height:1.3;color:#173a2f}
.external-resource-item small{grid-column:1;color:#607169;font-size:.72rem;line-height:1.45}
.external-resource-arrow{position:absolute;right:1rem;top:50%;width:2.2rem;height:2.2rem;display:grid;place-items:center;transform:translateY(-50%);border-radius:50%;background:#173a2f;color:#fff;font-size:1rem}
.documentary-note{border-color:rgba(180,95,64,.22);background:linear-gradient(145deg,#faf4e9,#f3eee3)}
.documentary-note .reading-note-icon{background:#ecd8c9;color:#a35236}
.documentary-note .reading-note-icon::before{content:"▤";font:800 .95rem/1 system-ui,sans-serif}
.documentary-note .reading-note-kicker{color:#a35236}
.source-perspective-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.4rem 0 2.4rem}
.source-perspective{padding:1.15rem;border:1px solid rgba(17,36,30,.11);border-radius:20px;background:linear-gradient(145deg,#fffdf8,#edf3ed);box-shadow:0 10px 25px rgba(8,39,31,.06)}
.source-perspective>span{display:inline-flex;margin-bottom:.5rem;padding:.3rem .58rem;border-radius:999px;background:rgba(201,110,74,.13);color:#a35236;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}
.source-perspective h3{margin:0 0 .45rem;font-size:1.08rem}
.source-perspective p{margin:0;color:#596b64;font-size:.9rem;line-height:1.65}
@media(max-width:720px){.source-perspective-grid{grid-template-columns:1fr}.external-resource-item{padding-right:3.4rem}}


/* Lectura, homenaje e imagen documental. */
.article-card>h2{position:relative;padding-left:1.35rem}
.article-card>h2::before{content:"";position:absolute;left:0;top:.52em;width:.62rem;height:.62rem;border:2px solid #c96e4a;border-radius:50%;box-shadow:0 0 0 5px rgba(201,110,74,.09)}
.article-card>h3{position:relative;padding-left:1rem}
.article-card>h3::before{content:"";position:absolute;left:0;top:.72em;width:.38rem;height:2px;background:#2d745b;border-radius:99px}
.article-card .integration-block h2,.article-card .integration-block h3,.article-card .insight-card h3,.article-card .service-entry h2,.article-card .memory-poster h3,.article-card .author-homage h2,.article-card .infrastructure-panel h3{padding-left:0}
.article-card .integration-block h2::before,.article-card .integration-block h3::before,.article-card .insight-card h3::before,.article-card .service-entry h2::before,.article-card .memory-poster h3::before,.article-card .author-homage h2::before,.article-card .infrastructure-panel h3::before{display:none}

.source-homage{margin:2.6rem 0;padding:clamp(1.3rem,3vw,2rem);display:grid;grid-template-columns:minmax(170px,240px) minmax(0,1fr);gap:clamp(1.2rem,3vw,2.4rem);align-items:center;border-radius:28px;background:linear-gradient(135deg,#0b3026,#173f33 65%,#8f5835);color:#fff;box-shadow:0 22px 55px rgba(8,39,31,.2);overflow:hidden;position:relative}
.source-homage::after{content:"";position:absolute;right:-80px;top:-110px;width:260px;height:260px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 32px rgba(255,255,255,.03),0 0 0 64px rgba(255,255,255,.02)}
.source-homage img{position:relative;z-index:1;width:100%;max-height:330px;object-fit:contain;border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.28);background:#fff}
.source-homage>div{position:relative;z-index:1}.source-homage .section-number{color:#d6b36d}.source-homage h2{color:#fff;margin:.35rem 0 .8rem}.source-homage p{color:rgba(255,255,255,.78)}
.source-homage a{color:#fff;font-weight:800;text-decoration-thickness:1px;text-underline-offset:4px}

.service-overview-photo{margin:1.4rem 0 1rem;border-radius:24px;overflow:hidden;min-height:300px;position:relative;background:#173a2f}
.service-overview-photo img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block;filter:saturate(.84) contrast(1.03)}
.service-overview-photo figcaption{position:absolute;left:1rem;bottom:1rem;padding:.6rem .8rem;border-radius:12px;background:rgba(8,39,31,.82);backdrop-filter:blur(9px);color:#fff;font-size:.72rem}
.service-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.service-entry{position:relative;padding:1.25rem 1.2rem 1.25rem;border:1px solid rgba(17,36,30,.11);border-radius:22px;background:linear-gradient(145deg,#fffdf8,#f3f0e7);box-shadow:0 12px 28px rgba(8,39,31,.06)}
.service-entry::before{content:attr(data-index);position:absolute;right:1rem;top:.85rem;color:rgba(45,116,91,.24);font:800 2.6rem/1 Georgia,serif}
.service-entry .service-kicker{display:inline-flex;margin-bottom:.65rem;padding:.3rem .55rem;border-radius:999px;background:rgba(45,116,91,.1);color:#2d745b;font-size:.62rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.service-entry h2{font-size:1.28rem;margin:.15rem 2.7rem .55rem 0}.service-entry p{font-size:.9rem!important;color:#586a63;margin-bottom:.55rem!important}.service-entry small{display:block;color:#8f5835;font-weight:800;font-size:.68rem;letter-spacing:.04em}

.infrastructure-panel{margin:1.6rem 0 2rem;padding:1.4rem;border-radius:24px;background:linear-gradient(135deg,#0c3027,#214e40);color:#fff;box-shadow:0 18px 42px rgba(8,39,31,.18)}
.infrastructure-panel>p{color:rgba(255,255,255,.72)!important}.infrastructure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem}
.infrastructure-item{padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(255,255,255,.06)}
.infrastructure-item span{color:#d6b36d;font-size:.63rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.infrastructure-item h3{color:#fff;margin:.35rem 0 .3rem;font-size:1.05rem}.infrastructure-item p{color:rgba(255,255,255,.7)!important;font-size:.82rem!important;margin:0!important}

.memory-poster{margin:1.6rem 0 2rem;min-height:320px;display:grid;align-content:end;padding:1.5rem;border-radius:26px;overflow:hidden;position:relative;background:linear-gradient(135deg,rgba(8,39,31,.18),rgba(8,39,31,.88)),url('../images/editorial/pradera.jpg') center/cover;color:#fff;box-shadow:0 18px 40px rgba(8,39,31,.16)}
.memory-poster::before{content:"";position:absolute;inset:1rem;border:1px solid rgba(255,255,255,.24);border-radius:19px}.memory-poster>*{position:relative;z-index:1}.memory-poster span{color:#d6b36d;font-size:.67rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.memory-poster h3{max-width:16ch;color:#fff;font-size:clamp(1.8rem,4vw,3rem);margin:.45rem 0}.memory-poster p{max-width:58ch;color:rgba(255,255,255,.78)!important}

.author-homage{margin:1.7rem 0 2.3rem;display:grid;grid-template-columns:minmax(160px,230px) minmax(0,1fr);gap:1.5rem;align-items:center;padding:1.3rem;border:1px solid rgba(17,36,30,.12);border-radius:26px;background:linear-gradient(145deg,#f8f4e9,#eef4ee);box-shadow:0 16px 38px rgba(8,39,31,.08)}
.author-homage img{width:100%;max-height:330px;object-fit:contain;border-radius:9px;box-shadow:0 14px 30px rgba(8,39,31,.16)}.author-homage h2{margin:.35rem 0 .65rem}.author-homage .homage-label{color:#b45f40;font-size:.66rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.author-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.4rem 0}.author-card{padding:1.15rem;border:1px solid rgba(17,36,30,.11);border-radius:20px;background:#fff}.author-card h3{margin:.1rem 0 .55rem}.author-card p{font-size:.9rem!important;color:#586a63}.author-card a{font-weight:800}

.article-bridge{margin:1.4rem 0 2rem;padding:1.2rem 1.3rem;border-left:4px solid #c96e4a;border-radius:0 18px 18px 0;background:#f6f1e8;color:#50635c}
.article-bridge strong{color:#173a2f}

@media(max-width:760px){.source-homage,.author-homage{grid-template-columns:1fr}.source-homage img,.author-homage img{max-width:220px;margin:auto}.service-directory,.infrastructure-grid,.author-grid{grid-template-columns:1fr}}

.archive-panel{margin:1.5rem 0 2rem;padding:1.45rem;border-radius:24px;background:linear-gradient(135deg,rgba(8,39,31,.94),rgba(8,39,31,.58)),url('../images/editorial/pradera.jpg') center/cover;color:#fff;box-shadow:0 18px 42px rgba(8,39,31,.18)}.archive-panel span{color:#d6b36d;font-size:.64rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.archive-panel h3{color:#fff;margin:.35rem 0 .55rem;font-size:clamp(1.5rem,3vw,2.3rem)}.archive-panel p{max-width:65ch;color:rgba(255,255,255,.76)!important}.archive-panel .source-chip-row{margin-top:1rem}.archive-panel .source-chip{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16);color:#fff}


/* Iconografía semántica y ritmo de lectura. */
.article-card>h2.heading-icon,.article-card>h3.heading-icon{padding-left:2.15rem}
.article-card>h2.heading-icon::before,.article-card>h3.heading-icon::before{top:.2em;width:1.5rem;height:1.5rem;display:grid;place-items:center;border:1px solid rgba(45,116,91,.2);border-radius:50%;background:#eef4ee;color:#173a2f;box-shadow:none;font:800 .82rem/1 system-ui,sans-serif}
.article-card>.heading-icon--plane::before{content:"✈"}
.article-card>.heading-icon--satellite::before{content:"◆";transform:rotate(45deg);font-size:.65rem}
.article-card>.heading-icon--station::before{content:"ISS";font-size:.48rem;letter-spacing:.03em}
.article-card>details{scroll-margin-top:7rem}


/* Archivo fotográfico y citas históricas */
.home-quotes{width:min(1480px,100%);margin:0 auto clamp(5rem,10vw,9rem);display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.7fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.home-quotes-heading h2{margin:0;font:700 clamp(2.3rem,4vw,4.8rem)/.94 var(--serif);letter-spacing:-.05em;color:var(--forest-900)}
.home-quotes-grid{display:grid;gap:1rem}
.home-quotes blockquote{position:relative;margin:0;padding:clamp(1.4rem,3vw,2.4rem);border:1px solid rgba(17,36,30,.12);border-radius:26px;background:linear-gradient(145deg,#fffdf7,#eef4ee);box-shadow:0 18px 42px rgba(8,39,31,.07);overflow:hidden}
.home-quotes blockquote::before{content:"“";position:absolute;right:1rem;top:.3rem;font:400 8rem/.8 var(--serif);color:rgba(45,116,91,.1)}
.home-quotes blockquote p{position:relative;margin:0;font:400 clamp(1.2rem,2vw,1.75rem)/1.42 var(--serif);color:#183b30}
.home-quotes blockquote cite{position:relative;display:block;margin-top:1rem;color:#8f5835;font-size:.78rem;font-style:normal;font-weight:800;letter-spacing:.04em}
.real-archive-photo img{object-position:center}
@media(max-width:850px){.home-quotes{grid-template-columns:1fr}.home-quotes-heading{max-width:42rem}}


/* Aportaciones fotográficas 2026: composiciones editoriales de dos imágenes. */
.story-photo-grid,
.story-photo-single{margin:clamp(1.8rem,4vw,3.2rem) 0}
.story-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.72rem,1.4vw,1.05rem);align-items:stretch}
.article-card .story-photo-grid figure,
.article-card .story-photo-single figure{margin:0!important;padding:0;overflow:hidden;border:1px solid rgba(17,36,30,.11);border-radius:24px;background:linear-gradient(145deg,#fffdf8,#f1f4ed);box-shadow:0 16px 38px rgba(8,39,31,.09);transform:none!important}
.story-photo-frame{position:relative;overflow:hidden;aspect-ratio:4/3;background:#e8ece5}
.story-photo-single .story-photo-frame{aspect-ratio:16/9}
.story-photo-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 65%,rgba(8,39,31,.12));opacity:.65}
.article-card .story-photo-frame img{display:block;width:100%;height:100%!important;object-fit:cover;border-radius:0!important;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .35s;filter:saturate(.92) contrast(1.02)}
.story-photo-card:hover .story-photo-frame img{transform:scale(1.025);filter:saturate(1) contrast(1.03)}
.article-card .story-photo-card figcaption{min-height:72px;margin:0!important;padding:.82rem 1rem .9rem;border-left:0!important;color:#53655e;background:rgba(255,255,255,.88);font-size:.76rem;line-height:1.5}
@media(max-width:720px){
  .story-photo-grid{grid-template-columns:1fr;gap:1rem}
  .story-photo-frame,.story-photo-single .story-photo-frame{aspect-ratio:4/3}
  .article-card .story-photo-card figcaption{min-height:0}
}

.photo-credit{display:block;margin-top:.42rem;color:#7b756d;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:none}
