/* ----------------------------------------------------- */
/* CODE
/* The Anderen • July 2026
/* ----------------------------------------------------- */

*, *:before, *:after {
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

@font-face {
  font-family: "OVRLast";
  src: url("../fonts/OVRLastVF.woff") format("woff"),
  url("../fonts/OVRLastVF.woff2") format("woff2");
  font-weight: 300 900;
  font-style: normal;
  font-display: swap;
}


/* ------------------------------------------------------------------- */
/* !$ Base */
/* ------------------------------------------------------------------- */

:root {
  --padding: clamp(20px, calc(20px + 10 * ((100vw - 420px) / 1200)), 30px);
  --text-size: clamp(15px, calc(15px + 9 * ((100vw - 420px) / 1200)), 24px);
  --line-height: 1.25;
  --space: calc(var(--text-size)*var(--line-height));
  --space-S: calc(var(--space)*0.8);
  --space-L: calc(var(--space)*4);
  --icon-size: calc(var(--text-size)*2);
  --button-width: calc(var(--padding) + var(--icon-size));
  --col-light: #fafafa;
  --col-1: #0000ff;
  --col-2: #4F1708;
  --col-3: #C9915D;
  --ratio-L: calc(2746 / 4000);
  --ratio-H: calc(1984 / 2500);
  --ratio-P: calc(4000 / 2909);
  --opacity-light: 0.3;
  --opacity-dark: 0.6;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}
/* Fallback for browsers that don't support clamp */
@supports not (padding: clamp(1px, 1vw, 1px)) {
  :root {
    --padding: 20px;
    --text-size: 15px;
  }
}

::selection {background: rgba(0,0,0,0.99); color: var(--col-light);}
::-moz-selection {background: rgba(0,0,0,0.99); color: var(--col-light);}

html {
  -webkit-text-size-adjust: 100%;
}
body {
  font-family: "OVRLast", sans-serif;
  font-weight: normal;
  font-feature-settings: "liga", "dlig", "kern" 1;
  font-kerning: normal;
  -webkit-tap-highlight-color: transparent;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.sr-only-focusable:not(:focus):not(:focus-within) {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

svg {
  overflow: visible;
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
figure {
  position: relative;
  display: block;
  width: 100%;
}

picture {
  display: block;
  overflow: hidden;
  position: relative;
  padding-bottom: calc(var(--ratio-H) * 100%);
  background-color: rgba(0,0,0,0.1);
}
.portrait picture {
  padding-bottom: calc(var(--ratio-P) * 100%);
}
.cover picture {
  padding-bottom: calc(var(--ratio-L) * 100%);
}
.placeholder {
  padding-bottom: calc(var(--ratio-L) * 100%);
  background-color: rgba(0,0,0,0.2);
}
picture img {
  position: absolute;
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

figcaption {
  margin-top: calc(var(--space)/6);
}
.intro figcaption {
  color: var(--col-light);
  opacity: var(--opacity-dark);
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  padding: var(--padding);
  margin-top: 0;
}
.block.cover figcaption {
  padding-left: var(--padding);
  opacity: var(--opacity-light);
}


/* ------------------------------------------------------------------- */
/* !$ Link */
/* ------------------------------------------------------------------- */

*:focus, *:focus-visible {
  outline: none;
}

a {
  color: currentcolor;
  opacity: 1;
  text-decoration: none;
  position: relative;
}

.text a {
  text-decoration: underline;
  text-decoration-thickness: from-font;
  word-wrap: break-word;
  text-underline-offset: calc(var(--text-size)*0.1);
}

.nav a,
.address a,
.contact a,
.item a,
.details a,
button {
  transform: translateZ(0);
  transition: color 0.6s var(--ease), opacity 0.6s var(--ease);
}
.link-home .logo {
  transition: fill 0.6s var(--ease);
}
.nav-secondary a,
.nav-languages a,
.copyright,
button[aria-pressed="false"] {
  opacity: var(--opacity-light);
}

.nav .is-open a {
  opacity: var(--opacity-dark);
}
.nav .is-open a[aria-current="page"] {
  pointer-events: none;
}

.link {
  position: relative;
  transition: color 0.6s var(--ease), opacity 0.6s var(--ease);
  padding-left: var(--text-size);
}
.text-M .link  {
  padding-left: calc(var(--text-size)*1.33);
}
.text-XL .link  {
  padding-left: calc(var(--text-size)*2);
}
.link::before {
  content: '→';
  position: absolute;
  left: 0;
  top: 0;
  transition: opacity 0.6s var(--ease), transform 0.6s var(--ease);
  will-change: opacity, transform;
}
.link.reveal-icon.back {
  opacity: var(--opacity-light);
}
.link.reveal-icon::before {
  opacity: 0;
  transition-duration: 0.2s;
}
.link.reveal-icon.back::before {
  content: '←';
}
.link.inline-icon::before {
  opacity: 1;
}
.link span {
  display: inline-block;
  vertical-align: text-top;
  transform: translateX(calc(var(--text-size) * -1));
  transition: transform 0.6s var(--ease);
  will-change: transform;
}
.link.text-XS {
  display: inline-block;
  white-space: nowrap;
}
.text-M .link  span {
  transform: translateX(calc(var(--text-size)*1.33 * -1));
}
.text-XL .link  span {
  transform: translateX(calc(var(--text-size)*2 * -1));
}
.link.inline-icon span {
  transform: translateX(0);
}
.link.no-icon {
  opacity: var(--opacity-light);
}

.cta {
  border: 1px solid;
  border-radius: var(--text-size);
  padding: calc(var(--text-size)/3) var(--text-size) calc(var(--text-size)/8) var(--text-size);
}

.tag-item {
  display: inline-block;
  margin-bottom: calc(var(--space)/3);
  margin-right: calc(var(--space)/3);
}
.tag-item .tag-link,
.tag-item .tag-no-link {
  display: inline-block;
  padding: calc(var(--text-size)/4) calc(var(--text-size)/2) calc(var(--text-size)/8) calc(var(--text-size)/2);
}
.tag-item .tag-link {
  background-color: var(--col-light);
  transition: color 0.6s var(--ease), background-color 0.6s var(--ease);
  will-change: color, background-color;
}
#knowledge .tag-item .tag-link {
  color: var(--col-1);
}
.tag-item .tag-no-link {
  background-color: rgba(255,255,255,var(--opacity-light));
}
.tag-item.type .tag-link {
  padding: 0;
  background-color: transparent;
}
.tag-item.contract .tag-link,
.tag-item.contract .tag-no-link {
  border-radius: var(--text-size);
  padding-left: calc(var(--text-size)/3*2);
  padding-right: calc(var(--text-size)/3*2);
}


/* ------------------------------------------------------------------- */
/* !$ Text */
/* ------------------------------------------------------------------- */

body {
  font-size: var(--text-size);
  line-height: var(--line-height);
}
.text-XL, h1 {
  font-size: calc(var(--text-size)*2);
  line-height: calc(var(--line-height)*0.8);
  letter-spacing: calc(var(--text-size)*0.06 * -1);
}
.text-L {
  font-size: calc(var(--text-size)*1.5);
  line-height: var(--line-height);
  letter-spacing: calc(var(--text-size)*0.03 * -1);
}
.text-M, h2 {
  font-size: var(--text-size);
}
.text-N {
  font-size: var(--text-size);
}
.text-S, h3 {
  font-size: calc(var(--text-size)*0.8);
  font-weight: bold;
  line-height: calc(var(--line-height)*0.9);
}
.text-XS, h4 {
  font-size: calc(var(--text-size)*0.6);
  font-weight: bold;
  letter-spacing: calc(var(--text-size)*0.02);
}

em {
  font-style: italic;
}
.bold, strong {
  font-weight: bold;
}
.uppercase {
  text-transform: uppercase;
}

.text h3 + p,
.text h3 + ul,
.text h3 + ol {
  margin-top: var(--space);
}
.text > *:first-child {
  margin-top: 0;
}
.text p + p,
.text p + ul, .text ul + p,
.text p + ol, .text ol + p {
  margin-top: var(--space);
}

.text h2 {
  font-size: var(--text-size);
  margin-top: calc(var(--space)/3*6);
  margin-bottom: var(--space);
  font-weight: bold;
  border-top: 1px solid;
  padding-top: calc(var(--space)/3);
}
.text h3 {
 margin-top: calc(var(--space)*2);
}

.text {
  counter-reset: k-ol k-alpha;
}
.text ul,
.text ol {
  list-style: none;
  padding-left: 0;
}
.text ul li,
.text ol li {
  position: relative;
  padding-left: calc(var(--text-size) * 2);
}
.text ul li::before,
.text ol li::before {
  position: absolute;
  left: 0;
  top: 0;
}

.text ul li::before {
  content: '—';
}

.text ol:not(.ol-alpha) > li {
  counter-increment: k-ol;
}
.text ol:not(.ol-alpha) > li::before {
  content: counter(k-ol) ".";
}

.text ol.ol-alpha > li {
  counter-increment: k-alpha;
}
.text ol.ol-alpha > li::before {
  content: counter(k-alpha, lower-alpha) ".";
}

blockquote {
  margin: calc(var(--space)*2) 0;
  padding-left: calc(var(--space)*2);
}
blockquote:first-child {
  margin-top: 0;
}
blockquote:last-child {
  margin-bottom: 0;
}

h1.title, h2.title, h3.title {
  text-wrap: balance;
}

.block-title,
.section-title {
  margin-bottom: var(--space);
}
.page-title {
  text-wrap: balance;
}
.text-shift {
  transform: translateX(calc(var(--text-size)*0.2 * -1));
}
.text-shift.text-L {
  transform: translateX(calc(var(--text-size)*0.166 * -1));
}

.block.document {
  display: flex;
  flex-direction: column;
  gap: calc(var(--space)/2);
  text-wrap: balance;
}
.file-info {
  margin-top: calc(var(--space)/6);
  opacity: var(--opacity-light);
  display: block;
}

/* ------------------------------------------------------------------- */
/* !$ Container */
/* ------------------------------------------------------------------- */

html {
  scroll-behavior: smooth;
}

body {
  position: relative;
  margin: 0 auto;
  width: 100%;
  background-color: #F2EEEE;
  padding-right: calc(var(--button-width) - 1px);
}

.template-home {
  background-color: #E4E5DF;
}
.template-expertise {
  background-color: #F2EEEE;
}
.template-about {
  background-color: #dbdecf;
}
.template-contact {
  background-color: #AD8158;
}
.template-knowledge {
  background-color: #DBD1B4;
}


.scroll-container {
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}
.scroll-container.horizontal {
  overflow-y: hidden;
  overflow-x: scroll;
}
.no-select, .icon {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.no-drag, .icon, .btn img, .dot img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
}




.section {
  margin-bottom: var(--space-L);
}
.section:last-child {
  margin-bottom: 0;
}
.section.title {
  padding-top: calc(var(--space-L)*2);
}
.section.tagline {
  margin-bottom: var(--space-L);
}

.section.expertise,
.section.related,
.section.contact {
  padding: 0 var(--padding);
}
.section.related.books {
  padding: 0;
}

.block {
  padding: 0 var(--padding);
  margin-bottom: var(--space);
}
.block:last-child {
  margin-bottom: 0;
}

.block.image,
.block.video {
  padding: 0;
}
.block.image figcaption {
  padding-left: var(--padding);
  padding-right: var(--padding);
}
.block.tags {
  margin-bottom: calc(var(--space)*2);
}

.block.empty {
  opacity: var(--opacity-light);
}





/* ------------------------------------------------------------------- */
/* !$ Header */
/* ------------------------------------------------------------------- */

.page-header {
  position: absolute;
  left: 0;
  top: 0;
  width: calc(100% - var(--button-width));
  padding: var(--padding);
  display: flex;
  gap: var(--padding);
  z-index: 3;
}
.page-header .nav-home {
  width: 66.66%;
}
.page-header .nav-primary {
  display: none;
}


.link-home {
  display: block;
}
.link-home svg {
  display: block;
}
.page-header .link-home {
  max-width: 300px;
}
.template-home .page-header .link-home {
  max-width: 600px;
}

#btn-menu,
#btn-knowledge {
  position: fixed;
  right: 0;
  color: var(--col-light);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: var(--padding);
  padding: var(--padding) calc(var(--padding)/2);
  cursor: pointer;
  width: var(--button-width);
  transition: background-color 0.3s var(--ease);
}
#btn-menu {
  top: calc(66.66% - var(--padding));
  background-color: var(--col-2);
  height: calc(33.33% + var(--padding));
  padding-top: calc(var(--padding)*2);
  z-index: 99;
}
#btn-knowledge {
  top: 0;
  background-color: var(--col-1);
  height: 66.66%;
  z-index: 100;
}
#btn-knowledge .btn-text {
  display: inline-flex;
  align-items: center;
  gap: var(--padding);
  transition: opacity 0.3s var(--ease), transform 0.3s var(--ease);
}
#btn-knowledge.is-active .btn-text {
  opacity: 0;
  transform: translateX(calc(var(--padding)/2 * -1));
}
.article-first {
  opacity: var(--opacity-dark);
  max-height: 50%;
  text-wrap: balance;
  display: none;
}

/* safari transparent bars hack */
.bg-bleed {
  position: absolute;
  width: var(--button-width);
  right: 0;
  z-index: 2;
  will-change: transform;
}
.bg-bleed.top {
  top: 0;
  height: 100%;
  background-color: var(--col-1);
  transform-origin: top;
}
.bg-bleed.bottom {
  bottom: 0;
  height: 25vh;
  background-color: var(--col-2);
  transform-origin: bottom;
}
@media all and (min-width: 720px) {
  .bg-bleed.bottom {
    display: none;
  }
}


#btn-menu .btn-text,
#btn-knowledge .btn-text {
  writing-mode: vertical-rl;
}
#btn-menu .icon,
#btn-knowledge .icon {
  width: var(--icon-size);
}

#menu,
#knowledge {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  padding: var(--padding);
  color: var(--col-light);
  transform: translateX(100%);
  transition: transform 0.45s var(--ease);
  will-change: transform;
  z-index: 6;
  padding-right: calc(var(--button-width) + var(--padding));
}
#menu {
  width: 100%;
  background-color: var(--col-2);
  display: flex;
  flex-direction: column;
  gap: var(--space-L);
  justify-content: space-between;
}
#menu .nav-home {
  margin-bottom: var(--space);
}
#menu .nav-menu.nav-primary li {
  margin-bottom: calc(var(--space)/2);
}
#menu .nav-menu.nav-primary li:last-child {
  margin-bottom: calc(var(--space)*2);
}
#knowledge {
  width: calc(100% - var(--padding)*2);
  background-color: var(--col-1);
}
#menu.is-visible,
#knowledge.is-visible {
  transform: translateX(0);
}

/* hamburger to X animation */
#btn-menu .icon-menu .line-move {
  transform-box: view-box;
  transform-origin: 50% 50%;
  translate: 0 0;
  transition: translate 0.45s var(--ease) 0.45s;
}
#btn-menu .icon-menu .line {
  transform-box: fill-box;
  transform-origin: center;
  rotate: 0deg;
  opacity: 1;
  transform: scale(1);
  transition:
    rotate 0.45s var(--ease),
    opacity 0.3s var(--ease) 0.45s,
    scale 0.3s var(--ease) 0.45s;
}
#btn-menu.is-active .icon-menu .line-move {
  transition: translate 0.2s var(--ease);
}
#btn-menu.is-active .icon-menu .line {
  transition:
    rotate 0.45s var(--ease) 0.45s,
    opacity 0.3s ease,
    scale 0.3s ease;
}
#btn-menu.is-active .line-top-move {
  translate: 0 44.44%;
}
#btn-menu.is-active .line-bottom-move {
  translate: 0 -44.44%;
}
#btn-menu.is-active .line-top {
  rotate: 45deg;
}
#btn-menu.is-active .line-middle {
  opacity: 0;
  scale: 0 1;
}
#btn-menu.is-active .line-bottom {
  rotate: -45deg;
}

/* plus to X animation */
#btn-knowledge .icon-plus .line {
  transform-box: fill-box;
  transform-origin: center;
  rotate: 0deg;
  transition: rotate 0.45s var(--ease);
}
#btn-knowledge.is-active .icon-plus .line {
  rotate: -45deg;
}


#menu .logo {
  fill: var(--col-light);
}

.wrapper,
.inner-wrapper,
.nav-secondary ul,
.nav-languages ul {
  display: flex;
  gap: var(--padding);
}
#menu .nav-secondary ul {
  flex-direction: column;
  gap: calc(var(--space)/2);
}

.wrapper {
  justify-content: space-between;
  align-items: end;
}
.inner-wrapper {
  margin-left: auto;
  margin-right: 0;
  justify-content: space-between;
}
.inner-wrapper.text-XS {
  justify-content: end;
  flex-wrap: wrap;
  gap: calc(var(--space)/2) var(--padding);
}

.page-footer .nav-secondary {
  display: none;
}

.copyright {
  white-space: nowrap;
}





/* ------------------------------------------------------------------- */
/* !$ Knowledge */
/* ------------------------------------------------------------------- */

body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: 2;
  background: rgba(85, 40, 35, 0.3);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s var(--ease);
}
body:has(#knowledge.is-visible)::before {
  opacity: 1;
}

.articles .grid,
.books .grid,
.events .grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space) var(--padding);
}
#knowledge .knowledge-wrapper {
  grid-template-columns: 1fr;
}

.item .cover {
  display: block;
}
.item-article .cover {
  width: 50%;
  max-width: 180px;
  margin-bottom: calc(var(--space)/3*2);
}
.item-article .title,
.item-event .title {
  text-wrap: balance;
  font-weight: normal;
}
.card.item .title,
.upcoming-events .item-event .title {
  margin-top: calc(var(--space)/3);
}

.upcoming-events .item-event .image {
  margin-bottom: calc(var(--space)/3);
}

.item-article .image::after,
.item-book .image::after,
.item-event .image::after,
.item-job .image::after {
  content: '';
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 255, var(--opacity-light));
  opacity: 0;
  transition: opacity 0.6s var(--ease);
}
#knowledge .item-article .image::after,
.item-job .image::after {
  background: rgba(201, 145, 93, var(--opacity-light));
}

.item-article .info li {
  display: inline-block;
  vertical-align: baseline;
  margin-right: calc(var(--space)/3);
  margin-top: calc(var(--space)/6);
}

.item time,
.details time {
  opacity: var(--opacity-light);
  text-transform: uppercase;
}
#knowledge .item time {
  opacity: var(--opacity-dark);
}
.item-event time,
.template-knowledge-event .details time {
  opacity: 1;
}
.details time {
  display: inline-block;
  margin-top: var(--space);
  margin-bottom: calc(var(--space)/3);
}
.template-knowledge-event .details time {
  margin-top: 0;
  opacity: 1;
}
.details .expertise,
.details .authors {
  display: flex;
  flex-direction: column;
  gap: calc(var(--space)/6);
}
.details .expertise {
  margin-top: calc(var(--space)/6);
  margin-bottom: calc(var(--space)/3);
}

.details .links {
  margin-top: var(--space);
}
.details .external-links {
  margin-top: var(--space);
  display: flex;
  flex-direction: column;
  gap: calc(var(--space)/3);
}

#knowledge .grid {
  display: flex;
  flex-direction: column;
  gap: var(--space);
  margin-top: var(--space-L);
  margin-bottom: var(--space);
}


/* ----------------------------------------------------- */
/* !$ Knowledge Page */
/* ----------------------------------------------------- */

.switch {
  display: flex;
  gap: calc(var(--padding)/2);
  margin-bottom: calc(var(--space)/3);
}
.switch-button {
  opacity: var(--opacity-light);
  transition: opacity 0.2s var(--ease);
}
.switch-button:hover,
.switch-button.is-active {
  opacity: 1;
}

.template-knowledge .section.title {
  margin-bottom: calc(var(--space)*2);
}
.result-count {
  padding-left: var(--padding);
  opacity: var(--opacity-light);
}

.knowledge-index {
  position: relative;
  padding: 0 var(--padding);
}
.knowledge-index.articles .grid {
  margin-top: var(--space-L);
}
.knowledge-index.events .grid {
  margin-top: var(--space);
}

.knowledge-toolbar {
  display: flex;
  align-items: center;
  gap: var(--padding);
  margin-bottom: var(--space);
}

.knowledge-search {
  flex: 1 1 auto;
}
.knowledge-search-field {
  display: flex;
  align-items: center;
  gap: calc(var(--padding) / 2);
  color: currentColor;
  opacity: var(--opacity-light);
  transition: opacity 0.2s var(--ease);
}
.knowledge-search-field:focus-within,
.knowledge-search-field.has-value {
  opacity: 1;
}

.knowledge-search input {
  width: 100%;
}
.knowledge-search input::placeholder {
  color: currentColor;
  opacity: 1;
}

.search-icon {
  width: calc(var(--text-size)*0.8);
  height: calc(var(--text-size)*0.8);
  flex: 0 0 auto;
  transform: translateY(-5%);
}

.knowledge-search-clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: var(--text-size);
  height: var(--text-size);
  opacity: 0;
  pointer-events: none;
  cursor: pointer;
  transition: opacity 0.2s var(--ease);
}
.knowledge-search-field.has-value .knowledge-search-clear {
  opacity: 1;
  pointer-events: auto;
}
.search-clear-icon {
  width: calc(var(--text-size) * 0.75);
  height: calc(var(--text-size) * 0.75);
  transform: translateY(-16.66%);
}
.knowledge-search input[type="search"]::-webkit-search-cancel-button {
  appearance: none;
}

.knowledge-filter-toggle {
  display: inline-flex;
  align-items: center;
  opacity: var(--opacity-light);
  transition: opacity  0.6s var(--ease), color 0.6s var(--ease);
}

.filter-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space);
  height: 0;
  overflow: hidden;
  opacity: 0;
  position: relative;
  transition: opacity 0.3s var(--ease);
}
.filter-container.is-open {
  opacity: 1;
}

.filter {
  margin: 0;
}
.filter-group {
  display: block;
}
.filter-group:last-child {
  padding-bottom: var(--space-L);
}
[data-filter-panel] {
  overflow: hidden;
}
.filter-title {
  pointer-events: none;
  margin-bottom: calc(var(--space)/3);
}
.filter-list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--space)/6) var(--text-size);
  list-style: none;
  padding: 0;
}
@media all and (max-width: 719px) {
  .filter-list {
    height: auto !important;
    opacity: 1;
    overflow: visible;
    transition: none;
  }
}
.filter-item {
  opacity: 1;
  transition: opacity 0.6s var(--ease), color 0.6s var(--ease);
}

.filter-item.is-active {
  color: var(--col-1);
  /* text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.12em; */
}
.filter-item.is-disabled {
  opacity: var(--opacity-light);
  cursor: default;
  pointer-events: none;
}

.active-toolbar {
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--space);
}
.chip {
  display: inline-block;
  margin-bottom: calc(var(--space)/3);
  margin-right: calc(var(--space)/3);
  color: var(--col-light);
  background-color: var(--col-1);
  padding: calc(var(--text-size)/4) calc(var(--text-size)/2) calc(var(--text-size)/8) calc(var(--text-size)/2);
  transition: color 0.6s var(--ease), background-color 0.6s var(--ease);
  will-change: color, background-color;
}
.chip.contract {
  border-radius: var(--text-size);
  padding-left: calc(var(--text-size)/3*2);
  padding-right: calc(var(--text-size)/3*2);
}
.chip .chip-icon {
  margin-left: calc(var(--text-size)/4);
  width: calc(var(--text-size)*0.5);
}
.filter-reset {
  opacity: var(--opacity-light);
  margin-top: calc(var(--text-size)/4);
  transition: opacity 0.6s var(--ease), color 0.6s var(--ease);
}

.pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--padding);
  margin-top: var(--space-L);
}
.pagination-pages {
  display: flex;
  gap: var(--padding);
}
.pagination-page {
  display: inline-flex;
  justify-content: center;
  opacity: var(--opacity-light);
}
.pagination-count {
  display: inline-block;
  width: 100%;
}

.pagination a {
  transition: opacity 0.6s var(--ease), color 0.6s var(--ease);
}
.pagination-page.is-active {
  opacity: 1;
}

.event-year {
  margin-top: var(--space-L);
  margin-bottom: var(--space);
}

.card {
  padding: calc(var(--space-L)*2) var(--padding) var(--space) var(--padding);
  background-color: #AD8158;
  margin-bottom: calc(var(--space)*2);
}
.card.item-job {
  background-color: #DBD1B4;
}
.card + .section.title {
  padding-top: 0;
}
.card .image {
  display: block;
  margin-top: calc(var(--space)*2);
  margin-bottom: var(--space);
}
.card .links {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--padding);
  margin-top: var(--space);
}
.card .links.has-rsvp {
  margin-top: calc(var(--text-size)/2 * -1);
}

/* ----------------------------------------------------- */
/* !$ Knowledge Page */
/* ----------------------------------------------------- */

.section.content aside {
  margin-bottom: var(--space-L);
}


/* ------------------------------------------------------------------- */
/* !$ Homepage */
/* ------------------------------------------------------------------- */

.tagline {
  text-wrap: balance;
  margin-left: 0;
}
.tagline[data-card="false"] {
  padding-top: calc(var(--space-L)*2);
  margin-bottom: calc(var(--space)*2);
}
.tagline[data-card="true"] {
  margin-bottom: var(--space-L);
}

.greeting {
  opacity: var(--opacity-light);
}


/* ------------------------------------------------------------------- */
/* !$ Team */
/* ------------------------------------------------------------------- */

.view-switch, .view-filters {
  display: flex;
  align-items: start;
  gap: calc(var(--space)/3*2);
}
.view-switch {
  justify-content: end;
}
.view-switch button {
  display: inline-flex;
  align-items: baseline;
  white-space: nowrap;
}
.view-switch .icon {
  width: calc(var(--text-size)*1.05);
  transform: translateY(5%);
}
.view-switch button span {
  display: inline-block;
  max-width: 0;
  overflow: hidden;
  opacity: 0;
  white-space: nowrap;
  transition:
    max-width 0.25s ease,
    opacity 0.12s ease,
    margin-left 0.25s ease;
}

.view-filters {
  margin: calc(var(--space)/3) 0 calc(var(--space)/3*2) 0;
}

.team .image {
  display: flex;
  align-items: center;
  justify-content: center;
}
.item-team .image::after {
  content: '';
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(85, 40, 35, var(--opacity-light));
  opacity: 0;
  transition: opacity 0.6s var(--ease);
}

.team .title-wrapper {
  margin-bottom: calc(var(--space)/3);
  padding: 0 var(--padding);
}
.template-home .team .title-wrapper,
.template-jobs .team .title-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(var(--padding)/2);
  align-items: start;
}

.team[data-view="grid"] picture {
  padding-bottom: calc(var(--ratio-L) * 100%);
}
.team[data-view="grid"] .team-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(var(--padding)/4);
}
.team[data-view="grid"] .image {
  display: block;
}
.team[data-view="grid"] .image::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
  z-index: 2;
}
.team[data-view="grid"] .info {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: var(--padding);
  z-index: 3;
  color: var(--col-light);
  pointer-events: none;
}
.info-title {
  text-wrap: balance;
}
.team[data-view="grid"] .info .expertise,
.team[data-view="grid"] .info .role {
  margin-top: calc(var(--space)/3);
  opacity: 0.8;
}
.team[data-view="grid"] .swiper-wrapper {
  transition-timing-function: var(--ease);
}
.team[data-view="grid"] .swiper-pagination,
.team[data-view="grid"] .swiper-prev,
.team[data-view="grid"] .swiper-next {
  display: none;
}

.team[data-view="slider"] .team-container {
  overflow: hidden;
}
.team[data-view="slider"] picture {
  padding-bottom: calc(var(--ratio-L) * 100%);
}
.team[data-view="slider"] .info {
  margin-top: calc(var(--space)/2);
  padding: 0 var(--padding);
}
.team[data-view="slider"] .info .expertise,
.team[data-view="slider"] .info .role {
  margin-top: calc(var(--space)*0.2/var(--line-height));
}

.team[data-view="slider"] .info {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.2s var(--ease), transform 0.2s var(--ease);
  will-change: opacity, transform;
}
.team[data-view="slider"].is-swiping .info {
  opacity: 0;
  transform: translateY(calc(var(--space)/3 * -1));
  pointer-events: none;
}

.team .swiper-pagination {
  left: inherit;
  right: var(--padding);
  top: calc((100vw - var(--button-width)) * var(--ratio-L) + var(--space)/2 + var(--space)*0.2/var(--line-height));
  bottom: inherit;
  width: auto;
  text-align: right;
}
.team .swiper-prev,
.team .swiper-next {
  position: absolute;
  top: 0;
  z-index: 2;
  width: calc(var(--icon-size) + var(--padding)*2);
  height: calc((100vw - var(--button-width)) * var(--ratio-L));
  padding: var(--padding);
  opacity: 0;
  color: var(--col-light);
  transition: opacity 0.6s var(--ease);
}
.team .swiper-prev {
  left: 0;
}
.team .swiper-next {
  right: 0;
}

.item-team.is-hidden {
  display: none;
}
.team-all {
  display: flex;
  flex-direction: column;
  justify-content: end;
  padding: calc(var(--padding)*0.9) var(--padding);
  order: 999;
}
.team-all h4 {
  opacity: var(--opacity-light);
  margin-bottom: calc(var(--space)/4);
}



/* ------------------------------------------------------------------- */
/* !$ Person */
/* ------------------------------------------------------------------- */


.template-home .team .section-title,
.template-jobs .team .section-title {
  margin-bottom: 0;
}
.section-title.inner-wrapper {
  align-items: baseline;
  justify-content: start;
  gap: calc(var(--space)/3);
}

.template-about-item .intro .image,
.template-about-support .intro .image {
  position: relative;
}
.template-about-item .intro .image::before,
.template-about-support .intro .image::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 25%;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 220, 0.2),
    rgba(255, 255, 220, 0)
  );
  z-index: 2;
}

.section.related.books .section-title,
.section.related.books .item-book .title {
  padding: 0 var(--padding);
}
.section.related .item-book .cover {
  display: block;
  margin-bottom: calc(var(--space)/3*2);
}
.section.related .item-book .title,
.section.related .item-publication .title {
  font-size: var(--text-size);
  text-wrap: pretty;
}
.section.related .item-book .title time,
.section.related .item-publication .title time {
  font-size: var(--text-size);
  font-weight: normal;
  letter-spacing: inherit;
  display: inline-block;
  width: calc(var(--text-size)*3);
  vertical-align: top;
}
.section.related .item-book .title span,
.section.related .item-publication .title span {
  display: inline-block;
  width: calc(100% - var(--text-size)*3);
  vertical-align: top;
}

.section.related.books .list,
.section.related.publications .list,
.section.related.publications .expand-itemContent {
  display: flex;
  flex-direction: column;
}
.section.related.books .list {
  gap: var(--space);
}
.section.related.publications .list,
.section.related.publications .expand-itemContent {
  gap: calc(var(--space)/3);
}


/* ------------------------------------------------------------------- */
/* !$ Expertise */
/* ------------------------------------------------------------------- */

.item-expertise {
  margin: var(--space) 0;
}
.item-expertise:first-child {
  margin-top: 0;
}
.item-expertise:last-child {
  margin-bottom: 0;
}
.excerpt {
  margin: calc(var(--space)/3) 0;
  text-wrap: balance;
}
.item-expertise .link {
  opacity: var(--opacity-light);
}

.list.expertise li {
  display: flex;
  margin-bottom: calc(var(--space)/6);
}
.list.expertise li:last-child {
  margin-bottom: 0;
}


/* ------------------------------------------------------------------- */
/* !$ Accordion */
/* ------------------------------------------------------------------- */


.accordion-item,
.expand-item {
  position: relative;
}

.accordion-item:first-child {
  border-top: 1px solid;
}
.accordion-item {
  border-bottom: 1px solid;
}

.accordion-itemTitle,
.expand-itemTitle {
  cursor: pointer;
  transition: opacity 0.6s var(--ease), color 0.6s var(--ease);
}
.accordion-itemTitle {
  position: relative;
  padding: calc(var(--space) / 3) 0;
}
.expand-itemTitle {
  display: inline-block;
  opacity: var(--opacity-light);
}

.accordion-itemTitle .title {
  padding-top: calc(var(--text-size) / 3);
}
.accordion-itemTitle .title,
.accordion-itemTitle .toggle-icon {
  position: relative;
  z-index: 1;
}

.accordion-itemContent,
.expand-itemContent {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: margin-top 0.6s var(--ease), margin-top 0.6s var(--ease);
}
.accordion-itemContent .block {
  padding-left: 0;
  padding-right: 0;
}

.accordion-item.is-active .accordion-itemContent {
  margin-top: calc(var(--text-size) * 1.25 / 2);
  margin-bottom: calc(var(--text-size) * 1.25 * 2);
}
.expand-item.is-active .expand-itemContent {
  margin-bottom: calc(var(--text-size) * 1.25);
}

.accordion-itemTitle.has-icon {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--padding);
  width: 100%;
}
.toggle-icon {
  width: var(--icon-size);
}
.knowledge-filter-toggle .toggle-icon {
  width: var(--text-size);
  margin-left: calc(var(--padding)/2);
}


/* ------------------------------------------------------------------- */
/* !$ Player */
/* ------------------------------------------------------------------- */

.media-container {
  overflow: hidden;
  position: relative;
  padding-bottom: 56.25%;
}
.media-container:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(0,0,0,0.1);
  opacity: 0.2;
}
.media-container media-controller {
  position: absolute;
}

media-controller {
  width: 100%;
  --media-background-color: transparent;
  --media-primary-color: var(--col-light);
  --media-control-background:transparent;
  --media-control-hover-background: transparent;
  --media-object-fit: contain;
  vertical-align: bottom;
}
mux-video {
  outline: none;
}

media-control-bar {
  --media-font-family: 'OVRLast';
  --media-font-weight: normal;
  --media-font-size: var(--text-size);
  --media-control-height: var(--space);
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
}
media-controller[aria-label="video player"] media-control-bar {
  position: absolute;
  left: 0;
  bottom: 0;
  align-items: center;
}
media-controller[aria-label="audio player"] media-control-bar {
  align-items: end;
}

media-control-bar .button-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}
media-controller[aria-label="video player"] media-control-bar .button-wrapper {
  padding: 0 var(--padding) var(--padding) var(--padding);
}

media-time-range {
  --media-range-padding: 0;
  --media-time-range-buffered-color: rgba(0,0,0,0.15);
  --media-range-track-background: rgba(0,0,0,0.15);
  --media-range-track-height: calc(var(--text-size)/4);
  --media-range-thumb-width: 0;
  --media-range-thumb-height: calc(var(--text-size)/4);
  --media-range-thumb-border-radius: 0;
  width: 100%;
  margin-bottom: var(--padding);
}

media-control-bar media-play-button {
  margin-right: calc(var(--padding)/2);
}
media-time-display,
media-duration-display {
  font-variant-numeric: tabular-nums;
}
media-mute-button {
  margin-left: calc(var(--padding)/2);
}


/* ------------------------------------------------------------------- */
/* !$ Timeline */
/* ------------------------------------------------------------------- */

.timeline-item {
  margin-bottom: calc(var(--space)*2);
}
.timeline-item .title {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  margin-bottom: 0;
  z-index: 1;
  padding-top: var(--padding);
  padding-bottom: calc(var(--space)/2);
  transition: background 0.6s var(--ease);
  will-change: background;
}
.timeline-item .title.is-sticky {
  background-color: var(--col-light);
  transition-duration: 0.2s;
}

.timeline-item .block:nth-child(2) {
  margin-top: calc(var(--space)/2);
}


/* ------------------------------------------------------------------- */
/* !$ Contact */
/* ------------------------------------------------------------------- */

.template-contact .page-header,
.template-contact .page-main,
.template-contact .page-footer {
  --col-3: var(--col-2);
}

.intro .text {
  text-wrap: pretty;
}

.contact,
.address {
  margin-bottom: var(--space-S);
}
.section.contact {
  margin-bottom: var(--space-L);
}
.intro .contact {
  margin-bottom: 0;
}
.intro .nav-social {
  margin-top: var(--space);
}

.template-contact .text a {
  text-decoration: none;
}
.template-contact .text ul li,
.template-contact .text ol li {
  padding-left: 0;
}
.template-contact .text ul li::before,
.template-contact .text ol li::before {
  content: '';
}


/* ------------------------------------------------------------------- */
/* !$ Footer */
/* ------------------------------------------------------------------- */

.page-footer {
  padding: var(--padding);
  display: grid;
  gap: var(--padding);
  margin-top: calc(var(--space-L)*2 - var(--padding));
}

.nav-admin {
  position: fixed;
  bottom: calc(var(--padding)*2);
  left: 50%;
  z-index: 999;
  transform: translateX(-50%);
  display: flex;
  gap: var(--padding);
}
.nav-admin a {
  display: inline-block;
  background-color: #FAED73;
  padding: calc(var(--padding)/2) var(--padding) calc(var(--padding)/3) var(--padding);
  transition: color 0.6s var(--ease), background 0.6s var(--ease);
}

/* ------------------------------------------------------------------- */
/* !$ Error */
/* ------------------------------------------------------------------- */

.template-error {
}




/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* !$ ~~~~~~~~~~ Media Queries */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

@media screen and (max-device-width: 736px){

body{
  -webkit-text-size-adjust: none;
}

}


/* ------------------------------------------------------------------- */
/* !$ screen > 440px */
/* ------------------------------------------------------------------- */

@media all and (min-width: 440px) {

:root {
}

.text-XL, h1 {
  font-size: calc(var(--text-size)*2.4);
}
.text-L {
  font-size: calc(var(--text-size)*1.8);
}
.text-M, h2 {
  font-size: calc(var(--text-size)*1.2);
}

blockquote {
  padding-left: var(--space-L);
}

.team[data-view="grid"] picture {
  padding-bottom: calc(var(--ratio-P) * 100%);
}
.team[data-view="grid"] .team-wrapper {
  grid-template-columns: repeat(2, 1fr);
}
.team[data-view="slider"] .info {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(var(--padding)/2);
  align-items: start;
}

.articles .grid,
.events .grid {
  grid-template-columns: repeat(2, 1fr);
}



}


/* ------------------------------------------------------------------- */
/* !$ screen > 640px */
/* ------------------------------------------------------------------- */

@media all and (min-width: 640px) {

.section.intro .portrait {
  width: calc(100% / 6*4);
  margin-left: auto;
  margin-right: 0;
}

blockquote {
  padding-left: calc(25% + var(--padding)/2);
}


}


/* ------------------------------------------------------------------- */
/* !$ screen > 720px */
/* ------------------------------------------------------------------- */

@media all and (min-width: 720px) {


.page-header {
  position: fixed;
  height: var(--header-height, auto);
  transform: translate3d(0, var(--header-y, 0px), 0);
  transition: transform 0.6s var(--ease);
  will-change: transform;
}
.page-header.is-scrubbing {
  transition: none;
}
.page-header::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: var(--header-bg-height, 100%);
  background-color: transparent;
  transform-origin: top;
  z-index: -1;
  pointer-events: none;
  transition:
    height 0.3s var(--ease),
    background-color 0.4s var(--ease);
}
.page-header.has-background::before {
  background-color: var(--col-light);
}
.page-header.is-hidden {
  pointer-events: none;
}

.template-home .page-header .link-home {
  transform: scale(var(--home-logo-scale, 1));
  transform-origin: left top;
  will-change: transform;
}


.page-header .nav {
  width: 50%;
}
.page-header .nav-home {
  padding-right: calc(var(--padding)/2);
}
.page-header .nav-primary {
  display: block;
}
.page-header .nav-primary ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--padding);
}

.wrapper {
  flex-direction: row;
  justify-content: space-between;
  align-items: start;
}
.page-footer {
  margin-top: calc(var(--space-L)*3 - var(--padding));
}
.page-footer .nav-secondary {
  display: block;
}
.page-footer .nav-secondary ul {
  flex-direction: row;
  gap: var(--padding);
}

#btn-menu {
  display: none;
}
#menu {
  display: none;
}
#btn-knowledge {
  height: 100%;
}
#knowledge {
  width: calc(50% + var(--padding)*2);
}
.article-first {
  display: block;
}


.block.tagline {
  width: calc(100%/6*4);
}
.block.hello {
  display: inline-block;
  width: calc(100%/6*2);
  vertical-align: top;
}

.section {
  width: calc(100%/6*5);
}
.section.intro,
.section.content,
.section.article,
.template-knowledge .section.title,
.template-knowledge-item .section.title,
.section.knowledge-index {
  width: 100%;
}

.section.right,
.section.intro .text {
  margin-left: auto;
  margin-right: 0;
}

.section.intro .image,
.section.intro .text,
.section.intro .wrapper {
  width: calc(100%/6*4);
}
.template-contact .section.intro .text {
  width: calc(100%/6*5);
}
.template-about-item .section.intro,
.template-about-support .section.intro {
  display: flex;
  align-items: end;
  flex-direction: row-reverse;
}
.template-about-item .section.intro .block.image,
.template-about-support .section.intro .block.image,
.template-about-item .section.intro .block.text,
.template-about-support .section.intro .block.text {
  width: 50%;
  margin-bottom: 0;
}
.template-about-item .section.intro .block.image,
.template-about-support .section.intro .block.image {
  padding-bottom: calc(var(--space)*0.3);
}

.section.related.articles {
  width: 100%;
  padding: 0 var(--padding);
}
.section.content .general {
  width: 100%;
}
.section.right .block,
.section.intro .text {
  padding-left: calc(var(--padding)/2);
}
.section.right .block.image {
  padding-left: 0;
}

.template-home .team {
  display: inline-block;
  width: calc(100%/6*4);
  vertical-align: top;
  margin-top: calc(var(--space)*0.8/var(--line-height));
}
.template-jobs .team {
  width: calc(100%/6*4);
  margin-left: auto;
  margin-right: 0;
}
body:not(.template-home):not(.template-jobs) .team {
  width: 100%;
}
body:not(.template-home):not(.template-jobs) .team .title-wrapper,
body:not(.template-home):not(.template-jobs) .team .team-container {
  display: inline-block;
  vertical-align: top;
}
.team .title-wrapper {
  padding: 0 calc(var(--padding)/2);
}
body:not(.template-home):not(.template-jobs) .team .title-wrapper {
  width: calc(100%/6*2);
  position: -webkit-sticky;
  position: sticky;
  top: var(--padding);
  margin-bottom: calc(var(--padding)/2);
  padding: 0 var(--padding);
}
body:not(.template-home):not(.template-jobs) .team .section-title {
  margin-bottom: 0;
}
body:not(.template-home):not(.template-jobs) .team .team-container {
  width: calc(100%/6*4);
}
.view-filters {
  flex-direction: column;
  align-items: start;
  gap: calc(var(--space) / 3);
  margin-bottom: 0;
}

.team[data-view="grid"] .info {
  padding: calc(var(--padding)/2);
}
.team[data-view="slider"] .info {
  padding: 0 calc(var(--padding)/2);
}

.team .swiper-pagination {
  top: calc((100vw - var(--button-width)) /6*4 * var(--ratio-L) + var(--space)/2 + var(--space)*0.2/var(--line-height));
  right: calc(var(--padding)/2);
}
.team .swiper-prev,
.team .swiper-next {
  padding: calc(var(--padding)/2);
  height: calc((100vw - var(--button-width)) /6*4 * var(--ratio-L));
}
.team-all {
  padding: calc(var(--padding)/2 * 0.9) calc(var(--padding)/2);
}


.template-knowledge .page-main .knowledge-wrapper,
.template-about-item .page-main .knowledge-wrapper {
  grid-template-columns: repeat(2, 1fr);
}

.knowledge-filter-toggle {
  display: none;
}

.filter-container {
  height: auto !important;
  overflow: visible;
  opacity: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0 calc(var(--padding)/2);
  margin-bottom: var(--space);
}

.filter-group {
  display: contents;
}

.filter-group:last-child {
  padding-bottom: 0;
}

.filter-title {
  order: 1;
  pointer-events: auto;
  cursor: pointer;
  margin-bottom: 0;
  opacity: var(--opacity-light);
  transition: opacity 0.6s var(--ease), color 0.6s var(--ease);
}
.filter-group.is-open .filter-title {
  opacity: 1;
}

.filter-list {
  order: 2;
  flex: 0 0 100%;

  width: 100%;
  min-width: 0;
  max-width: 100%;

  height: 0;
  margin: 0;
  opacity: 0;
  overflow: hidden;

  transition:
    opacity 0.3s var(--ease),
    margin-top 0.3s var(--ease);
}

.filter-group.is-open .filter-list {
  opacity: 1;
  margin-top: var(--space);
}


.pagination {
  flex-wrap: nowrap;
}
.pagination-count {
  width: calc(50% - var(--padding)/2);
}


.section.related.books .section-title,
.section.related.books .item-book .title,
.section.related.publications {
  padding-left: calc(var(--padding)/2);
}

.section.content .cover {
  width: calc(100% /6*4);
}

.card {
  width: calc(100% /6*4);
}




}



/* ------------------------------------------------------------------- */
/* !$ screen > 1000px */
/* ------------------------------------------------------------------- */

@media all and (min-width: 1000px) {

#knowledge {
  width: calc(100%/6*2 + var(--padding)*2.5);
}

.block.tagline {
  width: 50%;
}
.block.tagline[data-card="true"] {
  display: inline-block;
  vertical-align: top;
  padding-top: calc(var(--space-L)*2);
  padding-left: calc(var(--padding)/2);
}

.section {
  width: calc(100%/6*4);
}

.section.intro {
  display: flex;
  align-items: end;
}
.section.intro .block.image,
.section.intro .block.text {
  width: 50%;
  margin-bottom: 0;
}
.section.intro .block.image {
  padding-bottom: calc(var(--space)*0.3);
}
.template-about-item .section.intro .block.image,
.template-about-support .section.intro .block.image {
  width: calc(100%/6*2);
}
.template-about-item .section.intro .block.text,
.template-about-support .section.intro .block.text {
  width: calc(100%/6*4);
}

.template-contact .general {
  width: 50%;
}
.template-contact .general .block {
  padding-left: calc(var(--padding)/2);
}

.section.content aside,
.section.content main {
  display: inline-block;
  vertical-align: top;
}
.section.content aside {
  width: calc(100%/6*2);
  padding-right: calc(var(--padding)/2);
  margin-bottom: 0;
  position: -webkit-sticky;
  position: sticky;
  top: var(--padding);
  padding-bottom: calc(var(--space)*0.3);
}
.section.content .cover {
  width: 100%;
}
.section.content main {
  width: calc(100%/6*4);
}
.section.content main .block {
  padding-left: calc(var(--padding)/2);
}
.section.content main .block.image,
.section.content main .block.video {
  padding-left: 0;
}
.section.content main .block.image figcaption {
  padding-left: calc(var(--padding)/2);
}

.team[data-view="grid"] .team-wrapper {
  grid-template-columns: repeat(3, 1fr);
}


.page-footer {
  grid-template-columns: repeat(3, 1fr);
}
.page-footer .outer-wrapper:first-child {
  grid-column: 1 / -1;
  grid-row: 1;
}
.page-footer .nav-home {
  grid-column: 1 / -1;
  grid-row: 2;
}
.page-footer .wrapper:last-child {
  grid-column: 1 / -1;
  grid-row: 3;
}


.knowledge-toolbar {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  margin-top: 0;
  padding-right: calc(var(--padding)/2);
}
.filter-container {
  width: 50%;
  display: inline-flex;
  vertical-align: top;
  padding-left: calc(var(--padding)/2);
}

.card,
.card + .section.title {
  width: 50%;
  display: inline-block;
  vertical-align: bottom;
}
.card + .section.title {
  margin-bottom: calc(var(--space)*0.6/var(--line-height) + var(--space));
}
.card + .section.title .block {
  padding-left: calc(var(--padding)/2);
}


media-controller[aria-label="video player"] media-control-bar .button-wrapper {
  padding: 0 calc(var(--padding)/2) calc(var(--padding)/2) calc(var(--padding)/2);
}
media-time-range {
  margin-bottom: calc(var(--padding)/2);
}

}


/* ------------------------------------------------------------------- */
/* !$ screen > 1200px */
/* ------------------------------------------------------------------- */

@media all and (min-width: 1200px) {


.template-home .team .title-wrapper,
.template-jobs .team .title-wrapper,
.team[data-view="slider"] .info {
  grid-template-columns: repeat(4, 1fr);
}
.template-home .view-switch {
  grid-column: 4 / -1;
}

.card {
  width: calc(100% /6*2);
}
.card + .section.title {
  margin-left: calc(100% /6);
}

.template-home .card {
  margin-right: 0;
  margin-bottom: 0;
  vertical-align: top;
}
.block.hello[data-card="true"] {
  display: none;
}
.template-home [data-card="true"] + .team {
  margin-top: calc(var(--space)*3.8 * -1);
}
.template-home [data-card="true"] + .team,
.template-jobs .team {
  display: block;
}



}


/* ------------------------------------------------------------------- */
/* !$ screen > 1600px */
/* ------------------------------------------------------------------- */

@media all and (min-width: 1600px) {

.page-footer {
  grid-template-columns: repeat(6, 1fr);
}
.page-footer .outer-wrapper {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: var(--padding);
}
.page-footer .outer-wrapper .inner-wrapper {
  grid-column: 3 / -1;
  width: 100%;
}
.template-contact .outer-wrapper .inner-wrapper {
  grid-column: 1 / -1;
}
.page-footer .address,
.page-footer .contact {
  margin-bottom: 0;
}


}




/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* !$ ~~~~~~~~~~ Hover */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

@media (hover: none) and (pointer: coarse) {

  .team .swiper-prev,
  .team .swiper-next {
    display: none;
  }

}

@media (hover: hover) {


  #btn-menu:hover {
    background-color: #320904;
  }
  #btn-knowledge:hover,
  #btn-knowledge.is-active:hover {
    background-color: #00237B;
  }

  .nav a:hover,
  .address a:hover,
  .contact a:hover,
  button[aria-pressed="false"]:hover,
  .item-expertise a:hover,
  .item-job a:hover {
    color: var(--col-3);
    opacity: 1;
    transition-duration: 0.2s;
  }
  .link-home:hover .logo,
  #menu .link-home:hover .logo {
    fill: var(--col-3);
    transition-duration: 0.2s;
  }
  .nav-admin a:hover {
    color: #000;
    background-color: var(--col-3);
  }

  .link:hover {
    color: var(--col-3);
    transition-duration: 0.2s;
  }
  .link.inline-icon:hover {
    color: var(--col-3);
  }
  .link:hover::before {
    transition-duration: 0.2s;
  }
  .link.reveal-icon:hover::before,
  .team .image:hover + .info .link.reveal-icon::before {
    opacity: 1;
  }
  .link:hover span {
    transition-duration: 0.2s;
  }
  .link.reveal-icon:hover span,
  .team .image:hover + .info .link.reveal-icon span {
    transform: translateX(0);
  }
  .link.inline-icon:hover span {
    transform: translateX(calc(var(--text-size) * 0.2));
  }
  .link.reveal-icon.back:hover {
    opacity: 1;
  }
  .card .link.inline-icon:hover {
    color: var(--col-1);
  }
  .card.item-job .link.inline-icon:hover {
    color: var(--col-3);
  }

  .tag-item .tag-link:hover {
    color: var(--col-light);
    background-color: var(--col-1);
    transition-duration: 0.2s;
  }
  #knowledge .tag-item .tag-link:hover {
    color: var(--col-light);
    background-color: var(--col-3);
  }

  .view-switch button:hover svg {
    fill: var(--col-3);
  }

  .team .swiper-prev:hover,
  .team .swiper-next:hover {
    opacity: 1;
    transition-duration: 0.2s;
  }

  .item-article a:hover,
  .item-book a:hover,
  .item-publication a:hover,
  .item-event a:hover,
  .details a:hover {
    color: var(--col-1);
    opacity: 1;
    transition-duration: 0.2s;
  }
  #knowledge .item-article .title a:hover,
  .details a:hover {
    color: var(--col-3);
  }

  .item-team .image:hover::after,
  .item-article .image:hover::after,
  .item-book .image:hover::after,
  .item-event .image:hover::after,
  .item-job .image:hover::after  {
    opacity: 1;
    transition-duration: 0.2s;
  }

  .accordion-itemTitle:hover,
  .expand-item .expand-itemTitle:hover {
    color: var(--col-3);
    opacity: 1;
    transition-duration: 0.2s;
  }

  .knowledge-filter-toggle:hover,
  .filter-title:hover,
  .filter-reset:hover,
  .pagination a:hover {
    opacity: 1;
    color: var(--col-3);
    transition-duration: 0.2s;
  }

  .filter-item:hover {
    opacity: 1;
    color: var(--col-1);
    transition-duration: 0.2s;
  }
  .chip:hover {
    color: #000;
    background-color: var(--col-light);
    transition-duration: 0.2s;
  }


  @media all and (min-width: 720px) {
    .view-switch button:hover span {
      opacity: 1;
      color: var(--col-3);
      max-width: 200px;
      margin-left: calc(var(--space)/3);
    }
    .view-switch {
      justify-content: start;
    }
  }

}
