/* =========================================================
   Editorial RODMU V16 — refinamiento visual y responsive
   Integración fotográfica profesional, accesibilidad y consistencia.
   ========================================================= */
:root{
  --v16-navy:#103653;
  --v16-navy-deep:#0c2b45;
  --v16-navy-mid:#1a4668;
  --v16-ink:#263d4c;
  --v16-muted:#607483;
  --v16-teal:#247f8d;
  --v16-gold:#c99a3e;
  --v16-gold-soft:#e6c981;
  --v16-paper:#fffdf9;
  --v16-ivory:#f7f2e9;
  --v16-line:#e7dfd2;
  --v16-shadow:0 26px 70px rgba(15,48,78,.11),0 8px 24px rgba(15,48,78,.05);
  --v16-shadow-soft:0 12px 34px rgba(15,48,78,.065);
}

html{scroll-behavior:smooth;scroll-padding-top:110px}
html,body{max-width:100%;overflow-x:hidden}
body.v16-premium{
  color:var(--v16-ink);
  background:
    radial-gradient(circle at 6% 8%,rgba(36,127,141,.045),transparent 27rem),
    radial-gradient(circle at 94% 13%,rgba(201,154,62,.07),transparent 29rem),
    linear-gradient(180deg,#fff 0%,#fffdf9 48%,#faf7f0 78%,#fff 100%);
}
body.v16-premium main{
  background:
    radial-gradient(circle at 8% 14%,rgba(36,127,141,.03),transparent 24rem),
    radial-gradient(circle at 91% 22%,rgba(201,154,62,.052),transparent 25rem),
    linear-gradient(180deg,rgba(255,255,255,.99),rgba(252,249,243,.98) 52%,rgba(255,255,255,.99));
}
body.v16-premium .section{background:transparent!important}
body.v16-premium .section-soft{
  background:
    radial-gradient(circle at 88% 10%,rgba(201,154,62,.052),transparent 21rem),
    linear-gradient(180deg,#fbfaf6 0%,#f7f2e9 54%,#fffdf9 100%)!important;
}
body.v16-premium p{max-width:74ch}

/* ---------- Header polish ---------- */
body.v16-premium .site-header{
  box-shadow:0 8px 30px rgba(15,48,78,.045);
  background:rgba(255,253,249,.97);
  backdrop-filter:saturate(120%) blur(8px);
}
body.v16-premium .main-nav>a,
body.v16-premium .nav-group-label{transition:color .18s ease,background .18s ease,border-color .18s ease}
body.v16-premium .main-nav>a:focus-visible,
body.v16-premium .nav-group-label:focus-visible,
body.v16-premium .btn:focus-visible,
body.v16-premium a:focus-visible{
  outline:3px solid rgba(36,127,141,.34);outline-offset:4px;border-radius:8px;
}
body.v16-premium .skip-link{
  position:fixed!important;left:18px!important;top:14px!important;z-index:99999!important;
  transform:translateY(-160%);background:var(--v16-navy)!important;color:#fff!important;
  padding:10px 14px!important;border-radius:10px!important;font-weight:800!important;
  box-shadow:var(--v16-shadow-soft)!important;
}
body.v16-premium .skip-link:focus{transform:translateY(0)}

/* ---------- V16 fused photographic hero ---------- */
body.v16-premium .v15-hero-fusion{padding:44px 0 42px;background:transparent}
body.v16-premium .v15-hero-fusion-shell{
  position:relative;
  min-height:540px;
  overflow:hidden;
  border-radius:28px;
  background:linear-gradient(135deg,var(--v16-navy-deep),var(--v16-navy));
  box-shadow:var(--v16-shadow);
  isolation:isolate;
  border:1px solid rgba(255,255,255,.08);
}
body.v16-premium .v15-hero-fusion-shell::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(circle at 11% 84%,rgba(255,255,255,.035),transparent 24rem),
    linear-gradient(120deg,rgba(255,255,255,.025),transparent 42%);
}
body.v16-premium .v15-hero-fusion-media{
  position:absolute;inset:0 0 0 43%;margin:0;z-index:0;overflow:hidden;background:#e7dfd4;
}
body.v16-premium .v15-hero-fusion-media img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:center 5%;
  transform:scale(1.002);
}
/* Page-specific portrait framing: keep full face + upper torso visible */
body.page-sobre.v16-premium .v15-hero-fusion-media img{object-position:center 3%}
body.page-contacto.v16-premium .v15-hero-fusion-media img{object-position:center 2%}
body.page-acceso-abierto.v16-premium .v15-hero-fusion-media img{object-position:center 1%}
body.v16-premium .v15-hero-fusion-media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,var(--v16-navy) 0%,rgba(16,54,83,.98) 5%,rgba(16,54,83,.86) 18%,rgba(16,54,83,.48) 35%,rgba(16,54,83,.10) 58%,rgba(16,54,83,0) 76%),
    linear-gradient(180deg,rgba(16,54,83,.02),rgba(16,54,83,.08));
}
body.v16-premium .v15-hero-fusion-copy{
  position:relative;z-index:3;width:min(56%,700px);min-height:540px;
  display:flex;flex-direction:column;justify-content:center;padding:66px 60px;color:#fff;
}
body.v16-premium .v15-hero-fusion-copy h1{
  margin:0;color:#fff;font-family:"Cormorant Garamond",serif;
  font-size:clamp(56px,6.1vw,84px);line-height:.95;font-weight:600;letter-spacing:-.045em;text-wrap:balance;
}
body.v16-premium .v15-hero-fusion-copy .v15-lead{
  margin:24px 0 0;max-width:600px;color:#e5edf2;font-size:18px;line-height:1.64;
}
body.v16-premium .v15-hero-fusion-rule{width:58px;height:2px;margin-top:27px;background:var(--v16-gold)}
body.v16-premium .v15-hero-fusion .eyebrow{color:#f0cb74!important}
body.v16-premium .v15-hero-fusion-mark{
  position:absolute;right:28px;bottom:-32px;z-index:2;font-family:"Cormorant Garamond",serif;
  font-size:150px;line-height:.85;font-weight:700;color:rgba(255,255,255,.075);letter-spacing:-.07em;pointer-events:none;
}

/* ---------- Editorial hero without photography ---------- */
body.v16-premium .v15-hero-editorial-shell{
  border-radius:28px;box-shadow:var(--v16-shadow);border:1px solid rgba(15,48,78,.06);
}
body.v16-premium .v15-hero-editorial-visual{
  background:
    radial-gradient(circle at 78% 20%,rgba(201,154,62,.08),transparent 19rem),
    linear-gradient(145deg,#fbf7ef,#fffdf9);
}
body.v16-premium .v15-editorial-point{transition:background .18s ease,padding-left .18s ease}
body.v16-premium .v15-editorial-point:hover{background:rgba(201,154,62,.045);padding-left:8px}

/* ---------- Mission / vision / enfoque: integrated editorial story ---------- */
body.v16-premium .v15-purpose-story{
  border-radius:24px;box-shadow:var(--v16-shadow);border:1px solid rgba(15,48,78,.06);
  background:linear-gradient(125deg,#f4efe6,#fffdf8 52%,#fff);
}
body.v16-premium .v15-purpose-photo{min-height:640px;background:#ece5da}
body.v16-premium .v15-purpose-photo img{object-position:center 14%}
body.v16-premium .v15-purpose-photo::after{
  background:linear-gradient(90deg,transparent 68%,rgba(255,253,248,.86) 100%);
}
body.v16-premium .v15-purpose-item{position:relative;padding-left:0;transition:padding-left .18s ease}
body.v16-premium .v15-purpose-item:hover{padding-left:8px}

/* ---------- Cards and content system ---------- */
body.v16-premium .card,
body.v16-premium .catalog-card,
body.v16-premium .side-card,
body.v16-premium .contact-side-card,
body.v16-premium .v13-policy-block{
  border-color:rgba(15,48,78,.10)!important;
  box-shadow:0 12px 32px rgba(15,48,78,.052)!important;
}
body.v16-premium .card:hover,
body.v16-premium .catalog-card:hover{
  transform:translateY(-3px)!important;box-shadow:0 20px 46px rgba(15,48,78,.09)!important;
}
body.v16-premium .section-heading{max-width:940px}
body.v16-premium .section-heading.center{margin-left:auto;margin-right:auto}
body.v16-premium .section-heading h2{max-width:880px;text-wrap:balance}
body.v16-premium .eyebrow{letter-spacing:.16em}
body.v16-premium .btn{transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
body.v16-premium .btn:hover{transform:translateY(-2px)}

/* ---------- Editorial dossier ---------- */
body.v16-premium .editorial-team{border-top:1px solid var(--v16-line)!important}
body.v16-premium .editor-profile{border-bottom:1px solid var(--v16-line)!important}
body.v16-premium .editor-avatar{border-radius:18px!important}
body.v16-premium .editor-meta{border-radius:14px!important;background:linear-gradient(145deg,#fff,#fbf7ef)!important}

/* ---------- Contact / institutional data ---------- */
body.v16-premium .v14-contact-strip{
  border:1px solid rgba(15,48,78,.10)!important;border-radius:18px!important;
  background:linear-gradient(135deg,#fffdf9,#f7f2e8)!important;box-shadow:var(--v16-shadow-soft)!important;
}
body.v16-premium .v14-contact-data{min-width:0}
body.v16-premium .v14-contact-data strong{overflow-wrap:anywhere}

/* ---------- Footer ---------- */
body.v16-premium .site-footer{
  background:linear-gradient(135deg,#0b2942,#103653 58%,#0d2f4b)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
body.v16-premium .site-footer a{transition:color .18s ease,opacity .18s ease}
body.v16-premium .site-footer a:hover{color:#efca72!important}

/* ---------- Tables and forms ---------- */
body.v16-premium table{max-width:100%}
body.v16-premium .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
body.v16-premium input,
body.v16-premium textarea,
body.v16-premium select{max-width:100%}
body.v16-premium input:focus,
body.v16-premium textarea:focus,
body.v16-premium select:focus{outline:3px solid rgba(36,127,141,.15);border-color:var(--v16-teal)!important}

/* ---------- Tablet ---------- */
@media(max-width:1000px){
  body.v16-premium .v15-hero-fusion-shell{min-height:500px}
  body.v16-premium .v15-hero-fusion-media{inset:0 0 0 39%}
  body.v16-premium .v15-hero-fusion-copy{width:61%;min-height:500px;padding:52px 42px}
  body.v16-premium .v15-purpose-photo{min-height:0;aspect-ratio:4/5}
}

/* ---------- Mobile: split content + image, no cropping of faces ---------- */
@media(max-width:760px){
  html{scroll-padding-top:84px}
  body.v16-premium .v15-hero-fusion{padding:16px 0 28px}
  body.v16-premium .v15-hero-fusion-shell{
    min-height:0;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;
  }
  body.v16-premium .v15-hero-fusion-copy{
    order:1;width:100%;min-height:0;padding:34px 24px 30px;justify-content:flex-start;
    background:linear-gradient(145deg,var(--v16-navy-deep),var(--v16-navy));
  }
  body.v16-premium .v15-hero-fusion-copy h1{font-size:clamp(44px,13.5vw,58px);line-height:.96}
  body.v16-premium .v15-hero-fusion-copy .v15-lead{font-size:16px;line-height:1.55;margin-top:18px}
  body.v16-premium .v15-hero-fusion-media{
    order:2;position:relative;inset:auto;width:100%;aspect-ratio:5/4;min-height:0;background:#e8e1d6;
  }
  body.v16-premium .v15-hero-fusion-media img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top!important;
  }
  body.v16-premium .v15-hero-fusion-media::after{
    background:linear-gradient(180deg,rgba(16,54,83,.14) 0%,rgba(16,54,83,0) 32%,rgba(16,54,83,.04) 100%);
  }
  body.v16-premium .v15-hero-fusion-mark{display:none}
  body.v16-premium .v15-purpose-story{border-radius:20px}
  body.v16-premium .v15-purpose-photo{aspect-ratio:4/5}
  body.v16-premium .v15-purpose-photo img{object-position:center top}
  body.v16-premium .v15-purpose-photo::after{background:linear-gradient(180deg,transparent 78%,rgba(255,253,248,.74) 100%)}
  body.v16-premium .editor-profile{grid-template-columns:1fr!important}
  body.v16-premium .editor-meta{grid-template-columns:1fr!important}
  body.v16-premium .v14-contact-strip{grid-template-columns:1fr!important}
  body.v16-premium .hero-actions{gap:10px}
  body.v16-premium .hero-actions .btn{width:100%;justify-content:center}
}

@media(max-width:520px){
  body.v16-premium .v15-hero-fusion-copy{padding:30px 20px 26px}
  body.v16-premium .v15-hero-fusion-media{aspect-ratio:1/1}
  body.v16-premium .v15-hero-fusion-rule{margin-top:22px}
  body.v16-premium .v15-purpose-copy{padding:30px 20px}
  body.v16-premium .editor-info h3{font-size:30px!important}
  body.v16-premium .editor-avatar{width:84px!important;height:84px!important;font-size:31px!important}
  body.v16-premium .section{padding-top:54px!important;padding-bottom:54px!important}
}

/* Avoid hover movement on touch devices */
@media(hover:none){
  body.v16-premium .card:hover,
  body.v16-premium .catalog-card:hover,
  body.v16-premium .btn:hover{transform:none!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body.v16-premium *,body.v16-premium *::before,body.v16-premium *::after{animation:none!important;transition:none!important}
}

/* ---------- Navigation responsive refinement ---------- */
@media(max-width:980px){
  body.v16-premium .header-content{position:relative}
  body.v16-premium .main-nav{
    z-index:1200;top:calc(100% + 8px);left:14px;right:14px;
    padding:18px 20px;border:1px solid rgba(15,48,78,.10);border-radius:18px;
    background:rgba(255,253,249,.985);box-shadow:0 20px 50px rgba(15,48,78,.14);
    backdrop-filter:blur(10px);
  }
  body.v16-premium .main-nav a,
  body.v16-premium .nav-group{width:100%}
  body.v16-premium .nav-group-label{width:100%;justify-content:space-between}
  body.v16-premium .nav-dropdown-menu{
    position:static!important;min-width:0!important;width:100%!important;margin-top:4px!important;
    box-shadow:none!important;border:0!important;background:transparent!important;padding:4px 0 4px 14px!important;
  }
}
@media(max-width:640px){
  body.v16-premium .utility-content>span{display:none}
  body.v16-premium .utility-content{justify-content:flex-end;min-height:30px;font-size:12px}
  body.v16-premium .brand-logo{max-width:44px}
  body.v16-premium .brand-name{font-size:25px}
  body.v16-premium .header-content{min-height:72px}
  body.v16-premium .menu-toggle{min-width:48px;min-height:46px;display:inline-grid;place-items:center}
  body.v16-premium .main-nav{left:10px;right:10px;padding:16px 18px}
}

/* ---------- Dense content protection ---------- */
@media(max-width:760px){
  body.v16-premium .cards.three-columns,
  body.v16-premium .cards.four-columns,
  body.v16-premium .three-columns,
  body.v16-premium .four-columns,
  body.v16-premium .two-columns,
  body.v16-premium .contact-intro-grid,
  body.v16-premium .footer-grid,
  body.v16-premium .footer-grid-pro{
    grid-template-columns:1fr!important;
  }
  body.v16-premium .card,
  body.v16-premium .side-card,
  body.v16-premium .contact-side-card{min-width:0}
  body.v16-premium h1,body.v16-premium h2,body.v16-premium h3{overflow-wrap:break-word}
  body.v16-premium .site-footer{padding-left:0!important;padding-right:0!important}
  body.v16-premium .footer-contact-row{flex-wrap:wrap;gap:8px 16px}
}


/* =========================================================
   V17 patch — compact desktop content + fused mobile hero
   ========================================================= */

/* Remove restrictive paragraph measure that was creating apparent empty gaps */
body.v16-premium p{max-width:none}
body.v16-premium .v15-hero-fusion-copy .v15-lead,
body.v16-premium .v15-hero-editorial-copy .v15-lead,
body.v16-premium .section-heading > p,
body.v16-premium .main-content > p,
body.v16-premium .v13-policy-block > p,
body.v16-premium .publication-block > p,
body.v16-premium .editor-meta p,
body.v16-premium .contact-definition-list dd,
body.v16-premium .card p,
body.v16-premium .catalog-card p,
body.v16-premium .side-card p,
body.v16-premium .v14-contact-data strong,
body.v16-premium .v14-contact-data span,
body.v16-premium .v15-purpose-card p,
body.v16-premium .v15-editorial-point span{max-width:none}

/* Desktop hero refinement: a little more photographic breathing room */
body.v16-premium .v15-hero-fusion-media{inset:0 0 0 40%}
body.v16-premium .v15-hero-fusion-copy{width:min(54%,680px)}
body.page-sobre.v16-premium .v15-hero-fusion-media img{object-position:center 8%}
body.page-contacto.v16-premium .v15-hero-fusion-media img{object-position:center 8%}
body.page-acceso-abierto.v16-premium .v15-hero-fusion-media img{object-position:center 10%}

/* Long-form and publication pages: reduce the sensation of empty space on desktop */
body.page-publicacion.v16-premium .publication-detail-grid{gap:40px}
body.page-publicacion.v16-premium .publication-detail-content{max-width:860px}
body.page-publicacion.v16-premium .publication-block,
body.page-etica-editorial.v16-premium .v13-policy-block,
body.page-normas-autores.v16-premium .v13-policy-block,
body.page-acceso-abierto.v16-premium .v13-policy-block,
body.page-privacidad.v16-premium .v13-policy-block,
body.page-revision-por-pares.v16-premium .v13-policy-block{max-width:980px}
body.page-proceso-editorial.v16-premium .section > .container > p:not(.eyebrow),
body.page-proceso-editorial.v16-premium .section > .container > h2,
body.page-etica-editorial.v16-premium .section > .container > p:not(.eyebrow),
body.page-etica-editorial.v16-premium .section > .container > h2,
body.page-revision-por-pares.v16-premium .section > .container > p:not(.eyebrow),
body.page-revision-por-pares.v16-premium .section > .container > h2{max-width:980px}

/* Scientific committee and editorial team cards should read as full-width content */
body.page-comite-cientifico.v16-premium .editor-meta,
body.page-equipo-editorial.v16-premium .editor-meta{padding:18px 20px}
body.page-comite-cientifico.v16-premium .editor-meta p,
body.page-equipo-editorial.v16-premium .editor-meta p{line-height:1.72}

/* Contact intro: better visual balance on desktop */
body.page-contacto.v16-premium .contact-intro-grid{gap:40px}
body.page-contacto.v16-premium .contact-side-card{max-width:380px;justify-self:end}

/* Tablet refinements */
@media(max-width:1000px){
  body.v16-premium .v15-hero-fusion-media{inset:0 0 0 37%}
  body.v16-premium .v15-hero-fusion-copy{width:60%;padding:48px 38px}
}

/* Unified mobile hero: image and text in one fused block with continuous gradient */
@media(max-width:760px){
  body.v16-premium .v15-hero-fusion-shell{
    min-height:430px;
    display:block;
    border-radius:20px;
  }
  body.v16-premium .v15-hero-fusion-media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    aspect-ratio:auto;
    background:#ddd3c6;
  }
  body.v16-premium .v15-hero-fusion-media img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 8%!important;
  }
  body.page-acceso-abierto.v16-premium .v15-hero-fusion-media img{object-position:center 10%!important}
  body.page-contacto.v16-premium .v15-hero-fusion-media img{object-position:center 9%!important}
  body.page-sobre.v16-premium .v15-hero-fusion-media img{object-position:center 7%!important}
  body.v16-premium .v15-hero-fusion-media::after{
    background:
      linear-gradient(180deg,rgba(8,31,49,.10) 0%,rgba(8,31,49,.18) 18%,rgba(8,31,49,.54) 54%,rgba(8,31,49,.86) 82%,rgba(8,31,49,.94) 100%),
      linear-gradient(90deg,rgba(16,54,83,.78) 0%,rgba(16,54,83,.42) 34%,rgba(16,54,83,.14) 58%,rgba(16,54,83,.04) 74%,rgba(16,54,83,0) 100%);
  }
  body.v16-premium .v15-hero-fusion-copy{
    position:relative;
    z-index:3;
    width:100%;
    min-height:430px;
    padding:26px 22px 24px;
    justify-content:flex-end;
    background:transparent;
  }
  body.v16-premium .v15-hero-fusion-copy h1{
    max-width:8.5ch;
    font-size:clamp(42px,12vw,54px);
    line-height:.94;
  }
  body.v16-premium .v15-hero-fusion-copy .v15-lead{
    margin-top:16px;
    max-width:26ch;
    font-size:15px;
    line-height:1.48;
    color:#eef3f7;
  }
  body.v16-premium .v15-hero-fusion-rule{margin-top:18px}
}

@media(max-width:520px){
  body.v16-premium .v15-hero-fusion-shell{min-height:406px}
  body.v16-premium .v15-hero-fusion-copy{min-height:406px;padding:24px 18px 22px}
  body.v16-premium .v15-hero-fusion-copy h1{font-size:clamp(38px,11.4vw,48px)}
  body.v16-premium .v15-hero-fusion-copy .v15-lead{font-size:14px;max-width:25ch}
}
