*{box-sizing:border-box}
body{margin:0;font-family:Inter,sans-serif;color:#2B3440;background:#fff;line-height:1.6}
h1,h2,h3{font-family:'Roboto Slab',serif;font-weight:800;color:#1F3A5F;margin:0;line-height:1.2}
h1{font-size:clamp(32px,5vw,52px);line-height:1.1}h2{font-size:clamp(26px,3.5vw,34px)}h3{font-size:20px}
a{color:#8A5A0B}a:hover{color:#14263F}
:focus-visible{outline:3px solid #E0A458;outline-offset:2px}
img{max-width:100%;height:auto}
.w{max-width:1120px;margin:0 auto;padding:0 24px}
.sec{padding:80px 0}.alt{background:#F7F3EC}.fog{background:#E8EEF5}
.lead{font-size:17px;max-width:64ch;margin:12px 0 36px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:#fff;border:1px solid #D9DEE5;border-radius:10px;overflow:hidden}
.pad{padding:28px}.top{border-top:4px solid #E0A458}
.btn{display:inline-block;font-weight:600;font-size:15px;padding:13px 22px;border-radius:6px;border:2px solid #1F3A5F;text-decoration:none;cursor:pointer;font-family:inherit}
.p{background:#1F3A5F;color:#fff}.p:hover{background:#14263F;color:#fff}
.a{background:#E0A458;border-color:#E0A458;color:#14263F}.a:hover{background:#f0b86d;color:#14263F}
.o{color:#1F3A5F;background:transparent}.o:hover{background:#E8EEF5;color:#1F3A5F}
.site-header{background:#fff;border-bottom:1px solid #D9DEE5;position:sticky;top:0;z-index:20}
.hbar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:'Roboto Slab',serif;font-weight:800;font-size:17px;line-height:1.15;color:#1F3A5F}
.brand small{display:block;font:inherit;color:#8A5A0B}
.nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0}
.nav a{color:#1F3A5F;text-decoration:none;font-weight:600;font-size:14px;padding:12px 0;display:block}
.nav a:hover,.nav .current-menu-item a{color:#8A5A0B}
.menu-btn{display:none;font:600 14px Inter,sans-serif;background:#fff;border:2px solid #1F3A5F;color:#1F3A5F;border-radius:6px;padding:10px 16px;min-height:48px;cursor:pointer}
.hero{background:#F7F3EC;padding:72px 0}
.hero .w{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8A5A0B;margin-bottom:16px}
.hero p{font-size:18px;max-width:52ch;margin:20px 0 32px}
.inst{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;min-height:150px;text-decoration:none;text-align:center;font-weight:600;font-size:14px}
.tag{font:600 11px Inter,sans-serif;background:#E8EEF5;color:#1F3A5F;padding:4px 8px;border-radius:4px;display:inline-block}
.meta{font-size:14px;color:#5B6675}
.cbody{padding:18px 20px 22px}.cbody h3{margin:12px 0 6px}.cbody h3 a{color:#1F3A5F;text-decoration:none}
.sumate{background:#1F3A5F}.sumate .w{display:flex;gap:32px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.sumate h2{color:#fff}.sumate p{color:#E8EEF5;max-width:60ch}
.site-footer{background:#14263F;color:#E8EEF5;padding:64px 0 32px}
.site-footer .cols{display:flex;gap:48px;justify-content:space-between}
.site-footer b{color:#fff;font-weight:600}.site-footer a{color:#E0A458}
.apoyo{margin-top:40px;padding-top:28px;border-top:1px solid #2F4663;display:flex;gap:24px;align-items:center;flex-wrap:wrap;font-size:13px}
.apoyo .chip{background:#fff;border-radius:8px;padding:6px 14px}.apoyo img{height:56px;display:block;width:auto}
.search{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px}
.search input{flex:1;min-width:220px;font:400 16px Inter,sans-serif;padding:13px 16px;border:1px solid #9AA5B1;border-radius:6px}
.content{max-width:760px;font-size:17px}.content h2,.content h3{margin:32px 0 12px}
.pager{margin-top:32px}
@media (max-width:820px){
.g3,.hero .w{grid-template-columns:1fr}.sec{padding:56px 0}.menu-btn{display:inline-block}
.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid #D9DEE5;padding:8px 24px 16px}
.nav.open{display:block}.nav ul{flex-direction:column;gap:0}.nav a{padding:14px 0;border-bottom:1px solid #E8EEF5}
.site-footer .cols{flex-direction:column;gap:24px}.apoyo .r{margin-left:0!important}}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px 12px;z-index:50}

.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.inst h2{margin:0}.inst:hover{border-color:#E0A458}
@media (max-width:820px){.g2{gap:12px}.g2 .inst{padding:16px 10px;min-height:180px!important;gap:10px}.g2 .inst h2,.g2 .inst h3{font-size:18px!important}.g2 .inst span{font-size:13px}.g2 .inst img{width:100%;max-width:150px}}
.card.inst:hover{border-color:#E0A458;box-shadow:0 2px 10px rgba(31,58,95,.12)}
a.chip{display:inline-block}a.chip:hover{box-shadow:0 0 0 3px #E0A458}
.form{max-width:680px;padding:32px}
.form label{display:block;font-weight:600;color:#1F3A5F;margin:0 0 6px}
.form .campo{margin-bottom:20px}
.form input[type=text],.form input[type=tel],.form input[type=email],.form textarea{width:100%;font:400 16px Inter,sans-serif;padding:13px 14px;border:1px solid #9AA5B1;border-radius:6px;color:#2B3440;background:#fff}
.form textarea{min-height:160px;resize:vertical}
.form .ayuda{font-size:14px;color:#5B6675;margin:6px 0 0}
.form .trampa{position:absolute;left:-9999px;height:0;overflow:hidden}
.aviso{padding:16px 18px;border-radius:8px;margin-bottom:24px;font-weight:600}
.aviso.ok{background:#E6F2EA;border:1px solid #2F7D4F;color:#1D5233}
.aviso.err{background:#FBEAEA;border:1px solid #B03A3A;color:#7A2020}
.btn[disabled]{opacity:.6;cursor:wait}
.hero-car{position:relative;overflow:hidden;background:#14263F;padding:88px 0 112px;color:#fff}
.hero-car .hero-bg{position:absolute;inset:0;z-index:0}
.slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease;visibility:hidden}
.slide.is-active{opacity:1;visibility:visible}
.slide img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1)}
.hero-velo{position:absolute;inset:0;background:rgba(20,38,63,.8)}
.hero-car .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.hero-car h1{color:#fff}
.hero-car .eyebrow{color:#F0C27B}
.hero-car p{color:#E8EEF5}
.btn.ow{color:#fff;border-color:#fff;background:transparent}.btn.ow:hover{background:rgba(255,255,255,.16);color:#fff}
.hero-car .hero-art{width:100%;max-width:390px;justify-self:end}
.car-bar{position:absolute;z-index:3;left:0;right:0;bottom:16px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}
.car-cap{font-size:13px;color:#E8EEF5;background:rgba(20,38,63,.6);padding:8px 12px;border-radius:6px}
.car-ctl{display:flex;gap:4px;background:rgba(20,38,63,.6);border-radius:8px;padding:2px}
.car-btn{width:44px;height:44px;border:0;border-radius:6px;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.car-btn:hover{background:rgba(255,255,255,.18)}
.car-btn:focus-visible{outline:3px solid #E0A458;outline-offset:-3px}
@media (prefers-reduced-motion:reduce){.slide{transition:none}}
@media (max-width:820px){.hero-car{padding:48px 0 100px}.hero-car .hero-grid{grid-template-columns:1fr;gap:32px}.hero-car .hero-art{max-width:255px;justify-self:center}.car-cap{font-size:12px}}

/* =====================================================================
   Integración con Cozy
   Estas reglas adaptan las plantillas de Cozy (ítems, fichas, buscador,
   formularios) al estilo visual de la Red de Memoria.
   ===================================================================== */
:root{--accent-color:#8A5A0B}
html{font-family:Inter,sans-serif;font-size:16px}
body{font-family:Inter,sans-serif;line-height:1.6;color:#2B3440}
.nav ul{list-style:none;margin:0}
.nav li{margin:0;padding:0}
.nav li.active>a{color:#8A5A0B}
.site-header .brand span a{text-decoration:none}

/* Contenedor de contenido */
#content{max-width:1168px;padding:56px 24px 88px;overflow:visible}
#content.content-home{max-width:none;padding:0}
.content-home>h1:first-child,.content-home>h2:first-child{display:none}
:where(#content.content-inner) h2{margin:0 0 20px}
:where(#content.content-inner) h3{margin:28px 0 10px}
h1,h2,h3,h4,h5,h6{font-family:'Roboto Slab',serif;color:#1F3A5F}
h4{font-weight:800}

/* Buscador (franja bajo el encabezado en páginas interiores) */
.search-strip{background:#F7F3EC;border-bottom:1px solid #D9DEE5;padding:16px 0}
.search-strip #search-form{display:flex;margin:0;height:auto;border:1px solid #9AA5B1;border-radius:6px;overflow:hidden;background:#fff;max-width:640px}
.search-strip #search-form input[type=text]{flex:1;min-width:0;background:#fff;color:#2B3440;border:0;border-radius:0;font:400 16px Inter,sans-serif;padding:13px 16px}
.search-strip #search-form button{width:52px;height:auto;border:0;border-left:1px solid #9AA5B1;border-radius:0;background:#1F3A5F;color:#fff}
.search-strip #search-form button:hover{background:#14263F}

/* Botones y formularios nativos */
button,input[type=submit],.button,.sub-menu a,.site-page-pagination a{font-family:Inter,sans-serif;font-weight:600;font-size:15px;border-radius:6px;background:#1F3A5F;color:#fff}
button:hover,input[type=submit]:hover,.button:hover,.sub-menu a:hover,.site-page-pagination a:hover{background:#14263F;color:#fff}
.button.inactive{background:#E8EEF5;color:#6B7684}
.menu-btn{background:#fff;color:#1F3A5F;border:2px solid #1F3A5F;font:600 14px Inter,sans-serif}
.menu-btn:hover{background:#E8EEF5;color:#1F3A5F}
.car-btn{background:transparent;color:#fff}
.car-btn:hover{background:rgba(255,255,255,.18)}
textarea,input[type=text],input[type=password],input[type=email],input[type=url],input[type=number],input[type=date],input[type=datetime-local],select{font-family:Inter,sans-serif;border:1px solid #9AA5B1;border-radius:6px;color:#2B3440}
label{font-weight:600;color:#1F3A5F}
.filter{border-color:#9AA5B1;border-radius:6px}

/* Listado de ítems y colecciones: tarjetas */
ul.resource-list{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
ul.resource-list .resource{background:#fff;border:1px solid #D9DEE5;border-radius:10px;overflow:hidden;margin:0;padding:0;display:flex;flex-direction:column}
ul.resource-list .resource:first-child{border-top:1px solid #D9DEE5;padding-top:0}
ul.resource-list .resource:hover{border-color:#E0A458;box-shadow:0 2px 10px rgba(31,58,95,.12)}
ul.resource-list .resource a.resource-link{display:block;text-decoration:none}
ul.resource-list .resource img{float:none;display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0;background:#E8EEF5}
ul.resource-list .resource img ~ *{width:auto}
ul.resource-list .resource .resource-name{display:block;font:800 18px/1.25 'Roboto Slab',serif;color:#1F3A5F;padding:16px 20px 8px}
ul.resource-list .resource a.resource-link:hover .resource-name{color:#8A5A0B}
ul.resource-list .resource .description{padding:0 20px 20px;font-size:14px;color:#5B6675;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}

/* Fichas */
.resource-type.label{background:#1F3A5F;color:#fff;border-radius:4px;font:600 12px Inter,sans-serif;line-height:1;padding:8px 10px}
.property dt,.media-list dt{color:#1F3A5F}
.resource.show .property .language{background:#E8EEF5;border-radius:4px}
nav.breadcrumbs{background:#E8EEF5;border-radius:6px}
th{border-bottom-color:#1F3A5F}
.collapse + .collapsible{border-left-color:#E0A458}

@media (max-width:820px){
  #content{padding:36px 20px 56px}
  ul.resource-list{grid-template-columns:repeat(2,1fr);gap:12px}
}
@media (max-width:480px){ul.resource-list{grid-template-columns:1fr}}

/* ===== Ajustes de maquetación ===== */
/* El pie siempre queda al final: el contenido contiene sus elementos flotantes */
#content{display:flow-root}

/* ===== Ficha de ítem: imagen a la izquierda, datos en 3 columnas a la derecha ===== */
.ficha{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:start;margin-top:28px}
.ficha-media-item+.ficha-media-item{margin-top:20px}
.ficha-media img,.ficha-media video{display:block;max-width:100%;height:auto;border-radius:8px}
.ficha-media audio,.ficha-media iframe{max-width:100%}
.ficha-props{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16.5px 28px;margin:0;padding:0}
.item.resource.show .ficha-props>.property{display:block;width:auto;margin:0;padding:9px 0 0;border-top:1px solid #D9DEE5;justify-content:flex-start;overflow-wrap:anywhere}
.item.resource.show .ficha-props>.property.wide{grid-column:1/-1}
.item.resource.show .ficha-props .property dt{display:block;float:none;width:100%;margin:0 0 4px;padding:0;text-align:left;font:600 11px/1.05 Inter,sans-serif;letter-spacing:.02em;color:#5B6675}
.item.resource.show .ficha-props .property dd.value{display:block;float:none;width:100%;margin:0 0 6px;padding:0;text-align:left;font-size:13.6px;line-height:1.2;border:0}
.item.resource.show .ficha-props .property dd.value:not(:first-of-type){border-top:1px solid #EEF1F5;padding-top:6px}
.item.resource.show .sidebar.right:empty{display:none}

@media (max-width:1000px){
  .ficha{grid-template-columns:1fr;gap:28px}
}
@media (max-width:640px){
  .ficha-props{grid-template-columns:repeat(2,minmax(0,1fr));gap:13.5px 20px}
}
