*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:#17322e;background:#fbfaf7;line-height:1.55}a{text-decoration:none;color:inherit}header{height:72px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fbfaf7f2;z-index:5;border-bottom:1px solid #e5e2d9}.logo{display:flex;gap:10px;align-items:center;font-weight:800}.logo b{background:#174c3c;color:white;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}nav{display:flex;gap:22px;font-size:14px;font-weight:700}.nav-wrap{display:flex;align-items:center;gap:22px}.lang-switch{display:flex;align-items:center;gap:6px}.lang-switch button{background:none;border:none;cursor:pointer;color:#8b9490;padding:2px 4px;font:800 13px Arial,sans-serif;letter-spacing:.03em}.lang-switch button.active{color:#174c3c}.lang-switch span{color:#d8d3c5;font-size:13px}.hero{min-height:650px;padding:80px 7vw;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;background:linear-gradient(135deg,#faf6ed,#e7f1e9)}small{font-weight:800;letter-spacing:.15em;color:#b78732}.hero h1,.section h2,.cta h2{font-family:Georgia,serif;font-size:clamp(44px,6vw,78px);line-height:1;margin:16px 0 24px}.hero em{color:#174c3c;font-weight:400}.hero p{font-size:19px;max-width:650px;color:#5d6a67}.button{display:inline-block;background:#174c3c;color:#fff;padding:14px 22px;border-radius:30px;font-weight:800;margin:14px 0}.trust{margin-top:18px;font-size:13px;color:#64736f}.books{height:430px;position:relative}.books i{position:absolute;width:210px;height:300px;display:grid;place-items:center;text-align:center;border-radius:12px;box-shadow:0 30px 50px #17322e30;font:700 32px Georgia}.books i:nth-child(1){background:#173e56;color:white;transform:rotate(-10deg);left:5%;top:70px}.books i:nth-child(2){background:#e2bc69;left:28%;top:45px;z-index:2}.books i:nth-child(3){background:white;color:#174c3c;transform:rotate(10deg);left:52%;top:80px}.stats{background:#174c3c;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:28px 7vw;text-align:center}.stats b{display:block;font:700 30px Georgia}.section{padding:85px 7vw}.section h2{font-size:clamp(36px,4vw,54px)}.renacer{background:#f5efe3}.features{display:grid;grid-template-columns:1fr 1fr;gap:24px}.features article{background:#174c3c;color:#fff;border-radius:22px;padding:34px;min-height:290px;display:flex;flex-direction:column;align-items:flex-start}.features article:nth-child(2){background:#27475b}.features h3{font:700 30px Georgia;margin:18px 0 8px}.features strong{font-size:28px;margin-top:auto}.features a{background:#fff;color:#174c3c;padding:10px 16px;border-radius:25px;font-weight:800;margin-top:12px}.lead{color:#65736f}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px}.card{background:#fff;border:1px solid #e5e2d9;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px #17322e0b}.cover{height:300px;padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#174c3c,#2d7560)}.cover h3{font:700 27px Georgia;margin:auto 0}.cover span{font-size:12px}.c1{background:linear-gradient(145deg,#183f5c,#517b98)}.c2{background:linear-gradient(145deg,#6d4a1f,#d0a04e)}.c3{background:linear-gradient(145deg,#232c45,#6675a4)}.c4{background:linear-gradient(145deg,#326a42,#82aa62)}.c5{background:linear-gradient(145deg,#9b4c2e,#dc8756)}.c6{background:linear-gradient(145deg,#25396d,#5f70c2)}.c7{background:linear-gradient(145deg,#755c25,#c9a85e)}.body{padding:22px}.body small{font-size:10px}.body h3{font:700 21px Georgia;margin:8px 0}.body p{color:#65736f;min-height:72px}.buy{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.buy b{font-size:20px}.buy a{background:#174c3c;color:#fff;padding:10px 14px;border-radius:25px;font-size:13px;font-weight:800}.about{background:#eaf2ec;display:grid;grid-template-columns:.7fr 1.3fr;gap:50px}.about p{font-size:18px}.faq{max-width:1000px;margin:auto}.faq details{border-top:1px solid #ddd;padding:18px 0}.faq summary{font-weight:800;cursor:pointer}.cta{text-align:center;background:#174c3c;color:#fff;padding:85px 10vw}.cta h2{font-size:clamp(34px,4vw,52px)}.light{background:#fff;color:#174c3c}footer{padding:40px 7vw;background:#102d27;color:#dbe6e2}footer p{font-size:12px}@media(max-width:850px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:55px}.books{height:330px;margin-top:30px}.books i{width:155px;height:230px;font-size:24px}.stats{grid-template-columns:1fr 1fr;gap:24px}.features,.about{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.grid{grid-template-columns:1fr}.hero h1{font-size:48px}.books i:nth-child(1){left:0}.books i:nth-child(2){left:22%}.books i:nth-child(3){left:44%}.section{padding:65px 6vw}}
/* ---------- bilingual helper for content added after launch ---------- */
html[lang="en"] [data-lang-es]{display:none!important}html:not([lang="en"]) [data-lang-en]{display:none!important}
/* ---------- course series ---------- */
.series{margin-top:46px}.series-head{border-top:1px solid #e5e2d9;padding-top:26px;display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}.series-head h3{font:700 28px Georgia;margin:0}.series-head p{margin:0;flex:1 1 300px;color:#65736f}.series .grid{margin-top:24px}.tag{display:inline-block;background:#e7f1e9;color:#174c3c;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:800;letter-spacing:.12em}
/* ---------- multi-retailer purchase buttons ---------- */
.buy.multi{display:block}.buy.multi b{display:block;font-size:20px;margin-bottom:12px}.retailers{display:flex;flex-wrap:wrap;gap:8px}.retailers a{background:#174c3c;color:#fff;padding:10px 14px;border-radius:25px;font-size:12px;font-weight:800}.retailers a.r-amazon{background:#27475b}.retailers a.r-kobo{background:#9b4c2e}
/* ---------- lead form ---------- */
.leads{background:#f5efe3}.leads .lead-wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.leads h2{margin-bottom:18px}.leads ul{padding-left:20px;color:#5d6a67;margin:0 0 18px}.leads li{margin-bottom:8px}.leads .note{font-size:13px;color:#64736f}.lead-form{background:#fff;border:1px solid #e5e2d9;border-radius:22px;padding:30px;box-shadow:0 10px 30px #17322e0b}.lead-form label.field{display:block;margin-bottom:16px;font-size:13px;font-weight:800;color:#17322e}.lead-form input[type=text],.lead-form input[type=email],.lead-form input[type=tel]{width:100%;margin-top:7px;padding:12px 14px;border:1px solid #d9d5c8;border-radius:12px;font:400 15px Arial,sans-serif;color:#17322e;background:#fbfaf7}.lead-form input:focus{outline:2px solid #174c3c;outline-offset:1px}.lead-form fieldset{border:0;padding:0;margin:0 0 18px}.lead-form legend{font-size:13px;font-weight:800;padding:0;margin-bottom:10px}.check{display:flex;gap:10px;align-items:flex-start;margin-bottom:9px;font-size:14px;font-weight:400;color:#5d6a67}.check input{margin-top:4px;flex:0 0 auto}.consent{border-top:1px solid #eae6db;padding-top:16px;font-size:13px;line-height:1.5}.lead-form button{background:#174c3c;color:#fff;border:0;border-radius:30px;padding:14px 26px;font:800 15px Arial,sans-serif;cursor:pointer;margin-top:18px}.lead-form button[disabled]{opacity:.6;cursor:progress}.form-status{margin:14px 0 0;font-size:14px;font-weight:700;min-height:20px}.form-status .st{display:none}.form-status[data-state=sending] .st-sending,.form-status[data-state=ok] .st-ok,.form-status[data-state=error] .st-err{display:inline}.form-status[data-state=ok]{color:#174c3c}.form-status[data-state=error]{color:#9b3232}.privacy-note{font-size:12px;color:#64736f;margin-top:14px}
@media(max-width:850px){.leads .lead-wrap{grid-template-columns:1fr;gap:32px}}@media(max-width:560px){.lead-form{padding:22px}.series-head h3{font-size:24px}.retailers a{padding:10px 12px}}
/* ---------- new catalogue sections: keep buy rows aligned across a row ---------- */
.cursos .card,.nuevos .card{display:flex;flex-direction:column}.cursos .cover,.nuevos .cover{flex:none}.cursos .body,.nuevos .body{flex:1;display:flex;flex-direction:column}.cursos .buy,.nuevos .buy{margin-top:auto}.cursos .lead{margin-bottom:0}

/* ---------- author section: portrait, quote and Amazon author link ---------- */
.about .who{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.author-card{margin:8px 0 0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.portrait{width:220px;height:220px;border-radius:50%;overflow:hidden;background:#dfe9e1;border:5px solid #fff;box-shadow:0 12px 30px #17322e26}.author-card figcaption strong{display:block;font:700 22px Georgia,serif;color:#174c3c}.author-card figcaption span{display:block;margin-top:4px;font-size:13px;font-weight:700;letter-spacing:.06em;color:#64736f}.portrait img{width:100%;height:100%;object-fit:cover;display:block}.about blockquote{margin:0 0 24px;padding-left:20px;border-left:3px solid #c8ddcd;font:italic 21px/1.5 Georgia,serif;color:#174c3c}.about .bio p+p{margin-top:16px}.about .button{margin:20px 0 0}
@media(max-width:850px){.about .who{align-items:center;text-align:center}.portrait{width:170px;height:170px}.about blockquote{font-size:19px}}

/* Vista previa premium: mantiene catálogo y enlaces */
body{background:#f7f8fa;color:#192b43;font-family:Arial,Helvetica,sans-serif}
header{background:#fff;border-bottom:1px solid #e2e7ed}
.logo b,.button,.buy a,.retailers a,.stats,.cta{background:#163658}
.hero{background:linear-gradient(135deg,#fff,#eef3fa)}
.section h2,.hero h1{color:#163658}
.renacer{background:#f1f5f9}.features article{background:#163658}.features article:nth-child(2){background:#263d61}
.grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:22px}
.card{border-radius:12px;border:1px solid #e4e8ef;box-shadow:0 7px 24px #142b4810;display:flex;flex-direction:column}
.card .body{display:flex;flex-direction:column;flex:1;padding:16px}
.card .body h3{font:700 17px/1.35 Arial,Helvetica,sans-serif;min-height:0}
.card .body p{font-size:13px;min-height:0;flex:1}
.card .buy{margin-top:auto;gap:10px;flex-wrap:wrap}
.card .buy b{color:#18395e}.cover{height:290px;display:flex;align-items:center;justify-content:center;padding:12px}
.cover-real{background:#eef1f5}.cover-real img{display:block;width:100%;height:100%;object-fit:contain}
.cover-pending{background:#e8edf4;color:#263b55;text-align:center;gap:10px;justify-content:center}
.cover-pending strong{font:700 17px/1.35 Arial,sans-serif}.cover-pending span{font-size:10px;letter-spacing:.08em}
.cover-pending .pending-label{font-weight:800;color:#697e96}
.buy a,.retailers a{border-radius:7px}.retailers a.r-amazon{background:#263d61}.retailers a.r-payhip{background:#167d75}
.preview-warning{position:relative;z-index:10;text-align:center;background:#fff0ce;color:#5b3b00;padding:10px;font:700 13px Arial}
@media(max-width:560px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cover{height:210px}.card .body{padding:10px}.card .body h3{font-size:14px}.card .body p{font-size:12px}.retailers a{font-size:11px}}

/* Preview only: flag missing price data */
.price-pending{display:block;font-size:13px;font-weight:700;color:#996525;margin-bottom:10px}.buy.multi .price-pending{margin-bottom:10px}

/* Vista previa profesional, compatible con el sitio actual */
body{background:#f6f8fb;color:#1d2939}.section{padding-top:70px;padding-bottom:70px}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.card{display:flex;flex-direction:column;border:1px solid #e4e9f0;border-radius:12px;box-shadow:0 5px 16px #1018280c;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #10182818}.cover{height:310px;min-height:310px;padding:20px;overflow:hidden;border-radius:0;background:#eef2f7!important;color:#25324c;justify-content:center;align-items:center;text-align:center}.cover h3{font:700 20px/1.22 Georgia,serif;margin:10px 0}.cover small,.cover span{color:#667085}.cover-real{padding:0}.cover-real img{width:100%;height:100%;object-fit:contain;display:block;background:#f0f2f5}.body{padding:16px;display:flex;flex:1;flex-direction:column}.body h3{font:700 17px/1.3 Arial,sans-serif;color:#182c46}.body p{font-size:13px;min-height:0}.buy{margin-top:auto;padding-top:12px;gap:10px;flex-wrap:wrap}.buy a,.retailers a{border-radius:7px}.catalog-tools{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}.catalog-tools input{flex:1;min-width:220px;max-width:520px;padding:13px 15px;border:1px solid #ccd5e1;border-radius:9px;font-size:15px;background:#fff}.catalog-tools span{font-size:13px;color:#667085}.preview-warning{background:#fff4d9;color:#815500;text-align:center;padding:10px;font-size:13px;font-weight:700}.features article{border-radius:12px}@media(max-width:1100px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cover{height:210px;min-height:210px;padding:8px}.cover h3{font-size:14px}.body{padding:11px}.body h3{font-size:14px}.body p{font-size:12px}.retailers a{font-size:11px;padding:8px}.section{padding:45px 4vw}}

/* Portadas completas en todas las fichas (las de .cover-pending se mostraban recortadas) */
.cover-pending{padding:0}.cover-pending img{width:100%;height:100%;object-fit:contain;display:block;background:#f0f2f5}

/* «Precio por confirmar» era una nota interna de la vista previa: los precios ya están confirmados */
html:not(.vista-previa) .price-pending{display:none}

/* Ficha de producto (ficha.js): toca una tarjeta para ver portada grande, descripción y compra */
.card.con-ficha{cursor:pointer}.card.con-ficha:focus-within{box-shadow:0 12px 28px #10182818}
.ver-ficha{background:#fff;color:#163658;border:1.5px solid #163658;border-radius:7px;padding:9px 14px;font:800 13px Arial,sans-serif;cursor:pointer}
.ver-ficha:hover,.ver-ficha:focus-visible{background:#eef2f8}.buy.multi .ver-ficha{margin-top:8px}
html.ficha-abierta{overflow:hidden}
dialog.ficha{width:min(960px,94vw);max-height:92vh;padding:0;border:none;border-radius:16px;background:#fff;color:#1d2939;box-shadow:0 30px 80px #0f1b2e55;overflow:auto}
dialog.ficha::backdrop{background:#0f1b2ecc}
.ficha-cerrar{position:sticky;top:10px;float:right;margin:10px 10px -50px 0;z-index:2;width:40px;height:40px;border-radius:50%;border:none;background:#fff;color:#163658;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 10px #0f1b2e33}
.ficha-contenido{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:34px;padding:34px}
.ficha-portada{background:#f0f2f5;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:320px;overflow:hidden}
.ficha-portada img{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain}
.ficha-info{display:flex;flex-direction:column;align-items:flex-start}.ficha-info>small{font-size:11px}
.ficha-info h2{font:700 clamp(24px,3vw,34px)/1.2 Georgia,serif;color:#182c46;margin:10px 0 14px}
.ficha-desc p{font-size:16px;line-height:1.65;color:#475467;margin:0 0 12px}
.ficha-compra{width:100%;margin:10px 0 18px;padding:18px;border-radius:12px;background:#f6f8fb;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ficha-compra b{font-size:28px;color:#18395e}.ficha-compra a,.ficha-compra .retailers a{padding:13px 20px;font-size:15px}
.ficha-compra.multi{display:block}.ficha-compra.multi b{margin-bottom:12px}
.ficha-datos{list-style:none;margin:0;padding:0;font-size:14px;color:#475467}
.ficha-datos li{padding:7px 0 7px 26px;position:relative;border-top:1px solid #edf0f4}
.ficha-datos li:before{content:"✓";position:absolute;left:4px;color:#167d75;font-weight:800}
.ficha-relacionados{grid-column:1/-1;border-top:1px solid #e4e9f0;padding-top:22px}
.ficha-relacionados h3{font:700 20px Georgia,serif;color:#182c46;margin:0 0 14px}
.ficha-fila{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ficha-fila button{background:#fff;border:1px solid #e4e9f0;border-radius:10px;padding:8px;cursor:pointer;text-align:left;font:700 13px/1.3 Arial,sans-serif;color:#182c46;display:flex;flex-direction:column;gap:8px}
.ficha-fila button:hover,.ficha-fila button:focus-visible{border-color:#163658}
.ficha-fila img{width:100%;height:150px;object-fit:contain;background:#f0f2f5;border-radius:6px}
@media(max-width:760px){dialog.ficha{width:100vw;max-width:100vw;max-height:100%;height:100%;border-radius:0}.ficha-contenido{grid-template-columns:1fr;gap:20px;padding:20px}.ficha-portada{min-height:0}.ficha-portada img{max-height:52vh}.ficha-fila{grid-template-columns:repeat(2,minmax(0,1fr))}.ficha-fila img{height:120px}}
@media(max-width:560px){.ver-ficha{padding:8px 10px;font-size:11px}}

/* ---------- store buttons: Amazon (dark slate + amber) · Payhip (teal) ---------- */
.retailers{display:flex;flex-direction:column;gap:8px;width:100%}.retailers a,.features a.r-payhip{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:8px;font:800 13px/1.2 Arial,sans-serif;color:#fff;text-align:center;letter-spacing:.01em;transition:background-color .15s,box-shadow .15s,transform .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.retailers a::before,.features a.r-payhip::before{content:"";flex:none;width:8px;height:8px;border-radius:50%}
.retailers a.r-amazon{background:#232f3e;box-shadow:inset 0 -3px 0 #f0a33a}.retailers a.r-amazon::before{background:#f0a33a}
.retailers a.r-amazon:hover,.retailers a.r-amazon:focus-visible{background:#37475a}
.retailers a.r-payhip,.features a.r-payhip{background:#127369;box-shadow:inset 0 -3px 0 #7fd1c2}.retailers a.r-payhip::before,.features a.r-payhip::before{background:#7fd1c2}
.retailers a.r-payhip:hover,.retailers a.r-payhip:focus-visible,.features a.r-payhip:hover,.features a.r-payhip:focus-visible{background:#0e5c54}
.retailers a:focus-visible,.features a.r-payhip:focus-visible{outline:3px solid #f0a33a;outline-offset:2px}
.retailers a:active,.features a.r-payhip:active{transform:translateY(1px)}
.features a.r-payhip{padding:12px 22px;font-size:14px;margin-top:14px}
.buy.multi .ver-ficha{width:100%;min-height:40px}
.ficha-compra .retailers{flex-direction:row;flex-wrap:wrap}.ficha-compra .retailers a{flex:1 1 200px;min-height:48px;font-size:15px}
@media(max-width:560px){.retailers a{min-height:44px;padding:9px 8px;font-size:12px}.retailers a::before{width:7px;height:7px}.ficha-compra .retailers a{flex-basis:100%}}
/* Nueva colección: filtros por categoría. [hidden] también oculta las tarjetas que la búsqueda descarta (.card usa display:flex) */
[hidden]{display:none!important}
.cat-filtros{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.cat-btn{border:1px solid #ccd5e1;background:#fff;color:#18395e;border-radius:999px;padding:9px 15px;font:700 13px Arial,sans-serif;cursor:pointer;min-height:40px;transition:background-color .15s,color .15s}.cat-btn:hover{background:#eef2f8}.cat-btn.active{background:#163658;border-color:#163658;color:#fff}.cat-btn:focus-visible{outline:3px solid #f0a33a;outline-offset:2px}.cat-vacio{margin-top:30px;color:#667085}
@media(max-width:560px){.cat-filtros{flex-wrap:nowrap;overflow-x:auto;margin:18px -4vw 0;padding:0 4vw 6px;-webkit-overflow-scrolling:touch}.cat-btn{flex:none;font-size:12px;padding:8px 12px}}

/* Ficha sin portada propia (portada aún no disponible en Payhip): título en texto, sin imagen de otra edición */
.cover-pending.sin-portada{padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(160deg,#eef2f8,#dfe7f2)!important}
.cover-pending.sin-portada strong{font:700 17px/1.3 Georgia,serif;color:#163658}
@media(max-width:560px){.cover-pending.sin-portada{padding:10px;gap:8px}.cover-pending.sin-portada strong{font-size:13px}.cover-pending.sin-portada span{font-size:8px}}
/* Subtítulo del título completo de Payhip, más discreto que el título principal */
.card .body h3 .subt{display:block;margin-top:5px;font:400 .82em/1.35 Arial,sans-serif;color:#52627a}
.ficha-info h2 .subt{display:block;margin-top:8px;font:400 .55em/1.35 Arial,sans-serif;color:#52627a}
/* Autor de la ficha («De Juan Coss»), línea corta bajo el título */
.card .body p.autor,.ficha-desc p.autor{flex:0 0 auto;margin:0 0 6px;font-size:12px;font-weight:700;color:#52627a}
.card .body p.aviso,.ficha-desc p.aviso{flex:0 0 auto;margin:6px 0 0;font-size:11px;font-style:italic;color:#6b5a2e}
