:root{--navy:#091423;--navy2:#122238;--gold:#c99535;--gold2:#e3c57f;--paper:#f4efe4;--ink:#202631;--muted:#737a84;--line:#d8cfbd}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.site-header{position:absolute;top:0;left:0;right:0;z-index:20;color:#fff;border-bottom:1px solid rgba(227,197,127,.25);background:linear-gradient(180deg,rgba(5,12,22,.96),rgba(5,12,22,.76))}.nav-wrap{max-width:1400px;margin:auto;padding:13px 30px;display:flex;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;min-width:350px}.brand-logo{width:58px;height:58px;object-fit:contain;display:block;filter:drop-shadow(0 3px 6px rgba(0,0,0,.55))}.brand-copy strong{display:block;font:23px/1.05 Georgia,"Times New Roman",serif;letter-spacing:.01em}.brand-copy small{display:block;margin-top:5px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#d7c28d}.main-nav{margin-left:auto;display:flex;align-items:center;gap:19px;flex-wrap:wrap;justify-content:flex-end}.main-nav a{color:#f0ede6;text-decoration:none;font:12px Georgia,"Times New Roman",serif;letter-spacing:.02em;padding:27px 0 9px;border-bottom:2px solid transparent}.main-nav a:hover,.main-nav a.active{color:var(--gold2);border-bottom-color:var(--gold)}
.hero{position:relative;min-height:760px;overflow:hidden;background:radial-gradient(circle at 37% 52%,rgba(201,149,53,.09),transparent 30%),linear-gradient(110deg,#07111e 0%,#102039 58%,#15253b 100%);color:#fff}.hero-vignette{position:absolute;inset:0;z-index:2;background:radial-gradient(circle at 60% 55%,transparent 20%,rgba(0,0,0,.24) 70%,rgba(0,0,0,.42))}.hero-inner{position:relative;z-index:5;max-width:1400px;margin:auto;padding:154px 30px 78px;display:grid;grid-template-columns:46% 54%;min-height:760px;align-items:center}.hero-text{padding-right:30px}.eyebrow{color:var(--gold2);font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.hero h1{font:normal clamp(48px,5.2vw,79px)/.96 Georgia,"Times New Roman",serif;margin:20px 0 14px;letter-spacing:-.02em}.hero h1 span{color:#f2ead9}.ornament{color:var(--gold);font-size:18px;letter-spacing:10px;margin:5px 0 15px}.hero p{font-size:17px;line-height:1.75;color:#d9dfe7;max-width:650px;margin:0}.hero p em{color:#f0dfb4}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-block;padding:13px 19px;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.04em}.btn-gold{background:var(--gold);color:#0a1523}.btn-outline{border:1px solid rgba(227,197,127,.7);color:#fff;background:rgba(5,12,22,.18)}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:34px;max-width:690px}.hero-stats div{padding:0 15px;border-right:1px solid rgba(227,197,127,.28)}.hero-stats div:first-child{padding-left:0}.hero-stats div:last-child{border-right:0}.hero-stats b{display:block;color:var(--gold2);font:31px Georgia,serif}.hero-stats span{display:block;margin-top:3px;font-size:9px;line-height:1.35;text-transform:uppercase;letter-spacing:.06em;color:#cbd2dc}
.hero-art{position:relative;height:610px}.map-frame{position:absolute;right:0;top:12px;width:87%;height:555px;overflow:hidden;border:1px solid rgba(227,197,127,.7);box-shadow:0 25px 45px rgba(0,0,0,.5)}.map-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.85) sepia(.08)}.map-label{position:absolute;bottom:10px;right:12px;background:rgba(8,17,28,.82);border:1px solid rgba(227,197,127,.6);padding:7px 10px;color:#e3c57f;font-size:9px;letter-spacing:.12em}.coin-frame{position:absolute;z-index:4;left:-5%;top:75px;width:54%;aspect-ratio:1/1;border-radius:50%;display:grid;place-items:center;filter:drop-shadow(0 28px 30px rgba(0,0,0,.68))}.coin-frame:before{content:"";position:absolute;inset:-13px;border-radius:50%;background:radial-gradient(circle,rgba(227,197,127,.22),transparent 67%);z-index:-1}.coin-frame img{width:100%;height:100%;object-fit:contain;display:block}
.ribbon{position:relative;z-index:8;background:var(--paper);border-bottom:1px solid #d3c7b2;border-top:1px solid #d3c7b2;text-align:center;padding:14px 20px;color:#30291f;font:22px Georgia,serif;letter-spacing:.02em}.ribbon:before,.ribbon:after{content:"✦";color:var(--gold);padding:0 25px}.section{max-width:1300px;margin:auto;padding:70px 30px}.section-heading{max-width:820px;margin-bottom:30px}.kicker{font-size:11px;color:#927033;letter-spacing:.2em;text-transform:uppercase;font-weight:800}.section h2{font:normal 42px Georgia,serif;margin:8px 0 12px}.section-heading p{color:var(--muted);line-height:1.7}.cards,.research-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cards article{background:#fbfaf7;border:1px solid var(--line);padding:27px;box-shadow:0 10px 30px rgba(10,20,35,.06)}.card-icon{color:var(--gold);font-size:28px}.cards h3,.research-grid h3{font:24px Georgia,serif;margin:12px 0 8px}.cards p,.research-grid p{font-size:14px;color:var(--muted);line-height:1.6}.dark{max-width:none;background:var(--navy);color:#fff}.dark>.section-heading,.dark .research-grid{max-width:1300px;margin-left:auto;margin-right:auto}.dark .section-heading p{color:#bfc7d2}.research-grid article{padding:24px;border-top:1px solid rgba(227,197,127,.35);border-bottom:1px solid rgba(227,197,127,.18)}.research-grid h3{color:var(--gold2)}.research-grid p{color:#c5cbd5}.project-box{background:#fbfaf7;border:1px solid var(--line);padding:30px}.project-box h2{margin-bottom:5px}footer{background:#07101c;color:#cdd4de;padding:35px 30px;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;font-size:13px}footer strong{display:block;color:#fff;font:20px Georgia,serif;margin-bottom:6px}footer span{color:#9da7b4}
@media(max-width:1100px){.brand{min-width:0}.main-nav{display:none}.hero-inner{grid-template-columns:1fr}.hero-text{max-width:760px}.hero-art{height:520px}.coin-frame{left:0;width:43%;top:80px}.cards,.research-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.nav-wrap{padding:10px 16px}.brand-logo{width:48px;height:48px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:7px}.hero-inner{padding:120px 18px 40px}.hero{min-height:auto}.hero h1{font-size:48px}.hero-stats{grid-template-columns:repeat(2,1fr);gap:15px}.hero-stats div:nth-child(2){border-right:0}.hero-art{height:420px}.coin-frame{width:52%;left:-2%;top:100px}.ribbon{font-size:17px}.ribbon:before,.ribbon:after{padding:0 8px}.section{padding:55px 18px}.cards,.research-grid{grid-template-columns:1fr}.section h2{font-size:35px}footer{padding:28px 18px}}


/* ===== PLANTILLAS DE CATÁLOGO ===== */
.catalog-page{background:#f4f0e7;color:#202631}
.catalog-main{max-width:1200px;margin:auto;padding:145px 30px 70px}
.catalog-breadcrumb{font-size:12px;color:#7b7469;margin-bottom:30px}
.catalog-breadcrumb a{text-decoration:none;color:#927033}
.catalog-title{border-bottom:1px solid #d7cbb8;padding-bottom:22px;margin-bottom:28px}
.catalog-title h1{font:normal clamp(38px,5vw,62px)/1.05 Georgia,"Times New Roman",serif;margin:8px 0 0}
.catalog-card{background:#fbfaf7;border:1px solid #d8cebd;box-shadow:0 10px 30px rgba(10,20,35,.06)}
.catalog-identity{padding:0}
.catalog-field{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:20px 24px;border-bottom:1px solid #e2dacb}
.catalog-field:last-child{border-bottom:0}
.field-label{font:700 13px Georgia,"Times New Roman",serif;letter-spacing:.08em;color:#80632e}
.field-value{font-size:15px;color:#687080}
.catalog-media{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}
.media-placeholder{aspect-ratio:1.15;background:linear-gradient(135deg,#e9e1d2,#d3c7ae);border:1px solid #bcae94;display:grid;place-items:center;text-align:center;color:#74664e;font:22px Georgia,serif}
.media-placeholder small{font:12px Inter,system-ui,sans-serif;letter-spacing:.06em}
.site-footer{background:#07101c;color:#cdd4de;padding:38px 30px}
.footer-inner{max-width:1300px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:35px}
.site-footer strong{display:block;color:#fff;font:20px Georgia,serif;margin-bottom:7px}
.site-footer span,.site-footer a{color:#9da7b4;font-size:13px}
.site-footer a{display:block;text-decoration:none;margin:5px 0}
.footer-meta{display:flex;flex-direction:column;align-items:flex-start}
@media(max-width:700px){
  .catalog-main{padding:120px 18px 50px}
  .catalog-field{grid-template-columns:1fr;gap:7px}
  .catalog-media,.footer-inner{grid-template-columns:1fr}
}


/* ===== FICHAS CATALOGRÁFICAS CMR ===== */
.ficha-main{
  max-width:1200px;
  margin:0 auto;
  padding:140px 28px 70px;
}
.ficha-head{
  border-bottom:1px solid #d8cdbb;
  padding-bottom:22px;
  margin-bottom:30px;
}
.ficha-head .kicker{
  display:block;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#8b6b32;
}
.ficha-head h1{
  margin:8px 0 0;
  font:normal clamp(34px,5vw,58px)/1.05 Georgia,"Times New Roman",serif;
  color:#202631;
}
.ficha-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-bottom:30px;
}
.ficha-imagen{
  background:#fbfaf7;
  border:1px solid #d5c8b4;
  padding:16px;
  box-shadow:0 10px 28px rgba(10,20,35,.06);
}
.ficha-imagen h2{
  margin:0 0 12px;
  font:700 13px/1.2 Georgia,"Times New Roman",serif;
  letter-spacing:.12em;
  color:#80632e;
  text-transform:uppercase;
}
.ficha-imagen .marco{
  width:100%;
  height:420px; /* medida fija del cuadro */
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#f0ece4;
  border:1px solid #cfc4b2;
}
.ficha-imagen img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.ficha-datos{
  background:#fbfaf7;
  border:1px solid #d5c8b4;
  box-shadow:0 10px 28px rgba(10,20,35,.05);
}
.ficha-fila{
  display:grid;
  grid-template-columns:250px 1fr;
  min-height:54px;
  border-bottom:1px solid #e1d8ca;
}
.ficha-fila:last-child{border-bottom:0}
.ficha-campo{
  padding:16px 18px;
  font:700 12px/1.35 Georgia,"Times New Roman",serif;
  letter-spacing:.07em;
  color:#80632e;
}
.ficha-valor{
  padding:16px 18px;
  color:#3f4650;
  font-size:14px;
  line-height:1.55;
}
.ficha-seccion{
  margin-top:30px;
}
.ficha-seccion h2{
  margin:0 0 12px;
  font:normal 30px/1.1 Georgia,"Times New Roman",serif;
  color:#202631;
}
.ficha-texto{
  background:#fbfaf7;
  border:1px solid #d5c8b4;
  padding:22px;
  color:#4e5662;
  line-height:1.75;
}
@media(max-width:760px){
  .ficha-main{padding:120px 16px 50px}
  .ficha-grid{grid-template-columns:1fr}
  .ficha-imagen .marco{height:320px}
  .ficha-fila{grid-template-columns:1fr}
  .ficha-campo{padding-bottom:5px}
  .ficha-valor{padding-top:5px}
}
