/*!******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/.pnpm/css-loader@6.11.0_webpack@5.99.8_webpack-cli@4.10.0_/node_modules/css-loader/dist/cjs.js!./node_modules/.pnpm/sass-loader@13.3.3_sass@1.77.8_webpack@5.99.8_webpack-cli@4.10.0_/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./src/sass/main.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://use.typekit.net/xwi4gvl.css);
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/.pnpm/css-loader@6.11.0_webpack@5.99.8_webpack-cli@4.10.0_/node_modules/css-loader/dist/cjs.js!./node_modules/.pnpm/sass-loader@13.3.3_sass@1.77.8_webpack@5.99.8_webpack-cli@4.10.0_/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./src/sass/main.scss (1) ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Fonts */
@font-face {
  font-family: "Necto Mono";
  src: url(4e8b221ca0bd8c4ff3a0.woff2) format("woff2"), url(c0a32ce47a307366f7f0.woff) format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Schnyder S";
  src: url(8a3d788e562ec6ded5d1.woff2) format("woff2"), url(7ed3bd6ae7a433475c85.woff) format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Schnyder S Web";
  src: url(1a35e35ca8524b69461f.woff2) format("woff2");
  font-weight: 300;
  font-style: normal;
}
/* TOPICS ->
? $px-vw/$px-vh = desired measurement in pixels (without units)
? $multiplier = multiplier useful for scaling the measurements differently in the case of several screen measurements, by default 1
? $min = minimum measurement, the returned value will not scale less than the measurement entered (in pixels), by default there is no minimum measurement
? $min = maximum measurement, the returned value will not scale more than the measurement entered (in pixels), by default there is no maximum measurement
*/
/* USE ->
! .element {
! width: rvw(200, 1.5, 180, 220);
! height: rvh(150, 1.5, 130, 170);
! }
*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  font-weight: 300;
}

/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
  line-height: 1.5;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
}
a:link, a:visited {
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img,
picture,
video,
canvas,
svg {
  max-width: 100%;
  height: auto;
  display: block;
}

img {
  border-style: none;
}

svg {
  fill: currentColor;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  appearance: textfield;
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::file-selector-button {
  -webkit-appearance: button; /* 1 */
  appearance: button;
  font: inherit; /* 2 */
}

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  appearance: button;
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Modern additions for better web development
   ========================================================================== */
/**
 * Remove list styles on ul, ol elements with a list role,
 * which suggests default styling will be removed
 */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/**
 * Improve media defaults
 */
img,
picture,
video,
canvas,
svg {
  vertical-align: middle;
}

/**
 * Remove built-in form typography styles
 */
input,
button,
textarea,
select {
  font: inherit;
}

/**
 * Avoid text overflows
 */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/**
 * Improve line heights for better readability
 */
h1,
h2,
h3,
h4 {
  line-height: 1.1;
}

/**
 * Balance text wrapping on headings
 */
h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

html {
  min-height: 100% !important;
  overflow-x: hidden;
}

body {
  background-color: #dcdcdc;
  color: #fff;
  font-family: "Nobel";
  font-size: 18px;
  min-height: 100vh;
  overflow: hidden;
  margin: 0 auto;
  font-weight: 400;
}

pre {
  position: fixed;
  right: 0;
  top: 0;
  text-align: left;
  text-transform: none;
  width: 325px;
  height: 100%;
  background: #fff;
  overflow-y: auto;
  line-height: 11px;
  font-size: 11px;
  letter-spacing: 0;
  word-spacing: 0;
  z-index: 999999999999999;
  padding: 10px;
  margin: 0;
  word-break: normal;
  word-wrap: normal;
  font-family: arial;
  -webkit-box-sizing: content-box !important;
  -moz-box-sizing: content-box !important;
  box-sizing: content-box !important;
  overflow-y: auto;
  color: #000 !important;
}

#cmplz-manage-consent .cmplz-manage-consent {
  display: none !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-black {
  background-color: #181818 !important;
}

.c-white {
  color: #fff !important;
}

.c-black {
  color: #181818 !important;
}

span {
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  font-weight: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Schnyder S Web";
  font-weight: 300;
}

h1,
h2 {
  text-transform: uppercase;
}

h3 {
  text-transform: uppercase;
}

h4 {
  text-transform: uppercase;
}

h5 {
  font-weight: 400;
  font-family: "Nobel";
  text-transform: uppercase;
}
@media screen and (orientation: portrait) {
  h5.t-18 {
    font-size: 3vw;
    line-height: 1.2;
  }
}

h6,
button {
  font-weight: 400;
  font-family: "Necto Mono";
  text-transform: uppercase;
}

.t-200 {
  font-size: 13.8888888889vw;
  line-height: 13.8888888889vw;
}
@media screen and (min-width: 1920px) {
  .t-200 {
    font-size: 266.6666px;
    line-height: 266.6666px;
  }
}
@media (orientation: portrait) {
  .t-200 {
    font-size: 9.8765432099vh;
    line-height: 9.8765432099vh;
  }
}

.t-67, h1,
h2 {
  font-size: 4.6527777778vw;
  line-height: 4.9305555556vw;
  letter-spacing: 0.1041666667vw;
}
@media screen and (min-width: 1920px) {
  .t-67, h1,
  h2 {
    font-size: 89.333311px;
    line-height: 94.666643px;
    letter-spacing: 1.9999995px;
  }
}
@media (orientation: portrait) {
  .t-67, h1,
  h2 {
    font-size: 5.7901234568vh;
    line-height: 6.1358024691vh;
    letter-spacing: 0.1296296296vh;
  }
}

.t-37, h3 {
  font-size: 2.5694444444vw;
  line-height: 2.7777777778vw;
  letter-spacing: 0.0694444444vw;
}
@media screen and (min-width: 1920px) {
  .t-37, h3 {
    font-size: 49.333321px;
    line-height: 53.33332px;
    letter-spacing: 1.333333px;
  }
}
@media (orientation: portrait) {
  .t-37, h3 {
    font-size: 3.6543209877vh;
    line-height: 3.950617284vh;
    letter-spacing: 0.0987654321vh;
  }
}

.t-30, #page-policy h1,
#page-policy h2,
#page-policy h3, h4 {
  font-size: 2.0833333333vw;
  line-height: 2.2916666667vw;
  letter-spacing: 0.0694444444vw;
}
@media screen and (min-width: 1920px) {
  .t-30, #page-policy h1,
  #page-policy h2,
  #page-policy h3, h4 {
    font-size: 39.99999px;
    line-height: 43.999989px;
    letter-spacing: 1.333333px;
  }
}
@media (orientation: portrait) {
  .t-30, #page-policy h1,
  #page-policy h2,
  #page-policy h3, h4 {
    font-size: 2.962962963vh;
    line-height: 3.2592592593vh;
    letter-spacing: 0.0987654321vh;
  }
}

.t-25 {
  font-size: 1.7361111111vw;
  line-height: 2.0833333333vw;
  letter-spacing: 0.0694444444vw;
}
@media screen and (min-width: 1920px) {
  .t-25 {
    font-size: 33.333325px;
    line-height: 39.99999px;
    letter-spacing: 1.333333px;
  }
}
@media (orientation: portrait) {
  .t-25 {
    font-size: 2.4691358025vh;
    line-height: 2.962962963vh;
    letter-spacing: 0.0987654321vh;
  }
}

.t-20, #page-policy p,
#page-policy li, h5 {
  font-size: 1.3888888889vw;
  line-height: 1.6666666667vw;
  letter-spacing: 0.0347222222vw;
}
@media screen and (min-width: 1920px) {
  .t-20, #page-policy p,
  #page-policy li, h5 {
    font-size: 26.66666px;
    line-height: 31.999992px;
    letter-spacing: 0.6666665px;
  }
}
@media (orientation: portrait) {
  .t-20, #page-policy p,
  #page-policy li, h5 {
    font-size: 1.975308642vh;
    line-height: 2.3703703704vh;
    letter-spacing: 0.049382716vh;
  }
}

.t-18, p {
  font-size: 1.25vw;
  line-height: 1.4583333333vw;
  letter-spacing: 0.0347222222vw;
}
@media screen and (min-width: 1920px) {
  .t-18, p {
    font-size: 23.999994px;
    line-height: 27.999993px;
    letter-spacing: 0.6666665px;
  }
}
@media (orientation: portrait) {
  .t-18, p {
    font-size: 2.2222222222vh;
    line-height: 2.5925925926vh;
    letter-spacing: 0.0617283951vh;
  }
}

.t-14, h6,
button {
  font-size: 0.9722222222vw;
  line-height: 1.3888888889vw;
  letter-spacing: 0.0347222222vw;
}
@media screen and (min-width: 1920px) {
  .t-14, h6,
  button {
    font-size: 18.666662px;
    line-height: 26.66666px;
    letter-spacing: 0.6666665px;
  }
}
@media (orientation: portrait) {
  .t-14, h6,
  button {
    font-size: 1.7283950617vh;
    line-height: 2.4691358025vh;
    letter-spacing: 0.0617283951vh;
  }
}

.t-10, .footer__wrapper a,
.footer__wrapper h6,
.footer__wrapper button, .button {
  font-size: 0.6944444444vw;
  line-height: 1.1111111111vw;
  letter-spacing: 0.0694444444vw;
}
@media screen and (min-width: 1920px) {
  .t-10, .footer__wrapper a,
  .footer__wrapper h6,
  .footer__wrapper button, .button {
    font-size: 13.33333px;
    line-height: 21.333328px;
    letter-spacing: 1.333333px;
  }
}
@media (orientation: portrait) {
  .t-10, .footer__wrapper a,
  .footer__wrapper h6,
  .footer__wrapper button, .button {
    font-size: 1.2345679012vh;
    line-height: 1.975308642vh;
    letter-spacing: 0.1234567901vh;
  }
}

.button {
  display: block;
  text-align: center;
  border: 1px solid #fff;
  color: #fff;
  text-transform: uppercase;
  font-family: "Necto Mono";
  font-weight: 400;
  width: fit-content;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  transition: color 0.3s ease;
}
.button {
  padding: 1.3580246914vh;
}
@media (orientation: portrait) {
  .button {
    padding: 1.3580246914vh;
  }
}
.button {
  min-width: 12.8472222222vw;
}
@media (orientation: portrait) {
  .button {
    min-width: 9.1358024691vh;
  }
}
@media screen and (orientation: portrait) {
  .button {
    font-size: 3.5vw;
    line-height: 1;
  }
}
.button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  transition: clip-path 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: -1;
}
.button:hover {
  color: #232940;
}
.button:hover::before {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.button--black, #page-about .imageText__linkWrapper .button {
  border: 1px solid #181818;
  color: #181818;
}
.button--black::before, #page-about .imageText__linkWrapper .button::before {
  background-color: #181818;
}
.button--black:hover, #page-about .imageText__linkWrapper .button:hover {
  color: #fff;
}

.height--100 {
  height: 100%;
}
.height--100vh {
  height: 100vh;
}

.width--100 {
  width: 100%;
}
.width--100vw {
  width: 100vw;
}
.width--1800 {
  width: 125vw;
}
.width--1380 {
  width: 95.8333333333vw;
}
.width--980 {
  width: 68.0555555556vw;
}
.width--500 {
  width: 34.7222222222vw;
}
.width--1800, .width--1380, .width--980, .width--500 {
  margin: 0 auto;
}
@media screen and (orientation: portrait) {
  .width--1800, .width--1380, .width--980, .width--500 {
    height: auto;
    width: 90vw;
  }
}

.quote-symbol {
  font-family: "Schnyder S Web";
  font-size: 9.0277777778vw;
  line-height: 1;
}
.quote-symbol {
  height: 5.5555555556vh;
}
@media (orientation: portrait) {
  .quote-symbol {
    height: 3.3333333333vh;
  }
}
.quote-symbol {
  margin-bottom: 1.8518518519vh;
}
@media (orientation: portrait) {
  .quote-symbol {
    margin-bottom: 1.8518518519vh;
  }
}
@media screen and (orientation: portrait) {
  .quote-symbol {
    font-size: 40vw;
    height: 13vw;
    margin-bottom: 5vw;
  }
}

.socials {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px 0;
}
.socials a {
  display: inline-flex;
}

.header {
  --header-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100vw;
  transition: all 0.35s ease-in-out;
}
.header.visible .header__logo {
  opacity: 1;
}
.header.fixed {
  transform: translateY(-100%);
}
.header.scrolled-height::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 125%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, transparent 0%, rgba(0, 0, 0, 0.4) 200%);
  pointer-events: none;
  z-index: -1;
}
.header__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}
.header__wrapper {
  padding-top: 2.4691358025vh;
}
@media (orientation: portrait) {
  .header__wrapper {
    padding-top: 1.975308642vh;
  }
}
@media (orientation: portrait) {
  .header__wrapper {
    padding: 5vw;
  }
}
.header__logo svg {
  width: auto;
}
.header__logo svg {
  height: 6.1728395062vh;
}
@media (orientation: portrait) {
  .header__logo svg {
    height: 3.7037037037vh;
  }
}
@media screen and (orientation: portrait) {
  .header__logo svg {
    height: 9vw;
    margin-top: 1vw;
  }
}
.header__logo svg path {
  fill: var(--header-color);
  transition: all 0.35s ease-in-out;
}

body.tax-location .header:not(.scrolled-height) {
  transform: translateY(-100%);
}

body.page-template-page_ABOUT .header.scrolled-height,
body.page-template-page_ABOUT .menu.scrolled-height {
  --header-color: #181818;
}

body.page-template-page_PORTFOLIO .header,
body.page-template-page_PORTFOLIO .menu {
  --header-color: #181818;
}
body.page-template-page_PORTFOLIO .header.custom-color-portfolio,
body.page-template-page_PORTFOLIO .menu.custom-color-portfolio {
  --header-color: #fff;
}

body.page-template-page_PRESS .header,
body.page-template-page_PRESS .menu {
  --header-color: #181818;
}

.menu {
  --header-color: #fff;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
}
.menu.opened {
  --header-color: #fff;
}
.menu.opened .menu__visible {
  opacity: 1;
  visibility: visible;
}
.menu.opened .menu__content {
  transform: translateX(0);
}
.menu.visible .menu__visible {
  opacity: 1;
  visibility: visible;
}
.menu__wrapper {
  height: auto;
  position: relative;
}
.menu__visible {
  height: auto;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  z-index: 2;
  position: relative;
  transition: all 0.35s ease-in-out;
}
.menu__visible {
  padding-right: 2.0833333333vw;
}
@media (orientation: portrait) {
  .menu__visible {
    padding-right: 2.962962963vh;
  }
}
.menu__visible {
  padding-top: 2.4691358025vh;
}
@media (orientation: portrait) {
  .menu__visible {
    padding-top: 1.975308642vh;
  }
}
@media (orientation: portrait) {
  .menu__visible {
    padding: 5vw;
    justify-content: space-between;
  }
}
.menu__toggler, .menu__voices {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.menu__voices a {
  transition: opacity 0.3s ease;
}
@media screen and (orientation: portrait) {
  .menu__voices a h4 {
    font-size: 7vw;
    line-height: 1;
  }
}
.menu__content {
  height: 100vh;
  background-color: #181818;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(100%);
  transition: all 0.35s ease-in-out;
  transition-duration: 0.3s;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.menu__content {
  padding: 2.4691358025vh;
}
@media (orientation: portrait) {
  .menu__content {
    padding: 1.975308642vh;
  }
}
.menu__content {
  padding-bottom: 9.2592592593vh;
}
@media (orientation: portrait) {
  .menu__content {
    padding-bottom: 6.4814814815vh;
  }
}
.menu__content {
  width: 26.3888888889vw;
}
@media (orientation: portrait) {
  .menu__content {
    width: 11.7283950617vh;
  }
}
@media (orientation: portrait) {
  .menu__content {
    width: 100vw;
    padding-bottom: 6.1728395062vh;
  }
}
.menu__voices {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.menu__voices {
  gap: 2.4691358025vh;
}
@media (orientation: portrait) {
  .menu__voices {
    gap: 1.975308642vh;
  }
}
.menu__voices a {
  width: min-content;
}

.links-hover-wrapper a {
  transition: opacity 0.3s ease;
}

.menu__monogram {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 7.5%;
}
.menu__monogram {
  height: 8.6419753086vh;
}
@media (orientation: portrait) {
  .menu__monogram {
    height: 6.049382716vh;
  }
}
.menu__monogram svg {
  height: auto;
  width: 100%;
}
@media (orientation: landscape) {
  .menu__monogram svg {
    transform: translateX(0.2777777778vw);
  }
}

.footer.light {
  color: #fff;
}
.footer.light .topLine {
  background-color: #fff;
}
.footer.light svg path {
  fill: #fff;
}
.footer.dark {
  color: #232940;
}
.footer.dark .topLine {
  background-color: #232940;
}
.footer.dark svg path {
  fill: #232940;
}
.footer__wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  color: inherit;
}
.footer__wrapper {
  padding-top: 12.3456790123vh;
}
@media (orientation: portrait) {
  .footer__wrapper {
    padding-top: 4.9382716049vh;
  }
}
.footer__wrapper {
  padding-bottom: 4.9382716049vh;
}
@media (orientation: portrait) {
  .footer__wrapper {
    padding-bottom: 3.950617284vh;
  }
}
.footer__wrapper {
  gap: 6.1728395062vh;
}
@media (orientation: portrait) {
  .footer__wrapper {
    gap: 3.7037037037vh;
  }
}
@media screen and (orientation: portrait) {
  .footer__wrapper {
    gap: 10vw 0;
    padding-top: 20vw;
  }
}
.footer__wrapper a,
.footer__wrapper h6,
.footer__wrapper button {
  font-weight: 400;
  font-family: "Necto Mono";
  text-transform: uppercase;
  color: inherit;
  border: none;
}
.footer__row {
  display: flex;
  justify-content: space-between;
}
@media screen and (orientation: portrait) {
  .footer__row--bottom, .footer__row--top {
    flex-direction: column;
    gap: 10vw 0;
  }
}
@media screen and (orientation: portrait) {
  .footer__row--top {
    align-items: center;
  }
}
.footer__col {
  display: flex;
  flex-direction: column;
}
.footer__col--menu {
  gap: 5px 0;
}
@media screen and (orientation: portrait) {
  .footer__col--menu {
    display: none;
  }
}
.footer__col--logo {
  width: 8.3333333333vw;
}
@media (orientation: portrait) {
  .footer__col--logo {
    width: 5.9259259259vh;
  }
}
@media screen and (orientation: portrait) {
  .footer__col--logo {
    width: 20vw;
  }
}
.footer__col--logo svg {
  width: 100%;
}
.footer__col--socials .socials {
  align-items: flex-end;
}
@media screen and (orientation: portrait) {
  .footer__col--socials .socials {
    align-items: center;
  }
}
.footer__col--socials .socials a {
  display: block;
  text-align: right;
}
@media screen and (orientation: portrait) {
  .footer__col--socials .socials a {
    text-align: center;
  }
}
.footer__col--locations {
  gap: 2.4691358025vh;
}
@media (orientation: portrait) {
  .footer__col--locations {
    gap: 1.975308642vh;
  }
}
.footer__col--locations br {
  display: none;
}
.footer__col--infos {
  gap: 20px 0;
}
@media screen and (orientation: portrait) {
  .footer__col--infos {
    gap: 10vw 0;
  }
}
.footer__policiesInner {
  flex-wrap: wrap;
  display: flex;
  justify-content: flex-end;
  text-align: right;
  gap: 5px;
}
@media screen and (orientation: portrait) {
  .footer__policiesInner {
    text-align: center;
    justify-content: center;
    flex-direction: column;
  }
}
.footer__policiesInner a {
  width: auto !important;
}
.footer__credits {
  justify-content: flex-end;
  text-align: right;
}
@media screen and (orientation: portrait) {
  .footer__credits {
    text-align: center;
    justify-content: center;
  }
}
.footer__credit {
  width: 100%;
}
.footer__credit a {
  display: inline-block;
  white-space: nowrap;
  transition: all 0.35s ease-in-out;
}
.footer__credit a:hover {
  opacity: 0.3;
}
.footer__extras {
  justify-content: flex-end;
  text-align: right;
}
@media screen and (orientation: portrait) {
  .footer__extras {
    text-align: center;
    justify-content: center;
  }
}
@media screen and (orientation: portrait) {
  .footer__location {
    text-align: center;
    justify-content: center;
  }
}
@media screen and (orientation: portrait) {
  .footer__location h6,
  .footer__location a {
    font-size: 4vw !important;
    line-height: 1.2 !important;
  }
}
@media screen and (orientation: portrait) {
  .footer__location h6:first-child {
    font-weight: 700;
    display: flex;
    flex-direction: column;
    gap: 2.5vw 0;
  }
}

#page-home + .footer {
  display: none;
}

.menu:hover:not(.opened) .menu__togglerLine:first-child {
  transform: rotate(30deg) translateY(-3px);
}
.menu:hover:not(.opened) .menu__togglerLine:last-child {
  transform: rotate(30deg) translateY(3px);
}
.menu.opened .menu__togglerLine {
  left: 0;
  transform: translateY(-50%) rotate(90deg);
  background-color: #fff;
}
.menu__toggler {
  cursor: pointer;
  position: relative;
}
.menu__toggler {
  height: 4.3209876543vh;
}
@media (orientation: portrait) {
  .menu__toggler {
    height: 3.4567901235vh;
  }
}
.menu__toggler {
  width: 4.3209876543vh;
}
@media (orientation: portrait) {
  .menu__toggler {
    width: 3.4567901235vh;
  }
}
.menu__togglerLine {
  position: absolute;
  left: 0;
  top: 0;
  width: 2px;
  height: 100%;
  background-color: var(--header-color);
  transform: rotate(30deg);
  transform-origin: left bottom;
  transition: all 0.35s ease-in-out;
}
.menu__togglerLine:last-child {
  left: 6px;
}

.barbaLoader {
  position: fixed;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  background-color: #232940;
  z-index: 1;
  visibility: hidden;
  opacity: 0;
}

.preloader {
  position: fixed;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #181818;
}
.preloader svg {
  opacity: 0;
  width: auto;
  overflow: visible;
}
.preloader svg {
  height: 20.8333333333vw;
}
@media (orientation: portrait) {
  .preloader svg {
    height: 9.2592592593vh;
  }
}
.preloader svg .logotipo {
  transform-origin: center center;
}
.preloader svg .letters path {
  fill: transparent;
  stroke: #fff;
}

.error-page__wrapper {
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.error-page__wrapper {
  gap: 3.0864197531vh;
}
@media (orientation: portrait) {
  .error-page__wrapper {
    gap: 2.4691358025vh;
  }
}

#overlay {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background-color: #181818;
  opacity: 0.4;
  z-index: 9;
  display: none;
  top: 0;
  left: 0;
}

#cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background-color: rgba(116, 127, 143, 0.7411764706);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  text-transform: uppercase;
  pointer-events: none; /* Permette di cliccare attraverso il cursore */
  transform: translate(-50%, -50%);
  transition: transform 0.15s ease, width 0.3s ease, height 0.3s ease;
  z-index: 9999;
}
@media (orientation: portrait) {
  #cursor {
    display: none;
  }
}
#cursor .label-wrapper h5 {
  font-weight: 500;
}
#cursor.is-hover {
  width: 50px !important;
  height: 50px !important;
}
#cursor.has-label {
  width: 100px !important;
  height: 100px !important;
}

.accordion {
  display: flex;
  flex-direction: column;
  height: fit-content;
  border-bottom: 1px solid #707070;
}
.accordion:not(:last-child) {
  border-top: 1px solid #707070;
}
.accordion.opened .accordion__icon svg {
  transform: rotate(0deg);
}
.accordion.opened .accordion__hidden {
  border-top: 1px solid #707070;
}
.accordion__titleWrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 90%;
}
@media (orientation: portrait) {
  .accordion__titleWrapper {
    width: 80%;
  }
}
.accordion__visible {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: 1.8518518519vh 0;
}
.accordion__icon {
  position: relative;
  cursor: pointer;
  width: 10%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (orientation: portrait) {
  .accordion__icon {
    width: 20%;
  }
}
.accordion__icon svg {
  transform: rotate(90deg);
  transition: all 0.35s ease-in-out;
  transform-origin: center center;
}
.accordion__icon svg {
  width: 2.0833333333vw;
}
@media (orientation: portrait) {
  .accordion__icon svg {
    width: 2.962962963vh;
  }
}
.accordion__icon svg {
  height: 2.0833333333vw;
}
@media (orientation: portrait) {
  .accordion__icon svg {
    height: 2.962962963vh;
  }
}
.accordion__icon svg path {
  fill: #181818;
}
.accordion__hidden {
  display: none;
  padding: 3.7037037037vh 0;
}
.accordion__title {
  display: flex;
  align-items: flex-end;
  line-height: normal;
}
@media (orientation: portrait) {
  .accordion__title {
    width: 92%;
  }
}

.topLine,
.bottomLine {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 1px;
  transform-origin: center left;
  background-color: #181818;
}

.bottomLine {
  bottom: 0;
  top: unset;
}

.rightLine,
.leftLine {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 1px;
  transform-origin: top center;
  background-color: #181818;
}

.leftLine {
  left: 0;
  right: unset;
}

.hero {
  color: #fff;
  overflow: hidden;
  position: relative;
}
.hero__wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (orientation: portrait) {
  .hero__wrapper {
    height: 100svh;
  }
}
.hero__backgroundWrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}
.hero__backgroundWrapper picture,
.hero__backgroundWrapper img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.hero__bottomOverlay, .hero__bottomOverlayMobile {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40%;
  opacity: 1;
  z-index: 0;
}
.hero__bottomOverlayMobile {
  display: none;
}
.hero__logoWrapper {
  position: absolute;
  left: 50%;
  transform: scale(0.93) translateX(-50%) !important;
  z-index: 2;
}
.hero__logoWrapper {
  bottom: 18.5185185185vh;
}
@media (orientation: portrait) {
  .hero__logoWrapper {
    bottom: 7.4074074074vh;
  }
}
.hero__logoWrapper {
  width: 44.4444444444vw;
}
@media (orientation: portrait) {
  .hero__logoWrapper {
    width: 19.7530864198vh;
  }
}
@media screen and (orientation: portrait) {
  .hero__logoWrapper {
    width: 80vw;
    bottom: 50%;
    transform: scale(0.93) translate(-50%, 50%) !important;
  }
}
.hero__logoWrapper svg {
  width: 100%;
  height: auto;
}

@media screen and (orientation: portrait) {
  #page-location .hero__bottomOverlay, #page-location .hero__bottomOverlayMobile,
  #page-about .hero__bottomOverlay,
  #page-about .hero__bottomOverlayMobile {
    height: 100%;
  }
}

@media screen and (orientation: portrait) {
  #page-location .hero__bottomOverlay {
    display: none;
  }
}
@media screen and (orientation: portrait) {
  #page-location .hero__bottomOverlayMobile {
    display: block;
    height: 100%;
    opacity: 0.35;
  }
}

@media screen and (orientation: portrait) {
  #page-about .hero__bottomOverlay, #page-about .hero__bottomOverlayMobile {
    background: #181818 !important;
    opacity: 0.35;
  }
}

.introText {
  text-align: center;
}
.introText__wrapper {
  display: flex;
  flex-direction: column;
}
.introText__wrapper {
  gap: 3.7037037037vh;
}
@media (orientation: portrait) {
  .introText__wrapper {
    gap: 2.962962963vh;
  }
}
.introText__wrapper {
  padding-top: 18.5185185185vh;
}
@media (orientation: portrait) {
  .introText__wrapper {
    padding-top: 7.4074074074vh;
  }
}
.introText__wrapper {
  padding-bottom: 18.5185185185vh;
}
@media (orientation: portrait) {
  .introText__wrapper {
    padding-bottom: 7.4074074074vh;
  }
}

.page-flexible .introText__wrapper {
  padding-top: 6.1728395062vh;
}
@media (orientation: portrait) {
  .page-flexible .introText__wrapper {
    padding-top: 3.7037037037vh;
  }
}
.page-flexible .introText__wrapper {
  padding-bottom: 6.1728395062vh;
}
@media (orientation: portrait) {
  .page-flexible .introText__wrapper {
    padding-bottom: 3.7037037037vh;
  }
}

@media screen and (orientation: portrait) {
  #page-location .introText:nth-child(2) .introText__title {
    font-size: 11vw;
    line-height: 1.2;
  }
}

@media screen and (orientation: portrait) {
  #page-location .introText:nth-child(4) {
    padding-top: 5vw;
  }
}
@media screen and (orientation: portrait) {
  #page-location .introText:nth-child(4) .introText__wrapper {
    padding-top: 0;
  }
}

.imageText.reverse .imageText__wrapper {
  flex-direction: row-reverse;
}
@media screen and (orientation: portrait) {
  .imageText.reverse .imageText__wrapper {
    flex-direction: column;
  }
}
.imageText.hasSecondaryImage .imageText__wrapper {
  gap: 10.4166666667vw;
}
@media (orientation: portrait) {
  .imageText.hasSecondaryImage .imageText__wrapper {
    gap: 7.4074074074vh;
  }
}
.imageText.hasSecondaryImage .imageText__wrapper {
  padding-bottom: 43.2098765432vh;
}
@media (orientation: portrait) {
  .imageText.hasSecondaryImage .imageText__wrapper {
    padding-bottom: 10.8024691358vh;
  }
}
.imageText.hasSecondaryImage .imageText__wrapper .imageText__imageWrapper {
  overflow: visible;
}
.imageText__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  align-items: flex-end;
}
.imageText__wrapper {
  gap: 4.1666666667vw;
}
@media (orientation: portrait) {
  .imageText__wrapper {
    gap: 5.1851851852vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__wrapper {
    flex-direction: column;
    text-align: center;
  }
}
.imageText__wrapper.width--1380 .imageText__imageWrapper,
.imageText__wrapper.width--1380 .imageText__contentWrapper {
  width: 45.8333333333vw;
}
@media (orientation: portrait) {
  .imageText__wrapper.width--1380 .imageText__imageWrapper,
  .imageText__wrapper.width--1380 .imageText__contentWrapper {
    width: 20.3703703704vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__wrapper.width--1380 .imageText__imageWrapper,
  .imageText__wrapper.width--1380 .imageText__contentWrapper {
    width: 100%;
  }
}
.imageText__wrapper.width--1380 .imageText__contentWrapper {
  padding-right: 20.8333333333vw;
}
@media (orientation: portrait) {
  .imageText__wrapper.width--1380 .imageText__contentWrapper {
    padding-right: 9.2592592593vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__wrapper.width--1380 .imageText__contentWrapper {
    padding-right: 0;
  }
}
.imageText__imageWrapper {
  flex: none;
  overflow: hidden;
}
.imageText__imageWrapper {
  height: 75.9259259259vh;
}
@media (orientation: portrait) {
  .imageText__imageWrapper {
    height: 18.9814814815vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__imageWrapper {
    height: auto;
  }
}
.imageText__imageWrapper img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.imageText__mainImage {
  height: 100%;
}
.imageText__secondaryImage {
  position: absolute;
  bottom: -30%;
  left: 0;
  transform: translateX(-50%);
}
.imageText__secondaryImage {
  width: 19.7916666667vw;
}
@media (orientation: portrait) {
  .imageText__secondaryImage {
    width: 14.0740740741vh;
  }
}
.imageText__secondaryImage {
  height: 46.9135802469vh;
}
@media (orientation: portrait) {
  .imageText__secondaryImage {
    height: 11.7283950617vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__secondaryImage {
    width: 50vw;
    height: auto;
    left: 25%;
    bottom: -5%;
  }
}
.imageText__contentWrapper {
  display: flex;
  flex-direction: column;
}
.imageText__contentWrapper {
  gap: 3.0864197531vh;
}
@media (orientation: portrait) {
  .imageText__contentWrapper {
    gap: 2.4691358025vh;
  }
}
.imageText__contentWrapper {
  padding-right: 5.5555555556vw;
}
@media (orientation: portrait) {
  .imageText__contentWrapper {
    padding-right: 4.4444444444vh;
  }
}
.imageText__contentWrapper {
  padding-bottom: 3.0864197531vh;
}
@media (orientation: portrait) {
  .imageText__contentWrapper {
    padding-bottom: 2.4691358025vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__contentWrapper {
    padding-right: 0;
    padding-bottom: 0;
  }
}
.imageText__imageWrapper, .imageText__contentWrapper {
  position: relative;
}
.imageText__imageWrapper, .imageText__contentWrapper {
  width: 31.9444444444vw;
}
@media (orientation: portrait) {
  .imageText__imageWrapper, .imageText__contentWrapper {
    width: 14.1975308642vh;
  }
}
@media screen and (orientation: portrait) {
  .imageText__imageWrapper, .imageText__contentWrapper {
    width: 100%;
  }
}
@media screen and (orientation: landscape) {
  .imageText__linkWrapper .button {
    margin-left: 0;
  }
}

@media screen and (orientation: portrait) {
  #page-about .imageText:nth-child(3) .imageText__title {
    font-size: 10vw;
    line-height: 1.2;
  }
}
.twoImagesRow {
  display: flex;
  overflow: hidden;
  align-items: center;
  justify-content: space-between;
}
@media screen and (orientation: portrait) {
  .twoImagesRow {
    height: auto;
    flex-direction: column;
    gap: 5vw 0;
  }
}
.twoImagesRow.reverse {
  flex-direction: row-reverse;
}
@media screen and (orientation: portrait) {
  .twoImagesRow.reverse {
    flex-direction: column;
  }
}
.twoImagesRow.reverse .twoImagesRow__imageWrapper:last-child {
  margin-right: unset;
}
.twoImagesRow.reverse .twoImagesRow__imageWrapper:last-child {
  margin-left: 6.25vw;
}
@media (orientation: portrait) {
  .twoImagesRow.reverse .twoImagesRow__imageWrapper:last-child {
    margin-left: 5vh;
  }
}
@media screen and (orientation: portrait) {
  .twoImagesRow.reverse .twoImagesRow__imageWrapper:last-child {
    margin-left: unset;
  }
}
.twoImagesRow.same-height .twoImagesRow__imageWrapper:first-child, .twoImagesRow.same-height .twoImagesRow__imageWrapper:last-child {
  margin: 0;
}
.twoImagesRow.same-height .twoImagesRow__imageWrapper:first-child, .twoImagesRow.same-height .twoImagesRow__imageWrapper:last-child {
  width: 31.9444444444vw;
}
@media (orientation: portrait) {
  .twoImagesRow.same-height .twoImagesRow__imageWrapper:first-child, .twoImagesRow.same-height .twoImagesRow__imageWrapper:last-child {
    width: 14.1975308642vh;
  }
}
@media screen and (orientation: portrait) {
  .twoImagesRow.same-height .twoImagesRow__imageWrapper:first-child, .twoImagesRow.same-height .twoImagesRow__imageWrapper:last-child {
    height: auto;
    width: 100%;
  }
}
.twoImagesRow__imageWrapper {
  overflow: hidden;
}
.twoImagesRow__imageWrapper:first-child {
  width: 31.9444444444vw;
}
@media (orientation: portrait) {
  .twoImagesRow__imageWrapper:first-child {
    width: 14.1975308642vh;
  }
}
@media screen and (orientation: portrait) {
  .twoImagesRow__imageWrapper:first-child {
    height: auto;
    width: 100%;
  }
}
.twoImagesRow__imageWrapper:last-child {
  margin-right: 6.25vw;
}
@media (orientation: portrait) {
  .twoImagesRow__imageWrapper:last-child {
    margin-right: 5vh;
  }
}
.twoImagesRow__imageWrapper:last-child {
  width: 19.4444444444vw;
}
@media (orientation: portrait) {
  .twoImagesRow__imageWrapper:last-child {
    width: 13.8271604938vh;
  }
}
@media screen and (orientation: portrait) {
  .twoImagesRow__imageWrapper:last-child {
    height: auto;
    width: 100%;
    margin-right: unset;
  }
}
.twoImagesRow__imageWrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.singleImageRow {
  overflow: hidden;
}
.singleImageRow__wrapper img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

.clients__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.clients__wrapper {
  gap: 6.1728395062vh;
}
@media (orientation: portrait) {
  .clients__wrapper {
    gap: 3.7037037037vh;
  }
}
.clients__wrapper {
  padding-top: 14.8148148148vh;
}
@media (orientation: portrait) {
  .clients__wrapper {
    padding-top: 5.9259259259vh;
  }
}
.clients__wrapper {
  padding-bottom: 14.8148148148vh;
}
@media (orientation: portrait) {
  .clients__wrapper {
    padding-bottom: 5.9259259259vh;
  }
}
@media screen and (orientation: portrait) {
  .clients__wrapper {
    padding: 15vh 0;
  }
}
.clients__gallery {
  display: flex;
  justify-content: space-between;
}
.clients__client {
  opacity: 0.7;
  transition: all 0.35s ease-in-out;
  transform-origin: center center;
}
.clients__client {
  width: 7.9861111111vw;
}
@media (orientation: portrait) {
  .clients__client {
    width: 5.6790123457vh;
  }
}
.clients__client {
  height: 6.7901234568vh;
}
@media (orientation: portrait) {
  .clients__client {
    height: 4.0740740741vh;
  }
}
.clients__client:hover {
  opacity: 1;
  transform: scale(1.1);
}
.clients__client img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}

.filtered-content__wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.filtered-content__wrapper {
  gap: 6.1728395062vh;
}
@media (orientation: portrait) {
  .filtered-content__wrapper {
    gap: 3.7037037037vh;
  }
}
.filtered-content__wrapper {
  padding-top: 19.7530864198vh;
}
@media (orientation: portrait) {
  .filtered-content__wrapper {
    padding-top: 7.9012345679vh;
  }
}
.filtered-content__wrapper {
  padding-bottom: 37.037037037vh;
}
@media (orientation: portrait) {
  .filtered-content__wrapper {
    padding-bottom: 9.2592592593vh;
  }
}
.filtered-content__offices {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.filtered-content__offices {
  gap: 6.7901234568vh;
}
@media (orientation: portrait) {
  .filtered-content__offices {
    gap: 4.0740740741vh;
  }
}
.filtered-content__officesList {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.filtered-content__office {
  opacity: 0.6;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.filtered-content__office.active {
  opacity: 1;
}
.filtered-content__office:hover {
  opacity: 1;
}
.filtered-content__separator {
  opacity: 0.6;
  margin: 0 10px;
}
.filtered-content__container {
  position: relative;
  display: flex;
  flex-direction: column;
}
.filtered-content__container {
  gap: 4.3209876543vh;
}
@media (orientation: portrait) {
  .filtered-content__container {
    gap: 3.4567901235vh;
  }
}
@media screen and (orientation: portrait) {
  .filtered-content__container {
    width: 95vw;
    margin: 0 auto;
    transform: translateX(-2.5vw);
  }
}
.filtered-content__projectGroup {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.filtered-content__projectGroup {
  gap: 4.3209876543vh;
}
@media (orientation: portrait) {
  .filtered-content__projectGroup {
    gap: 3.4567901235vh;
  }
}
.filtered-content__projectGroup:not(.active) {
  display: none;
}
.filtered-content__projectRow {
  display: flex;
  justify-content: center;
  gap: 4.3209876543vh 4.1666666667vw;
}
.filtered-content__projectRow--three {
  justify-content: center;
}
.filtered-content__projectRow--four {
  justify-content: space-between;
}
.filtered-content__project {
  width: 13.8888888889vw;
}
@media (orientation: portrait) {
  .filtered-content__project {
    width: 9.8765432099vh;
  }
}
@media screen and (orientation: portrait) {
  .filtered-content__project {
    width: 25%;
  }
}
.filtered-content__projectInner {
  width: 100%;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.filtered-content__projectInner {
  gap: 1.8518518519vh;
}
@media (orientation: portrait) {
  .filtered-content__projectInner {
    gap: 1.8518518519vh;
  }
}
.filtered-content__projectInner:is(a) {
  text-decoration: none;
  color: inherit;
  position: relative;
  overflow: hidden;
}
.filtered-content__projectInner:is(a) .filtered-content__projectImage::before,
.filtered-content__projectInner:is(a) .filtered-content__contentWrapper {
  opacity: 0;
}
.filtered-content__projectInner:is(a):hover .filtered-content__projectImage {
  transform: scale(1.05);
}
.filtered-content__projectInner:is(a):hover .filtered-content__projectImage::before {
  opacity: 0.8;
}
.filtered-content__projectInner:is(a):hover .filtered-content__contentWrapper {
  opacity: 1;
}
.filtered-content__projectImage {
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
  transition: all 0.35s ease-in-out;
}
.filtered-content__projectImage {
  height: 17.3611111111vw;
}
@media (orientation: portrait) {
  .filtered-content__projectImage {
    height: 12.3456790123vh;
  }
}
@media screen and (orientation: portrait) {
  .filtered-content__projectImage {
    height: 15vh;
  }
}
.filtered-content__projectInner:is(a) .filtered-content__projectImage::before {
  content: "";
  background: black;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: 1;
}
.filtered-content__projectInner:is(a) .filtered-content__projectImage::before {
  opacity: 0;
  background-color: var(--location-color, #232940);
  transition: all 0.35s ease-in-out;
}
.filtered-content__projectImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.filtered-content__projectInfo {
  display: flex;
  flex-direction: column;
  transition: all 0.35s ease-in-out;
}
.filtered-content__projectInfo {
  gap: 0.6172839506vh;
}
@media (orientation: portrait) {
  .filtered-content__projectInfo {
    gap: 0.6172839506vh;
  }
}
@media screen and (orientation: portrait) {
  .filtered-content__projectTitle {
    font-size: 3vw;
    line-height: 1.1;
  }
}
.filtered-content__projectExcerpt {
  opacity: 1;
}
.filtered-content__contentWrapper {
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 50%;
  color: #fff;
  text-align: center;
  top: 50%;
  width: 70%;
  z-index: 2;
  transform: translate(-50%, -50%);
  transition: all 0.35s ease-in-out;
}
.filtered-content__contentWrapper {
  gap: 0.6172839506vh;
}
@media (orientation: portrait) {
  .filtered-content__contentWrapper {
    gap: 0.6172839506vh;
  }
}

#page-portfolio {
  color: #181818;
  min-height: 100vh;
}
@media screen and (orientation: portrait) {
  #page-portfolio {
    padding-top: 5vh;
  }
}
@media screen and (orientation: portrait) {
  #page-portfolio .filtered-content__projectGroup {
    gap: 2.5vw;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
#page-portfolio .filtered-content__projectRow {
  gap: 2.0833333333vw;
}
#page-portfolio .filtered-content__project {
  width: calc(33% - 2.4305555556vw);
}
@media screen and (orientation: portrait) {
  #page-portfolio .filtered-content__project {
    width: 48%;
  }
}
#page-portfolio .filtered-content__projectImage {
  height: 31.25vw;
}
@media (orientation: portrait) {
  #page-portfolio .filtered-content__projectImage {
    height: 13.8888888889vh;
  }
}
@media screen and (orientation: portrait) {
  #page-portfolio .filtered-content__projectImage {
    height: 30vh;
  }
}
#page-portfolio .filtered-content__projectInfo {
  display: none;
}

.split {
  opacity: 0;
}
.split .word-wrapper {
  display: inline-block;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
.split .word-wrapper .word {
  display: inline-block;
  opacity: 0;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

.scale-anim,
.button {
  opacity: 0;
  transform: scale(0.93);
  transform-origin: bottom center;
}

.fade-anim {
  opacity: 0;
}

.img-anim {
  opacity: 0;
  transform: translateY(6px);
  filter: blur(6px);
  will-change: opacity, transform, filter;
}

.img-anim2 {
  opacity: 0;
  transform: scale(0.9);
  transform-origin: bottom center;
  will-change: opacity, transform;
}
@media screen and (orientation: portrait) {
  .img-anim2 {
    transform: scale(1);
  }
}

.drawy,
.rightLine,
.leftLine {
  transform-origin: top center;
  transform: scaleY(0);
  will-change: transform;
}

.drawx,
.topLine,
.bottomLine {
  transform-origin: center left;
  transform: scaleX(0);
  will-change: transform;
}

#page-policy {
  padding: 15vh 0;
  background-color: #53504b;
  color: #fff;
}
#page-policy h1,
#page-policy h2,
#page-policy h3,
#page-policy h4,
#page-policy h5,
#page-policy h6 {
  font-family: "Nobel";
  color: #fff;
}
#page-policy strong {
  text-decoration: underline;
}
#page-policy h1,
#page-policy h2,
#page-policy h3 {
  font-weight: 500;
}
#page-policy h2,
#page-policy h3 {
  text-transform: none;
}
#page-policy h1,
#page-policy h2 {
  margin-top: 3.7037037037vh;
}
@media (orientation: portrait) {
  #page-policy h1,
  #page-policy h2 {
    margin-top: 2.962962963vh;
  }
}
#page-policy h1,
#page-policy h2 {
  margin-bottom: 0.6172839506vh;
}
@media (orientation: portrait) {
  #page-policy h1,
  #page-policy h2 {
    margin-bottom: 0.6172839506vh;
  }
}
#page-policy h3 {
  margin-top: 2.4691358025vh;
}
@media (orientation: portrait) {
  #page-policy h3 {
    margin-top: 1.975308642vh;
  }
}
#page-policy h3 {
  margin-bottom: 0.6172839506vh;
}
@media (orientation: portrait) {
  #page-policy h3 {
    margin-bottom: 0.6172839506vh;
  }
}
#page-policy * {
  letter-spacing: normal;
}
#page-policy ul {
  list-style: auto;
}
#page-policy a,
#page-policy span {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}
#page-policy #cmplz-document {
  width: 100%;
  max-width: 100%;
}
#page-policy #cmplz-document .cmplz-dropdown * {
  color: #181818 !important;
}
#page-policy #cmplz-document .cmplz-contact-organisation,
#page-policy #cmplz-document .cmplz-contact-telephone {
  display: block;
}
#page-policy #cmplz-document .cmplz-contact-organisation,
#page-policy #cmplz-document .cmplz-contact-telephone {
  margin-bottom: 2.4691358025vh;
}
@media (orientation: portrait) {
  #page-policy #cmplz-document .cmplz-contact-organisation,
  #page-policy #cmplz-document .cmplz-contact-telephone {
    margin-bottom: 1.975308642vh;
  }
}

#page-home .intro {
  color: #fff;
  overflow: hidden;
  position: relative;
}
#page-home .intro__wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #232940;
}
#page-home .intro__backgroundWrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  overflow: hidden;
}
#page-home .intro__backgroundWrapper::before {
  content: "";
  background: black;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.25;
  z-index: 1;
}
#page-home .intro__backgroundWrapper picture,
#page-home .intro__backgroundWrapper img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: opacity 0.5s ease, transform 0.7s ease;
  opacity: 0;
}
#page-home .intro__backgroundWrapper picture:first-child,
#page-home .intro__backgroundWrapper img:first-child {
  opacity: 1;
}
#page-home .intro__colorOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.15s ease;
  pointer-events: none;
  z-index: 1;
}
#page-home .intro__locationsWrapper {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
@media screen and (orientation: portrait) {
  #page-home .intro__locationsWrapper {
    flex-direction: column;
  }
}
#page-home .intro__location {
  width: 50%;
  height: min-content;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s ease;
  cursor: pointer;
  padding: 16.049382716vh 3.4722222222vw;
  opacity: 0.6;
}
@media screen and (orientation: portrait) {
  #page-home .intro__location {
    width: 100%;
    height: 50vh;
  }
}
@media screen and (orientation: portrait) {
  #page-home .intro__location:first-child {
    padding-bottom: 5vw;
    align-items: flex-end;
  }
}
@media screen and (orientation: portrait) {
  #page-home .intro__location:last-child {
    padding-top: 5vw;
    align-items: flex-start;
  }
}
#page-home .intro__location.active {
  opacity: 1;
  transform: scale(1.075);
}
#page-home .intro__location.active h2 .intro__line {
  transform: scaleX(1);
}
#page-home .intro__location h2 {
  position: relative;
}
@media screen and (orientation: portrait) {
  #page-home .intro__location h2 {
    font-size: 14vw;
    line-height: 1;
  }
}
#page-home .intro__line {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  transform: scaleX(0);
  transition: all 0.35s ease-in-out;
  transition-duration: 0.5s;
  transform-origin: center center;
  background-color: #fff;
}

.design {
  position: relative;
}
.design {
  margin-bottom: 14.8148148148vh;
}
@media (orientation: portrait) {
  .design {
    margin-bottom: 5.9259259259vh;
  }
}
.design__wrapper {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: #181818;
}
.design__wrapper {
  height: 75.9259259259vh;
}
@media (orientation: portrait) {
  .design__wrapper {
    height: 18.9814814815vh;
  }
}
.design__wrapper {
  padding: 5.5555555556vh;
}
@media (orientation: portrait) {
  .design__wrapper {
    padding: 3.3333333333vh;
  }
}
@media screen and (orientation: portrait) {
  .design__wrapper {
    height: 85vh;
    background-position: 71% 0%;
  }
}
.design__content {
  width: 23.6111111111vw;
}
@media (orientation: portrait) {
  .design__content {
    width: 10.4938271605vh;
  }
}
@media screen and (orientation: portrait) {
  .design__content {
    width: 75%;
  }
}
.design__infos {
  width: fit-content;
  display: flex;
  flex-direction: column;
  position: relative;
}
.design__infos {
  margin-top: 3.7037037037vh;
}
@media (orientation: portrait) {
  .design__infos {
    margin-top: 2.962962963vh;
  }
}
.design__infos {
  padding-top: 1.8518518519vh;
}
@media (orientation: portrait) {
  .design__infos {
    padding-top: 1.8518518519vh;
  }
}
.design__infos {
  gap: 0.6172839506vh;
}
@media (orientation: portrait) {
  .design__infos {
    gap: 0.6172839506vh;
  }
}
.design__infoLine {
  background-color: #b7b2a3;
  position: absolute;
  left: 0;
  top: 0;
  height: 1.5px;
  width: 65%;
}
.design__name {
  font-weight: 400;
}

#page-about {
  --welcome-inline-image-width: 7.6388888889vw;
  --welcome-inline-image-width-portrait: 18vw;
}
#page-about .welcome {
  color: #232940;
}
#page-about .welcome__wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}
#page-about .welcome__wrapper {
  gap: 7.4074074074vh;
}
@media (orientation: portrait) {
  #page-about .welcome__wrapper {
    gap: 5.1851851852vh;
  }
}
#page-about .welcome__wrapper {
  padding-top: 7.4074074074vh;
}
@media (orientation: portrait) {
  #page-about .welcome__wrapper {
    padding-top: 5.1851851852vh;
  }
}
#page-about .welcome__wrapper {
  padding-bottom: 27.1604938272vh;
}
@media (orientation: portrait) {
  #page-about .welcome__wrapper {
    padding-bottom: 10.8641975309vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__title {
    height: 0;
    transform: translateY(-100vw);
    color: #fff;
  }
}
#page-about .welcome__centeredText {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
#page-about .welcome__centeredText {
  height: 92.5925925926vh;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText {
    height: 23.1481481481vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredText {
    height: 90vh;
  }
}
#page-about .welcome__centeredTextTitle {
  position: relative;
  z-index: 1;
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredTextTitle {
    line-height: 1.3;
    font-size: 9.0277777778vw;
    width: 100vw;
    padding: 0 2.5vw;
    padding-top: 10vw;
    flex: none;
  }
}
#page-about .welcome__centeredTextTitle .line-break {
  display: block;
}
#page-about .welcome__centeredTextTitle .line-break {
  height: 1.8518518519vh;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredTextTitle .line-break {
    height: 1.8518518519vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredTextTitle .line-break {
    height: 0.5vh;
    display: none;
  }
}
#page-about .welcome__centeredTextImages {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
#page-about .welcome__centeredTextImagesInner {
  position: relative;
  width: 100%;
  height: 100%;
}
#page-about .welcome__centeredText-inline-image {
  display: inline;
  object-fit: contain;
  width: 0;
}
#page-about .welcome__centeredText-inline-image {
  height: 7.4074074074vh;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-inline-image {
    height: 5.1851851852vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredText-inline-image {
    height: 5vh;
    width: 18vw !important;
    opacity: 0;
  }
}
#page-about .welcome__centeredText-inline-image--first {
  vertical-align: bottom;
}
#page-about .welcome__centeredText-inline-image--second {
  vertical-align: top;
}
#page-about .welcome__centeredText-image {
  object-fit: contain;
  position: absolute;
}
#page-about .welcome__centeredText-image--one {
  left: 0;
}
#page-about .welcome__centeredText-image--one {
  top: 12.3456790123vh;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-image--one {
    top: 4.9382716049vh;
  }
}
#page-about .welcome__centeredText-image--one {
  width: 20.8333333333vw;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-image--one {
    width: 9.2592592593vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredText-image--one {
    width: 30vw;
    top: 0;
  }
}
#page-about .welcome__centeredText-image--two {
  right: 0;
}
#page-about .welcome__centeredText-image--two {
  top: 37.037037037vh;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-image--two {
    top: 9.2592592593vh;
  }
}
#page-about .welcome__centeredText-image--two {
  width: 18.75vw;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-image--two {
    width: 13.3333333333vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredText-image--two {
    width: 40vw;
    top: 4vh;
  }
}
#page-about .welcome__centeredText-image--three {
  left: 50%;
  transform: translateX(-50%);
}
#page-about .welcome__centeredText-image--three {
  bottom: -6.1728395062vh;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-image--three {
    bottom: -6.1728395062vh;
  }
}
#page-about .welcome__centeredText-image--three {
  width: 15.9722222222vw;
}
@media (orientation: portrait) {
  #page-about .welcome__centeredText-image--three {
    width: 11.3580246914vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .welcome__centeredText-image--three {
    width: 40vw;
    bottom: -5vh;
  }
}

#page-about .list {
  color: #181818;
}
#page-about .list__wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}
#page-about .list__wrapper {
  gap: 6.1728395062vh;
}
@media (orientation: portrait) {
  #page-about .list__wrapper {
    gap: 3.7037037037vh;
  }
}
#page-about .list__wrapper {
  padding-top: 19.7530864198vh;
}
@media (orientation: portrait) {
  #page-about .list__wrapper {
    padding-top: 7.9012345679vh;
  }
}
#page-about .list__wrapper {
  padding-bottom: 37.037037037vh;
}
@media (orientation: portrait) {
  #page-about .list__wrapper {
    padding-bottom: 9.2592592593vh;
  }
}
#page-about .list__intro {
  display: flex;
  flex-direction: column;
  text-align: center;
  margin: 0 auto;
}
#page-about .list__intro {
  gap: 2.4691358025vh;
}
@media (orientation: portrait) {
  #page-about .list__intro {
    gap: 1.975308642vh;
  }
}
#page-about .list__intro {
  width: 33.6805555556vw;
}
@media (orientation: portrait) {
  #page-about .list__intro {
    width: 14.9691358025vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .list__intro {
    width: 100%;
  }
}

#page-about .process {
  color: #181818;
  position: relative;
}
#page-about .process {
  margin-top: 16.049382716vh;
}
@media (orientation: portrait) {
  #page-about .process {
    margin-top: 6.4197530864vh;
  }
}
#page-about .process {
  margin-bottom: 16.049382716vh;
}
@media (orientation: portrait) {
  #page-about .process {
    margin-bottom: 6.4197530864vh;
  }
}
#page-about .process__wrapper {
  display: flex;
}
@media screen and (orientation: portrait) {
  #page-about .process__wrapper {
    flex-direction: column-reverse;
    height: auto;
  }
}
#page-about .process__title {
  position: absolute;
}
#page-about .process__title {
  top: 12.3456790123vh;
}
@media (orientation: portrait) {
  #page-about .process__title {
    top: 4.9382716049vh;
  }
}
#page-about .process__title {
  left: 11.8055555556vw;
}
@media (orientation: portrait) {
  #page-about .process__title {
    left: 8.3950617284vh;
  }
}
#page-about .process__col {
  height: 100%;
  display: flex;
  width: 50%;
  flex-direction: column;
  position: relative;
  margin: auto;
}
@media screen and (orientation: portrait) {
  #page-about .process__col {
    width: 100%;
  }
}
#page-about .process__col--texts {
  height: 100vh;
  overflow: auto;
}
#page-about .process__col--texts {
  padding-top: 37.037037037vh;
}
@media (orientation: portrait) {
  #page-about .process__col--texts {
    padding-top: 9.2592592593vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .process__col--texts {
    height: 70vh;
  }
}
#page-about .process__col--texts .process__col--textsInner {
  width: 100%;
  display: flex;
  flex-direction: column;
  height: auto;
}
#page-about .process__col--texts .process__col--textsInner {
  padding-left: 11.8055555556vw;
}
@media (orientation: portrait) {
  #page-about .process__col--texts .process__col--textsInner {
    padding-left: 8.3950617284vh;
  }
}
#page-about .process__col--texts .process__col--textsInner {
  padding-right: 6.9444444444vw;
}
@media (orientation: portrait) {
  #page-about .process__col--texts .process__col--textsInner {
    padding-right: 4.9382716049vh;
  }
}
#page-about .process__col--texts .process__col--textsInner {
  gap: 9.8765432099vh;
}
@media (orientation: portrait) {
  #page-about .process__col--texts .process__col--textsInner {
    gap: 4.4444444444vh;
  }
}
@media screen and (orientation: portrait) {
  #page-about .process__col--texts .process__col--textsInner {
    width: 90vw;
    margin: 0 auto;
    padding: 0 5vw;
  }
}
#page-about .process__col--image {
  align-items: center;
  justify-content: center;
}
@media screen and (orientation: portrait) {
  #page-about .process__col--image {
    height: 30vh;
  }
}
#page-about .process__textItem {
  display: flex;
  flex-direction: column;
  transition: all 0.35s ease-in-out;
  opacity: 0.3;
}
#page-about .process__textItem {
  gap: 2.4691358025vh;
}
@media (orientation: portrait) {
  #page-about .process__textItem {
    gap: 1.975308642vh;
  }
}
#page-about .process__textItem.active {
  opacity: 1;
  transform: translate(-3.4722222222vw, 0.6172839506vh);
}
@media screen and (orientation: portrait) {
  #page-about .process__itemText {
    font-size: 4vw;
    line-height: 1.2;
  }
}
#page-about .process__indexRow {
  cursor: pointer;
  display: flex;
  position: relative;
  z-index: 1;
}
#page-about .process__index {
  color: #fff;
  transition: all 0.35s ease-in-out;
  opacity: 0.3;
}
#page-about .process__index.active {
  opacity: 1;
}
#page-about .process__index.active:not(:last-child) {
  margin-right: 1.3888888889vw;
}
@media (orientation: portrait) {
  #page-about .process__index.active:not(:last-child) {
    margin-right: 1.975308642vh;
  }
}
#page-about .process__imageItem {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
#page-about .process__imageItem::before {
  content: "";
  background: black;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.9;
  z-index: 1;
}
#page-about .process__imageItem::before {
  background-color: #232940;
}
#page-about .process__imageItem img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#page-portfolio {
  min-height: 100vh;
}
#page-portfolio .list__wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}
#page-portfolio .list__wrapper {
  gap: 6.1728395062vh;
}
@media (orientation: portrait) {
  #page-portfolio .list__wrapper {
    gap: 3.7037037037vh;
  }
}
#page-portfolio .list__wrapper {
  padding-top: 19.7530864198vh;
}
@media (orientation: portrait) {
  #page-portfolio .list__wrapper {
    padding-top: 7.9012345679vh;
  }
}
#page-portfolio .list__wrapper {
  padding-bottom: 9.8765432099vh;
}
@media (orientation: portrait) {
  #page-portfolio .list__wrapper {
    padding-bottom: 4.4444444444vh;
  }
}

#single-project {
  display: flex;
  flex-direction: column;
  gap: 6.7901234568vh 0;
}
@media screen and (orientation: portrait) {
  #single-project {
    gap: 5vw 0;
  }
}
#single-project .cover {
  z-index: 1;
  color: #fff;
  overflow: hidden;
  position: relative;
}
#single-project .cover__wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (orientation: portrait) {
  #single-project .cover__wrapper {
    height: 100svh;
  }
}
#single-project .cover__backgroundWrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}
#single-project .cover__backgroundWrapper::before {
  content: "";
  background: black;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.3;
  z-index: 1;
}
#single-project .cover__backgroundWrapper picture,
#single-project .cover__backgroundWrapper img {
  object-position: center;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
#single-project .cover__content {
  position: absolute;
  text-align: center;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#single-project .cover__title {
  margin-bottom: 1.2345679012vh;
}
@media (orientation: portrait) {
  #single-project .cover__title {
    margin-bottom: 1.2345679012vh;
  }
}
@media screen and (orientation: portrait) {
  #single-project .cover__title {
    font-size: 18vw;
    line-height: 1.1;
  }
}

.next-project__contentWrapper {
  display: block;
}
.next-project__contentWrapper {
  margin-top: 3.0864197531vh;
}
@media (orientation: portrait) {
  .next-project__contentWrapper {
    margin-top: 2.4691358025vh;
  }
}
.next-project__contentWrapper {
  margin-bottom: 9.2592592593vh;
}
@media (orientation: portrait) {
  .next-project__contentWrapper {
    margin-bottom: 6.4814814815vh;
  }
}
.next-project__contentWrapper:hover .next-project__label {
  color: #dcdcdc;
  transform: translateX(5px);
}
.next-project__label {
  transition: all 0.35s ease-in-out;
  text-align: right;
}

#page-inquire .start__intro {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
#page-inquire .start__intro {
  gap: 3.7037037037vh;
}
@media (orientation: portrait) {
  #page-inquire .start__intro {
    gap: 2.962962963vh;
  }
}
#page-inquire .start__intro {
  padding-top: 29.6296296296vh;
}
@media (orientation: portrait) {
  #page-inquire .start__intro {
    padding-top: 11.8518518519vh;
  }
}
#page-inquire .start__intro {
  padding-bottom: 16.049382716vh;
}
@media (orientation: portrait) {
  #page-inquire .start__intro {
    padding-bottom: 6.4197530864vh;
  }
}
@media screen and (orientation: portrait) {
  #page-inquire .start__intro {
    padding-top: 15vh;
    text-align: center;
  }
}
#page-inquire .start__intro .button {
  margin-top: 1.8518518519vh;
}
@media (orientation: portrait) {
  #page-inquire .start__intro .button {
    margin-top: 1.8518518519vh;
  }
}
#page-inquire .start__locations {
  display: flex;
  justify-content: space-between;
}
#page-inquire .start__location {
  display: flex;
  flex-direction: column;
}
#page-inquire .start__location {
  gap: 0.6172839506vh;
}
@media (orientation: portrait) {
  #page-inquire .start__location {
    gap: 0.6172839506vh;
  }
}
@media screen and (orientation: portrait) {
  #page-inquire .start__location {
    width: 50%;
  }
}
@media screen and (orientation: portrait) {
  #page-inquire .start__location:last-child {
    text-align: right;
    padding-left: 5vw;
  }
}
@media screen and (orientation: portrait) {
  #page-inquire .start__location p {
    font-size: 3.5vw;
    line-height: 1.2;
  }
}
#page-inquire .start__location p:last-child {
  line-height: 1.5;
}
#page-inquire .start__locationName {
  margin-bottom: 1.8518518519vh;
}
@media (orientation: portrait) {
  #page-inquire .start__locationName {
    margin-bottom: 1.8518518519vh;
  }
}
#page-inquire .start__fullImage {
  margin-top: 6.1728395062vh;
}
@media (orientation: portrait) {
  #page-inquire .start__fullImage {
    margin-top: 3.7037037037vh;
  }
}

#page-press .explain__wrapper {
  color: #232940;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}
#page-press .explain__wrapper {
  gap: 3.7037037037vh;
}
@media (orientation: portrait) {
  #page-press .explain__wrapper {
    gap: 2.962962963vh;
  }
}
#page-press .explain__wrapper {
  padding-top: 29.6296296296vh;
}
@media (orientation: portrait) {
  #page-press .explain__wrapper {
    padding-top: 11.8518518519vh;
  }
}
#page-press .explain__wrapper {
  padding-bottom: 16.049382716vh;
}
@media (orientation: portrait) {
  #page-press .explain__wrapper {
    padding-bottom: 6.4197530864vh;
  }
}

#page-press .review__wrapper {
  color: #232940;
  display: flex;
}
@media screen and (orientation: portrait) {
  #page-press .review__wrapper {
    flex-direction: column;
  }
}
#page-press .review__col {
  display: flex;
  flex-direction: column;
}
#page-press .review__col {
  height: 76.5432098765vh;
}
@media (orientation: portrait) {
  #page-press .review__col {
    height: 19.1358024691vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .review__col {
    height: auto;
  }
}
#page-press .review__col--image {
  width: 44.4444444444vw;
}
@media (orientation: portrait) {
  #page-press .review__col--image {
    width: 19.7530864198vh;
  }
}
#page-press .review__col--image {
  margin-left: 2.0833333333vw;
}
@media (orientation: portrait) {
  #page-press .review__col--image {
    margin-left: 2.962962963vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .review__col--image {
    margin-left: unset;
    width: 100%;
  }
}
#page-press .review__col--image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
#page-press .review__col--content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#page-press .review__col--content {
  gap: 1.8518518519vh;
}
@media (orientation: portrait) {
  #page-press .review__col--content {
    gap: 1.8518518519vh;
  }
}
#page-press .review__col--content {
  width: 34.7222222222vw;
}
@media (orientation: portrait) {
  #page-press .review__col--content {
    width: 15.4320987654vh;
  }
}
#page-press .review__col--content {
  margin-left: 5.2083333333vw;
}
@media (orientation: portrait) {
  #page-press .review__col--content {
    margin-left: 6.4814814815vh;
  }
}
#page-press .review__col--content {
  padding-bottom: 12.3456790123vh;
}
@media (orientation: portrait) {
  #page-press .review__col--content {
    padding-bottom: 4.9382716049vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .review__col--content {
    width: 100%;
    margin-left: unset;
    text-align: center;
    gap: 0;
    padding-top: 10vw;
  }
}
#page-press .review__bottomContent {
  display: flex;
  flex-direction: column;
  position: relative;
}
#page-press .review__bottomContent {
  margin-top: 1.8518518519vh;
}
@media (orientation: portrait) {
  #page-press .review__bottomContent {
    margin-top: 1.8518518519vh;
  }
}
#page-press .review__bottomContent {
  padding-top: 3.0864197531vh;
}
@media (orientation: portrait) {
  #page-press .review__bottomContent {
    padding-top: 2.4691358025vh;
  }
}
#page-press .review__bottomContent {
  gap: 0.6172839506vh;
}
@media (orientation: portrait) {
  #page-press .review__bottomContent {
    gap: 0.6172839506vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .review__bottomContent {
    gap: 2vw 0;
    padding-top: 0vw;
  }
}
#page-press .review__bottomSubtitle {
  text-transform: none !important;
}
#page-press .review__smallLine {
  width: 15%;
  position: absolute;
  left: 0;
  top: 0;
  height: 1px;
  background-color: #232940;
}
@media screen and (orientation: portrait) {
  #page-press .review__smallLine {
    width: 100%;
  }
}

#page-press .publications__wrapper {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
}
#page-press .publications__wrapper {
  gap: 2.0833333333vw;
}
@media (orientation: portrait) {
  #page-press .publications__wrapper {
    gap: 2.962962963vh;
  }
}
#page-press .publications__wrapper {
  padding-top: 14.8148148148vh;
}
@media (orientation: portrait) {
  #page-press .publications__wrapper {
    padding-top: 5.9259259259vh;
  }
}
#page-press .publications__wrapper {
  padding-bottom: 14.8148148148vh;
}
@media (orientation: portrait) {
  #page-press .publications__wrapper {
    padding-bottom: 5.9259259259vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .publications__wrapper {
    gap: 5vw 0;
  }
}
#page-press .publications__wrapper::after {
  content: "";
  width: calc(25% - 2.0833333333vw);
}
@media screen and (orientation: portrait) {
  #page-press .publications__wrapper::after {
    width: calc(50% - 2.5vw);
  }
}
#page-press .publications__publication {
  display: block;
  position: relative;
  overflow: hidden;
  width: calc(25% - 2.0833333333vw);
}
#page-press .publications__publication {
  height: 37.037037037vh;
}
@media (orientation: portrait) {
  #page-press .publications__publication {
    height: 9.2592592593vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .publications__publication {
    width: calc(50% - 2.5vw);
    height: auto;
  }
}
#page-press .publications__publication:hover .publications__imageWrapper {
  transform: scale(1.05);
}
#page-press .publications__publication:hover .publications__imageWrapper::before {
  opacity: 0.7;
}
#page-press .publications__publication:hover .publications__contentWrapper {
  opacity: 1;
}
#page-press .publications__imageWrapper {
  height: 100%;
  width: 100%;
  position: relative;
  transition: all 0.35s ease-in-out;
}
#page-press .publications__imageWrapper::before {
  content: "";
  background: black;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.7;
  z-index: 1;
}
#page-press .publications__imageWrapper::before {
  opacity: 0;
  background-color: #232940;
  transition: all 0.35s ease-in-out;
}
#page-press .publications__imageWrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#page-press .publications__contentWrapper {
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 50%;
  color: #fff;
  text-align: center;
  top: 50%;
  width: 70%;
  z-index: 2;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: all 0.35s ease-in-out;
}
#page-press .publications__contentWrapper {
  gap: 0.6172839506vh;
}
@media (orientation: portrait) {
  #page-press .publications__contentWrapper {
    gap: 0.6172839506vh;
  }
}
@media screen and (orientation: portrait) {
  #page-press .publications__contentWrapper .t-25 {
    font-size: 5.5vw;
    line-height: 1.2;
  }
}
