/* ==========================================================================
   Organizational Checkup dashboard - print / "Download PDF" stylesheet
   Loaded with media="print" from dashboard.php (view-results page).
   Goal: a complete, un-clipped Letter portrait PDF containing, in order:
     1. title block + campaign status and responses line
     2. score card (total, coaching line, six bars) beside the SVG wheel (colour)
     3. all six Roadmap / prescription panes, expanded, weakest component first
     4. the Answers list (statement + average chip)
   Markup: the .oc-results view in dashboard.php (Phase 2 redesign); screen styles are in
   css/oc-page-results.css, which is media="screen", so everything printed is styled here.
   ========================================================================== */
@media print {

  @page {
    size: letter portrait;
    margin: 0.5in 0.55in 0.6in 0.55in;
    /* running footer; dashboard.php adds @bottom-left with the company name */
    @bottom-left {
      content: "Organizational Checkup";
      font-family: 'Montserrat', sans-serif;
      font-size: 7.5pt;
      color: #45577A;
      vertical-align: top;
      padding-top: 10pt;
    }
    @bottom-right {
      content: "Page " counter(page) " of " counter(pages);
      font-family: 'Montserrat', sans-serif;
      font-size: 7.5pt;
      color: #45577A;
      vertical-align: top;
      padding-top: 10pt;
    }
  }

  /* ---- base ---------------------------------------------------------- */
  html, body {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    background: #fff !important;
    color: #000 !important;
    font-size: 10pt !important;
    line-height: 1.4 !important;
    font-family: 'Montserrat', sans-serif !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  * {
    animation: none !important;
    transition: none !important;
    text-shadow: none !important;
  }
  a[href]:after { content: none !important; }

  /* ---- hide chrome: sidebar, navbars, modals, overlays, buttons ------ */
  .hidden-print,
  .navbar-fixed-side,
  .navbar-horizontal,
  .navbar-toggle,
  .modal,
  .modal-backdrop,
  .overlay,
  .video-container,
  .embed-container,
  .bspinner,
  footer, .footer,
  .cta-container,
  .campaign-details-footer,
  .welcome-nav-container,
  .scroll-to-answers,
  .presc-btn-container,
  .presc-next, .presc-prev,
  .presc-btn,
  .nav-tabs,
  .roadmap-tabs-container .nav-tabs,
  #btn-print, .print-btn,
  .alert-dismissable, .alert-dismissible {
    display: none !important;
  }
  /* The sidebar column itself (first column of the outer row). */
  body > .container-fluid > .row > .col-sm-3 {
    display: none !important;
  }

  /* ---- layout reset: un-float, full width ---------------------------- */
  .container, .container-fluid,
  .main-content, .page-content,
  .row,
  .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6,
  .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12,
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6,
  .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6,
  .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6,
  .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    overflow: visible !important;
    box-shadow: none !important;
  }
  .main-content {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    background: #fff !important;
    color: #000 !important;
  }
  .row { background: #fff !important; }
  .pull-left, .pull-right { float: none !important; }
  .campaign-extra,
  .campaign-list {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  /* ---- neutralize legacy inline print rules -------------------------- */
  .pagebreak {
    page-break-before: auto !important;
    break-before: auto !important;
  }
  .printfullwidth { width: 100% !important; }
  .only-print { display: block !important; }

  /* ---- 1. page header (status + responses line under the title block) */
  .oc-results { color: #0B3E60 !important; }
  /* Montserrat only (oc-brand-override.css puts Roboto Condensed on p, td and several roadmap blocks) */
  .oc-results, .oc-results p, .oc-results div, .oc-results td, .oc-results li,
  .oc-results span:not(.fa), .oc-results a, .oc-results h2, .oc-results strong {
    font-family: 'Montserrat', sans-serif !important;
  }
  .oc-r-head { display: block !important; margin: 0 0 12pt 0 !important; }
  .oc-r-head-text { display: block !important; }
  .oc-r-title, .oc-r-campaign, .oc-r-actions, .oc-r-prev { display: none !important; }
  .oc-r-eyebrow { display: inline !important; margin: 0 6pt 0 0 !important; }
  .oc-pill {
    display: inline-block !important;
    padding: 1pt 6pt !important;
    border: 1px solid #0B3E60 !important;
    border-radius: 8pt !important;
    font-size: 7.5pt !important;
    font-weight: bold !important;
    letter-spacing: .04em;
    color: #0B3E60 !important;
    background: #fff !important;
    vertical-align: 1pt;
  }
  .oc-pill-open { border-color: #146B4C !important; color: #146B4C !important; }
  .oc-r-sub { display: inline !important; margin: 0 !important; font-size: 9.5pt !important; color: #3C6580 !important; }

  /* ---- 0. title block (print-only element in dashboard.php) ---------- */
  .print-title-block {
    display: block !important;
    border-left: 4pt solid #FF7900;
    padding: 0 0 0 10pt !important;
    margin: 0 0 14pt 0 !important;
  }
  .print-title-kicker {
    font-size: 8pt; font-weight: bold; letter-spacing: .14em; text-transform: uppercase;
    color: #45577A;
  }
  .print-title-company {
    font-size: 22pt; font-weight: 800; line-height: 1.15; color: #0B3E60;
  }
  .print-title-company:empty { display: none; }
  .print-title-meta { font-size: 9pt; color: #45577A; margin-top: 2pt; }
  .campaign-details-table-footer { display: none !important; }

  /* ---- 2. score card + wheel, side by side on page 1 ----------------- */
  .oc-r-grid {
    display: flex !important;
    gap: 14pt;
    align-items: stretch;
    margin: 0 0 12pt 0 !important;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .oc-results .oc-card {
    display: block !important;
    background: #fff !important;
    border: 1px solid #CED8DF !important;
    border-radius: 8pt !important;
    box-shadow: none !important;
    padding: 12pt 14pt !important;
    margin: 0 !important;
  }
  .oc-r-score { flex: 0 0 47%; }
  .oc-r-wheel-card { flex: 1 1 auto; display: flex !important; flex-direction: column; }
  .oc-r-kicker {
    margin: 0 0 4pt 0 !important;
    font-size: 7.5pt !important;
    font-weight: bold !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    color: #3C6580 !important;
  }
  .oc-r-hero { margin: 0 !important; }
  .oc-results .results-score {
    display: inline !important;
    font-size: 40pt !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
    color: #0B3E60 !important;
    margin: 0 4pt 0 0 !important;
  }
  .oc-r-of { font-size: 11pt !important; font-weight: 600 !important; color: #3C6580 !important; }
  .oc-r-coach {
    margin: 6pt 0 8pt 0 !important;
    padding: 0 0 8pt 0 !important;
    border-bottom: 1px solid #E7ECEF !important;
    font-size: 9.5pt !important;
    line-height: 1.4 !important;
    color: #0B3E60 !important;
  }
  .oc-r-bars { list-style: none !important; margin: 0 !important; padding: 0 !important; }
  .oc-r-bar {
    display: flex !important;
    align-items: center;
    gap: 6pt;
    margin: 0 0 6pt 0 !important;
    padding: 0 !important;
    break-inside: avoid;
  }
  .oc-r-bar-name { flex: 0 0 52pt; font-size: 9.5pt !important; font-weight: bold !important; color: #0B3E60 !important; }
  .oc-r-bar-track {
    flex: 1 1 auto;
    display: block !important;
    height: 8pt !important;
    border-radius: 4pt !important;
    background: #E7ECEF !important;
    overflow: hidden !important;
  }
  .oc-r-bar-fill { display: block !important; height: 100% !important; border-radius: 4pt !important; }
  .oc-r-bar-val { flex: 0 0 26pt; text-align: right; font-size: 9.5pt !important; font-weight: 800 !important; color: #0B3E60 !important; }
  /* component colour map (same as screen and the quiz) */
  .oc-c-vision   { background: #FF7900 !important; box-shadow: inset 0 0 0 1.5pt #F04E23 !important; }
  .oc-c-people   { background: #0D7BB4 !important; }
  .oc-c-data     { background: #1B9066 !important; }
  .oc-c-issues   { background: #0B3E60 !important; }
  .oc-c-process  { background: #F04E23 !important; }
  .oc-c-traction { background: #45577A !important; }
  /* the SVG wheel: fills are SVG attributes, so it prints in colour; labels sit outside the viewBox */
  .oc-r-wheel, #piechart {
    flex: 1 1 auto;
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: static !important;
    width: auto !important;
    height: auto !important;
    padding: 26pt 44pt 30pt 44pt !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  .oc-wheel {
    display: block !important;
    width: 100% !important;
    max-width: 2.6in !important;
    height: auto !important;
    overflow: visible !important;
  }
  .oc-w-label { display: inline !important; font-family: 'Montserrat', sans-serif; }
  .oc-w-name { font-size: 15px; font-weight: bold; fill: #0B3E60; }
  .oc-w-pct { font-size: 14px; font-weight: 600; fill: #3C6580; }
  .oc-w-center { font-family: 'Montserrat', sans-serif; font-weight: 800; fill: #0B3E60; }
  .oc-r-legend, .oc-r-link, .oc-r-band-note, .oc-acc-head, .oc-r-answers-toggle, .oc-r-cta, .oc-r-empty .btn { display: none !important; }
  .oc-r-empty { text-align: center; }


  /* ---- 4. Roadmap / prescriptions (all six panes expanded) ----------- */
  /* The roadmap row is marked hidden-print in the markup; re-enable it. */
  .row.print-roadmap,
  .row.print-roadmap.hidden-print,
  .oc-r-roadmap.print-roadmap {
    display: block !important;
    margin-top: 0 !important;
  }
  /* the roadmap starts under the score card on page 1; its intro stays with the first pane heading */
  .oc-r-roadmap.print-roadmap { margin-top: 6pt !important; padding-top: 10pt !important; border-top: 2px solid #0B3E60 !important; }
  .oc-r-band { break-after: avoid; page-break-after: avoid; break-inside: avoid; page-break-inside: avoid; }
  .roadmap, #recommend-start {
    background: #fff !important;
    color: #000 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  .oc-r-band { padding: 0 !important; }
  .roadmap-tabs-container::before { display: none !important; }
  .roadmap-title {
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: #0B3E60 !important;
    font-size: 16pt !important;
    font-weight: bold !important;
    margin: 0 0 6pt 0 !important;
  }
  .roadmap-desc {
    color: #000 !important;
    font-size: 10.5pt !important;
    margin: 0 0 10pt 0 !important;
  }
  .roadmap-tabs-container { height: auto !important; overflow: visible !important; }
  .tab-content { background: #fff !important; overflow: visible !important; }
  .tab-content > .tab-pane,
  .roadmap-tabs-container .tab-pane,
  .tab-pane.fade,
  .tab-pane.fade.in,
  #p-vision, #p-people, #p-data, #p-issues, #p-process, #p-traction {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 0 10pt 0 !important;
  }
  /* A prescription pane is usually taller than one page, so breaks are
     avoided inside its sub-blocks rather than the whole container (a
     container-level avoid would push each pane to a fresh page and leave
     mostly-blank pages behind). */
  .presc-container {
    break-inside: auto;
    page-break-inside: auto;
    overflow: visible !important;
    position: static !important;
    border: none !important;
    border-bottom: 1px solid #ddd !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 0 8pt 0 !important;
    margin: 0 0 12pt 0 !important;
    color: #000 !important;
    background: #fff !important;
    text-align: left !important;
  }
  .presc-container::before { display: none !important; }
  /* Section heading per pane (hidden on screen via inline display:none
     and .only-print). */
  .presc-container .presc-area,
  .presc-area,
  .presc-area.only-print {
    display: block !important;
    font-size: 15pt !important;
    font-weight: bold !important;
    color: #0B3E60 !important;
    border-bottom: 2px solid #FF7900 !important;
    margin: 0 0 8pt 0 !important;
    padding-bottom: 2pt !important;
    text-align: left !important;
  }
  .presc-intro, .presc-reading, .presc-next-step, .presc-eos-tools {
    font-size: 12pt !important;
    margin-bottom: 6pt !important;
    color: #0B3E60 !important;
  }
  .presc-congrats { font-size: 14pt !important; color: #F04E23 !important; }
  .presc-congrats-sub, .presc-detail, .presc-remind,
  .presc-book-desc, .presc-book-do, .presc-book-title,
  .presc-next-step-desc, .presc-tool-desc {
    font-size: 10.5pt !important;
    line-height: 1.4 !important;
    color: #000 !important;
  }
  .presc-hr { margin: 6pt 0 !important; }
  .presc-separator { height: 6pt !important; margin: 0 !important; }
  .presc-intro-container, .presc-results-container {
    width: 100% !important;
  }
  .presc-area { break-after: avoid; page-break-after: avoid; }
  .presc-area + * { break-before: avoid; page-break-before: avoid; }
  .presc-intro-container { break-inside: avoid; page-break-inside: avoid; }
  /* Chromium does not reliably honor break-after:avoid between siblings, so
     for the standard (under-80%) panes the section heading is drawn as a
     ::before of the first (unbreakable) intro block instead of the separate
     .presc-area element; that keeps the heading with its content. */
  .presc-container > .presc-area:not(.only-print) { display: none !important; }
  .presc-container .presc-intro-container::before {
    display: block;
    font-size: 15pt;
    font-weight: bold;
    color: #0B3E60;
    border-bottom: 2px solid #FF7900;
    margin: 0 0 8pt 0;
    padding-bottom: 2pt;
    text-align: left;
    font-family: 'Montserrat', sans-serif;
  }
  #p-vision   .presc-intro-container::before { content: "VISION"; }
  #p-people   .presc-intro-container::before { content: "PEOPLE"; }
  #p-data     .presc-intro-container::before { content: "DATA"; }
  #p-issues   .presc-intro-container::before { content: "ISSUES"; }
  #p-process  .presc-intro-container::before { content: "PROCESS"; }
  #p-traction .presc-intro-container::before { content: "TRACTION"; }
  /* The over-80% "congratulations" pane is short: keep it on one page. */
  .presc-container:has(> .presc-area.only-print) {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  /* Large inline illustrations (e.g. video stills in next steps) */
  .presc-next-step-bullets img,
  .presc-next-step-item img {
    max-width: 55% !important;
    height: auto !important;
    display: block !important;
    margin: 4pt 0 !important;
  }
  .tab-content > .tab-pane:last-child,
  .tab-content > .tab-pane:last-child .presc-container {
    margin-bottom: 0 !important;
  }
  .presc-intro, .presc-reading, .presc-next-step, .presc-eos-tools {
    break-after: avoid; page-break-after: avoid;
  }
  .presc-results-container,
  .presc-next-step-item,
  .presc-eos-tools-list-container,
  .presc-congrats, .presc-congrats-sub, .presc-badge {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .presc-next-step-container { padding: 0 !important; margin: 0 !important; }
  .presc-next-step-item { margin-bottom: 4pt !important; overflow: hidden !important; }
  .presc-next-step-text, .presc-next-step-bullets li { font-size: 10.5pt !important; line-height: 1.4 !important; }
  .presc-eos-tools-container { margin: 0 !important; padding: 0 !important; }
  .presc-eos-tools-list-container {
    display: block !important;
    overflow: hidden !important;
    margin-bottom: 8pt !important;
  }
  .presc-eos-tools-image {
    float: left !important;
    width: 22% !important;
    margin: 0 8pt 0 0 !important;
  }
  .presc-eos-tools-image img { max-width: 100% !important; height: auto !important; }
  .presc-eos-tools-cta,
  .presc-eos-tools-desc-container {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .presc-eos-tools-cta-heading {
    font-size: 11pt !important;
    font-weight: bold !important;
    color: #0B3E60 !important;
    margin: 0 0 4pt 0 !important;
  }
  .presc-eos-tools-desc, .presc-eos-tools-do {
    font-size: 10.5pt !important;
    line-height: 1.4 !important;
    color: #000 !important;
    margin: 0 0 4pt 0 !important;
  }
  .presc-vid-image, .play img {
    max-width: 40% !important;
    height: auto !important;
  }
  .presc-vid-image { margin-bottom: 6pt !important; }
  .presc-books-container { display: block !important; }
  .presc-book-item {
    display: block !important;
    break-inside: avoid;
    page-break-inside: avoid;
    margin-bottom: 8pt !important;
    overflow: hidden !important;
  }
  .presc-book-image {
    float: left !important;
    width: 14% !important;
    margin-right: 8pt !important;
  }
  .presc-book-image img { max-width: 100% !important; height: auto !important; }
  .divider-vertical { border: none !important; }
  .presc-badge-image { display: none !important; }
  .presc-eos-tools-cta-link { display: none !important; }
  img { max-width: 100% !important; height: auto !important; }

  /* ---- 5. answers: one list, statement + average chip ---------------- */
  /* no forced page break: the list is kept in one piece (it fits on a page), so it follows a short
     last pane on the same page and otherwise starts on the next one */
  .oc-results .oc-r-answers {
    break-inside: avoid;
    page-break-inside: avoid;
    margin-top: 14pt !important;
    border: 0 !important;
    padding: 0 !important;
  }
  .oc-r-answers-head { break-after: avoid; page-break-after: avoid; break-inside: avoid; display: block !important; margin: 0 0 6pt 0 !important; padding: 0 0 4pt 0 !important; border-bottom: 2px solid #0B3E60 !important; }
  .oc-results .answers-title {
    margin: 0 !important;
    font-size: 16pt !important;
    font-weight: bold !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #0B3E60 !important;
    text-align: left !important;
  }
  .oc-r-answers-note { margin: 2pt 0 0 0 !important; font-size: 9pt !important; color: #3C6580 !important; }
  .oc-r-answers-list, .oc-r-answers-list.answers-list { display: block !important; padding: 0 !important; margin: 0 !important; width: 100% !important; background: #fff !important; }
  .oc-r-qtable, .oc-r-qtable > tbody { display: block !important; width: 100% !important; border: 0 !important; margin: 0 !important; }
  .oc-r-qtable > thead { display: none !important; }
  .oc-r-qtable > tbody > tr {
    display: flex !important;
    align-items: center;
    gap: 10pt;
    padding: 2.5pt 0 !important;
    min-height: 0 !important;
    border-bottom: 1px solid #E7ECEF !important;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .oc-r-qtable > tbody > tr > td { display: block !important; padding: 0 !important; border: 0 !important; background: #fff !important; }
  .oc-r-qtable td.oc-q-text { flex: 1 1 auto; font-size: 9pt !important; line-height: 1.25 !important; color: #0B3E60 !important; }
  .oc-r-qtable td, .oc-r-qtable td span { line-height: 1.25 !important; }
  .oc-r-qtable td.answers-list-answer { flex: 0 0 auto; text-align: right !important; }
  .oc-chip {
    display: inline-block !important;
    min-width: 26pt;
    padding: 1pt 5pt !important;
    border-radius: 4pt !important;
    text-align: center;
    line-height: 1.15 !important;
    font-size: 8.5pt !important;
    font-weight: 800 !important;
  }
  .oc-chip-low  { background: #FDE4DC !important; color: #9A2F11 !important; }
  .oc-chip-mid  { background: #FFF1BF !important; color: #6B5400 !important; }
  .oc-chip-high { background: #DDF0E8 !important; color: #146B4C !important; }
  .oc-r-answers-total { margin: 8pt 0 0 0 !important; padding: 0 !important; text-align: right !important; font-size: 9pt !important; color: #3C6580 !important; }
  .oc-r-answers-total .answers-results-score { display: inline !important; float: none !important; font-size: 16pt !important; font-weight: 800 !important; color: #0B3E60 !important; margin: 0 3pt !important; vertical-align: -2pt; }


  /* ---- 6. compact roadmap layout -------------------------------------
     Intro thumbnail beside the score sentence; reading + tools beside the
     next steps. Halves the white space without dropping any content. */
  .presc-container > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 14pt;
    margin: 0 !important;
  }
  .presc-container > .row::before,
  .presc-container > .row::after { display: none !important; }
  /* block + float (not flex): Chromium keeps an unbreakable block together
     with its ::before heading, but splits wrapped flex lines */
  .presc-container > .presc-area + .row {
    display: block !important;
    break-inside: avoid;
    page-break-inside: avoid;
    /* the hidden .presc-area sibling's "+ * { break-before: avoid }" would
       otherwise forbid the only good break point and force one inside */
    break-before: auto !important;
    page-break-before: auto !important;
    overflow: hidden !important;
  }
  /* section heading moves from the intro block to a full-width ::before of
     this unbreakable row, so it can never be orphaned at a page foot */
  .presc-container .presc-intro-container::before { display: none !important; }
  .presc-container > .presc-area + .row::before {
    display: block !important;
    flex: 0 0 100%;
    font-size: 15pt;
    font-weight: bold;
    letter-spacing: .02em;
    color: #0B3E60;
    border-bottom: 2px solid #FF7900;
    padding-bottom: 2pt;
    margin: 0 0 4pt 0;
    font-family: 'Montserrat', sans-serif;
  }
  #p-vision   .presc-area + .row::before { content: "VISION"; }
  #p-people   .presc-area + .row::before { content: "PEOPLE"; }
  #p-data     .presc-area + .row::before { content: "DATA"; }
  #p-issues   .presc-area + .row::before { content: "ISSUES"; }
  #p-process  .presc-area + .row::before { content: "PROCESS"; }
  #p-traction .presc-area + .row::before { content: "TRACTION"; }
  .presc-container > .presc-area + .row > .presc-intro-container {
    float: left !important;
    width: 26% !important;
    margin-right: 14pt !important;
  }
  .presc-container > .presc-area + .row > .presc-results-container {
    width: auto !important;
    overflow: hidden !important;
    padding-top: 14pt !important;
  }
  .presc-container > .row > .col-sm-7,
  .presc-container > .row > .col-sm-5 {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .presc-vid-image, .presc-vid-image img { max-width: 100% !important; }
  .presc-hr { display: none !important; }
  .presc-separator { height: 4pt !important; }
  .presc-detail { margin: 4pt 0 !important; }
  .presc-intro, .presc-reading, .presc-next-step, .presc-eos-tools {
    font-size: 9pt !important;
    font-weight: bold !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    color: #45577A !important;
    margin: 6pt 0 4pt 0 !important;
  }
  .presc-congrats-sub, .presc-detail, .presc-remind,
  .presc-book-desc, .presc-book-do, .presc-book-title,
  .presc-next-step-desc, .presc-tool-desc,
  .presc-eos-tools-desc, .presc-eos-tools-do,
  .presc-next-step-text, .presc-next-step-bullets li {
    font-size: 9pt !important;
    line-height: 1.35 !important;
  }
  .presc-eos-tools-image { width: 26% !important; }
  .presc-book-image { width: 16% !important; }
  .presc-next-step-bullets img,
  .presc-next-step-item img { max-width: 80% !important; }
  .presc-next-step-bullets { margin: 2pt 0 2pt 0 !important; padding-left: 14pt !important; }
  .presc-next-step-item { margin-bottom: 5pt !important; }
}
