/* Rediseño Faisanes del Mundo — hoja de estilos compartida
   v2: dirección editorial/revista de campo, inspirada en mundofaunista.es */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
:root{
  --ink: oklch(16% 0.025 155);
  --forest: oklch(28% 0.095 155);
  --forest-dark: oklch(15% 0.07 155);
  --paper: oklch(96% 0.016 70);
  --paper-raised: oklch(99% 0.006 70);
  --sand: oklch(92% 0.025 70);
  /* --crimson/--gold se mantienen como nombres (los usan cientos de páginas
     ya generadas) pero ahora apuntan a la nueva paleta terracota */
  --crimson: oklch(58% 0.16 45);
  --crimson-dark: oklch(42% 0.14 40);
  --gold: oklch(74% 0.13 75);
  --line: oklch(86% 0.02 70);
  --iucn-lc: #60C659;
  --iucn-nt: #CCE226;
  --iucn-vu: #F9E814;
  --iucn-en: #FC7F3F;
  --iucn-cr: #D81E05;
}
*{box-sizing:border-box;}
body.rd{margin:0;background:var(--paper);color:var(--ink);font-family:'Public Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased;}
.rd h1,.rd h2{font-family:'Bebas Neue',Impact,'Arial Narrow Bold',sans-serif;font-weight:400;margin:0;letter-spacing:0.01em;text-transform:uppercase;line-height:0.95;}
.rd h3{font-family:'Newsreader',Georgia,serif;font-weight:500;font-style:italic;margin:0;letter-spacing:-0.01em;}
.rd p{line-height:1.65;}
.rd a{color:var(--forest);text-decoration:none;}
.rd a:hover{color:var(--crimson-dark);}
.rd .wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
.rd .card{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;}
.rd-tag{display:inline-flex;align-items:center;gap:6px;background:var(--crimson);color:white;font-family:'Public Sans',sans-serif;font-weight:700;font-size:11.5px;letter-spacing:0.05em;text-transform:uppercase;padding:5px 11px;border-radius:3px;}
.rd-tag.outline{background:transparent;border:1.5px solid var(--crimson);color:var(--crimson-dark);}

/* header: barra utilitaria + cabecera + nav negra */
.rd-util{background:var(--forest-dark);color:oklch(85% 0.02 90);font-size:12.5px;padding:8px 0;}
.rd-util .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.rd-util a{font-weight:600;color:var(--gold);}
.rd-header{background:var(--paper-raised);border-bottom:3px solid var(--forest);}
.rd-header .bar{display:flex;align-items:center;justify-content:space-between;min-height:84px;flex-wrap:wrap;gap:12px;padding:12px 0;}
.rd-logo{display:flex;align-items:center;gap:14px;text-decoration:none;}
.rd-logo .word{font-family:'Bebas Neue',sans-serif;font-size:30px;letter-spacing:0.02em;line-height:1;color:var(--forest);}
.rd-logo .sub{font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:oklch(50% 0.03 155);font-weight:600;margin-top:3px;}
.rd-navbar{background:var(--ink);}
.rd-nav{display:flex;gap:2px;align-items:center;flex-wrap:wrap;}
.rd-nav a{font-weight:700;font-size:13.5px;letter-spacing:0.03em;text-transform:uppercase;color:oklch(88% 0.02 90);padding:14px 16px;border-bottom:3px solid transparent;}
.rd-nav a:hover{color:white;}
.rd-nav .cta{background:var(--crimson);color:white !important;margin-left:auto;border-radius:3px;padding:9px 16px;border-bottom:none;}

/* breadcrumb */
.rd-crumb{font-size:13px;color:oklch(45% 0.02 155);padding:22px 0 18px;}
.rd-crumb a{color:oklch(45% 0.02 155);}

/* species hero: banda oscura editorial, con retrato circular + titular grande */
.rd-hero{position:relative;background:var(--forest-dark);overflow:hidden;min-height:210px;}
.rd-hero-media{position:absolute;inset:0;
  background:
    linear-gradient(115deg, var(--forest-dark) 15%, oklch(34% 0.09 155 / 0.75) 55%, oklch(22% 0.05 155) 100%),
    repeating-linear-gradient(115deg, oklch(38% 0.09 155) 0 4px, oklch(32% 0.07 155) 4px 10px),
    radial-gradient(90% 140% at 85% 10%, oklch(62% 0.15 78 / 0.55), transparent 60%);
}
.rd-species-hero{position:relative;display:flex;gap:40px;align-items:center;padding:40px 32px 40px;max-width:1080px;flex-wrap:wrap;}
.rd-species-hero > div:last-child{padding-top:0;min-width:0;flex:1 1 380px;}
.rd-portrait{width:168px;height:168px;border-radius:50%;flex-shrink:0;border:5px solid var(--paper-raised);box-shadow:0 0 0 1px oklch(0% 0 0/0.15),0 20px 40px -14px oklch(0% 0 0/0.55);overflow:hidden;}
.rd-portrait img{width:100%;height:100%;object-fit:cover;display:block;}
.rd-species-hero h1{color:white;font-size:clamp(34px,5vw,56px) !important;}
.rd-status{display:inline-flex;align-items:center;gap:7px;background:oklch(30% 0.03 155/0.55);border:1px solid oklch(70% 0.02 90/0.4);color:white;border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:700;}
.rd-status .dot{width:10px;height:10px;border-radius:50%;display:inline-block;}
.rd-species-hero .sciname{font-family:'Newsreader',serif;font-style:italic;font-size:18px;color:oklch(92% 0.02 90);}
.rd-quote{margin-top:16px;max-width:680px;font-size:15.5px;font-family:'Newsreader',serif;font-style:italic;color:oklch(90% 0.02 90);border-left:3px solid var(--gold);padding-left:16px;}
.rd-names-row{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap;}
.rd-names-row span{font-size:12.5px;background:oklch(30% 0.03 155/0.55);color:oklch(92% 0.02 90);border-radius:4px;padding:5px 10px;}

/* tabs */
.rd-tabs-wrap{border-bottom:1px solid var(--line);}
.rd-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:24px 0 16px;overflow-x:auto;}
.rd-tab{padding:12px 20px;border-radius:999px;font-weight:600;font-size:14px;white-space:nowrap;border:1px solid var(--line);color:oklch(38% 0.02 155);}
.rd-tab.active{background:var(--forest);color:var(--paper-raised);border-color:var(--forest);}

/* content */
.rd-content{display:grid;grid-template-columns:1fr 300px;gap:48px;padding:44px 32px 90px;}
.rd-content h2{font-size:22px;margin-bottom:16px;}
.rd-content p{color:oklch(30% 0.02 155);font-size:15.5px;}
.rd-photo{overflow:hidden;margin-top:20px;}
.rd-photo img{width:100%;display:block;}
.rd-photo .cap{padding:10px 12px;font-size:12.5px;color:oklch(42% 0.02 155);font-style:italic;}
.rd-sysbox{display:flex;flex-direction:column;gap:20px;}
.rd-sysbox .card{padding:22px;}
.rd-sysbox .label{font-weight:700;font-size:13px;letter-spacing:0.04em;color:var(--forest);margin-bottom:14px;}
.rd-sysrow{display:flex;justify-content:space-between;font-size:14px;margin-bottom:9px;}
.rd-sysrow span{color:oklch(45% 0.02 155);}

/* apéndice: jerarquía taxonómica con sangría progresiva */
.rd-taxrow{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;
  padding:5px 0 5px calc(clamp(0px, calc(var(--i) * 9px), 130px) + 12px);
  margin-left:clamp(0px, calc(var(--i) * 9px), 130px);
  border-left:2px solid var(--line);}
.rd-taxval{text-align:right;white-space:nowrap;}

/* fichas.php: portada de listado, banda oscura + navegación por género + tarjetas */
.rd-fichas-hero{position:relative;padding:56px 32px 40px;max-width:900px;}
.rd-fichas-hero .rd-tag{margin-bottom:16px;}
.rd-fichas-hero h1{color:white;font-size:clamp(38px,5.5vw,64px);}
.rd-fichas-hero .lede{margin-top:14px;max-width:640px;font-size:16px;font-family:'Newsreader',serif;font-style:italic;color:oklch(90% 0.02 90);border-left:3px solid var(--gold);padding-left:16px;}
.rd-stat-row{display:flex;gap:32px;margin-top:32px;flex-wrap:wrap;}
.rd-stat b{display:block;font-family:'Bebas Neue',sans-serif;font-size:38px;color:var(--gold);line-height:1;}
.rd-stat span{display:block;font-size:12px;letter-spacing:0.04em;text-transform:uppercase;color:oklch(85% 0.02 90);margin-top:4px;}

.rd-genus-nav{display:flex;gap:8px;flex-wrap:wrap;padding:22px 0;overflow-x:auto;}
.rd-genus-nav a{flex-shrink:0;font-size:12.5px;font-weight:700;letter-spacing:0.02em;font-style:italic;font-family:'Newsreader',serif;color:var(--forest);border:1px solid var(--line);border-radius:999px;padding:8px 15px;}
.rd-genus-nav a:hover{background:var(--forest);color:white;border-color:var(--forest);}

.rd-genus-section{padding:44px 0 6px;border-top:1px solid var(--line);}
.rd-genus-section:first-of-type{border-top:none;}
.rd-genus-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;}
.rd-genus-num{font-family:'Bebas Neue',sans-serif;font-size:15px;color:oklch(70% 0.02 70);letter-spacing:0.06em;}
.rd-genus-head h2{font-family:'Newsreader',serif;font-style:italic;font-weight:600;text-transform:none;font-size:26px;color:var(--forest);letter-spacing:0;}
.rd-genus-count{font-size:13px;color:oklch(50% 0.02 155);font-weight:600;}
.rd-species-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,180px));gap:20px;margin-top:22px;}
.rd-sp-card{overflow:hidden;display:flex;flex-direction:column;transition:transform .15s ease,box-shadow .15s ease;}
.rd-sp-card:hover{transform:translateY(-3px);box-shadow:0 16px 30px -18px oklch(0% 0 0/0.35);border-color:var(--forest);}
.rd-sp-photo{aspect-ratio:1/1;overflow:hidden;background:var(--sand);position:relative;}
.rd-sp-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.rd-sp-status{position:absolute;top:10px;right:10px;font-size:10.5px;font-weight:700;letter-spacing:0.03em;color:white;border-radius:4px;padding:3px 7px;}
.rd-sp-body{padding:13px 14px 15px;}
.rd-sp-name{font-weight:700;font-size:14.5px;color:var(--ink);}
.rd-sp-sci{display:block;margin-top:2px;font-family:'Newsreader',serif;font-style:italic;font-size:12.5px;color:oklch(45% 0.02 155);}

/* footer */
.rd-footer{background:var(--forest-dark);padding:56px 0 28px;margin-top:0;}
.rd-footer .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px;}
.rd-footer .colhead{color:white;font-weight:700;font-size:13px;letter-spacing:0.04em;margin-bottom:14px;}
.rd-footer a{color:oklch(85% 0.02 155);font-size:14px;display:block;margin-bottom:10px;}
.rd-footer .bottom{border-top:1px solid oklch(40% 0.04 155);margin-top:40px;padding-top:20px;}
.rd-footer .bottom p{color:oklch(70% 0.02 155);font-size:12.5px;margin:0;}

@media (max-width: 860px){
  .rd .wrap{padding:0 20px;}
  .rd-nav{gap:16px;}
  .rd-species-hero{flex-direction:column;align-items:flex-start;text-align:left;padding:28px 20px;}
  .rd-portrait{margin:0;}
  .rd-names-row{justify-content:flex-start;}
  .rd-content{grid-template-columns:1fr;padding:32px 20px 60px;}
  .rd-sysbox{order:-1;}
  .rd-footer .cols{grid-template-columns:1fr 1fr;gap:28px;}
  .rd h1{font-size:28px !important;}
  /* red de seguridad general: cualquier rejilla de 2+ columnas hecha con
     estilo en línea (portada y páginas generales) pasa a 1 columna */
  [style*="grid-template-columns"]{grid-template-columns:1fr !important;}
  [style*="display:flex"][style*="gap"]{flex-wrap:wrap;}
  .rd-taxrow{
    padding-left:calc(clamp(0px, calc(var(--i) * 4px), 60px) + 10px);
    margin-left:clamp(0px, calc(var(--i) * 4px), 60px);
  }
  .rd-taxval{white-space:normal;text-align:left;}
}
@media (max-width: 520px){
  .rd-footer .cols{grid-template-columns:1fr;}
}
