/* ------------------------------------------------------------------
   Post and page content
------------------------------------------------------------------ */
.single-post #content a,
.et_full_width_page #main-content a {
  text-decoration: underline;
}
.single-post #content a:hover,
.et_full_width_page #main-content a:hover {
  text-decoration: none;
}

.single-post #content h1,
.single-post #content h2,
.single-post #content h3,
.page #main-content h1,
.page #main-content h2,
.page #main-content h3 {
  font-weight: var(--font-weight-semibold);
}

/* Video embeds keep a 16:9 box */
.et_pb_video iframe,
.et_pb_video_overlay {
  aspect-ratio: 16 / 9;
  height: auto !important;
}
.et_pb_video_play {
  text-decoration: none !important;
}
.et_pb_video_play::before {
  text-shadow: 2px 2px 1rem var(--color-black);
}

.mejs-container,
.mejs-container .mejs-controls,
.mejs-embed,
.mejs-embed body {
  background: var(--color-sea) !important;
}
.mejs-controls .mejs-time-rail .mejs-time-current {
  background: var(--color-white) !important;
}

/* Divider with a notch, printed before post content */
#content hr.arr {
  background: var(--color-border-light);
  border: none;
  clear: both;
  display: block;
  height: 1px;
  margin: 2.5rem auto 1.25rem;
  overflow: visible;
  padding: 0 1.25rem;
  position: relative;
  width: 100%;
}
#content hr.arr::after,
#content hr.arr::before {
  border-style: solid;
  border-width: 0.9375rem 0.9375rem 0;
  content: "";
  display: block;
  left: 48%;
  position: absolute;
  width: 0;
  z-index: 1;
}
#content hr.arr::after {
  border-color: var(--color-white) transparent;
  top: -1px;
}
#content hr.arr::before {
  border-color: var(--color-border-light) transparent;
  top: 0;
}

/* Tables */
#content table {
  margin-block: 1em;
}
#content table th {
  background: var(--color-teal);
  color: var(--color-white);
  font-size: var(--font-size-lg);
}
#content table th,
#content table td {
  border: 1px solid var(--color-teal);
  padding: 0.5em;
}
#content table.align-top th,
#content table.align-top td {
  vertical-align: top;
}

/* Lists: numbered counters and square bullets in the brand colour */
#left-area ol,
.comment-content ol,
.entry-content ol,
body.et-pb-preview #content .container ol {
  list-style: none;
}

#content ol > li,
#content ul > li,
.page #main-content ol > li,
.page #main-content ul > li {
  padding-bottom: 0.5em;
  position: relative;
}

#content ol,
.page #main-content ol {
  counter-reset: alz-counter;
  list-style: none;
}

#content ol > li,
.page #main-content ol > li {
  counter-increment: alz-counter;
  font-weight: var(--font-weight-medium);
  margin-bottom: 0.5em;
  padding-left: 3.5em;
}

#content ol li::marker,
ul li::marker,
.page #main-content ol li::marker,
.page #main-content ul li::marker {
  content: none;
}

#content ol li::before,
.page #main-content ol li::before {
  color: var(--color-teal);
  content: counter(alz-counter) ". ";
  display: block;
  font-size: 1.2em;
  font-weight: var(--font-weight-semibold);
  position: absolute;
  right: calc(100% - 2em);
}

#content ul:not(.no-list) li::before,
.page #main-content ul:not(.no-list) li::before,
#main-content .et_pb_tab_content ul li::before {
  color: var(--color-teal);
  content: "▪";
  font-size: 1em;
  font-weight: var(--font-weight-semibold);
  left: -1em;
  line-height: 1;
  margin-right: 0.5em;
  position: absolute;
  top: 0.15em;
}
#main-content .et_pb_tab_content ul li {
  position: relative;
}

/* Task info box (used in "Protect Your Loved One From Telemarketers") */
.taskInfo {
  background: var(--color-cream);
  padding: 1.25rem;
}
.taskInfo .item {
  align-items: center;
  display: flex;
  margin-bottom: 0.5rem;
}
.taskInfo .item:last-of-type {
  margin-bottom: 0;
}
.taskInfo .item strong {
  margin-right: 0.3125rem;
}
.taskInfo .item img {
  margin-right: 0;
  max-width: 2.1875rem;
}

h2#YoudonthavetokeepeverythinginyourheadMeettheMemoryCareManager {
  font-weight: var(--font-weight-medium) !important;
}

/* ------------------------------------------------------------------
   Worth The Read (progress bar, time to read)
------------------------------------------------------------------ */
#wtr-progress {
  box-shadow: none;
  z-index: 999;
}
.admin-bar #wtr-progress.top.shown,
#wtr-progress.top.shown {
  background: none !important;
  opacity: 1 !important;
}
#wtr-progress.top #wtr-slider {
  background: var(--color-mint) !important;
  opacity: 1 !important;
}
#wtr-content p:not(.has-background):last-of-type {
  padding-bottom: 1em;
}

span.wtr-time-number,
.vid.wtr-time-wrap span.before {
  position: relative;
}

@media (max-width: 980px) {
  #page-container #wtr-progress.top.shown {
    top: 0 !important;
  }
  .admin-bar #page-container #wtr-progress.top.shown {
    top: 2rem !important;
  }
}

/* ------------------------------------------------------------------
   Related posts (Awesome Posts / [crp])
------------------------------------------------------------------ */
.crp_related {
  margin: 6.25rem 0 0;
}
.crp_related ul {
  display: flex;
  gap: 1rem;
  margin-top: 1rem;
  padding: 0 !important;
}
.crp_related li {
  background: var(--color-cream);
  border-radius: var(--radius-sm);
  flex: 1 1 0;
  list-style-type: none;
  transition: transform 0.05s ease-in-out, box-shadow 0.05s ease-in-out;
}
.crp_related li:hover {
  box-shadow: var(--shadow-sm);
  transform: scale(1.03);
}
.crp_related a {
  display: block;
  height: 100%;
  padding: 1.5rem;
  text-align: center;
  text-decoration: none;
  width: 100%;
}
.crp_related img {
  border-radius: 50%;
  display: block;
  margin: 0 auto 0.625rem;
}

@media (max-width: 760px) {
  .crp_related ul {
    flex-direction: column;
  }
  .crp_related a {
    display: flex;
    text-align: left;
  }
  .crp_related .crp_title {
    display: block;
    width: 75%;
  }
  .crp_related img {
    margin: 0 1.25rem 0 0 !important;
    padding: 0 !important;
    width: 5.625rem;
  }
}

@media (max-width: 400px) {
  .crp_related a {
    display: block;
    text-align: center;
  }
  .crp_related .crp_title {
    width: 100%;
  }
  .crp_related img {
    margin: 0 auto 0.625rem !important;
  }
}

/* ------------------------------------------------------------------
   Table of contents (ACF activate_index adds has-toc / no-toc)
------------------------------------------------------------------ */
.single.no-toc #TOC {
  display: none;
}
.single.no-toc #content {
  margin: auto !important;
  width: 100%;
}

/* ------------------------------------------------------------------
   AlzReady (Amazon) products: single-favorite-products.php, taxonomy-products.php
------------------------------------------------------------------ */
.single-favorite-products header {
  display: flex;
  gap: 4rem;
  justify-content: space-between;
  margin-bottom: 2rem;
}
.single-favorite-products header a {
  font-weight: bold;
}
.single-favorite-products .et_post_meta_wrapper #category a {
  font-size: var(--font-size-md);
  letter-spacing: var(--letter-spacing-label);
  text-decoration: none;
  text-transform: uppercase;
}
.single-favorite-products .et_post_meta_wrapper ul.categories {
  list-style-type: none;
  margin-top: 1.25rem;
  padding: 0;
}
.single-favorite-products .et_post_meta_wrapper ul.categories li {
  display: inline-block;
}
.single-favorite-products .et_post_meta_wrapper ul.categories li a {
  font-size: var(--font-size-md);
}
.single-favorite-products .et_post_meta_wrapper ul.categories li::after {
  content: ", ";
  margin-left: -0.2em;
}
.single-favorite-products .et_post_meta_wrapper ul.categories li:last-child::after {
  content: none;
}
.single-favorite-products .entry-content .content {
  display: flex;
  gap: 2rem;
  margin-top: 2rem;
}
.single-favorite-products .content .product_link {
  width: 18.75rem;
}

.tax-products #content .container {
  padding-top: 2.5rem;
}

div#product_list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem 1.5rem;
  margin-top: 1.25rem;
}
#product_list li {
  margin: 0.625rem 0 0 1.25rem;
}

article.tax {
  border: 1px solid var(--color-border-light);
  padding: 1em;
  text-align: center;
  width: calc(50% - 0.75rem);
}
article.tax img {
  margin-bottom: 1.25rem;
}
article.tax h2 {
  color: var(--color-teal);
  font-size: var(--font-size-lg);
}
article.tax a {
  text-decoration: none;
}

/* ------------------------------------------------------------------
   Sidebar widgets and breadcrumbs
------------------------------------------------------------------ */
.et_pb_widget ul > li {
  line-height: 1em;
  margin-bottom: 0.75em;
}
.et_pb_widget a {
  color: var(--color-teal);
}

h4.widgettitle {
  margin-bottom: 1.5rem;
  position: relative;
}
h4.widgettitle::after {
  background: var(--color-text-strong);
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  width: 3.125rem;
}

.widget_lc_taxonomy {
  list-style-type: none;
}
.widget_lc_taxonomy li a {
  display: inline-block;
  line-height: 1.2em;
  text-decoration: none;
}
.widget_lc_taxonomy .children {
  margin: 0 0 1.25rem 1.25rem;
}
#lct-widget-products > li.cat-item > a {
  color: var(--color-text-strong);
  font-weight: var(--font-weight-medium);
}

#breadcrumbs {
  font-size: var(--font-size-md);
  margin-bottom: 1.25rem;
}

.page #left-area {
  padding-bottom: 6.25rem;
}

/* Category archive background curves */
body.category .alz-category-hero,
body.category .et_pb_section_0_tb_body {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1920 1688.187' preserveAspectRatio='none'%3E%3Cpath d='M1920 1688.188s-218.559-522.787-832.235-1065.649S0 .665 0 .665h1920Z' fill='rgba(67,122,136,0.15)'/%3E%3Cpath d='M1920 1377.558s-354.629-558.12-837.151-927.262S0 .665 0 .665h1920Z' fill='rgba(67,122,136,0.15)'/%3E%3Cpath d='M1920 1102.306s-177.561-340.211-804.164-737.379S0 .665 0 .665h1920Z' fill='rgba(67,122,136,0.15)'/%3E%3C/svg%3E")
    no-repeat !important;
  background-size: 100vw 65vh !important;
}
