@charset "UTF-8";
@font-face {
  font-family: "Instrument Sans";
  font-stretch: 100%;
  font-style: normal;
  font-weight: 900, 100;
  src: url("/static/pes/fonts/InstrumentSans-VariableFont_wdth,wght.ttf");
}
* {
  margin: 0;
  padding: 0;
  color: #010101;
  font-size: 20px;
  font-family: "Instrument Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1;
  text-rendering: optimizeLegibility;
  appearance: none;
  border: 0;
  outline: none;
  box-sizing: border-box;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  overflow: hidden;
  transition: opacity 0.25s, background-color 0.25s, color 0.25s, transform 0.25s;
}

html {
  background: #F7F6EA;
  overflow-y: auto;
}

html, body {
  overflow-x: hidden;
}
html:has(.toggle:checked), body:has(.toggle:checked) {
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  display: block;
  width: 100%;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  line-height: 1.1;
  margin-bottom: 1rem;
  text-wrap: balance;
}

p {
  font-size: 1rem;
  line-height: 1.4;
  margin-bottom: 0.75rem;
}
p * {
  color: inherit;
  font-size: inherit;
}
p strong {
  font-weight: 700;
  color: inherit;
  font-size: inherit;
}

span {
  overflow: visible;
}

img {
  width: 100%;
}

header {
  width: 100%;
}

section, article, footer {
  width: 100%;
}
section:not(.show), article:not(.show), footer:not(.show) {
  opacity: 0;
  transform: translateY(10px);
}
section.show, article.show, footer.show {
  opacity: 1;
  transform: translateY(0px);
}

input.toggle {
  display: none;
  width: 0;
  height: 0;
}

.sticky-title-section {
  width: 100%;
  min-height: 100dvh;
  position: relative;
  background-size: 5.5rem auto;
  background-position: -1.5rem 5rem;
  background-repeat: no-repeat;
  background-attachment: fixed;
}
.sticky-title-section > h2 {
  display: none;
  font-size: 0;
}
.sticky-title-section .sticky-title-section-body {
  width: 100%;
  padding: 5rem 3.25rem 1.6rem 7.25rem;
}
@media (max-width: 600px) {
  .sticky-title-section {
    background-size: auto 0.8rem;
    background-position: 1rem 5rem;
  }
  .sticky-title-section .sticky-title-section-body {
    padding: 7rem 1rem 1.6rem 1rem;
  }
}

header {
  width: 100%;
  height: auto;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  z-index: 100;
  overflow: visible;
}
header:before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 3.6rem;
  background-image: linear-gradient(to bottom, #F7F6EA, transparent);
  pointer-events: none;
}
header > a {
  line-height: 0;
}
header > a img {
  width: auto;
  height: 1.3rem;
  position: relative;
  z-index: 100;
}
header nav {
  display: flex;
  gap: 1rem;
  width: auto;
  height: auto;
  position: relative;
}
header nav a {
  display: block;
  text-transform: uppercase;
  font-size: 0.6rem;
  font-weight: 600;
  color: #010101;
  text-decoration: none;
}
header nav a:hover {
  color: #239953;
}
header label {
  display: none;
  background-color: transparent;
  position: relative;
  z-index: 100;
  line-height: 0;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 2px;
}
header label svg {
  height: 1.5rem;
}
@media (max-width: 640px) {
  header nav {
    display: none;
    gap: 0;
    position: fixed;
    top: 70px;
    left: 0;
    right: 0;
    bottom: 0;
    height: calc(100dvh - 70px);
  }
  header nav a {
    border-top: 1px solid #DEDDD3;
    background-color: #F7F6EA;
    width: 100%;
    height: 100%;
    padding: 1rem;
  }
  header nav a:active {
    background-color: #239953;
    color: white;
  }
  header label {
    display: block;
  }
  header label svg {
    position: relative;
  }
  header label svg line:nth-child(1) {
    transform: translate(8.75px, 11.75px);
  }
  header label svg line:nth-child(2) {
    transform: translate(8.75px, 18.25px);
  }
  header:has(.toggle:checked) {
    background-color: #F7F6EA;
  }
  header .toggle:checked + nav {
    display: flex;
    flex-direction: column;
  }
  header .toggle:checked + nav + label svg line:nth-child(1) {
    transform: translate(12.0450487117px, 7.0450487117px) rotate(45deg);
  }
  header .toggle:checked + nav + label svg line:nth-child(2) {
    transform: translate(12.0450487117px, calc(7.0450487117px + 50%)) rotate(-45deg);
  }
}

@keyframes menuDrawUpEnter {
  from {
    transform: translateY(100dvh);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes menuFadeInRight {
  from {
    opacity: 0;
    transform: translateX(-0.5rem);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes menuFadeUpEnter {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes menuFadeEnter {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes menuDrawUpExit {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-100dvh);
  }
}
@keyframes menuFadeUpExit {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-5rem);
  }
}
@keyframes menuFadeExit {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
#cover-menu {
  width: 100%;
  height: 0;
  overflow: hidden;
  position: fixed;
  inset: 0;
  z-index: 1000;
  pointer-events: none;
}
#cover-menu nav {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: 1px;
  background-color: #DEDDD3;
}
#cover-menu nav a {
  min-width: 100%;
  width: 100%;
  height: 100%;
  background-color: #D8D6C0;
  position: relative;
  cursor: pointer;
  text-decoration: none;
}
#cover-menu nav a:before {
  display: block;
  content: "";
  background-color: #F7F6EA;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  animation-duration: 0.75s;
  animation-fill-mode: forwards;
  transition: background-color 0.25s;
}
#cover-menu nav a h1 {
  position: relative;
}
#cover-menu nav a h1 img {
  margin: 1rem 1rem;
  width: 4rem;
}
#cover-menu nav a h1 span {
  font-size: 0;
}
#cover-menu nav a > span {
  position: relative;
  display: block;
  text-transform: uppercase;
  font-size: 0.6rem;
  font-weight: 600;
  color: #010101;
  margin: 2rem 1rem;
  opacity: 0;
  animation-duration: 0.75s;
}
#cover-menu.set nav a:hover:before {
  background-color: #239953;
}
#cover-menu.set nav a:hover > span {
  color: white;
}
#cover-menu #cover-menu-content {
  pointer-events: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 1rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr auto 1fr;
  align-items: center;
  grid-row-gap: 1.5rem;
}
#cover-menu #cover-menu-content #cover-menu-content-title {
  display: grid;
  grid-template-columns: 1fr 1.0264317181fr 0.8942731278fr;
  grid-column-gap: 1rem;
}
#cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name {
  display: block;
  width: 100%;
  height: auto;
  grid-row: 2/3;
  animation-duration: 0.75s;
  opacity: 0;
}
#cover-menu #cover-menu-content #cover-menu-content-detail {
  display: grid;
  grid-template-columns: 1fr 1.0264317181fr 0.8942731278fr;
  grid-column-gap: 1rem;
  grid-template-rows: auto 1fr;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation-duration: 0.75s;
  animation-delay: 0.125s;
}
#cover-menu #cover-menu-content #cover-menu-content-detail svg {
  grid-column: 1/2;
  width: 99%;
  height: auto;
}
#cover-menu #cover-menu-content #cover-menu-content-detail p {
  grid-column: 2/4;
  grid-row: 2/3;
  max-width: 35rem;
  font-size: 1.25rem;
  font-weight: 500;
  color: rgba(51, 51, 51, 0.6);
}
#cover-menu #cover-menu-button {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  line-height: 0;
}
@media (max-width: 1000px) {
  #cover-menu #cover-menu-content {
    min-height: 100dvh;
    height: min-content;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3rem;
    padding: 6rem 1rem;
  }
  #cover-menu #cover-menu-content #cover-menu-content-spacer {
    display: none;
  }
  #cover-menu #cover-menu-content #cover-menu-content-title {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-child(1) {
    width: 54.43645084vw;
  }
  #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-child(2) {
    width: 55.8752997602vw;
    align-self: center;
  }
  #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-child(3) {
    width: 48.6810551559vw;
    align-self: flex-end;
  }
  #cover-menu #cover-menu-content #cover-menu-content-detail {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  #cover-menu #cover-menu-content #cover-menu-content-detail svg {
    width: 54.43645084vw;
  }
  #cover-menu #cover-menu-content #cover-menu-content-detail p {
    width: calc((100vw - 2rem - 55.8752997602vw) / 2 + 55.8752997602vw);
    max-width: none;
    align-self: flex-end;
  }
}
@media (max-width: 720px) {
  #cover-menu {
    z-index: 99;
  }
  #cover-menu nav {
    display: none;
  }
  #cover-menu #cover-menu-content #cover-menu-content-detail p {
    font-size: 1rem;
  }
}

html:has(#toggle-cover-menu:checked) {
  overflow-y: hidden;
}
html:has(#toggle-cover-menu:checked) #cover-menu {
  height: 100dvh;
}
html:has(#toggle-cover-menu:checked) #cover-menu:not(.outro) {
  pointer-events: initial;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:before {
  transform: translateY(100dvh);
  animation-name: menuDrawUpEnter;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a > span {
  animation-name: menuFadeInRight;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(1):before {
  animation-delay: 0;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(2):before {
  animation-delay: 0.125s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(2) span {
  animation-delay: 0.875s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(3):before {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(3) span {
  animation-delay: 1s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(4):before {
  animation-delay: 0.375s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(4) span {
  animation-delay: 1.125s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(5):before {
  animation-delay: 0.5s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(5) span {
  animation-delay: 1.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(6):before {
  animation-delay: 0.625s;
}
html:has(#toggle-cover-menu:checked) #cover-menu nav a:nth-child(6) span {
  animation-delay: 1.375s;
}
html:has(#toggle-cover-menu:checked) #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name {
  opacity: 0;
  transform: translateY(0.5rem);
  animation-name: menuFadeUpEnter;
}
html:has(#toggle-cover-menu:checked) #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-of-type(1) {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-of-type(2) {
  animation-delay: 0.5s;
}
html:has(#toggle-cover-menu:checked) #cover-menu #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-of-type(3) {
  animation-delay: 0.75s;
}
html:has(#toggle-cover-menu:checked) #cover-menu #cover-menu-content #cover-menu-content-detail {
  opacity: 0;
  animation-name: menuFadeEnter;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro {
  animation-name: menuFadeExit;
  animation-duration: 0.75s;
  animation-delay: 1.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:before {
  transform: translateY(0);
  animation-name: menuDrawUpExit;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a h1 {
  animation-name: menuFadeExit;
  animation-duration: 0.75s;
  animation-fill-mode: forwards;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a > span {
  animation-name: menuDrawUpExit;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(1):before {
  animation-delay: 0.125s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(2):before {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(2) span {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(3):before {
  animation-delay: 0.375s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(3) span {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(4):before {
  animation-delay: 0.5s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(4) span {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(5):before {
  animation-delay: 0.625s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(5) span {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(6):before {
  animation-delay: 0.75s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro nav a:nth-child(6) span {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name {
  opacity: 1;
  transform: translateY(0);
  animation-name: menuFadeUpExit;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-of-type(1) {
  animation-delay: 0s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-of-type(2) {
  animation-delay: 0.125s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro #cover-menu-content #cover-menu-content-title svg.cover-menu-content-name:nth-of-type(3) {
  animation-delay: 0.25s;
}
html:has(#toggle-cover-menu:checked) #cover-menu.outro #cover-menu-content #cover-menu-content-detail {
  opacity: 1;
  animation-name: menuFadeExit;
}

footer {
  width: 100%;
  min-height: 760px;
  height: auto;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  position: relative;
  overflow: hidden;
  padding: 1rem;
  border-top: 1px solid #DEDDD3;
  display: flex;
  flex-direction: column;
}
footer #footer-logo {
  width: 5rem;
}
footer #footer-menu {
  position: absolute;
  top: 1rem;
  right: 1rem;
  display: flex;
  gap: 3rem;
}
footer #footer-menu a {
  font-weight: 500;
  font-size: 0.8rem;
  color: #82817D;
}
footer p {
  font-size: 1.5rem;
  color: #82817D;
  font-weight: 500;
  max-width: 700px;
  margin-top: 1rem;
  opacity: 0.75;
  line-height: 1.3;
}
footer #footer-contact {
  align-self: flex-end;
  display: flex;
  flex-direction: column;
  padding-right: 1.6rem;
  margin: 3rem 0;
}
footer #footer-contact span {
  font-size: 0.8rem;
  font-weight: 500;
}
footer #footer-contact span:before {
  display: inline-block;
  content: "•";
  color: #239953;
  margin-right: 0.25rem;
}
footer #footer-contact p {
  font-size: 0.8rem;
  font-weight: 500;
  color: #82817D;
  line-height: 1.5;
  margin-top: 0.5rem;
  margin-bottom: 0;
  white-space: nowrap;
}
footer #footer-contact p + span {
  margin-top: 1.5rem;
}
footer #footer-bottom {
  margin-top: auto;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
footer #footer-bottom div {
  display: flex;
  gap: 1.5rem;
}
footer #footer-bottom span, footer #footer-bottom a {
  font-weight: 500;
  font-size: 0.8rem;
  color: #82817D;
}
footer #footer-bg {
  position: absolute;
  left: -4%;
  bottom: -4%;
  display: flex;
  flex-direction: column;
  opacity: 0.25;
  pointer-events: none;
  overflow: visible;
}
footer #footer-bg svg {
  width: 130%;
  height: auto;
  margin: 2% 0;
}
footer #footer-bg svg:nth-child(2) {
  margin-left: 27.5%;
}
@media (max-width: 940px) {
  footer #footer-contact {
    align-self: flex-start;
  }
}
@media (max-width: 570px) {
  footer > p {
    font-size: 1.2rem;
  }
  footer #footer-bottom {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }
  footer #footer-bottom div {
    gap: 1rem;
  }
}

#index-about {
  background-image: url("../images/index-about-headline.svg");
}
#index-about #index-about-body {
  display: flex;
  gap: 3.5rem;
  min-height: 100dvh;
}
#index-about #index-about-body #index-about-awards {
  flex-shrink: 0;
  width: 8.5rem;
  height: min-content;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 0.5rem;
  grid-row-gap: 0.5rem;
}
#index-about #index-about-body #index-about-awards img {
  width: 100%;
  height: auto;
}
#index-about #index-about-body #index-about-awards img:first-child {
  grid-column: 1/-1;
  mix-blend-mode: multiply;
  margin-bottom: 1rem;
}
#index-about #index-about-body #index-about-body-text {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
#index-about #index-about-body #index-about-body-text h3 {
  font-size: 3.2rem;
  font-weight: 800;
  line-height: 1;
  color: #999789;
  margin-bottom: 3.5rem;
  overflow: visible;
}
@media (max-width: 930px) {
  #index-about #index-about-body {
    flex-direction: column-reverse;
  }
  #index-about #index-about-body #index-about-awards {
    display: flex;
    width: auto;
  }
  #index-about #index-about-body #index-about-awards img {
    width: auto;
    height: 5rem;
  }
  #index-about #index-about-body #index-about-awards img:first-child {
    margin-bottom: 0;
  }
}
@media (max-width: 600px) {
  #index-about {
    background-image: url("../images/index-about-headline-landscape.svg");
  }
  #index-about #index-about-body #index-about-body-text h3 {
    font-size: 2.5rem !important;
  }
}

@keyframes slideEnter {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideExit {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
#index-staff-grid {
  margin-top: 3.4rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, 1fr);
  grid-gap: 1px;
}
#index-staff-grid > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
#index-staff-grid #index-staff-grid-container {
  width: 100%;
  height: min-content;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-gap: 1px;
}
#index-staff-grid #index-staff-grid-container .tile {
  aspect-ratio: 5/4;
  background-color: #edebdd;
  position: relative;
}
#index-staff-grid #index-staff-grid-container .tile img {
  object-position: center top;
  object-fit: cover;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: opacity 0.05s;
}
#index-staff-grid #index-staff-grid-container .tile div {
  width: 100%;
  height: 100%;
  background-color: #edebdd;
  animation-duration: 1s;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  position: absolute;
  inset: 0;
}
#index-staff-grid #index-staff-grid-container .tile.enter div {
  animation-name: slideEnter;
}
#index-staff-grid #index-staff-grid-container .tile.exit div {
  animation-name: slideExit;
}
@media (max-width: 720px) {
  #index-staff-grid {
    grid-template-columns: 1fr;
  }
  #index-staff-grid > img {
    display: none;
  }
}

@keyframes indexAreasSlideLeft {
  from {
    transform: translate(0);
  }
  to {
    transform: translate(-100vw);
  }
}
#index-areas {
  padding-top: 5rem;
  transition-duration: 0.5s;
  box-shadow: 0 -5px 20px -10px rgba(0, 0, 0, 0.1);
}
#index-areas h2 {
  font-size: 0.9rem;
  font-weight: 300;
  padding: 0 1.2rem;
  margin-bottom: 1.2rem;
}
#index-areas #index-areas-list {
  display: flex;
  flex-direction: column;
}
#index-areas #index-areas-list li {
  display: block;
  width: 100%;
  height: auto;
  border-bottom: 1px solid #DEDDD3;
  transition-duration: 0.5s;
}
#index-areas #index-areas-list li:first-child {
  border-top: 1px solid #DEDDD3;
}
#index-areas #index-areas-list li a {
  width: 100%;
  height: 7.5rem;
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
}
#index-areas #index-areas-list li a:before {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  content: "";
  background-color: #239953;
  opacity: 0;
  transition: opacity 0.25s;
}
#index-areas #index-areas-list li a div {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  pointer-events: none;
  z-index: 1;
  overflow: visible;
}
#index-areas #index-areas-list li a div span {
  font-size: 5rem;
  line-height: 7.5rem;
  color: #c7c5b3;
  font-weight: 650;
  overflow: visible;
  white-space: nowrap;
  letter-spacing: -2px;
  padding: 0 0 0 0.9rem;
  position: relative;
}
#index-areas #index-areas-list li a div span:not(:first-child) {
  opacity: 0;
}
#index-areas #index-areas-list li a > span {
  opacity: 0;
  color: white;
  position: relative;
  padding: 0 1rem;
  line-height: 1.4;
  font-weight: 500;
  z-index: 2;
  transition: opacity 0.25s;
}
#index-areas #index-areas-list li:hover a:before {
  opacity: 1;
}
#index-areas #index-areas-list li:hover a div {
  animation-name: indexAreasSlideLeft;
  animation-duration: 50s;
  animation-iteration-count: infinite;
  animation-fill-mode: both;
}
#index-areas #index-areas-list li:hover a div span {
  color: #047331 !important;
  opacity: 0.8;
}
#index-areas #index-areas-list li:hover a > span {
  opacity: 1;
  color: white !important;
  text-shadow: none !important;
}
#index-areas #index-areas-list li:nth-child(1) {
  transition-delay: calc(0.1s * 1);
}
#index-areas #index-areas-list li:nth-child(2) {
  transition-delay: calc(0.1s * 2);
}
#index-areas #index-areas-list li:nth-child(3) {
  transition-delay: calc(0.1s * 3);
}
#index-areas #index-areas-list li:nth-child(4) {
  transition-delay: calc(0.1s * 4);
}
#index-areas #index-areas-list li:nth-child(5) {
  transition-delay: calc(0.1s * 5);
}
#index-areas #index-areas-list li:nth-child(6) {
  transition-delay: calc(0.1s * 6);
}
#index-areas #index-areas-list li:nth-child(7) {
  transition-delay: calc(0.1s * 7);
}
#index-areas #index-areas-list li:nth-child(8) {
  transition-delay: calc(0.1s * 8);
}
#index-areas #index-areas-list li:nth-child(9) {
  transition-delay: calc(0.1s * 9);
}
#index-areas #index-areas-list li:nth-child(10) {
  transition-delay: calc(0.1s * 10);
}
#index-areas #index-areas-list li:nth-child(11) {
  transition-delay: calc(0.1s * 11);
}
#index-areas #index-areas-list li:nth-child(12) {
  transition-delay: calc(0.1s * 12);
}
@media (pointer: coarse) {
  #index-areas #index-areas-list li a div span {
    color: #dfddcf;
  }
  #index-areas #index-areas-list li a > span {
    color: #66655e;
    text-shadow: 0px 0px 4px #F7F6EA, 0px 0px 4px #F7F6EA, 0px 0px 4px #F7F6EA, 0px 0px 4px #F7F6EA;
    opacity: 1;
  }
}

@keyframes lawyersListFadeInDown {
  from {
    transform: translateY(-10px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes lawyersListFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes lawyersListFadeInRight {
  from {
    transform: translateX(-10px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
#lawyers-list {
  background-image: url("../images/lawyers-list-headline.svg");
}
#lawyers-list #lawyers-list-body {
  display: grid;
  grid-template-rows: 1fr;
  grid-gap: 5rem;
  position: relative;
}
#lawyers-list #lawyers-list-body ul {
  width: 100%;
  height: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 1rem;
  overflow-x: auto;
  position: relative;
  scroll-behavior: smooth;
}
#lawyers-list #lawyers-list-body ul li {
  display: contents;
}
#lawyers-list #lawyers-list-body ul li a {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  max-height: 100%;
  text-decoration: none;
}
#lawyers-list #lawyers-list-body ul li a:hover div:after {
  opacity: 1;
}
#lawyers-list #lawyers-list-body ul li a div {
  position: relative;
  width: 100%;
  height: 100%;
  aspect-ratio: 5/4;
  margin-bottom: 0.3rem;
  line-height: 0;
  background-color: #D8D6C0;
  animation-name: lawyersListFadeIn;
  animation-duration: 0.25s;
  opacity: 0;
}
#lawyers-list #lawyers-list-body ul li a div img {
  aspect-ratio: 5/4;
  width: 100%;
  height: auto;
  flex-shrink: 0;
  object-fit: cover;
  object-position: center top;
  background-color: #D8D6C0;
  opacity: 0;
  transition: opacity 0.25s;
  transition-delay: 1s;
}
#lawyers-list #lawyers-list-body ul li a div img.show {
  opacity: 1;
}
#lawyers-list #lawyers-list-body ul li a div:after {
  position: absolute;
  inset: 0;
  display: block;
  content: "";
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 0;
  transition: all 0.25s;
}
#lawyers-list #lawyers-list-body ul li a span {
  text-transform: uppercase;
  white-space: nowrap;
  animation-name: lawyersListFadeInDown;
  animation-duration: 0.25s;
  transform: translateY(-10px);
  opacity: 0;
}
#lawyers-list #lawyers-list-body ul li a span:first-of-type {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.5px;
  animation-delay: 0.25s;
}
#lawyers-list #lawyers-list-body ul li a span:last-of-type {
  font-size: 0.6rem;
  color: #82817D;
  text-transform: uppercase;
  animation-delay: 0.5s;
}
#lawyers-list #lawyers-list-body > a {
  width: min-content;
  height: 4rem;
  text-decoration: none;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  grid-row-gap: 0.25rem;
  grid-column-gap: 2rem;
}
#lawyers-list #lawyers-list-body > a span {
  animation-name: lawyersListFadeInRight;
  animation-duration: 0.25s;
  animation-delay: 0.5s;
  opacity: 0;
}
#lawyers-list #lawyers-list-body > a span:first-of-type {
  color: #239953;
  font-weight: 700;
  font-size: 0.9rem;
  grid-column: 1/2;
  grid-row: 1/2;
  align-self: flex-end;
}
#lawyers-list #lawyers-list-body > a span:last-of-type {
  font-size: 2rem;
  font-weight: 700;
  grid-column: 1/2;
  grid-row: 2/3;
  align-self: flex-start;
}
#lawyers-list #lawyers-list-body > a svg {
  grid-column: 2/3;
  grid-row: 1/-1;
  justify-self: flex-end;
  animation-name: lawyersListFadeInRight;
  animation-duration: 0.25s;
  animation-delay: 0.75s;
  opacity: 0;
}
@media (max-width: 1300px) {
  #lawyers-list #lawyers-list-body ul {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 780px) {
  #lawyers-list {
    background-image: url("../images/lawyers-list-headline-landscape.svg");
    background-size: auto 0.8rem;
    background-position: 1rem 5rem;
  }
  #lawyers-list .sticky-title-section-body {
    padding: 7rem 1rem 1.6rem 1rem;
  }
  #lawyers-list #lawyers-list-body ul {
    grid-template-columns: 1fr;
  }
  #lawyers-list #lawyers-list-body > a {
    width: 100%;
  }
}

#lawyer-item-header {
  width: 100%;
  height: 80dvh;
  max-height: 900px;
  padding: 3.6rem 1.6rem 0;
  background-color: #ECECEC;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
#lawyer-item-header:after {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  top: auto;
  width: 100%;
  height: 5rem;
  background-image: linear-gradient(to bottom, transparent, transparent, rgba(0, 0, 0, 0.25));
  z-index: 1;
}
#lawyer-item-header > img {
  width: auto;
  height: 100%;
  object-fit: cover;
  align-self: flex-end;
}
#lawyer-item-header #lawyer-item-header-info {
  display: flex;
  flex-direction: column;
  width: 30vw;
  min-width: min-content;
}
#lawyer-item-header #lawyer-item-header-info * {
  overflow: visible;
}
#lawyer-item-header #lawyer-item-header-info h2 {
  font-size: 2rem;
  font-weight: 300;
  margin: 0;
  padding: 0 1rem 0 0.4rem;
  line-height: 1.4;
  white-space: nowrap;
}
#lawyer-item-header #lawyer-item-header-info > span {
  font-size: 0.8rem;
  font-weight: 700;
  opacity: 0.5;
  text-transform: uppercase;
  text-indent: 1px;
  padding: 0 0.45rem;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-links {
  display: flex;
  gap: 1rem;
  margin: 1rem 0.5rem;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-links a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 1rem;
  text-decoration: none;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-links a img {
  height: 1rem;
  width: auto;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-links a span {
  font-size: 0.7rem;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-contact {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-contact a {
  font-size: 0.75rem;
  text-decoration: none;
  display: block;
  padding: 0.75rem 0.5rem;
  background-color: rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  text-decoration: none;
}
#lawyer-item-header #lawyer-item-header-info #lawyer-item-header-info-contact a img {
  margin-right: 0.5rem;
  width: 1rem;
  height: 1rem;
  object-fit: contain;
  object-position: center center;
}
@media (max-width: 940px) {
  #lawyer-item-header {
    flex-direction: column-reverse;
    height: auto;
    max-height: none;
    padding: 3.6rem 0 0;
  }
  #lawyer-item-header img {
    width: 100%;
    height: auto;
  }
  #lawyer-item-header #lawyer-item-header-info {
    width: 100%;
    padding: 1.6rem 1rem;
  }
}

#lawyer-item-body {
  width: 100%;
  max-width: calc(1000px + 3.2rem);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 3fr 1.5fr;
  grid-gap: 2rem;
  padding: 2.5rem 1.6rem;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-bio * {
  font-size: 0.9rem;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details {
  margin-top: 1rem;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
  border-bottom: 1px solid #DEDDD3;
  padding: 0.75rem 0;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail > div:first-child h3 {
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: 600;
  color: #239953;
  line-height: 1.4;
  margin-top: 3px;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail > div:last-child {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail > div:last-child div * {
  font-weight: normal;
  line-height: 1.4;
  margin: 0;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail > div:last-child div h4 {
  font-size: 0.9rem;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail > div:last-child div span {
  font-size: 0.8rem;
  font-style: italic;
  opacity: 0.5;
}
#lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail > div:last-child div span:not(:last-child):after {
  display: inline;
  content: ",";
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant {
  display: flex;
  flex-direction: column;
  margin-bottom: 1rem;
  border-bottom: 1px solid #DEDDD3;
  padding-bottom: 1rem;
  gap: 2px;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant:last-child {
  border-bottom: 0;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant span, #lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant a {
  display: flex;
  align-items: center;
  text-decoration: none;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant span img, #lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant a img {
  margin-right: 0.5rem;
  width: 1rem;
  height: 1rem;
  object-fit: contain;
  object-position: center center;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant span:nth-child(1), #lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant a:nth-child(1) {
  text-transform: uppercase;
  font-size: 0.6rem;
  font-weight: 600;
  opacity: 0.5;
  padding: 0 0.45rem;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant span:nth-child(2), #lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant a:nth-child(2) {
  padding: 0.25rem 0.45rem 0.75rem;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant span:nth-child(3), #lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant a:nth-child(3) {
  font-size: 0.75rem;
  text-decoration: none;
  padding: 0.75rem 0.5rem;
  background-color: rgba(0, 0, 0, 0.05);
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant span:nth-child(4), #lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-assistant a:nth-child(4) {
  font-size: 0.75rem;
  text-decoration: none;
  padding: 0.75rem 0.5rem;
  background-color: rgba(0, 0, 0, 0.05);
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-awards {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 0.5rem;
  margin-top: 1rem;
}
#lawyer-item-body #lawyer-item-body-aside #lawyer-item-body-aside-awards h3 {
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: 600;
  color: #239953;
  line-height: 1.4;
  margin: 0;
  grid-column: 1/-1;
}
@media (max-width: 860px) {
  #lawyer-item-body {
    display: flex;
    flex-direction: column-reverse;
    padding: 2.5rem 1rem;
  }
}
@media (max-width: 500px) {
  #lawyer-item-body #lawyer-item-body-main #lawyer-item-body-main-details .lawyer-item-body-main-detail {
    grid-template-columns: 1fr;
  }
}

@keyframes publicationListFadeInUp {
  from {
    transform: translateY(10px);
    opacity: 0;
  }
  to {
    transform: translateY(0px);
    opacity: 1;
  }
}
.posts-list {
  padding-bottom: 5rem;
}
.posts-list .posts-list-body {
  display: flex;
}
.posts-list .posts-list-body ul {
  width: 100%;
  container-name: publist;
  container-type: inline-size;
}
.posts-list .posts-list-body ul li {
  display: contents;
}
.posts-list .posts-list-body ul li a span.read-more {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  text-transform: uppercase;
  color: #239953;
  font-size: 0.5rem;
  font-weight: bold;
  cursor: pointer;
  transform: translateX(0.55rem);
}
.posts-list .posts-list-body ul li a span.read-more img {
  width: 0.55rem;
  height: 0.55rem;
  transform: translateX(-100%);
  opacity: 0;
}
.posts-list .posts-list-body ul li a:hover span.read-more {
  transform: translateX(0);
}
.posts-list .posts-list-body ul li a:hover span.read-more img {
  opacity: 1;
  transform: translateX(0);
}
.posts-list .posts-list-body ul li:nth-child(1) a {
  animation-delay: calc(0.1s * 1);
}
.posts-list .posts-list-body ul li:nth-child(2) a {
  animation-delay: calc(0.1s * 2);
}
.posts-list .posts-list-body ul li:nth-child(3) a {
  animation-delay: calc(0.1s * 3);
}
.posts-list .posts-list-body ul li:nth-child(4) a {
  animation-delay: calc(0.1s * 4);
}
.posts-list .posts-list-body ul li:nth-child(5) a {
  animation-delay: calc(0.1s * 5);
}
.posts-list .posts-list-body ul li:nth-child(6) a {
  animation-delay: calc(0.1s * 6);
}
.posts-list .posts-list-body ul li:nth-child(7) a {
  animation-delay: calc(0.1s * 7);
}
.posts-list .posts-list-body ul li:nth-child(8) a {
  animation-delay: calc(0.1s * 8);
}
.posts-list .posts-list-body ul li:nth-child(9) a {
  animation-delay: calc(0.1s * 9);
}
.posts-list .posts-list-body ul li:nth-child(10) a {
  animation-delay: calc(0.1s * 10);
}
.posts-list .posts-list-body ul li:nth-child(11) a {
  animation-delay: calc(0.1s * 11);
}
.posts-list .posts-list-body ul li:nth-child(12) a {
  animation-delay: calc(0.1s * 12);
}

#news-list {
  background-image: url("../images/news-list-headline.svg");
}
#news-list .posts-list-body ul li a {
  width: 100%;
  min-height: 5rem;
  padding: 1rem 0;
  height: auto;
  display: grid;
  grid-template-columns: 6rem 1fr auto;
  grid-gap: 1.6rem;
  align-items: center;
  border-bottom: 1px solid #DDDDDD;
  animation-name: publicationListFadeInUp;
  animation-duration: 0.25s;
  opacity: 0;
  text-decoration: none;
}
#news-list .posts-list-body ul li a span:first-of-type {
  font-size: 0.6rem;
  text-transform: uppercase;
  font-weight: bold;
  color: #82817D;
}
#news-list .posts-list-body ul li a span:nth-child(2) {
  font-size: 1.2rem;
  line-height: 1.2;
}
@container publist (width < 600px) {
  #news-list li a {
    display: flex !important;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start !important;
  }
  #news-list li a span.read-more {
    transform: translateX(0);
  }
  #news-list li a span.read-more img {
    opacity: 1;
    transform: translateX(0);
  }
}
@media (max-width: 600px) {
  #news-list {
    background-image: url("../images/news-list-headline-landscape.svg");
  }
}

#insights-list {
  background-image: url("../images/insights-list-headline.svg");
}
#insights-list .posts-list-body ul li a {
  width: 100%;
  min-height: 5rem;
  padding: 1.5rem 0;
  height: auto;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-gap: 0.75rem;
  align-items: center;
  border-bottom: 1px solid #DDDDDD;
  animation-name: publicationListFadeInUp;
  animation-duration: 0.25s;
  opacity: 0;
  text-decoration: none;
}
#insights-list .posts-list-body ul li a div:first-child {
  display: flex;
  grid-column: 1/-1;
  align-items: center;
  gap: 0.2rem;
}
#insights-list .posts-list-body ul li a div:first-child span {
  white-space: nowrap;
  font-size: 0.6rem;
  text-transform: uppercase;
  font-weight: bold;
  color: #82817D;
}
#insights-list .posts-list-body ul li a div:first-child span:first-child {
  font-size: 0.6rem;
  text-transform: uppercase;
  font-weight: bold;
  color: #82817D;
}
#insights-list .posts-list-body ul li a div:first-child span:last-child {
  font-size: 0.6rem;
  text-transform: uppercase;
  font-weight: bold;
  color: #82817D;
}
#insights-list .posts-list-body ul li a div:last-of-type {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
#insights-list .posts-list-body ul li a div:last-of-type span {
  font-size: 1.1rem;
  line-height: 1.2;
}
#insights-list .posts-list-body ul li a div:last-of-type p {
  font-size: 0.75rem;
  line-height: 1.4;
  opacity: 0.7;
}
#insights-list .posts-list-body ul li a div:last-of-type p:last-child {
  margin-bottom: 0;
}
@media (max-width: 600px) {
  #insights-list {
    background-image: url("../images/insights-list-headline-landscape.svg");
  }
}

#editor-container .ql-toolbar {
  overflow: visible;
}
#editor-container .ql-toolbar .ql-formats {
  overflow: visible;
}
#editor-container .ql-toolbar .ql-formats .ql-picker {
  overflow: visible;
}

.posts-item {
  padding-bottom: 5rem;
}
.posts-item .posts-item-body main {
  display: flex;
  flex-direction: column;
  max-width: 1000px;
  margin: 0 auto;
}
.posts-item .posts-item-body main .posts-item-body-detail {
  margin-bottom: 0.5rem;
}
.posts-item .posts-item-body main .posts-item-body-detail span {
  font-size: 0.6rem;
  text-transform: uppercase;
  font-weight: bold;
  color: #82817D;
}
.posts-item .posts-item-body main > h1 {
  font-size: 2.5rem;
  font-weight: 400;
  margin-left: -2px;
  margin-bottom: 3rem;
}
.posts-item .posts-item-body main .posts-item-body-description {
  font-size: 0.8rem;
  opacity: 0.7;
  line-height: 1.4;
  text-wrap: balance;
  margin-bottom: 3rem;
}
.posts-item .posts-item-body main #posts-item-body-content *:first-child {
  margin-top: 0;
}
.posts-item .posts-item-body main #posts-item-body-content h2, .posts-item .posts-item-body main #posts-item-body-content h3, .posts-item .posts-item-body main #posts-item-body-content h4, .posts-item .posts-item-body main #posts-item-body-content h5, .posts-item .posts-item-body main #posts-item-body-content h6 {
  margin-bottom: 0.5rem;
}
.posts-item .posts-item-body main #posts-item-body-content p {
  margin-bottom: 0.5rem;
  line-height: 1.4;
}
.posts-item .posts-item-body main #posts-item-body-content p + h2, .posts-item .posts-item-body main #posts-item-body-content p + h3, .posts-item .posts-item-body main #posts-item-body-content p + h4, .posts-item .posts-item-body main #posts-item-body-content p + h5 {
  margin-top: 1.5rem;
}
.posts-item .posts-item-body main #posts-item-body-content strong {
  font-weight: 600;
}
.posts-item .posts-item-body main #posts-item-body-content em {
  font-style: italic;
}
.posts-item .posts-item-body main #posts-item-body-content ul, .posts-item .posts-item-body main #posts-item-body-content ol {
  overflow: visible;
}
.posts-item .posts-item-body main #posts-item-body-content li {
  line-height: 1.4;
  overflow: visible;
}
.posts-item .posts-item-body main #posts-item-body-content li::before {
  display: inline-block;
  white-space: nowrap;
  width: 1.2em;
  margin-left: -1.5em;
  margin-right: 0.3em;
  text-align: right;
}
.posts-item .posts-item-body main #posts-item-body-content ul li {
  list-style-type: none;
  padding-left: 1.5rem;
}
.posts-item .posts-item-body main #posts-item-body-content ul li::before {
  content: "•";
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-1 {
  padding-left: 4.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-2 {
  padding-left: 7.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-3 {
  padding-left: 10.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-4 {
  padding-left: 13.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-5 {
  padding-left: 16.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-6 {
  padding-left: 19.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-7 {
  padding-left: 22.5em;
}
.posts-item .posts-item-body main #posts-item-body-content .ql-indent-8 {
  padding-left: 25.5em;
}

#news-item {
  background-image: url("../images/news-list-headline.svg");
}
@media (max-width: 600px) {
  #news-item {
    background-image: url("../images/news-list-headline-landscape.svg");
  }
}

#insights-item {
  background-image: url("../images/insights-list-headline.svg");
}
@media (max-width: 600px) {
  #insights-item {
    background-image: url("../images/insights-list-headline-landscape.svg");
  }
}

#editor-container .ql-toolbar {
  overflow: visible;
}
#editor-container .ql-toolbar .ql-formats {
  overflow: visible;
}
#editor-container .ql-toolbar .ql-formats .ql-picker {
  overflow: visible;
}

@keyframes careersListFadeInUp {
  from {
    transform: translateY(10%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
#careers {
  padding: 10rem 0 4rem;
}
#careers > h2 {
  display: none;
}
#careers h3 {
  margin: 0 auto;
  width: calc(100% - 16rem);
  font-weight: 700;
  font-size: 3rem;
  margin-bottom: 2.5rem;
  opacity: 0;
  animation-name: careersListFadeInUp;
  animation-duration: 0.5s;
  line-height: 1;
}
#careers #careers-text {
  margin: 0 auto;
  max-width: calc(100% - 16rem);
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  grid-column-gap: 1.5rem;
  margin-bottom: 4rem;
  overflow: hidden;
  opacity: 0;
  animation-name: careersListFadeInUp;
  animation-duration: 0.25s;
  animation-delay: 0.25s;
}
#careers #careers-text p {
  font-size: 0.8rem;
  color: #82817D;
  width: 380px;
}
#careers #careers-text p:nth-child(1) {
  grid-column: 1/2;
  grid-row: 1/2;
}
#careers #careers-text p:nth-child(2) {
  grid-column: 1/2;
  grid-row: 2/3;
}
#careers #careers-text p:nth-child(3) {
  grid-column: 2/3;
  grid-row: 1/3;
}
#careers #careers-bg {
  width: 100%;
  padding: 0 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}
#careers #careers-bg div {
  position: relative;
  display: flex;
  justify-content: center;
}
#careers #careers-bg div img {
  width: calc(100% - 5rem);
  opacity: 0;
  animation-name: careersListFadeInUp;
  animation-duration: 1s;
  animation-delay: 0.5s;
}
#careers #careers-bg div:after {
  position: absolute;
  display: block;
  content: "";
  inset: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to bottom, transparent 0%, #F7F6EA 75%, #F7F6EA 100%);
}
#careers #careers-bg > img {
  width: 100%;
  transform: translateY(-9%);
}
#careers #careers-list {
  margin: 0 auto;
  max-width: calc(100% - 16rem);
}
#careers #careers-list details {
  border-bottom: 1px solid #ddd;
}
#careers #careers-list details[open] summary:after {
  background: url("/static/pes/images/icon-minus.svg");
}
#careers #careers-list details summary {
  height: 4rem;
  list-style: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#careers #careers-list details summary ::-webkit-details-marker {
  display: none;
}
#careers #careers-list details summary:after {
  width: 1.6rem;
  height: 1.6rem;
  display: block;
  content: "";
  background: url("/static/pes/images/icon-plus.svg");
}
#careers #careers-list details summary span {
  font-size: 1.4rem;
  font-weight: 600;
}
#careers #careers-list details div {
  padding-bottom: 1rem;
}
#careers #careers-list details div *:first-child {
  margin-top: 0;
}
#careers #careers-list details div h2, #careers #careers-list details div h3, #careers #careers-list details div h4, #careers #careers-list details div h5, #careers #careers-list details div h6 {
  margin-bottom: 0.5rem;
}
#careers #careers-list details div p {
  margin-bottom: 0.5rem;
  line-height: 1.4;
}
#careers #careers-list details div p + h2, #careers #careers-list details div p + h3, #careers #careers-list details div p + h4, #careers #careers-list details div p + h5 {
  margin-top: 1.5rem;
}
#careers #careers-list details div strong {
  font-weight: 600;
}
#careers #careers-list details div em {
  font-style: italic;
}
#careers #careers-list details div ul, #careers #careers-list details div ol {
  overflow: visible;
}
#careers #careers-list details div li {
  line-height: 1.4;
  overflow: visible;
}
#careers #careers-list details div li::before {
  display: inline-block;
  white-space: nowrap;
  width: 1.2em;
  margin-left: -1.5em;
  margin-right: 0.3em;
  text-align: right;
}
#careers #careers-list details div ul li {
  list-style-type: none;
  padding-left: 1.5rem;
}
#careers #careers-list details div ul li::before {
  content: "•";
}
#careers #careers-list details div .ql-indent-1 {
  padding-left: 4.5em;
}
#careers #careers-list details div .ql-indent-2 {
  padding-left: 7.5em;
}
#careers #careers-list details div .ql-indent-3 {
  padding-left: 10.5em;
}
#careers #careers-list details div .ql-indent-4 {
  padding-left: 13.5em;
}
#careers #careers-list details div .ql-indent-5 {
  padding-left: 16.5em;
}
#careers #careers-list details div .ql-indent-6 {
  padding-left: 19.5em;
}
#careers #careers-list details div .ql-indent-7 {
  padding-left: 22.5em;
}
#careers #careers-list details div .ql-indent-8 {
  padding-left: 25.5em;
}
@media (max-width: 1070px) {
  #careers #careers-text {
    display: block;
  }
  #careers #careers-text p {
    width: 100%;
    text-wrap: initial;
  }
}
@media (max-width: 850px) {
  #careers h3 {
    width: 100%;
    font-size: 2.5rem;
    padding: 0 1rem 1rem;
    margin-bottom: 0;
  }
  #careers #careers-text {
    width: 100%;
    max-width: none;
    padding: 1rem;
  }
  #careers #careers-bg {
    padding: 0;
  }
  #careers #careers-bg div img {
    width: calc(100% - 3.2rem);
  }
  #careers #careers-list {
    max-width: calc(100% - 2rem);
  }
  #careers #careers-list details summary span {
    font-size: 1.1rem;
  }
}

@keyframes contactMapSlideInOut {
  0% {
    opacity: 0;
    transform: translateX(-100%);
  }
  40% {
    opacity: 1;
    transform: translateX(0);
  }
  60% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 1;
    transform: translateX(-100%);
  }
}
@keyframes contactMapFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
#contact {
  padding: 10rem 0 2.5rem;
}
#contact h2 {
  display: none;
}
#contact #contact-text {
  margin: 0 auto;
  width: 100%;
  max-width: calc(1140px + 5rem);
  padding: 0 2.5rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 4rem;
  overflow: hidden;
}
#contact #contact-text div {
  padding: 0 1.5rem;
  overflow: visible;
}
#contact #contact-text div:not(:last-child) {
  border-right: 1px solid rgba(0, 0, 0, 0.1);
}
#contact #contact-text img {
  width: 3rem;
  height: 3rem;
  margin-left: -0.1rem;
  margin-bottom: 1rem;
}
#contact #contact-text h3 {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #239953;
  white-space: nowrap;
}
#contact #contact-text p, #contact #contact-text span, #contact #contact-text a {
  font-size: 1rem;
  color: #82817D;
  text-decoration: none;
}
#contact #contact-map {
  width: calc(100% - 5rem);
  min-height: 50dvh;
  margin: 0 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
  position: relative;
}
#contact #contact-map img {
  width: 100%;
  opacity: 0;
  animation-name: contactMapFadeIn;
  animation-duration: 0;
  animation-delay: 0.5s;
}
#contact #contact-map:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background-color: #DEDDD3;
  opacity: 0;
  animation-name: contactMapSlideInOut;
  animation-duration: 1s;
}
@media (max-width: 1000px) {
  #contact {
    display: grid;
    grid-template-columns: auto 1fr;
    padding: 7.5rem 2rem 2rem;
    gap: 2rem;
  }
  #contact #contact-text {
    overflow: visible;
    padding: 0;
    width: min-content;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, auto);
    grid-gap: 0;
    margin-bottom: 2rem;
  }
  #contact #contact-text div {
    padding: 1.5rem 0.5rem 1.5rem 0;
  }
  #contact #contact-text div:not(:last-child) {
    border-right: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  #contact #contact-map {
    margin: 0;
    width: 100%;
  }
  #contact #contact-map img {
    height: 100%;
    object-fit: cover;
  }
}
@media (max-width: 800px) {
  #contact {
    grid-template-columns: 1fr;
    padding: 7.5rem 0 0;
  }
  #contact #contact-text {
    width: 100%;
    padding: 0 1rem;
    margin-bottom: 0;
  }
}

/*# sourceMappingURL=styles.css.map */
