/* Long sales letters (old two-column letters rebuilt as one readable column) */
.ms-letter { max-width: 860px; padding-left: 64px; padding-right: 64px; }
.ms-letter .ms-hero { border-bottom: 1px solid var(--ms-line); padding-bottom: 26px; margin-bottom: 30px; }
.ms-letter .ms-hero h1 + h1 { margin-top: 18px; }
.ms-letter .ms-red { color: var(--ms-red); }
.ms-letter .ms-b { font-weight: 700; }
.ms-letter h2 { clear: both; }
.ms-letter h2 + h2 { margin-top: 0; }
.ms-letter blockquote { margin: 0 0 22px; padding: 22px 26px; background: var(--ms-pink); border-radius: var(--ms-radius); border: 1px solid var(--ms-pink-line); }
.ms-letter blockquote > :last-child { margin-bottom: 0; }
.ms-letter ol, .ms-letter ul:not(.ms-checks):not(.ms-hearts) { padding-left: 26px; margin: 0 0 20px; }
.ms-letter ol > li, .ms-letter ul:not(.ms-checks) > li { margin: 0 0 12px; }
.ms-letter ul.ms-checks { margin: 8px 0 26px; }
.ms-letter ul.ms-checks > li { margin-bottom: 16px; }
.ms-letter ul.ms-checks > li > :last-child { margin-bottom: 0; }
.ms-letter img { border-radius: 4px; }
.ms-letter .ms-fr { float: right; margin: 6px 0 16px 24px; max-width: 40%; }
.ms-letter .ms-fl-img { float: left; margin: 6px 24px 16px 0; max-width: 40%; }
.ms-letter .ms-box, .ms-letter .ms-order { overflow: hidden; }
.ms-letter .ms-box h2, .ms-letter .ms-order h2 { margin-top: 0; }
.ms-letter .ms-box--grey { background: var(--ms-cream); border-color: var(--ms-cream-line); }
.ms-letter .ms-order { text-align: center; }
.ms-letter .ms-order p { margin-bottom: 12px; }
.ms-letter .ms-order form { margin: 16px 0 6px; }
.ms-letter .ms-order a:not(.ms-btn) { font-size: 15px; }
.ms-letter .ms-order .ms-btn, .ms-letter form .ms-btn { min-width: min(100%, 360px); }
.ms-letter form { margin: 14px 0; }
.ms-letter form .ms-btn { display: flex; width: fit-content; max-width: 100%; margin: 16px auto 0; }
.ms-letter .ms-tbl { margin: 22px 0; }
.ms-letter .ms-row { display: flex; gap: 24px; align-items: center; margin: 0 0 16px; }
.ms-letter .ms-col { flex: 1 1 0; min-width: 0; }
.ms-letter .ms-col:has(> img:only-child), .ms-letter .ms-col:has(> a:only-child > img) { flex: 0 0 auto; max-width: 42%; text-align: center; }
.ms-letter .ms-quote { clear: both; margin: 30px 0; }
.ms-letter .ms-qt { font: 700 15px/1.35 var(--ms-sans); color: var(--ms-berry); margin: 0 0 8px; }
.ms-letter .ms-quote blockquote { padding: 0; background: none; border: 0; border-radius: 0; margin: 0; }
.ms-letter .ms-quote blockquote p { margin: 0 0 8px; }
.ms-letter .ms-quote cite { font-style: normal; }

@media (max-width: 760px) {
  .ms-letter { padding-left: 18px; padding-right: 18px; }
  .ms-letter .ms-row { flex-direction: column; gap: 10px; }
  .ms-letter .ms-col:has(> img:only-child) { max-width: 100%; }
  .ms-letter .ms-fr, .ms-letter .ms-fl-img { float: none; display: block; margin: 10px auto 16px; max-width: 75%; }
  .ms-letter blockquote { padding: 18px 16px; }
}
.ms-letter .ms-hero .ms-pre { font: italic 400 20px/1.4 var(--ms-head); color: var(--ms-char); margin: 0 0 12px; }
.ms-letter .ms-hero .ms-sub { margin: 16px 0 0; }
.ms-letter .ms-hero .ms-sub + .ms-sub { font-size: 21px; }
.ms-letter .ms-hero .ms-hero-sig { text-align: right; margin: 10px 0 0; }
.ms-letter .ms-hero .ms-hero-sig img { display: inline-block; max-width: 160px; }

/* The shared free mini-course sign-up include (old markup, restyled here) */
.ms-signup { clear: both; margin: 32px 0; }
.ms-signup .dashed-border-F5, .ms-signup > div { border: 3px dashed var(--ms-red); border-radius: 14px; padding: 26px 28px; background: #fffdf6; overflow: hidden; }
.ms-signup .dashed-border-F5 .dashed-border-F5 { border: 0; padding: 0; background: none; }
.ms-signup h1, .ms-signup h2 { font: 400 27px/1.3 var(--ms-head); color: var(--ms-berry); text-align: center; margin: 10px 0 18px; }
.ms-signup img[align=right] { float: right; margin: 0 0 12px 20px; max-width: 30%; height: auto; }
.ms-signup ul { padding-left: 22px; }
.ms-signup li { margin-bottom: 8px; }
.ms-signup form { max-width: 460px; margin: 18px auto 8px; text-align: left; }
.ms-signup table { width: 100% !important; border-collapse: collapse; }
.ms-signup td { display: block; width: auto !important; padding: 4px 0 !important; }
.ms-signup input[type=text], .ms-signup input[type=email] { width: 100%; padding: 12px 14px; font: 400 16px/1.2 var(--ms-sans); border: 1px solid #cfd3d8; border-radius: 8px; background: #fff; }
.ms-signup input[type=submit] { display: block; width: 100%; margin-top: 14px; padding: 15px 20px; border: 0; border-radius: 10px; cursor: pointer; color: #fff;
  font: 600 20px/1.15 var(--ms-cond); letter-spacing: .03em; text-transform: uppercase; background: linear-gradient(#b5194d, var(--ms-berry) 55%, var(--ms-berry-dk)); box-shadow: 0 3px 0 #5e0c22; }
.ms-signup blockquote { background: none; border: 0; padding: 0; margin: 14px 0 0; text-align: center; font-size: 14px; color: var(--ms-muted); }
.ms-signup .yellowback { display: inline-block; background: #fff3a0; padding: 2px 8px; color: var(--ms-ink); }
@media (max-width: 760px) { .ms-signup .dashed-border-F5, .ms-signup > div { padding: 20px 16px; } .ms-signup img[align=right] { max-width: 34%; } }

/* Order details tables kept from the old order pages */
.ms-letter table.ms-data { width: 100%; border-collapse: collapse; margin: 16px 0 20px; font-size: 15px; text-align: left; background: #fff; border: 1px solid var(--ms-line); }
.ms-letter table.ms-data td, .ms-letter table.ms-data th { padding: 10px 14px; border-top: 1px solid var(--ms-line); vertical-align: top; }
.ms-letter table.ms-data tr:first-child td { border-top: 0; font-weight: 700; background: var(--ms-grey); }
.ms-letter table.ms-data td:last-child { text-align: right; white-space: nowrap; }
.ms-letter table.ms-data input[type=checkbox] { accent-color: var(--ms-berry); width: 18px; height: 18px; vertical-align: -3px; margin-right: 6px; }

/* Exit-offer and opt-in pages */
.ms-exit { max-width: 760px; text-align: center; }
.ms-exit img { margin-left: auto; margin-right: auto; }
.ms-exit ul, .ms-exit ol, .ms-exit p:not(:only-child) { text-align: left; }
.ms-exit form { max-width: 460px; margin: 18px auto; text-align: left; }
.ms-exit input[type=text], .ms-exit input[type=email], .ms-exit select { display: block; width: 100%; margin: 0 0 12px; padding: 13px 14px; font: 400 16px/1.2 var(--ms-sans);
  border: 1px solid #cfd3d8; border-radius: 8px; background: #fff; color: var(--ms-ink); }
.ms-exit input[type=submit] { display: block; width: 100%; margin-top: 8px; }
.ms-exit .ms-btn { display: flex; width: 100%; margin: 10px 0 0; }
.ms-exit .ms-row { justify-content: center; }

/* Plain text fields inside letter and order forms (name / email on the order pages) */
.ms-letter form input[type=text], .ms-letter form input[type=email], .ms-letter form select { display: block; width: 100%; max-width: 420px; margin: 6px 0 14px;
  padding: 11px 13px; font: 400 16px/1.2 var(--ms-sans); border: 1px solid #cfd3d8; border-radius: 8px; background: #fff; color: var(--ms-ink); }
.ms-letter form input[type=text]:focus, .ms-letter form input[type=email]:focus { outline: 2px solid var(--ms-berry); outline-offset: 1px; border-color: var(--ms-berry); }
.ms-letter form u:has(> strong) { display: block; margin-bottom: 8px; }
