/* Torgen presentation and checkout theme. */
body.torgen-site {
  --torgen-ink: #18372d;
  --torgen-muted: #476358;
  --torgen-green: #19694f;
  --torgen-gold: #a16b18;
  --torgen-paper: #fff;
  --torgen-line: #e1e5e9;
  --torgen-navy: #17334d;
  --torgen-card-shadow: 0 18px 46px #16283b26, 0 3px 9px #16283b12;
  --torgen-art-shadow: 0 9px 26px #16283b21;
  background: #fff;
  color: var(--torgen-ink);
  font: 17px/1.65 system-ui, -apple-system, "Segoe UI", sans-serif;
  width: auto;
  max-width: none;
  margin: 0;
  min-height: 100vh;
  padding: clamp(10px, 3vw, 36px);
}
.torgen-site a { color: var(--torgen-green); text-underline-offset: .18em; }
.torgen-site a:focus-visible { outline: 3px solid var(--torgen-gold); outline-offset: 4px; }
.torgen-site img { max-width: 100%; height: auto; aspect-ratio: auto; vertical-align: middle; }
.torgen-site table, .torgen-site iframe, .torgen-site [style*="width:"] { max-width: 100%; }
.torgen-site td { overflow-wrap: anywhere; }
.torgen-site h1, .torgen-site h2, .torgen-site h3 { color: var(--torgen-ink); line-height: 1.2; text-wrap: balance; }
.torgen-site #footer, .torgen-site #footer-content, .torgen-site #footer-text { max-width: 100%; color: var(--torgen-muted); }
.torgen-site #main, .torgen-order > table, .torgen-order > div > table {
  box-sizing: border-box;
  background-color: var(--torgen-paper);
  border: 1px solid var(--torgen-line);
  border-radius: clamp(14px, 2vw, 26px);
  box-shadow: 0 16px 52px #284c3220;
}
.torgen-video #main { width: min(100%, 820px); margin-inline: auto; background-image: none; }
.torgen-video #video {
  background: #fff;
  height: auto;
  padding: clamp(9px, 2vw, 20px);
  margin: 0 clamp(8px, 2vw, 20px);
  border-radius: 16px;
}
.torgen-video #video > div { width: min(100%, 640px) !important; height: auto !important; padding: 0 !important; }
.torgen-video #order-area { background-image: none; padding: 0 12px 16px; }
.torgen-video #order-area p { color: var(--torgen-muted); }
.torgen-video #order-area #signup-corner p { color: inherit; }
.torgen-order td[background] { background: var(--torgen-paper); }
.torgen-order h1 { font-size: clamp(19px, 4vw, 30px) !important; }
@media (max-width: 640px) {
  .torgen-order table[width], .torgen-text table[width] { width: 100%; }
  .torgen-order td[width], .torgen-text td[width] { width: auto; }
  .torgen-order td, .torgen-text td { padding-inline: 2px; }
}

/* Size the player by its frame so the embedded poster keeps its video ratio. */
.torgen-video #headline {
  width: min(100%, 725px);
  height: auto;
  aspect-ratio: 1040 / 154;
  margin-inline: auto;
  background-size: 123.08% auto;
  position: relative;
  overflow: hidden;
}
.torgen-video #headline > center { position: absolute; inset: 0; }
.torgen-video #video > div { aspect-ratio: 16 / 9; position: relative; }
.torgen-video #video > div > center { position: absolute; inset: 0; }
.torgen-video #video iframe { display: block; width: 100%; height: 100%; border-radius: 8px; }

.torgen-site table, .torgen-site div[style*="width:"], .torgen-site p[style*="width:"] { box-sizing: border-box; }
.torgen-order > div, .torgen-order > table { max-width: 100%; }
.torgen-order table, .torgen-text table { min-width: 0; }
.torgen-order #footer-content, .torgen-text #footer-content { overflow-wrap: anywhere; }
.torgen-deal .main, .torgen-deal .contentArea, .torgen-deal .content, .torgen-deal #block {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
}
.torgen-deal-grid .main { width: min(100%, 860px); margin-inline: auto; }
.torgen-deal-grid .contentArea, .torgen-deal-grid .content { width: 100%; margin-inline: auto; }
.torgen-deal-grid #block, .torgen-deal-story > div:nth-of-type(2) {
  box-sizing: border-box;
  width: min(100%, 860px) !important;
  margin: 16px auto;
  padding: clamp(12px, 3vw, 30px) !important;
  background: var(--torgen-paper) !important;
  border: 1px solid var(--torgen-line);
  border-radius: clamp(14px, 2vw, 26px);
  box-shadow: 0 16px 52px #284c3220;
}
.torgen-deal-grid #blockshadow {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
  width: auto;
  background: none;
  box-shadow: none;
}
.torgen-deal-grid .addtocart > .pure-u-1-3text { width: 100%; }
.torgen-deal-grid .block_bestdeal .pure-u-1-3,
.torgen-deal-grid .block_bestdeal .pure-u-2-3 { display: inline-block; float: none; vertical-align: middle; box-sizing: border-box; min-width: 0; }
.torgen-deal-grid .block_bestdeal .pure-u-1-3 { width: 32%; }
.torgen-deal-grid .block_bestdeal .pure-u-2-3 { width: 66%; }
.torgen-deal-grid .block_bestdeal .extrabold,
.torgen-deal-grid .block_bestdeal .prod60px {
  color: var(--torgen-ink) !important;
  font-size: clamp(21px, 4.8vw, 36px) !important;
  line-height: 1.2;
}
.torgen-deal-grid .block_bestdeal img { display: block; margin-inline: auto; }
.torgen-deal-grid .addtocart img, .torgen-deal-story img { object-fit: contain; }
.torgen-deal-story .bigred { max-width: 100%; margin-inline: auto !important; }
.torgen-deal-story p { overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .torgen-site #footer-content, .torgen-site #footer-text { width: auto; }
  .torgen-deal-grid #block .pure-u-1-3,
  .torgen-deal-grid #block .pure-u-2-3,
  .torgen-deal-grid #block .pure-u-1 { display: block; float: none; width: 100% !important; max-width: 100%; }
  .torgen-order table[width], .torgen-text table[width] { table-layout: fixed; }
  .torgen-order table[height], .torgen-order td[height] { height: auto; }
}

@media (max-width: 640px) {
  body.torgen-site { padding: 10px 8px 24px; background-attachment: scroll; }
  .torgen-deal-grid #block, .torgen-deal-story > div:nth-of-type(2) {
    width: 100% !important;
    padding-inline: 12px !important;
  }
  .torgen-order > div[style*="width:"] {
    width: 100% !important;
    padding-inline: 8px !important;
  }
  .torgen-order td[background] > table,
  .torgen-order td[colspan] > table { width: 100%; table-layout: fixed; }
  .torgen-order td[background], .torgen-order td[colspan] { padding-inline: 0; }
  .torgen-site img[data-torgen-art] {
    display: block;
    width: 100% !important;
    max-width: 100%;
    height: auto !important;
    margin-inline: auto;
  }
  .torgen-video #video { margin-inline: 0; padding: 0; border-radius: 8px; }
  .torgen-video #order-area { padding-inline: 8px; }
  .torgen-video #order-area table[width] { width: 100%; table-layout: fixed; }
  .torgen-video #order-area td[width] { width: auto; }
}

@media (max-width: 760px) {
  .torgen-order .linespace {
    box-sizing: border-box;
    width: auto;
    max-width: 100%;
    overflow-wrap: anywhere;
  }
}

/* Neutralize legacy inline fills behind the checkout and story panels. */
.torgen-site :is([style*="background: #ffffcc" i], [style*="background-color: #ff9" i], [style*="background-color: #f1f2f4" i]) {
  background-color: #fff !important;
}

/* Presentation cards and reading layout. */
.torgen-video #main {
  display: grid;
  gap: clamp(14px, 2.4vw, 24px);
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.torgen-video #logo { display: none; }
.torgen-video #headline, .torgen-video #video, .torgen-video #order-area,
.torgen-video #footer-text,
.torgen-order > div[style*="width:"] {
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #e1e5e9;
  border-radius: 18px;
  box-shadow: 0 10px 28px #202b3b0b;
}
.torgen-video #headline {
  width: min(100%, 820px);
  aspect-ratio: auto;
  padding: clamp(16px, 4vw, 34px);
  text-align: center;
  margin-inline: auto;
}
.torgen-video .torgen-hero h1 {
  margin: 0;
  color: #16212e;
  font: 600 clamp(19px, 4.8vw, 38px)/1.18 system-ui, sans-serif;
}
.torgen-hero h1 strong { display: block; font-weight: 800; margin-bottom: .28em; }
.torgen-video .torgen-audio-note {
  margin: 12px auto 0;
  color: #566270;
  font: 500 clamp(12px, 2.8vw, 14px)/1.45 system-ui, sans-serif;
}
.torgen-video #video { margin: 0; padding: clamp(7px, 2.2vw, 17px); }
.torgen-video #order-area { padding: clamp(16px, 4vw, 34px); }
.torgen-video .torgen-read-area { display: grid; justify-items: center; gap: 20px; }
.torgen-video .torgen-read-area > p { margin: 0; }
.torgen-video .torgen-read-area > p:nth-child(odd) { display: none; }
.torgen-video .torgen-read-button {
  display: inline-block;
  padding: .8em 1.2em;
  border-radius: 999px;
  background: #17334d;
  color: white;
  font: 700 clamp(14px, 3.6vw, 18px)/1.3 system-ui, sans-serif;
  text-decoration: none;
}
.torgen-video #footer-text { width: min(100%, 820px); padding: clamp(16px, 4vw, 30px); }
.torgen-article-card > div:first-of-type > p {
  text-align: center !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(17px, 4.4vw, 21px);
}
.torgen-text p > img[data-torgen-art] { display: block; margin: 18px auto; border-radius: 10px; }
.torgen-article-card p:has(> img[data-torgen-art]) { margin-block: 20px; }
.torgen-video #main { grid-template-columns: minmax(0, 1fr); }
.torgen-video #main > * { min-width: 0; }
.torgen-video #main #order-area .torgen-read-area { padding-top: 0; }
.torgen-video .torgen-hero h1 strong { color: #941f24; }

/* Text presentation */
.torgen-article-card {
  box-sizing: border-box;
  width: min(100%, 790px);
  margin-inline: auto;
  padding: clamp(16px, 4vw, 40px);
  background: #fff;
  border: 1px solid #e1e5e9;
  border-top: 3px solid var(--torgen-navy);
  border-radius: 18px;
  box-shadow: var(--torgen-card-shadow);
}
.torgen-article-card .torgen-article-head {
  margin: 0 auto 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e1e5e9;
}
.torgen-article-head img { display: block; width: 100%; height: auto; margin-inline: auto; }
.torgen-article-card p { line-height: 1.7; }
.torgen-article-card p > img[data-torgen-art] { box-shadow: var(--torgen-art-shadow); }

/* Apply the story card treatment to the offer and presentation pages. */
.torgen-article-card > div:first-of-type { max-width: min(100%, 66ch); margin-inline: auto; }
.torgen-video #headline, .torgen-video #video, .torgen-video #order-area,
.torgen-video #footer-text, .torgen-deal-grid #block,
.torgen-deal-story > div:nth-of-type(2), .torgen-order > table,
.torgen-order > div > table, .torgen-order > div[style*="width:"] {
  border-color: var(--torgen-line);
  border-radius: 18px;
  box-shadow: var(--torgen-card-shadow);
}
.torgen-video #headline, .torgen-deal-grid #block.block_bestdeal,
.torgen-deal-story > div:nth-of-type(2), .torgen-order > table,
.torgen-order > div > table, .torgen-order > div[style*="width:"] {
  border-top: 3px solid var(--torgen-navy);
}
.torgen-deal-grid .block_bestdeal .pure-u-1-3 img,
.torgen-deal-story img[src$="tornado-cover.jpg"],
.torgen-order img[src*="up_bundle"] {
  border-radius: 10px;
  box-shadow: var(--torgen-art-shadow);
}
.torgen-video .torgen-read-button { box-shadow: 0 6px 14px #17334d2e; }
.torgen-video .torgen-read-button:hover { background: #234963; }
.torgen-order div[style*="height: 300px"] {
  height: auto !important;
  padding: clamp(12px, 3vw, 24px);
  border-color: var(--torgen-line) !important;
  border-radius: 12px;
}

/* Keep the notification controls reachable in short landscape windows. */
body.torgen-video #signup-corner {
  max-height: calc(100vh - 48px);
  max-height: calc(100dvh - 48px);
  overflow-y: auto;
  overscroll-behavior-y: contain;
}
body.torgen-video #signup-corner .signup-submit[hidden] { display: none !important; }
@media (max-width: 520px) {
  body.torgen-video #signup-corner {
    max-height: calc(100vh - 24px);
    max-height: calc(100dvh - 24px);
  }
}
