/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* 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 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * 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;
  margin: 0.67em 0;
}

/* 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;
}

/**
 * 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 {
  border-style: none;
}

/* 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;
}

/**
 * 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 */
  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.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  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;
}

/* Project's base / utilities (pre-minified turned readable) */

*, :after, :before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  outline: none;
}

:active, :after:active, :after:focus, :before:active, :before:focus, :focus {
  outline: none !important;
}

:focus ::ms-value {
  color: inherit;
  background: none;
}

::moz-focus-inner {
  border: none !important;
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote,
body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt,
em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6,
header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu,
nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike,
strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u,
ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}

div {
  vertical-align: top;
}

body {
  -ms-scroll-chaining: none;
  overscroll-behavior: none;
}

a {
  color: inherit;
  text-decoration: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu,
nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q { quotes: none; }
blockquote:after, blockquote:before, q:after, q:before { content: ""; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

img, svg, video { max-width: 100%; vertical-align: top; }

@font-face {
  font-family: Maxeville;
  font-style: normal;
  font-weight: 400;
  font-display: auto;
  src: url(../fonts/Maxeville/SMMaxeville-Regular.woff2) format("woff2"),
       url(../fonts/Maxeville/SMMaxeville-Regular.woff) format("woff"),
       url(../fonts/Maxeville/SMMaxeville-Regular.eot) format("eot"),
       url(../fonts/Maxeville/SMMaxeville-Regular.ttf) format("truetype");
}

@font-face {
  font-family: MaxevilleMono;
  font-style: normal;
  font-weight: 400;
  font-display: auto;
  src: url(../fonts/Maxeville/MaxevilleMono-Regular.woff2) format("woff2"),
       url(../fonts/Maxeville/MaxevilleMono-Regular.woff) format("woff"),
       url(../fonts/Maxeville/MaxevilleMono-Regular.eot) format("eot");
}

@font-face {
  font-family: MaxevilleTekst;
  font-style: normal;
  font-weight: 400;
  font-display: auto;
  src: url(../fonts/Maxeville/Maxeville-Tekst.woff2) format("woff2"),
       url(../fonts/Maxeville/Maxeville-Tekst.woff) format("woff"),
       url(../fonts/Maxeville/Maxeville-Tekst.eot) format("eot");
}

.clearfix:after {
  clear: both;
  content: "";
  display: table;
}

.container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.hide { display: none !important; }

@media (min-width: 768px) {
  .hide--desktop { display: none !important; }
}

@media (max-width: 767px) {
  .desktop, .hide--mobile { display: none !important; }
}

@media (min-width: 768px) {
  .mobile { display: none !important; }
}

.image img { width: 100%; height: auto; }
.image.cover img { height: 100%; -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; }
.image.contain img { height: 100%; -o-object-fit: contain; object-fit: contain; -o-object-position: center; object-position: center; }
.icon svg { width: 100%; height: 100%; }

.flex { display: -webkit-box; display: -ms-flexbox; display: flex; }
.flex.center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.flex.wrap { -ms-flex-wrap: wrap; flex-wrap: wrap; }
.flex.direction--column { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
.flex.direction--reverse { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
.flex.justify--start { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
.flex.justify--center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.flex.justify--end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; }
.flex.justify--between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.flex.align--start { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.flex.align--center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.flex.align--end { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }
.flex.align--stretch { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
.flex.align--baseline { -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; }

.grid { display: grid; }
.auto { margin-right: auto; margin-left: auto; }
.uppercase { text-transform: uppercase; }
.text--left { text-align: left; }
.text--center { text-align: center; }
.text--right { text-align: right; }

html { font-family: Maxeville, Helvetica, Arial, sans-serif; }
body { overflow-x: hidden; }


.header { position: fixed; bottom: 0; left: 0; z-index: 999; width: 100%; background: #fff; -webkit-box-shadow: 0 -5px 30px 30px #fff; box-shadow: 0 -5px 30px 30px #fff; pointer-events: none; -webkit-transition: background .2s ease, -webkit-transform .4s ease, -webkit-box-shadow .2s ease; transition: background .2s ease, -webkit-transform .4s ease, -webkit-box-shadow .2s ease; transition: transform .4s ease, background .2s ease, box-shadow .2s ease; transition: transform .4s ease, background .2s ease, box-shadow .2s ease, -webkit-transform .4s ease, -webkit-box-shadow .2s ease;}

.header__container { display: grid; grid-template-columns: repeat(3, 1fr);}

.header .main-title {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: Maxeville;
  font-weight: 400;
  font-style: normal;
  font-size: 1.875vw;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: lowercase;
  grid-column: span 1;
}

@media (max-width: 1024px) {
  .header .main-title { font-size: 2.34375vw; }
}

@media (max-width: 767px) and (orientation: portrait) {
  .header .main-title { font-size: 5.33vw; }
}

@media (max-width: 767px) and (orientation: landscape) {
  .header .main-title { font-size: 3.2vw; }
}

@media (max-width: 1024px) {
  .header .main-title { line-height: 1.35; letter-spacing: 0; }
}

@media (max-width: 767px) {
  .header .main-title { line-height: 1.35; letter-spacing: 0; display: flex; align-items: center; margin: auto;}
}

.header .link { display: -webkit-box; display: -ms-flexbox; display: flex; width: -webkit-fit-content; width: -moz-fit-content; width: fit-content; pointer-events: all; }
.header .link .script { display: block; -webkit-transform: translateZ(0) rotate(0); transform: translateZ(0) rotate(0); -webkit-transition: -webkit-transform .4s ease; transition: -webkit-transform .4s ease; transition: transform .4s ease; transition: transform .4s ease, -webkit-transform .4s ease; }

@media (min-width: 768px) {
  .header .link:hover .script { -webkit-transform: translate3d(0, .2em, 0) rotate(180deg); transform: translate3d(0, .2em, 0) rotate(180deg); }
}


.header .nav { grid-column: span 2;}

.header .menu { display: grid; grid-template-columns: repeat(2, 1fr); }

.header .menu .item,
.header .main-title { padding: 0 1.5625vw 1.5625vw;}

.header .main-title { width: 100%;}

.header .menu .item {
  font-family: Maxeville;
  font-weight: 400;
  font-style: normal;
  font-size: 1.875vw;
  line-height: 1.35;
  letter-spacing: 0;
  -webkit-transition: color .2s ease;
  transition: color .2s ease;
}

@media (max-width: 1024px) {
  .header .menu .item,
  .header .main-title { padding: 0 1.95312vw 1.95312vw; }
}

@media (max-width: 767px) and (orientation: portrait) {
  .header .menu .item,
  .header .main-title { padding: 2.66667vw; }
}

@media (max-width: 767px) and (orientation: landscape) {
  .header .menu .item,
  .header .main-title { padding: 1.33333vw; }
}

@media (max-width: 1024px) {
  .header .menu .item { font-size: 2.34375vw; }
}

@media (max-width: 767px) and (orientation: portrait) {
  .header .menu .item { font-size: 5.33vw; }
}

@media (max-width: 767px) and (orientation: landscape) {
  .header .menu .item { font-size: 3.2vw; }
}

@media (max-width: 1024px) {
  .header .menu .item { line-height: 1.35; letter-spacing: 0; }
}

@media (max-width: 767px) {
  .header .item { color: #949494;}
  .header .menu .item { line-height: 1.35; letter-spacing: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }
}

.header .menu .item:last-child .link:after { display: none; }
.header .menu .item .link { display: block; width: 100%; pointer-events: all; }

@media (max-width: 767px) {
  .header .menu .item .link { position: relative; pointer-events: all; text-align: center;}
}

.header .menu .item .link:after { bottom: 0; }

@media (max-width: 1024px) {
  .header .menu .item .link:after { bottom: 0; }
}

@media (max-width: 767px) and (orientation: portrait) {
  .header .menu .item .link:after { bottom: -2.66667vw; }
}

@media (max-width: 767px) and (orientation: landscape) {
  .header .menu .item .link:after { bottom: -1.33333vw; }
}


.page-template-home .header .menu .item .link:after { display: none; }

@media (max-width: 767px) {
  .page-template-home .header .main-title { color: #000000;}
  .page-template-home .header .menu .item .link, .show-menu .header .menu .item .link { pointer-events: all; }
}

.header .menu .item .word { opacity: 0; -webkit-transition: opacity .2s ease; transition: opacity .2s ease; }

.page-template-home .header .menu .item .word { opacity: 1; }

.header .menu .item .arrow { position: relative; opacity: 0; -webkit-transition: padding .2s ease, opacity .2s ease; transition: padding .2s ease, opacity .2s ease; }
.header .menu .item .arrow:before { content: " "; white-space: pre; }


.header .menu .item:hover .arrow, .header .menu .item:hover .word { opacity: 1; }
.header .menu .item:hover .arrow { padding-left: .3em; }


.header .menu .item.hover .arrow { opacity: 1; padding-left: .3em; }

@media (max-width: 767px) {
	.header .menu .item .word { opacity: 1;}
  	.header .menu .item .arrow { display: none;}
}

.page-template-about .header .menu .item--about .word,
.post-type-archive-project .header .menu .item--projects .word,
.single-project .header .menu .item--projects .word { opacity: 1; }


@media (max-width: 767px) {
  .page-template-about .header .menu .item--about,
  .post-type-archive-project .header .menu .item--projects,
  .single-project .header .menu .item--projects { color: #000000;}
  .page-template-about .header .menu .item--about .word,
  .post-type-archive-project .header .menu .item--projects .word,
  .single-project .header .menu .item--projects .word { display: inline;}
}

.post-type-archive-post .header .menu .item--journal .word,
.single-post .header .menu .item--journal .word { opacity: 1; }

@media (max-width: 767px) {
  .page-template-home .header { opacity: 1; pointer-events: all; }
}

.show-menu .header { opacity: 1; pointer-events: all; }
.post-type-archive-post .header { background: #e0e0e0; -webkit-box-shadow: 0 -5px 30px 30px #e0e0e0; box-shadow: 0 -5px 30px 30px #e0e0e0; }

.animate { opacity: 0; -webkit-transform: translate3d(0, 2.34375vw, 0); transform: translate3d(0, 2.34375vw, 0); }

@media (max-width: 767px) {
  .animate { -webkit-transform: translate3d(0, 4vw, 0); transform: translate3d(0, 4vw, 0); }
}

.visible { opacity: 1; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition: opacity 1s ease, -webkit-transform 1s ease; transition: opacity 1s ease, -webkit-transform 1s ease; transition: opacity 1s ease, transform 1s ease; transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease; }

.burger { position: fixed; top: 1.5625vw; right: 1.5625vw; width: 1.875vw; height: 1.71875vw; opacity: 1; pointer-events: all; cursor: pointer; -webkit-transition: opacity .4s ease; transition: opacity .4s ease; }

@media (max-width: 1024px) { .burger { top: 1.95312vw; } }
@media (max-width: 767px) and (orientation: portrait) { .burger { top: 5.33333vw; } }
@media (max-width: 767px) and (orientation: landscape) { .burger { top: 2.66667vw; } }
@media (max-width: 1024px) { .burger { right: 1.95312vw; } }
@media (max-width: 767px) and (orientation: portrait) { .burger { right: 5.33333vw; } }
@media (max-width: 767px) and (orientation: landscape) { .burger { right: 2.66667vw; } }
@media (max-width: 1024px) { .burger { width: 2.34375vw; } }
@media (max-width: 767px) and (orientation: portrait) { .burger { width: 6.4vw; } }
@media (max-width: 767px) and (orientation: landscape) { .burger { width: 3.2vw; } }
@media (max-width: 1024px) { .burger { height: 2.14844vw; } }
@media (max-width: 767px) and (orientation: portrait) { .burger { height: 5.86667vw; } }
@media (max-width: 767px) and (orientation: landscape) { .burger { height: 2.93333vw; } }
@media (min-width: 768px) { .burger { display: none; } }

.burger .line { position: absolute; left: 0; display: block; width: 100%; height: 2px; border-radius: 2px; background: #000; opacity: 1; -webkit-transform: rotate(0); transform: rotate(0); -webkit-transition: .2s ease-in-out; transition: .2s ease-in-out; }

@media (max-width: 767px) { .burger .line { height: 2px; } }
.burger .line--1 { top: 0; }
.burger .line--2 { top: .85938vw; opacity: 1; }

@media (max-width: 1024px) { .burger .line--2 { top: 1.07422vw; } }
@media (max-width: 767px) and (orientation: portrait) { .burger .line--2 { top: 2.93333vw; } }
@media (max-width: 767px) and (orientation: landscape) { .burger .line--2 { top: 1.46667vw; } }
.burger .line--3 { top: 1.71875vw; }

@media (max-width: 1024px) { .burger .line--3 { top: 2.14844vw; } }
@media (max-width: 767px) and (orientation: portrait) { .burger .line--3 { top: 5.86667vw; } }
@media (max-width: 767px) and (orientation: landscape) { .burger .line--3 { top: 2.93333vw; } }

.show-menu .burger .line--1 { top: .85938vw; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
@media (max-width: 1024px) { .show-menu .burger .line--1 { top: 1.07422vw; } }
@media (max-width: 767px) and (orientation: portrait) { .show-menu .burger .line--1 { top: 2.93333vw; } }
@media (max-width: 767px) and (orientation: landscape) { .show-menu .burger .line--1 { top: 1.46667vw; } }

.show-menu .burger .line--2 { opacity: 0; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.show-menu .burger .line--3 { top: .85938vw; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

@media (max-width: 1024px) { .show-menu .burger .line--3 { top: 1.07422vw; } }
@media (max-width: 767px) and (orientation: portrait) { .show-menu .burger .line--3 { top: 2.93333vw; } }
@media (max-width: 767px) and (orientation: landscape) { .show-menu .burger .line--3 { top: 1.46667vw; } }

.page-template-home .burger { opacity: 0; pointer-events: none; }

@media (max-width: 767px) { #cmplz-cookiebanner-container { display: none !important; } }

#cmplz-cookiebanner-container .cmplz-cookiebanner { width: 100% !important; padding: .9375vw 1.5625vw; margin: 0 !important; }
@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner { padding: 1.17188vw 1.95312vw; } }
@media (max-width: 767px) and (orientation: portrait) { #cmplz-cookiebanner-container .cmplz-cookiebanner { padding: 3.2vw 5.33333vw; } }
@media (max-width: 767px) and (orientation: landscape) { #cmplz-cookiebanner-container .cmplz-cookiebanner { padding: 1.6vw 2.66667vw; } }
@media (max-width: 767px) { #cmplz-cookiebanner-container .cmplz-cookiebanner { display: block !important; height: 52vw !important; } }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header { display: none !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body { width: 100%; max-width: 66.17188vw; }
@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body { max-width: 82.71484vw; } }
@media (max-width: 767px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body { max-width: unset; } }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message {
  margin-bottom: 0;
  font-family: MaxevilleTekst;
  font-weight: 400;
  font-style: normal;
  font-size: .9375vw;
  line-height: 1.4;
  letter-spacing: .002em;
}

@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin-bottom: 0; } }
@media (max-width: 767px) and (orientation: portrait) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin-bottom: 16vw; } }
@media (max-width: 767px) and (orientation: landscape) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin-bottom: 8vw; } }
@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { font-size: 1.17188vw; } }
@media (max-width: 767px) and (orientation: portrait) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { font-size: 3.2vw; } }
@media (max-width: 767px) and (orientation: landscape) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { font-size: 1.6vw; } }
@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { line-height: 1.4; letter-spacing: .002em; } }
@media (max-width: 767px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { line-height: 1.4; letter-spacing: .002em; } }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a { text-decoration: underline; -webkit-transition: opacity .2s ease; transition: opacity .2s ease; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a:hover { opacity: .6; }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons {
  font-family: MaxevilleTekst;
  font-weight: 400;
  font-style: normal;
  font-size: .9375vw;
  line-height: 1.4;
  letter-spacing: .002em;
}

@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { font-size: 1.17188vw; } }
@media (max-width: 767px) and (orientation: portrait) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { font-size: 3.2vw; } }
@media (max-width: 767px) and (orientation: landscape) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { font-size: 1.6vw; } }
@media (max-width: 1024px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { line-height: 1.4; letter-spacing: .002em; } }
@media (max-width: 767px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { line-height: 1.4; letter-spacing: .002em; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; } }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn { min-width: unset !important; font-size: inherit !important; -webkit-transition: opacity .2s ease; transition: opacity .2s ease; }

@media (max-width: 767px) { #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn { width: auto !important; height: auto !important; padding: 0 !important; } }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn:hover { opacity: .6; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links.cmplz-documents { display: none !important; }

.archive { background-color: #E6E6E6;}
.archive .header { background: #E6E6E6; box-shadow: 0 -5px 30px 30px #E6E6E6;}

/* content-loading [ NUEVO ] */
.content-loading { opacity: 0; pointer-events: none; position: fixed; top: 0; left: 0; z-index: 9000; width: 100%; height: 100%; background-color: #fff; display: flex; align-items: center; justify-content: center; animation: fadeout 2s 3.5s ease forwards;}
.content-loading .content-loading-txt { width: 46.875vw; font-family: Maxeville; font-weight: 400; font-style: normal; font-size: 1.875vw; line-height: 1.35; letter-spacing: 0; text-align: center;}

/* LANDING VIVIENDA [ NUEVO ] */

.landing { position: relative; padding: 6.25vw 0 10.9375vw;}

.landing-text { margin-bottom: 6.25vw; padding: 0 1.5625vw; display: flex; flex-direction: row; gap: 9.6vw;}
.landing-text .landing-text-left { width: 12.5vw; min-height: 100%; flex-shrink: 0;}
.landing-text .landing-text-left .landing-text-left-in { position: sticky; top: 6.25vw;}
.landing-text .landing-text-left .title { display: block; font-family: Maxeville; font-weight: 400; font-style: normal; font-size: 1.875vw; line-height: 1.35; letter-spacing: 0; text-transform: lowercase;}
.landing-text .landing-text-right { margin-left: 2.34375vw;}
.landing-text .landing-text-right .text { display: inline; font-family: Maxeville; font-weight:400; font-style:normal; font-size:1.40625vw; line-height:1.35em; letter-spacing:0;}
.landing-text .landing-text-right .text * { display: inline;}
.landing-text .landing-text-right .text .en { color: #949494;}

@media (max-width: 1024px) { 
  .landing { padding: 10.15625vw 0 13.67188vw;}
  .landing-text { padding: 0 1.5625vw; gap: 13vw;}
  .landing-text .landing-text-left { width: 15.625vw;}
  .landing-text .landing-text-left .landing-text-left-in { top: 10.15625vw;}
  .landing-text .landing-text-left .title { font-size: 2.34375vw; line-height: 1.35; letter-spacing: 0;}
  .landing-text .landing-text-right { width: auto;}
  .landing-text .landing-text-right .text { font-size: 2.34375vw;}
}

@media (max-width: 767px) { 
  .landing { padding: 10.667vw 0 21.333vw;}
  .landing-text { padding: 0 3.2vw; flex-direction: column; gap: 4.172vw;}
  .landing-text .landing-text-left { margin: 0; width: 100%; min-height: none;}
  .landing-text .landing-text-left .title { line-height: 1.35; letter-spacing: 0; display: flex; align-items: center; margin: auto;}
  .landing-text .landing-text-right { margin-left: 0;}

}

@media (max-width: 767px) and (orientation: portrait) { 
  .landing-text .landing-text-left .title { font-size: 5.33vw; }
  .landing-text .landing-text-right .text { font-size:6.4vw;}

}
@media (max-width: 767px) and (orientation: landscape) { 
  .landing-text .landing-text-left .title,
  .landing-text .landing-text-right .text { font-size: 3.2vw;}

}

.landing-contact { margin-top: 6.25vw; padding: 0 1.5625vw; display: flex; flex-direction: row; flex-wrap: wrap; row-gap: 3.125vw;}
.landing-contact .contact { width: 33.333%; padding-right: 1.875vw; font-family:MaxevilleMono; font-weight:400; font-style:normal; font-size:.85938vw; line-height:1.4; letter-spacing:0}
.landing-contact .contact .title { display: flex; flex-direction: row; gap: 0.3125vw;}
.landing-contact .contact .title .en { color: #949494;}

@media (max-width:1024px) {
  .landing-contact { padding: 0 1.5625vw;}
  .landing-contact .contact { font-size: 1.07422vw }
}

@media (max-width: 767px) { 
  .landing-contact { padding: 0 3.2vw;}
  .landing-contact .contact { width: 50%; font-size:2.93333vw}
}

/* Módulo archive-project */

.project {
	margin-bottom:2.34375vw
}

@media (max-width:1024px) {
	.project {
	margin-bottom:2.92969vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project {
	margin-bottom:4vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project {
	margin-bottom:2vw
}
}

.project__header {
	padding: 0 1.5625vw;
	display: block;
}

@media (max-width:1024px) {
	.project__header {
	padding:0 1.95312vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header {
	padding:0 3.2vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header {
	padding:0 1.6vw
}
}

.project__header .row {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	justify-content: space-between;
	padding-top: 1.2vw;
	border-top:1px solid #000;
	font-family:MaxevilleMono;
	font-weight:400;
	font-style:normal;
	font-size:1.09375vw;
	line-height:1.35;
	letter-spacing:-0.03em
}

@media (max-width:1024px) {
	.project__header .row {
	padding-top:.97656vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .row {
	padding-top:4vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .row {
	padding-top:.93333vw
}
}

@media (max-width:1024px) {
	.project__header .row {
	font-size:1.36719vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .row {
	font-size:3.2vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .row {
	font-size:1.6vw
}
}

@media (max-width:1024px) {
	.project__header .row {
	line-height:1.35;
	letter-spacing:0
}
}

@media (max-width:767px) {
	.project__header .row {
	line-height:1.35;
	letter-spacing:0;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap
}
}

.project__header .title-info {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	margin-right:1.40625vw;
	cursor:pointer
}

@media (max-width:1024px) {
	.project__header .title-info {
	margin-right:1.75781vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .title-info {
	margin-right:0
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .title-info {
	margin-right:0
}
}

@media (max-width:767px) {
	.project__header .title-info {
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-ms-flex-direction:column;
	flex-direction:column
}
}

.project__header .title {
	display:inline;
	width:39.45312vw;
	margin-right:9.76562vw;
	font-family:Maxeville;
	font-weight:400;
	font-style:normal;
	font-size:1.40625vw;
	line-height:1.35;
	letter-spacing:0
}

@media (max-width:1024px) {
	.project__header .title {
	width:49.31641vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .title {
	width:134.66667vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .title {
	width:67.33333vw
}
}

@media (max-width:1024px) {
	.project__header .title {
	margin-right:12.20703vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .title {
	margin-right:0
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .title {
	margin-right:0
}
}

@media (max-width:1024px) {
	.project__header .title {
	font-size:1.75781vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .title {
	font-size:4.8vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .title {
	font-size:2.4vw
}
}

@media (max-width:1024px) {
	.project__header .title {
	line-height:1.35;
	letter-spacing:0
}
}

@media (max-width:767px) {
	.project__header .title {
	line-height:1.35;
	letter-spacing:0;
	-webkit-box-ordinal-group:3;
	-ms-flex-order:2;
	order:2;
	width:100%
}
}

.project__header .title .es {
	display:inline
}

.project__header .title .es:after {
	content:"."
}

.project__header .title .en {
	display:inline;
	color:#949494
}

.project__header .title .en:after {
	content:"."
}

.project__header .info {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	margin-bottom:0
}

.project__header .info .location {
	display: inline;
}
.project__header .info .location .es,
.project__header .info .location .en {
	display: inline;
}

.project__header .info .location .es::after,
.project__header .info .location .en::after {
	content:".";
}

.project__header .info .location .en {
	color: #949494;
}

@media (max-width:1024px) {
	.project__header .info {
	margin-bottom:0
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .info {
	margin-bottom:4.8vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .info {
	margin-bottom:2.4vw
}
}

@media (max-width:767px) {
	.project__header .info {
	-webkit-box-ordinal-group:2;
	-ms-flex-order:1;
	order:1;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	width:100%
}
}

.project__header .location {
	width:30vw;
}

@media (max-width:1024px) {
	.project__header .location {
	width:28.80859vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .location {
	width:78.66667vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .location {
	width:39.33333vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .location {
	padding-right:0
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .location {
	padding-right:0
}
}

@media (max-width:767px) {
	.project__header .location {
	width:auto
}
}

.project__header .year {
	width:5.46875vw;
	margin-right:7.57812vw
}

@media (max-width:1024px) {
	.project__header .year {
	width:6.83594vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .year {
	width:18.66667vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .year {
	width:9.33333vw
}
}

@media (max-width:1024px) {
	.project__header .year {
	margin-right:9.47266vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__header .year {
	margin-right:0
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__header .year {
	margin-right:0
}
}

@media (max-width:767px) {
	.project__header .year {
	width:auto
}
}


.project__content .gallery {
	padding-top: 1.2vw;
}

@media (max-width:1024px) {
	.project__content .gallery {
	padding-top:1.17188vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__content .gallery {
	padding-top:4vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__content .gallery {
	padding-top:5.46667vw
}
}

.project__content .gallery .scroll {
	position:relative;
	top:0!important;
	left:0!important;
	width:100%;
	overflow-x:auto;
	cursor:move;
	cursor:grab;
	cursor:-webkit-grab
}

.project__content .gallery .scroll:active {
	cursor:grabbing;
	cursor:-webkit-grabbing
}

.project__content .gallery .scroll::-webkit-scrollbar {
	display:none
}

.project__content .gallery .scroll__container {
	white-space:nowrap
}

.project__content .gallery .scroll img {
	display:inline;
	width:auto
}

.project__content .gallery .scroll__container {
	height:17.03125vw
}

@media (max-width:1024px) {
	.project__content .gallery .scroll__container {
	height:21.28906vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__content .gallery .scroll__container {
	height:72.8vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__content .gallery .scroll__container {
	height:36.4vw
}
}

.project__content .gallery .scroll img {
	height:100%;
	margin-right:1.17188vw
}

@media (max-width:1024px) {
	.project__content .gallery .scroll img {
	margin-right:1.46484vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__content .gallery .scroll img {
	margin-right:3.73333vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__content .gallery .scroll img {
	margin-right:1.86667vw
}
}

.project__content .gallery .scroll img:first-child {
	margin-left:1.5625vw
}

@media (max-width:1024px) {
	.project__content .gallery .scroll img:first-child {
	margin-left:1.95312vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__content .gallery .scroll img:first-child {
	margin-left:2.66667vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__content .gallery .scroll img:first-child {
	margin-left:1.33333vw
}
}

.project__content .gallery .scroll img:last-child {
	margin-right:1.17188vw
}

@media (max-width:1024px) {
	.project__content .gallery .scroll img:last-child {
	margin-right:1.46484vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project__content .gallery .scroll img:last-child {
	margin-right:3.73333vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project__content .gallery .scroll img:last-child {
	margin-right:1.86667vw
}
}

@media (max-width:767px) {
	.project .button--desktop {
	display:none
}
}

.project .button--mobile {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:end;
	-ms-flex-pack:end;
	justify-content:flex-end;
	width:100%;
	padding:1.40625vw .78125vw 0
}

@media (max-width:1024px) {
	.project .button--mobile {
	padding:1.75781vw .97656vw 0
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project .button--mobile {
	padding:4.8vw 2.66667vw 0
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project .button--mobile {
	padding:2.4vw 1.33333vw 0
}
}

@media (min-width:768px) {
	.project .button--mobile {
	display:none
}
}

.project .view-more {
	position:relative;
	right:.2em;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:end;
	-ms-flex-pack:end;
	justify-content:flex-end;
	width:10.15625vw;
	font-family:MaxevilleMono;
	font-weight:400;
	font-style:normal;
	font-size:1.09375vw;
	line-height:1.35;
	letter-spacing:-0.03em
}

@media (max-width:1024px) {
	.project .view-more {
	width:12.69531vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project .view-more {
	width:34.66667vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project .view-more {
	width:17.33333vw
}
}

@media (max-width:1024px) {
	.project .view-more {
	font-size:1.36719vw
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project .view-more {
	font-size:3.2vw
}
}

@media (max-width:767px) and (orientation:landscape) {
	.project .view-more {
	font-size:1.6vw
}
}

@media (max-width:1024px) {
	.project .view-more {
	line-height:1.35;
	letter-spacing:0;
	display: none;
}
}

@media (max-width:767px) {
	.project .view-more {
	line-height:1.35;
	letter-spacing:0;
	display: flex;
}
}

.project .project__header .view-more .arrow {
	position: absolute;
	top: 0;
	right: 0;
	-webkit-transition:-webkit-transform .2s ease;
	transition:-webkit-transform .2s ease;
	transition:transform .2s ease;
	transition:transform .2s ease, -webkit-transform .2s ease
}

@media (min-width:768px) {
	.project .project__header:hover .view-more .arrow {
	-webkit-transform:translateX(.2em);
	transform:translateX(.2em)
}
}

.project .view-more {
	cursor:pointer;
}
.project .view-more .label {
	margin-right: 1.5625vw;
}

@media (max-width:1024px) {
	.project .view-more {
	padding-right:1.95312vw;
}
}

@media (max-width:767px) and (orientation:portrait) {
	.project .view-more {
	padding-right:5.33333vw
}

.project .view-more .label {
		margin-right: 2.1333333333vw;
	}
}

@media (max-width:767px) and (orientation:landscape) {
	.project .view-more {
	padding-right:2.66667vw
}
}

.project .view-more p {
	display:none
}

.project.open .project__content {
	display:block
}

.project.soon .arrow {
	display:none
}

.project.soon p {
	display:block
}