/* Blog - Global */
:root {
  --l--blog-spacing: 1.5rem;
  --c--neutral-xlight: #f9fafb;
  --c--podcast-accent: #ffbc00;

  --fz--blog--xx-large: 4.5rem;
  --fz--blog--x-large: 2.625rem;
  --fz--blog--large: 2.2rem;
  --fz--blog--medium: 1.5rem;
  --fz--blog--body: 1.125rem;
  --fz--blog--small: 0.9375rem;
  --fz--blog--tiny: 0.75rem;
}
main {
  background-color: var(--c--neutral-xlight);
  --wp--style--global--wide-size: 80rem;
}
body.single main {
  --wp--style--global--wide-size: 55rem;
  --wp--style--global--content-size: 42rem;
}
.site-header {
  background-color: #000000cc;
  margin-bottom: 0;
}
@media screen and (min-width: 64rem) {
  main {
    margin-top: 5em;
  }
}

/* Bloc podcast */
.podcast-teaser {
  container-type: inline-size;
  color: #000;
}
.podcast-teaser.color-white {
  --c--podcast-accent: var(--wp--preset--color--background);
}
.podcast-teaser.color-black {
  --c--podcast-accent: var(--wp--preset--color--foreground);
  color: var(--wp--preset--color--background);
}
.podcast-teaser.color-red {
  --c--podcast-accent: var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--background);
}
.podcast-teaser a {
  padding: var(--l-space-xs);
  display: flex;
  flex-direction: column;
  color: inherit;
  /* justify-content: center; */
  background-color: var(--c--podcast-accent);
  border-radius: var(--l--blog-spacing);
  text-decoration: none;
  height: 100%;
}
.podcast-teaser a:hover picture {
  transform: scale(1.08);
}
.podcast-teaser .podcast-author {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.5rem;
  font-family: var(--f-accent);
}
.podcast-teaser .podcast-title {
  text-align: left;
  margin: 0;
  line-height: 1.1;
  color: inherit;
}
.podcast-teaser .podcast-illustration {
  /* --image-size: 12rem;

  position: relative;
  height: var(--image-size);
  display: flex;
  align-items: center;
  justify-content: center; */
  width: 100%;
  margin: auto;
  position: relative;
}
.podcast-teaser .podcast-illustration .play {
  position: absolute;
  font-size: 4rem;
  width: 1em;
  height: 1em;
  margin: -0.5em 0 0 -0.5em;
  left: 50%;
  top: 50%;
  fill: var(--wp--preset--color--background);
  opacity: 0.8;
  z-index: 2;
  transition: transform 0.3s;
}
.podcast-teaser a:hover .podcast-illustration .play {
  transform: scale(1.12);
}

.podcast-teaser .podcast-illustration picture {
  width: var(--image-size);
  flex: 0 0 var(--image-size);
  position: relative;
  z-index: 1;
  transition: transform 0.5s;
}
.podcast-teaser .podcast-illustration img {
  aspect-ratio: 2;
  object-fit: contain;
  width: 100%;
  /* border-radius: 100%; */
  /*   border: 0.5rem solid #fff; */
}

/* .podcast-teaser .podcast-illustration::before,
.podcast-teaser .podcast-illustration::after {
  content: "";
  display: inline-block;
  background-image: url(../img/podcast-deco.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  aspect-ratio: 145/115;
  width: calc(50% - calc(var(--image-size) / 2));
  max-width: 8rem;
}
.podcast-teaser .podcast-illustration::before {
  margin-right: -1rem;
}
.podcast-teaser .podcast-illustration::after {
  margin-left: -1rem;
  transform: rotate(180deg);
} */
@container (min-width: 32rem) {
  .podcast-teaser a {
    padding: var(--l-space-s);
  }
  /* .podcast-teaser .podcast-illustration {
    --image-size: 16rem;
  } */
}

/* Auteurs */
.post-author {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 1rem;
  align-items: center;
}
.post-author img {
  border-radius: 0.25rem;
  aspect-ratio: 1 !important;
}
.post-author-infos {
  line-height: 1.2;
}
.post-author-name {
  display: block;
  font-weight: 700;
  font-size: var(--fz--blog--small);
}
.post-author-poste {
  font-size: var(--fz--blog--tiny);
}

/* Blog Header */
.blog-header {
  max-width: var(--wp--style--global--wide-size);
  padding: 4rem 1rem 1.5rem;
  margin: 0 auto;
}
.blog-header + hr {
  background-color: var(--wp--preset--color--primary);
  width: calc(var(--wp--style--global--wide-size) - 2rem);
  margin: 0 auto;
}
.blog-title {
  color: inherit;
  font-weight: 700;
  font-size: var(--fz--blog--xx-large);
  text-align: left;
  line-height: 1;
}
.blog-header p {
  /* max-width: 30rem; */
  margin: 0;
}

/* Blog Intro */

.blog-intro {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(32rem, 100%), 1fr));
  gap: var(--l--blog-spacing);
  max-width: var(--wp--style--global--wide-size);
  padding: 0 1rem;
  margin: 2rem auto;
}

/* Grid filters */
.posts-grid-filters {
  max-width: var(--wp--style--global--wide-size);
  margin: 3rem auto;
  padding: 0 1rem;
}
.posts-grid-filters ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 1rem;
}
.posts-grid-filters a {
  display: block;
  padding: 0.5rem;
  border: 1px solid var(--wp--preset--color--primary);
  color: #000;
  background-color: #fff;
  text-decoration: none;
  font-weight: 600;
}
.posts-grid-filters a:hover,
.posts-grid-filters a.current {
  color: #000;
  background-color: var(--wp--preset--color--primary);
}

/* Posts-grid */
.posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(25rem, 100%), 1fr));
  gap: var(--l--blog-spacing);
  max-width: var(--wp--style--global--wide-size);
  margin-left: auto;
  margin-right: auto;
}
.site-main > .posts-grid {
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2rem;
}
.latest-post,
.posts-grid article {
  background-color: var(--wp--preset--color--background);
}
.events-list figure,
.latest-post figure,
.posts-grid figure {
  overflow: hidden;
  margin: 0;
}
.events-list a,
.latest-post a,
.posts-grid a {
  color: inherit;
  text-decoration: none;
  display: block;
}
.events-list img {
  width: 100%;
}
/* .events-list img, */
.latest-post img,
.posts-grid img {
  aspect-ratio: 2;
  width: 100%;
  object-fit: cover;
  transition: transform 0.5s;
}
/* .latest-post img {
  aspect-ratio: 2.45;
} */
/* .events-list img {
  aspect-ratio: 4.5;
} */

/* .events-list a:hover img,
.events-list a:focus-visible img, */
.latest-post a:hover img,
.latest-post a:focus-visible img,
.posts-grid a:hover img,
.posts-grid a:focus-visible img {
  transform: scale(1.08);
}
.events-list .post-card-content,
.latest-post .post-card-content,
.posts-grid .post-card-content {
  padding: var(--l--blog-spacing);
}
.events-list .latest-post-meta,
.latest-post .latest-post-meta {
  padding: 0 0 1rem;
  margin: 0 0 var(--fz--blog--tiny);
  border-bottom: 1px dashed var(--wp--preset--color--primary);
  display: flex;
  gap: 1.5rem;
  align-items: center;
  justify-content: space-between;
}
.events-list .latest-post-meta {
  justify-content: flex-start;
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0.5rem;
}
.events-list .post-categories,
.latest-post .post-categories,
.posts-grid .post-categories {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0 0 1rem;
  margin: 0 0 var(--fz--blog--tiny);
  border-bottom: 1px dashed var(--wp--preset--color--primary);
}
.events-list .post-categories,
.latest-post .post-categories {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.events-list .post-categories li,
.latest-post .post-categories li,
.posts-grid .post-categories li {
  padding: 0.5rem;
  font-weight: 600;
  font-size: var(--fz--blog--tiny);
  color: #4c4b49;
  text-transform: uppercase;
  background-color: var(--wp--preset--color--primary);
}
.events-list .posted-on,
.latest-post .posted-on,
.posts-grid .posted-on {
  font-weight: 600;
  font-size: var(--fz--blog--tiny);
}
.events-list .post-title,
.latest-post .post-title,
.posts-grid .post-title {
  font-size: var(--fz--blog--medium);
  line-height: 1.15;
  min-height: 2.3em;
  margin: 0.25em 0;
  text-transform: none;
  text-align: left;
}
.latest-post .post-excerpt,
.posts-grid .post-excerpt {
  font-size: var(--fz--blog--small);
  margin: 0;
}
.latest-post .post-author {
  margin-top: 1rem;
}
.latest-post a:hover .post-author img {
  transform: none;
}

.latest-post figure {
  position: relative;
}
.latest-post figure::after {
  content: "";
  display: block;
  width: 3rem;
  height: 3rem;
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--wp--preset--color--secondary);
  border-left: 0.5rem solid var(--c--neutral-xlight);
  border-bottom: 0.5rem solid var(--c--neutral-xlight);
}

/* Single post */
a.back-to-blog {
  color: var(--wp--preset--color--foreground);
  font-weight: 700;
  text-decoration: none;
}
a.back-to-blog::before {
  border-style: solid;
  border-width: 1px 0 0 1px;
  content: "";
  display: inline-block;
  height: 0.5rem;
  width: 0.5rem;
  transform: rotate(-45deg);
  vertical-align: middle;
  transition: transform 0.2s;
}
a.back-to-blog:hover {
  text-decoration: underline;
}
a.back-to-blog:hover::after {
  transform: translateX(0.25em) rotate(45deg);
}

.single .post-header {
  margin: 0 auto;
  padding: 2rem 1rem;
  position: relative;
}
.single .post-footer,
.single .post-header-content {
  max-width: var(--wp--style--global--wide-size);
  margin: 0 auto;
  /* max-width: 43rem; */
}

.single .post-footer {
  border-top: 1px solid;
  margin-top: 2rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.post-meta-block {
  margin: 1rem 0 0;
  max-width: 18rem;
  background-color: var(--wp--preset--color--neutral-bg);
  padding: var(--l--blog-spacing);
  border-radius: 0.5rem;
  position: relative;
}
.post-footer .post-meta-block {
  margin-left: auto;
  margin-right: auto;
}
.post-meta-block .tooltip {
  background-color: #ffffffcc;
  font-size: var(--fz--blog--tiny);
  display: block;
  padding: 0.5rem;
  border-radius: 0.5rem;
  position: absolute;
  bottom: 4rem;
}
.post-meta-block .post-author {
  margin-bottom: 1rem;
}
.post-share p {
  margin: 0 0 1rem;
  font-size: var(--fz--blog--tiny);
}
.post-share ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  gap: 1.5rem;
}
.post-share a {
  display: block;
}
.post-share svg {
  width: 1.5rem;
  height: auto;
  display: block;
}
/* @media screen and (min-width: 64rem) {
  .post-meta-block {
    position: absolute;
    bottom: 0;
    right: 1rem;
    margin: 0;
    transform: translateY(50%);
  }
} */

.single .post-content {
  /* max-width: var(--wp--style--global--content-size); */
  margin: 0 auto;
  padding: 0 1rem 2rem;
}
.single .post-content > * {
  font-family: inherit;
}
.single .post-thumbnail img {
  width: 100%;
}
.single h1,
.single h2 {
  color: inherit;
  text-transform: none;
  text-align: left;
  font-weight: 700;
  line-height: 1.1;
}
.single h1 {
  font-size: var(--fz--blog--x-large);
  margin-top: 2rem;
}
.single h2 {
  font-size: var(--fz--blog--large);
}

.single .post-content ul {
  list-style: disc;
}
.single .post-content ul ::marker {
  font-size: 0.75em;
}
.single .post-content li {
  padding-left: 0.25em;
}
.single .post-content p,
.single .post-content li {
  font-size: var(--fz--blog--body);
}
.single .introduction {
  font-weight: 600;
}
.single .entry-meta {
  display: flex;
  font-size: var(--fz--blog--tiny);
  margin-top: 0.25rem;
}

.single .entry-meta > :not(:first-child)::before {
  content: "•";
  display: inline-block;
  /* vertical-align: baseline; */
  color: var(--wp--preset--color--secondary);
  margin: 0 0.5em;
}

/* Voir aussi */
.read-also {
  padding: 3rem 0;
  background-color: var(--wp--preset--color--neutral-bg);
}
.read-also > * {
  max-width: 80rem;
  padding: 0 1rem;
  margin-left: auto;
  margin-right: auto;
}

/* Pagination */
.wp-pagenavi {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  padding: 0 1rem 2rem;
  margin: 0 auto;
}
.wp-pagenavi .page,
.wp-pagenavi .current {
  aspect-ratio: 1;
  width: 2.5rem;
  line-height: 2.5rem;
  text-align: center;
  border: 1px solid;
  text-decoration: none;
  color: var(--wp--preset--color--foreground);
}
.wp-pagenavi .current {
  background-color: #fff;
}
.wp-pagenavi .page:hover,
.wp-pagenavi .page:focus-visible {
  border-color: var(--wp--preset--color--secondary);
}

/* Events */
.events-list {
  max-width: var(--wp--style--global--wide-size);
  padding: 2rem 1rem;
  margin: 0 auto;
}
.entry-meta .date-event .date {
  font-weight: 700;
}
.events-list .evenement {
  container-type: inline-size;
}
.events-list a {
  display: block;
  background-color: #fff;
  text-decoration: none;
}

.events-list .post-title {
  font-size: 1.25rem;
  margin: 0;
}
.events-list article + article {
  margin-top: var(--l--blog-spacing);
}
@container (min-width: 48rem) {
  .events-list a {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .events-list img {
    aspect-ratio: unset;
    height: 100%;
  }
}

.post-featured-imagelink {
  display: block;
  width: fit-content;
  max-width: var(--wp--style--global--wide-size);
  margin: 2rem auto;
  width: 100%;
}
.post-featured-imagelink img {
  display: block;
  width: 100%;
}
