
.living-book-trigger{cursor:pointer;isolation:isolate;outline:none}
.living-book-trigger::after{
  content:"";position:absolute;inset:0;border-radius:inherit;
  background:radial-gradient(circle at 51% 52%,rgba(255,93,219,.08),transparent 33%);
  opacity:.1;transition:opacity .35s ease;pointer-events:none
}
.living-book-trigger:hover::after,.living-book-trigger:focus-visible::after{opacity:1}
.living-book-trigger img{transition:transform .5s ease,filter .5s ease}
.living-book-trigger:hover img,.living-book-trigger:focus-visible img{
  transform:scale(1.025);filter:saturate(1.08) brightness(1.05)
}
.living-book-open-prompt{
  position:absolute;z-index:3;left:50%;bottom:17px;transform:translateX(-50%) translateY(7px);
  padding:9px 15px;border:1px solid rgba(255,225,167,.3);border-radius:999px;
  background:rgba(8,7,38,.73);color:#ffe9ad;backdrop-filter:blur(13px);
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  opacity:0;transition:opacity .3s ease,transform .3s ease;white-space:nowrap
}
.living-book-trigger:hover .living-book-open-prompt,
.living-book-trigger:focus-visible .living-book-open-prompt{opacity:1;transform:translateX(-50%) translateY(0)}

.living-book-modal{
  position:fixed;z-index:250;inset:0;display:none;place-items:center;
  padding:18px;background:rgba(2,2,19,.2);opacity:0;visibility:hidden;
  backdrop-filter:blur(0);transition:opacity .45s ease,visibility .45s,background .45s ease,backdrop-filter .45s ease
}
.living-book-modal.visible{display:grid;visibility:visible}
.living-book-modal.open{opacity:1;background:rgba(2,2,19,.88);backdrop-filter:blur(13px)}
.living-book-stage{
  position:relative;width:min(1500px,96vw);height:min(900px,94vh);
  border:1px solid rgba(255,213,144,.28);border-radius:33px;overflow:hidden;
  color:#f8f0e3;background:
    radial-gradient(circle at 50% 38%,rgba(104,55,191,.22),transparent 32%),
    linear-gradient(145deg,#07071f,#090723 58%,#04051a);
  box-shadow:0 0 0 1px rgba(255,108,220,.08) inset,0 0 80px rgba(151,72,255,.19),0 35px 100px rgba(0,0,0,.6);
  transform:translateY(22px) scale(.965);transition:transform .55s cubic-bezier(.2,.8,.2,1)
}
.living-book-modal.open .living-book-stage{transform:none}
.living-book-stage::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;
  background-image:radial-gradient(circle at 12% 15%,rgba(255,255,255,.75) 0 1px,transparent 1.5px),
                   radial-gradient(circle at 74% 20%,rgba(255,133,235,.65) 0 1px,transparent 1.4px),
                   radial-gradient(circle at 38% 78%,rgba(99,225,255,.6) 0 1px,transparent 1.4px);
  background-size:180px 180px,230px 230px,290px 290px
}
.living-book-close{
  position:absolute;z-index:15;top:18px;right:18px;width:43px;height:43px;border-radius:50%;
  border:1px solid rgba(255,255,255,.18);background:rgba(12,9,48,.73);color:#fff;font-size:25px;
  cursor:pointer;backdrop-filter:blur(12px);transition:transform .25s ease,background .25s ease
}
.living-book-close:hover{transform:rotate(8deg) scale(1.05);background:rgba(114,45,132,.75)}

.living-book-opening{
  position:absolute;inset:0;display:grid;grid-template-columns:minmax(440px,1.25fr) minmax(330px,.75fr);
  align-items:center;gap:35px;padding:66px 68px 50px;transition:opacity .55s ease,transform .65s ease;
  z-index:3
}
.living-book-opening.leaving{opacity:0;transform:scale(1.04);pointer-events:none}
.living-book-cover-wrap{position:relative;display:grid;place-items:center;min-height:630px}
.living-book-cover-wrap::before{
  content:"";position:absolute;width:74%;aspect-ratio:1;border-radius:50%;
  border:1px solid rgba(255,210,130,.27);box-shadow:0 0 50px rgba(255,67,221,.18),inset 0 0 50px rgba(89,213,255,.06);
  animation:livingOrbit 13s linear infinite
}
.living-book-cover-wrap::after{
  content:"";position:absolute;width:52%;aspect-ratio:1;border-radius:50%;
  border:1px dashed rgba(196,151,255,.22);animation:livingOrbit 9s linear reverse infinite
}
.living-book-cover-wrap img{
  position:relative;z-index:2;width:100%;height:100%;max-height:730px;object-fit:contain;opacity:0;
  filter:drop-shadow(0 25px 45px rgba(0,0,0,.46));transform:translateY(12px) scale(.97);
  transition:opacity .6s ease,transform .7s ease
}
.living-book-cover-wrap img.loaded{opacity:1;transform:none}
.living-book-cover-glow{
  position:absolute;z-index:1;width:55%;height:28%;bottom:9%;border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,91,223,.32),transparent 70%);filter:blur(18px)
}
.living-book-opening-copy{text-align:center;padding:25px}
.living-book-opening-copy .eyebrow{color:#f0a8d2}
.living-book-opening-copy h2{
  margin:13px 0 20px;font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(60px,6vw,98px);font-weight:500;line-height:.92;
  background:linear-gradient(180deg,#ffe7a8,#d9a66a);-webkit-background-clip:text;background-clip:text;color:transparent
}
.living-book-opening-copy p{margin:0 auto 27px;color:#e8a6cc;font-family:Georgia,serif;font-size:24px;line-height:1.42}
.living-book-primary{
  position:relative;min-width:min(390px,100%);min-height:70px;border:1px solid rgba(255,221,151,.55);
  border-radius:999px;color:#fff;background:linear-gradient(135deg,#202065,#6736a5 55%,#aa3d91);
  box-shadow:0 0 0 5px rgba(255,98,219,.06),0 0 35px rgba(255,79,209,.3),inset 0 0 25px rgba(255,255,255,.07);
  text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:16px;cursor:pointer;overflow:hidden
}
.living-book-primary span{margin-left:18px;font-size:22px}
.living-book-primary::after{
  content:"";position:absolute;inset:-60%;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.24),transparent 61%);
  transform:translateX(-55%);transition:transform .7s ease
}
.living-book-primary:hover::after{transform:translateX(55%)}
.living-book-opening-copy small{display:block;margin:20px auto 0;max-width:42ch;color:#918eaf;line-height:1.5}

.living-book-reader{
  position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr auto;
  padding:48px 56px 30px;opacity:0;visibility:hidden;transform:scale(.97);
  transition:opacity .6s ease,visibility .6s,transform .65s ease
}
.living-book-reader.visible{opacity:1;visibility:visible;transform:none}
.living-book-tabs{display:flex;justify-content:center;gap:8px;padding-right:45px}
.book-tab{
  border:1px solid rgba(255,219,149,.22);border-bottom:0;border-radius:13px 13px 0 0;
  padding:9px 15px;color:#dfc5d5;background:rgba(24,13,58,.88);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  cursor:pointer
}
.book-tab.active{color:#ffe5a4;background:linear-gradient(180deg,rgba(105,48,129,.95),rgba(35,18,67,.93));box-shadow:0 -7px 18px rgba(255,83,212,.12)}

.living-book-spread{
  position:relative;align-self:center;display:grid;grid-template-columns:1fr 26px 1fr;
  width:min(1220px,100%);height:min(650px,68vh);margin:auto;perspective:1800px;
  filter:drop-shadow(0 28px 35px rgba(0,0,0,.48))
}
.book-page{
  position:relative;overflow:hidden;padding:58px 55px 50px;color:#34213a;
  background:
    linear-gradient(90deg,rgba(86,57,72,.08),transparent 12%),
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.72),transparent 28%),
    linear-gradient(145deg,#f0d9bc,#dbc09e 58%,#c9aa84);
  border:1px solid rgba(99,55,55,.26)
}
.book-page::before{
  content:"";position:absolute;inset:0;opacity:.22;pointer-events:none;
  background-image:repeating-linear-gradient(0deg,rgba(75,45,58,.06) 0 1px,transparent 1px 5px)
}
.book-page-left{border-radius:24px 5px 5px 24px;box-shadow:inset -22px 0 30px rgba(63,35,49,.14)}
.book-page-right{border-radius:5px 24px 24px 5px;box-shadow:inset 22px 0 30px rgba(63,35,49,.14)}
.book-spine{
  position:relative;z-index:2;background:linear-gradient(90deg,rgba(39,18,38,.42),rgba(242,210,171,.2),rgba(39,18,38,.42));
  box-shadow:0 0 12px rgba(20,10,25,.42)
}
.book-page-number{position:absolute;top:22px;color:#76546c;font-family:Georgia,serif;font-size:12px}
.book-page-left .book-page-number{left:30px}.book-page-right .book-page-number{right:30px}
.book-page-content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:center}
.book-page-content .page-eyebrow{color:#884e78;font-size:10px;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
.book-page-content h3{
  margin:12px 0 18px;font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(37px,4vw,62px);line-height:.98;font-weight:500;color:#4a2845
}
.book-page-content p{margin:0;color:#50384d;font-size:16px;line-height:1.65}
.book-page-content .opening-quote{
  max-width:25ch;margin:auto;text-align:center;font-family:Georgia,serif;font-size:clamp(25px,2.8vw,42px);line-height:1.35;color:#5e3156
}
.book-page-content .opening-quote strong{display:block;margin-bottom:20px;color:#8b4b78;font-size:.42em;letter-spacing:.18em;text-transform:uppercase}
.book-page-content .page-symbol{
  width:92px;height:92px;margin:0 auto 25px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(118,72,98,.35);font-size:38px;color:#8a4b7a;
  box-shadow:inset 0 0 22px rgba(121,69,105,.08)
}
.book-page-content .page-list{display:grid;gap:13px;margin-top:22px}
.book-page-content .page-list span{
  padding:13px 15px;border:1px solid rgba(103,62,87,.18);border-radius:14px;background:rgba(255,255,255,.18);
  color:#5d4056;font-size:14px
}
.book-page-turn{
  position:absolute;z-index:8;right:0;top:0;width:49.5%;height:100%;border-radius:5px 24px 24px 5px;
  transform-origin:left center;transform:rotateY(90deg);opacity:0;
  background:linear-gradient(90deg,#c5a57f,#f0d8ba 45%,#d1b18b);
  box-shadow:-18px 0 25px rgba(42,20,36,.27);pointer-events:none
}
.book-page-turn.turning{animation:pageTurn .72s cubic-bezier(.5,.02,.18,1)}
.living-book-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:12px}
.book-control{
  min-width:150px;padding:11px 17px;border:1px solid rgba(255,221,151,.23);border-radius:999px;
  color:#e1d7e8;background:rgba(20,13,56,.75);cursor:pointer
}
.book-control.primary{color:#fff;background:linear-gradient(135deg,#4a318a,#a13991)}
.book-control:disabled{opacity:.35;cursor:default}
.book-progress{display:flex;gap:7px}.book-progress span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.18)}
.book-progress span.active{background:#ffd786;box-shadow:0 0 12px rgba(255,215,134,.6)}
@keyframes pageTurn{
  0%{transform:rotateY(0);opacity:1}
  48%{transform:rotateY(-88deg);opacity:1}
  52%{transform:rotateY(88deg);opacity:1}
  100%{transform:rotateY(0);opacity:0}
}
@keyframes livingOrbit{to{transform:rotate(360deg)}}

@media(max-width:900px){
  .living-book-stage{height:96vh}
  .living-book-opening{grid-template-columns:1fr;padding:48px 22px 28px;overflow:auto}
  .living-book-cover-wrap{min-height:430px}.living-book-cover-wrap img{max-height:500px}
  .living-book-opening-copy{padding:10px}.living-book-opening-copy h2{font-size:58px}
  .living-book-reader{padding:60px 17px 22px;overflow:auto}
  .living-book-tabs{justify-content:flex-start;overflow:auto;padding-right:50px}
  .living-book-spread{grid-template-columns:1fr;height:auto;min-height:650px}
  .book-spine,.book-page-left{display:none}
  .book-page-right{border-radius:22px;min-height:650px}
  .book-page-turn{width:100%;border-radius:22px;transform-origin:left center}
}
@media(max-width:560px){
  .living-book-modal{padding:6px}.living-book-stage{width:100%;border-radius:24px}
  .living-book-cover-wrap{min-height:360px}.living-book-cover-wrap img{max-height:420px}
  .living-book-opening-copy p{font-size:20px}.living-book-primary{min-width:100%}
  .book-page{padding:52px 28px 38px}.book-page-content p{font-size:15px}
  .living-book-controls{gap:9px}.book-control{min-width:0;flex:1;font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .living-book-modal,.living-book-stage,.living-book-opening,.living-book-reader,
  .living-book-trigger img,.living-book-open-prompt{transition:none!important}
  .living-book-cover-wrap::before,.living-book-cover-wrap::after,.book-page-turn.turning{animation:none!important}
}


/* Libro Vivo completo · v1.1.7 */
.living-book-tabs{
  justify-content:flex-start;
  width:min(1220px,100%);
  margin:0 auto;
  padding-right:50px;
  overflow-x:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,215,134,.35) transparent;
}
.book-tab{flex:0 0 auto}
.book-tab.active{transform:translateY(-2px)}
.book-progress{
  min-width:154px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:8px 13px;
  border:1px solid rgba(255,221,151,.15);
  border-radius:999px;
  background:rgba(15,10,48,.56)
}
.book-progress-chapter{
  color:#f2c8dd;
  font-size:10px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase
}
.book-progress-count{
  color:#ffd786;
  font-size:11px;
  font-variant-numeric:tabular-nums
}
.book-page-content p+p{margin-top:12px}
.book-page-content .page-emphasis{
  margin-top:19px;
  padding:14px 16px;
  border-left:3px solid rgba(141,75,122,.55);
  background:rgba(255,255,255,.17);
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  line-height:1.5
}
.mind-planes{display:grid;gap:15px}
.mind-planes article{
  padding:17px 18px;
  border:1px solid rgba(103,62,87,.2);
  border-radius:18px;
  background:rgba(255,255,255,.17)
}
.mind-planes b{
  display:block;
  margin-bottom:6px;
  color:#713e68;
  font-family:Georgia,"Times New Roman",serif;
  font-size:21px
}
.mind-planes span{color:#553d51;font-size:14px;line-height:1.5}
.method-step{margin-top:15px}
.method-step b{
  display:block;margin-bottom:5px;color:#713e68;
  font-family:Georgia,"Times New Roman",serif;font-size:19px
}
.method-step p{font-size:14px;line-height:1.5}
.question-list{display:grid;gap:12px;margin:18px 0}
.question-list span{
  position:relative;padding:15px 15px 15px 43px;border-radius:16px;
  border:1px solid rgba(103,62,87,.18);background:rgba(255,255,255,.17);
  color:#593d54;font-size:14px;line-height:1.4
}
.question-list span::before{
  content:"✦";position:absolute;left:16px;top:14px;color:#9a557f
}
.final-quote{
  margin-top:24px;padding:22px;border-radius:19px;
  border:1px solid rgba(112,66,94,.24);
  background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(123,74,100,.08));
  color:#5b3452;font-family:Georgia,"Times New Roman",serif;
  font-size:22px;line-height:1.45;text-align:center
}
.final-quote strong{color:#7d426e;font-weight:600}
.final-quote.closing{font-size:20px}
.level-sheet{display:flex;flex-direction:column;justify-content:center;height:100%}
.level-index{
  align-self:flex-start;padding:7px 11px;border-radius:999px;
  background:rgba(120,65,102,.1);border:1px solid rgba(120,65,102,.2);
  color:#814a73;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase
}
.level-sheet h3{font-size:clamp(31px,3vw,48px);margin-bottom:12px}
.level-meta{
  margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(93,52,77,.18);
  color:#805b74;font-size:12px;font-weight:700;line-height:1.45
}
.level-sheet p{font-size:14px;line-height:1.55}
.level-goal{
  margin-top:18px;padding:14px 15px;border-radius:16px;
  background:rgba(255,255,255,.2);border:1px solid rgba(98,56,81,.18);
  color:#54394f;font-size:13px;line-height:1.48
}
.level-goal b{
  display:block;margin-bottom:4px;color:#7d426e;
  font-size:10px;letter-spacing:.14em;text-transform:uppercase
}
.instructor-path{display:grid;gap:15px;margin-bottom:20px}
.instructor-path article{
  display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:center;
  padding:16px;border-radius:18px;border:1px solid rgba(98,56,81,.19);
  background:rgba(255,255,255,.18)
}
.instructor-path article>span{
  width:49px;height:49px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(113,63,95,.3);color:#824670;
  font-family:Georgia,"Times New Roman",serif;font-size:19px
}
.instructor-path b{color:#713e68;font-family:Georgia,"Times New Roman",serif;font-size:20px}
.instructor-path p{margin-top:3px;font-size:13px}
.territory-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px
}
.territory-grid span{
  min-height:72px;display:grid;place-items:center;text-align:center;
  border:1px solid rgba(103,62,87,.18);border-radius:16px;
  background:rgba(255,255,255,.17);color:#68445f;
  font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase
}
.living-book-spread[data-chapter="apertura"] .book-page{
  background:
    radial-gradient(circle at 60% 20%,rgba(255,255,255,.8),transparent 24%),
    linear-gradient(145deg,#f3dec5,#d9bd99 58%,#c7a37b)
}
.living-book-spread[data-chapter="consciencia"] .book-page{
  background:
    radial-gradient(circle at 70% 18%,rgba(239,225,255,.64),transparent 26%),
    linear-gradient(145deg,#ecd9c4,#d7b9a2 57%,#c7a07e)
}
.living-book-spread[data-chapter="metodo"] .book-page{
  background:
    radial-gradient(circle at 30% 12%,rgba(255,246,220,.76),transparent 25%),
    linear-gradient(145deg,#eed9bb,#d4ba96 60%,#c2a27e)
}
.living-book-spread[data-chapter="recorrido"] .book-page{
  background:
    radial-gradient(circle at 80% 16%,rgba(225,231,255,.5),transparent 26%),
    linear-gradient(145deg,#ead5c0,#d2b49b 60%,#c29c7e)
}
.living-book-spread[data-chapter="laboratorio"] .book-page{
  background:
    radial-gradient(circle at 30% 16%,rgba(217,251,247,.42),transparent 27%),
    linear-gradient(145deg,#ead8bf,#cfbaa1 61%,#bfa081)
}
.living-book-spread[data-chapter="comunidad"] .book-page{
  background:
    radial-gradient(circle at 70% 16%,rgba(255,223,244,.5),transparent 26%),
    linear-gradient(145deg,#f0dac3,#d7b9a0 60%,#c5a07f)
}

@media(max-width:900px){
  .living-book-reader{
    grid-template-rows:auto minmax(0,1fr) auto;
    padding:58px 14px 16px;
    overflow:hidden
  }
  .living-book-tabs{padding-right:48px;margin-bottom:8px}
  .living-book-spread{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    height:auto;
    min-height:0;
    max-height:calc(96vh - 205px);
    overflow-y:auto;
    padding:2px 3px 18px;
    scroll-behavior:smooth
  }
  .book-spine{display:none}
  .book-page-left,.book-page-right{
    display:block;
    min-height:520px;
    border-radius:22px;
    box-shadow:0 14px 30px rgba(0,0,0,.25)
  }
  .book-page-turn{display:none}
  .living-book-controls{margin-top:9px}
  .book-progress{min-width:126px}
}
@media(max-width:560px){
  .book-page-left,.book-page-right{min-height:auto}
  .book-page{padding:51px 25px 35px}
  .book-page-content h3{font-size:36px}
  .level-sheet h3{font-size:32px}
  .mind-planes b{font-size:19px}
  .territory-grid{grid-template-columns:repeat(2,1fr)}
  .book-progress{min-width:104px;padding:8px}
  .book-progress-chapter{display:none}
  .book-progress-count{font-size:10px}
}

.system-vivo-landing{
  max-width:980px;margin:54px auto;padding:52px;border-radius:36px;text-align:center;
  background:radial-gradient(circle at 50% 12%,rgba(255,92,218,.14),transparent 34%),
             linear-gradient(145deg,rgba(21,16,78,.88),rgba(8,10,45,.94));
}
.system-vivo-landing h1{margin:10px 0 17px;font-size:clamp(42px,6vw,78px);letter-spacing:-.045em}
.system-vivo-landing p{max-width:700px;margin:0 auto;color:#d2d2ec;font-size:18px;line-height:1.6}
.system-vivo-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.system-vivo-landing small{display:block;margin-top:25px;color:#9997b9}
.system-vivo-landing .living-book-trigger{position:relative}
