:root {
  --custom-body-width: 960px; /* Define the body-width variable in px */
}

a {
  text-decoration: none;
}

figcaption {
  text-align: justify;
  text-align-last: center;
  margin: 0 auto; /* Centers the element horizontally */
  padding-left: 5%; /* Adjusts internal spacing */
  padding-right: 5%;
}

.multiline-figcaption figcaption {
  text-align-last: left !important;
}

.fake-figcaption {
  text-align: justify;
  text-align-last: center;
  margin: 0 auto; /* Centers the element horizontally */
  margin-top: -1rem; /* Space below the block */
  padding-left: 5%; /* Adjusts internal spacing */
  padding-right: 5%;
  font-size: .9rem;
  color: #6d7a86;
}

p + ul ,
p + ol  {
  margin-top: -0.6rem; /* Removes margin between paragraphs and lists */
}

li p:not(.callout-body-container p) {
  margin-bottom: 0; /* Removes margin between paragraphs and lists */
}

main li {
  margin-bottom: 0.4rem; /* Adds spacing between list items */
}

main li > ul {
  margin-top: 0.4rem; /* Adds spacing between list items */
}

main li > ol {
  margin-top: 0.4rem; /* Adds spacing between list items */
}

.quarto-layout-row {
  align-items: center;
}

.sourceCode {
  font-size: 95%;
}

.small-text {
  font-size: 85%; /* Sets the font size to 85% of the original */
  line-height: 1.35; /* Adjusts line spacing to fit the smaller font size */
}

.centered {
  text-align: center;
}

.underline {
  text-decoration: underline;
}

.custom-gray-block {
  background-color: #f9f9f9; /* Light gray background */
  border: 1px solid #ddd; /* Light gray border */
  padding: 1rem; /* Internal spacing */
  border-radius: 5px; /* Optional: Rounded corners */
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; /* Space below the block */
}

.custom-gray-block > :last-child {
  margin-bottom: 0; /* removes the bottom margin from the last child element -> consistent spacing controlled only by padding */
}

.custom-gray-block h4 {
  margin-top: 0; /* Removes top margin for h4 headings inside div */
}

.quarto-cover-image {
  border: 0px solid black;
  box-shadow: 5px 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

summary {
  cursor: pointer;
}

summary::marker {
  font-size: 1em;
}

/* Fallback for browsers that don't support ::marker */
summary::-webkit-details-marker {
  font-size: 1em;
}

details summary .summary-heading {
  font-size: 1.25rem;
  pacity: .9;
  color: rgb(52, 58, 64);
  font-weight: 400;
  margin: 0;
  display: inline;
}

details[open] summary {
  margin-bottom: 0.5rem; /* Space between summary heading and the following text */
}
