/* ==========================================================================
   CORE LAYOUT & RESET RULES
   ========================================================================== */
* {
  box-sizing: border-box;
} 

div {
  display: block; 
  margin: 0;
  padding: 0;
} 

img {
  max-width: 100%;
  height: auto;
}

html {
  font-size: 100%;
  margin: 0;
  padding: 0;
  background-color: #000; /* solid floor: if the body background ever fails to paint, what shows through is black, never white */
}

body {
  overflow-x: hidden;
  background-image: url("images/zentaoBG2014_LongRepeatable300.png");
  background-repeat: repeat;
  background-color: #000;
  background-attachment: fixed;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: Arial, Tahoma, sans-serif; 
  color: #c9a86d; 
  word-break: normal;
  overflow-wrap: break-word;
  line-height: 170%;
  font-weight: 100;
  text-align: justify;
}

/* ==========================================================================
   TYPOGRAPHY & TEXT ELEMENTS
   ========================================================================== */
.fas-external-link {
  color: #fff;
  content: '\f011';
}
.fas-fa-bars {
  color: #fff;
  content: '\f0c9';
}

p, ol, ul, blockquote {
  font-size: 1.1rem;
  text-align: justify;
}

p.light, ol.dark, ul.dark, blockquote.dark {
  font-size: 1.1rem;
  color: #ccc;
  text-align: justify;
}

p.dark, ol.dark, ul.dark, blockquote.dark {
  font-size: 1.1rem;
  color: #000;
  text-align: justify;
}

p.little, ol.little, ul.little, blockquote.little {
  font-size: .9rem;
  text-align: justify;
}

p.smlight, ol.smlight, ul.smlight, blockquote.smlight {
  font-size: .9rem;
  color: #a9b0b1;
  text-align: justify;
}

p.smdark, ol.smdark, ul.smdark, blockquote.smdark {
  font-size: .9rem;
  color: #566365;
}

li {
  padding-bottom: 1.2rem;
  line-height: 160%;
}

h1, h2, h3, h4, h5, h6 {
  color: #c9a86d;
  font-weight: 400;
} 

h1 { font-size: 2.4rem; font-weight: 100; line-height: 2.8rem; }
h2 { font-size: 2rem;   font-weight: 100; line-height: 2.4rem; }
h3 { font-size: 1.8rem; font-weight: 100; line-height: 2.2rem; }
h4 { font-size: 1.6rem; font-weight: 100; line-height: 2rem;   }
h5 { font-size: 1.4rem; font-weight: 100; line-height: 1.8rem; }
h6 { font-size: 1.2rem; font-weight: 100; line-height: 1.6rem; }

.noscript li {
  display: inline;
  float: right;
  margin: 1rem 2rem 0 2rem;
}

/* ==========================================================================
   LINKS & INTERACTIVE STATES
   ========================================================================== */
a { color: #CEA424; }
a:visited { color: #CEA424; }

a.dark { color: #1e7481; } 
a.dark:active { color: #666; }
a.darkt:hover { color: #000; }
.name { padding-top: 150px; }

/* ==========================================================================
   LAYOUT STRUCTURE & RESPONSIVE CONTAINERS
   ========================================================================== */
@media screen and (min-width: 901px) {
  #pageContainer1 {
    margin: 0 auto;
    padding: 100px 0;
    width: 67%;
    max-width: 1240px;
    background-color: rgba(0, 0, 0, 0.6);
  }
}

@media screen and (max-width: 900px) {
  #pageContainer1 {
    margin: 0 auto;
    padding: 1% 2%;
    width: 94%;
    max-width: 94%;
    background-color: rgba(0, 0, 0, 0.6);
  }
}

.slider-wrapper { z-index: -1 !important; }

#header {
  z-index: 5;
  box-sizing: border-box;
  display: inline-block;
  position: fixed;
  top: 0;
  width: 100%;
  margin: 0;
  padding: 0 1rem;
  background-color: #000;
}

#logo {
  margin: 0;
  padding: 0;
  width: 100%;
}

#topslider {
  background-color: #000;
  width: 100%;
  max-width: 1240px;
  height: auto;
  margin: 0 auto;
  padding: 0;
}

.carousal {
  display: block;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: auto;
  max-width: 1240px;
  max-height: 300px;
}

@media screen and (min-width: 901px) {
  #pageContainer2 {
    background-color: rgba(0, 0, 0, 0.6);
    margin: 0 auto !important;
    padding: 0;
    width: 100%;
    max-width: 1240px;
  }
}

@media screen and (max-width: 900px) {
  #pageContainer2 {
    background-color: rgba(0, 0, 0, 0.6);
    margin: 0 auto !important;
    padding: 1% 2%;
    width: 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 1920px) {
  #main {
    background-color: rgba(0, 0, 0, .8);
    width: 75%;
    margin: 1% auto 6% auto;
    padding: 4% 5%;
    border: none;
  }
}

@media screen and (max-width: 1280px) {
  #main {
    background-color: rgba(0, 0, 0, .8);
    width: 75%;
    margin: 1% auto 6% auto;
    padding: 3% 5%;
    border: none;
  }
}

@media screen and (max-width: 900px) {
  #main {
    background-color: rgba(0, 0, 0, .8);
    width: 100%;
    margin: 1% auto 6% auto;
    padding: 2% 3%;
    border: none;
  }
}

#page-title {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.6); /* Translucent dark instead of blinding light grey */
  margin: 0 auto !important;
  padding: 1%;
  text-align: center;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}

#page-title h1 { font-weight: lighter; line-height: 2.4rem; }

#footer {
  background-color: rgba(0, 0, 0, 0.9);
  position: sticky;
  bottom: 0px;
  width: 100%;
  margin: 0 !important;
  padding: 0.2% 1%;
  border-top: 1px solid #333;
}

#subfooter {
  width: 100%;
  margin: 0 !important;
  padding: 1%;
  background-color: rgba(0, 0, 0, 0.6);
}

#sidebar {
  float: right;
  width: 400px;
  margin: 0;
  padding: 1%;
}

.slider {
  margin: 0 auto;
  width: 100%;
  max-width: 333px;
  height: auto;
  max-height: 500px;
}

/* ==========================================================================
   COLUMNS & SECTIONS MATRIX
   ========================================================================== */
/* Desktop Layout Rules (Screens wider than 900px) */
@media screen and (min-width: 901px) {
  .article1 {
    column-count: 2;
    column-gap: 2rem;
  }
  .section1, .section2 {
    display: inline-block;
    margin: 0;
    padding: 1rem;
    width: 100%;
  }
  #article, #section {
    display: inline-block;
    float: left;
    margin: 0;
    padding: 1rem;
    width: 50%;
  }
  
  /* Modern Flex Row Container to prevent text and images from falling downwards */
  .book-grid-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    gap: 0;
    margin: 0 auto;
    clear: both;
  }

  .one-half       { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 50%; box-sizing: border-box; }
  .one-third      { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 33.33%; box-sizing: border-box; }
  .one-fourth     { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 25%; box-sizing: border-box; }
  .one-fifth      { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 20%; box-sizing: border-box; }
  .two-thirds     { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 66.67%; box-sizing: border-box; }
  .three-fourths  { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 75%; box-sizing: border-box; }
  .two-fifths     { display: block; float: left; margin: 0; padding: 1rem 2rem; width: 40%; box-sizing: border-box; }
  .three-fifths   { display: inline-block; float: left; margin: 0; padding: 1rem 2rem; width: 60%; box-sizing: border-box; }
  .four-fifths    { display: inline-block; float: left; margin: 0; padding: 1rem 2rem; width: 80%; box-sizing: border-box; }
}

/* Mobile Layout Rules (Screens 900px and narrower) */
@media screen and (max-width: 900px) {
  .article1 {
    column-count: 1;
  }
  .section1, .section2, #article, #section {
    width: 100%;
    margin: 0;
    padding: 1rem;
  }
  .book-grid-row {
    display: block; 
    width: 100%;
  }
  .one-half, .one-third, .one-fourth, .one-fifth, 
  .two-thirds, .three-fourths, .two-fifths, .three-fifths, .four-fifths {
    width: 100%;
    margin: 0 0 2rem 0;
    padding: 1rem 1rem; /* Relaxed from 3rem to give images room to scale */
    display: block;
    float: none;
    box-sizing: border-box;
  }
  
  /* Bulletproof Mobile Image Lock */
  .one-half img {
    display: block;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto;
  }
}

#aside {
  display: inline-block;
  float: left;
  margin: 0;
  padding: 1rem;
  width: 25%;
}

/* ==========================================================================
   RESPONSIVE TOPNAV
   ========================================================================== */
@media screen and (min-width: 901px) {
  .topnav {
    float: left;
    overflow: hidden;
    background-color: transparent;
    width: 100%;
    margin: 0;
    text-align: right;
  }
}

@media screen and (max-width: 900px) {
  .topnav {
    float: left;
    overflow: hidden;
    background-color: transparent;
    width: 100%;
    margin: 0;
    text-align: right;
  }
}

.topnav a {
  float: left;
  display: inline-block;
  color: #CEA424;
  text-align: right;
  padding: 2rem 1rem 1rem 1rem;
  text-decoration: none;
  font-size: 1.2rem;
}

.topnav .icon {
  display: none;
}

@media screen and (max-width: 900px) {
  .topnav a:not(:first-child) { display: none; }
  .topnav a.icon {
    float: right;
    display: block;
  }
  .topnav.responsive { position: relative; }
  .topnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .topnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}

@media screen and (min-width: 901px) {
  .site-info {
    float: left;
    width: 50%;
    padding: 0;
    margin: 0;
  }
}

@media screen and (max-width: 900px) {
  .site-info {
    float: none;
    width: 100%;
    padding: 0;
    margin: 0;
  }
}

/* ==========================================================================
   RESPONSIVE FOOTNAV
   ========================================================================== */
@media screen and (max-width: 900px) {
  .footnav {
    float: right;
    overflow: hidden;
    background-color: transparent;
    width: 100%;
    padding-bottom: 0;
    margin-bottom: 0;
    margin-top: 1rem;
    text-align: right;
  }
}
@media screen and (min-width: 901px) {
  .footnav {
    float: right;
    overflow: hidden;
    background-color: transparent;
    width: 50%;
    padding-bottom: 0;
    margin-top: 1rem;
    margin-bottom: 0;
    text-align: right;
  }
}
.footnav a {
  float: right;
  display: inline-block;
  color: #1e73be;
  text-align: center;
  margin: 0;
  padding: 0 1.1rem;
  text-decoration: none;
  font-size: .8rem;
}

.footnav a:hover, .active {
  color: #fff;
}

.footnav .icon {
  display: none;
}

@media screen and (max-width: 900px) {
  .footnav a:not(:first-child) { display: none; }
  .footnav a.icon {
    float: right;
    display: block;
  }
  .footnav.responsive { position: relative; }
  .footnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .footnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}

.logo { min-width: 100px; height: auto; }
.site-title { font-variant: small-caps; font-size: 3rem; padding-top: 2rem; }
.row { display: grid; }

/* ==========================================================================
   VIDEO EMBED RESPONSIVE CONTAINER
   ========================================================================== */
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ==========================================================================
   AUTOMATED SLIDESHOW UI
   ========================================================================== */
.mySlides { display: none; }
img.sldshw { vertical-align: middle; }

.slideshow-container {
  max-width: 1200px;
  position: relative;
  margin: auto;
}

.text {
  color: #f2f2f2;
  font-size: 15px;
  padding: 8px 12px;
  position: absolute;
  bottom: 8px;
  width: 100%;
  text-align: center;
}

.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

.dot {
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.active {
  background-color: #717171;
}

.fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from { opacity: .4; } 
  to { opacity: 1; }
}

@media only screen and (max-width: 300px) {
  .text { font-size: 11px; }
}

/* ==========================================================================
   ACCORDIONS & COLLAPSIBLES
   ========================================================================== */
.accordion {
  background-color: #111;
  color: #ccc;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: justify;
  outline: none;
  font-size: 1.1rem;
  transition: 0.4s;
}

.accordion:hover {
  background-color: #333;
}

.panel {
  padding: 0 18px;
  background-color: #000;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}

.accordion:after {
  content: '\02795'; 
  font-size: 13px;
  color: #777;
  float: right;
  margin-left: 5px;
}

.active:after {
  content: "\2796"; 
}

.collapsible {
  background-color: #777;
  color: white;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
}

.collapsible:hover {
  background-color: #555;
}

.content {
  padding: 0 18px;
  display: none;
  overflow: hidden;
  background-color: #f1f1f1;
}

/* ==========================================================================
   DYNAMIC IMAGE ZOOM ACTIONS
   ========================================================================== */
@media screen and (min-width: 901px) {
  img.zoom {
    background: #fff;
    margin: 0 auto;
    padding: 1rem;
    border: 1px solid #ccc;
    transition: transform .2s; 
  }
  img.zoom:hover {
    background: #fff;
    transform: scale(2);
    margin-left: 3rem;
    margin-right: 3rem;
  }
}

@media screen and (max-width: 900px) {
  img.zoom {
    background: #fff;
    text-align: center;
    margin: 0 auto;
    padding: 1rem;
    border: 1px solid #ccc;
    transition: transform .2s;
  }
  img.zoom:hover {
    background: #fff;
    text-align: center;
    margin: 0 auto;
    transform: scale(1);
  }
}

/* ==========================================================================
   FLEXIBLE FRACTIONAL COLUMN BLOCKS
   ========================================================================== */
@media screen and (min-width: 901px) {
  .one-half       { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 50%; }
  .one-third      { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 33.33%; }
  .one-fourth     { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 25%; }
  .one-fifth      { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 20%; }
  .two-thirds     { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 66.67%; }
  .three-fourths  { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 75%; }
  .two-fifths     { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 40%; }
  .three-fifths   { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 60%; }
  .four-fifths    { display: inline-block; float: left; margin: 0; padding: 1rem 3rem; width: 80%; }
}

@media screen and (max-width: 900px) {
  .one-half, .one-third, .one-fourth, .one-fifth, 
  .two-thirds, .three-fourths, .two-fifths, .three-fifths, .four-fifths {
    width: 100%;
    margin: 0;
    padding: 1rem 3rem;
  }
}

/* ==========================================================================
   MAXBUTTON EXTENSION INJECTIONS
   ========================================================================== */
.maxbutton-2.maxbutton.maxbutton-gathering-purchase-button {
    position: relative !important;
    text-decoration: none !important;
    display: inline-block !important;
    vertical-align: middle !important;
    border-color: #000 !important;
    width: 260px !important;
    height: 30px !important;
    border-radius: 4px !important;
    border-style: solid !important;
    border-width: 2px !important;
    background: linear-gradient(rgba(30, 115, 190, 1) 45%, rgba(122, 159, 191, 1)) !important;
    box-shadow: 0px 0px 2px 0px #fff !important;
}

.maxbutton-2.maxbutton.maxbutton-gathering-purchase-button:hover {
    border-color: #0a0a0a !important;
    background: linear-gradient(rgba(255, 255, 255, 1) 45%, rgba(255, 255, 255, 1)) !important;
    box-shadow: 0px 0px 2px 0px #fff !important;
}

.maxbutton-2.maxbutton.maxbutton-gathering-purchase-button:hover .mb-text {
    color: #1e73be !important;
}

.maxbutton-2.maxbutton.maxbutton-gathering-purchase-button .mb-text {
    color: #fff !important;
    font-family: Tahoma !important;
    font-size: 15px !important;
    text-align: center !important;
    font-style: normal !important;
    font-weight: normal !important;
    padding-top: 8px !important;
    padding-right: 0px !important;
    padding-bottom: 0px !important;
    padding-left: 0px !important;
    line-height: 1em !important;
    box-sizing: border-box !important;
    display: block !important;
    background-color: unset !important;
}

.maxbutton-1.maxbutton.maxbutton-buy-button {
    text-decoration: none !important;
    display: inline-block !important;
    vertical-align: middle !important;
    border-color: #4c1900 !important;
    width: 80px !important;
    height: 38px !important;
    border-style: solid !important;
    border-width: 1px !important;
    background: linear-gradient(rgba(201, 94, 40, 1) 45%, rgba(10, 10, 10, 1)) !important;
    box-shadow: 0px 0px 2px 0px #333 !important;
}

.maxbutton-2.maxbutton.maxbutton-series-buy-button {
    text-decoration: none !important;
    display: inline-block !important;
    vertical-align: middle !important;
    border-color: #4c1900 !important;
    width: 120px !important;
    height: 50px !important;
    border-style: solid !important;
    border-width: 1px !important;
    background: linear-gradient(rgba(201, 94, 40, 1) 45%, rgba(10, 10, 10, 1)) !important;
    box-shadow: 0px 0px 2px 0px #333 !important;
}

.maxbutton-1.maxbutton.maxbutton-buy-button .mb-text,
.maxbutton-2.maxbutton.maxbutton-series-buy-button .mb-text {
    color: #e2e2e2 !important;
    font-family: Tahoma !important;
    font-size: 15px !important;
    text-align: center !important;
    font-style: normal !important;
    font-weight: bold !important;
    padding-right: 0px !important;
    padding-bottom: 0px !important;
    padding-left: 0px !important;
    line-height: 1em !important;
    box-sizing: border-box !important;
    display: block !important;
    background-color: unset !important;
}

.maxbutton-1.maxbutton.maxbutton-buy-button .mb-text { padding-top: 12px !important; }
.maxbutton-2.maxbutton.maxbutton-series-buy-button .mb-text { padding-top: 11px !important; }

.maxbutton-1.maxbutton.maxbutton-buy-button:hover,
.maxbutton-2.maxbutton.maxbutton-series-buy-button:hover {
    border-color: #6b1100 !important;
    background: linear-gradient(rgba(201, 67, 0, 1) 45%, rgba(33, 33, 33, 1)) !important;
    box-shadow: 0px 0px 2px 0px #333 !important;
}

.maxbutton-1.maxbutton.maxbutton-buy-button:hover .mb-text,
.maxbutton-2.maxbutton.maxbutton-series-buy-button:hover .mb-text {
    color: #fff !important;
}

/* ==========================================================================
   DETAILS EXPANSION SUMMARY BLURBS
   ========================================================================== */
details.blurb-drop summary {
    color: #c9a86d;
    cursor: pointer;
    font-weight: bold;
    outline: none;
    margin-bottom: 0.5rem;
}

details.blurb-drop summary:hover {
    text-decoration: underline;
}

details.blurb-drop .blurb-content {
    background: #111; 
    padding: 1rem;
    border-left: 2px solid #c9a86d;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
}

/* ==========================================================================
   DATA TABLES
   ========================================================================== */
table {
    display: table;
    border-collapse: collapse;
    border-spacing: 0;
}

td {
    display: table-cell;
    padding: 5px 20px;
}

tr:nth-child(odd) {
  background-color: rgba(80, 80, 80, 0.3);
}

/* ==========================================================================
   BOOKS BY GENRE FILTER DISPLAY ARCHITECTURE
   ========================================================================== */
.bookrow {
  display: inline-block;
  margin: 1rem 2rem; 
}

.bookrow > .genre {
  display: inline-block;
  padding: 1rem; 
}

.bookrow:after, .authorprofile:after, .authorbkrow:after {
  content: "";
  display: table;
  clear: both;
}

.genre { display: none; }
.show  { display: inline-block; }

.btn {
  border: none;
  outline: none;
  padding: 12px 16px;
  background-color: white;
  cursor: pointer;
}
.btn:hover { background-color: #ddd; }
.btn:active { background-color: #666; color: white; }

/* ==========================================================================
   MODAL LIGHTBOXES
   ========================================================================== */
.modal .modal-backdrop, .modal { background: rgba(0,0,0,0.5); }
.modal .modal-backdrop.in { opacity: 0.99607843202; }
.modal-dialog .modal-content .close {
  color: #ffffff;
  background: rgba(0,0,0,1);
  opacity: 1;
  text-shadow: none;
  position: absolute;
  right: -15px;
  top: -15px;
}
.modal-dialog .modal-content .close:hover {
  color: #ffffff;
  background: rgba(0,0,0,.5);
  border: none;
}
.modal-dialog .modal-title { color: rgba(0,0,0,1); }
.modal-dialog .modal-content {
  color: rgba(0,0,0,1);
  background: rgba(255,255,255,1);
}
.modal-dialog .modal-header { text-align: center; position: relative; border-bottom: none; }
.modal-dialog { text-align: left; }
.modal-dialog .modal-footer { text-align: center; border-top: none; }
.admin-bar .modal.in .modal-dialog { top: 46px; }

@media screen and (min-width: 783px) {
	.admin-bar .modal.in .modal-dialog { top: 32px; }
}

/* ==========================================================================
   APPLE SAFARI MOBILE ENGINE FIXES
   ========================================================================== */
@media screen and (max-width: 1024px) {
    body {
        background-attachment: scroll !important;
        background-size: contain !important;
    }
}

#pageContainer2 {
    box-sizing: border-box !important;
}

/* ==========================================================================
   THE ZENTAO KINETIC FLIP CARD MATRIX 
   ========================================================================== */
.book-card {
    background-color: transparent;
    width: 300px;         
    height: 450px;        
    perspective: 1000px;  
    margin: 20px auto;
    cursor: pointer;
}

.book-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1); 
    transform-style: preserve-3d;
}

@media (hover: hover) {
    .book-card:hover .book-card-inner { transform: rotateY(180deg); }
}

.book-card.flipped .book-card-inner { transform: rotateY(180deg); }

.book-card-front, .book-card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    border-radius: 4px;
    overflow: hidden;
}

.book-card-front { background-color: #000000; }
.cover-img { width: 100%; height: 100%; object-fit: cover; }

/* Modified back to pure flat black with relaxed padding since we are truncating text */
.book-card-back {
    background-color: #000000 !important; /* Flat black canvas */
    border: 1px solid #dbb065;                       
    color: #dbb065;
    transform: rotateY(180deg);                      
    padding: 30px 25px; /* Added breathing room for truncated text */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

/* Updated formatting to hide the scrollbar unless emergency text spills over */
.blurb-text {
    font-size: 0.9rem;
    line-height: 1.5;
    color: #a9b0b1;
    text-align: left;
    width: 100%;
    overflow-y: auto; /* Hides scrollbar footprint completely if text fits */
    overflow-x: hidden; 
    white-space: normal; 
    word-break: break-word; 
    margin-bottom: 15px;
    box-sizing: border-box;
    
    /* Clean fallback styling just in case text ever overflows */
    scrollbar-width: thin;
    scrollbar-color: #333333 #000000; 
}

/* Custom Scrollbar track overrides for Webkit Engines (Brave, Chrome, Safari) */
.blurb-text::-webkit-scrollbar {
    width: 5px; /* Sharp, 5-pixel minimal line */
}
.blurb-text::-webkit-scrollbar-track {
    background: #000000 !important; /* Blends seamlessly into black background */
}
.blurb-text::-webkit-scrollbar-thumb {
    background-color: #333333 !important; 
    border-radius: 4px;
    border: 1px solid #000000; 
}
.blurb-text::-webkit-scrollbar-thumb:hover {
    background-color: #444444 !important; 
}

.buy-button {
    background: #dbb065;
    color: #000000 !important;
    text-decoration: none;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 0.85rem;
    border-radius: 3px;
    transition: background 0.3s;
}
.buy-button:hover { background: #f1c473; }

/* ==========================================================================
   THE ZENTAO THEME SKIN FOR NEWSLETTER FORMS & POPUPS
   ========================================================================== */
.tnp-subscription, .tnp-subscription-minimal, .tnp {
    background-color: transparent !important; 
}

.tnp-subscription input[type=email], 
.tnp-subscription input[type=text],
.tnp-field input {
    background-color: rgba(0, 0, 0, 0.6) !important; 
    border: 1px solid #dbb065 !important;           
    color: #dbb065 !important;                       
    font-family: 'Courier New', Courier, monospace !important;
    padding: 10px !important;
    box-sizing: border-box !important;
}

.tnp-subscription input::placeholder { color: #888888 !important; }

.tnp-subscription input[type=submit], .tnp-subscription button {
    background-color: #dbb065 !important;            
    color: #000000 !important;                       
    border: none !important;
    font-weight: bold !important;
    padding: 12px 25px !important;
    cursor: pointer !important;
    transition: background 0.3s !important;
}

.tnp-subscription input[type=submit]:hover, .tnp-subscription button:hover {
    background-color: #f1c473 !important;            
}

div[id^="tnp-popup"], .tnp-popup-box, .tnp-popup-content, #tnp-popup-wrapper {
    background-color: #000000 !important;             
    background-image: none !important;
    border: 2px solid #dbb065 !important;             
    box-shadow: 0 0 20px rgba(219, 176, 101, 0.3) !important; 
}

div[id^="tnp-popup"] label, .tnp-popup-box label, .tnp-popup-content label {
    color: #dbb065 !important;
    font-family: 'Courier New', Courier, monospace !important;
}

div[id^="tnp-popup"] .tnp-popup-close, .tnp-popup-box .tnp-close, .tnp-popup-close-button {
    color: #dbb065 !important;
    opacity: 1 !important;
}