/*
Theme Name: Emmanuel Meraz
Theme URI: https://aemeraz.com/
Author: Emmanuel Meraz
Description: Tema WordPress basado en la versión V18 aprobada del sitio de Emmanuel Meraz.
Version: 1.0.1
Requires at least: 6.0
Text Domain: emmanuel-meraz
*/

:root{--ink:#172326;--petrol:#153f43;--petrol2:#0d3034;--paper:#fbf7ef;--white:#fff;--sand:#e7d8c4;--copper:#9a4f35;--line:#d9d2c7;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.7}a{color:var(--petrol);text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible{outline:3px solid #d26b42;outline-offset:4px}.skip-link{position:absolute;left:1rem;top:-10rem;background:#fff;color:#111;padding:.7rem 1rem;z-index:1000}.skip-link:focus{top:1rem}.wrap{width:min(calc(100% - 2.5rem),var(--max));margin:auto}.narrow{max-width:820px}.site-header{position:sticky;top:0;background:rgba(251,247,239,.97);border-bottom:1px solid var(--line);z-index:20}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-weight:800;letter-spacing:.08em;text-decoration:none;color:var(--ink)}.main-nav{display:flex;gap:1.25rem;align-items:center}.main-nav a{text-decoration:none;color:var(--ink);font-size:.92rem}.menu-button{display:none;background:transparent;border:2px solid var(--ink);padding:.5rem .8rem;font:inherit}.section{padding:6.5rem 0;scroll-margin-top:80px}.hero{min-height:78vh;display:grid;align-items:center}.hero-grid,.split{display:grid;grid-template-columns:1.08fr .92fr;gap:5rem;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:800;color:var(--copper);margin:0 0 1rem}h1,h2,h3,blockquote{font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(3rem,7vw,6.3rem);line-height:.98;letter-spacing:-.045em;margin:.2rem 0 1.5rem;max-width:900px}h2{font-size:clamp(2.2rem,4.5vw,4.2rem);line-height:1.08;letter-spacing:-.035em;margin:.2rem 0 1.5rem}h3{font-size:1.55rem;line-height:1.2}.lead{font-size:1.25rem;max-width:660px}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-block;padding:.78rem 1.15rem;border:2px solid var(--petrol);font-weight:750;text-decoration:none}.primary{background:var(--petrol);color:#fff}.secondary{color:var(--petrol);background:transparent}.light{background:#fff;color:var(--petrol2);border-color:#fff}.outline-light{color:#fff;border-color:#fff}.text-link{font-weight:750}.warm{background:#efe5d7}.intro{max-width:820px}.media-placeholder{min-height:560px;border:1px solid #bcb3a7;background:linear-gradient(135deg,#e5ddd0,#f5eee3);display:grid;place-items:center;text-align:center;color:#655e55;position:relative;overflow:hidden}.media-placeholder img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center center;display:block;background:#e5ddd0}.about-photo img,.story-photo img{object-fit:contain;object-position:center center;background:#e5ddd0}.media-placeholder small{font-size:.8rem}.cards{display:grid;gap:1.4rem;margin:3rem 0}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.card,.project,.article-card{border-top:3px solid var(--petrol);padding:1.4rem 0}.card p,.project p,.article-card p{font-size:.96rem}.book-placeholder{height:330px;background:#ded4c5;display:grid;place-items:center;margin-bottom:1.2rem;color:#625a50}.dark{background:var(--petrol2);color:#fff}.dark .eyebrow{color:#f0b49c}.dark-placeholder{background:#173b3f;border-color:#5e7779;color:#fff}.project{position:relative}.number{font-size:.75rem;letter-spacing:.1em;font-weight:bold}.comedy{border-top-style:dashed}.personal{background:#e8ddd0}.portrait{min-height:620px}blockquote{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.2;margin:2rem 0;padding-left:1.4rem;border-left:4px solid var(--copper)}.meta{font-size:.78rem!important;text-transform:uppercase;letter-spacing:.12em;font-weight:bold}.contact{background:#f2eadf}.center{text-align:center}.note{font-size:.85rem;color:#625e58}.site-footer{background:#111c1e;color:#fff;padding:3.5rem 0 1.5rem}.footer-grid{display:flex;justify-content:space-between;gap:3rem}.footer-grid nav{display:grid;grid-template-columns:repeat(2,auto);gap:.4rem 2rem}.site-footer a{color:#fff}.copyright{border-top:1px solid #425052;margin-top:2rem;padding-top:1rem;font-size:.82rem}@media(max-width:900px){body{font-size:17px}.menu-button{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:1rem 1.25rem 1.5rem;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.hero-grid,.split{grid-template-columns:1fr;gap:2.5rem}.hero{min-height:auto}.media-placeholder,.portrait{min-height:420px}.three,.four{grid-template-columns:1fr 1fr}.section{padding:4.5rem 0}}@media(max-width:620px){h1{font-size:clamp(2.7rem,15vw,4.4rem)}.three,.four{grid-template-columns:1fr}.footer-grid{display:block}.footer-grid nav{margin-top:2rem;grid-template-columns:1fr}.media-placeholder,.portrait{min-height:330px}.photo-pair{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.book-actions { display:flex; flex-wrap:wrap; gap:.85rem 1.1rem; align-items:center; }
.book-actions a { font-weight:700; }

/* Página Sobre mí */
.about-hero{padding-top:8rem;padding-bottom:5rem}.about-title{font-size:clamp(2.8rem,6vw,5.7rem);max-width:1000px}.story-grid{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:5rem;align-items:start}.story-grid h2{font-size:clamp(2rem,3.8vw,3.6rem)}.story-copy{max-width:760px}.story-copy p:first-child{margin-top:.35rem}.dark cite{color:#fff}@media(max-width:800px){.story-grid{grid-template-columns:1fr;gap:1rem}.about-hero{padding-top:5rem}.story-grid h2{margin-bottom:.5rem}}

/* Sobre mí: espacios reservados para fotografías */
.about-hero-grid{width:min(calc(100% - 2.5rem),var(--max));margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:4rem;align-items:center}.about-intro{max-width:820px}.about-photo{min-height:520px}.story-photo{grid-column:1/-1;min-height:360px;margin-top:2rem}@media(max-width:800px){.about-hero-grid{grid-template-columns:1fr;gap:2rem}.about-photo{min-height:360px}.story-photo{min-height:300px}}

/* Página Mis libros */
.books-hero{padding-top:8rem;padding-bottom:5rem}.books-subtitle{font-size:clamp(1.7rem,3vw,2.7rem);max-width:800px}.two{grid-template-columns:repeat(2,1fr)}@media(max-width:800px){.books-hero{padding-top:5rem}}@media(max-width:620px){.two{grid-template-columns:1fr}}

/* V12: portadas y fichas de tarjetero bibliográfico */
.cover-frame{aspect-ratio:3/4;overflow:hidden;background:#ded4c5;border:1px solid #bcb3a7;margin-bottom:1.2rem;display:grid;place-items:center}
.cover-frame img{display:block;width:100%;height:100%;object-fit:contain}
.cover-frame.is-placeholder{display:grid;place-items:center;text-align:center;padding:1.2rem;color:#625a50;font-size:.85rem}
.cover-frame.audio-cover{aspect-ratio:1/1}
.book-list{display:grid;gap:0;margin-top:3rem}
.book-entry-card{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:3rem;align-items:start;padding:2.5rem 0;border-top:1px dashed #8b8379}
.book-entry-card:first-child{border-top:none;padding-top:0}
.book-entry-card .cover-frame{margin-bottom:0}
.book-entry-card h3{font-size:clamp(1.5rem,2.6vw,2.1rem);margin:0 0 .4rem}
.book-entry-card .book-meta{font-family:'Courier New',Courier,monospace;text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin:0 0 .3rem}
.book-entry-card .book-author{font-family:'Courier New',Courier,monospace;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .8rem}
.book-entry-card p{font-size:.98rem}
.dark .book-entry-card{border-top-color:#5e7779}
.article-list{display:grid;gap:0;margin-top:3rem;max-width:760px}
.article-list .article-card{border-top:1px dashed #8b8379;padding:2.8rem 0;margin:0}
.article-list .article-card:first-child{border-top:none;padding-top:0}
.article-list .article-card h3{margin:0 0 .6rem;font-size:clamp(1.4rem,2.4vw,1.9rem)}
.article-list .article-card .meta{margin:0 0 .6rem}
.article-list .article-card p{max-width:700px}
.dark .cover-frame{background:#173b3f;border-color:#5e7779;color:#fff}
@media(max-width:800px){.book-entry-card{grid-template-columns:1fr;gap:1.5rem;padding:2rem 0}}
.entry-photo{aspect-ratio:3/4;overflow:hidden;background:#ded4c5;border:1px solid #bcb3a7}
.entry-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center center}
.dark .entry-photo{background:#173b3f;border-color:#5e7779}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
/* Página Proyectos */
.project-photo{min-height:390px}.dark .story-copy h3{color:#fff}@media(max-width:800px){.project-photo{min-height:300px}}
/* Página Contacto */
.contact-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:5rem;align-items:start}.contact-form{display:grid;gap:1.25rem}.field{display:grid;gap:.4rem}.field label{font-weight:750}.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:2px solid #8b8379;padding:.75rem}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid #d26b42;outline-offset:2px;border-color:var(--petrol)}.optional{font-weight:400;font-size:.85rem}.contact-aside{border-top:3px solid var(--petrol);padding-top:1.4rem}.contact-aside h2{font-size:2rem}.contact-aside h3{margin-top:2.2rem}.social-links{display:grid;gap:.55rem}.social-links a{font-weight:750}.form-status{font-weight:700}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:3rem}}

/* V10: estado accesible para contenidos aún no publicados */
.availability-note{display:inline-block;font-weight:700;padding:.75rem 1rem;border:1px solid currentColor;border-radius:.35rem;}
