:root{--paper:#fcf9f8;--ink:#262020;--muted:#655858;--wine:#81001c;--jade:#016b54;--line:#e4dad7;--serif:'DM Serif Display',Georgia,serif;--sans:'Work Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;font-family:var(--serif);font-weight:400}h2{font-size:clamp(30px,4vw,44px)}h3{font-size:26px}p{color:var(--muted)}.container{max-width:1280px;margin:auto;padding-inline:40px}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.masthead{display:flex;justify-content:space-between;align-items:center;padding-block:22px}.brand{font:32px/1.1 var(--serif);text-decoration:none;color:var(--wine)}.brand span{display:block;margin-top:7px;font:10px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.masthead-note{font-size:12px;color:var(--muted)}.nav-links{display:flex;gap:22px;align-items:stretch}.nav-links a{padding-block:16px;font-size:12px;line-height:1.45;text-decoration:none;max-width:210px;border-bottom:3px solid transparent;display:flex;align-items:center}.nav-links a:hover,.nav-links a[aria-current]{color:var(--wine);border-bottom-color:var(--wine)}.menu-toggle{display:none}.hero{color:white;background:radial-gradient(ellipse at 85% 20%,#ad43544d,transparent 55%),linear-gradient(115deg,#600017,#330911);position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:500px;height:500px;border:1px solid #ffffff12;border-radius:50%;right:-170px;top:30px;box-shadow:0 0 0 70px #ffffff04,0 0 0 140px #ffffff03;pointer-events:none}.hero-content{position:relative;z-index:1;padding-top:80px;padding-bottom:28px}.eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--jade);margin-bottom:20px}.hero .eyebrow{color:#e9c0c3}.hero h1{font-size:clamp(44px,6vw,78px);letter-spacing:-.035em;max-width:950px}.hero h1 em{font-weight:400;color:#f3c4b5}.hero p{color:#eadcdd;max-width:650px;font-size:18px;margin-top:25px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;padding:13px 22px;text-decoration:none;font-size:13px;font-weight:600;border:1px solid transparent;border-radius:3px;cursor:pointer}.button-light{background:var(--paper);color:var(--wine)}.button-outline{border-color:#ffffff60;color:white}.button-dark{background:var(--wine);color:white}.button:hover{filter:brightness(.93)}.hero-bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #ffffff25;margin-top:65px;padding-top:22px;color:#d2b5b8;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.section{padding-block:72px}.section-heading{max-width:730px;margin-bottom:32px}.section-heading p{margin-top:16px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.section-card{display:flex;flex-direction:column;background:white;border:1px solid var(--line);padding:28px;text-decoration:none;transition:transform .2s,border-color .2s}.section-card:hover{transform:translateY(-4px);border-color:var(--jade)}.card-number{font-size:11px;color:var(--jade);letter-spacing:.12em;display:block;margin-bottom:28px}.section-card h3{font-size:25px}.section-card p{font-size:14px;margin-top:14px;margin-bottom:25px}.card-link{margin-top:auto;display:flex;justify-content:space-between;color:var(--wine);font-size:12px;font-weight:600}.feature-band{background:var(--jade);padding-block:54px;color:white}.feature-inner{display:flex;gap:50px;align-items:center;justify-content:space-between}.feature-inner>div{max-width:750px}.feature-band .eyebrow{color:#b6dfd0}.feature-band p{color:#e0ece6;margin-top:18px}.feature-band .button{flex-shrink:0}.language-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.language-tags span{font-size:12px;padding:5px 12px;border:1px solid #ffffff40}.page-hero{background:#f1e9e5;border-bottom:1px solid var(--line);padding-block:40px 55px}.breadcrumb{display:block;font-size:12px;color:var(--muted);margin-bottom:30px}.page-hero h1{font-size:clamp(36px,5vw,60px);max-width:1000px;letter-spacing:-.025em}.page-hero p{max-width:720px;margin-top:20px;font-size:18px}.empty-state{padding:35px;border:1px dashed #cbbab4;background:#f8f3ef;max-width:900px}.empty-state h3{margin-bottom:12px}.empty-state p{max-width:650px}.status{display:inline-block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;background:#e9e0d8;color:#665144;padding:4px 10px;margin-bottom:18px}.prose>p{max-width:760px;margin-top:22px}.prose .empty-state{margin-top:35px}.text-link{display:inline-block;margin-top:25px;color:var(--wine);font-size:14px;text-underline-offset:5px}.related{margin-top:40px}.related h3{font-size:24px}.language-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.language-card{background:white;border:1px solid var(--line);padding:25px}.language-card .card-number{margin-bottom:15px}.muted{display:block;color:var(--muted);font-size:12px;margin-top:10px}.themes-heading{margin-top:50px}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.theme-card{border-top:2px solid var(--jade);padding-top:18px}.theme-card h3{font-size:22px}.theme-card p{font-size:13px;margin-top:12px}.section-soft{background:#f1edeb}.poster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.poster-card,.audio-card{border:1px solid var(--line);background:white}.poster-preview{display:block;background:#e7e1dc}.poster-preview img{display:block;width:100%;height:300px;object-fit:contain}.material-info{padding:24px}.material-info h3{font-size:25px}.material-info p{margin-top:10px;font-size:14px}.language-label{display:inline-block;color:var(--jade);font-size:12px;margin-top:8px}.audio-list{display:grid;gap:18px;max-width:900px}.audio-card audio{width:100%;margin-top:20px}.site-footer{padding-block:42px;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.site-footer .brand{font-size:25px}.site-footer p{font-size:12px;margin-top:12px}.admin-link{font-size:12px;text-decoration:none;color:var(--muted)}a:focus-visible,button:focus-visible{outline:3px solid #b27623;outline-offset:5px}.skip-link{position:fixed;top:-100px;left:15px;z-index:10;background:white;padding:12px}.skip-link:focus{top:10px}section[id]{scroll-margin-top:20px}.poster-grid>.empty-state{grid-column:1/-1}
@media(max-width:1100px){.nav-links{gap:15px}.nav-links a{font-size:11px}.container{padding-inline:28px}}
@media(max-width:999px){.menu-toggle{display:flex;align-items:center;gap:12px;background:transparent;color:var(--wine);border:1px solid var(--line);padding:8px 12px;border-radius:3px}.masthead-note{display:none}.site-navigation{display:none}.site-navigation.is-open{display:block}.nav-links{display:grid;gap:0;padding-bottom:16px}.nav-links a{max-width:none;font-size:14px;padding-block:12px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-inner{align-items:flex-start;flex-direction:column;gap:28px}}
@media(max-width:600px){.container{padding-inline:20px}.masthead{padding-block:18px}.brand{font-size:27px}.brand span{font-size:9px}.hero-content{padding-top:55px}.hero p{font-size:16px}.hero-bottom{flex-direction:column;margin-top:45px}.section{padding-block:45px}.cards,.language-grid,.poster-grid{grid-template-columns:1fr}.section-card{padding:24px}.card-number{margin-bottom:20px}.page-hero{padding-block:28px 40px}.page-hero p{font-size:16px}.empty-state{padding:25px}.footer-inner{flex-direction:column;align-items:flex-start}.theme-grid{gap:25px 18px}.theme-card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section-card{transition:none}}
.material-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:end;padding:24px;background:white;border:1px solid var(--line);margin-bottom:18px}.material-filters label{display:grid;gap:8px;font-size:13px;flex:1;min-width:200px}.material-filters select{font:inherit;padding:12px;border:1px solid var(--line);background:var(--paper);border-radius:3px;max-width:100%}#filterSummary{margin-bottom:28px;font-size:14px;color:var(--jade)}select:focus-visible{outline:3px solid #b27623;outline-offset:3px}

/* Identidad visual: azul y naranja observados en el sitio de Filológicas.
   Fuente: https://www.iifilologicas.unam.mx/index.php?page=imagen-institucional */
:root{--paper:#faf9f6;--ink:#222b45;--muted:#5c6271;--blue:#252e5d;--orange:#cd7035;--orange-ink:#99451f;--wine:var(--blue);--jade:var(--orange-ink);--line:#dce0e8}
.site-header{background:#fff;border-top:5px solid var(--blue)}
.institutional-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:20px;border-bottom:1px solid var(--line)}
.institution{display:flex;align-items:center;gap:18px;text-decoration:none;color:var(--blue);font-size:13px;line-height:1.45;font-weight:500}
.institution img{display:block;object-fit:contain;width:auto;height:70px}.filologicas-institution{text-align:right}.filologicas-institution img{height:66px}
.masthead{padding-block:18px}.brand{font-size:30px}.brand span{letter-spacing:.11em}.masthead-note{font-size:11px;letter-spacing:.04em}
.site-navigation{background:#f4f5f8;border-top:1px solid #edf0f5}.nav-links{gap:20px}.nav-links a{padding-block:15px;font-weight:500}.nav-links a:hover,.nav-links a[aria-current]{border-bottom-color:var(--orange)}
.hero{background:linear-gradient(115deg,#172044,#252e5d 70%,#313d70)}.hero:after{width:600px;height:600px;right:-240px;top:-130px;box-shadow:0 0 0 90px #ffffff03,0 0 0 180px #ffffff02}
.hero-content{padding-top:58px}.hero .eyebrow{color:#edc5ab;letter-spacing:.15em}.hero-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:70px;align-items:center}.hero h1{font-size:clamp(44px,5vw,70px);max-width:780px;line-height:1.08}.hero h1 em{color:#f4c5a6}.hero p{font-size:17px;color:#dce0ef;max-width:570px}.hero-actions{margin-top:28px}.hero .button-light{background:#f0c7a9;color:#20284d;border-color:#f0c7a9}.button{padding:14px 22px;border-radius:5px}.hero-bottom{margin-top:45px;color:#b8c1dc}.hero-editorial{background:#f6f0e5;color:var(--blue);padding:32px;position:relative;box-shadow:12px 12px 0 #101a3b55;border-top:5px solid var(--orange);transform:rotate(2deg)}.editorial-label{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#675341}.hero .editorial-title{font-family:var(--serif);font-size:clamp(30px,3vw,44px);line-height:1.15;color:var(--blue);margin-top:28px}.editorial-title em{color:var(--orange-ink)}.editorial-languages{display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;margin-top:25px;padding-top:20px;border-top:1px solid #d8cdbf;font-size:12px;color:#605e61}.editorial-foot{display:block;margin-top:24px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#746654}
.section-heading .eyebrow{color:var(--orange-ink)}.section-card{border-radius:7px;padding:30px;box-shadow:0 4px 16px #252e5d04;position:relative;overflow:hidden}.section-card:before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--blue);opacity:.16}.section-card:hover{border-color:#b4bbd1;box-shadow:0 12px 26px #252e5d0d}.section-card:hover:before{background:var(--orange);opacity:1}.card-number{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#f7eee5;color:var(--orange-ink);letter-spacing:0}.section-card h3{font-size:26px}.card-link{border-top:1px solid #edf0f5;padding-top:17px;font-size:12px}
.feature-band{background:#eceef5;color:var(--blue);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-band .eyebrow{color:var(--orange-ink)}.feature-band p{color:var(--muted)}.feature-band .button{background:var(--blue);color:white}.language-tags span{border-color:#ccd1e1;background:#fff;color:var(--blue);border-radius:4px;padding:6px 14px}
.page-hero{background:linear-gradient(100deg,#edf0f7,#f8f5ef);border-bottom:1px solid var(--line)}.page-hero .eyebrow{color:var(--orange-ink)}.language-card{border-radius:6px}.language-card .card-number{margin-bottom:20px}.theme-card{border-color:var(--orange)}.material-filters{border-radius:7px;box-shadow:0 5px 18px #252e5d05}.poster-card,.audio-card{border-radius:7px;overflow:hidden}.section-soft{background:#f0f2f6}.empty-state{background:#f5f6f9;border-color:#bcc4d7;border-radius:6px}.status{background:#e9edf5;color:var(--blue);border-radius:3px}.site-footer{background:#172044;color:white;border-top:4px solid var(--orange)}.site-footer .brand{color:white}.site-footer p,.site-footer .admin-link{color:#c5cce0}
a:focus-visible,button:focus-visible,select:focus-visible{outline-color:var(--orange-ink)}.menu-toggle{border-color:#d1d6e3;background:#f4f5f8}.button-dark:hover{background:#384578}
@media(max-width:1100px){.hero-layout{gap:35px}.hero-editorial{padding:25px}.nav-links{gap:14px}}
@media(max-width:999px){.hero-layout{grid-template-columns:1fr}.hero-editorial{max-width:480px;width:100%;transform:none}.hero-content{padding-top:40px}.hero h1{font-size:clamp(44px,7vw,68px)}.institution{font-size:11px;gap:12px}.institution img{height:58px}.filologicas-institution img{height:55px}}
@media(max-width:600px){.institutional-header{gap:18px;padding-block:15px}.institution{gap:8px;font-size:9px}.institution img{height:49px}.filologicas-institution img{height:43px}.filologicas-institution span{max-width:120px}.masthead{padding-block:15px}.hero-layout{gap:32px}.hero-editorial{padding:24px;box-shadow:6px 6px 0 #101a3b55}.hero h1{font-size:43px}.hero .editorial-title{font-size:34px;margin-top:18px}.hero .eyebrow{font-size:9px;line-height:1.7}.hero-bottom{font-size:9px}.section-card{padding:25px}.feature-band{padding-block:40px}.material-filters{padding:18px}.material-filters label{min-width:0;width:100%;flex-basis:100%}}

/* Cambio suave de página, con encabezado estable en navegadores compatibles. */
@view-transition{navigation:auto}
.site-header{view-transition-name:site-header}
::view-transition-old(root){animation:page-fade-out 140ms ease-out both}
::view-transition-new(root){animation:page-fade-in 240ms ease-out both}
::view-transition-old(site-header),::view-transition-new(site-header){animation:none;mix-blend-mode:normal}
.page-enter{animation:content-enter 240ms ease-out both}
.page-leaving{animation:page-fade-out 120ms ease-out both}
@keyframes page-fade-out{from{opacity:1}to{opacity:0}}
@keyframes page-fade-in{from{opacity:0}to{opacity:1}}
@keyframes content-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  .page-enter,.page-leaving{animation:none}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none}
}
