
/* ============================================================
   Fuentes autoalojadas — davidmatrecano.com · 23/07/2026
   Sustituye la llamada bloqueante a la CDN externa de fuentes.
   Variable donde Google la ofrece (Cinzel, EB Garamond);
   estática en Cinzel Decorative. Subsets: latin + latin-ext.
   ============================================================ */
@font-face{font-family:'Cinzel Decorative';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cinzeldecorative-latin-normal-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cinzel Decorative';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cinzeldecorative-latin-ext-normal-400.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cinzel Decorative';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/cinzeldecorative-latin-normal-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cinzel Decorative';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/cinzeldecorative-latin-ext-normal-700.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/cinzel-latin-normal-var.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/cinzel-latin-ext-normal-var.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-italic-var.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-ext-italic-var.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-normal-var.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-ext-normal-var.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}

:root{
  --g:#C9A84C; --gl:#E8C97A; --gd:#8A6D2A;
  --cr:#8B1A1A; --crb:#B22222;
  --ink:#0A0705; --tl:#D4C4A0; --tm:#9A8060;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--ink);color:var(--tl);font-family:'EB Garamond',serif;line-height:1.7;}

/* ====== HEADER CANÓNICO ====== */
nav{position:fixed;top:0;left:0;width:100%;z-index:900;padding:0 36px;display:flex;align-items:center;justify-content:space-between;height:58px;background:rgba(10,7,5,0.98);border-bottom:1px solid rgba(201,168,76,0.22);box-shadow:0 4px 18px rgba(0,0,0,0.85),0 1px 0 rgba(201,168,76,0.15);box-sizing:border-box;}
.nlogo{font-family:'Cinzel',serif;font-size:14px;font-weight:700;color:var(--g);letter-spacing:3px;text-decoration:none;}
.nlogo span{color:var(--crb);}
.nlinks{display:flex;gap:18px;list-style:none;margin:0;padding:0;}
.nlinks a{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--tm);text-decoration:none;transition:color .3s;}
.nlinks a:hover{color:var(--g);}
.lr{display:flex;gap:4px;}
.lb{font-family:'Cinzel',serif;font-size:10px;letter-spacing:1px;padding:3px 10px;border:1px solid rgba(201,168,76,0.3);background:transparent;color:var(--tm);text-decoration:none;transition:all .3s;display:inline-flex;align-items:center;}
.lb.on,.lb:hover{background:var(--g);color:var(--ink);border-color:var(--g);font-weight:700;}
.tabs{position:fixed;top:58px;left:0;width:100%;z-index:800;background:rgba(18,13,9,0.98);border-bottom:1px solid rgba(201,168,76,0.1);display:flex;overflow-x:auto;padding:0 36px;box-sizing:border-box;}
.tab{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;padding:12px 16px;color:var(--tm);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap;transition:all .3s;}
.tab:hover{color:var(--g);}
.tab.on{color:var(--g);border-bottom-color:var(--g);}
@media (max-width:760px){
  nav{padding:0 16px;}
  .nlinks,
  .tabs{padding:0 16px;}
}

/* ====== LAYOUT ====== */
main{padding-top:110px;max-width:1180px;margin:0 auto;padding-left:24px;padding-right:24px;}

/* ====== BREADCRUMB ====== */
.breadcrumb{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2.5px;color:var(--tm);margin:8px 0 28px;text-transform:uppercase;}
.breadcrumb a{color:var(--tm);text-decoration:none;transition:color .3s;}
.breadcrumb a:hover{color:var(--g);}
.breadcrumb .sep{color:var(--gd);margin:0 10px;}
.breadcrumb .current{color:var(--g);}

/* ====== HERO DEL LIBRO ====== */
.bookhero{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:60px;align-items:start;margin-bottom:80px;}
.bh-cover-wrap{position:relative;}
.bh-cover{width:100%;height:auto;display:block;box-shadow:0 30px 80px rgba(0,0,0,0.85),0 0 0 1px rgba(201,168,76,0.4),0 0 60px rgba(201,168,76,0.18);border-radius:2px;}
.bh-saga-badge{position:absolute;top:-12px;left:-12px;background:linear-gradient(135deg,var(--cr),var(--crb));color:var(--gl);padding:8px 16px;font-family:'Cinzel',serif;font-size:10px;letter-spacing:3px;text-transform:uppercase;font-weight:700;box-shadow:0 4px 14px rgba(0,0,0,0.5);}
.bh-soon-badge{position:absolute;bottom:-12px;right:-12px;background:linear-gradient(135deg,var(--g),var(--gl));color:var(--ink);padding:8px 14px;font-family:'Cinzel',serif;font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:700;box-shadow:0 4px 14px rgba(0,0,0,0.5);}
.bh-meta{padding-top:8px;}
.bh-eyebrow{font-family:'Cinzel',serif;font-size:10px;letter-spacing:4px;color:var(--g);text-transform:uppercase;margin-bottom:14px;opacity:0.85;}
.bh-title{font-family:'Cinzel Decorative',serif;font-size:42px;font-weight:700;color:var(--gl);line-height:1.15;margin:0 0 20px;letter-spacing:1px;}
.bh-sub{font-family:'EB Garamond',serif;font-style:italic;font-size:20px;color:var(--tl);line-height:1.5;margin:0 0 28px;border-left:2px solid var(--g);padding-left:18px;opacity:0.92;}
.bh-divider{display:flex;align-items:center;gap:14px;margin:28px 0;}
.bh-divider .line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--g),transparent);opacity:0.5;}
.bh-divider .ornament{color:var(--g);font-size:14px;}
.bh-author{font-family:'Cinzel',serif;font-size:11px;letter-spacing:3px;color:var(--tm);text-transform:uppercase;margin-bottom:28px;}
.bh-author strong{color:var(--g);font-weight:700;}

/* Botones de compra */
.bh-buy{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
.bb{font-family:'Cinzel',serif;font-size:11px;letter-spacing:2px;padding:13px 22px;text-transform:uppercase;text-decoration:none;border:1px solid var(--g);transition:all .3s;font-weight:700;}
.bb.amz{background:var(--g);color:var(--ink);}
.bb.amz:hover{background:var(--gl);border-color:var(--gl);}
.bb.knd{background:transparent;color:var(--g);}
.bb.knd:hover{background:var(--g);color:var(--ink);}
.bb.gpl{background:transparent;color:var(--tm);border-color:rgba(201,168,76,0.4);}
.bb.gpl:hover{background:rgba(201,168,76,0.15);color:var(--g);border-color:var(--g);}
.bb.soon{background:transparent;color:var(--g);border-style:dashed;cursor:default;}

/* Idiomas disponibles */
.bh-langs{display:flex;flex-wrap:wrap;gap:6px;margin-top:24px;}
.bh-lang{display:inline-flex;align-items:center;gap:6px;font-family:'Cinzel',serif;font-size:10px;letter-spacing:1.5px;padding:5px 10px;border:1px solid rgba(201,168,76,0.3);color:var(--tm);text-decoration:none;transition:all .3s;}
.bh-lang:hover{background:var(--g);color:var(--ink);border-color:var(--g);}
.bh-lang.current{background:var(--g);color:var(--ink);border-color:var(--g);font-weight:700;}

/* ====== SECCIONES ====== */
.section{margin:80px 0;}
.section-eyebrow{font-family:'Cinzel',serif;font-size:10px;letter-spacing:4px;color:var(--g);text-transform:uppercase;margin-bottom:10px;opacity:0.85;}
.section-title{font-family:'Cinzel Decorative',serif;font-size:30px;color:var(--gl);margin:0 0 8px;letter-spacing:1px;font-weight:700;}
.section-divider{display:flex;align-items:center;gap:12px;margin:14px 0 36px;}
.section-divider .line{flex:1;height:1px;background:linear-gradient(90deg,var(--g),transparent);opacity:0.4;max-width:80px;}
.section-divider .ornament{color:var(--g);font-size:13px;letter-spacing:6px;}

.lede{font-family:'EB Garamond',serif;font-size:20px;font-style:italic;color:var(--gl);line-height:1.55;margin-bottom:30px;border-left:2px solid var(--g);padding-left:20px;}
.body-text{font-size:17px;line-height:1.75;color:var(--tl);max-width:780px;}
.body-text p{margin:0 0 18px;}
.body-text strong{color:var(--gl);font-weight:700;}
.body-text em{color:var(--gl);font-style:italic;}

/* Lista "vivirás en este libro" */
.experience-list{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px;}
.experience-list li{background:linear-gradient(135deg,rgba(139,26,26,0.08),rgba(10,7,5,0.6));border-left:2px solid var(--g);padding:18px 20px;font-size:16px;line-height:1.55;}
.experience-list li strong{display:block;font-family:'Cinzel',serif;font-size:11px;letter-spacing:2.5px;color:var(--g);text-transform:uppercase;margin-bottom:6px;font-weight:700;}

/* ====== DETALLES DEL LIBRO ====== */
.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;background:linear-gradient(135deg,rgba(139,26,26,0.06),rgba(10,7,5,0.4));border:1px solid rgba(201,168,76,0.18);padding:32px;}
.detail-item .lbl{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2.5px;color:var(--tm);text-transform:uppercase;margin-bottom:6px;}
.detail-item .val{font-family:'EB Garamond',serif;font-size:16px;color:var(--gl);}

/* ====== OTROS LIBROS ====== */
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px;margin-top:30px;}
.related-card{display:block;text-decoration:none;background:linear-gradient(135deg,rgba(139,26,26,0.08),rgba(10,7,5,0.5));border:1px solid rgba(201,168,76,0.15);padding:14px;transition:all .3s;}
.related-card:hover{border-color:var(--g);background:linear-gradient(135deg,rgba(139,26,26,0.18),rgba(10,7,5,0.6));transform:translateY(-3px);}
.related-card img{width:100%;height:auto;display:block;box-shadow:0 8px 22px rgba(0,0,0,0.55);margin-bottom:12px;}
.related-card .rt{font-family:'Cinzel',serif;font-size:11px;letter-spacing:1.5px;color:var(--gl);line-height:1.4;text-transform:uppercase;font-weight:700;}
.related-card .rs{font-family:'EB Garamond',serif;font-style:italic;font-size:12px;color:var(--tm);margin-top:5px;}

/* ====== CTA FINAL ====== */
.cta-block{margin:90px 0 60px;text-align:center;padding:50px 30px;background:linear-gradient(135deg,rgba(139,26,26,0.15),rgba(10,7,5,0.85));border:1px solid rgba(201,168,76,0.3);}
.cta-block h2{font-family:'Cinzel Decorative',serif;font-size:28px;color:var(--gl);margin:0 0 14px;}
.cta-block p{font-size:18px;font-style:italic;color:var(--tl);margin:0 0 28px;max-width:600px;margin-left:auto;margin-right:auto;}

/* ====== FOOTER ====== */
footer{margin-top:80px;padding:40px 24px 28px;border-top:1px solid rgba(201,168,76,0.18);text-align:center;}
.flogo{font-family:'Cinzel',serif;font-size:13px;font-weight:700;color:var(--g);letter-spacing:3px;margin-bottom:6px;}
.ftag{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2px;color:var(--tm);margin-bottom:18px;}
.oeof{color:var(--g);letter-spacing:8px;font-size:10px;margin-bottom:18px;opacity:0.6;}
.flinks{list-style:none;padding:0;margin:18px 0;display:flex;flex-wrap:wrap;justify-content:center;gap:18px;}
.flinks a{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2px;color:var(--tm);text-decoration:none;text-transform:uppercase;transition:color .3s;}
.flinks a:hover{color:var(--g);}
.fmotto{font-family:'Cinzel',serif;font-size:10px;letter-spacing:2.5px;color:rgba(197,160,89,0.5);margin:14px 0;font-style:italic;}
.fcopy{font-family:'EB Garamond',serif;font-size:11px;color:var(--tm);}

/* ====== RESPONSIVE ====== */
@media (max-width:860px){
  .bookhero{grid-template-columns:1fr;gap:38px;}
  .bh-cover-wrap{max-width:340px;margin:0 auto;}
  .bh-title{font-size:32px;}
  .bh-sub{font-size:18px;}
  .section-title{font-size:24px;}
  main{padding-left:18px;padding-right:18px;padding-top:115px;}
}
@media (max-width:480px){
  .bh-title{font-size:26px;}
  .bh-sub{font-size:16px;}
  .lede{font-size:17px;}
  .body-text{font-size:16px;}
  .experience-list{grid-template-columns:1fr;}
}
