@import url('https://fonts.googleapis.com/css2?family=Abril+Fatface&family=Alex+Brush&family=Allura&family=Anton&family=Bebas+Neue&family=Bellefair&family=Bodoni+Moda:opsz,wght@6..96,400;6..96,700&family=Caveat:wght@400;700&family=Cinzel:wght@400;700&family=Cookie&family=Cormorant+Garamond:wght@400;600;700&family=DM+Sans:wght@400;600;700&family=Dancing+Script:wght@400;700&family=Forum&family=Great+Vibes&family=Italianno&family=Kalam:wght@400;700&family=Kaushan+Script&family=Lato:wght@400;700&family=League+Spartan:wght@400;600;700&family=Libre+Baskerville:wght@400;700&family=Marcellus&family=Montserrat:wght@400;600;700&family=Open+Sans:wght@400;600;700&family=Oswald:wght@400;600;700&family=Parisienne&family=Patrick+Hand&family=Playball&family=Playfair+Display:wght@400;600;700&family=Poppins:wght@400;600;700&family=Prata&family=Sacramento&family=Satisfy&family=Tangerine:wght@400;700&family=Yellowtail&display=swap');
.vms-reader{--paper:#f8eddb;--gold:#b08a47;--gold2:#e3cb93;--ink:#1d1811;width:100%;max-width:1320px;margin:20px auto;padding:18px 16px 16px;box-sizing:border-box;border-radius:18px;background:transparent;box-shadow:none;font-family:Arial,sans-serif;transition:opacity .18s ease}
.vms-book-shell{display:grid;grid-template-columns:58px minmax(0,1fr) 58px;align-items:center;gap:12px;position:relative}
.vms-book{position:relative;aspect-ratio:4/3;perspective:2600px;transform-style:preserve-3d;border-radius:14px;background:transparent;overflow:visible}
.vms-page-stack{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .36s cubic-bezier(.4,0,.2,1);will-change:transform}
.vms-book.is-front-closed .vms-page-stack{transform:translateX(-25%)}
.vms-book.is-back-closed .vms-page-stack{transform:translateX(25%)}
.vms-book.is-open .vms-page-stack,.vms-book.is-opening.at-spine .vms-page-stack{transform:translateX(0)}
.vms-book.is-opening .vms-page-stack{transform:translateX(-25%)}
.vms-book.is-closing-front .vms-page-stack{transform:translateX(0)}
.vms-book.is-closing-front.center-front .vms-page-stack{transform:translateX(-25%)}
.vms-persistent-sheet{position:absolute;left:50%;top:0;width:50%;height:100%;transform-origin:left center;transform:rotateY(0deg);transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .78s cubic-bezier(.42,.02,.18,1);will-change:transform;pointer-events:none}
.vms-persistent-sheet.is-turned{transform:rotateY(-180deg)}
.vms-persistent-face{position:absolute;inset:0;overflow:hidden;background:var(--paper);border-radius:0 10px 10px 0;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 20px 48px rgba(0,0,0,.30);pointer-events:auto}
/* Lighten what the browser must repaint while a sheet is mid-flip. Box-shadow
   and the edge-shading gradient are expensive to recompute every frame next
   to a live 3D transform, and iPad Safari in particular drops frames under
   that combined load, which reads as a snap instead of a smooth turn. These
   are restored the instant the turn finishes. Static (non-turning) shadow,
   Android, and desktop appearance are unchanged. */
.vms-persistent-sheet.vms-sheet-mid-turn{box-shadow:none}
.vms-persistent-sheet.vms-sheet-mid-turn .vms-persistent-face{box-shadow:none}
.vms-persistent-sheet.vms-sheet-mid-turn::after{transition:none;opacity:0}
.vms-persistent-face.vms-sheet-front{transform:rotateY(0deg) translateZ(.2px)}
.vms-persistent-face.vms-sheet-back{transform:rotateY(180deg) translateZ(.2px);border-radius:10px 0 0 10px}
.vms-persistent-face.is-blank{background:linear-gradient(135deg,#fbf2e3,#ead8bd)}

/* Front-cover-only face separation. No wrapper, isolation, contain:paint,
   opacity, or visibility changes are used, so interior sheets retain the
   exact persistent-sheet rendering from v2.0.1. */
.vms-hard-cover-sheet.vms-cover-separated .vms-sheet-front{
  transform:rotateY(0deg) translateZ(.65px);
  background:#f8eddb;
}
.vms-hard-cover-sheet.vms-cover-separated .vms-sheet-back{
  transform:rotateY(180deg) translateZ(.65px);
  background:#f8eddb;
}
.vms-persistent-sheet::after{content:"";position:absolute;inset:0;z-index:10;pointer-events:none;backface-visibility:hidden;background:linear-gradient(90deg,rgba(0,0,0,.03),transparent 18%,transparent 78%,rgba(0,0,0,.08));opacity:.35;transition:opacity .39s ease}
.vms-persistent-sheet.is-turned::after{opacity:.12}
.vms-page-art{position:absolute;inset:0;background-color:var(--paper);background-size:cover;background-position:center;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.vms-spine{position:absolute;left:50%;top:0;bottom:0;width:24px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(0,0,0,.24),transparent);z-index:500;pointer-events:none;opacity:.62}
.vms-page-no{position:absolute;bottom:8px;right:10px;background:rgba(0,0,0,.55);color:#fff;font-size:10px;padding:4px 8px;border-radius:12px}
.vms-text-overlay{position:absolute;transform:translate(-50%,0);display:inline-block;width:max-content;max-width:85%;line-height:1.05;white-space:pre-wrap;overflow-wrap:break-word;z-index:7;visibility:hidden;opacity:0}.vms-text-overlay p{margin:0 0 .45em}.vms-text-overlay p:last-child{margin-bottom:0}.vms-text-overlay a{color:inherit;text-decoration:underline}.vms-text-overlay img,.vms-text-overlay iframe,.vms-text-overlay video{max-width:100%;height:auto}
.vms-hotspot{position:absolute;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;background:rgba(20,16,8,.72);border:2px solid var(--gold2);z-index:8;box-shadow:0 0 0 6px rgba(227,203,147,.2)}.vms-hotspot:before{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold2);left:50%;top:50%;transform:translate(-50%,-50%)}.vms-hotspot span{position:absolute;bottom:135%;left:50%;transform:translateX(-50%);background:#17120c;color:#fff;font-size:11px;white-space:nowrap;padding:6px 9px;border-radius:5px;opacity:0;pointer-events:none;transition:.2s}.vms-hotspot:hover span,.vms-hotspot:focus span{opacity:1}
.vms-nav{appearance:none;-webkit-appearance:none;width:48px;height:48px;border-radius:50%;border:1px solid rgba(176,138,71,.55)!important;background:var(--ink)!important;color:var(--gold2)!important;padding:0!important;margin:0!important;display:grid!important;place-items:center!important;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.22);line-height:1!important}.vms-nav span{display:block;font-family:Georgia,serif;font-size:38px;line-height:.75;transform:translateY(-1px)}.vms-nav:hover{background:#2b2318!important;transform:scale(1.04)}.vms-nav:disabled{opacity:.22;cursor:not-allowed;transform:none}
.vms-mobile-counter{display:none}
.vms-toolbar{display:grid;grid-template-columns:1fr auto;align-items:center;margin-top:14px;gap:10px}.vms-counter{text-align:center;justify-self:center;font-size:12px;font-weight:700;letter-spacing:.04em}.vms-fullscreen{justify-self:end}.vms-control{appearance:none;border:1px solid #cdbd9f;background:#fff;color:var(--ink);padding:9px 15px;border-radius:22px;cursor:pointer;font-size:12px}.vms-associate-disclosure{text-align:center;font-size:11px;margin-top:10px;opacity:.72}
.vms-gate{position:absolute;inset:0;z-index:1000;background:rgba(17,13,8,.92);display:grid;place-items:center;padding:20px;border-radius:10px}.vms-gate[hidden]{display:none}.vms-gate-card{width:min(520px,92%);background:linear-gradient(180deg,#fbf7ee,#f2eada);padding:34px;border-radius:14px;text-align:center;color:var(--ink);box-shadow:0 24px 70px rgba(0,0,0,.42)}.vms-kicker{font-size:10px;letter-spacing:.3em;color:#8c6a2f}.vms-gate-card h2{font-family:Georgia,serif;font-size:30px;margin:10px 0}.vms-gate-card form{display:grid;gap:12px;margin-top:20px}.vms-gate-card label{text-align:left;font-size:12px;font-weight:bold}.vms-gate-card input{display:block;width:100%;padding:12px;border:1px solid #cdbd9f;border-radius:6px;margin-top:5px}.vms-gate-card button{padding:13px;border:0;border-radius:30px;background:var(--ink);color:#fff;font-weight:bold;cursor:pointer}.vms-form-note{font-size:10px;margin-top:12px;opacity:.7}.vms-hidden-frame{display:none}
@media(max-width:700px){
.vms-reader{padding:10px 4px 14px;border-radius:10px}
.vms-book-shell{grid-template-columns:64px minmax(0,1fr) 64px;grid-template-rows:auto 54px;gap:8px 10px;width:100%}
.vms-book{grid-column:1/-1;grid-row:1;aspect-ratio:4/3;width:100%}
.vms-prev{grid-column:1;grid-row:2;justify-self:end}
.vms-next{grid-column:3;grid-row:2;justify-self:start}
.vms-mobile-counter{display:none!important}
.vms-persistent-face{box-shadow:0 10px 18px rgba(0,0,0,.24)}
.vms-nav{width:44px;height:44px}
.vms-nav span{font-size:34px}
.vms-text-overlay{font-size:inherit}
.vms-page-no{font-size:8px;padding:3px 6px}
.vms-toolbar{grid-template-columns:1fr;justify-items:center;margin-top:2px}
.vms-toolbar .vms-counter{display:none}
.vms-fullscreen{justify-self:center}
.vms-control{padding:8px 13px;font-size:11px}
.vms-associate-disclosure{margin-top:8px}
}

/* v1.0.2 — Phone fullscreen calibration only.
   Desktop, tablet, and normal mobile layouts are unchanged. In phone fullscreen,
   the original page image, overlays, and hotspots share one 2:3 coordinate box. */
.vms-single-viewer,.vms-fs-exit{display:none}

@media(max-width:700px){
  .vms-book-shell:fullscreen.vms-mobile-single-fullscreen,
  .vms-book-shell:-webkit-full-screen.vms-mobile-single-fullscreen{
    width:100vw!important;
    height:100dvh!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr) 54px!important;
    grid-template-rows:auto auto!important;
    gap:10px 8px!important;
    align-content:center!important;
    align-items:center!important;
    padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important;
    background:#111!important;
    overflow:hidden!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-book{display:none!important}
  .vms-book-shell.vms-mobile-single-fullscreen .vms-mobile-counter{display:none!important}
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-viewer{
    display:block!important;
    position:relative!important;
    grid-column:1/-1!important;
    grid-row:1!important;
    width:min(92vw,calc((100dvh - 92px) * .6666667))!important;
    height:auto!important;
    max-height:calc(100dvh - 92px)!important;
    aspect-ratio:2/3!important;
    justify-self:center!important;
    align-self:end!important;
    perspective:2200px!important;
    transform-style:preserve-3d!important;
    overflow:visible!important;
  }
  .vms-single-page{
    position:absolute!important;
    inset:0!important;
    overflow:hidden!important;
    border-radius:8px!important;
    background:var(--paper)!important;
    box-shadow:0 12px 28px rgba(68,44,20,.28)!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
  }
  /* Match the desktop page crop exactly. Image, text, and dots all use the
     same full-page coordinate box, so no letterboxing or position drift. */
  .vms-single-page .vms-page-art{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
  }
  .vms-single-page .vms-page-no{display:block!important;position:absolute!important;bottom:8px!important;right:10px!important;z-index:1000!important}
  .vms-single-sheet{
    position:absolute!important;
    inset:0!important;
    z-index:20!important;
    transform-style:preserve-3d!important;
    -webkit-transform-style:preserve-3d!important;
    transition:transform .78s cubic-bezier(.42,.02,.18,1)!important;
    will-change:transform!important;
  }
  .vms-single-sheet.is-forward{transform-origin:left center!important;transform:rotateY(0deg)!important}
  .vms-single-sheet.is-forward.is-turning{transform:rotateY(-180deg)!important}
  .vms-single-sheet.is-backward{transform-origin:right center!important;transform:rotateY(0deg)!important}
  .vms-single-sheet.is-backward.is-turning{transform:rotateY(180deg)!important}
  .vms-single-face{position:absolute!important;inset:0!important;box-shadow:none!important}
  .vms-single-front{transform:rotateY(0deg) translateZ(.2px)!important}
  .vms-single-back{transform:rotateY(180deg) translateZ(.2px)!important}
  .vms-book-shell.vms-mobile-single-fullscreen .vms-prev{
    display:grid!important;
    grid-column:1!important;
    grid-row:2!important;
    justify-self:end!important;
    align-self:start!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-next{
    display:grid!important;
    grid-column:3!important;
    grid-row:2!important;
    justify-self:start!important;
    align-self:start!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-nav{
    width:46px!important;
    height:46px!important;
    box-shadow:0 6px 16px rgba(68,44,20,.28)!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-fs-exit{
    display:block!important;
    grid-column:2!important;
    grid-row:2!important;
    justify-self:center!important;
    align-self:start!important;
    appearance:none!important;
    border:1px solid rgba(227,203,147,.65)!important;
    background:#fffaf1!important;
    color:#6f4f21!important;
    border-radius:22px!important;
    padding:9px 14px!important;
    font-size:11px!important;
    letter-spacing:.03em!important;
  }
}


/* v1.0.4.4 — Desktop fullscreen fit only.
   Keep the complete two-page spread inside the viewport so the bottom edge
   and page numbers are never cropped. Normal desktop, tablet, and mobile are
   unchanged. */
@media (min-width:701px){
  .vms-book-shell:fullscreen,
  .vms-book-shell:-webkit-full-screen{
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 58px!important;
    align-items:center!important;
    justify-items:center!important;
    gap:12px!important;
    padding:20px!important;
    background:#111!important;
    overflow:hidden!important;
  }
  .vms-book-shell:fullscreen .vms-book,
  .vms-book-shell:-webkit-full-screen .vms-book{
    width:min(calc(100vw - 164px),calc((100dvh - 40px) * 1.3333333))!important;
    max-width:none!important;
    height:auto!important;
    max-height:calc(100dvh - 40px)!important;
    aspect-ratio:4/3!important;
    align-self:center!important;
    justify-self:center!important;
  }
}


/* v1.0.4.5 — Text block links */
a.vms-text-overlay{
  display:inline-block;
  color:inherit;
  cursor:pointer;
}
a.vms-text-overlay:hover,
a.vms-text-overlay:focus{
  color:inherit;
}


/* v1.0.4.14 — prevent initial text-position flash */
.vms-text-overlay.vms-text-ready{
  visibility:visible;
  opacity:1;
}


/* v1.0.4.16 — YouTube popup */
.vms-youtube-popup{
  position:fixed;
  inset:0;
  z-index:2147483646;
  display:grid;
  place-items:center;
  padding:20px;
}
.vms-youtube-popup[hidden]{display:none!important}
.vms-youtube-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.84);
}
.vms-youtube-dialog{
  position:relative;
  z-index:1;
  width:min(960px,94vw);
  border-radius:12px;
  background:#111;
  box-shadow:0 24px 70px rgba(0,0,0,.55);
  overflow:visible;
}
.vms-youtube-frame-wrap{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:12px;
}
.vms-youtube-frame-wrap iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.vms-youtube-close{
  position:absolute;
  right:-12px;
  top:-12px;
  z-index:3;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid #b89a68;
  border-radius:50%;
  background:#ead9bd;
  color:#111;
  font-family:Arial,sans-serif;
  font-size:25px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(0,0,0,.24);
  appearance:none;
  -webkit-appearance:none;
}
html.vms-video-open{overflow:hidden}
@media(max-width:700px){
  .vms-youtube-popup{padding:12px}
  .vms-youtube-dialog{width:96vw}
  .vms-youtube-close{right:4px;top:-48px}
}


/* v1.0.4.17 — Mobile-safe YouTube popup */
.vms-youtube-popup{
  width:100vw;
  width:100dvw;
  height:100vh;
  height:100dvh;
  box-sizing:border-box;
}
.vms-youtube-dialog{
  max-height:calc(100dvh - 40px);
}
body.vms-video-open{
  overflow:hidden;
}
:fullscreen .vms-youtube-popup,
:-webkit-full-screen .vms-youtube-popup{
  position:fixed;
  inset:0;
  z-index:2147483647;
}
@media(max-width:700px){
  .vms-youtube-popup{
    display:flex;
    align-items:center;
    justify-content:center;
    padding:16px 10px;
  }
  .vms-youtube-dialog{
    width:min(96vw,720px);
    max-height:88dvh;
  }
  .vms-youtube-frame-wrap{
    width:100%;
    aspect-ratio:9/16;
    max-height:82dvh;
  }
  .vms-youtube-close{
    right:6px;
    top:6px;
  }
}


/* v1.0.4.17 — Affiliate disclosure above the magazine */
.vms-reader,
.vms-magazine-wrap,
.vms-shell{
  position:relative;
}
.vms-disclaimer,
.vms-affiliate-disclaimer,
.affiliate-disclaimer{
  order:-10;
  width:100%;
  margin:0 auto 14px;
  padding:0 14px;
  box-sizing:border-box;
  text-align:center;
  color:#5f574f;
  font-size:14px;
  line-height:1.45;
}
@media(max-width:700px){
  .vms-disclaimer,
  .vms-affiliate-disclaimer,
  .affiliate-disclaimer{
    margin-bottom:10px;
    font-size:12px;
  }
}


/* Ensure disclosure is clearly above the magazine */
.vms-associate-disclosure{
  width:100%;
  max-width:1180px;
  margin:0 auto 14px;
  padding:0 16px;
  box-sizing:border-box;
  text-align:center;
  color:#5f574f;
  font-size:14px;
  line-height:1.45;
}
@media(max-width:700px){
  .vms-associate-disclosure{
    margin-bottom:10px;
    padding:0 12px;
    font-size:12px;
  }
}


/* v1.0.4.20 — embedded AWeber forms */
.vms-embed-overlay{
  display:block;
  max-width:92%;
  overflow:hidden;
  background:transparent;
  text-shadow:none!important;
}
.vms-embed-overlay iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:transparent;
}


/* v1.0.4.22 — generic HTML/CSS/JavaScript sandbox */
.vms-embed-overlay iframe{
  overflow:auto;
}

/* v1.0.4.25 — unified embedded-content scaling */
.vms-embed-overlay{position:absolute;overflow:hidden!important}
.vms-embed-overlay iframe{
  position:absolute;left:0;top:0;max-width:none!important;max-height:none!important;
  border:0;transform-origin:top left;
}

/* v1.0.4.26 — auto-fit form height and keep inputs usable */
.vms-embed-overlay{
  overflow:visible!important;
  z-index:20;
}
.vms-embed-overlay iframe{
  pointer-events:auto;
}


/* v1.0.4.27 — refined magazine depth shadows */
/* Narrower outside lift so the magazine does not look like it is floating. */
.vms-persistent-face{
  box-shadow:0 9px 22px rgba(0,0,0,.24)!important;
}

/* Thin, darker center fold for a more realistic paper crease. */
.vms-spine{
  width:10px!important;
  opacity:.82!important;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 18%,
    rgba(0,0,0,.34) 47%,
    rgba(0,0,0,.42) 50%,
    rgba(0,0,0,.34) 53%,
    rgba(0,0,0,.08) 82%,
    transparent 100%
  )!important;
}

@media(max-width:700px){
  .vms-persistent-face{
    box-shadow:0 6px 14px rgba(0,0,0,.22)!important;
  }
  .vms-spine{
    width:8px!important;
  }
}


/* v1.0.4.31 — readable interactive HTML/forms */
.vms-embed-overlay{
  overflow:visible!important;
}
.vms-embed-overlay > iframe{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  transform:none!important;
  transform-origin:top left!important;
  pointer-events:auto!important;
}


/* v1.0.4.33 — mobile proportional HTML without page blinking */
.vms-embed-overlay{
  visibility:hidden;
  opacity:0;
}
.vms-embed-overlay.vms-text-ready{
  visibility:visible;
  opacity:1;
}

/* Clip fullscreen pages without hiding/repainting the whole viewer. */
@media(max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-viewer,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-page,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-face{
    overflow:hidden!important;
    clip-path:inset(0 round 8px)!important;
  }
}


/* v1.0.4.37 — regular text appears immediately on mobile page turns */
.vms-text-overlay:not(.vms-embed-overlay){
  visibility:visible!important;
  opacity:1!important;
}


/* v1.0.4.38 — instant text at saved coordinates, no top-left slide */
.vms-text-overlay:not(.vms-embed-overlay){
  visibility:visible!important;
  opacity:1!important;
  transition:none!important;
  animation:none!important;
}


/* v1.0.4.40 — regular-mobile form resized without cropping */
@media(max-width:700px){
  .vms-book-shell:not(.vms-mobile-single-fullscreen) .vms-embed-overlay{
    overflow:visible!important;
  }

  .vms-book-shell:not(.vms-mobile-single-fullscreen) .vms-embed-overlay > iframe{
    transform:scale(var(--vms-embed-scale,1))!important;
    transform-origin:top left!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-embed-overlay > iframe{
    transform:none!important;
    width:100%!important;
  }
}


/* v1.0.4.41 — iPhone-safe in-page fullscreen fallback */
html.vms-fullscreen-scroll-lock,
body.vms-fullscreen-scroll-lock{
  overflow:hidden!important;
  overscroll-behavior:none!important;
}

@media(max-width:700px){
  .vms-book-shell.vms-ios-pseudo-fullscreen.vms-mobile-single-fullscreen{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    width:100vw!important;
    height:100dvh!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr) 54px!important;
    grid-template-rows:auto auto!important;
    gap:10px 8px!important;
    align-content:center!important;
    align-items:center!important;
    padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important;
    margin:0!important;
    background:#111!important;
    overflow:hidden!important;
    isolation:isolate!important;
  }

  .vms-book-shell.vms-ios-pseudo-fullscreen .vms-toolbar,
  .vms-book-shell.vms-ios-pseudo-fullscreen .vms-associate-disclosure{
    display:none!important;
  }
}

/* v2.14.0 — desktop regular-view fit only. Mobile and fullscreen unchanged. */
@media (min-width:701px){
  .vms-reader{
    width:min(90vw,1188px)!important;
    max-width:1236px!important;
    margin:10px auto!important;
    padding:10px 12px 12px!important;
  }
  .vms-toolbar{
    margin-top:8px!important;
  }
  .vms-counter{
    display:none!important;
  }
}

/* v2.17.0 — desktop regular view approximately 4% larger while still fitting by width and height.
   Keeps the full book, bottom page artwork, and Full Screen control visible
   at 100% browser zoom. Mobile and native fullscreen are unchanged. */
@media (min-width:701px){
  .vms-reader{
    width:min(96vw, calc((100vh - 145px) * 1.3333333 + 140px))!important;
    max-width:none!important;
    margin:8px auto!important;
    padding:8px 10px 10px!important;
  }
  .vms-book{
    width:100%!important;
    max-width:calc((100vh - 145px) * 1.3333333)!important;
    justify-self:center!important;
  }
  .vms-toolbar{
    margin-top:6px!important;
  }
  .vms-counter{
    display:none!important;
  }
}


/* v2.18.0 — centered two-line affiliate disclosure */
.vms-associate-disclosure{
  width:100%;
  max-width:1180px;
  margin:0 auto 14px;
  padding:0 16px;
  box-sizing:border-box;
  text-align:center;
  color:#5f574f;
  font-size:14px;
  line-height:1.45;
}
.vms-associate-disclosure span{
  display:block;
}


/* v2.20.0 — iPad/tablet arrow placement corrected.
   Regular view: arrows remain on the left and right sides.
   Fullscreen: arrows sit directly underneath the magazine, not at the bottom of the screen.
   Phone/mobile rules remain untouched. */
@media (min-width:701px) and (max-width:1180px){
  .vms-reader{
    width:100%!important;
    max-width:none!important;
    margin:8px auto!important;
    padding:8px 8px 10px!important;
  }

  /* REGULAR TABLET VIEW: arrows on the two sides */
  .vms-book-shell{
    width:100%!important;
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 58px!important;
    grid-template-rows:auto!important;
    gap:0 8px!important;
    align-items:center!important;
    justify-items:center!important;
  }

  .vms-book{
    grid-column:2!important;
    grid-row:1!important;
    width:min(90vw, calc((100dvh - 135px) * 1.3333333))!important;
    max-width:none!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    justify-self:center!important;
  }

  .vms-prev{
    grid-column:1!important;
    grid-row:1!important;
    justify-self:center!important;
    align-self:center!important;
  }

  .vms-next{
    grid-column:3!important;
    grid-row:1!important;
    justify-self:center!important;
    align-self:center!important;
  }

  .vms-toolbar{
    margin-top:2px!important;
  }

  /* FULLSCREEN TABLET VIEW: magazine and arrows grouped together in the center */
  .vms-book-shell:fullscreen,
  .vms-book-shell:-webkit-full-screen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen{
    width:100vw!important;
    height:100dvh!important;
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:1fr 64px 64px 1fr!important;
    grid-template-rows:auto!important;
    gap:8px 14px!important;
    padding:10px!important;
    background:#111!important;
    overflow:hidden!important;
    align-content:center!important;
    align-items:center!important;
    justify-items:center!important;
  }

  .vms-book-shell:fullscreen .vms-book,
  .vms-book-shell:-webkit-full-screen .vms-book,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-book{
    grid-column:1 / -1!important;
    grid-row:1!important;
    width:min(98vw, calc((100dvh - 88px) * 1.3333333))!important;
    max-width:none!important;
    max-height:calc(100dvh - 88px)!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    align-self:center!important;
    justify-self:center!important;
  }

  .vms-book-shell:fullscreen .vms-prev,
  .vms-book-shell:-webkit-full-screen .vms-prev,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-prev{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:end!important;
    align-self:start!important;
  }

  .vms-book-shell:fullscreen .vms-next,
  .vms-book-shell:-webkit-full-screen .vms-next,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-next{
    grid-column:3!important;
    grid-row:2!important;
    justify-self:start!important;
    align-self:start!important;
  }
}

/* v2.21 tablet fullscreen overlay tweaks */
@media (min-width:701px) and (max-width:1180px){
.vms-book-shell.vms-tablet-pseudo-fullscreen .vms-prev,
.vms-book-shell:fullscreen .vms-prev,
.vms-book-shell:-webkit-full-screen .vms-prev{
  grid-column:1!important;grid-row:1!important;align-self:center!important;justify-self:start!important;z-index:20!important;
}
.vms-book-shell.vms-tablet-pseudo-fullscreen .vms-next,
.vms-book-shell:fullscreen .vms-next,
.vms-book-shell:-webkit-full-screen .vms-next{
  grid-column:4!important;grid-row:1!important;align-self:center!important;justify-self:end!important;z-index:20!important;
}
.vms-toolbar{margin-top:12px!important;}
}


/* v2.22.0 — iPad/tablet arrow symmetry and toolbar spacing */
@media (min-width:701px) and (max-width:1180px){
  /* Regular tablet view: both arrows overlay the magazine edges equally */
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen){
    position:relative!important;
  }

  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev,
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    position:absolute!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:30!important;
    margin:0!important;
  }

  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev{
    left:10px!important;
  }

  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    right:10px!important;
  }

  /* Give the Full Screen / Exit Full Screen control a little breathing room */
  .vms-toolbar{
    margin-top:18px!important;
  }
}


/* v2.23.0 — tablet fullscreen controls directly under the magazine */
@media (min-width:701px) and (max-width:1180px){
  .vms-book-shell:fullscreen,
  .vms-book-shell:-webkit-full-screen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen{
    grid-template-columns:1fr 58px minmax(130px,170px) 58px 1fr!important;
    grid-template-rows:auto 58px!important;
    column-gap:10px!important;
    row-gap:8px!important;
    align-content:center!important;
  }

  .vms-book-shell:fullscreen .vms-book,
  .vms-book-shell:-webkit-full-screen .vms-book,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-book{
    grid-column:1 / -1!important;
    grid-row:1!important;
    align-self:end!important;
    justify-self:center!important;
  }

  .vms-book-shell:fullscreen .vms-prev,
  .vms-book-shell:-webkit-full-screen .vms-prev,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-prev{
    position:static!important;
    grid-column:2!important;
    grid-row:2!important;
    transform:none!important;
    justify-self:center!important;
    align-self:start!important;
    margin:0!important;
  }

  .vms-book-shell:fullscreen .vms-fullscreen,
  .vms-book-shell:-webkit-full-screen .vms-fullscreen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-fullscreen{
    position:static!important;
    display:block!important;
    grid-column:3!important;
    grid-row:2!important;
    justify-self:center!important;
    align-self:start!important;
    margin:0!important;
    white-space:nowrap!important;
    z-index:40!important;
  }

  .vms-book-shell:fullscreen .vms-next,
  .vms-book-shell:-webkit-full-screen .vms-next,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-next{
    position:static!important;
    grid-column:4!important;
    grid-row:2!important;
    transform:none!important;
    justify-self:center!important;
    align-self:start!important;
    margin:0!important;
  }
}


/* v2.24.0 — dedicated visible Exit Full Screen button for tablet fullscreen */
.vms-tablet-exit-fullscreen{
  display:none;
}

@media (min-width:701px) and (max-width:1180px){
  .vms-book-shell:fullscreen .vms-tablet-exit-fullscreen,
  .vms-book-shell:-webkit-full-screen .vms-tablet-exit-fullscreen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-tablet-exit-fullscreen{
    display:inline-flex!important;
    grid-column:3!important;
    grid-row:2!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:start!important;
    justify-self:center!important;
    min-width:145px!important;
    min-height:42px!important;
    padding:9px 16px!important;
    margin:0!important;
    border:1px solid #cdbd9f!important;
    border-radius:22px!important;
    background:#fff!important;
    color:#1f1a15!important;
    font-size:14px!important;
    line-height:1!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    z-index:2147483646!important;
  }

  /* The regular toolbar button remains outside fullscreen. */
  .vms-book-shell:fullscreen > .vms-fullscreen,
  .vms-book-shell:-webkit-full-screen > .vms-fullscreen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen > .vms-fullscreen{
    display:none!important;
  }
}


/* v2.27.0 — Apple layout correction.
   Normal iPhone/iPad view keeps the centered front cover, opens to the standard
   two-page magazine spread, and closes on the centered back cover. The special
   one-page Apple renderer is enabled only after FULL SIZE is activated. */
.vms-reader.vms-apple-renderer:not(.vms-mobile-single-fullscreen) .vms-book{display:block!important}
.vms-reader.vms-apple-renderer:not(.vms-mobile-single-fullscreen) .vms-single-viewer{display:none!important}

.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-book{display:none!important}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-viewer{
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
  background:var(--paper)!important;
  border-radius:10px!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
  isolation:isolate!important;
  perspective:1800px!important;
  -webkit-perspective:1800px!important;
  transform:translateZ(0)!important;
  -webkit-transform:translateZ(0)!important;
}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-page{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  overflow:hidden!important;background-color:var(--paper)!important;border-radius:10px!important;
}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-sheet{
  position:absolute!important;inset:0!important;z-index:4!important;
  transform:rotateY(0deg) translateZ(1px)!important;
  transform-style:preserve-3d!important;-webkit-transform-style:preserve-3d!important;
  transition:transform .76s cubic-bezier(.42,.02,.18,1)!important;
  will-change:transform!important;pointer-events:none!important;
}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-sheet.is-forward{transform-origin:left center!important}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-sheet.is-backward{transform-origin:right center!important}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-sheet.is-forward.is-turning{transform:rotateY(-180deg) translateZ(1px)!important}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-sheet.is-backward.is-turning{transform:rotateY(180deg) translateZ(1px)!important}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-face{
  position:absolute!important;inset:0!important;backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;overflow:hidden!important;background-color:var(--paper)!important;
}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-front{transform:rotateY(0deg) translateZ(.5px)!important}
.vms-reader.vms-apple-renderer.vms-mobile-single-fullscreen .vms-single-back{display:block!important;transform:rotateY(180deg) translateZ(.5px)!important}

/* v2.28.0 — Full Screen controls locked directly underneath the magazine on
   iPhone and iPad. Placed last so no earlier fullscreen rule can push the
   arrows back to the sides or the bottom edge of the screen. */
@media(max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen{
    grid-template-rows:auto auto!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-viewer{
    grid-row:1!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-prev,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-next,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-fs-exit{
    grid-row:2!important;
    align-self:start!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-prev{grid-column:1!important;justify-self:end!important}
  .vms-book-shell.vms-mobile-single-fullscreen .vms-next{grid-column:3!important;justify-self:start!important}
}

@media (min-width:701px) and (max-width:1180px){
  .vms-book-shell:fullscreen,
  .vms-book-shell:-webkit-full-screen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen{
    grid-template-rows:auto 58px!important;
  }
  .vms-book-shell:fullscreen .vms-book,
  .vms-book-shell:-webkit-full-screen .vms-book,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-book{
    grid-row:1!important;
  }
  .vms-book-shell:fullscreen .vms-prev,
  .vms-book-shell:-webkit-full-screen .vms-prev,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-prev,
  .vms-book-shell:fullscreen .vms-next,
  .vms-book-shell:-webkit-full-screen .vms-next,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-next{
    position:static!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:center!important;
    transform:none!important;
    margin:0!important;
  }
  .vms-book-shell:fullscreen .vms-prev,
  .vms-book-shell:-webkit-full-screen .vms-prev,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-prev{grid-column:2!important}
  .vms-book-shell:fullscreen .vms-next,
  .vms-book-shell:-webkit-full-screen .vms-next,
  .vms-book-shell.vms-tablet-pseudo-fullscreen .vms-next{grid-column:4!important}
}

/* Vonshae Studio 3.0 Apple-first clean renderer. Page artwork only. */
.vms-apple-clean-engine .vms-page-stack{inset:0;transform:none!important;transition:none!important;overflow:visible}
.vms-apple-clean-engine .vms-book{perspective:2400px!important;-webkit-perspective:2400px!important;overflow:visible!important}
.vms-apple-clean-engine .vms-spine{display:none!important}
.vms-apple-stage{position:absolute;inset:0;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .34s ease;will-change:transform}
.vms-apple-stage.is-front-closed{transform:translateX(-25%)}
.vms-apple-stage.is-back-closed{transform:translateX(25%)}
.vms-apple-stage.is-open{transform:translateX(0)}
.vms-apple-page{position:absolute;top:0;width:50%;height:100%;background-color:var(--paper);background-size:cover;background-position:center;background-repeat:no-repeat;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 10px 24px rgba(0,0,0,.24)}
.vms-apple-page.is-left{left:0;border-radius:10px 0 0 10px}
.vms-apple-page.is-right{left:50%;border-radius:0 10px 10px 0}
.vms-apple-page.is-blank{background:linear-gradient(135deg,#fbf2e3,#ead8bd)}
.vms-apple-turn-sheet{position:absolute;top:0;width:50%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;will-change:transform;z-index:1000;transition:transform .78s cubic-bezier(.42,.02,.18,1)}
.vms-apple-turn-sheet.is-forward{left:50%;transform-origin:left center;-webkit-transform-origin:left center;transform:rotateY(0deg);-webkit-transform:rotateY(0deg)}
.vms-apple-turn-sheet.is-forward.is-turning{transform:rotateY(-180deg);-webkit-transform:rotateY(-180deg)}
.vms-apple-turn-sheet.is-backward{left:0;transform-origin:right center;-webkit-transform-origin:right center;transform:rotateY(0deg);-webkit-transform:rotateY(0deg)}
.vms-apple-turn-sheet.is-backward.is-turning{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}
.vms-apple-face{inset:0!important;left:0!important;width:100%!important;height:100%!important;box-shadow:0 10px 24px rgba(0,0,0,.28)}
.vms-apple-face.is-front{transform:rotateY(0deg) translateZ(.5px);-webkit-transform:rotateY(0deg) translateZ(.5px);border-radius:0 10px 10px 0}
.vms-apple-face.is-back{transform:rotateY(180deg) translateZ(.5px);-webkit-transform:rotateY(180deg) translateZ(.5px);border-radius:10px 0 0 10px}
.vms-apple-stage.is-animating-forward.from-front{transform:translateX(-25%)}
.vms-apple-stage.is-animating-forward.from-front.is-centered{transform:translateX(0)}
.vms-apple-stage.is-animating-forward.to-back{transform:translateX(0)}
.vms-apple-stage.is-animating-forward.to-back.is-centered{transform:translateX(25%)}
.vms-apple-stage.is-animating-backward.from-back{transform:translateX(25%)}
.vms-apple-stage.is-animating-backward.from-back.is-centered{transform:translateX(0)}
.vms-apple-stage.is-animating-backward.to-front{transform:translateX(0)}
.vms-apple-stage.is-animating-backward.to-front.is-centered{transform:translateX(-25%)}
.vms-book-shell.vms-apple-pseudo-fullscreen{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100dvh!important;box-sizing:border-box!important;display:grid!important;grid-template-columns:58px minmax(0,1fr) 58px!important;align-items:center!important;gap:8px!important;padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important;background:#111!important;overflow:hidden!important}
.vms-book-shell.vms-apple-pseudo-fullscreen .vms-book{width:min(calc(100vw - 132px),calc((100dvh - 30px)*1.3333333))!important;max-width:none!important;justify-self:center!important}
@media(max-width:700px){
 .vms-apple-clean-engine .vms-book-shell{grid-template-columns:52px minmax(0,1fr) 52px;grid-template-rows:auto 52px}
 .vms-apple-clean-engine .vms-book{grid-column:1/-1;grid-row:1}
 .vms-apple-clean-engine .vms-prev{grid-column:1;grid-row:2;justify-self:end}
 .vms-apple-clean-engine .vms-next{grid-column:3;grid-row:2;justify-self:start}
 .vms-book-shell.vms-apple-pseudo-fullscreen{grid-template-columns:52px minmax(0,1fr) 52px!important;grid-template-rows:auto 52px!important}
 .vms-book-shell.vms-apple-pseudo-fullscreen .vms-book{grid-column:1/-1!important;grid-row:1!important;width:min(98vw,calc((100dvh - 82px)*1.3333333))!important}
}

/* v3.0.1 — iPad cover choreography and overlay first-paint guard. */
.vms-apple-clean-engine .vms-apple-stage{
  transition:transform .48s cubic-bezier(.4,0,.2,1)!important;
}
.vms-apple-clean-engine .vms-apple-turn-sheet{
  transition-duration:.82s!important;
}

/* Safari must never paint an overlay at its unscaled design size. These rules
   intentionally outrank the older global visibility overrides near the end of
   the legacy stylesheet. */
.vms-apple-clean-engine .vms-text-overlay{
  visibility:hidden!important;
  opacity:0!important;
  transition:none!important;
}
.vms-apple-clean-engine .vms-text-overlay.vms-text-ready{
  visibility:visible!important;
  opacity:1!important;
}


/* v3.0.2 — real iPad cover choreography + renderer-owned text sizing. */
.vms-apple-clean-engine .vms-apple-stage{
  transition:transform .34s cubic-bezier(.4,0,.2,1)!important;
}
.vms-apple-clean-engine .vms-apple-turn-sheet{
  transition:transform .82s cubic-bezier(.42,.02,.18,1)!important;
}

/* Front cover: the centered single-page book travels into spread position
   before the hinge rotation starts. */
.vms-apple-stage.is-animating-forward.from-front{transform:translateX(-25%)!important}
.vms-apple-stage.is-animating-forward.from-front.is-sliding-open{transform:translateX(0)!important}

/* Back cover: the final sheet turns, then the complete book travels to the
   centered single-page back-cover position. */
.vms-apple-stage.is-animating-forward.to-back{transform:translateX(0)!important}
.vms-apple-stage.is-animating-forward.to-back.is-sliding-closed{transform:translateX(25%)!important}

/* Exact reverse choreography. */
.vms-apple-stage.is-animating-backward.from-back{transform:translateX(25%)!important}
.vms-apple-stage.is-animating-backward.from-back.is-sliding-open{transform:translateX(0)!important}
.vms-apple-stage.is-animating-backward.to-front{transform:translateX(0)!important}
.vms-apple-stage.is-animating-backward.to-front.is-sliding-closed{transform:translateX(-25%)!important}

/* The Apple renderer owns text measurement. Text stays completely unpainted
   until the final page width, position and font size have all been applied. */
.vms-apple-clean-engine .vms-apple-text-overlay{
  visibility:hidden!important;
  opacity:0!important;
  transition:none!important;
  animation:none!important;
  contain:layout style paint;
}
.vms-apple-clean-engine .vms-apple-text-overlay.vms-text-ready{
  visibility:visible!important;
  opacity:1!important;
}

/* v3.0.4 — iPad cover/back-cover motion matched to reference.
   Slide and rotation run as one coordinated movement. */
.vms-apple-clean-engine .vms-apple-stage{
  transition:transform .78s cubic-bezier(.42,.02,.18,1)!important;
}
.vms-apple-clean-engine .vms-apple-turn-sheet{
  transition:transform .78s cubic-bezier(.42,.02,.18,1)!important;
}
.vms-apple-stage.is-animating-forward.from-front,
.vms-apple-stage.is-animating-backward.to-front.is-sliding-closed{
  transform:translateX(-25%)!important;
}
.vms-apple-stage.is-animating-forward.from-front.is-sliding-open,
.vms-apple-stage.is-animating-backward.from-back.is-sliding-open{
  transform:translateX(0)!important;
}
.vms-apple-stage.is-animating-forward.to-back.is-sliding-closed,
.vms-apple-stage.is-animating-backward.from-back{
  transform:translateX(25%)!important;
}
.vms-apple-stage.is-animating-forward.to-back,
.vms-apple-stage.is-animating-backward.to-front{
  transform:translateX(0)!important;
}


/* v3.0.5 — true two-phase iPad cover choreography.
   The whole closed book slides right first. Only then does the physical cover
   sheet rotate, with page 2 on its reverse face. */
.vms-apple-clean-engine .vms-apple-stage{
  transition:transform .34s cubic-bezier(.4,0,.2,1)!important;
}
.vms-apple-clean-engine .vms-apple-turn-sheet{
  transition:transform .78s cubic-bezier(.42,.02,.18,1)!important;
}
.vms-apple-stage.is-animating-forward.from-front{
  transform:translateX(-25%)!important;
}
.vms-apple-stage.is-animating-forward.from-front.is-sliding-open{
  transform:translateX(0)!important;
}
.vms-apple-stage.is-animating-forward.to-back{
  transform:translateX(0)!important;
}
.vms-apple-stage.is-animating-forward.to-back.is-sliding-closed{
  transform:translateX(25%)!important;
}
.vms-apple-stage.is-animating-backward.from-back{
  transform:translateX(25%)!important;
}
.vms-apple-stage.is-animating-backward.from-back.is-sliding-open{
  transform:translateX(0)!important;
}
.vms-apple-stage.is-animating-backward.to-front{
  transform:translateX(0)!important;
}
.vms-apple-stage.is-animating-backward.to-front.is-sliding-closed{
  transform:translateX(-25%)!important;
}

/* v3.0.6 — iPad overlay containment, page labels, embeds and fullscreen exit */
.vms-apple-clean-engine .vms-apple-page{
  overflow:hidden!important;
  contain:layout paint!important;
  isolation:isolate!important;
}
.vms-apple-clean-engine .vms-apple-page > .vms-text-overlay,
.vms-apple-clean-engine .vms-apple-page > .vms-hotspot,
.vms-apple-clean-engine .vms-apple-page > .vms-page-no{
  position:absolute!important;
}
.vms-apple-clean-engine .vms-apple-text-overlay{
  visibility:hidden;
  opacity:0;
  z-index:20;
  max-width:85%;
  width:max-content;
  white-space:pre-wrap;
  overflow-wrap:break-word;
  transform:translate(-50%,0);
}
.vms-apple-clean-engine .vms-apple-text-overlay.vms-text-ready{
  visibility:visible!important;
  opacity:1!important;
}
.vms-apple-clean-engine .vms-apple-embed-overlay{
  visibility:hidden;
  opacity:0;
  overflow:hidden!important;
  z-index:25;
  transform:translate(-50%,0);
  background:transparent;
}
.vms-apple-clean-engine .vms-apple-embed-overlay.vms-text-ready{
  visibility:visible!important;
  opacity:1!important;
}
.vms-apple-clean-engine .vms-apple-embed-overlay iframe{
  position:absolute!important;
  left:0!important;
  top:0!important;
  max-width:none!important;
  border:0!important;
  background:transparent!important;
  pointer-events:auto!important;
}
.vms-apple-clean-engine .vms-apple-hotspot{z-index:30}
.vms-apple-clean-engine .vms-apple-page-no{
  display:block!important;
  z-index:40!important;
  bottom:8px!important;
  right:10px!important;
}
.vms-book-shell.vms-apple-pseudo-fullscreen .vms-tablet-exit-fullscreen{
  display:inline-flex!important;
  position:absolute!important;
  left:50%!important;
  bottom:max(14px,env(safe-area-inset-bottom))!important;
  transform:translateX(-50%)!important;
  z-index:2147483647!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
}


/* v3.0.7 — definitive iPad overlay ownership and fullscreen controls. */
.vms-apple-clean-engine .vms-apple-page{
  overflow:hidden!important;
  clip-path:inset(0 round 10px)!important;
  -webkit-clip-path:inset(0 round 10px)!important;
}
.vms-apple-clean-engine .vms-apple-text-overlay,
.vms-apple-clean-engine .vms-apple-embed-overlay{
  position:absolute!important;
  margin:0!important;
  box-sizing:border-box!important;
  transform:translate(-50%,0)!important;
  -webkit-transform:translate(-50%,0)!important;
}
.vms-apple-clean-engine .vms-apple-text-overlay{
  max-width:88%!important;
  overflow:hidden!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.vms-apple-clean-engine .vms-apple-embed-overlay{
  display:block!important;
  overflow:hidden!important;
  pointer-events:auto!important;
}
.vms-apple-clean-engine .vms-apple-embed-overlay iframe{
  display:block!important;
  margin:0!important;
  border:0!important;
  opacity:1!important;
  visibility:visible!important;
}
.vms-apple-clean-engine .vms-apple-page-no{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:auto!important;
  top:auto!important;
  right:10px!important;
  bottom:8px!important;
  transform:none!important;
  -webkit-transform:none!important;
  z-index:2147480000!important;
  pointer-events:none!important;
}
.vms-book-shell.vms-apple-pseudo-fullscreen .vms-tablet-exit-fullscreen,
.vms-book-shell.vms-tablet-pseudo-fullscreen .vms-tablet-exit-fullscreen{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  position:fixed!important;
  left:50%!important;
  bottom:max(14px,env(safe-area-inset-bottom))!important;
  transform:translateX(-50%)!important;
  -webkit-transform:translateX(-50%)!important;
  z-index:2147483647!important;
}


/* v3.0.9 — iPad ONLY: working HTML + true full-size layout.
   Scoped with .vms-apple-ipad so iPhone is untouched. */
@media (min-width:701px){
  .vms-apple-ipad .vms-book-shell.vms-apple-pseudo-fullscreen{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    margin:0!important;
    padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))!important;
    display:grid!important;
    grid-template-columns:1fr 58px minmax(140px,180px) 58px 1fr!important;
    grid-template-rows:auto 56px!important;
    column-gap:10px!important;
    row-gap:6px!important;
    align-items:center!important;
    justify-items:center!important;
    align-content:center!important;
    background:#111!important;
    overflow:hidden!important;
  }
  .vms-apple-ipad .vms-book-shell.vms-apple-pseudo-fullscreen .vms-book{
    grid-column:1/-1!important;
    grid-row:1!important;
    width:min(98vw,calc((100dvh - 78px) * 1.3333333))!important;
    max-width:none!important;
    height:auto!important;
    max-height:calc(100dvh - 78px)!important;
    aspect-ratio:4/3!important;
    align-self:end!important;
    justify-self:center!important;
  }
  .vms-apple-ipad .vms-book-shell.vms-apple-pseudo-fullscreen .vms-prev{
    position:static!important;
    grid-column:2!important;
    grid-row:2!important;
    transform:none!important;
    margin:0!important;
    align-self:start!important;
    justify-self:center!important;
  }
  .vms-apple-ipad .vms-book-shell.vms-apple-pseudo-fullscreen .vms-fullscreen{
    display:inline-flex!important;
    position:static!important;
    grid-column:3!important;
    grid-row:2!important;
    transform:none!important;
    margin:0!important;
    min-height:42px!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:start!important;
    justify-self:center!important;
    white-space:nowrap!important;
    z-index:2147483647!important;
  }

  .vms-apple-ipad .vms-book-shell.vms-apple-pseudo-fullscreen .vms-tablet-exit-fullscreen{
    display:none!important;
  }
  .vms-apple-ipad .vms-book-shell.vms-apple-pseudo-fullscreen .vms-next{
    position:static!important;
    grid-column:4!important;
    grid-row:2!important;
    transform:none!important;
    margin:0!important;
    align-self:start!important;
    justify-self:center!important;
  }
}
.vms-apple-ipad .vms-apple-embed-overlay iframe{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  border:0!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  -webkit-overflow-scrolling:touch!important;
}


/* v3.0.19 — iPhone single-page fullscreen by device, not viewport width.
   This intentionally sits outside max-width media queries because Safari can
   report a desktop-style viewport on an actual iPhone. iPad is unaffected. */
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen.vms-ios-pseudo-fullscreen{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100dvh!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) 54px!important;
  grid-template-rows:minmax(0,1fr) 56px!important;
  gap:8px!important;
  align-items:center!important;
  justify-items:center!important;
  padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important;
  margin:0!important;
  background:#111!important;
  overflow:hidden!important;
}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-book{display:none!important}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-single-viewer{
  display:block!important;
  position:relative!important;
  grid-column:1/-1!important;
  grid-row:1!important;
  width:min(92vw,calc((100dvh - 86px) * .6666667))!important;
  height:auto!important;
  max-height:calc(100dvh - 86px)!important;
  aspect-ratio:2/3!important;
  justify-self:center!important;
  align-self:center!important;
  perspective:2200px!important;
  -webkit-perspective:2200px!important;
  transform-style:preserve-3d!important;
  -webkit-transform-style:preserve-3d!important;
  overflow:visible!important;
}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-single-page,
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-single-sheet,
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-single-face{
  overflow:hidden!important;
  clip-path:inset(0 round 8px)!important;
}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-prev{
  display:grid!important;grid-column:1!important;grid-row:2!important;
  justify-self:end!important;align-self:start!important;
}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-next{
  display:grid!important;grid-column:3!important;grid-row:2!important;
  justify-self:start!important;align-self:start!important;
}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-fs-exit{
  display:block!important;grid-column:2!important;grid-row:2!important;
  justify-self:center!important;align-self:start!important;
  appearance:none!important;border:1px solid rgba(227,203,147,.65)!important;
  background:#fffaf1!important;color:#6f4f21!important;border-radius:22px!important;
  padding:9px 14px!important;font-size:11px!important;white-space:nowrap!important;
}
.vms-book-shell.vms-iphone-device.vms-mobile-single-fullscreen .vms-mobile-counter{display:none!important}

/* v3.0.22 — iPhone regular-view clean sheet engine only. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-persistent-sheet{
  visibility:hidden!important;
  pointer-events:none!important;
}
.vms-iphone-clean-regular .vms-iphone-clean-stage{
  display:block;
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
  -webkit-transform-style:preserve-3d;
  transition:transform .34s ease;
  will-change:transform;
}
.vms-iphone-clean-regular.vms-mobile-single-fullscreen .vms-iphone-clean-stage{
  display:none!important;
}
.vms-iphone-clean-regular .vms-iphone-clean-page{
  overflow:hidden!important;
  -webkit-backface-visibility:hidden!important;
  backface-visibility:hidden!important;
  transform-style:preserve-3d!important;
  -webkit-transform-style:preserve-3d!important;
}
.vms-iphone-clean-regular .vms-iphone-clean-page > .vms-page-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}
.vms-iphone-clean-regular .vms-apple-turn-sheet{
  -webkit-backface-visibility:hidden!important;
  backface-visibility:hidden!important;
}


/* v3.0.23 — regular iPhone overlay lifecycle. Interactive HTML, forms,
   text and hotspots are never mounted inside the temporary physical turn. */
.vms-iphone-clean-regular .vms-apple-stage[class*="is-animating-"] .vms-text-overlay,
.vms-iphone-clean-regular .vms-apple-stage[class*="is-animating-"] .vms-hotspot,
.vms-iphone-clean-regular .vms-apple-stage[class*="is-animating-"] iframe{
  display:none!important;
  pointer-events:none!important;
}


/* v3.0.27 — regular iPhone centering on the actual live renderer wrapper.
   The inner stage keeps all of its existing cover/spread animation transforms. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-offset{
  position:absolute!important;
  inset:0!important;
  transform:translateX(18px)!important;
  -webkit-transform:translateX(18px)!important;
  transform-style:preserve-3d!important;
  -webkit-transform-style:preserve-3d!important;
  pointer-events:none!important;
}
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-offset .vms-iphone-clean-stage{
  pointer-events:auto!important;
}
.vms-iphone-clean-regular.vms-mobile-single-fullscreen .vms-iphone-clean-offset{
  display:none!important;
}


/* v3.0.29 — fixed regular-iPhone positioning.
   Closed covers are centered. The open book moves right once and remains
   locked there for every interior turn, so the spread does not sway left/right. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-page-stack,
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-offset{
  transform:none!important;
  -webkit-transform:none!important;
}

/* Closed front and back covers: centered single-page positions. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-front-closed{
  transform:translateX(-25%)!important;
  -webkit-transform:translateX(-25%)!important;
}
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-back-closed{
  transform:translateX(25%)!important;
  -webkit-transform:translateX(25%)!important;
}

/* One fixed open-book position. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-open,
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-forward:not(.from-front):not(.to-back),
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-backward:not(.from-back):not(.to-front),
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-forward.to-back,
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-backward.to-front{
  transform:translateX(46px)!important;
  -webkit-transform:translateX(46px)!important;
}

/* Front cover opening: center first, then slide right and stay there. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-forward.from-front{
  transform:translateX(-25%)!important;
  -webkit-transform:translateX(-25%)!important;
}
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-forward.from-front.is-sliding-open{
  transform:translateX(46px)!important;
  -webkit-transform:translateX(46px)!important;
}

/* Back cover reverse choreography. */
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-forward.to-back.is-sliding-closed,
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-backward.from-back{
  transform:translateX(25%)!important;
  -webkit-transform:translateX(25%)!important;
}
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-backward.from-back.is-sliding-open{
  transform:translateX(46px)!important;
  -webkit-transform:translateX(46px)!important;
}
.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen) .vms-iphone-clean-stage.is-animating-backward.to-front.is-sliding-closed{
  transform:translateX(-25%)!important;
  -webkit-transform:translateX(-25%)!important;
}

/* v4.0.4 — container-responsive preview layout.
   On desktop and tablet regular view, the reader now respects the width of
   the Elementor column/container instead of sizing itself from the browser
   viewport. Phone/mobile and all fullscreen layouts remain unchanged. */
@media (min-width:701px){
  .vms-reader{
    width:100%!important;
    max-width:calc((100vh - 145px) * 1.3333333 + 140px)!important;
    box-sizing:border-box!important;
  }

  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen){
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    width:100%!important;
    max-width:calc((100vh - 145px) * 1.3333333)!important;
    min-width:0!important;
  }
}

@media (min-width:701px) and (max-width:1180px){
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    width:100%!important;
    max-width:calc((100dvh - 135px) * 1.3333333)!important;
  }
}


/* v4.0.5 — Per-publication desktop Side Form layout.
   Centered publications, tablets, phones, and fullscreen remain unchanged. */
@media (min-width:1181px){
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen):has(.vms-book.is-open) .vms-prev{
    position:relative!important;
    z-index:40!important;
    transform:translateX(34px)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen):has(.vms-book.is-open) .vms-next{
    position:relative!important;
    z-index:40!important;
    transform:translateX(-34px)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen):has(.vms-book.is-open) .vms-prev:hover{
    transform:translateX(34px) scale(1.04)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen):has(.vms-book.is-open) .vms-next:hover{
    transform:translateX(-34px) scale(1.04)!important;
  }
}

/* v4.0.6 — Per-publication disclosure + Side Form sizing.
   Only Side Form publications use the custom size variable. Centered magazines
   and all tablet/phone/fullscreen engines keep their existing dimensions. */
.vms-associate-disclosure{
  display:block;
  width:min(94%,720px);
  margin:12px auto 0!important;
  text-align:center!important;
  font-size:var(--vms-disclosure-font-size,14px)!important;
  line-height:1.45!important;
  opacity:.58!important;
  color:var(--ink)!important;
}

@media (min-width:1181px){
  .vms-reader.vms-layout-side-form{
    overflow:visible!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen){
    overflow:visible!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    width:var(--vms-side-form-width,100%)!important;
    max-width:none!important;
    justify-self:center!important;
  }
}


/* v4.0.7 SAFE — Side Form desktop choreography only.
   Every rule is scoped to .vms-layout-side-form in regular desktop view.
   Centered publications, tablet/phone layouts, and fullscreen are untouched. */
@media (min-width:1181px){
  .vms-reader.vms-layout-side-form,
  .vms-reader.vms-layout-side-form .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen){
    overflow:visible!important;
  }

  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    height:min(var(--vms-side-form-height,760px), calc(100vh - 70px))!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    aspect-ratio:4/3!important;
    justify-self:end!important;
  }

  /* Keep controls clickable even when the oversized book overlaps grid columns. */
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-nav{
    position:relative!important;
    z-index:2147483000!important;
    pointer-events:auto!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev{
    transform:translateX(-26px)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    transform:translateX(-24px)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev:hover{
    transform:translateX(-26px) scale(1.04)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next:hover{
    transform:translateX(-24px) scale(1.04)!important;
  }

  /* Closed front cover lives on the right half of the eventual spread.
     Opening therefore grows left into the empty side of the landing page. */
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-front-closed .vms-page-stack,
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-opening .vms-page-stack,
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-opening.at-spine .vms-page-stack,
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-closing-front .vms-page-stack,
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-closing-front.center-front .vms-page-stack{
    transform:translateX(0)!important;
  }

  /* Turned back cover physically occupies the left half; shift it one half-book
     to the right so front and back covers share the same side-form home position. */
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-back-closed .vms-page-stack{
    transform:translateX(50%)!important;
  }

  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.is-open .vms-page-stack{
    transform:translateX(0)!important;
  }
}


/* v4.6.6 SAFE — targeted Side Form desktop correction only.
   No magazine sizing, page-turn, fullscreen, tablet, iPhone, iPad, or centered-layout changes. */
@media (min-width:1181px){
  /* Move ONLY the left arrow farther outward. */
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev{
    transform:translateX(-72px)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev:hover{
    transform:translateX(-72px) scale(1.04)!important;
  }

  /* Keep the right arrow exactly at the v4.0.8 Side Form position. */
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    transform:translateX(-24px)!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next:hover{
    transform:translateX(-24px) scale(1.04)!important;
  }

  /* Add breathing room under the magazine without changing magazine dimensions. */
  .vms-reader.vms-layout-side-form > .vms-associate-disclosure{
    margin-top:30px!important;
  }
}

/* v4.6.6 SAFE — Side Form desktop left-arrow docking without grid reflow.
   The book is explicitly pinned to grid column 2 so removing the left button
   from normal grid flow cannot make the magazine jump into column 1.
   Right arrow remains in its original grid column. */
@media (min-width:1181px){
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    grid-column:2!important;
    grid-row:1!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    grid-column:3!important;
    grid-row:1!important;
  }
}


/* v4.6.6 SAFE — Side Form desktop PREVIOUS arrow only.
   Closed cover: dock to the visible cover's left edge (the midpoint of the
   spread stage). Open spread: dock to the real left edge. The left position
   animates with the cover opening so there is no jump. Right arrow and book
   dimensions are intentionally untouched. */
@media (min-width:1181px){
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev{
    transform:none!important;
    transition:left .36s cubic-bezier(.4,0,.2,1), transform .15s ease!important;
  }
  .vms-reader.vms-layout-side-form
  .vms-book-shell:not(:fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev:hover{
    transform:scale(1.04)!important;
  }
}

/* v4.6.6 — regular phone view only: larger/taller Android + iPhone magazine.
   The full book is 138% of the mobile shell, so a closed single cover is about
   69% of the shell width — visually lining its outer edges up with the two
   navigation buttons below. Aspect ratio is preserved, so height increases
   proportionally. Desktop, iPad/tablet, and every fullscreen mode are excluded. */
@media (max-width:700px){
  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen){
    overflow:visible!important;
  }

  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    width:138%!important;
    max-width:none!important;
    justify-self:center!important;
  }
}


/* v4.6.6 — RESTORED TABLET / iPAD PRESENTATION
   Scope: 701px–1180px only.
   Regular view: larger/taller magazine with both arrows underneath, like phones.
   Full screen: one-page flip reader that fills the tablet screen, larger than phone.
   Desktop and phone rules are intentionally untouched. */
@media (min-width:701px) and (max-width:1180px){

  /* REGULAR TABLET VIEW */
  .vms-reader{
    width:100%!important;
    max-width:none!important;
    padding:8px 6px 12px!important;
    margin:6px auto!important;
  }

  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen){
    display:grid!important;
    grid-template-columns:1fr 64px 64px 1fr!important;
    grid-template-rows:auto 56px!important;
    column-gap:12px!important;
    row-gap:10px!important;
    width:100%!important;
    overflow:visible!important;
    align-items:center!important;
    justify-items:center!important;
    position:relative!important;
  }

  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-book{
    grid-column:1 / -1!important;
    grid-row:1!important;
    width:min(96vw, 96%, calc((100dvh - 150px) * 1.3333333))!important;
    max-width:96%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    justify-self:center!important;
    align-self:center!important;
  }

  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev,
  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    position:static!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    grid-row:2!important;
    align-self:start!important;
    margin:0!important;
    z-index:30!important;
  }

  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-prev{
    grid-column:2!important;
    justify-self:end!important;
  }

  .vms-reader .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen) .vms-next{
    grid-column:3!important;
    justify-self:start!important;
  }

  .vms-reader .vms-toolbar{
    margin-top:4px!important;
    justify-items:center!important;
  }
  .vms-reader .vms-fullscreen{
    justify-self:center!important;
  }

  /* FULLSCREEN TABLET: one large 2:3 page, not a two-page spread. */
  .vms-book-shell.vms-mobile-single-fullscreen,
  .vms-book-shell:fullscreen.vms-mobile-single-fullscreen,
  .vms-book-shell:-webkit-full-screen.vms-mobile-single-fullscreen,
  .vms-book-shell.vms-apple-pseudo-fullscreen.vms-mobile-single-fullscreen,
  .vms-book-shell.vms-tablet-pseudo-fullscreen.vms-mobile-single-fullscreen{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    width:100vw!important;
    height:100dvh!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:1fr 66px minmax(150px,190px) 66px 1fr!important;
    grid-template-rows:minmax(0,1fr) 58px!important;
    column-gap:10px!important;
    row-gap:8px!important;
    padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))!important;
    align-content:center!important;
    align-items:center!important;
    justify-items:center!important;
    background:#111!important;
    overflow:hidden!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-book{
    display:none!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-viewer{
    display:block!important;
    position:relative!important;
    grid-column:1 / -1!important;
    grid-row:1!important;
    width:min(88vw, calc((100dvh - 78px) * .6666667))!important;
    height:auto!important;
    max-height:calc(100dvh - 78px)!important;
    aspect-ratio:2/3!important;
    justify-self:center!important;
    align-self:center!important;
    overflow:hidden!important;
    border-radius:10px!important;
    background:var(--paper)!important;
    box-shadow:0 18px 42px rgba(0,0,0,.34)!important;
    perspective:2200px!important;
    -webkit-perspective:2200px!important;
    transform-style:preserve-3d!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-page{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
    border-radius:10px!important;
    background-color:var(--paper)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet{
    position:absolute!important;
    inset:0!important;
    z-index:20!important;
    transform-style:preserve-3d!important;
    -webkit-transform-style:preserve-3d!important;
    transition:transform .78s cubic-bezier(.42,.02,.18,1)!important;
    will-change:transform!important;
    pointer-events:none!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet.is-forward{
    transform-origin:left center!important;
    transform:rotateY(0deg)!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet.is-forward.is-turning{
    transform:rotateY(-180deg)!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet.is-backward{
    transform-origin:right center!important;
    transform:rotateY(0deg)!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet.is-backward.is-turning{
    transform:rotateY(180deg)!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-face{
    position:absolute!important;
    inset:0!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-front{
    transform:rotateY(0deg) translateZ(.5px)!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-back{
    display:block!important;
    transform:rotateY(180deg) translateZ(.5px)!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-prev,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-next{
    display:grid!important;
    position:static!important;
    transform:none!important;
    grid-row:2!important;
    align-self:start!important;
    margin:0!important;
    width:50px!important;
    height:50px!important;
    z-index:2147483646!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-prev{
    grid-column:2!important;
    justify-self:end!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-next{
    grid-column:4!important;
    justify-self:start!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-tablet-exit-fullscreen{
    display:inline-flex!important;
    grid-column:3!important;
    grid-row:2!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:start!important;
    justify-self:center!important;
    min-width:150px!important;
    min-height:44px!important;
    margin:0!important;
    z-index:2147483646!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen > .vms-fullscreen{
    display:none!important;
  }
}


/* v4.6.6 — TABLET FULLSCREEN MUST BE ONE PAGE ONLY.
   These rules intentionally sit last so older two-page tablet/iPad book rules
   cannot win. */
@media (min-width:701px) and (max-width:1180px){
  .vms-book-shell.vms-mobile-single-fullscreen .vms-book,
  .vms-book-shell.vms-apple-pseudo-fullscreen.vms-mobile-single-fullscreen .vms-book,
  .vms-book-shell.vms-tablet-pseudo-fullscreen.vms-mobile-single-fullscreen .vms-book,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-page-stack,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-spine{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-viewer{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:min(92vw, calc((100dvh - 82px) * .6666667))!important;
    max-width:92vw!important;
    height:auto!important;
    max-height:calc(100dvh - 82px)!important;
    aspect-ratio:2/3!important;
    margin:0 auto!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-page,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-sheet{
    width:100%!important;
    height:100%!important;
  }
}


/* v4.6.6 — PHONE REGULAR VIEW: KEEP CLOSED COVER SIZE, FIT OPEN PAGES.
   Android + iPhone only (<=700px). Fullscreen is explicitly excluded.
   Closed Front/Back Covers remain at the existing 138% size.
   Interior/open spreads are reduced so neither page is clipped and users
   do not have to zoom/shrink the browser. Desktop, tablet/iPad and Full Size
   are untouched. */
@media (max-width:700px){
  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:113%!important;
    max-width:none!important;
    justify-self:center!important;
    transition:width .28s ease!important;
  }

  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book:not(.vms-phone-open-compact){
    width:138%!important;
  }
}


/* v4.6.6 — CLEAN PHONE ORIENTATION RULES
   This replaces ALL previous landscape experiments with one controlled set.

   PORTRAIT REGULAR:
   - closed cover 138%
   - open pages 113%

   LANDSCAPE REGULAR:
   - slightly smaller than before so magazine + form fit

   LANDSCAPE FULLSCREEN:
   - true black viewport
   - cover then two-page spread
   - arrows close to magazine edges
   - dedicated Exit button in right black margin
   - no control sits on top of the magazine
   - shopping dots keep the normal Vonshae gold styling
*/

/* PORTRAIT REGULAR — restore the exact preferred sizing. */
@media (orientation:portrait) and (max-width:700px){
  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book:not(.vms-phone-open-compact){
    width:138%!important;
    max-width:none!important;
    transform:none!important;
  }

  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:113%!important;
    max-width:none!important;
    transform:none!important;
  }
}

/* REGULAR LANDSCAPE PHONE ONLY. */
@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){

  .vms-reader{
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:8px 6px 12px!important;
  }

  .vms-reader
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen){
    width:100%!important;
    max-width:none!important;
    overflow:visible!important;
  }

  /* Closed cover on the main page — large, but not crowding the form. */
  .vms-reader
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book:not(.vms-phone-open-compact){
    width:122%!important;
    max-width:none!important;
    transform:none!important;
  }

  /* Open spread on the main page — slightly smaller so the form stays visible. */
  .vms-reader
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:106%!important;
    max-width:none!important;
    transform:none!important;
  }

  /* Keep the signup form on-screen. */
  body:has(.vms-reader) .elementor-widget-html:has(input[type="email"]){
    width:min(40vw,520px)!important;
    max-width:min(40vw,520px)!important;
    min-width:360px!important;
    transform:translateX(-46px)!important;
    box-sizing:border-box!important;
  }

  body:has(.vms-reader) .elementor-widget-html:has(input[type="email"]) > .elementor-widget-container{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body:has(.vms-reader) .elementor-widget-html:has(input[type="email"]) h1,
  body:has(.vms-reader) .elementor-widget-html:has(input[type="email"]) h2,
  body:has(.vms-reader) .elementor-widget-html:has(input[type="email"]) h3,
  body:has(.vms-reader) .elementor-widget-html:has(input[type="email"]) p{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
}

/* TRUE LANDSCAPE PHONE FULLSCREEN. */
@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){

  body > .vms-book-shell.vms-phone-landscape-fullscreen{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:34px 90px 34px!important;
    box-sizing:border-box!important;
    z-index:2147483000!important;
    background:#111!important;
    overflow:hidden!important;
    display:grid!important;
    place-items:center!important;
  }

  /* Leave generous top/bottom space so the magazine can NEVER be cut off. */
  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-book{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    width:min(70vw,calc((100dvh - 100px) * 1.3333333))!important;
    max-width:none!important;
    height:auto!important;
    max-height:calc(100dvh - 100px)!important;
    aspect-ratio:4/3!important;
    margin:0!important;
    transform:none!important;
    align-self:center!important;
    justify-self:center!important;
    overflow:visible!important;
  }

  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-page-stack{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }

  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-single-viewer{
    display:none!important;
  }

  /* JS positions these next to the ACTUAL visible cover/spread edges. */
  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-prev,
  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-next{
    display:grid!important;
    visibility:visible!important;
    position:absolute!important;
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    max-width:50px!important;
    max-height:50px!important;
    margin:0!important;
    border-radius:50%!important;
    background:#17120c!important;
    color:#e3cb93!important;
    border:1px solid rgba(176,138,71,.78)!important;
    z-index:2147483646!important;
    pointer-events:auto!important;
  }

  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-prev:disabled,
  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-next:disabled{
    opacity:.28!important;
  }

  /* Dedicated exit control: RIGHT BLACK SPACE ONLY. */
  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-landscape-exit-fullscreen{
    display:inline-flex!important;
    position:absolute!important;
    right:14px!important;
    top:calc(50% + 66px)!important;
    left:auto!important;
    bottom:auto!important;
    width:118px!important;
    min-height:42px!important;
    padding:8px 10px!important;
    margin:0!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:normal!important;
    line-height:1.05!important;
    border-radius:22px!important;
    z-index:2147483647!important;
    pointer-events:auto!important;
  }

  /* The normal toolbar Full Screen button stays OUTSIDE this overlay. */
  body > .vms-book-shell.vms-phone-landscape-fullscreen > .vms-fullscreen{
    display:none!important;
  }

  /* Keep the user's normal gold shopping-dot styling. */
  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-hotspot{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
    max-width:24px!important;
    max-height:24px!important;
    padding:0!important;
    border-radius:50%!important;
    background:rgba(20,16,8,.72)!important;
    border:2px solid #e3cb93!important;
    box-shadow:0 0 0 6px rgba(227,203,147,.20)!important;
    transform:translate(-50%,-50%)!important;
    opacity:1!important;
  }

  body > .vms-book-shell.vms-phone-landscape-fullscreen .vms-hotspot::before{
    content:""!important;
    position:absolute!important;
    width:6px!important;
    height:6px!important;
    border-radius:50%!important;
    background:#e3cb93!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
  }
}


/* v4.6.6 — LANDSCAPE FULLSCREEN CORE LAYOUT IS NOW INLINE-JS.
   This avoids browser/media-query mismatches that previously moved the shell
   out of Elementor but failed to paint the black fullscreen overlay. */
.vms-landscape-exit-fullscreen{
  font-family:inherit!important;
}

/* Preserve normal Vonshae gold hotspot styling in fullscreen. */
.vms-book-shell.vms-phone-landscape-fullscreen .vms-hotspot{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  max-width:24px!important;
  max-height:24px!important;
  border-radius:50%!important;
  background:rgba(20,16,8,.72)!important;
  border:2px solid #e3cb93!important;
  box-shadow:0 0 0 6px rgba(227,203,147,.20)!important;
}
.vms-book-shell.vms-phone-landscape-fullscreen .vms-hotspot::before{
  content:""!important;
  position:absolute!important;
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
  background:#e3cb93!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
}


/* v4.6.6 — FORCE TRUE LANDSCAPE PHONE FULLSCREEN
   The active class is applied by JS only while the dedicated landscape overlay
   is running. This prevents the Elementor page/form from showing through. */
html.vms-landscape-fullscreen-active,
body.vms-landscape-fullscreen-active{
  overflow:hidden!important;
  background:#111!important;
}

body.vms-landscape-fullscreen-active > *:not(.vms-book-shell.vms-phone-landscape-fullscreen){
  visibility:hidden!important;
}

body.vms-landscape-fullscreen-active > .vms-book-shell.vms-phone-landscape-fullscreen,
body.vms-landscape-fullscreen-active > .vms-book-shell.vms-phone-landscape-fullscreen *{
  visibility:visible!important;
}

body.vms-landscape-fullscreen-active > .vms-book-shell.vms-phone-landscape-fullscreen{
  position:fixed!important;
  inset:0!important;
  margin:0!important;
  max-width:none!important;
  max-height:none!important;
  background:#111!important;
  overflow:hidden!important;
  z-index:2147483000!important;
}


/* v4.6.6 — DEDICATED LANDSCAPE FULLSCREEN CONTROLS
   These buttons are not the normal reader arrows. They exist only in landscape
   fullscreen, sit next to the magazine, and call the book engine directly. */
.vms-book-shell.vms-phone-landscape-fullscreen .vms-landscape-prev,
.vms-book-shell.vms-phone-landscape-fullscreen .vms-landscape-next{
  display:grid!important;
  place-items:center!important;
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  padding:0!important;
  border-radius:50%!important;
  background:#17120c!important;
  color:#e3cb93!important;
  border:1px solid rgba(176,138,71,.78)!important;
  font-size:44px!important;
  line-height:1!important;
  font-family:Georgia,serif!important;
  cursor:pointer!important;
}
.vms-book-shell.vms-phone-landscape-fullscreen .vms-landscape-prev:disabled,
.vms-book-shell.vms-phone-landscape-fullscreen .vms-landscape-next:disabled{
  opacity:.28!important;
}

/* Keep the same gold-ring shopping dots in landscape fullscreen. */
.vms-book-shell.vms-phone-landscape-fullscreen .vms-hotspot{
  width:24px!important;
  height:24px!important;
  padding:0!important;
  border-radius:50%!important;
  background:rgba(20,16,8,.72)!important;
  border:2px solid #e3cb93!important;
  box-shadow:0 0 0 6px rgba(227,203,147,.20)!important;
  transform:translate(-50%,-50%)!important;
  opacity:1!important;
}
.vms-book-shell.vms-phone-landscape-fullscreen .vms-hotspot::before{
  content:""!important;
  position:absolute!important;
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
  background:#e3cb93!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
}
\n\n/* v4.6.9 — Back-cover-only Front Cover shortcut across all devices/orientations. */\n.vms-front-cover-button{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  white-space:nowrap;\n}\n.vms-front-cover-button[hidden]{display:none!important}\n.vms-toolbar .vms-front-cover-button{justify-self:end}\n.vms-toolbar:has(.vms-front-cover-button:not([hidden])){grid-template-columns:1fr auto auto}\n\n@media(max-width:700px){\n  .vms-toolbar:has(.vms-front-cover-button:not([hidden])){\n    grid-template-columns:auto auto;\n    justify-content:center;\n    gap:8px;\n  }\n  .vms-toolbar:has(.vms-front-cover-button:not([hidden])) .vms-fullscreen,\n  .vms-toolbar:has(.vms-front-cover-button:not([hidden])) .vms-front-cover-button{\n    justify-self:center;\n  }\n}\n\n/* Desktop native fullscreen: keep the shortcut visible in the fullscreen shell. */\n.vms-book-shell:fullscreen.vms-at-back-cover > .vms-front-cover-button,\n.vms-book-shell:-webkit-full-screen.vms-at-back-cover > .vms-front-cover-button{\n  display:inline-flex!important;\n  position:absolute!important;\n  right:24px!important;\n  bottom:24px!important;\n  z-index:2147483647!important;\n}\n\n/* Tablet/iPad fullscreen: Front Cover sits beside Exit Full Screen. */\n.vms-book-shell.vms-at-back-cover.vms-tablet-pseudo-fullscreen > .vms-front-cover-button,\n.vms-book-shell.vms-at-back-cover.vms-apple-pseudo-fullscreen > .vms-front-cover-button{\n  display:inline-flex!important;\n  position:fixed!important;\n  left:calc(50% + 92px)!important;\n  bottom:max(14px,env(safe-area-inset-bottom))!important;\n  transform:translateX(-50%)!important;\n  z-index:2147483647!important;\n  min-height:42px!important;\n}\n.vms-book-shell.vms-at-back-cover.vms-tablet-pseudo-fullscreen .vms-tablet-exit-fullscreen,\n.vms-book-shell.vms-at-back-cover.vms-apple-pseudo-fullscreen .vms-tablet-exit-fullscreen{\n  left:calc(50% - 92px)!important;\n}\n\n/* Phone portrait fullscreen: put Front Cover beside Exit Full Screen without moving the page. */\n@media(max-width:700px){\n  .vms-book-shell.vms-at-back-cover.vms-mobile-single-fullscreen > .vms-front-cover-button{\n    display:inline-flex!important;\n    position:absolute!important;\n    left:calc(50% + 70px)!important;\n    bottom:max(10px,env(safe-area-inset-bottom))!important;\n    transform:translateX(-50%)!important;\n    z-index:2147483647!important;\n    min-height:38px!important;\n    padding:8px 11px!important;\n    font-size:11px!important;\n  }\n  .vms-book-shell.vms-at-back-cover.vms-mobile-single-fullscreen .vms-fs-exit{\n    position:absolute!important;\n    left:calc(50% - 70px)!important;\n    bottom:max(10px,env(safe-area-inset-bottom))!important;\n    transform:translateX(-50%)!important;\n    z-index:2147483647!important;\n  }\n}\n\n/* Phone landscape fullscreen: use the right-side control area, directly below Exit Full Screen. */\nbody > .vms-book-shell.vms-phone-landscape-fullscreen.vms-at-back-cover > .vms-front-cover-button{\n  display:inline-flex!important;\n  position:absolute!important;\n  right:14px!important;\n  top:calc(50% + 116px)!important;\n  left:auto!important;\n  bottom:auto!important;\n  width:118px!important;\n  min-height:42px!important;\n  padding:8px 10px!important;\n  margin:0!important;\n  align-items:center!important;\n  justify-content:center!important;\n  text-align:center!important;\n  white-space:nowrap!important;\n  border-radius:22px!important;\n  transform:none!important;\n  z-index:2147483647!important;\n  pointer-events:auto!important;\n}\n

/* v4.7.0 — iPad/tablet fixes only.
   Keep regular tablet spreads inside the viewport and ensure fullscreen
   controls remain above the single-page viewer and receive taps/clicks. */
@media (min-width:701px) and (max-width:1180px){
  .vms-book-shell.vms-mobile-single-fullscreen .vms-prev,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-next,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-tablet-exit-fullscreen,
  .vms-book-shell.vms-mobile-single-fullscreen .vms-front-cover-button{
    pointer-events:auto!important;
    touch-action:manipulation!important;
    position:relative!important;
    z-index:2147483647!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen .vms-single-viewer{
    z-index:1!important;
  }
}

/* v4.7.1 — ADAPTIVE REGULAR PHONE FIT
   Phones vary a lot in CSS viewport width, browser chrome, zoom behavior, and
   safe-area insets. Keep the existing preferred open-book size when it fits,
   but cap the open spread to the ACTUAL small viewport width so neither the
   left nor right page can be clipped on narrower iPhones. Closed-cover sizing,
   fullscreen, tablet/iPad, desktop, and landscape fullscreen are untouched. */
@media (max-width:700px) and (orientation:portrait){
  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:min(113%, calc(100svw - max(18px, env(safe-area-inset-left)) - max(18px, env(safe-area-inset-right))))!important;
    max-width:calc(100svw - max(18px, env(safe-area-inset-left)) - max(18px, env(safe-area-inset-right)))!important;
    margin-inline:auto!important;
  }
}

/* Actual iPhone clean renderer uses the same viewport-aware cap. This is kept
   separate so Android keeps its existing positioning while narrow iPhones get
   a little breathing room automatically. */
@media (max-width:700px) and (orientation:portrait){
  .vms-reader.vms-iphone-clean-regular:not(.vms-mobile-single-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:min(113%, calc(100svw - 22px - env(safe-area-inset-left) - env(safe-area-inset-right)))!important;
    max-width:calc(100svw - 22px - env(safe-area-inset-left) - env(safe-area-inset-right))!important;
  }
}


/* v4.7.2 — editor-accurate text + reliable mobile text links */
.vms-text-overlay,
.vms-text-overlay *{
  box-sizing:border-box;
}
.vms-text-overlay a,
a.vms-text-overlay,
.vms-inline-text-link{
  pointer-events:auto!important;
  touch-action:manipulation!important;
  cursor:pointer!important;
}
.vms-text-overlay a{
  color:inherit!important;
}


/* v4.7.3 — Android phone: make ALL internal text links tappable, including lower-page links. */
@media (max-width:700px) and (pointer:coarse){
  .vms-page-art .vms-text-overlay,
  .vms-page-art a.vms-text-overlay{
    z-index:2147483000!important;
  }
  .vms-page-art .vms-inline-text-link,
  .vms-page-art .vms-text-link{
    position:relative;
    z-index:2147483001!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent;
  }
}

/* v4.7.4 — PHONE REGULAR VIEW FIT RESTORE
   Keep the open two-page spread fully inside the actual phone viewport.
   This only affects portrait phone regular view. Fullscreen, landscape,
   tablet/iPad and desktop are untouched. */
@media (max-width:700px) and (orientation:portrait){
  .vms-reader{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen){
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  .vms-reader
  .vms-book-shell:not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    justify-self:center!important;
    transform:none!important;
    -webkit-transform:none!important;
  }
}

/* Keep text links above the page-turn surface without promoting the entire
   overlay to an extreme stacking layer that can interfere with phone layout. */
@media (max-width:700px) and (pointer:coarse){
  .vms-page-art .vms-text-overlay,
  .vms-page-art a.vms-text-overlay{
    z-index:60!important;
  }
  .vms-page-art .vms-inline-text-link,
  .vms-page-art .vms-text-link{
    z-index:61!important;
  }
}


/* v4.7.5 — phone TOC/text links must inherit the exact overlay typography.
   Prevent nested anchors/rich-link spans from carrying browser or editor HTML
   font sizing that makes AUTO/FASHION/FINANCE/HOME larger than the editor. */
@media (max-width:700px) and (orientation:portrait){
  .vms-page-art .vms-text-overlay > a,
  .vms-page-art .vms-text-overlay .vms-inline-text-link,
  .vms-page-art a.vms-text-overlay{
    font-size:inherit!important;
    line-height:inherit!important;
    font-family:inherit!important;
    font-weight:inherit!important;
  }
}


/* v4.7.6 — phone TOC links: exact editor typography + dependable lower-link taps.
   Rich-text HTML can carry nested inline font sizes; force only internal
   magazine-page link overlays to use the overlay's saved editor size. */
@media (max-width:700px) and (orientation:portrait){
  .vms-page-art .vms-mobile-internal-link-overlay,
  .vms-page-art .vms-mobile-internal-link-overlay *{
    line-height:inherit!important;
  }
  .vms-page-art .vms-mobile-internal-link-overlay *{
    font-size:1em!important;
  }
  .vms-page-art .vms-mobile-internal-link-overlay .vms-inline-text-link,
  .vms-page-art a.vms-mobile-internal-link-overlay.vms-text-link{
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
}


/* v4.7.8 — multiple rich-text links inside one overlay.
   Keep each nested anchor independently hit-testable without changing any
   magazine/page sizing, typography, transforms, or device layout. */
.vms-text-overlay a.vms-inline-text-link,
.vms-apple-text-overlay a.vms-inline-text-link{
  pointer-events:auto!important;
  position:relative;
  z-index:2;
  color:inherit;
}


/* v4.8.0 — regular portrait phone rich text must use the exact same compact
   text flow as the editor. No page dimensions or other device layouts change. */
@media (max-width:700px) and (orientation:portrait){
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay:not(.vms-embed-overlay){
    line-height:1.05!important;
  }
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay:not(.vms-embed-overlay) p,
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay:not(.vms-embed-overlay) div{
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay:not(.vms-embed-overlay) a{
    font-size:inherit!important;
    line-height:inherit!important;
    font-family:inherit!important;
    font-weight:inherit!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
}


/* v4.8.1 — regular portrait phone text must match editor typography exactly.
   This does not alter page/book dimensions, fullscreen, tablet, iPad, desktop,
   arrows, or flip behavior. */
@media (max-width:700px) and (orientation:portrait){
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay.vms-mobile-editor-typography,
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay.vms-mobile-editor-typography *{
    line-height:inherit!important;
  }
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay.vms-mobile-editor-typography *{
    font-size:1em!important;
    font-family:inherit!important;
    font-weight:inherit!important;
  }
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay.vms-mobile-editor-typography p,
  .vms-reader .vms-book.vms-phone-open-compact .vms-text-overlay.vms-mobile-editor-typography div{
    margin-top:0!important;
    margin-bottom:0!important;
  }
}


/* v4.8.2 — regular portrait phone open spreads only.
   Typography is recalculated in JS from each actually painted half-page after
   the larger cover compacts into the two-page spread. No book/page dimensions,
   fullscreen, desktop, tablet/iPad, arrows, or page-turn rules are changed. */


/* v4.8.3 — no sizing/layout CSS changes. Regular-phone text is remeasured in JS after the cover-to-spread width transition finishes. */

/* v4.8.4 — REGULAR PORTRAIT PHONE EDITOR-EXACT TEXT LAYER.
   Text overlays are laid out at the editor's native 1000 x 1500 coordinates,
   then the whole text layer scales with the actual magazine half-page. This
   affects only regular portrait phones; fullscreen/tablet/desktop are untouched. */
@media (max-width:700px) and (orientation:portrait){
  .vms-page-art > .vms-phone-text-design-layer{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:1000px!important;
    height:1500px!important;
    transform-origin:top left!important;
    -webkit-transform-origin:top left!important;
    pointer-events:none!important;
    z-index:7!important;
    overflow:visible!important;
  }
  .vms-phone-text-design-layer > .vms-text-overlay{
    max-width:85%!important;
    pointer-events:auto!important;
    line-height:1.05;
  }
  .vms-phone-text-design-layer > .vms-text-overlay a,
  .vms-phone-text-design-layer > .vms-text-overlay .vms-inline-text-link{
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
}


/* v4.8.6 — FULLSCREEN TEXT POSITION LOCK
   In the one-page fullscreen renderer, never reveal editor text until the
   final page geometry has settled. This removes the visible text snap/jump
   during page changes, especially page 2, page 15 and the back page. */
.vms-single-viewer.vms-fs-text-lock:not(.vms-fs-text-stable) .vms-text-overlay{
  visibility:hidden!important;
  opacity:0!important;
  transition:none!important;
}
.vms-single-viewer.vms-fs-text-lock.vms-fs-text-stable .vms-text-overlay.vms-text-ready{
  visibility:visible!important;
  opacity:1!important;
  transition:none!important;
}


/* v4.8.7 — FULLSCREEN PAGE-TURN TEXT STABILITY
   The destination page now remains in place after the 3D turn instead of
   being destroyed and rebuilt. Keep the fullscreen viewer geometry fixed on
   the back cover as controls change state, preventing the last-page lift. */
@media (max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-single-viewer{
    align-self:center!important;
    justify-self:center!important;
    margin:0!important;
  }
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-prev,
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-next{
    grid-row:2!important;
  }
}

/* v4.8.8 — PHONE FULLSCREEN BACK-COVER HEIGHT LOCK
   The Back Cover must occupy the exact same fullscreen page box as every
   interior page. The Front Cover shortcut is removed from grid flow so it
   cannot create an implicit extra row and lift the magazine upward. */
@media (max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-front-cover-button{
    position:absolute!important;
    grid-column:auto!important;
    grid-row:auto!important;
    left:calc(50% + 72px)!important;
    right:auto!important;
    bottom:max(10px,env(safe-area-inset-bottom))!important;
    top:auto!important;
    transform:translateX(-50%)!important;
    margin:0!important;
    z-index:2147483647!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-fs-exit{
    position:absolute!important;
    grid-column:auto!important;
    grid-row:auto!important;
    left:calc(50% - 72px)!important;
    right:auto!important;
    bottom:max(10px,env(safe-area-inset-bottom))!important;
    top:auto!important;
    transform:translateX(-50%)!important;
    margin:0!important;
    z-index:2147483647!important;
  }

  /* Keep the page in the same first grid row used by page 15 and every other
     fullscreen page. Nothing on the Back Cover may create a third grid row. */
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-single-viewer{
    grid-column:1/-1!important;
    grid-row:1!important;
    align-self:end!important;
    justify-self:center!important;
    margin:0!important;
  }
}

/* v4.8.9 — PHONE FULLSCREEN BACK-COVER CONTROL ROW ONLY.
   Keep the Back Cover page box exactly where page 15 sits. On the Back Cover,
   place Exit Full Screen and Front Cover together in the same second grid row,
   between the left/right arrows. No page sizing or vertical page positioning changes. */
@media (max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover{
    grid-template-columns:1fr 66px auto auto 66px 1fr!important;
    grid-template-rows:minmax(0,1fr) 58px!important;
    column-gap:8px!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-prev{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:end!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-fs-exit{
    display:inline-flex!important;
    position:static!important;
    grid-column:3!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:end!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    min-height:44px!important;
    white-space:nowrap!important;
    z-index:2147483647!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-front-cover-button{
    display:inline-flex!important;
    position:static!important;
    grid-column:4!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:start!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    min-height:44px!important;
    padding:9px 15px!important;
    font-size:12px!important;
    white-space:nowrap!important;
    z-index:2147483647!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-next{
    grid-column:5!important;
    grid-row:2!important;
    justify-self:start!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-single-viewer{
    grid-column:1/-1!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:center!important;
    margin:0!important;
  }
}

/* v4.9.0 — PHONE FULLSCREEN BACK-COVER CONTROLS MATCH INTERIOR PAGES.
   Keep the back-cover page and controls as one centered two-row group, exactly
   like the normal fullscreen pages. Exit Full Screen keeps its normal phone
   button styling. Front Cover gets the same height/padding/font treatment,
   without the oversized/fat back-cover override. */
@media (max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover{
    grid-template-columns:1fr 50px auto auto 50px 1fr!important;
    grid-template-rows:auto auto!important;
    column-gap:8px!important;
    row-gap:8px!important;
    align-content:center!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-single-viewer{
    grid-column:1/-1!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:center!important;
    margin:0!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-prev{
    grid-column:2!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:end!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-fs-exit{
    position:static!important;
    grid-column:3!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:end!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    min-width:0!important;
    min-height:0!important;
    width:auto!important;
    height:auto!important;
    padding:9px 14px!important;
    font-size:11px!important;
    line-height:1.2!important;
    border-radius:22px!important;
    white-space:nowrap!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-front-cover-button{
    display:inline-flex!important;
    position:static!important;
    grid-column:4!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:start!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    min-width:0!important;
    min-height:0!important;
    width:auto!important;
    height:auto!important;
    padding:9px 14px!important;
    font-size:11px!important;
    line-height:1.2!important;
    letter-spacing:.03em!important;
    border-radius:22px!important;
    white-space:nowrap!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-next{
    grid-column:5!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:start!important;
  }
}

/* v4.9.1 — PHONE FULLSCREEN BACK-COVER CONTROLS: SAME ROW, NO OVERLAP.
   Keep the back-cover page at the exact same fullscreen height as interior pages.
   Put left arrow, Exit Full Screen, Front Cover, and right arrow in one compact
   control row directly under the magazine. The arrows move outward instead of
   sitting underneath either center button. */
@media (max-width:700px){
  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover{
    grid-template-columns:46px auto auto 46px!important;
    grid-template-rows:auto auto!important;
    column-gap:6px!important;
    row-gap:10px!important;
    justify-content:center!important;
    align-content:center!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-single-viewer{
    grid-column:1/-1!important;
    grid-row:1!important;
    align-self:end!important;
    justify-self:center!important;
    margin:0!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-prev{
    grid-column:1!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:center!important;
    margin:0!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-fs-exit{
    position:static!important;
    grid-column:2!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:center!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:9px 14px!important;
    font-size:11px!important;
    line-height:normal!important;
    border-radius:22px!important;
    white-space:nowrap!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover > .vms-front-cover-button{
    display:inline-flex!important;
    position:static!important;
    grid-column:3!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:center!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:9px 14px!important;
    font-size:11px!important;
    line-height:normal!important;
    letter-spacing:.03em!important;
    border-radius:22px!important;
    white-space:nowrap!important;
  }

  .vms-book-shell.vms-mobile-single-fullscreen.vms-at-back-cover .vms-next{
    grid-column:4!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:center!important;
    margin:0!important;
  }
}
\n\n/* v4.9.3 — iPhone landscape page-turn stabilization.\n   Landscape pseudo-fullscreen now uses the same clean temporary-sheet engine\n   as portrait iPhone regular view. Keep that engine centered inside the\n   landscape book and neutralize the portrait-only 46px positioning offsets. */\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-persistent-sheet{\n  visibility:hidden!important;\n  pointer-events:none!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-offset{\n  position:absolute!important;\n  inset:0!important;\n  transform:none!important;\n  -webkit-transform:none!important;\n  pointer-events:none!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage{\n  position:absolute!important;\n  inset:0!important;\n  transform-style:preserve-3d!important;\n  -webkit-transform-style:preserve-3d!important;\n  perspective:2200px!important;\n  -webkit-perspective:2200px!important;\n  pointer-events:auto!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-open,\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-forward:not(.from-front):not(.to-back),\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-backward:not(.from-back):not(.to-front),\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-forward.to-back,\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-backward.to-front{\n  transform:translateX(0)!important;\n  -webkit-transform:translateX(0)!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-forward.from-front{\n  transform:translateX(-25%)!important;\n  -webkit-transform:translateX(-25%)!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-forward.from-front.is-sliding-open{\n  transform:translateX(0)!important;\n  -webkit-transform:translateX(0)!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-forward.to-back.is-sliding-closed,\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-backward.from-back{\n  transform:translateX(25%)!important;\n  -webkit-transform:translateX(25%)!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-backward.from-back.is-sliding-open{\n  transform:translateX(0)!important;\n  -webkit-transform:translateX(0)!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-stage.is-animating-backward.to-front.is-sliding-closed{\n  transform:translateX(-25%)!important;\n  -webkit-transform:translateX(-25%)!important;\n}\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-apple-turn-sheet,\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-apple-face,\n.vms-book-shell.vms-iphone-device.vms-phone-landscape-fullscreen.vms-iphone-clean-regular .vms-iphone-clean-page{\n  -webkit-backface-visibility:hidden!important;\n  backface-visibility:hidden!important;\n  transform-style:preserve-3d!important;\n  -webkit-transform-style:preserve-3d!important;\n}\n
/* v4.9.4 — SMALL iPHONE LANDSCAPE REGULAR VIEW ONLY.
   Fix the Side Form layout on shorter iPhones without touching portrait,
   Android, tablet/iPad, desktop, or any fullscreen mode.
   The old landscape rule forced the email form to be at least 360px wide and
   kept the open magazine slightly wider than its own column. On a smaller
   iPhone those two rules compete for the same viewport, so the spread cannot
   shrink and gets clipped. Let both sides size from the REAL available space. */
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse){
  /* iPhone regular landscape: book must fit INSIDE its actual Elementor column. */
  .vms-reader.vms-iphone-device
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .vms-reader.vms-iphone-device
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book:not(.vms-phone-open-compact){
    width:min(100%,calc((100dvh - 76px) * 1.3333333))!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:center!important;
    transform:none!important;
  }

  .vms-reader.vms-iphone-device
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:min(92%,calc((100dvh - 76px) * 1.3333333))!important;
    max-width:92%!important;
    min-width:0!important;
    justify-self:center!important;
    transform:none!important;
    transition:width .28s ease!important;
  }

  /* Side signup form: remove the old hard 360px minimum that breaks small
     iPhones. Keep it readable, but make it truly responsive to viewport width. */
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]){
    width:min(34vw,300px)!important;
    max-width:min(34vw,300px)!important;
    min-width:0!important;
    transform:none!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) > .elementor-widget-container{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) form,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) input,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) textarea,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) select,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) button{
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) h1,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) h2,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) h3{
    font-size:clamp(16px,3.3vw,28px)!important;
    line-height:1.05!important;
  }

  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) p,
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) label{
    font-size:clamp(10px,1.8vw,15px)!important;
    line-height:1.25!important;
  }
}

/* v4.9.5 — restore the Side Form in SMALL iPHONE REGULAR LANDSCAPE.
   v4.9.4 made the Elementor HTML widget itself narrow and clipped its contents,
   which could make the entire form disappear. Do NOT resize/hide the widget.
   Keep the Elementor column/widget in normal flow; only neutralize the old
   360px minimum and legacy horizontal shove. The magazine still uses the
   responsive v4.9.4 shrink rules above. */
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse){
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]){
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    transform:none!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) > .elementor-widget-container{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    transform:none!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  /* Never clip the actual embedded form controls. */
  body:has(.vms-reader.vms-iphone-device)
  .elementor-widget-html:has(input[type="email"]) form{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
}

/* v4.9.6 — ANDROID REGULAR LANDSCAPE SIDE-FORM FIT.
   Match the responsive landscape behavior already added for small iPhones,
   but scope this override to non-iPhone coarse-pointer phones only.
   The old generic landscape rule forced a 360px minimum form width and made
   the magazine 122%/106% wide, causing the form to dominate Android landscape.
   Keep both the magazine and the side form inside their real available space. */
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse){
  .vms-reader:not(.vms-iphone-device)
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .vms-reader:not(.vms-iphone-device)
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book:not(.vms-phone-open-compact){
    width:min(100%,calc((100dvh - 76px) * 1.3333333))!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:center!important;
    transform:none!important;
  }

  .vms-reader:not(.vms-iphone-device)
  .vms-book-shell:not(.vms-phone-landscape-fullscreen):not(:fullscreen):not(.vms-mobile-single-fullscreen):not(.vms-apple-pseudo-fullscreen):not(.vms-ios-pseudo-fullscreen):not(.vms-tablet-pseudo-fullscreen)
  .vms-book.vms-phone-open-compact{
    width:min(92%,calc((100dvh - 76px) * 1.3333333))!important;
    max-width:92%!important;
    min-width:0!important;
    justify-self:center!important;
    transform:none!important;
    transition:width .28s ease!important;
  }

  /* Android side signup form: remove the legacy 360px minimum and horizontal
     shove. Keep the widget visible, but cap it so it no longer consumes most
     of the landscape screen. */
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]){
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:min(30vw,280px)!important;
    max-width:min(30vw,280px)!important;
    min-width:0!important;
    transform:none!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) > .elementor-widget-container,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) form{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    transform:none!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) input,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) textarea,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) select,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) button{
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) h1,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) h2,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) h3{
    font-size:clamp(15px,2.8vw,24px)!important;
    line-height:1.05!important;
  }

  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) p,
  body:has(.vms-reader:not(.vms-iphone-device))
  .elementor-widget-html:has(input[type="email"]) label{
    font-size:clamp(10px,1.5vw,14px)!important;
    line-height:1.2!important;
  }
}


/* v4.10.13 — Vonshae back-cover signup uses one centered anchor everywhere. */
.vms-vonshae-signup-embed{
  left:50%!important;
  transform:translate(-50%,0)!important;
}
