/**
 * Coeur Store Core — Blog
 * Version 1.3.65
 *
 * Shared presentation for the posts index, archives and single posts.
 * Keeps the native WordPress Query Loop / Post blocks intact.
 */

/* ==========================================================
   BLOG INDEX / ARCHIVE — CARD
   ========================================================== */

body.blog .wp-block-post,
body.archive .wp-block-post {
  color: #202020;
  font-family: "Tilda Sans VF", sans-serif;
}

body.blog .wp-block-post-featured-image,
body.archive .wp-block-post-featured-image {
  position: relative;
  overflow: hidden;
  margin: 0 0 22px !important;
  padding: 0 !important;
  background: #e4e3e1;
}

body.blog .wp-block-post-featured-image a,
body.archive .wp-block-post-featured-image a {
  display: block;
  overflow: hidden;
}

body.blog .wp-block-post-featured-image img,
body.archive .wp-block-post-featured-image img {
  display: block;
  width: 100% !important;
  height: auto;
  border: 0 !important;
  border-radius: 0 !important;
  transform: scale(1);
  transition:
    transform .65s cubic-bezier(.22, .61, .36, 1),
    opacity .35s ease;
}

body.blog .wp-block-post-featured-image a:hover img,
body.blog .wp-block-post-featured-image a:focus-visible img,
body.archive .wp-block-post-featured-image a:hover img,
body.archive .wp-block-post-featured-image a:focus-visible img {
  transform: scale(1.025);
  opacity: .94;
}

body.blog .wp-block-post-title,
body.archive .wp-block-post-title {
  margin: 0 0 12px !important;
  color: #202020 !important;
  font-family: "Instrument Serif", serif !important;
  font-size: clamp(28px, 2.25vw, 36px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

body.blog .wp-block-post-title a,
body.archive .wp-block-post-title a {
  color: #202020 !important;
  text-decoration: none !important;
  transition: opacity .18s ease;
}

body.blog .wp-block-post-title a:hover,
body.blog .wp-block-post-title a:focus-visible,
body.archive .wp-block-post-title a:hover,
body.archive .wp-block-post-title a:focus-visible {
  opacity: .62;
}

body.blog .wp-block-post-excerpt,
body.archive .wp-block-post-excerpt {
  color: #4b4946 !important;
  font-family: "Tilda Sans VF", sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

body.blog .wp-block-post-excerpt__excerpt,
body.archive .wp-block-post-excerpt__excerpt {
  margin: 0 0 18px !important;
}

/* READ MORE — match the site product-card DISCOVER button */
body.blog .wp-block-post-excerpt__more-text,
body.archive .wp-block-post-excerpt__more-text {
  margin: 0 !important;
}

body.blog .wp-block-post-excerpt__more-link,
body.archive .wp-block-post-excerpt__more-link {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  min-height: 40px;
  padding: 7px 8px !important;
  border: 1px solid #202020 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  color: #2f2e2c !important;
  font-family: "Tilda Sans VF", sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  transition: background-color .3s ease;
}

body.blog .wp-block-post-excerpt__more-link::after,
body.archive .wp-block-post-excerpt__more-link::after {
  content: none !important;
  display: none !important;
}

body.blog .wp-block-post-excerpt__more-link:hover,
body.blog .wp-block-post-excerpt__more-link:focus-visible,
body.archive .wp-block-post-excerpt__more-link:hover,
body.archive .wp-block-post-excerpt__more-link:focus-visible {
  background-color: #fff !important;
  color: #2f2e2c !important;
  outline: 0;
}

/* Optional metadata blocks when present in the Query Loop. */
body.blog .wp-block-post-date,
body.blog .wp-block-post-terms,
body.archive .wp-block-post-date,
body.archive .wp-block-post-terms {
  margin: 0 0 10px;
  color: #77736f;
  font-family: "Tilda Sans VF", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}

body.blog .wp-block-post-date a,
body.blog .wp-block-post-terms a,
body.archive .wp-block-post-date a,
body.archive .wp-block-post-terms a {
  color: inherit;
  text-decoration: none;
}


/* ==========================================================
   QUERY LOOP FALLBACK — STATIC BLOG PAGE
   ==========================================================
 * The site Blog page is a normal WordPress page containing a Query Loop,
 * so body.blog / body.archive are not present there. These selectors keep
 * the card CTA styling consistent on that page as well.
 */

body:not(.single-post) .wp-block-query .wp-block-post {
  display: flex;
  flex-direction: column;
  height: 100%;
}

body:not(.single-post) .wp-block-query .wp-block-post-excerpt {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}

body:not(.single-post) .wp-block-query .wp-block-post-excerpt__more-text {
  margin: auto 0 0 !important;
  padding-top: 18px;
}

body:not(.single-post) .wp-block-query .wp-block-post-excerpt__more-link {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  min-height: 40px;
  padding: 7px 8px !important;
  border: 1px solid #202020 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  color: #2f2e2c !important;
  font-family: "Tilda Sans VF", sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  transition: background-color .3s ease;
}

body:not(.single-post) .wp-block-query .wp-block-post-excerpt__more-link::after {
  content: none !important;
  display: none !important;
}

body:not(.single-post) .wp-block-query .wp-block-post-excerpt__more-link:hover,
body:not(.single-post) .wp-block-query .wp-block-post-excerpt__more-link:focus-visible {
  background-color: #fff !important;
  color: #2f2e2c !important;
  outline: 0;
}

/* ==========================================================
   PAGINATION
   ========================================================== */

body.blog .wp-block-query-pagination,
body.archive .wp-block-query-pagination {
  gap: 10px;
  margin-top: 52px;
  color: #202020;
  font-family: "Tilda Sans VF", sans-serif;
}

body.blog .wp-block-query-pagination a,
body.archive .wp-block-query-pagination a,
body.blog .wp-block-query-pagination-numbers .page-numbers,
body.archive .wp-block-query-pagination-numbers .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid rgba(32, 32, 32, .22);
  border-radius: 0;
  color: #202020;
  text-decoration: none;
}

body.blog .wp-block-query-pagination-numbers .page-numbers.current,
body.archive .wp-block-query-pagination-numbers .page-numbers.current,
body.blog .wp-block-query-pagination a:hover,
body.archive .wp-block-query-pagination a:hover {
  border-color: #202020;
  background: #202020;
  color: #f5f2ee;
}

/* ==========================================================
   SINGLE POST — EDITORIAL ARTICLE LAYOUT
   ========================================================== */

/* Article column only. Keeps unrelated Greenshift rows untouched. */
body.single-post .gspb_row__col--12:has(> .wp-block-post-content) {
  box-sizing: border-box;
  width: min(1180px, calc(100% - 48px));
  max-width: 1180px;
  margin-left: auto !important;
  margin-right: auto !important;
  color: #202020;
  font-family: "Tilda Sans VF", sans-serif;
}

/* Clear the featured-image float after the complete article. */
body.single-post .gspb_row__col--12:has(> .wp-block-post-content)::after {
  display: block;
  clear: both;
  content: "";
}

/* Breadcrumb */
body.single-post .wp-block-breadcrumbs {
  margin: 0 0 24px !important;
  color: #77736f;
  font-family: "Tilda Sans VF", sans-serif !important;
  font-size: 12px !important;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .04em;
}

body.single-post .wp-block-breadcrumbs ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.single-post .wp-block-breadcrumbs a {
  color: #77736f !important;
  text-decoration: none !important;
  transition: color .18s ease;
}

body.single-post .wp-block-breadcrumbs a:hover,
body.single-post .wp-block-breadcrumbs a:focus-visible {
  color: #202020 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/*
 * Desktop editorial composition:
 * the featured image floats on the right at roughly half width.
 * The title and opening copy occupy the left side; once the text reaches
 * the bottom of the image, the article naturally continues at full width.
 */
body.single-post .gspb_row__col--12:has(> .wp-block-post-content)
> .wp-block-post-featured-image {
  float: right;
  box-sizing: border-box;
  width: calc(50% - 24px) !important;
  max-width: none !important;
  margin: 0 0 34px 48px !important;
  padding: 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 0 !important;
  background: #e4e3e1;
}

body.single-post .gspb_row__col--12:has(> .wp-block-post-content)
> .wp-block-post-featured-image img {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 5 / 4;
  border: 0 !important;
  border-radius: 0 !important;
  object-fit: cover !important;
}

/* Post title */
body.single-post .wp-block-post-title,
body.single-post h1.wp-block-post-title,
body.single-post h2.wp-block-post-title {
  margin: 0 0 28px !important;
  color: #202020 !important;
  font-family: "Instrument Serif", serif !important;
  font-size: clamp(38px, 4vw, 50px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: .98 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

body.single-post .wp-block-post-date,
body.single-post .wp-block-post-terms {
  color: #77736f;
  font-family: "Tilda Sans VF", sans-serif;
  font-size: 12px;
  line-height: 1.4;
}

/* Article copy deliberately remains in the same formatting context as the
 * featured-image float so the first paragraphs wrap beside the image. */
body.single-post .entry-content,
body.single-post .wp-block-post-content {
  display: block !important;
  overflow: visible !important;
  color: #202020;
  font-family: "Tilda Sans VF", sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.65;
}

body.single-post .wp-block-post-content > p,
body.single-post .wp-block-post-content > ul,
body.single-post .wp-block-post-content > ol,
body.single-post .wp-block-post-content > blockquote,
body.single-post .wp-block-post-content > h2,
body.single-post .wp-block-post-content > h3,
body.single-post .wp-block-post-content > h4 {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

body.single-post .wp-block-post-content > p {
  margin-top: 0;
  margin-bottom: 22px;
}

body.single-post .wp-block-post-content h2,
body.single-post .wp-block-post-content h3,
body.single-post .wp-block-post-content h4 {
  color: #202020;
  font-family: "Instrument Serif", serif;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
  text-wrap: balance;
}

body.single-post .wp-block-post-content h2 {
  margin-top: 58px;
  margin-bottom: 20px;
  font-size: clamp(36px, 4vw, 54px);
  line-height: 1.02;
}

body.single-post .wp-block-post-content h3 {
  margin-top: 42px;
  margin-bottom: 16px;
  font-size: clamp(30px, 3.2vw, 42px);
  line-height: 1.05;
}

body.single-post .wp-block-post-content h4 {
  margin-top: 34px;
  margin-bottom: 14px;
  font-size: 25px;
  line-height: 1.08;
}

body.single-post .wp-block-post-content strong {
  font-weight: 500;
}

body.single-post .wp-block-post-content a {
  color: #202020;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body.single-post .wp-block-post-content ul,
body.single-post .wp-block-post-content ol {
  margin-top: 0;
  margin-bottom: 26px;
  padding-left: 1.3em;
}

body.single-post .wp-block-post-content li + li {
  margin-top: 7px;
}

body.single-post .wp-block-post-content blockquote {
  margin-top: 42px;
  margin-bottom: 42px;
  padding: 22px 0 22px 28px;
  border-left: 1px solid #202020;
  color: #202020;
  font-family: "Instrument Serif", serif;
  font-size: clamp(27px, 3vw, 38px);
  font-style: normal;
  line-height: 1.15;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 1024px) {
  body.single-post .gspb_row__col--12:has(> .wp-block-post-content) {
    width: min(100% - 40px, 1180px);
  }

  body.single-post .gspb_row__col--12:has(> .wp-block-post-content)
  > .wp-block-post-featured-image {
    width: calc(48% - 16px) !important;
    margin-left: 32px !important;
    margin-bottom: 28px !important;
  }


  body.single-post .entry-content,
  body.single-post .wp-block-post-content {
    font-size: 16px;
    line-height: 1.62;
  }
}

@media (max-width: 767.98px) {
  body.blog .wp-block-post-featured-image,
  body.archive .wp-block-post-featured-image {
    margin-bottom: 17px !important;
  }

  body.blog .wp-block-post-title,
  body.archive .wp-block-post-title {
    margin-bottom: 10px !important;
    font-size: 29px !important;
  }

  body.blog .wp-block-post-excerpt,
  body.archive .wp-block-post-excerpt {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }


  body.single-post .gspb_row__col--12:has(> .wp-block-post-content) {
    width: min(100% - 28px, 1180px);
  }

  body.single-post .wp-block-breadcrumbs {
    margin-bottom: 18px !important;
    font-size: 11px !important;
  }

  body.single-post .gspb_row__col--12:has(> .wp-block-post-content)
  > .wp-block-post-featured-image {
    float: none;
    width: 100% !important;
    margin: 0 0 26px !important;
  }

  body.single-post .gspb_row__col--12:has(> .wp-block-post-content)
  > .wp-block-post-featured-image img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 5 / 4;
  }

  body.single-post .wp-block-post-title,
  body.single-post h1.wp-block-post-title,
  body.single-post h2.wp-block-post-title {
    margin-bottom: 24px !important;
    line-height: 1 !important;
  }

  body.single-post .entry-content,
  body.single-post .wp-block-post-content {
    font-size: 16px;
    line-height: 1.6;
  }

  body.single-post .wp-block-post-content > p {
    margin-bottom: 20px;
  }

  body.single-post .wp-block-post-content h2 {
    margin-top: 46px;
    font-size: 38px;
  }

  body.single-post .wp-block-post-content h3 {
    margin-top: 34px;
    font-size: 31px;
  }

  body.single-post .wp-block-post-content blockquote {
    margin-top: 34px;
    margin-bottom: 34px;
    padding-left: 20px;
    font-size: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.blog .wp-block-post-featured-image img,
  body.archive .wp-block-post-featured-image img,
  body.blog .wp-block-post-excerpt__more-link,
  body.archive .wp-block-post-excerpt__more-link,
  body.blog .wp-block-post-excerpt__more-link::after,
  body.archive .wp-block-post-excerpt__more-link::after {
    transition: none !important;
  }
}
