/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

html, body {
  height: 100%;
}

body {
  display: flex;
  flex-direction: column;
}

a {
    transition: all 0.3s ease-in-out;
}

span.ampersand {
  font-size: calc(var(--heading-2xl)/1.15);
}

@media (max-width: 767px) {
  span.ampersand {
    font-size: calc(var(--heading-2xl)/1.4);
  }
}

.card_article:hover {
    filter: brightness(1.05);
}

.brxe-button i, .cla_button i {
    top: -2px;
}

button[type="submit"].bricks-button {
    border-radius: 4px;
    box-shadow: 0 10px 30px -15px var(--black-l-4);
    padding: var(--space-2xs) var(--space-xs) calc(var(--space-2xs)/1.5) var(--space-xs);
    transition: all 0.3s ease-in-out;
}

button[type="submit"].bricks-button:hover {
    background-color: var(--lt-blue-l-1) !important;
    transform: scale(1.04);
}

.brx-popup-backdrop {
    backdrop-filter: blur(5px);
}

footer {
  margin-top: auto;
}

.footer-links a {
    color: inherit;
    border-bottom: 0;
}


.date-filter {
    display: flex;
    justify-content: end;
}

#pub-year-filter {
    line-height: 1;
    max-width: 200px;
    padding: var(--space-2xs) var(--space-2xs) calc(var(--space-2xs)/2) var(--space-2xs);
}

#pub-year-filter option {
    font-size: var(--text-m);
    line-height: var(--text-m);
}

#filter-spinner {
  display: none;
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.6);
  z-index: 10;
  align-items: center;
  justify-content: center;
}

#filter-spinner.active {
  display: flex;
}

#filter-spinner::after {
  content: '';
  width: 40px;
  height: 40px;
  border: 3px solid #ddd;
  border-top-color: #333;
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

#brxe-fxfqhz {
  transition: opacity 0.3s ease;
}

#brxe-fxfqhz.is-loading {
  opacity: 0.4;
}

.article__content :is(h1,h2,h3,h4,h5,h6) {
  color: var(--purple);
  margin-bottom: var(--space-m);
}

.article__content .wp-element-button {
  background-color: var(--lt-blue);
  border-radius: 4px;
  box-shadow: 0 5px 30px -15px var(--black-l-2);
  color: var(--white);
  font-weight: 700;
  margin-top: var(--space-m);
  padding: var(--space-2xs) var(--space-s) calc(var(--space-2xs)/3) var(--space-s);
  transition: all 0.3s ease-in-out;
}

.article__content .wp-element-button:hover {
  background-color: var(--lt-blue-l-1);
  color: var(--white);
  transform: scale(1.04);
}

.cla_post_navigation a {
  background-color: var(--lt-blue);
  border-radius: 4px;
  box-shadow: 0 5px 30px -15px var(--black-l-2);
  color: var(--white);
  font-weight: 700;
  line-height: 1;
  padding: var(--space-2xs) var(--space-s) calc(var(--space-2xs)/1.8) var(--space-s);
  transition: all 0.3s ease-in-out;
}

.cla_post_navigation a:hover {
  background-color: var(--lt-blue-l-1);
  color: var(--white);
  transform: scale(1.04);
}

.cla_post_navigation .swiper-button {
  height: auto;
}

.cla_post_navigation a i {
  position: relative;
  top: -3px;
}

.publication:last-of-type {
  border-bottom: 0 !important;
}

.pipeline__details ul {
  padding-left: 0;
}

.pipeline__details li {
  margin: var(--space-2xs) 0;
}

.pipeline__details li a {
  color: var(--purple);
}

.pipeline__details :is(ul) {
  margin-left: var(--space-m);
}

.person_block__image:before {
  backdrop-filter: grayscale(0.85);
  bottom: 0;
  content: '';
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.3s ease-in-out;
}

.person_block__info:hover .person_block__image:before {
  backdrop-filter: grayscale(0);
}

.person_block__info:hover .cla_button {
  transform: scale(1.04);
}