
.evlbe,
.evlbe * { box-sizing:border-box !important; }

.evlbe {
  --evlbe-decor-color:#b18a4d;
  width:100% !important;
  position:relative !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  background:transparent !important;
  isolation:isolate !important;
}

.evlbe-stage {
  width:100% !important;
  display:grid !important;
  place-items:center !important;
  padding:clamp(12px,2vw,28px) !important;
  perspective:2400px !important;
  background:transparent !important;
}

/* ---------------- STATES ---------------- */
.evlbe-closed,
.evlbe-open {
  grid-area:1/1 !important;
  width:100% !important;
  display:grid !important;
  place-items:center !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  background:transparent !important;
}

.evlbe-closed.is-active,
.evlbe-open.is-active {
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* ---------------- CLOSED BOOK ---------------- */
.evlbe-cover-book {
  width:min(92vw,690px) !important;
  aspect-ratio:691/864 !important;
  position:relative !important;
  transform-style:preserve-3d !important;
  transform-origin:12% 50% !important;
  will-change:transform,opacity !important;
  transition:transform .72s cubic-bezier(.18,.72,.2,1), opacity .46s ease !important;
  filter:
    drop-shadow(0 32px 30px rgba(28,15,8,.40))
    drop-shadow(12px 16px 12px rgba(28,15,8,.22)) !important;
}

.evlbe-closed.is-opening .evlbe-cover-book {
  transform:rotateY(-72deg) translateZ(18px) scale(.96) !important;
  opacity:.08 !important;
}

.evlbe-ground-shadow {
  position:absolute !important;
  z-index:-1 !important;
  left:10% !important;
  right:4% !important;
  bottom:-4% !important;
  height:13% !important;
  border-radius:50% !important;
  background:rgba(30,15,7,.38) !important;
  filter:blur(24px) !important;
  pointer-events:none !important;
}

.evlbe-cover-photo {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
  max-width:none !important;
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
  pointer-events:none !important;
}



.evlbe .evlbe-cover-eyebrow {
  all:unset;
  display:block !important;
  width:100% !important;
  font-family:var(--evlbe-ce-font) !important;
  font-size:min(var(--evlbe-ce-size),2.15vw) !important;
  font-weight:var(--evlbe-ce-weight) !important;
  color:var(--evlbe-ce-color) !important;
  letter-spacing:var(--evlbe-ce-space) !important;
  line-height:1.25 !important;
  text-align:center !important;
  text-transform:uppercase !important;
}

.evlbe .evlbe-cover-title {
  all:unset;
  display:block !important;
  width:100% !important;
  margin:4.1% 0 3.5% !important;
  font-family:var(--evlbe-ct-font) !important;
  font-size:min(var(--evlbe-ct-size),7.15vw) !important;
  font-weight:var(--evlbe-ct-weight) !important;
  color:var(--evlbe-ct-color) !important;
  letter-spacing:var(--evlbe-ct-space) !important;
  line-height:1 !important;
  text-align:center !important;
  white-space:nowrap !important;
}

.evlbe .evlbe-cover-dates {
  all:unset;
  display:block !important;
  width:100% !important;
  margin-top:3.2% !important;
  font-family:var(--evlbe-cd-font) !important;
  font-size:min(var(--evlbe-cd-size),2.3vw) !important;
  font-weight:var(--evlbe-cd-weight) !important;
  color:var(--evlbe-cd-color) !important;
  letter-spacing:var(--evlbe-cd-space) !important;
  text-align:center !important;
}

.evlbe .evlbe-open-btn {
  all:unset;
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:auto 0 0 !important;
  min-height:34px !important;
  padding:6px 10px !important;
  font-family:var(--evlbe-cb-font) !important;
  font-size:min(var(--evlbe-cb-size),2.55vw) !important;
  font-weight:var(--evlbe-cb-weight) !important;
  color:var(--evlbe-cb-color) !important;
  letter-spacing:var(--evlbe-cb-space) !important;
  line-height:1.1 !important;
  text-align:center !important;
  cursor:pointer !important;
  transition:opacity .18s ease, background .18s ease, transform .18s ease !important;
}


.evlbe .evlbe-open-btn--text {
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:5px 8px !important;
}
.evlbe .evlbe-open-btn--text:hover {
  opacity:.76 !important;
}

.evlbe .evlbe-open-btn--underline {
  border:0 !important;
  border-bottom:1px solid currentColor !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:5px 4px 4px !important;
}

.evlbe .evlbe-open-btn--outline {
  border:1px solid currentColor !important;
  border-radius:3px !important;
  background:transparent !important;
  padding:7px 16px !important;
}

.evlbe .evlbe-open-btn--solid {
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:3px !important;
  background:rgba(45,27,16,.52) !important;
  padding:8px 17px !important;
}

.evlbe-cover-book {
  cursor:pointer !important;
}

/* ---------------- ORNAMENTS ---------------- */
.evlbe-decor {
  position:relative !important;
  width:138px !important;
  height:18px !important;
  flex:0 0 auto !important;
  margin:0 auto !important;
  color:var(--evlbe-decor-color) !important;
}
.evlbe-cover-rule { margin-top:4% !important; }
.evlbe-cover-rule-small { width:120px !important; margin-top:1% !important; }

.evlbe-decor::before,
.evlbe-decor::after {
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  width:42% !important;
  border-top:1px solid var(--evlbe-decor-color) !important;
}
.evlbe-decor::before { left:0 !important; }
.evlbe-decor::after { right:0 !important; }

.evlbe-decor i {
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:20px !important;
  height:20px !important;
  transform:translate(-50%,-50%) !important;
  display:grid !important;
  place-items:center !important;
  color:var(--evlbe-decor-color) !important;
  font-family:Georgia,serif !important;
  font-style:normal !important;
  line-height:1 !important;
}

.evlbe-decor--none { display:none !important; }
.evlbe-decor--line i { display:none !important; }
.evlbe-decor--line::before,
.evlbe-decor--line::after { width:49% !important; }

.evlbe-decor--doubleline::before,
.evlbe-decor--doubleline::after {
  height:4px !important;
  border-top:1px solid var(--evlbe-decor-color) !important;
  border-bottom:1px solid var(--evlbe-decor-color) !important;
}
.evlbe-decor--doubleline i { display:none !important; }

.evlbe-decor--circle i {
  width:10px !important;
  height:10px !important;
  border:1px solid var(--evlbe-decor-color) !important;
  border-radius:50% !important;
}
.evlbe-decor--rosette i::before { content:"✤" !important; font-size:15px !important; }
.evlbe-decor--star i::before { content:"✦" !important; font-size:17px !important; }
.evlbe-decor--fleur i::before { content:"⚜" !important; font-size:17px !important; }

/* ---------------- OPEN BOOK ---------------- */
.evlbe-open {
  transform:translateY(8px) scale(.98) !important;
  transition:opacity .44s ease, transform .58s cubic-bezier(.18,.72,.2,1) !important;
}
.evlbe-open.is-active { transform:translateY(0) scale(1) !important; }

.evlbe-desktop-reader { display:block !important; width:100% !important; }

.evlbe-desktop-book {
  --book-h:min(82vh,835px);
  height:var(--book-h) !important;
  width:max-content !important;
  margin:0 auto !important;
  display:flex !important;
  position:relative !important;
  perspective:2600px !important;
  transform-style:preserve-3d !important;
  filter:
    drop-shadow(0 30px 30px rgba(29,15,8,.43))
    drop-shadow(14px 14px 12px rgba(29,15,8,.24))
    drop-shadow(-10px 12px 12px rgba(29,15,8,.20)) !important;
}

.evlbe-open-ground-shadow {
  position:absolute !important;
  z-index:-5 !important;
  left:6% !important;
  right:5% !important;
  bottom:-4% !important;
  height:12% !important;
  border-radius:50% !important;
  background:rgba(28,13,6,.54) !important;
  filter:blur(25px) !important;
}

.evlbe-spine-shadow {
  position:absolute !important;
  z-index:650 !important;
  top:4% !important;
  bottom:4% !important;
  left:50% !important;
  width:4.4% !important;
  transform:translateX(-50%) !important;
  border-radius:50% !important;
  background:linear-gradient(
    90deg,
    rgba(43,22,11,.34),
    rgba(80,46,24,.08) 39%,
    rgba(255,244,220,.08) 50%,
    rgba(62,34,17,.10) 62%,
    rgba(40,19,9,.34)
  ) !important;
  filter:blur(6px) !important;
  pointer-events:none !important;
}

.evlbe-shell {
  position:relative !important;
  z-index:1 !important;
  height:100% !important;
  aspect-ratio:.70 !important;
  flex:0 0 auto !important;
  overflow:visible !important;
  transform-style:preserve-3d !important;
}
.evlbe-shell--left {
  margin-right:-2.6% !important;
  filter:drop-shadow(-8px 9px 7px rgba(31,15,7,.18)) !important;
}
.evlbe-shell--right {
  margin-left:-2.6% !important;
  filter:drop-shadow(9px 9px 8px rgba(31,15,7,.21)) !important;
}

.evlbe-shell-image,
.evlbe-fixed-frame {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
  display:block !important;
  max-width:none !important;
  pointer-events:none !important;
}
.evlbe-shell-image--left,
.evlbe-fixed-frame--left { transform:scaleX(-1) !important; }

.evlbe-fixed-frame {
  z-index:720 !important;
  pointer-events:none !important;
}

/* left image */
.evlbe-left-photo-stack {
  position:absolute !important;
  z-index:20 !important;
  inset:0 !important;
  pointer-events:none !important;
}
.evlbe-left-base-photo {
  position:absolute !important;
  left:8.2% !important;
  right:3.8% !important;
  top:2.6% !important;
  bottom:2.8% !important;
  opacity:0 !important;
  visibility:hidden !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-color:#eee1c4 !important;
  clip-path:polygon(.7% .3%,99.5% 0,99.2% 99.6%,0 100%) !important;
}
.evlbe-left-base-photo.is-active {
  opacity:1 !important;
  visibility:visible !important;
}

/* right static text pages */
.evlbe-right-content-stack {
  position:absolute !important;
  z-index:80 !important;
  left:5.5% !important;
  right:12.8% !important;
  top:2.7% !important;
  bottom:2.9% !important;
  overflow:hidden !important;
}

.evlbe-right-page {
  position:absolute !important;
  inset:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
}
.evlbe-right-page.is-active {
  opacity:1 !important;
  visibility:visible !important;
}

/* paper/photo surfaces */
.evlbe-paper-surface,
.evlbe-photo-surface,
.evlbe-paper-underside {
  position:absolute !important;
  inset:0 !important;
  overflow:hidden !important;
}

.evlbe-paper-surface {
  background:
    radial-gradient(circle at 24% 18%, rgba(255,255,255,.42), transparent 28%),
    radial-gradient(circle at 78% 72%, rgba(142,99,48,.045), transparent 28%),
    repeating-linear-gradient(0deg, rgba(96,65,28,.012) 0 1px, transparent 1px 4px),
    #f3e7ca !important;
}
.evlbe-paper-surface::before {
  content:"" !important;
  position:absolute !important;
  inset:2.4% !important;
  border:1px solid rgba(177,138,77,.58) !important;
}
.evlbe-paper-surface::after {
  content:"" !important;
  position:absolute !important;
  inset:3.25% !important;
  border:1px solid rgba(177,138,77,.22) !important;
}

.evlbe-photo-surface {
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-color:#e9dcc0 !important;
}
.evlbe-photo-surface::after {
  content:"" !important;
  position:absolute !important;
  inset:2.4% !important;
  border:1px solid rgba(177,138,77,.56) !important;
}
.evlbe-paper-underside {
  background:
    linear-gradient(90deg, rgba(72,43,20,.12), transparent 24%),
    #efe2c5 !important;
}

/* text follows the oblique page plane */
.evlbe-text-surface {
  position:absolute !important;
  z-index:5 !important;
  inset:7.6% 8.4% 7.2% 8.4% !important;
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  min-height:0 !important;
  width:auto !important;
  max-width:none !important;
  overflow:hidden !important;
  transform:none !important;
}

.evlbe-page-rule {
  width:132px !important;
  margin:0 auto 2.6% !important;
}
.evlbe-page-rule-small {
  width:118px !important;
  margin:2.1% auto 3.0% !important;
}

.evlbe .evlbe-label {
  all:unset;
  display:block !important;
  width:100% !important;
  margin:0 0 1.7% !important;
  font-family:var(--evlbe-label-font) !important;
  font-size:min(var(--evlbe-label-size),1.42vh) !important;
  font-weight:var(--evlbe-label-weight) !important;
  color:var(--evlbe-label-color) !important;
  letter-spacing:var(--evlbe-label-space) !important;
  line-height:1.2 !important;
  text-align:var(--evlbe-label-align) !important;
  text-transform:uppercase !important;
}

.evlbe .evlbe-title {
  all:unset;
  display:block !important;
  width:100% !important;
  margin:.3% 0 2.8% !important;
  font-family:var(--evlbe-title-font) !important;
  font-size:min(var(--evlbe-title-size),5.15vh) !important;
  font-weight:var(--evlbe-title-weight) !important;
  color:var(--evlbe-title-color) !important;
  letter-spacing:var(--evlbe-title-space) !important;
  line-height:1.02 !important;
  text-align:var(--evlbe-title-align) !important;
}

.evlbe .evlbe-subtitle-label {
  margin-top:.7% !important;
  margin-bottom:1.7% !important;
}

.evlbe .evlbe-subtitle {
  all:unset;
  display:block !important;
  width:100% !important;
  margin:0 0 3.1% !important;
  font-family:var(--evlbe-sub-font) !important;
  font-size:min(var(--evlbe-sub-size),2.3vh) !important;
  font-weight:var(--evlbe-sub-weight) !important;
  color:var(--evlbe-sub-color) !important;
  letter-spacing:var(--evlbe-sub-space) !important;
  line-height:1.2 !important;
  text-align:var(--evlbe-sub-align) !important;
}

.evlbe .evlbe-story-label {
  margin-top:.9% !important;
  margin-bottom:2.2% !important;
}

.evlbe .evlbe-story {
  all:unset;
  display:block !important;
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:auto !important;
  padding-right:4px !important;
  font-family:var(--evlbe-body-font) !important;
  font-size:min(var(--evlbe-body-size),1.72vh) !important;
  font-weight:var(--evlbe-body-weight) !important;
  color:var(--evlbe-body-color) !important;
  letter-spacing:var(--evlbe-body-space) !important;
  text-align:var(--evlbe-body-align) !important;
  line-height:var(--evlbe-body-line) !important;
}
.evlbe .evlbe-story p {
  all:unset;
  display:block !important;
  margin:0 0 1.15em !important;
  font:inherit !important;
  line-height:inherit !important;
  text-align:inherit !important;
}
.evlbe .evlbe-story p:last-child { margin-bottom:0 !important; }

.evlbe-link-row {
  position:relative !important;
  z-index:40 !important;
  flex:0 0 auto !important;
  margin-top:2.4% !important;
  text-align:var(--evlbe-link-align) !important;
  pointer-events:auto !important;
}
.evlbe .evlbe-link {
  all:unset;
  box-sizing:border-box !important;
  position:relative !important;
  z-index:50 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  pointer-events:auto !important;
  cursor:pointer !important;
  padding:4px 9px 5px !important;
  border-top:1px solid rgba(177,138,77,.72) !important;
  border-bottom:1px solid rgba(177,138,77,.72) !important;
  font-family:var(--evlbe-link-font) !important;
  font-size:min(var(--evlbe-link-size),1.8vh) !important;
  font-weight:var(--evlbe-link-weight) !important;
  color:var(--evlbe-link-color) !important;
  letter-spacing:var(--evlbe-link-space) !important;
  text-decoration:none !important;
  transition:background .18s ease, color .18s ease !important;
}
.evlbe .evlbe-link--clickable:hover,
.evlbe .evlbe-link--clickable:focus-visible {
  background:rgba(177,138,77,.10) !important;
  outline:none !important;
}

/* -------- TRUE TURNING LEAF -------- */
.evlbe-turning-leaf {
  position:absolute !important;
  z-index:560 !important;
  left:5.5% !important;
  right:12.8% !important;
  top:2.7% !important;
  bottom:2.9% !important;
  transform-origin:0% 50% !important;
  transform-style:preserve-3d !important;
  perspective:2400px !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  will-change:transform !important;
}

.evlbe-turning-leaf.is-ready {
  opacity:1 !important;
  visibility:visible !important;
}

.evlbe-turning-face {
  position:absolute !important;
  inset:0 !important;
  overflow:hidden !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
  clip-path:polygon(.2% .1%,99.6% .45%,99.15% 99.65%,.4% 99.95%) !important;
  box-shadow:
    inset 0 0 0 1px rgba(116,78,37,.10),
    inset 14px 0 22px rgba(74,42,18,.06) !important;
}
.evlbe-turning-front {
  transform:rotateY(0deg) translateZ(.5px) !important;
  opacity:1 !important;
}
.evlbe-turning-back {
  transform:rotateY(180deg) translateZ(.5px) !important;
  opacity:0 !important;
}

.evlbe-turning-leaf::after {
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  opacity:0 !important;
  background:linear-gradient(
    90deg,
    rgba(24,12,6,.44),
    rgba(24,12,6,.20) 17%,
    transparent 48%,
    rgba(255,255,255,.12) 74%,
    transparent
  ) !important;
}

.evlbe-turning-leaf.is-flipping-forward {
  animation:evlbeTrueFlipForward 1.12s cubic-bezier(.15,.63,.14,1) forwards !important;
}
.evlbe-turning-leaf.is-flipping-forward::after {
  animation:evlbeLeafShade 1.12s ease forwards !important;
}

.evlbe-turning-leaf.is-flipping-back {
  animation:evlbeTrueFlipBack 1.12s cubic-bezier(.15,.63,.14,1) forwards !important;
}
.evlbe-turning-leaf.is-flipping-back::after {
  animation:evlbeLeafShadeBack 1.12s ease forwards !important;
}

/* Front and back are deliberately swapped at the middle of the turn.
   This prevents the previous text from appearing mirrored on the reverse. */
.evlbe-turning-leaf.is-flipping-forward .evlbe-turning-front {
  animation:evlbeFaceFrontForward 1.12s linear forwards !important;
}
.evlbe-turning-leaf.is-flipping-forward .evlbe-turning-back {
  animation:evlbeFaceBackForward 1.12s linear forwards !important;
}
.evlbe-turning-leaf.is-flipping-back .evlbe-turning-front {
  animation:evlbeFaceFrontBack 1.12s linear forwards !important;
}
.evlbe-turning-leaf.is-flipping-back .evlbe-turning-back {
  animation:evlbeFaceBackBack 1.12s linear forwards !important;
}

@keyframes evlbeFaceFrontForward {
  0%, 48.5% { opacity:1; }
  49.5%, 100% { opacity:0; }
}
@keyframes evlbeFaceBackForward {
  0%, 48.5% { opacity:0; }
  49.5%, 100% { opacity:1; }
}
@keyframes evlbeFaceFrontBack {
  0%, 48.5% { opacity:0; }
  49.5%, 100% { opacity:1; }
}
@keyframes evlbeFaceBackBack {
  0%, 48.5% { opacity:1; }
  49.5%, 100% { opacity:0; }
}

@keyframes evlbeTrueFlipForward {
  0% {
    transform:rotateY(0deg) translateZ(2px) skewY(0deg);
    filter:drop-shadow(0 0 0 rgba(0,0,0,0));
  }
  22% {
    transform:rotateY(-34deg) translateZ(12px) skewY(-1.2deg) scaleX(.994);
    filter:drop-shadow(-4px 8px 7px rgba(36,18,8,.18));
  }
  48% {
    transform:rotateY(-82deg) translateZ(28px) skewY(-2.1deg) scaleX(.975);
    filter:drop-shadow(-13px 14px 12px rgba(36,18,8,.34));
  }
  60% {
    transform:rotateY(-108deg) translateZ(28px) skewY(1.4deg) scaleX(.972);
    filter:drop-shadow(-15px 15px 13px rgba(36,18,8,.38));
  }
  82% {
    transform:rotateY(-151deg) translateZ(11px) skewY(.7deg) scaleX(.993);
    filter:drop-shadow(-8px 10px 8px rgba(36,18,8,.24));
  }
  100% {
    transform:rotateY(-180deg) translateZ(1px) skewY(0deg);
    filter:drop-shadow(0 0 0 rgba(0,0,0,0));
  }
}

@keyframes evlbeTrueFlipBack {
  0% {
    transform:rotateY(-180deg) translateZ(1px);
  }
  22% {
    transform:rotateY(-151deg) translateZ(11px) skewY(.7deg) scaleX(.993);
  }
  48% {
    transform:rotateY(-108deg) translateZ(28px) skewY(1.4deg) scaleX(.972);
  }
  60% {
    transform:rotateY(-82deg) translateZ(28px) skewY(-2.1deg) scaleX(.975);
  }
  82% {
    transform:rotateY(-34deg) translateZ(12px) skewY(-1.2deg) scaleX(.994);
  }
  100% {
    transform:rotateY(0deg) translateZ(2px);
  }
}

@keyframes evlbeLeafShade {
  0% { opacity:0; }
  38% { opacity:.36; }
  52% { opacity:.70; }
  66% { opacity:.42; }
  100% { opacity:0; }
}
@keyframes evlbeLeafShadeBack {
  0% { opacity:0; }
  38% { opacity:.42; }
  52% { opacity:.70; }
  66% { opacity:.36; }
  100% { opacity:0; }
}

/* ---------------- MOBILE ---------------- */
.evlbe-mobile-reader { display:none !important; }

.evlbe-mobile-book {
  width:min(94vw,630px) !important;
  aspect-ratio:691/1229 !important;
  position:relative !important;
  margin:0 auto !important;
  perspective:2200px !important;
  transform-style:preserve-3d !important;
  filter:
    drop-shadow(0 22px 22px rgba(29,15,8,.38))
    drop-shadow(9px 10px 9px rgba(29,15,8,.20)) !important;
}

.evlbe-mobile-ground-shadow {
  position:absolute !important;
  z-index:-4 !important;
  left:7% !important;
  right:4% !important;
  bottom:-2.6% !important;
  height:7% !important;
  border-radius:50% !important;
  background:rgba(29,14,7,.48) !important;
  filter:blur(20px) !important;
}

.evlbe-mobile-shell,
.evlbe-mobile-frame {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
  display:block !important;
  max-width:none !important;
  pointer-events:none !important;
}
.evlbe-mobile-frame { z-index:720 !important; }

.evlbe-mobile-static-stack {
  position:absolute !important;
  z-index:80 !important;
  left:8.5% !important;
  right:4.2% !important;
  top:2.65% !important;
  bottom:2.85% !important;
  overflow:hidden !important;
}

.evlbe-mobile-static-page {
  position:absolute !important;
  inset:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
}
.evlbe-mobile-static-page.is-active {
  opacity:1 !important;
  visibility:visible !important;
}

.evlbe-text-surface--mobile {
  transform:none !important;
  inset:6.7% 7.8% 6.5% !important;
}

.evlbe-mobile-turning-leaf {
  position:absolute !important;
  z-index:560 !important;
  left:8.5% !important;
  right:4.2% !important;
  top:2.65% !important;
  bottom:2.85% !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform-origin:0% 50% !important;
  transform-style:preserve-3d !important;
  perspective:2200px !important;
  pointer-events:none !important;
}

.evlbe-mobile-turning-leaf.is-ready {
  opacity:1 !important;
  visibility:visible !important;
}

.evlbe-mobile-turn-face {
  position:absolute !important;
  inset:0 !important;
  overflow:hidden !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
  clip-path:polygon(.3% .15%,99.6% .35%,99.2% 99.65%,.4% 99.9%) !important;
}
.evlbe-mobile-turn-front {
  transform:rotateY(0deg) translateZ(.4px) !important;
  opacity:1 !important;
}
.evlbe-mobile-turn-back {
  transform:rotateY(180deg) translateZ(.4px) !important;
  opacity:0 !important;
}

.evlbe-mobile-turning-leaf.is-flipping-forward {
  animation:evlbeTrueFlipForward .98s cubic-bezier(.15,.63,.14,1) forwards !important;
}
.evlbe-mobile-turning-leaf.is-flipping-back {
  animation:evlbeTrueFlipBack .98s cubic-bezier(.15,.63,.14,1) forwards !important;
}

.evlbe-mobile-turning-leaf.is-flipping-forward .evlbe-mobile-turn-front {
  animation:evlbeMobileFrontForward .98s linear forwards !important;
}
.evlbe-mobile-turning-leaf.is-flipping-forward .evlbe-mobile-turn-back {
  animation:evlbeMobileBackForward .98s linear forwards !important;
}
.evlbe-mobile-turning-leaf.is-flipping-back .evlbe-mobile-turn-front {
  animation:evlbeMobileFrontBack .98s linear forwards !important;
}
.evlbe-mobile-turning-leaf.is-flipping-back .evlbe-mobile-turn-back {
  animation:evlbeMobileBackBack .98s linear forwards !important;
}

@keyframes evlbeMobileFrontForward {
  0%,48.5% { opacity:1; }
  49.5%,100% { opacity:0; }
}
@keyframes evlbeMobileBackForward {
  0%,48.5% { opacity:0; }
  49.5%,100% { opacity:1; }
}
@keyframes evlbeMobileFrontBack {
  0%,48.5% { opacity:0; }
  49.5%,100% { opacity:1; }
}
@keyframes evlbeMobileBackBack {
  0%,48.5% { opacity:1; }
  49.5%,100% { opacity:0; }
}

/* ---------------- NAV ---------------- */
.evlbe-reader-nav {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:24px !important;
  margin-top:16px !important;
}

.evlbe .evlbe-reader-nav button {
  all:unset;
  box-sizing:border-box !important;
  width:44px !important;
  height:44px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid #8f6c3c !important;
  border-radius:50% !important;
  background:rgba(67,43,24,.94) !important;
  color:#fff8e8 !important;
  box-shadow:
    0 5px 10px rgba(30,15,7,.24),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
  font-family:Georgia,serif !important;
  font-size:31px !important;
  line-height:1 !important;
  padding:0 0 4px !important;
  cursor:pointer !important;
}
.evlbe .evlbe-reader-nav button:disabled {
  opacity:.50 !important;
  cursor:default !important;
}
.evlbe .evlbe-reader-nav .evlbe-close {
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:23px !important;
  padding:0 0 2px !important;
}

.evlbe .evlbe-counter {
  all:unset;
  box-sizing:border-box !important;
  min-width:70px !important;
  padding:7px 12px !important;
  border-radius:999px !important;
  background:rgba(73,49,27,.86) !important;
  color:#fff8e8 !important;
  text-align:center !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:13px !important;
  font-weight:500 !important;
}

/* closing */
.evlbe-open.is-closing {
  opacity:0 !important;
  transform:translateY(8px) scale(.965) !important;
  transition:opacity .38s ease, transform .48s ease !important;
}
.evlbe-closed.is-returning {
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.evlbe-closed.is-returning .evlbe-cover-book {
  animation:evlbeCoverReturn .58s cubic-bezier(.2,.72,.18,1) both !important;
}
@keyframes evlbeCoverReturn {
  0% { opacity:.08; transform:rotateY(-65deg) translateZ(16px) scale(.96); }
  100% { opacity:1; transform:rotateY(0deg) translateZ(0) scale(1); }
}

/* responsive */
@media (max-width:900px) {
.evlbe-desktop-reader { display:none !important; }
  .evlbe-mobile-reader { display:block !important; }

  .evlbe-cover-book { width:min(94vw,640px) !important; }

  .evlbe .evlbe-cover-eyebrow {
    font-size:min(var(--evlbe-ce-size),2.65vw) !important;
  }
  .evlbe .evlbe-cover-title {
    font-size:min(var(--evlbe-ct-size),8.4vw) !important;
  }
  .evlbe .evlbe-cover-dates {
    font-size:min(var(--evlbe-cd-size),3.2vw) !important;
  }
  .evlbe .evlbe-open-btn {
    font-size:min(var(--evlbe-cb-size),3.8vw) !important;
  }

  .evlbe .evlbe-label {
    font-size:min(var(--evlbe-label-size),2.20vw) !important;
  }
  .evlbe .evlbe-title {
    font-size:min(var(--evlbe-title-size),7.55vw) !important;
  }
  .evlbe .evlbe-subtitle {
    font-size:min(var(--evlbe-sub-size),3.85vw) !important;
  }
  .evlbe .evlbe-story {
    font-size:min(var(--evlbe-body-size),3.25vw) !important;
  }
  .evlbe .evlbe-link {
    font-size:min(var(--evlbe-link-size),3.25vw) !important;
  }

  .evlbe-reader-nav { margin-top:12px !important; gap:21px !important; }

  .evlbe .evlbe-reader-nav button {
    width:43px !important;
    height:43px !important;
    background:rgba(60,38,21,.97) !important;
  }
}

@media (max-width:460px) {
  .evlbe-stage { padding:8px 0 14px !important; }
  .evlbe-cover-book { width:96vw !important; }
  .evlbe-mobile-book {
    width:93vw !important;
    transform:translateX(-1.6vw) !important;
  }

  .evlbe-text-surface--mobile {
    inset:6.1% 5.3% 6.0% 5.3% !important;
    transform:none !important;
    overflow:hidden !important;
  }

  .evlbe .evlbe-story {
    font-size:min(var(--evlbe-body-size),3.15vw) !important;
  }
}


/* 5.2: JS controls face visibility at the 90-degree midpoint.
   This is more reliable than nested backface rendering in Chromium. */
.evlbe-turning-front,
.evlbe-turning-back,
.evlbe-mobile-turn-front,
.evlbe-mobile-turn-back {
  opacity:1 !important;
}

.evlbe-turning-front.is-face-hidden,
.evlbe-turning-back.is-face-hidden,
.evlbe-mobile-turn-front.is-face-hidden,
.evlbe-mobile-turn-back.is-face-hidden {
  visibility:hidden !important;
}

.evlbe-turning-front.is-face-visible,
.evlbe-turning-back.is-face-visible,
.evlbe-mobile-turn-front.is-face-visible,
.evlbe-mobile-turn-back.is-face-visible {
  visibility:visible !important;
}


/* 5.3 text containment: never let a line escape the paper column. */
.evlbe-text-surface .evlbe-label,
.evlbe-text-surface .evlbe-title,
.evlbe-text-surface .evlbe-subtitle,
.evlbe-text-surface .evlbe-story,
.evlbe-text-surface .evlbe-link-row {
  box-sizing:border-box !important;
  min-width:0 !important;
  max-width:100% !important;
  width:100% !important;
}
.evlbe .evlbe-story,
.evlbe .evlbe-story p {
  white-space:normal !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
  hyphens:auto !important;
}
.evlbe .evlbe-story {
  overflow-x:hidden !important;
}
.evlbe-link-help {
  margin-top:4px !important;
  color:#50575e !important;
}




/* ============================
   5.5 COVER: ONE CENTRAL ACTION
   ============================ */
.evlbe-cover-action {
  position:absolute !important;
  z-index:20 !important;

  /* Center of the actual photographed leather panel, not the full PNG. */
  left:49.64% !important;
  top:51.39% !important;
  transform:translate(-50%,-50%) rotate(var(--evlbe-cb-angle)) !important;

  width:auto !important;
  max-width:48% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  pointer-events:auto !important;
}

.evlbe .evlbe-open-btn {
  all:unset;
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  min-width:var(--evlbe-cb-min-width) !important;
  padding:var(--evlbe-cb-pad-y) var(--evlbe-cb-pad-x) !important;

  font-family:var(--evlbe-cb-font) !important;
  font-size:var(--evlbe-cb-size) !important;
  font-weight:var(--evlbe-cb-weight) !important;
  color:var(--evlbe-cb-color) !important;
  letter-spacing:var(--evlbe-cb-space) !important;
  line-height:1.12 !important;

  text-align:center !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  transition:opacity .18s ease, background .18s ease, transform .18s ease !important;
}

.evlbe .evlbe-open-btn:hover {
  transform:translateY(-1px) !important;
}

.evlbe .evlbe-open-btn--text {
  padding:0 !important;
  min-width:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}

.evlbe .evlbe-open-btn--outline {
  border:var(--evlbe-cb-border-width) solid var(--evlbe-cb-border-color) !important;
  border-radius:var(--evlbe-cb-radius) !important;
  background:transparent !important;
}

.evlbe .evlbe-open-btn--solid {
  border:var(--evlbe-cb-border-width) solid var(--evlbe-cb-border-color) !important;
  border-radius:var(--evlbe-cb-radius) !important;
  background:var(--evlbe-cb-bg) !important;
}

@media (max-width:900px) {
  .evlbe-cover-action {
    left:49.64% !important;
    top:51.39% !important;
    max-width:58% !important;
  }

  /* On mobile, obey the exact pixel size chosen in the editor.
     The old vw cap made the cover action unexpectedly change size. */
  .evlbe .evlbe-open-btn {
    font-size:var(--evlbe-cb-size) !important;
  }
}


/* ============================
   5.5 MOBILE TEXT SAFE COLUMN
   ============================ */
@media (max-width:900px) {
  .evlbe-text-surface--mobile {
    /* Narrower safe reading column so text wraps BEFORE the physical
       right page edge instead of being visually clipped by it. */
    left:7.2% !important;
    right:12.2% !important;
    top:6.3% !important;
    bottom:6.2% !important;

    width:auto !important;
    max-width:none !important;
    transform:none !important;
    overflow:visible !important;
  }

  .evlbe-text-surface--mobile .evlbe-label,
  .evlbe-text-surface--mobile .evlbe-title,
  .evlbe-text-surface--mobile .evlbe-subtitle,
  .evlbe-text-surface--mobile .evlbe-story,
  .evlbe-text-surface--mobile .evlbe-story p,
  .evlbe-text-surface--mobile .evlbe-link-row,
  .evlbe-text-surface--mobile .evlbe-link {
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    hyphens:none !important;
  }

  .evlbe-text-surface--mobile .evlbe-story {
    overflow-x:visible !important;
    overflow-y:auto !important;
    padding-right:0 !important;
  }

  .evlbe-text-surface--mobile .evlbe-story p {
    display:block !important;
    overflow:visible !important;
  }
}

@media (max-width:460px) {
  .evlbe-text-surface--mobile {
    left:7.0% !important;
    right:12.8% !important;
    top:6.2% !important;
    bottom:6.1% !important;
    overflow:visible !important;
  }
}


/* 5.6: only the central anchor carries the cover angle.
   The button/text itself has no additional transform. */
.evlbe-cover-action .evlbe-open-btn {
  transform:none !important;
}
.evlbe-cover-action .evlbe-open-btn:hover {
  transform:none !important;
}


/* ============================
   5.6 MOBILE: REAL PAPER SAFE AREA
   ============================ */
@media (max-width:900px) {
  .evlbe-text-surface--mobile {
    left:8.5% !important;
    right:21.5% !important;
    top:6.2% !important;
    bottom:6.0% !important;

    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    overflow:visible !important;
    transform:none !important;
  }

  .evlbe-text-surface--mobile .evlbe-label,
  .evlbe-text-surface--mobile .evlbe-title,
  .evlbe-text-surface--mobile .evlbe-subtitle,
  .evlbe-text-surface--mobile .evlbe-story,
  .evlbe-text-surface--mobile .evlbe-story p,
  .evlbe-text-surface--mobile .evlbe-link-row {
    display:block !important;
    box-sizing:border-box !important;
    inline-size:100% !important;
    width:100% !important;
    max-inline-size:100% !important;
    max-width:100% !important;
    min-inline-size:0 !important;
    min-width:0 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }

  .evlbe-text-surface--mobile .evlbe-story {
    overflow-x:visible !important;
    overflow-y:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .evlbe-text-surface--mobile .evlbe-story p {
    overflow:visible !important;
  }

  /* Links may contain long strings, so only links may break if necessary. */
  .evlbe-text-surface--mobile .evlbe-link {
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
}

@media (max-width:460px) {
  .evlbe-text-surface--mobile {
    left:8.2% !important;
    right:22.0% !important;
    top:6.1% !important;
    bottom:5.9% !important;
  }
}


/* ==========================================================
   5.7 — REMOVE EXTERNAL BREAKDANCE SHORTCODE FRAME
   The Life Book itself keeps all of its internal frames and shadows.
   Only the outer Breakdance element that contains .evlbe is reset.
   ========================================================== */

.evlbe,
.evlbe-stage {
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* Breakdance Shortcode element */
.bde-shortcode:has(.evlbe),
[class*="bde-shortcode"]:has(.evlbe) {
  border:0 !important;
  border-width:0 !important;
  border-style:none !important;
  outline:0 !important;
  outline-width:0 !important;
  outline-style:none !important;
  box-shadow:none !important;
}

/* Some Breakdance presets draw frames with pseudo-elements. */
.bde-shortcode:has(.evlbe)::before,
.bde-shortcode:has(.evlbe)::after,
[class*="bde-shortcode"]:has(.evlbe)::before,
[class*="bde-shortcode"]:has(.evlbe)::after {
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* Direct inner wrappers occasionally used by Breakdance Shortcode. */
.bde-shortcode:has(.evlbe) > div,
[class*="bde-shortcode"]:has(.evlbe) > div {
  border-color:transparent !important;
  outline-color:transparent !important;
  box-shadow:none !important;
}

/* Keep the central action on the exact cover plane.
   4.8° follows the fixed photographed front panel more naturally
   than the previous 7° default. */
.evlbe-cover-action {
  transform:translate(-50%,-50%) rotate(var(--evlbe-cb-angle)) !important;
}


/* ==========================================================
   GOLD 1.0.3 — VIEWPORT FIT (desktop only)
   Keep the 5.7.5 reader/layout intact; only scale the complete
   closed/open book so the artwork and navigation remain visible.
   ========================================================== */
@media (min-width:901px) {
  /* Gold cover is taller than the original 5.7.5 cover asset.
     Limit it by viewport height without changing its proportions. */
  .evlbe-cover-book {
    width:min(92vw, 690px, 56vh) !important;
  }

  /* Reserve vertical room for the complete navigation row below. */
  .evlbe-desktop-book {
    --book-h:min(70vh, 720px) !important;
  }

  .evlbe-reader-nav {
    margin-top:12px !important;
    margin-bottom:18px !important;
  }

  .evlbe-stage {
    padding-top:clamp(12px, 1.6vh, 22px) !important;
    padding-bottom:clamp(22px, 3vh, 36px) !important;
  }
}
