.menu-is-open {
  overflow: hidden;
}

header {
  height: var(--header-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  top: var(--wp-admin--admin-bar--height);
  font-weight: 250;
  left: 0;
  right: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
  transition-delay: 0.2s;
  transform: translateY(0);
  opacity: 1;
  z-index: 1000;
}
header.is-hidden {
  transform: translateY(-150px);
  opacity: 0;
}
header .logo {
  position: relative;
  z-index: 100;
  width: 230px;
}
@media (max-width: 1199px) {
  header .logo {
    width: 200px;
  }
}
header .logo img {
  width: 100%;
  display: block;
}
header .menu-container ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (min-width: 1200px) {
  header .menu-container #language-switcher, header .menu-container .lang-input.mobile {
    display: none !important;
  }
}
@media (max-width: 1199px) {
  header .menu-container {
    flex-wrap: wrap;
    overflow: auto;
    max-height: 100vh;
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #373737;
    height: 100vh;
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
    padding: 66px 16px 24px;
  }
  header .menu-container .menu-item-has-children {
    margin-top: 32px;
  }
  header .menu-container .menu-item-has-children > a {
    color: #d0d0d0 !important;
  }
  header .menu-container .menu-item-has-children + .menu-item {
    margin-top: 32px;
  }
  header .menu-container .menu-item:not(.menu-item-has-children) {
    font-size: 24px;
  }
  header .menu-container .sub-menu a {
    font-size: 24px;
  }
  .menu-is-open header .menu-container {
    transform: translateY(0);
    opacity: 1;
  }
  header .menu-container a {
    color: #fff !important;
    margin-bottom: 8px;
    display: block;
    letter-spacing: normal !important;
  }
  header .menu-container .lang-input.mobile {
    display: flex !important;
  }
}
header .menu-container > div {
  font-size: 16px;
}
header .menu-container > div a {
  text-decoration: none;
  color: var(--wp--preset--color--gray);
  white-space: nowrap;
  letter-spacing: -0.16px;
}
.has-bg header .menu-container > div a {
  color: #fff;
}
header .menu-container > div a:hover {
  text-decoration: underline;
}
@media (min-width: 1200px) {
  header .menu-container > div > ul {
    display: flex;
    opacity: 1;
    border-radius: 16px;
    align-items: center;
    flex: none;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 32px;
    height: 42px;
    justify-content: flex-start;
    overflow: visible;
    padding: 8px 24px;
    position: relative;
    width: -moz-min-content;
    width: min-content;
  }
  header .menu-container > div > ul a {
    color: #fff;
  }
  header .menu-container > div > ul .sub-menu {
    position: absolute;
    top: calc(100% + 16px);
    left: -24px;
    background-color: #fff;
    border-radius: 8px;
    border: 1px solid #eeeeee;
    padding: 11px 16px;
    min-width: 170px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
  }
  header .menu-container > div > ul .sub-menu a {
    padding: 5px 0;
    display: block;
  }
  header .menu-container > div > ul > li {
    position: relative;
  }
  header .menu-container > div > ul > li > a:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 16px;
    transform: translateY(100%);
  }
  header .menu-container > div > ul > li:hover .sub-menu {
    opacity: 1;
    pointer-events: all;
  }
}

.lang-input {
  font-family: "Aria Display 350", "Aria Display 350 Placeholder", sans-serif;
  font-size: 14px;
  letter-spacing: 0em;
  line-height: 1.5em;
  --framer-color:#fff;
  padding: 8px 4px;
  border: none;
  --framer-focus-outline:1px solid rgb(0, 153, 255);
  --framer-focus-outline-offset:0px;
  gap: 5px;
  color: #fff;
  display: flex;
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 16px;
  opacity: 1;
  padding-left: 30px;
  padding-right: 30px;
  pointer-events: none;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 60px;
  position: relative;
  top: 2px;
}
@media (max-width: 1199px) {
  .lang-input {
    display: none;
  }
}
.lang-input .title {
  position: relative;
  top: 1px;
}

.tools {
  position: relative;
}
.tools select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  opacity: 0;
  inset: 0px;
  cursor: inherit;
  width: 100%;
}
@media (max-width: 1199px) {
  .tools select {
    display: none;
  }
}

@media (min-width: 1200px) {
  .menu-toggler {
    display: none !important;
  }
}
.menu-toggler {
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 16px;
  gap: 24px;
  padding: 8px 16px;
  height: 42px;
  display: flex;
  box-sizing: border-box;
  cursor: pointer;
}
.menu-toggler svg {
  height: 24px;
  width: 24px;
}
.menu-toggler:not(.active) svg.close-icon {
  display: none;
}
.menu-toggler:not(.active) svg.menu-icon {
  display: block;
}
.menu-toggler.active svg.close-icon {
  display: block;
}
.menu-toggler.active svg.menu-icon {
  display: none;
}

.lang-mobile {
  display: flex;
  align-items: center;
  margin-top: 32px;
  gap: 8px;
}
@media (min-width: 1200px) {
  .lang-mobile {
    display: none;
  }
}
.lang-mobile > div {
  position: relative;
}
.lang-mobile select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  opacity: 0;
  inset: 0px;
  cursor: inherit;
  width: 100%;
}
.lang-mobile .lang-select {
  color: #fff;
  font-size: 19px;
}
.lang-mobile .lang-input {
  background-color: transparent;
}

@media (min-width: 1200px) {
  .menu-dark .menu-container > div > ul a {
    color: #373737;
  }
  .menu-dark .lang-input {
    color: #373737;
  }
  .menu-dark .lang-input .icon svg {
    fill: #373737;
  }
  .menu-dark .lang-input .caret svg path {
    stroke: #373737;
  }
}

.tools-mobile {
  flex: 0 0 58px;
}
@media (min-width: 1200px) {
  .tools-mobile {
    display: none;
  }
}

@media (max-width: 1199px) {
  header .menu-container {
    justify-content: flex-start;
    padding-top: 120px;
  }
}
.wrapper > footer.alignfull {
  padding: 80px !important;
  display: flex;
  gap: 120px;
  flex-direction: column;
}
@media (max-width: 1199px) {
  .wrapper > footer.alignfull {
    gap: 80px;
    padding: 40px !important;
  }
}
@media (max-width: 809px) {
  .wrapper > footer.alignfull {
    padding: 29px !important;
  }
}
.wrapper > footer.alignfull > .menus {
  display: flex;
  gap: 24px;
}
@media (max-width: 1199px) {
  .wrapper > footer.alignfull > .menus {
    gap: 80px;
    flex-wrap: wrap;
  }
}
@media (max-width: 809px) {
  .wrapper > footer.alignfull > .menus {
    flex-direction: column;
  }
}
.wrapper > footer.alignfull > .menus > div {
  flex: 1;
}
@media (max-width: 1199px) {
  .wrapper > footer.alignfull > .menus > div {
    flex: none;
    width: 43%;
  }
}
@media (max-width: 809px) {
  .wrapper > footer.alignfull > .menus > div {
    width: 100%;
  }
}
.wrapper > footer.alignfull > .menus h5 {
  font-weight: 300;
  color: #a7a7a7;
  font-size: 22px;
  margin-bottom: 40px;
  margin-top: 0;
}
.wrapper > footer.alignfull > .menus ul {
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.wrapper > footer.alignfull > .menus ul a {
  text-decoration: none;
  font-size: 22px;
  color: #373737;
}
.wrapper > footer.alignfull > .menus ul a:hover {
  text-decoration: underline;
}

@media (max-width: 1199px) {
  .footer-app.desktop {
    display: none;
  }
}
@media (min-width: 1199.1px) {
  .footer-app.mobile {
    display: none;
  }
}
.footer-app h5 {
  font-size: 22px !important;
  font-weight: 350 !important;
  color: #333333 !important;
  margin-top: 0;
  margin-bottom: 40px;
}
.footer-app .apps {
  display: flex;
  gap: 19px;
}
.footer-app .apps img {
  height: 40px !important;
  width: auto !important;
}

.footer-infos {
  display: flex;
  flex-direction: column;
  gap: 80px;
}

.footer-newsletter {
  gap: 32px;
  display: flex;
  flex-direction: column;
}
.footer-newsletter h3 {
  font-weight: 300;
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 34px;
}
@media (max-width: 1439px) and (min-width: 810px) {
  .footer-newsletter h3 {
    font-size: 28px;
  }
}
@media (max-width: 809px) and (min-width: 0px) {
  .footer-newsletter h3 {
    font-size: 24px;
  }
}
.footer-newsletter p {
  margin-bottom: 0;
}

.sub-footer {
  display: flex;
  gap: 40px;
}
@media (max-width: 809px) {
  .sub-footer {
    flex-direction: column;
  }
}
.sub-footer__links ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 16px;
}
.sub-footer__links ul a {
  text-decoration: none;
  font-size: 14px;
  line-height: 30px;
}
.sub-footer__links ul a:hover {
  text-decoration: underline;
}
.sub-footer__copy {
  flex: 1;
  text-align: right;
  font-size: 12px;
  color: #666666;
  line-height: 30px;
}
@media (max-width: 809px) {
  .sub-footer__copy {
    text-align: left;
  }
}

.otgs-development-site-front-end {
  display: none;
}

body {
  --header-height: 112px;
}
body:not(.home):not(.category) {
  margin-top: var(--header-height);
}
@media (max-width: 1199px) {
  body {
    --header-height: 90px;
  }
}

.front:not(.logged-in) {
  --wp-admin--admin-bar--height: 0px;
}

.single-top {
  margin-bottom: 24px;
}
.single-top__container {
  padding-top: 40px;
  padding-bottom: 40px;
}
.single-top__container h1 {
  margin-top: 0;
  margin-bottom: 0;
}

.label {
  color: var(--wp--preset--color--content);
  border: 1px solid var(--wp--preset--color--content);
  border-radius: 10px;
  padding: 8px 16px;
  letter-spacing: 0.5px;
  line-height: 1.4285714286em;
  display: inline-block;
}

.related-posts {
  margin-top: 120px;
  margin-bottom: 120px;
}
.related-posts h2 {
  margin-top: 0;
  margin-bottom: 72px;
}

.post-preview__container {
  display: flex;
  gap: 20px;
}
@media (max-width: 781px) {
  .post-preview__container {
    flex-direction: column;
  }
}

.post-preview {
  flex: 1;
}
@media (max-width: 781px) {
  .post-preview {
    margin-bottom: 40px;
  }
}
.post-preview__thumbnail {
  position: relative;
}
.post-preview__thumbnail img {
  width: 100%;
}
.post-preview__categories {
  position: absolute;
  top: 16px;
  left: 16px;
}
.post-preview__title {
  margin: 24px 0 0;
  font-size: 28px;
}
.post-preview__title a {
  text-decoration: none;
}
.post-preview img {
  aspect-ratio: 410/413;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 16px;
}
.post-preview .label {
  font-weight: 450;
  background-color: #FFFFFF;
  font-size: 14px;
  letter-spacing: 0;
  border: 0;
}

.hero {
  background-color: #19715E;
  position: relative;
}
.hero img {
  display: block;
}
@media (max-width: 991px) {
  .hero img {
    aspect-ratio: 16/9;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media (max-width: 767px) {
  .hero img {
    aspect-ratio: 20/15;
    -o-object-position: 70%;
       object-position: 70%;
  }
}
@media (max-width: 500px) {
  .hero img {
    aspect-ratio: 1/1;
  }
}
@media (max-width: 400px) {
  .hero img {
    aspect-ratio: 10/15;
  }
}
.hero h1 {
  margin-bottom: 50px;
}
.hero:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.3;
  background-color: #000;
}
.hero__content {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  box-sizing: border-box;
  z-index: 1;
  padding-left: 80px;
  padding-right: 80px;
}
@media (max-width: 1199px) {
  .hero__content {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.hero__content > div {
  max-width: 954px;
}
@media (max-width: 1199px) {
  .hero__content > div {
    max-width: 800px;
  }
}
.hero__content h1 {
  color: #fff;
}
@media (max-width: 1199px) {
  .hero__content h1 {
    font-size: 40px;
    margin-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .hero__content h1 {
    font-size: 32px;
  }
}

.post-list {
  padding-top: 80px;
  padding-bottom: 56px;
}
.post-list > div {
  display: flex;
  flex-wrap: wrap;
  --gap: 12.5px;
  margin-left: calc(-1 * var(--gap));
  margin-right: calc(-1 * var(--gap));
}
.post-list > div .post-preview {
  padding-left: var(--gap);
  padding-right: var(--gap);
  box-sizing: border-box;
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
  margin-bottom: 64px;
}
@media (max-width: 991px) {
  .post-list > div .post-preview {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (max-width: 767px) {
  .post-list > div .post-preview {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

.pagination {
  margin-bottom: 120px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.pagination a, .pagination span {
  text-decoration: none;
  color: var(--wp--preset--color--content);
  border-radius: 4px;
  padding: 8px 16px;
  letter-spacing: 0.5px;
  line-height: 1.4285714286em;
  display: inline-block;
  border: 1px solid transparent;
  transition: border-color 0.3s ease;
}
.pagination a:hover, .pagination span:hover {
  border-color: var(--wp--preset--color--content);
}
.pagination .page-numbers.dots:hover {
  border-color: transparent;
}
.pagination .page-numbers.current {
  border-color: var(--wp--preset--color--content);
  background: var(--wp--preset--color--content);
  color: #fff;
}
.pagination .next {
  width: 40px;
  height: 40px;
  padding: 0;
  position: relative;
}
.pagination .next:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url("../images/page-navigation.svg") no-repeat;
}
.pagination .prev {
  width: 40px;
  height: 40px;
  padding: 0;
  position: relative;
}
.pagination .prev:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url("../images/page-navigation.svg") no-repeat;
  transform: rotate(180deg);
  display: block;
}

.category-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 62px;
}
@media (max-width: 1199px) {
  .category-labels {
    margin-bottom: 40px;
  }
}
.category-labels .label {
  border-color: #fff;
  text-decoration: none;
  color: #fff;
  font-size: 16px;
  border-radius: 12px;
  font-weight: 450;
  transition: background-color 0.3s ease, color 0.3s ease;
}
@media (max-width: 767px) {
  .category-labels .label {
    font-size: 14px;
    padding: 6px 12px;
  }
}
.category-labels .label.active, .category-labels .label:hover {
  background-color: #fff;
  color: #000;
}