/* DFW Magazine Flipbook v5.2 */
.dfw-magazine-wrap{
  --dfw-viewer-width:760px;
  position:relative;
  width:100%;
  max-width:calc(var(--dfw-viewer-width) + 180px);
  margin:0 auto;
  padding:0;
  box-sizing:border-box;
  background:transparent!important;
}
.dfw-viewer-stage{
  position:relative;
  width:100%;
  max-width:calc(var(--dfw-viewer-width) + 180px);
  margin:0 auto;
  padding:0 70px;
  box-sizing:border-box;
  display:flex;
  justify-content:center;
  align-items:center;
  background:transparent!important;
  overflow:visible!important;
  min-height:360px;
}
.dfw-book-host{
  position:relative;
  width:min(100%,var(--dfw-viewer-width));
  margin:0 auto;
  background:transparent!important;
  overflow:visible!important;
  display:flex;
  justify-content:center;
  align-items:center;
  flex:0 1 var(--dfw-viewer-width);
}
.dfw-book-host .stf__parent,.dfw-book-host .stf__wrapper,.dfw-book-host .stf__block,.dfw-book-host .stf__item{background:transparent!important;box-shadow:none!important}
.dfw-page{background:#fff;overflow:hidden;box-shadow:0 12px 26px rgba(0,0,0,.18)}
.dfw-page canvas{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.dfw-book-footer{display:none!important}
.dfw-loading-cover{position:absolute;z-index:30;left:50%;top:50%;transform:translate(-50%,-50%);width:min(42%,360px);display:flex;align-items:center;justify-content:center;pointer-events:none;background:transparent!important}
.dfw-loading-cover[hidden]{display:none!important}
.dfw-loading-cover img{display:block;width:100%;height:auto;box-shadow:0 10px 25px rgba(0,0,0,.22)}
.dfw-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:50;border:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;width:48px;height:70px;padding:0!important;display:flex;align-items:center;justify-content:center;font:400 50px/1 Arial,sans-serif;cursor:pointer;text-shadow:0 2px 7px rgba(0,0,0,.65);transition:transform .18s ease,opacity .18s ease}
.dfw-prev{left:10px}.dfw-next{right:10px}
.dfw-nav:hover{transform:translateY(-50%) scale(1.07);background:transparent!important}
.dfw-magazine-status,.dfw-magazine-error{position:absolute;z-index:60;left:50%;top:50%;transform:translate(-50%,-50%);padding:10px 14px;border-radius:5px;background:rgba(0,0,0,.82);color:#fff;font-size:13px;text-align:center}
.dfw-magazine-buttons{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:transparent!important}
.dfw-magazine-btn{appearance:none;border:0!important;background:#c90037!important;color:#fff!important;min-width:54px;min-height:38px;padding:9px 13px;border-radius:3px;font-size:10px;font-weight:500;line-height:1;cursor:pointer;box-shadow:none!important;transition:transform .16s ease,filter .16s ease}
.dfw-magazine-btn:hover{transform:translateY(-1px);filter:brightness(.94)}
.dfw-magazine-btn.is-active{background:#a90030!important}
@media(max-width:900px){.dfw-magazine-wrap{padding:0 50px;max-width:calc(var(--dfw-viewer-width) + 100px)}.dfw-nav{font-size:42px;width:38px}.dfw-prev{left:5px}.dfw-next{right:5px}}
@media(max-width:640px){.dfw-magazine-wrap{padding:0 34px}.dfw-viewer-stage{min-height:280px}.dfw-nav{font-size:34px;width:28px}.dfw-prev{left:1px}.dfw-next{right:1px}.dfw-loading-cover{width:min(70%,320px)}.dfw-magazine-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dfw-magazine-btn{width:100%;font-size:12px;min-height:42px}}

/* v5.1 arrow gap + responsive overrides */
.dfw-viewer-stage{padding-left:70px!important;padding-right:70px!important}
.dfw-prev{left:10px!important}.dfw-next{right:10px!important}
@media(max-width:900px){.dfw-viewer-stage{padding-left:54px!important;padding-right:54px!important}.dfw-prev{left:8px!important}.dfw-next{right:8px!important}}
@media(max-width:640px){.dfw-viewer-stage{padding-left:38px!important;padding-right:38px!important}.dfw-prev{left:2px!important}.dfw-next{right:2px!important}}


/* v5.2: center the single front cover, keep open spreads centered */
.dfw-magazine-wrap{--dfw-page-width:380px;}
.dfw-book-host{transition:transform .28s ease;will-change:transform;}
.dfw-magazine-wrap.is-cover-view .dfw-book-host{
  transform:translateX(calc(var(--dfw-page-width) * -0.5));
}
.dfw-magazine-wrap.is-cover-view .dfw-next{
  left:calc(50% + (var(--dfw-page-width) / 2) + 26px)!important;
  right:auto!important;
}
.dfw-magazine-wrap:not(.is-cover-view) .dfw-book-host{transform:translateX(0);}
@media(max-width:900px){
  .dfw-magazine-wrap.is-cover-view .dfw-next{left:calc(50% + (var(--dfw-page-width) / 2) + 18px)!important;}
}
@media(max-width:640px){
  .dfw-magazine-wrap.is-cover-view .dfw-book-host{transform:translateX(0);}
  .dfw-magazine-wrap.is-cover-view .dfw-next{left:auto!important;right:2px!important;}
}

/* v5.3: issue-switching + per-issue thumbnail support */
.dfw-loading-cover img{max-height:min(72vh,720px);object-fit:contain}


/* Dynamic download button */
.dfw-magazine-download{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none!important;background:linear-gradient(90deg,#173b6f 0%,#d0003b 100%);color:#fff!important;border:0;border-radius:24px;padding:11px 22px;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;transition:transform .18s ease,filter .18s ease}
.dfw-magazine-download:hover{color:#fff!important;transform:translateY(-1px);filter:brightness(1.04)}

/* v5.5 email-gated dynamic magazine download popup */
html.dfw-modal-open{overflow:hidden}
.dfw-download-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}
.dfw-download-modal.is-open{display:flex}
.dfw-download-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78)}
.dfw-download-dialog{position:relative;z-index:2;width:min(100%,800px);max-height:calc(100vh - 48px);display:grid;grid-template-columns:42% 58%;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.42)}
.dfw-download-media{background:#242424;min-height:500px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.dfw-download-media.is-empty{background:linear-gradient(145deg,#111,#2b2b2b)}
.dfw-download-media{
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    height: 100% !important;
    overflow: hidden !important;
}

.dfw-download-media img{
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: bottom center !important;
}
.dfw-download-form-wrap{padding:38px 38px 36px;background:#fff;color:#101010}
.dfw-download-form-wrap h2{font-size:38px!important;line-height:1.18!important;font-weight:500!important;letter-spacing:-.5px;margin:0 42px 26px 0!important;color:#101010!important}
.dfw-download-close{position:absolute;right:20px;top:14px;z-index:3;border:0!important;background:transparent!important;color:#171717!important;font:300 34px/1 Arial,sans-serif!important;width:36px;height:36px;padding:0!important;cursor:pointer;box-shadow:none!important}
.dfw-form-field{margin-bottom:14px}
.dfw-form-field label{display:block;font-size:17px;font-weight:500;line-height:1.3;margin-bottom:5px;color:#111}
.dfw-form-field label span{color:#e00036}
.dfw-form-field input{display:block;width:100%!important;height:50px!important;padding:10px 18px!important;border:1px solid #d2d2d2!important;border-radius:8px!important;background:#eee!important;color:#222!important;font-size:17px!important;box-shadow:none!important;outline:none!important;box-sizing:border-box}
.dfw-form-field input:focus{border-color:#a9a9a9!important;background:#fff!important}
.dfw-form-submit{display:block;width:100%;min-height:50px;border:0!important;border-radius:28px!important;background:linear-gradient(90deg,#173b6f 0%,#d0003b 100%)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;cursor:pointer;box-shadow:none!important;margin-top:12px!important}
.dfw-form-submit:disabled{opacity:.65;cursor:wait}
.dfw-form-message{font-size:13px;line-height:1.4;margin-top:12px;min-height:18px}
.dfw-form-message.is-success{color:#16733d}.dfw-form-message.is-error{color:#b00020}
@media(max-width:720px){.dfw-download-modal{padding:14px}.dfw-download-dialog{grid-template-columns:1fr;max-height:calc(100vh - 28px);overflow:auto;border-radius:14px}.dfw-download-media{display:none}.dfw-download-form-wrap{padding:32px 22px 24px}.dfw-download-form-wrap h2{font-size:30px!important;margin-right:30px!important}.dfw-download-close{right:12px;top:10px}}

/* v5.6 optional right-side popup image */
.dfw-download-right-image{margin:0 0 18px;text-align:center}
.dfw-download-right-image img{display:block;width:100%;max-height:180px;object-fit:cover;border-radius:12px}
@media(max-width:720px){.dfw-download-right-image img{max-height:150px}}


