@charset "UTF-8";
/*

Reset styles are based on the great work of Eric Meyer http://meyerweb.com/eric/tools/css/reset/ 
and Nicolas Gallagher & Jonathan Neal http://necolas.github.io/normalize.css/

http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)

normalize.css v3.0.1 | MIT License | git.io/normalize

*/
/*  ---------------------------------------

    GRID          

---------------------------------------- */
/* 
	  Responsive CSS Framework
    Copyright © 2012 Aline Keller - www.alinekeller.ch 
    This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) - http://creativecommons.org/licenses/by-sa/4.0/
*/
/* Column = 15px / Gutter = 10px => 310px */
.wrapper,
.wrapper-narrow,
.contentcenter {
  margin-left: auto;
  margin-right: auto;
  overflow: visible;
  position: relative;
  padding: 0 10px;
  width: 96%;
}
@media screen and (min-width: 30em) {
  .wrapper,
  .wrapper-narrow,
  .contentcenter {
    width: 90%;
  }
}
@media screen and (min-width: 48em) {
  .wrapper,
  .wrapper-narrow,
  .contentcenter {
    padding: 0 15px;
    width: 675px;
  }
}
@media screen and (min-width: 64em) {
  .wrapper,
  .wrapper-narrow,
  .contentcenter {
    padding-left: 20px;
    padding-right: 20px;
    width: 980px;
  }
}
@media screen and (min-width: 79em) {
  .wrapper,
  .wrapper-narrow,
  .contentcenter {
    padding-left: 30px;
    padding-right: 30px;
    width: 1230px;
  }
}
.grid {
  margin-left: -5px;
  margin-right: -5px;
}
@supports (display: flex) {
  .grid:after {
    content: none;
  }
}
@media screen and (min-width: 48em) {
  .grid {
    display: flex;
    flex-wrap: wrap;
    place-content: center;
    margin-left: -7px;
    margin-right: -8px;
  }
}
@media screen and (min-width: 64em) {
  .grid {
    margin-left: -10px;
    margin-right: -10px;
  }
}
@media screen and (min-width: 79em) {
  .grid {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.col {
  clear: both;
  float: none;
  margin: 0 0 10px;
  padding-left: 5px;
  padding-right: 5px;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 48em) {
  .col {
    clear: none;
    float: left;
    padding-left: 7px;
    padding-right: 8px;
  }
}
@media screen and (min-width: 64em) {
  .col {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (min-width: 79em) {
  .col {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.col.right {
  float: right;
}

.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11 {
  clear: none;
  float: left;
}

.col-xs-1 {
  width: 8.33343%;
}

.col-xs-2 {
  width: 16.6667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.3334%;
}

.col-xs-5 {
  width: 41.6667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.3334%;
}

.col-xs-8 {
  width: 66.6667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.3334%;
}

.col-xs-11 {
  width: 91.6667%;
}

.col-xs-12 {
  width: 100%;
}

/*  -----------------------------------------------------------

	Media Queries - Mobile phones (> 480px)

	Column = 25px / Gutter = 10px => 430px

------------------------------------------------------------ */
@media screen and (min-width: 30em) {
  .col-s-1,
  .col-s-2,
  .col-s-3,
  .col-s-4,
  .col-s-5,
  .col-s-6,
  .col-s-7,
  .col-s-8,
  .col-s-9,
  .col-s-10,
  .col-s-11 {
    clear: none;
    float: left;
  }
  .col-s-1 {
    width: 8.3334%;
  }
  .col-s-2 {
    width: 16.6667%;
  }
  .col-s-3 {
    width: 25%;
  }
  .col-s-4 {
    width: 33.3334%;
  }
  .col-s-5 {
    width: 41.6667%;
  }
  .col-s-6 {
    width: 50%;
  }
  .col-s-7 {
    width: 58.3334%;
  }
  .col-s-8 {
    width: 66.6667%;
  }
  .col-s-9 {
    width: 75%;
  }
  .col-s-10 {
    width: 83.3334%;
  }
  .col-s-11 {
    width: 91.6667%;
  }
  .col-s-12 {
    width: 100%;
  }
  .offset-1 {
    margin-left: 8.3334%;
  }
  .offset-2 {
    margin-left: 16.6667%;
  }
  .offset-3 {
    margin-left: 25%;
  }
  .offset-4 {
    margin-left: 33.3334%;
  }
  .offset-5 {
    margin-left: 41.6667%;
  }
  .offset-6 {
    margin-left: 50%;
  }
  .offset-7 {
    margin-left: 58.3334%;
  }
  .offset-8 {
    margin-left: 66.6667%;
  }
  .offset-9 {
    margin-left: 75%;
  }
  .offset-10 {
    margin-left: 83.3334%;
  }
  .offset-11 {
    margin-left: 91.6667%;
  }
}
/*  -----------------------------------------------------------

	Media Queries - Small desktop & vertical tablets (> 768px)

	Column = 40px (* 12) / Gutter = 15px (* 13) => 675px

------------------------------------------------------------ */
@media screen and (min-width: 48em) {
  .col12,
  .col-m-12,
  .col-l-12,
  .col-xl-12 {
    clear: both;
    float: none;
  }
  /* Columns width */
  .col1 {
    width: 8.3334%;
  }
  .col2 {
    width: 16.6667%;
  }
  .col3 {
    width: 25%;
  }
  .col4 {
    width: 33.3334%;
  }
  .col5 {
    width: 41.6667%;
  }
  .col6 {
    width: 50%;
  }
  .col7 {
    width: 58.3334%;
  }
  .col8 {
    width: 66.6667%;
  }
  .col9 {
    width: 75%;
  }
  .col10 {
    width: 83.3334%;
  }
  .col11 {
    width: 91.6667%;
  }
  .col12 {
    width: 100%;
  }
  .col-m-1 {
    width: 8.33344%;
  }
  .col-m-2 {
    width: 16.6667%;
  }
  .col-m-3 {
    width: 25%;
  }
  .col-m-4 {
    width: 33.3334%;
  }
  .col-m-5 {
    width: 41.6667%;
  }
  .col-m-6 {
    width: 50%;
  }
  .col-m-7 {
    width: 58.3334%;
  }
  .col-m-8 {
    width: 66.6667%;
  }
  .col-m-9 {
    width: 75%;
  }
  .col-m-10 {
    width: 83.3334%;
  }
  .col-m-11 {
    width: 91.6667%;
  }
  .col-m-12 {
    width: 100%;
  }
  /* Offset */
  .offset-m-1 {
    margin-left: 8.3334%;
  }
  .offset-m-2 {
    margin-left: 16.6667%;
  }
  .offset-m-3 {
    margin-left: 25%;
  }
  .offset-m-4 {
    margin-left: 33.3334%;
  }
  .offset-m-5 {
    margin-left: 41.6667%;
  }
  .offset-m-6 {
    margin-left: 50%;
  }
  .offset-m-7 {
    margin-left: 58.3334%;
  }
  .offset-m-8 {
    margin-left: 66.6667%;
  }
  .offset-m-9 {
    margin-left: 75%;
  }
  .offset-m-10 {
    margin-left: 83.3334%;
  }
  .offset-m-11 {
    margin-left: 91.6667%;
  }
}
/*  -----------------------------------------------------------

	Media Queries - Desktop > 1024px

	Column = 60px (* 12) / Gutter = 20px (* 13) => 980px

------------------------------------------------------------ */
@media screen and (min-width: 64em) {
  .col-l-1 {
    width: 8.33344%;
  }
  .col-l-2 {
    width: 16.6667%;
  }
  .col-l-3 {
    width: 25%;
  }
  .col-l-4 {
    width: 33.3334%;
  }
  .col-l-5 {
    width: 41.6667%;
  }
  .col-l-6 {
    width: 50%;
  }
  .col-l-7 {
    width: 58.3334%;
  }
  .col-l-8 {
    width: 66.6667%;
  }
  .col-l-9 {
    width: 75%;
  }
  .col-l-10 {
    width: 83.3334%;
  }
  .col-l-11 {
    width: 91.6667%;
  }
  .col-l-12 {
    width: 100%;
  }
  .offset-l-1 {
    margin-left: 8.3334%;
  }
  .offset-l-2 {
    margin-left: 16.6667%;
  }
  .offset-l-3 {
    margin-left: 25%;
  }
  .offset-l-4 {
    margin-left: 33.3334%;
  }
  .offset-l-5 {
    margin-left: 41.6667%;
  }
  .offset-l-6 {
    margin-left: 50%;
  }
  .offset-l-7 {
    margin-left: 58.3334%;
  }
  .offset-l-8 {
    margin-left: 66.6667%;
  }
  .offset-l-9 {
    margin-left: 75%;
  }
  .offset-l-10 {
    margin-left: 83.3334%;
  }
  .offset-l-11 {
    margin-left: 91.6667%;
  }
}
/*  -----------------------------------------------------------

	Media Queries - Desktop > 1264px

	Column = 70px (* 12) / Gutter = 30px (* 13) => 1230px

------------------------------------------------------------ */
@media screen and (min-width: 79em) {
  .col-xl-1 {
    width: 8.33343%;
  }
  .col-xl-2 {
    width: 16.6667%;
  }
  .col-xl-3 {
    width: 25%;
  }
  .col-xl-4 {
    width: 33.3334%;
  }
  .col-xl-5 {
    width: 41.6667%;
  }
  .col-xl-6 {
    width: 50%;
  }
  .col-xl-7 {
    width: 58.3334%;
  }
  .col-xl-8 {
    width: 66.6667%;
  }
  .col-xl-9 {
    width: 75%;
  }
  .col-xl-10 {
    width: 83.3334%;
  }
  .col-xl-11 {
    width: 91.6667%;
  }
  .col-xl-12 {
    width: 100%;
  }
  .offset-xl-1 {
    margin-left: 8.3334%;
  }
  .offset-xl-2 {
    margin-left: 16.6667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.3334%;
  }
  .offset-xl-5 {
    margin-left: 41.6667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.3334%;
  }
  .offset-xl-8 {
    margin-left: 66.6667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.3334%;
  }
  .offset-xl-11 {
    margin-left: 91.6667%;
  }
}
/*  -----------------------------------------------------------

	Media Queries - Desktop > 1440px

	Column = 80px (* 12) / Gutter = 30px (* 13) => 1280px

------------------------------------------------------------ */
@media screen and (min-width: 90em) {
  /*
    .col-xxl-1 { width: 8.33343%; }
    .col-xxl-2 { width: 16.6667%; }
    .col-xxl-3 { width: 25%; }
    .col-xxl-4 { width: 33.3334%; }
    .col-xxl-5 { width: 41.6667%; }
    .col-xxl-6 { width: 50%; }
    .col-xxl-7 { width: 58.3334%; }
    .col-xxl-8 { width: 66.6667%; }
    .col-xxl-9 { width: 75%; }
    .col-xxl-10 { width: 83.3334%; }
    .col-xxl-11 { width: 91.6667%; }
    .col-xxl-12 { width: 100%; }

    .offset-xxl-1   { margin-left: 8.3334%; }
    .offset-xxl-2   { margin-left: 16.6667%; }
    .offset-xxl-3   { margin-left: 25%; }
    .offset-xxl-4   { margin-left: 33.3334%; }
    .offset-xxl-5   { margin-left: 41.6667%; }
    .offset-xxl-6   { margin-left: 50%; }
    .offset-xxl-7   { margin-left: 58.3334%; }
    .offset-xxl-8   { margin-left: 66.6667%; }
    .offset-xxl-9   { margin-left: 75%; }
    .offset-xxl-10  { margin-left: 83.3334%; }
    .offset-xxl-11  { margin-left: 91.6667%; }
  */
}
/* Media queries */
/* Theme colors */
/* WP colors */
@font-face {
  font-family: "HelveticaNowText-Thin";
  src: url("/wp-content/themes/website/assets/font/396F9C_0_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_0_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_0_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_0_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_0_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-ThIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_1_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-ExtraLight";
  src: url("/wp-content/themes/website/assets/font/396F9C_2_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-XLtIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_3_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_3_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_3_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_3_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_3_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-Light";
  src: url("/wp-content/themes/website/assets/font/396F9C_4_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_4_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_4_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_4_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_4_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-LtIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_5_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_5_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_5_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_5_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_5_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-Regular";
  src: url("/wp-content/themes/website/assets/font/396F9C_6_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_6_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_6_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_6_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_6_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-It";
  src: url("/wp-content/themes/website/assets/font/396F9C_7_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_7_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_7_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_7_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_7_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-Medium";
  src: url("/wp-content/themes/website/assets/font/396F9C_8_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_8_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_8_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_8_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_8_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-MdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_9_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_9_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_9_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_9_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_9_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-Bold";
  src: url("/wp-content/themes/website/assets/font/396F9C_A_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_A_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_A_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_A_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_A_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-BdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_B_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_B_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_B_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_B_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_B_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-ExtraBold";
  src: url("/wp-content/themes/website/assets/font/396F9C_C_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_C_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_C_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_C_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_C_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-XBdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_D_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_D_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_D_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_D_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_D_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-Black";
  src: url("/wp-content/themes/website/assets/font/396F9C_E_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_E_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_E_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_E_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_E_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowText-BlkIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_F_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_F_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_F_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_F_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_F_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-XLt";
  src: url("/wp-content/themes/website/assets/font/396F9C_10_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_10_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_10_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_10_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_10_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-XLtIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_11_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_11_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_11_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_11_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_11_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-Light";
  src: url("/wp-content/themes/website/assets/font/396F9C_12_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_12_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_12_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_12_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_12_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-LtIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_13_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_13_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_13_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_13_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_13_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-Regular";
  src: url("/wp-content/themes/website/assets/font/396F9C_14_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_14_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_14_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_14_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_14_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-It";
  src: url("/wp-content/themes/website/assets/font/396F9C_15_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_15_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_15_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_15_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_15_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-Medium";
  src: url("/wp-content/themes/website/assets/font/396F9C_16_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_16_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_16_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_16_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_16_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-MdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_17_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_17_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_17_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_17_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_17_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-Bold";
  src: url("/wp-content/themes/website/assets/font/396F9C_18_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_18_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_18_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_18_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_18_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-BdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_19_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_19_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_19_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_19_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_19_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-ExtraBold";
  src: url("/wp-content/themes/website/assets/font/396F9C_1A_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1A_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1A_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1A_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1A_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowMicro-XBdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_1B_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1B_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1B_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1B_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1B_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Hair";
  src: url("/wp-content/themes/website/assets/font/396F9C_1C_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1C_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1C_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1C_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1C_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-HairIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_1D_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1D_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1D_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1D_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1D_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Th";
  src: url("/wp-content/themes/website/assets/font/396F9C_1E_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1E_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1E_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1E_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1E_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-ThIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_1F_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_1F_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_1F_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_1F_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_1F_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-XLt";
  src: url("/wp-content/themes/website/assets/font/396F9C_20_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_20_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_20_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_20_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_20_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-XLtIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_21_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_21_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_21_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_21_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_21_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Lt";
  src: url("/wp-content/themes/website/assets/font/396F9C_22_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_22_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_22_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_22_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_22_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-LtIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_23_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_23_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_23_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_23_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_23_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Regular";
  src: url("/wp-content/themes/website/assets/font/396F9C_24_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_24_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_24_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_24_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_24_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Italic";
  src: url("/wp-content/themes/website/assets/font/396F9C_25_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_25_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_25_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_25_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_25_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Bd";
  src: url("/wp-content/themes/website/assets/font/396F9C_26_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_26_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_26_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_26_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_26_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-BdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_27_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_27_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_27_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_27_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_27_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Md";
  src: url("/wp-content/themes/website/assets/font/396F9C_28_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_28_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_28_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_28_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_28_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-MdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_29_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_29_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_29_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_29_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_29_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-XBd";
  src: url("/wp-content/themes/website/assets/font/396F9C_2A_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2A_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2A_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2A_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2A_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-XBdIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_2B_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2B_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2B_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2B_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2B_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-Blk";
  src: url("/wp-content/themes/website/assets/font/396F9C_2C_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2C_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2C_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2C_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2C_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-BlkIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_2D_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2D_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2D_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2D_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2D_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-XBlk";
  src: url("/wp-content/themes/website/assets/font/396F9C_2E_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2E_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2E_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2E_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2E_0.ttf") format("truetype");
}
@font-face {
  font-family: "HelveticaNowDisplay-XBlkIt";
  src: url("/wp-content/themes/website/assets/font/396F9C_2F_0.eot");
  src: url("/wp-content/themes/website/assets/font/396F9C_2F_0.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/website/assets/font/396F9C_2F_0.woff2") format("woff2"), url("/wp-content/themes/website/assets/font/396F9C_2F_0.woff") format("woff"), url("/wp-content/themes/website/assets/font/396F9C_2F_0.ttf") format("truetype");
}
/*
@mixin icon-regular {
  @include icon;
  font-family: 'Font Awesome 5 Pro';
  font-weight: 400;
}
*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

.widget {
  margin: 0 0 1.5em;
}
.widget:last-child {
  margin-bottom: 0;
}
.widget {
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

/*
.post,
.page {
	margin: 0 0 1.5em;
}
*/
.updated:not(.published) {
  display: none;
}

/*
.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}
*/
.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.gallery-columns-2 .gallery-item {
  max-width: 50%;
}
.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
  max-width: 25%;
}
.gallery-columns-5 .gallery-item {
  max-width: 20%;
}
.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/* ------------------------------------------
 00 STRUCTURE
------------------------------------------ */
.wrapper:after {
  content: "";
  display: table;
  table-layout: fixed;
  clear: both;
}
.wrapper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.site {
  position: relative;
}

.wrapper-wide {
  overflow: visible;
  margin-left: auto;
  margin-right: auto;
  width: 92%;
}
@media screen and (min-width: 30em) {
  .wrapper-wide {
    width: 90%;
  }
}
@media screen and (min-width: 48em) {
  .wrapper-wide {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    width: 100%;
  }
}
@media screen and (min-width: 64em) {
  .wrapper-wide {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media screen and (min-width: 79em) {
  .wrapper-wide {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media screen and (min-width: 90em) {
  .wrapper-wide {
    padding-left: 3.5rem;
    padding-right: 3.5rem;
    max-width: 1640px;
  }
}

.wrapper-narrow {
  margin-left: auto;
  margin-right: auto;
  max-width: 970px;
}

#page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  position: relative;
}
#page .site-content {
  flex-grow: 1;
}
#page .site-footer {
  flex-shrink: 0;
}

/* ------------------------------------------
 01 BASE STYLES
------------------------------------------ */
/* Fonts */
/* Structure */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-family: "HelveticaNowText-Regular";
  font-weight: 400;
  position: relative;
  color: #000;
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}
html.no-scroll {
  overflow: hidden;
}

.site {
  position: relative;
}

section {
  position: relative;
  padding: 3rem 2rem;
}
@media screen and (min-width: 48em) {
  section {
    padding: 3rem 7.5%;
  }
}
@media screen and (min-width: 64em) {
  section {
    padding: 5rem 10%;
  }
}
section.page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 200px;
}
section.page header {
  position: relative;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  display: block;
  justify-content: space-between;
  padding-inline: 0;
}
section.page header h1 {
  color: black;
}

@media screen and (max-width: 1024px) {
  .section {
    min-height: auto !important;
    height: auto !important;
  }
}
.grecaptcha-badge {
  display: none;
}

/* Typography */
dd,
dt,
li,
p,
td,
th,
label,
input,
select,
textarea {
  font-family: "HelveticaNowText-Regular";
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.8em;
}
@media screen and (min-width: 64em) {
  dd,
  dt,
  li,
  p,
  td,
  th,
  label,
  input,
  select,
  textarea {
    font-size: 1.125rem;
  }
}
@media screen and (min-width: 79em) {
  dd,
  dt,
  li,
  p,
  td,
  th,
  label,
  input,
  select,
  textarea {
    font-size: 1.25rem;
  }
}

p {
  margin-bottom: 1em;
}
p:last-child {
  margin-bottom: 0;
}

p.lead {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4em;
  margin-bottom: 1.125em;
}
p.lead + p.lead {
  margin-top: 1.125em;
}

.c-btn a {
  text-transform: uppercase;
  font-family: "HelveticaNowDisplay-Bd";
  color: white;
  font-weight: normal;
  position: relative;
  width: fit-content;
  line-height: 1;
  font-size: 1.25rem;
}
@media screen and (min-width: 64em) {
  .c-btn a::after {
    content: "";
    background-color: white;
    height: 3px;
    position: absolute;
    left: 0;
    top: -2px;
    width: 0;
    transition: 0.3s;
  }
  .c-btn a::after {
    left: unset;
    right: 0;
    top: unset;
    bottom: -4px;
  }
  .c-btn a:hover {
    color: white;
  }
  .c-btn a:hover::before, .c-btn a:hover::after {
    width: 50%;
  }
}
.c-btn.c-black a {
  font-size: 1.25rem;
  color: black;
  font-family: "HelveticaNowText-Bold";
  font-weight: 900;
}
@media screen and (min-width: 64em) {
  .c-btn.c-black a::after {
    background-color: black;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  font-style: normal;
}

h1 {
  font-family: "HelveticaNowText-Light";
  font-weight: 400;
  font-size: 1.625em;
  text-transform: uppercase;
  color: white;
}

h2, .h2 {
  font-family: "HelveticaNowText-Bold";
  font-size: 1.75rem;
  text-transform: uppercase;
  margin-bottom: 2.5rem;
}

h3 {
  font-family: "HelveticaNowText-Bold";
  font-size: 1.375rem;
  margin-bottom: 1rem;
}

h4 {
  font-size: 1.25em;
}

h5,
h6 {
  font-size: 1.125em;
}

p + h1, p + h2, p + h3, p + h4, p + h5, p + h6,
ul + h1,
ul + h2,
ul + h3,
ul + h4,
ul + h5,
ul + h6,
ol + h1,
ol + h2,
ol + h3,
ol + h4,
ol + h5,
ol + h6,
blockquote + h1,
blockquote + h2,
blockquote + h3,
blockquote + h4,
blockquote + h5,
blockquote + h6,
img + h1,
img + h2,
img + h3,
img + h4,
img + h5,
img + h6,
figure + h1,
figure + h2,
figure + h3,
figure + h4,
figure + h5,
figure + h6,
.jetpack-video-wrapper + h1,
.jetpack-video-wrapper + h2,
.jetpack-video-wrapper + h3,
.jetpack-video-wrapper + h4,
.jetpack-video-wrapper + h5,
.jetpack-video-wrapper + h6 {
  clear: both;
  margin-top: 2em;
}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
  margin-bottom: 1.125em;
}

a {
  color: #000000;
  position: relative;
  transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, background-color 0.3s ease-in-out;
  font-weight: bold;
}
a:hover, a:active {
  color: #000000;
}
a:focus {
  color: #000000;
  outline-color: #000000;
}

/* Lists */
li {
  margin-bottom: 0.75em;
}
li:last-child {
  margin-bottom: 0;
}

ul li {
  padding-left: 1.5em;
  position: relative;
}

.nav li {
  padding: 0;
}
.nav li:before {
  display: none;
}

/* Accessibility */
.screen-reader-text,
.label {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  border: 0;
}

/* Forms */
label {
  display: block;
}
.form-item {
  margin-bottom: 1rem;
}

input[type=color],
input[type=date],
input[type=datetime],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week],
select,
textarea {
  border-radius: 0;
  border-color: #e0e0e0;
  height: 40px;
  line-height: 40px;
}
.btn,
.wp-block-button__link,
button,
input[type=submit],
input[type=button] {
  background-color: transparent;
  border: 1px solid #8c5932;
  border-radius: 0;
  color: #000;
  font-size: 1rem;
  font-weight: 700;
  height: 44px;
  line-height: 42px;
  text-transform: lowercase;
  text-align: center;
  transition: color 0.2s ease-in-out, border 0.3s ease-in-out, background-color 0.3s ease-in-out;
}
.btn:hover,
.wp-block-button__link:hover,
button:hover,
input[type=submit]:hover,
input[type=button]:hover, .btn:active,
.wp-block-button__link:active,
button:active,
input[type=submit]:active,
input[type=button]:active {
  background: #000000;
  border-color: #000000;
  color: #fff;
}
@media screen and (min-width: 64em) {
  .btn,
  .wp-block-button__link,
  button,
  input[type=submit],
  input[type=button] {
    font-size: 1.125rem;
    height: 50px;
    line-height: 50px;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (min-width: 79em) {
  .btn,
  .wp-block-button__link,
  button,
  input[type=submit],
  input[type=button] {
    font-size: 1.25rem;
    height: 56px;
    line-height: 56px;
  }
}

a.btn,
a.wp-block-button__link {
  display: inline-block;
  height: auto;
  line-height: 1.5em;
  padding-top: 9px;
  padding-bottom: 9px;
}
@media screen and (min-width: 64em) {
  a.btn,
  a.wp-block-button__link {
    padding-top: 11px;
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 79em) {
  a.btn,
  a.wp-block-button__link {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

textarea {
  height: auto;
}

fieldset.grid {
  border: 0;
  margin-left: -10px;
  margin-right: -10px;
  padding: 0;
}
fieldset.grid .form-item.col {
  padding: 0 10px;
}
fieldset.grid .inline-container.col12 {
  width: auto;
}

/* Social icons */
.list-socials {
  padding: 0;
}
.list-socials li {
  display: inline-block;
  margin: 0;
}
.list-socials li a {
  border: none;
  display: block;
  height: 32px !important;
  width: 32px !important;
  text-align: center;
}
.list-socials li a .label {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  border: 0;
}
.list-socials li a:before {
  font-family: "Font Awesome 6 Brands";
  font-size: 2rem;
  font-weight: normal;
  line-height: 2rem;
}
.list-socials li a[href*=facebook]:before {
  content: "\f082";
}
.list-socials li a[href*=instagram]:before {
  content: "\f16d";
}
.list-socials li a[href*=pinterest]:before {
  content: "\f231";
}
.list-socials li a[href*=twitter]:before {
  content: "\f099";
}
.list-socials li a[href*=youtube]:before {
  content: "\f167";
}
.list-socials li a[href*=vimeo]:before {
  content: "\f27d";
}
.list-socials li a[href*=linkedin]:before {
  content: "\f0e1";
}
.list-socials li a[href*=tiktok]:before {
  content: "\e07b";
}
.list-socials li a[href*=snapchat]:before {
  content: "\f2ac";
}
.list-socials li a[href*=github]:before {
  content: "\f09b";
}
.list-socials li a[href*=bitbucket]:before {
  content: "\f171";
}
.list-socials li a[href*=behance]:before {
  content: "\f1b4";
}
.list-socials li a[href*=dribbble]:before {
  content: "\f17d";
}
.list-socials li a[href*=spotify]:before {
  content: "\f1bc";
}
.list-socials li a[href*=deezer]:before {
  content: "\e077";
}
.list-socials li a[href*=itunes]:before, .list-socials li a[href*="music.apple"]:before {
  content: "\f3b4";
}
.list-socials li a[href*=goodreads]:before {
  content: "\f3a8";
}
.list-socials li a[href*=whatsapp]:before {
  content: "\f232";
}
.list-socials li a[href*=tumblr]:before {
  content: "\f174";
}
.list-socials li a[href*=yelp]:before {
  content: "\f1e9";
}
.list-socials li a[href*=tripadvisor]:before {
  content: "\f262";
}

/*  -----------------------------------------------------------
	Media Queries - Mobile phones (> 480px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Small desktop & vertical tablets (> 768px)
------------------------------------------------------------ */
@media screen and (min-width: 48em) {
  h1 {
    font-size: 1.75em;
  }
  h2, .h2 {
    font-size: 4rem;
  }
  h2.h2-text, .h2.h2-text {
    font-size: 3.5rem;
  }
}
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1024px
------------------------------------------------------------ */
@media screen and (min-width: 64em) {
  h1 {
    font-size: 2em;
  }
  h2, .h2 {
    font-size: 5rem;
    margin-bottom: 5rem;
  }
  h2.h2-text, .h2.h2-text {
    font-size: 4.5rem;
  }
  p.lead {
    font-size: 1.25rem;
  }
  textarea {
    padding: 14px;
  }
}
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1264px
------------------------------------------------------------ */
@media screen and (min-width: 79em) {
  dd,
  dt,
  li,
  p,
  td,
  th,
  .btn,
  .button,
  button,
  input,
  textarea,
  label {
    font-size: 1.25rem;
    line-height: 1.8em;
  }
  h1 {
    font-size: 2.25em;
  }
  h2, .h2 {
    font-size: 8rem;
    margin-bottom: 9rem;
  }
  h2.h2-text, .h2.h2-text {
    font-size: 6rem;
  }
  h3 {
    font-size: 1.625em;
  }
  h4 {
    font-size: 1.375em;
  }
  h5,
  h6 {
    font-size: 1.25em;
  }
  p.lead {
    font-size: 1.5rem;
  }
}
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1440px
------------------------------------------------------------ */
@media screen and (min-width: 125em) {
  p {
    font-size: 1.5rem;
  }
}
/* ------------------------------------------
 02 HEADER
------------------------------------------ */
.page-template-home header.scroll, .page-template-home header.scrolling-up, .page-template-page-nomines-laureats header.scroll, .page-template-page-nomines-laureats header.scrolling-up, .page-template-award header.scroll, .page-template-award header.scrolling-up, .page-template-register header.scroll, .page-template-register header.scrolling-up, .page-template-jury header.scroll, .page-template-jury header.scrolling-up, .page-template-cgu header.scroll, .page-template-cgu header.scrolling-up {
  background-color: white;
}
.page-template-home header.scroll .logo a, .page-template-home header.scrolling-up .logo a, .page-template-page-nomines-laureats header.scroll .logo a, .page-template-page-nomines-laureats header.scrolling-up .logo a, .page-template-award header.scroll .logo a, .page-template-award header.scrolling-up .logo a, .page-template-register header.scroll .logo a, .page-template-register header.scrolling-up .logo a, .page-template-jury header.scroll .logo a, .page-template-jury header.scrolling-up .logo a, .page-template-cgu header.scroll .logo a, .page-template-cgu header.scrolling-up .logo a {
  display: flex;
  width: fit-content;
  height: 100%;
}
.page-template-home header.scroll .logo a img, .page-template-home header.scrolling-up .logo a img, .page-template-page-nomines-laureats header.scroll .logo a img, .page-template-page-nomines-laureats header.scrolling-up .logo a img, .page-template-award header.scroll .logo a img, .page-template-award header.scrolling-up .logo a img, .page-template-register header.scroll .logo a img, .page-template-register header.scrolling-up .logo a img, .page-template-jury header.scroll .logo a img, .page-template-jury header.scrolling-up .logo a img, .page-template-cgu header.scroll .logo a img, .page-template-cgu header.scrolling-up .logo a img {
  margin-top: auto;
  margin-bottom: auto;
  margin-left: auto;
  margin-right: 30%;
}
.page-template-home header.scroll .logo .white, .page-template-home header.scrolling-up .logo .white, .page-template-page-nomines-laureats header.scroll .logo .white, .page-template-page-nomines-laureats header.scrolling-up .logo .white, .page-template-award header.scroll .logo .white, .page-template-award header.scrolling-up .logo .white, .page-template-register header.scroll .logo .white, .page-template-register header.scrolling-up .logo .white, .page-template-jury header.scroll .logo .white, .page-template-jury header.scrolling-up .logo .white, .page-template-cgu header.scroll .logo .white, .page-template-cgu header.scrolling-up .logo .white {
  display: none;
}
.page-template-home header.scroll .logo .black, .page-template-home header.scrolling-up .logo .black, .page-template-page-nomines-laureats header.scroll .logo .black, .page-template-page-nomines-laureats header.scrolling-up .logo .black, .page-template-award header.scroll .logo .black, .page-template-award header.scrolling-up .logo .black, .page-template-register header.scroll .logo .black, .page-template-register header.scrolling-up .logo .black, .page-template-jury header.scroll .logo .black, .page-template-jury header.scrolling-up .logo .black, .page-template-cgu header.scroll .logo .black, .page-template-cgu header.scrolling-up .logo .black {
  display: block;
}
.page-template-home header.scroll .burger span, .page-template-home header.scrolling-up .burger span, .page-template-page-nomines-laureats header.scroll .burger span, .page-template-page-nomines-laureats header.scrolling-up .burger span, .page-template-award header.scroll .burger span, .page-template-award header.scrolling-up .burger span, .page-template-register header.scroll .burger span, .page-template-register header.scrolling-up .burger span, .page-template-jury header.scroll .burger span, .page-template-jury header.scrolling-up .burger span, .page-template-cgu header.scroll .burger span, .page-template-cgu header.scrolling-up .burger span {
  background-color: black;
}
@media screen and (min-width: 64em) {
  .page-template-home header.scroll .nav-menu ul li a, .page-template-home header.scrolling-up .nav-menu ul li a, .page-template-page-nomines-laureats header.scroll .nav-menu ul li a, .page-template-page-nomines-laureats header.scrolling-up .nav-menu ul li a, .page-template-award header.scroll .nav-menu ul li a, .page-template-award header.scrolling-up .nav-menu ul li a, .page-template-register header.scroll .nav-menu ul li a, .page-template-register header.scrolling-up .nav-menu ul li a, .page-template-jury header.scroll .nav-menu ul li a, .page-template-jury header.scrolling-up .nav-menu ul li a, .page-template-cgu header.scroll .nav-menu ul li a, .page-template-cgu header.scrolling-up .nav-menu ul li a {
    text-transform: uppercase;
    color: black;
    font-family: "HelveticaNowText-Light";
    position: relative;
  }
  .page-template-home header.scroll .nav-menu ul li a::after, .page-template-home header.scrolling-up .nav-menu ul li a::after, .page-template-page-nomines-laureats header.scroll .nav-menu ul li a::after, .page-template-page-nomines-laureats header.scrolling-up .nav-menu ul li a::after, .page-template-award header.scroll .nav-menu ul li a::after, .page-template-award header.scrolling-up .nav-menu ul li a::after, .page-template-register header.scroll .nav-menu ul li a::after, .page-template-register header.scrolling-up .nav-menu ul li a::after, .page-template-jury header.scroll .nav-menu ul li a::after, .page-template-jury header.scrolling-up .nav-menu ul li a::after, .page-template-cgu header.scroll .nav-menu ul li a::after, .page-template-cgu header.scrolling-up .nav-menu ul li a::after {
    content: "";
    background-color: black;
    height: 3px;
    position: absolute;
    left: 0;
    top: -2px;
    width: 0;
    transition: 0.3s;
  }
  .page-template-home header.scroll .nav-menu ul li a::after, .page-template-home header.scrolling-up .nav-menu ul li a::after, .page-template-page-nomines-laureats header.scroll .nav-menu ul li a::after, .page-template-page-nomines-laureats header.scrolling-up .nav-menu ul li a::after, .page-template-award header.scroll .nav-menu ul li a::after, .page-template-award header.scrolling-up .nav-menu ul li a::after, .page-template-register header.scroll .nav-menu ul li a::after, .page-template-register header.scrolling-up .nav-menu ul li a::after, .page-template-jury header.scroll .nav-menu ul li a::after, .page-template-jury header.scrolling-up .nav-menu ul li a::after, .page-template-cgu header.scroll .nav-menu ul li a::after, .page-template-cgu header.scrolling-up .nav-menu ul li a::after {
    left: unset;
    right: 0;
    top: unset;
    bottom: -4px;
  }
  .page-template-home header.scroll .nav-menu ul li a:hover, .page-template-home header.scrolling-up .nav-menu ul li a:hover, .page-template-page-nomines-laureats header.scroll .nav-menu ul li a:hover, .page-template-page-nomines-laureats header.scrolling-up .nav-menu ul li a:hover, .page-template-award header.scroll .nav-menu ul li a:hover, .page-template-award header.scrolling-up .nav-menu ul li a:hover, .page-template-register header.scroll .nav-menu ul li a:hover, .page-template-register header.scrolling-up .nav-menu ul li a:hover, .page-template-jury header.scroll .nav-menu ul li a:hover, .page-template-jury header.scrolling-up .nav-menu ul li a:hover, .page-template-cgu header.scroll .nav-menu ul li a:hover, .page-template-cgu header.scrolling-up .nav-menu ul li a:hover {
    color: black;
  }
  .page-template-home header.scroll .nav-menu ul li a:hover::after, .page-template-home header.scrolling-up .nav-menu ul li a:hover::after, .page-template-page-nomines-laureats header.scroll .nav-menu ul li a:hover::after, .page-template-page-nomines-laureats header.scrolling-up .nav-menu ul li a:hover::after, .page-template-award header.scroll .nav-menu ul li a:hover::after, .page-template-award header.scrolling-up .nav-menu ul li a:hover::after, .page-template-register header.scroll .nav-menu ul li a:hover::after, .page-template-register header.scrolling-up .nav-menu ul li a:hover::after, .page-template-jury header.scroll .nav-menu ul li a:hover::after, .page-template-jury header.scrolling-up .nav-menu ul li a:hover::after, .page-template-cgu header.scroll .nav-menu ul li a:hover::after, .page-template-cgu header.scrolling-up .nav-menu ul li a:hover::after {
    width: 50%;
  }
  .page-template-home header.scroll .nav-menu .lang, .page-template-home header.scrolling-up .nav-menu .lang, .page-template-page-nomines-laureats header.scroll .nav-menu .lang, .page-template-page-nomines-laureats header.scrolling-up .nav-menu .lang, .page-template-award header.scroll .nav-menu .lang, .page-template-award header.scrolling-up .nav-menu .lang, .page-template-register header.scroll .nav-menu .lang, .page-template-register header.scrolling-up .nav-menu .lang, .page-template-jury header.scroll .nav-menu .lang, .page-template-jury header.scrolling-up .nav-menu .lang, .page-template-cgu header.scroll .nav-menu .lang, .page-template-cgu header.scrolling-up .nav-menu .lang {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1;
    width: 2.5rem;
    height: 2.5rem;
    background-color: black;
  }
  .page-template-home header.scroll .nav-menu .lang a, .page-template-home header.scrolling-up .nav-menu .lang a, .page-template-page-nomines-laureats header.scroll .nav-menu .lang a, .page-template-page-nomines-laureats header.scrolling-up .nav-menu .lang a, .page-template-award header.scroll .nav-menu .lang a, .page-template-award header.scrolling-up .nav-menu .lang a, .page-template-register header.scroll .nav-menu .lang a, .page-template-register header.scrolling-up .nav-menu .lang a, .page-template-jury header.scroll .nav-menu .lang a, .page-template-jury header.scrolling-up .nav-menu .lang a, .page-template-cgu header.scroll .nav-menu .lang a, .page-template-cgu header.scrolling-up .nav-menu .lang a {
    text-transform: uppercase;
    color: white;
    font-family: "HelveticaNowText-Regular";
  }
}
.page-template-home header .logo a, .page-template-page-nomines-laureats header .logo a, .page-template-award header .logo a, .page-template-register header .logo a, .page-template-jury header .logo a, .page-template-cgu header .logo a {
  display: flex;
  width: fit-content;
  height: 100%;
}
.page-template-home header .logo a img, .page-template-page-nomines-laureats header .logo a img, .page-template-award header .logo a img, .page-template-register header .logo a img, .page-template-jury header .logo a img, .page-template-cgu header .logo a img {
  margin-top: auto;
  margin-bottom: auto;
  margin-left: auto;
  margin-right: 30%;
}
.page-template-home header .logo .white, .page-template-page-nomines-laureats header .logo .white, .page-template-award header .logo .white, .page-template-register header .logo .white, .page-template-jury header .logo .white, .page-template-cgu header .logo .white {
  display: block;
}
.page-template-home header .logo .black, .page-template-page-nomines-laureats header .logo .black, .page-template-award header .logo .black, .page-template-register header .logo .black, .page-template-jury header .logo .black, .page-template-cgu header .logo .black {
  display: none;
}
.page-template-home header .burger span, .page-template-page-nomines-laureats header .burger span, .page-template-award header .burger span, .page-template-register header .burger span, .page-template-jury header .burger span, .page-template-cgu header .burger span {
  background-color: white;
}
@media screen and (min-width: 64em) {
  .page-template-home header .logo .white, .page-template-page-nomines-laureats header .logo .white, .page-template-award header .logo .white, .page-template-register header .logo .white, .page-template-jury header .logo .white, .page-template-cgu header .logo .white {
    display: block;
  }
  .page-template-home header .logo .black, .page-template-page-nomines-laureats header .logo .black, .page-template-award header .logo .black, .page-template-register header .logo .black, .page-template-jury header .logo .black, .page-template-cgu header .logo .black {
    display: none;
  }
  .page-template-home header .nav-menu, .page-template-page-nomines-laureats header .nav-menu, .page-template-award header .nav-menu, .page-template-register header .nav-menu, .page-template-jury header .nav-menu, .page-template-cgu header .nav-menu {
    position: relative;
    left: unset;
    top: unset;
    height: auto;
    width: unset;
    background-color: transparent;
    transition: 0s;
    display: flex;
    gap: 5vw;
    width: 60%;
    align-items: center;
    justify-content: flex-end;
  }
  .page-template-home header .nav-menu ul, .page-template-page-nomines-laureats header .nav-menu ul, .page-template-award header .nav-menu ul, .page-template-register header .nav-menu ul, .page-template-jury header .nav-menu ul, .page-template-cgu header .nav-menu ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 3rem;
    align-items: center;
  }
  .page-template-home header .nav-menu ul li, .page-template-page-nomines-laureats header .nav-menu ul li, .page-template-award header .nav-menu ul li, .page-template-register header .nav-menu ul li, .page-template-jury header .nav-menu ul li, .page-template-cgu header .nav-menu ul li {
    padding: 0;
    margin: 0;
    width: fit-content;
  }
  .page-template-home header .nav-menu ul li a, .page-template-page-nomines-laureats header .nav-menu ul li a, .page-template-award header .nav-menu ul li a, .page-template-register header .nav-menu ul li a, .page-template-jury header .nav-menu ul li a, .page-template-cgu header .nav-menu ul li a {
    text-transform: uppercase;
    color: white;
    font-family: "HelveticaNowText-Light";
    position: relative;
  }
  .page-template-home header .nav-menu ul li a::after, .page-template-page-nomines-laureats header .nav-menu ul li a::after, .page-template-award header .nav-menu ul li a::after, .page-template-register header .nav-menu ul li a::after, .page-template-jury header .nav-menu ul li a::after, .page-template-cgu header .nav-menu ul li a::after {
    content: "";
    background-color: white;
    height: 3px;
    position: absolute;
    left: 0;
    top: -2px;
    width: 0;
    transition: 0.3s;
  }
  .page-template-home header .nav-menu ul li a::after, .page-template-page-nomines-laureats header .nav-menu ul li a::after, .page-template-award header .nav-menu ul li a::after, .page-template-register header .nav-menu ul li a::after, .page-template-jury header .nav-menu ul li a::after, .page-template-cgu header .nav-menu ul li a::after {
    left: unset;
    right: 0;
    top: unset;
    bottom: -4px;
  }
  .page-template-home header .nav-menu ul li a:hover, .page-template-page-nomines-laureats header .nav-menu ul li a:hover, .page-template-award header .nav-menu ul li a:hover, .page-template-register header .nav-menu ul li a:hover, .page-template-jury header .nav-menu ul li a:hover, .page-template-cgu header .nav-menu ul li a:hover {
    color: white;
  }
  .page-template-home header .nav-menu ul li a:hover::after, .page-template-page-nomines-laureats header .nav-menu ul li a:hover::after, .page-template-award header .nav-menu ul li a:hover::after, .page-template-register header .nav-menu ul li a:hover::after, .page-template-jury header .nav-menu ul li a:hover::after, .page-template-cgu header .nav-menu ul li a:hover::after {
    width: 50%;
  }
  .page-template-home header .nav-menu .lang, .page-template-page-nomines-laureats header .nav-menu .lang, .page-template-award header .nav-menu .lang, .page-template-register header .nav-menu .lang, .page-template-jury header .nav-menu .lang, .page-template-cgu header .nav-menu .lang {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1;
    width: 2.5rem;
    height: 2.5rem;
    background-color: white;
  }
  .page-template-home header .nav-menu .lang a, .page-template-page-nomines-laureats header .nav-menu .lang a, .page-template-award header .nav-menu .lang a, .page-template-register header .nav-menu .lang a, .page-template-jury header .nav-menu .lang a, .page-template-cgu header .nav-menu .lang a {
    text-transform: uppercase;
    color: black;
    font-family: "HelveticaNowText-Regular";
  }
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120px;
  display: flex;
  z-index: 100;
  transition: 0.3s;
}
header.scroll {
  height: 100px;
  top: -150px;
}
header.scrolling-up {
  height: 100px;
  top: 0;
}
header.scrolling-up {
  background-color: white;
}
header .logo {
  z-index: 10;
  width: 80%;
  height: 100%;
  margin-top: auto;
  margin-bottom: auto;
}
header .logo .white {
  display: none;
}
header .logo .black {
  display: block;
}
header .logo a {
  display: flex;
  margin-left: auto;
  margin-right: 20%;
  align-items: center;
  width: fit-content;
  height: 100%;
}
header .logo a img {
  margin-top: auto;
  margin-bottom: auto;
  margin-left: auto;
  margin-right: 30%;
  width: 110px;
  height: auto;
}
header.active .logo .white {
  display: block;
}
header.active .logo .black {
  display: none;
}
header .burger {
  z-index: 10;
  position: relative;
  width: 20%;
  height: 25px;
  margin-top: 30px;
}
header .burger span {
  width: 25px;
  height: 2px;
  position: absolute;
  background-color: black;
  top: 0;
  left: 0;
  transition: 0.5s;
}
header .burger span.mid {
  top: 10px;
}
header .burger span.bot {
  top: 21px;
}
header .burger.active span.top {
  top: 10px;
  transform: rotate(-45deg);
}
header .burger.active span.mid {
  opacity: 0;
  left: 50px;
}
header .burger.active span.bot {
  top: 10px;
  transform: rotate(45deg);
}
header .burger.active span {
  background-color: white;
}
header .nav-menu {
  z-index: 9;
  position: absolute;
  left: 100%;
  top: 0;
  height: 100vh;
  width: 100vw;
  background-color: rgba(0, 0, 0, 0.8);
  transition: 0.5s;
  display: flex;
  flex-direction: column;
  gap: 5vh;
  justify-content: center;
  align-items: center;
}
header .nav-menu ul {
  display: flex;
  flex-direction: column;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 5vh;
  align-items: center;
}
header .nav-menu ul li {
  padding: 0;
  margin: 0;
  width: fit-content;
}
header .nav-menu ul li a {
  text-transform: uppercase;
  color: white;
  font-family: "HelveticaNowText-Light";
  position: relative;
  font-size: 2rem;
}
header .nav-menu ul li a::after {
  content: "";
  background-color: white;
  height: 3px;
  position: absolute;
  left: 0;
  top: -2px;
  width: 0;
  transition: 0.3s;
}
header .nav-menu ul li a::after {
  left: unset;
  right: 0;
  top: unset;
  bottom: -4px;
}
header .nav-menu ul li a:hover {
  color: white;
}
header .nav-menu ul li a:hover::after {
  width: 50%;
}
header .nav-menu .lang {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1;
  width: 2.5rem;
  height: 2.5rem;
  background-color: white;
}
header .nav-menu .lang a {
  line-height: 1;
  text-transform: uppercase;
  color: black;
  font-family: "HelveticaNowText-Regular";
}
header .nav-menu.open {
  left: 0;
}
@media screen and (min-width: 64em) {
  header.scroll {
    height: 120px;
  }
  header.scrolling-up {
    height: 120px;
  }
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 180px;
    display: flex;
    justify-content: space-between;
    padding-inline: 10%;
  }
  header .logo {
    z-index: 10;
    width: auto;
    height: 100%;
    display: flex;
    margin-top: auto;
    margin-bottom: auto;
  }
  header .logo a {
    display: flex;
    align-items: center;
    margin-left: 0;
    margin-right: 0;
  }
  header .logo a img {
    width: 150px;
    height: auto;
    margin-right: 0;
  }
  header .logo a img.white, header .logo a img.black {
    margin-right: 0;
  }
  header .burger {
    display: none;
  }
  header .nav-menu {
    position: relative;
    left: unset;
    top: unset;
    height: auto;
    width: unset;
    background-color: transparent;
    transition: 0s;
    display: flex;
    flex-direction: row;
    gap: 5vw;
    width: 60%;
    align-items: center;
    justify-content: flex-end;
  }
  header .nav-menu ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 5vw;
    align-items: center;
    flex-direction: row;
  }
  header .nav-menu ul li {
    padding: 0;
    margin: 0;
    width: fit-content;
  }
  header .nav-menu ul li a {
    text-transform: uppercase;
    color: black;
    font-family: "HelveticaNowText-Light";
    position: relative;
    font-size: 1rem;
  }
  header .nav-menu ul li a::after {
    content: "";
    background-color: black;
    height: 3px;
    position: absolute;
    left: 0;
    top: -2px;
    width: 0;
    transition: 0.3s;
  }
  header .nav-menu ul li a::after {
    left: unset;
    right: 0;
    top: unset;
    bottom: -4px;
  }
  header .nav-menu ul li a:hover {
    color: black;
  }
  header .nav-menu ul li a:hover::after {
    width: 50%;
  }
  header .nav-menu .lang {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1;
    width: 2.5rem;
    height: 2.5rem;
    background-color: #131313;
  }
  header .nav-menu .lang a {
    text-transform: uppercase;
    color: white;
    font-family: "HelveticaNowText-Regular";
  }
}

.admin-bar .site-menu .menu {
  top: 44px;
}
@media screen and (max-width: 782px) {
  .admin-bar .site-menu .menu {
    top: 58px;
  }
}
.admin-bar.nav-open .menu-toggle {
  top: 44px;
}
@media screen and (max-width: 782px) {
  .admin-bar.nav-open .menu-toggle {
    top: 58px;
  }
}

/*  -----------------------------------------------------------
	Media Queries - Mobile phones (> 480px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Small desktop & vertical tablets (> 768px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1024px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1264px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1440px
------------------------------------------------------------ */
/* ------------------------------------------
 03 FOOTER
------------------------------------------ */
footer .footer-container .footer-logo {
  aspect-ratio: 1;
  width: 100%;
  background-color: #131313;
  position: relative;
  padding: 2rem;
}
footer .footer-container .footer-logo img {
  width: 100%;
}
footer .footer-container .footer-logo .footer-cgu {
  position: absolute;
  bottom: 2rem;
  opacity: 0;
}
footer .footer-container .footer-logo .footer-cgu p {
  font-size: 0.85rem;
  color: white;
}
footer .footer-container .footer-logo .footer-cgu p a {
  font-family: "HelveticaNowText-Light";
  font-size: 0.75rem;
  color: white;
}
footer .footer-container .footer-menu {
  background-color: #131313;
  padding: 2rem;
  display: flex;
}
footer .footer-container .footer-menu ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  list-style: none;
}
footer .footer-container .footer-menu ul li {
  margin: 0;
  padding: 0;
}
footer .footer-container .footer-menu ul li a {
  position: relative;
  color: white;
  font-family: "HelveticaNowDisplay-Bd";
  text-transform: uppercase;
  font-size: 1.25rem;
  font-weight: normal;
  width: fit-content;
}
footer .footer-container .footer-menu ul li a::before {
  content: "";
  background-color: white;
  height: 3px;
  width: 0;
  position: absolute;
  bottom: -4px;
  right: 0;
  transition: 0.3s;
}
footer .footer-container .footer-menu ul li a:hover::before {
  width: 50%;
}
footer .footer-container .footer-address {
  aspect-ratio: 1;
  background-color: #191919;
  display: flex;
  justify-content: center;
  padding: 2rem;
}
footer .footer-container .footer-address .address {
  width: fit-content;
}
footer .footer-container .footer-address .address .text {
  font-family: "HelveticaNowText-Light";
  color: white;
  width: fit-content;
  margin-bottom: 1.5rem;
  line-height: 1.4em;
}
footer .footer-container .footer-address .address .links {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
footer .footer-container .footer-address .address .links a {
  color: white;
  font-family: "HelveticaNowText-Light";
  font-weight: 400;
  text-decoration: underline;
}
footer .footer-container .footer-links {
  aspect-ratio: 1;
  background-color: #191919;
  display: flex;
  flex-direction: column;
  padding: 2rem;
}
footer .footer-container .footer-links .title {
  max-width: 200px;
  width: fit-content;
  color: white;
  font-size: 2.25rem;
  font-family: "HelveticaNowDisplay-Bd";
  text-transform: uppercase;
  line-height: 1.4;
  margin: 0;
}
footer .footer-container .footer-links .socials {
  max-width: 200px;
  display: flex;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
footer .footer-container .footer-links .socials a {
  background-color: white;
  aspect-ratio: 1;
  width: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s;
}
footer .footer-container .footer-links .socials a svg {
  height: 1.25rem;
  width: 1.25rem;
  object-fit: contain;
}
footer .footer-container .footer-links .socials a:hover {
  background-color: #3F5B50;
}
@media screen and (min-width: 48em) {
  footer .footer-container .footer-line {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  footer .footer-container .footer-line .footer-menu, footer .footer-container .footer-line .footer-address, footer .footer-container .footer-line .footer-logo, footer .footer-container .footer-line .footer-links {
    padding: 4rem;
  }
}
@media screen and (min-width: 79em) {
  footer .footer-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  footer .footer-container .footer-line {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

.credits.lemon {
  display: none;
  margin: 0;
  margin-left: auto;
  height: 19px;
  width: 74px;
}
.credits.lemon a {
  color: white;
  display: block;
  height: inherit;
  width: inherit;
}
.credits.lemon a:hover {
  color: #8c5932;
}
.credits.lemon a .svg {
  display: block;
  fill: currentColor;
}
.credits.lemon a span {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  border: 0;
}

/*  -----------------------------------------------------------
	Media Queries - Mobile phones (> 480px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Small desktop & vertical tablets (> 768px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1024px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1264px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1440px
------------------------------------------------------------ */
/* ------------------------------------------
 04 CONTENT
------------------------------------------ */
.reveal {
  overflow: hidden;
}

.text-reveal .line {
  overflow: hidden;
  padding-top: 0.5rem;
}
.text-reveal .line .word {
  transform: translateY(300px);
}

.text-reveal-side .line {
  overflow: hidden;
}
.text-reveal-side .line .word {
  transform: translateY(300px);
}

.copyright {
  border: 0;
  outline: 0;
}
.copyright p {
  margin: 0;
  color: #131313;
  font-size: 0.85rem;
  display: flex;
}
.copyright p.right {
  transform: translateX(calc(100% - 1.25rem));
}
.copyright p {
  transition: 0.75s;
}
.copyright p span {
  line-height: 1;
  background-color: rgba(255, 255, 255, 0.7);
  display: block;
  overflow: hidden;
  padding: 0.25rem 0.25rem;
}
.copyright p span.c {
  z-index: 1;
  padding-right: 0;
}
.copyright p span.text {
  padding-right: 0.25rem;
  z-index: 0;
  white-space: nowrap;
}
.copyright p.left span.c {
  padding-right: 0.25rem;
}
.copyright p.left span.text {
  transition: 0.75s;
  margin-left: -300px;
}
.copyright:hover p {
  transform: translateX(0);
}
.copyright:hover p span.text {
  margin: 0;
}
@media screen and (max-width: 1000px) {
  .copyright p.right {
    transform: translateX(0);
  }
  .copyright p.left span.text {
    transition: 0.75s;
    margin-left: 0;
  }
  .copyright:hover p {
    transform: translateX(0);
  }
  .copyright:hover p span.text {
    margin: 0;
  }
}

.home-intro {
  height: 100vh;
  position: relative;
  padding: 10vh 15% 15vh;
}
.home-intro .home-intro-bg {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.home-intro .home-intro-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: 20s zoomIn forwards;
}
.home-intro .home-intro-bg .desktop {
  display: none;
}
.home-intro .home-intro-bg .mobile {
  display: block;
}
.home-intro .home-intro-container {
  position: relative;
  z-index: 1;
  display: flex;
  height: 100%;
}
.home-intro .home-intro-container .home-intro-content {
  margin-top: auto;
}
.home-intro .edition {
  display: none;
}
.home-intro .edition p {
  display: flex;
  justify-content: space-between;
}
.home-intro .marquee {
  position: absolute;
  left: -1.5rem;
  top: -4.75rem;
  overflow: hidden;
}
.home-intro .marquee-content {
  display: flex;
  animation: verticalScroll 60s linear infinite;
}
.home-intro .marquee-content p {
  font-family: "HelveticaNowText-Bold";
  margin: 0; /* Removes default paragraph margins */
  margin-right: 1rem;
  line-height: 1.4em;
  color: white;
  font-size: 3.5rem;
  white-space: nowrap;
  text-transform: uppercase;
}
.home-intro {
  /* Adjustments for vertical rotation */
}
.home-intro .marquee-vertical {
  transform: rotate(90deg);
  transform-origin: bottom left;
  width: 100vh;
}
.home-intro .reverse-marquee {
  transform: rotate(-90deg);
  transform-origin: bottom right;
  width: 100vh;
  position: absolute;
  right: 0;
  left: unset;
  top: -3rem;
  overflow: hidden;
}
.home-intro .home-intro-left, .home-intro .home-intro-right {
  display: none;
}
@media screen and (min-width: 64em) {
  .home-intro {
    height: 100vh;
    padding: 10vh 15% 20vh;
  }
  .home-intro .home-intro-bg {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home-intro .home-intro-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .home-intro .home-intro-bg .desktop {
    display: block;
  }
  .home-intro .home-intro-bg .mobile {
    display: none;
  }
  .home-intro .home-intro-container {
    max-width: 1400px;
    margin: auto;
    display: flex;
    height: 100%;
  }
  .home-intro .home-intro-container .home-intro-content {
    margin-top: auto;
  }
  .home-intro .edition {
    position: absolute;
    display: block;
    width: 100vw;
    left: 0;
    bottom: 2rem;
    padding-inline: 10%;
  }
  .home-intro .edition p {
    display: flex;
    justify-content: space-between;
  }
  .home-intro .edition p span {
    color: white;
    font-size: 3rem;
    font-family: "HelveticaNowText-Bold";
    line-height: 1em;
  }
  .home-intro .marquee {
    display: none;
  }
  .home-intro .home-intro-left, .home-intro .home-intro-right {
    display: flex;
    position: absolute;
    width: 100vh;
    justify-content: center;
  }
  .home-intro .home-intro-left p, .home-intro .home-intro-right p {
    width: fit-content;
    font-size: 5rem;
    font-family: "HelveticaNowText-Bold";
    line-height: 1em;
    color: white;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .home-intro .home-intro-left {
    top: -7rem;
    left: 0;
    transform: rotate(90deg);
    transform-origin: bottom left;
    animation: 1s forwards slideInLeft;
  }
  .home-intro .home-intro-right {
    top: -7rem;
    right: 0;
    transform: rotate(-90deg);
    transform-origin: bottom right;
  }
}
@media screen and (min-width: 1600px) {
  .home-intro .home-intro-left, .home-intro .home-intro-right {
    display: flex;
    position: absolute;
    width: 100vh;
    justify-content: center;
  }
  .home-intro .home-intro-left p, .home-intro .home-intro-right p {
    width: fit-content;
    font-size: 7rem;
    font-family: "HelveticaNowText-Bold";
    line-height: 1em;
    color: white;
    text-transform: uppercase;
    white-space: nowrap;
  }
}

@keyframes zoomIn {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.1);
  }
}
@keyframes verticalScroll {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes verticalScroll2 {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.home-vision {
  padding: 0;
  padding-top: 5rem;
  position: relative;
}
.home-vision .copyright {
  position: absolute;
  top: 0;
  right: 0;
}
.home-vision .home-vision-container .home-vision-title {
  padding-inline: 2rem;
}
.home-vision .home-vision-container .home-vision-img {
  overflow: hidden;
  padding-inline: 2rem;
  padding-bottom: 5rem;
  aspect-ratio: 1;
  width: 100%;
  position: relative;
}
.home-vision .home-vision-container .home-vision-img .copyright {
  position: absolute;
  top: unset;
  bottom: -1px;
  z-index: 1;
  left: unset;
  right: 0;
}
.home-vision .home-vision-container .home-vision-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-vision .home-vision-container .home-vision-text {
  padding: 3rem 2rem;
  background-color: #232323;
}
.home-vision .home-vision-container .home-vision-text p {
  font-family: "HelveticaNowText-Light";
  color: white;
  text-transform: uppercase;
  text-align: center;
}
@media screen and (min-width: 64em) {
  .home-vision {
    padding-top: 10rem;
    padding-inline: 7.5%;
  }
  .home-vision .home-vision-container {
    max-width: 1600px;
    margin: auto;
  }
  .home-vision .home-vision-container .home-vision-title {
    padding-inline: 0;
  }
  .home-vision .home-vision-container .home-vision-img {
    padding-inline: 0;
    padding-bottom: 0;
    aspect-ratio: 1;
    width: 100%;
    max-height: 800px;
  }
  .home-vision .home-vision-container .home-vision-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .home-vision .home-vision-container .home-vision-text {
    padding: 3rem 10%;
    max-width: 50vw;
    margin: auto;
    margin-top: -11rem;
    background-color: #232323;
    position: relative;
  }
  .home-vision .home-vision-container .home-vision-text p {
    color: white;
    text-transform: uppercase;
    text-align: center;
  }
  .home-vision .home-vision-container .home-vision-text p:first-of-type {
    margin-bottom: 3rem;
  }
}

.home-pres {
  padding: 0;
  padding-top: 5rem;
}
.home-pres .home-pres-container .home-pres-title {
  padding-inline: 2rem;
}
.home-pres .home-pres-container .home-pres-title h2 {
  margin-bottom: 2.5rem;
}
.home-pres .home-pres-container .home-pres-title .c-btn {
  margin-bottom: 2.5rem;
}
.home-pres .home-pres-container .home-pres-video {
  position: relative;
}
.home-pres .home-pres-container .home-pres-video .playbtn {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
}
.home-pres .home-pres-container .home-pres-video .playbtn img {
  width: 50px;
  object-fit: contain;
}
.home-pres .home-pres-container .home-pres-video .img-poster {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.home-pres .home-pres-container .home-pres-video .img-poster img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.home-pres .home-pres-container .home-pres-video video {
  width: 100%;
}
.home-pres .home-pres-container .home-pres-video .video-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
  height: 0;
  overflow: hidden;
}
.home-pres .home-pres-container .home-pres-video .video-container iframe,
.home-pres .home-pres-container .home-pres-video .video-container object,
.home-pres .home-pres-container .home-pres-video .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-pres .home-pres-container .home-pres-video .pres-video-img {
  aspect-ratio: 16/9;
  width: 100%;
}
.home-pres .home-pres-container .home-pres-video .pres-video-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 64em) {
  .home-pres {
    padding-top: 10rem;
    padding-bottom: 10rem;
    padding-inline: 7.5%;
  }
  .home-pres .home-pres-container {
    max-width: 1600px;
    margin: auto;
  }
  .home-pres .home-pres-container .home-pres-title {
    padding-inline: 0;
  }
  .home-pres .home-pres-container .home-pres-title h2 {
    margin-bottom: 4rem;
  }
  .home-pres .home-pres-container .home-pres-title .c-btn {
    margin-bottom: 4rem;
  }
  .home-pres .home-pres-container .home-pres-video {
    position: relative;
  }
  .home-pres .home-pres-container .home-pres-video .playbtn img {
    width: 100px;
    object-fit: contain;
  }
}
@media screen and (max-width: 980px) {
  .home-pres .home-pres-container {
    max-width: 1600px;
    margin: auto;
  }
  .home-pres .home-pres-container .home-pres-title h2 {
    margin-bottom: 5rem;
  }
}

.home-newsletter {
  background-color: #131313;
  padding: 0;
  padding-top: 5rem;
  padding-bottom: 3rem;
}
.home-newsletter.award-criteria {
  position: relative;
  background-color: white;
}
.home-newsletter.award-criteria .copyright {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}
.home-newsletter.award-criteria .home-newsletter-container .home-newsletter-title {
  padding-inline: 2rem;
}
.home-newsletter.award-criteria .home-newsletter-container .home-newsletter-title h2 {
  color: black;
  margin-top: 3rem;
  margin-bottom: 0;
}
.home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text {
  padding-inline: 2rem;
}
.home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text .criteria-text {
  margin-bottom: 1.5rem;
}
.home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text p {
  color: black;
}
.home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text .c-btn {
  margin-bottom: 1.5rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-title {
  padding-inline: 2rem;
  max-width: 1000px;
}
.home-newsletter .home-newsletter-container .home-newsletter-title h2 {
  color: white;
  margin-top: 6rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-text {
  padding-inline: 2rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-text p {
  color: white;
}
.home-newsletter .home-newsletter-container .home-newsletter-text .criteria-video {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
  height: 0;
  overflow: hidden;
}
.home-newsletter .home-newsletter-container .home-newsletter-text .criteria-video iframe,
.home-newsletter .home-newsletter-container .home-newsletter-text .criteria-video object,
.home-newsletter .home-newsletter-container .home-newsletter-text .criteria-video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-newsletter .home-newsletter-container .home-newsletter-link {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
  margin-top: 2rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-link .big-btn {
  width: fit-content;
  display: block;
}
.home-newsletter .home-newsletter-container .home-newsletter-link .big-btn a {
  display: block;
  padding: 0.75rem 1.5rem;
  color: white;
  font-size: 1.25rem;
  font-weight: bold;
  text-transform: uppercase;
  border: 2px solid white;
  margin: 0;
  line-height: 1em;
  transition: 0.3s;
}
.home-newsletter .home-newsletter-container .home-newsletter-link .big-btn a:hover {
  background-color: white;
  color: #131313;
}
.home-newsletter .home-newsletter-container .home-newsletter-form {
  padding-inline: 2rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-form form {
  margin: 3rem 0 2rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-line {
  margin-bottom: 2rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-line .wpcf7-email {
  background-color: transparent;
  color: white;
  border: 0;
  outline: 0;
  border-bottom: 5px solid white;
  padding: 0;
  padding-bottom: 0.5rem;
  height: auto;
  line-height: unset;
  font-family: "HelveticaNowText-Medium";
  font-weight: 700;
  font-size: 1.25rem;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-line .wpcf7-email::placeholder {
  color: white;
  font-family: "HelveticaNowText-Medium";
  font-weight: 700;
  font-size: 1.25rem;
  text-transform: uppercase;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit {
  display: flex;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit p {
  margin-left: auto;
  width: fit-content;
  position: relative;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit p::after {
  position: absolute;
  content: "";
  background-color: white;
  height: 4px;
  width: 0;
  left: 0;
  top: 4px;
  transition: 0.3s;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit p::after {
  left: unset;
  right: 0;
  top: unset;
  bottom: 0;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit p:hover::after {
  width: 50%;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-submit {
  border: 0;
  margin: 0;
  font-family: "HelveticaNowText-Bold";
  font-size: 1.25rem;
  text-transform: uppercase;
  padding: 0;
  color: white;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-submit:hover {
  color: white;
}
.home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-spinner {
  display: none;
}
.home-newsletter .home-newsletter-container .home-newsletter-img {
  aspect-ratio: 1;
  width: 100%;
}
.home-newsletter .home-newsletter-container .home-newsletter-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 64em) {
  .home-newsletter {
    padding-top: 10rem;
  }
  .home-newsletter.award-criteria {
    background-color: white;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-title {
    padding-inline: 7.5%;
    max-width: calc(1600px + 15%);
    margin: auto;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-title h2 {
    margin-top: 0;
    margin-bottom: 3rem;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text {
    padding-inline: 7.5%;
    max-width: calc(900px + 15%);
    margin: auto;
    margin-bottom: 4rem;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text p {
    color: black;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text .criteria-text {
    margin-bottom: 3rem;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-text .c-btn {
    margin-bottom: 3rem;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form {
    max-width: calc(1200px + 15%);
    margin: auto;
    padding-inline: 7.5%;
    margin-bottom: 5rem;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form form {
    margin: 0;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form .form .form-line {
    margin-bottom: 2rem;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form .form .form-line .wpcf7-email {
    border: 0;
    outline: 0;
    border-bottom: 8px solid white;
    padding: 0;
    padding-bottom: 1.25rem;
    height: auto;
    line-height: unset;
    font-family: "HelveticaNowText-Medium";
    font-weight: 700;
    font-size: 2.5rem;
    color: white;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form .form .form-line .wpcf7-email::placeholder {
    color: white;
    font-family: "HelveticaNowText-Medium";
    font-weight: 700;
    font-size: 2.5rem;
    text-transform: uppercase;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form .form .form-submit p {
    display: flex;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-submit {
    border: 0;
    margin: 0;
    margin-left: auto;
    font-family: "HelveticaNowText-Bold";
    font-size: 2rem;
    text-transform: uppercase;
    padding: 0;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-spinner {
    display: none;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-img {
    aspect-ratio: auto;
    width: 100%;
    height: 100vh;
  }
  .home-newsletter.award-criteria .home-newsletter-container .home-newsletter-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-title {
    padding-inline: 7.5%;
    max-width: calc(1000px + 15%);
  }
  .home-newsletter .home-newsletter-container .home-newsletter-title h2 {
    margin-bottom: 6rem;
    margin-top: 0;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-text {
    padding-inline: 7.5%;
    max-width: calc(900px + 15%);
    margin: auto;
    margin-bottom: 4rem;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form {
    max-width: calc(1200px + 15%);
    margin: auto;
    padding-inline: 7.5%;
    margin-bottom: 5rem;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form form {
    margin: 0;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form .form .form-line {
    margin-bottom: 2rem;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form .form .form-line .wpcf7-email {
    border: 0;
    outline: 0;
    border-bottom: 8px solid white;
    padding: 0;
    padding-bottom: 1.25rem;
    height: auto;
    line-height: unset;
    font-family: "HelveticaNowText-Medium";
    font-weight: 700;
    font-size: 2.5rem;
    color: white;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form .form .form-line .wpcf7-email::placeholder {
    color: white;
    font-family: "HelveticaNowText-Medium";
    font-weight: 700;
    font-size: 2.5rem;
    text-transform: uppercase;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit p {
    display: flex;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-submit {
    border: 0;
    margin: 0;
    margin-left: auto;
    font-family: "HelveticaNowText-Bold";
    font-size: 2rem;
    text-transform: uppercase;
    padding: 0;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-form .form .form-submit .wpcf7-spinner {
    display: none;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-img {
    aspect-ratio: auto;
    width: 100%;
    height: 100vh;
  }
  .home-newsletter .home-newsletter-container .home-newsletter-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.home-prize {
  padding: 0;
  padding-top: 5rem;
}
.home-prize .home-prize-container .home-prize-title {
  padding-inline: 2rem;
}
.home-prize .home-prize-container .home-prize-content .home-prize-text {
  padding-inline: 2rem;
}
.home-prize .home-prize-container .home-prize-content .home-prize-link {
  padding: 3rem 2rem 5rem;
}
.home-prize .home-prize-container .home-prize-content .home-prize-img {
  position: relative;
  aspect-ratio: 1;
  width: 100%;
}
.home-prize .home-prize-container .home-prize-content .home-prize-img .copyright {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.home-prize .home-prize-container .home-prize-content .home-prize-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 64em) {
  .home-prize {
    padding-top: 10rem;
  }
  .home-prize .home-prize-container {
    position: relative;
    display: flex;
  }
  .home-prize .home-prize-container .home-prize-title {
    position: absolute;
    left: 7.5%;
    top: 0;
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    padding-inline: 0;
  }
  .home-prize .home-prize-container .home-prize-title h2 {
    margin: 0;
  }
  .home-prize .home-prize-container .home-prize-content {
    max-width: 70%;
    margin-left: auto;
  }
  .home-prize .home-prize-container .home-prize-content .home-prize-text {
    padding-inline: 0;
    padding-right: 30%;
  }
  .home-prize .home-prize-container .home-prize-content .home-prize-link {
    padding: 3rem 2rem 10rem;
    padding-right: 30%;
    padding-left: 0;
  }
  .home-prize .home-prize-container .home-prize-content .home-prize-img {
    aspect-ratio: 16/9;
    width: 100%;
  }
  .home-prize .home-prize-container .home-prize-content .home-prize-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.home-contact {
  padding: 0;
}
.home-contact .home-contact-container .home-contact-line {
  background-color: #131313;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-text {
  padding-top: 5rem;
  padding-inline: 2rem;
  padding-bottom: 5rem;
  max-width: 1000px;
  margin: auto;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-text .home-contact-title h2 {
  color: white;
  margin-bottom: 2rem;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-text .text {
  color: white;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-text .text p {
  font-family: "HelveticaNowText-Light";
  font-weight: 400;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-img {
  aspect-ratio: 1;
  width: 100%;
  position: relative;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-img .copyright {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}
.home-contact .home-contact-container .home-contact-line.line-1 .line-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-contact .home-contact-container .home-contact-line.line-2 .line-gallery {
  display: none;
}
.home-contact .home-contact-container .home-contact-line.line-2 .line-text {
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 64em) {
  .home-contact .home-contact-container .home-contact-line {
    display: flex;
    background-color: #131313;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: stretch;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-text {
    padding-top: 0;
    padding-inline: 0;
    padding-bottom: 0;
    width: 66.66%;
    padding: 5rem;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-text .home-contact-title {
    max-width: 90%;
    margin: auto;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-text .home-contact-title h2 {
    line-height: 1em;
    color: white;
    margin-bottom: 4rem;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-text .text {
    max-width: 90%;
    margin: auto;
    color: white;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-text .text p {
    font-family: "HelveticaNowText-Light";
    font-weight: 400;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-img {
    aspect-ratio: unset;
    width: 100%;
    max-width: 33.33%;
    min-height: 100%;
  }
  .home-contact .home-contact-container .home-contact-line.line-1 .line-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .home-contact .home-contact-container .home-contact-line.line-2 .line-gallery {
    display: grid;
    width: 66.66%;
    grid-template-columns: 1fr 1fr;
  }
  .home-contact .home-contact-container .home-contact-line.line-2 .line-gallery .img-container {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    aspect-ratio: 1;
  }
  .home-contact .home-contact-container .home-contact-line.line-2 .line-gallery .img-container .copyright {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
  }
  .home-contact .home-contact-container .home-contact-line.line-2 .line-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .home-contact .home-contact-container .home-contact-line.line-2 .line-text {
    width: 33.33%;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

.home-history {
  padding: 0;
  padding-top: 5rem;
}
.home-history.award-history .home-history-container .home-history-content .home-history-text {
  margin-bottom: 5rem;
}
.home-history .home-history-container .home-history-title {
  padding-inline: 2rem;
}
.home-history .home-history-container .home-history-content .home-history-text {
  padding-inline: 2rem;
}
.home-history .home-history-container .home-history-content .home-history-link {
  padding: 3rem 2rem 5rem;
}
.home-history .home-history-container .home-history-content .home-history-img {
  width: 100%;
  height: auto;
}
.home-history .home-history-container .home-history-content .home-history-img .copyright {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
}
.home-history .home-history-container .home-history-content .home-history-img img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 64em) {
  .home-history {
    padding-top: 10rem;
  }
  .home-history.award-history .home-history-container .home-history-content .home-history-text {
    margin-bottom: 10rem;
  }
  .home-history .home-history-container {
    position: relative;
    display: flex;
  }
  .home-history .home-history-container .home-history-title {
    position: absolute;
    left: 82.5%;
    top: 0;
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    padding-inline: 0;
  }
  .home-history .home-history-container .home-history-title h2 {
    margin: 0;
  }
  .home-history .home-history-container .home-history-content {
    max-width: 70%;
    margin-right: auto;
  }
  .home-history .home-history-container .home-history-content .home-history-text {
    padding-inline: 0;
    padding-left: 15%;
    padding-right: 7.5%;
  }
  .home-history .home-history-container .home-history-content .home-history-link {
    padding: 3rem 2rem 10rem;
    padding-left: 15%;
    padding-right: 7.5%;
  }
  .home-history .home-history-container .home-history-content .home-history-img {
    width: 100%;
  }
  .home-history .home-history-container .home-history-content .home-history-img img {
    width: 100%;
  }
}

.contact {
  padding: 0;
  padding-top: 10rem;
}
.contact .contact-container .contact-title {
  padding-inline: 2rem;
}
.contact .contact-container .contact-title .h2 {
  color: black;
}
.contact .contact-container .contact-content .contact-text {
  padding-inline: 2rem;
  padding-bottom: 4rem;
}
.contact .contact-container .contact-content .contact-form {
  padding-inline: 2rem;
  padding-bottom: 4rem;
}
.contact .contact-container .contact-content .contact-form .form .form-line {
  margin-bottom: 2rem;
}
.contact .contact-container .contact-content .contact-form .form .form-line .wpcf7-text, .contact .contact-container .contact-content .contact-form .form .form-line .wpcf7-textarea {
  border: 0;
  outline: 0;
  border-bottom: 5px solid #232323;
  padding: 0;
  padding-bottom: 0.5rem;
  height: auto;
  line-height: unset;
  font-family: "HelveticaNowText-Medium";
  font-weight: 700;
  font-size: 1.25rem;
  box-shadow: none;
}
.contact .contact-container .contact-content .contact-form .form .form-line .wpcf7-text::placeholder, .contact .contact-container .contact-content .contact-form .form .form-line .wpcf7-textarea::placeholder {
  color: #232323;
  font-family: "HelveticaNowText-Medium";
  font-weight: 700;
  font-size: 1.25rem;
  text-transform: uppercase;
}
.contact .contact-container .contact-content .contact-form .form .form-line .wpcf7-textarea {
  height: 150px;
}
.contact .contact-container .contact-content .contact-form .form .form-submit {
  display: flex;
}
.contact .contact-container .contact-content .contact-form .form .form-submit p {
  margin-left: auto;
  width: fit-content;
  position: relative;
}
.contact .contact-container .contact-content .contact-form .form .form-submit p::after {
  position: absolute;
  content: "";
  background-color: #131313;
  height: 4px;
  width: 0;
  left: 0;
  top: 4px;
  transition: 0.3s;
}
.contact .contact-container .contact-content .contact-form .form .form-submit p::after {
  left: unset;
  right: 0;
  top: unset;
  bottom: 0;
}
.contact .contact-container .contact-content .contact-form .form .form-submit p:hover::after {
  width: 50%;
}
.contact .contact-container .contact-content .contact-form .form .form-submit .wpcf7-submit {
  border: 0;
  margin: 0;
  font-family: "HelveticaNowText-Bold";
  font-size: 1.25rem;
  text-transform: uppercase;
  padding: 0;
}
.contact .contact-container .contact-content .contact-form .form .form-submit .wpcf7-submit:hover {
  background-color: white;
  color: #131313;
}
.contact .contact-container .contact-content .contact-form .form .form-submit .wpcf7-spinner {
  display: none;
}
.contact .contact-container .contact-content .contact-img {
  aspect-ratio: 1;
  width: 100%;
  position: relative;
}
.contact .contact-container .contact-content .contact-img .copyright {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
}
.contact .contact-container .contact-content .contact-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 64em) {
  .contact {
    padding-top: 15rem;
    min-height: 100vh;
  }
  .contact .contact-container {
    position: relative;
    display: flex;
  }
  .contact .contact-container .contact-title {
    position: absolute;
    left: 7.5%;
    top: 0;
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    padding-inline: 0;
  }
  .contact .contact-container .contact-title h2 {
    margin: 0;
  }
  .contact .contact-container .contact-content {
    max-width: 70%;
    margin-left: auto;
  }
  .contact .contact-container .contact-content .contact-text {
    padding-inline: 0;
    padding-right: 30%;
    padding-bottom: 5rem;
  }
  .contact .contact-container .contact-content .contact-form {
    padding-right: 30%;
  }
  .contact .contact-container .contact-content .contact-form .form .form-line {
    margin-bottom: 2rem;
  }
  .contact .contact-container .contact-content .contact-form .form .form-line .wpcf7-textarea {
    height: 150px;
  }
  .contact .contact-container .contact-content .contact-form .form .form-submit {
    display: flex;
  }
  .contact .contact-container .contact-content .contact-form .form .form-submit .wpcf7-submit {
    border: 0;
    margin: 0;
    font-family: "HelveticaNowText-Bold";
    font-size: 1.25rem;
    text-transform: uppercase;
    padding: 0;
  }
  .contact .contact-container .contact-content .contact-form .form .form-submit .wpcf7-submit:hover {
    background-color: white;
    color: #131313;
  }
  .contact .contact-container .contact-content .contact-form .form .form-submit .wpcf7-spinner {
    display: none;
  }
  .contact .contact-container .contact-content .contact-img {
    aspect-ratio: 16/9;
    width: 100%;
  }
  .contact .contact-container .contact-content .contact-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.award-criterias {
  padding: 0;
}
.award-criterias .award-criterias-list .award-criterias-item {
  padding: 1.5rem 2rem;
  background-color: #131313;
}
.award-criterias .award-criterias-list .award-criterias-item p {
  text-transform: uppercase;
  line-height: 1.2em;
  color: white;
  font-family: "HelveticaNowText-Bold";
}
.award-criterias .award-criterias-list {
  /* Apply the alternating pattern */
}
.award-criterias .award-criterias-list .award-criterias-item:nth-child(2),
.award-criterias .award-criterias-list .award-criterias-item:nth-child(4),
.award-criterias .award-criterias-list .award-criterias-item:nth-child(6),
.award-criterias .award-criterias-list .award-criterias-item:nth-child(8) {
  background: #191919; /* Gray background color */
}
@media screen and (min-width: 48em) {
  .award-criterias .award-criterias-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .award-criterias .award-criterias-list .award-criterias-item {
    aspect-ratio: 16/9;
    padding: 0;
    background-color: #131313;
    display: flex;
    padding-inline: 1rem;
    justify-content: center;
    align-items: center;
  }
  .award-criterias .award-criterias-list .award-criterias-item p {
    font-size: 1.25rem;
    text-align: center;
    text-transform: uppercase;
    line-height: 1.2em;
    color: white;
    font-family: "HelveticaNowText-Bold";
  }
  .award-criterias .award-criterias-list {
    /* Apply the alternating pattern */
  }
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(2),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(3),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(6),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(7) {
    background: #191919; /* Gray background color */
  }
  .award-criterias .award-criterias-list {
    /* Apply the alternating pattern */
  }
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(4),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(8) {
    background: #131313; /* Gray background color */
  }
}
@media screen and (min-width: 64em) {
  .award-criterias .award-criterias-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .award-criterias .award-criterias-list .award-criterias-item {
    aspect-ratio: 1;
  }
  .award-criterias .award-criterias-list .award-criterias-item p {
    font-size: 1.375rem;
    max-width: 80%;
    margin: auto;
  }
  .award-criterias .award-criterias-list {
    /* Apply the alternating pattern */
  }
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(2),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(4),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(5),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(7) {
    background: #191919; /* Gray background color */
  }
  .award-criterias .award-criterias-list {
    /* Apply the alternating pattern */
  }
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(1),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(3),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(6),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(8) {
    background: #131313; /* Gray background color */
  }
}
@media screen and (min-width: 1920px) {
  .award-criterias .award-criterias-list {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
  }
  .award-criterias .award-criterias-list .award-criterias-item {
    aspect-ratio: 1;
  }
  .award-criterias .award-criterias-list .award-criterias-item p {
    font-size: 1.25rem;
    max-width: 90%;
    margin: auto;
  }
  .award-criterias .award-criterias-list {
    /* Apply the alternating pattern */
  }
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(1),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(3),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(5),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(7) {
    background: #191919; /* Gray background color */
  }
  .award-criterias .award-criterias-list {
    /* Apply the alternating pattern */
  }
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(2),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(4),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(6),
  .award-criterias .award-criterias-list .award-criterias-item:nth-child(8) {
    background: #131313; /* Gray background color */
  }
}

.award-selection .award-selection-container .award-selection-img {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
}
.award-selection .award-selection-container .award-selection-img .copyright {
  position: absolute;
  top: 0;
  right: 0;
}
.award-selection .award-selection-container .award-selection-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.award-selection .award-selection-container .award-selection-title h2 {
  margin-top: 3rem;
}
.award-selection .award-selection-container .award-selection-text {
  margin-bottom: 3rem;
  max-width: 1200px;
}
.award-selection .award-selection-container .award-selection-slider {
  position: relative;
  padding-bottom: 5rem;
}
.award-selection .award-selection-container .award-selection-slider .selectionSwiper {
  overflow: visible;
}
.award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper {
  overflow: visible;
}
.award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper .selection .number {
  font-size: 6rem;
  line-height: 1em;
  font-family: "HelveticaNowText-Bold";
  margin-bottom: 0;
  padding-bottom: 2rem;
  position: relative;
}
.award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper .selection .number::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 6px;
  background-color: #131313;
  width: 100%;
}
.award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper .selection .text {
  font-family: "HelveticaNowText-Medium";
  line-height: 1.4em;
  padding-right: 1.5rem;
  margin-top: 2rem;
}
.award-selection .award-selection-container .award-selection-slider .selection-nav {
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -1rem;
  display: flex;
  gap: 2rem;
}
.award-selection .award-selection-container .award-selection-slider .selection-nav .selection-prev, .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-next {
  transition: 0.3s;
  opacity: 1;
}
.award-selection .award-selection-container .award-selection-slider .selection-nav .selection-prev img, .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-next img {
  height: 60px;
}
.award-selection .award-selection-container .award-selection-slider .selection-nav .selection-prev {
  transform: scaleX(-1);
}
.award-selection .award-selection-container .award-selection-slider .selection-nav .selection-next {
  margin-left: auto;
}
.award-selection .award-selection-container .award-selection-slider .selection-nav .swiper-button-disabled {
  opacity: 0;
}
@media screen and (min-width: 64em) {
  .award-selection {
    padding-top: 10rem;
  }
  .award-selection .award-selection-container {
    max-width: 1600px;
    margin: auto;
  }
  .award-selection .award-selection-container .award-selection-img {
    aspect-ratio: 16/9;
  }
  .award-selection .award-selection-container .award-selection-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .award-selection .award-selection-container .award-selection-title h2 {
    margin-top: 10rem;
    margin-bottom: 3rem;
  }
  .award-selection .award-selection-container .award-selection-text {
    margin-bottom: 5rem;
  }
  .award-selection .award-selection-container .award-selection-slider {
    position: relative;
    padding-bottom: 5rem;
  }
  .award-selection .award-selection-container .award-selection-slider .selectionSwiper {
    overflow: visible;
  }
  .award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper {
    overflow: visible;
  }
  .award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper .selection .number {
    font-size: 8rem;
    line-height: 1em;
    font-family: "HelveticaNowText-Bold";
    margin-bottom: 0;
    padding-bottom: 2rem;
    position: relative;
  }
  .award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper .selection .number::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 8px;
    background-color: #131313;
    width: 100%;
  }
  .award-selection .award-selection-container .award-selection-slider .selectionSwiper .swiper-wrapper .selection .text {
    font-family: "HelveticaNowText-Medium";
    line-height: 1.4em;
    padding-right: 1.5rem;
    margin-top: 2rem;
  }
  .award-selection .award-selection-container .award-selection-slider .selection-nav {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: -3rem;
    display: flex;
    gap: 2rem;
  }
  .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-prev, .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-next {
    transition: 0.3s;
    opacity: 1;
  }
  .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-prev img, .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-next img {
    height: 80px;
  }
  .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-prev {
    transform: scaleX(-1);
  }
  .award-selection .award-selection-container .award-selection-slider .selection-nav .selection-next {
    margin-left: auto;
  }
  .award-selection .award-selection-container .award-selection-slider .selection-nav .swiper-button-disabled {
    opacity: 0;
  }
}

.award-img {
  padding: 0;
  padding-top: 5rem;
  aspect-ratio: 1;
  position: relative;
}
.award-img .copyright {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
}
.award-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 64em) {
  .award-img {
    aspect-ratio: 21/9;
  }
  .award-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.award-contact {
  padding-bottom: 5rem;
}
.award-contact .award-contact-container .award-contact-title {
  position: relative;
}
.award-contact .award-contact-container .award-contact-title::before {
  content: "";
  position: absolute;
  height: 6px;
  width: 100%;
  background-color: #131313;
  bottom: -2rem;
}
.award-contact .award-contact-container .award-contact-link {
  padding-top: 2rem;
}
.award-contact .award-contact-container .award-contact-link .c-btn {
  display: flex;
}
.award-contact .award-contact-container .award-contact-link .c-btn a {
  margin-left: auto;
}
@media screen and (min-width: 64em) {
  .award-contact {
    padding-bottom: 10rem;
    padding-top: 10rem;
  }
  .award-contact .award-contact-container {
    max-width: 1600px;
    margin: auto;
  }
  .award-contact .award-contact-container .award-contact-title {
    position: relative;
  }
  .award-contact .award-contact-container .award-contact-title::before {
    content: "";
    position: absolute;
    bottom: -5rem;
    height: 8px;
    width: 100%;
    background-color: #131313;
  }
  .award-contact .award-contact-container .award-contact-link {
    padding-top: 2rem;
  }
  .award-contact .award-contact-container .award-contact-link .c-btn {
    display: flex;
  }
  .award-contact .award-contact-container .award-contact-link .c-btn a {
    font-size: 2rem;
    margin-left: auto;
  }
  .award-contact .award-contact-container .award-contact-link .c-btn a::after {
    bottom: -16px;
    height: 4px;
  }
}

.notification {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1rem 2rem;
  background-color: #3F5B50;
}
.notification.error {
  background-color: rgb(218, 55, 55);
}
.notification #notification-message {
  max-width: 500px;
  margin: auto;
  text-align: center;
  color: white;
  font-size: 1rem;
  padding: 0;
  line-height: 1rem;
}

.project-dashboard {
  min-height: 100vh;
}
.project-dashboard .project-dashboard-left {
  height: 100vh;
  position: fixed;
  width: 300px;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.08);
}
.project-dashboard .project-dashboard-left .dashboard-menu {
  display: flex;
  height: 100%;
  flex-direction: column;
}
.project-dashboard .project-dashboard-left .dashboard-menu .logo {
  padding: 2rem;
}
.project-dashboard .project-dashboard-left .dashboard-menu .logo img {
  width: 120px;
  object-fit: contain;
  height: auto;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item {
  padding: 1rem 2rem;
  display: grid;
  grid-template-columns: 25px 1fr;
  gap: 1rem;
  align-items: center;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item svg {
  width: 100%;
  max-height: 25px;
  object-fit: contain;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item svg path {
  fill: #131313;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item a {
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: bold;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item.active {
  background-color: #3F5B50;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item.active svg path {
  fill: white;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-nav .item.active a {
  color: white;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect {
  margin-top: auto;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item {
  border-top: 1px solid rgba(0, 0, 0, 0.16);
  padding: 1rem 2rem;
  display: grid;
  grid-template-columns: 25px 1fr;
  gap: 1rem;
  align-items: center;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item svg {
  width: 100%;
  max-height: 25px;
  object-fit: contain;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item svg path {
  fill: #131313;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item a {
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: bold;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item.active {
  background-color: #3F5B50;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item.active svg path {
  fill: white;
}
.project-dashboard .project-dashboard-left .dashboard-menu .dashboard-disconnect .item.active a {
  color: white;
}
.project-dashboard .project-dashboard-right {
  padding-left: 300px;
}
.project-dashboard .project-dashboard-right .project-content {
  padding: 2rem;
}
.project-dashboard .project-dashboard-right .project-content h2 {
  font-size: 2rem;
  margin-bottom: 0;
}
.project-dashboard .project-dashboard-right .project-content .dowload-project {
  display: none;
}
.project-dashboard .project-dashboard-right .project-content .dowload-project.active {
  display: block;
}
.project-dashboard .project-dashboard-right .project-content .finalisation-copyright {
  margin-top: 2rem;
}
.project-dashboard .project-dashboard-right .project-content .finalisation-copyright p {
  font-size: 1rem;
}
.project-dashboard .project-dashboard-right .project-content #download {
  line-height: 1em;
  font-weight: normal;
  background-color: #3F5B50;
  border-radius: 5px;
  padding: 1rem;
  color: white;
  text-transform: none;
}
.project-dashboard .project-dashboard-right .project-content .tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  list-style: none;
  margin: 0;
  margin-bottom: 2rem;
  padding: 0;
  margin-top: 1.5rem;
}
.project-dashboard .project-dashboard-right .project-content .tabs li {
  margin: 0;
  margin-right: 2rem;
  padding: 0;
  position: relative;
  line-height: 1.2em;
}
.project-dashboard .project-dashboard-right .project-content .tabs li::before {
  content: "";
  position: absolute;
  top: calc(50% + 4px);
  transform: translateY(-50%);
  height: 1px;
  background-color: #232323;
  opacity: 0.5;
  width: 2rem;
  left: calc(100% + 0.375rem);
}
.project-dashboard .project-dashboard-right .project-content .tabs li:last-of-type::before {
  display: none;
}
.project-dashboard .project-dashboard-right .project-content .tabs li a {
  font-size: 0.7rem;
  font-weight: 300;
  line-height: 1.2em;
  text-transform: uppercase;
  transition: 0.3s;
}
.project-dashboard .project-dashboard-right .project-content .tabs li a.active {
  font-weight: bold;
  font-size: 0.85rem;
}
.project-dashboard .project-dashboard-right .project-content label {
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
.project-dashboard .project-dashboard-right .project-content input, .project-dashboard .project-dashboard-right .project-content textarea {
  margin-bottom: 1rem;
  background-color: rgba(19, 19, 19, 0.03);
  border-radius: 5px;
  font-size: 1rem;
}
.project-dashboard .project-dashboard-right .project-content textarea {
  margin: 0;
  padding: 0.5rem;
}
.project-dashboard .project-dashboard-right .project-content input[type=submit] {
  background-color: #3F5B50;
  padding: 0.5rem;
  height: auto;
  line-height: 1em;
  text-transform: none;
  border: #3F5B50 1px solid;
  border-radius: 5px;
  color: white;
  font-weight: 300;
  margin-top: 1rem;
}
.project-dashboard .project-dashboard-right .project-content input[type=submit]:disabled {
  opacity: 0.5;
}
.project-dashboard .project-dashboard-right .project-content .dropzone {
  margin-bottom: 1rem;
}
.project-dashboard .project-dashboard-right .project-content select {
  margin-bottom: 1rem;
  background-color: rgba(19, 19, 19, 0.03);
  border-radius: 5px;
  font-size: 1rem;
}
.project-dashboard .project-dashboard-right .project-content .label-info {
  font-size: 0.8rem;
  font-style: italic;
  opacity: 0.8;
}
.project-dashboard .project-dashboard-right .project-content .dashboard-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.project-dashboard .project-dashboard-right .project-content .dashboard-grid .input-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.general-intro {
  height: 50vh;
  min-height: 400px;
  position: relative;
  padding: 0;
  display: flex;
}
.general-intro .general-intro-container {
  position: relative;
  margin-top: auto;
  z-index: 1;
}
.general-intro .general-intro-container h1 {
  font-family: "HelveticaNowDisplay-Bd";
  color: white;
  font-size: 2rem;
}
@media screen and (min-width: 48em) {
  .general-intro .general-intro-container h1 {
    font-size: 3rem;
  }
}
@media screen and (min-width: 64em) {
  .general-intro .general-intro-container h1 {
    font-size: 4rem;
  }
}
@media screen and (min-width: 79em) {
  .general-intro .general-intro-container h1 {
    font-size: 5rem;
  }
}
@media screen and (min-width: 90em) {
  .general-intro .general-intro-container h1 {
    font-size: 6rem;
  }
}
.general-intro .general-intro-container {
  padding: 0 2rem 3rem;
}
@media screen and (min-width: 48em) {
  .general-intro .general-intro-container {
    padding: 0 7.5% 3rem;
  }
}
@media screen and (min-width: 64em) {
  .general-intro .general-intro-container {
    padding: 0 10% 5rem;
  }
}
.general-intro .general-intro-img {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.general-intro .general-intro-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media screen and (min-width: 48em) {
  .general-intro {
    min-height: 600px;
  }
}

.projects-page {
  padding: 2rem;
}
.projects-page h2 {
  font-size: 2rem;
  margin-bottom: 4rem;
}
.projects-page .projects-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 4rem;
}
.projects-page .projects-list .project-card {
  transition: 0.3s;
  border: 2px solid #BBB7B7;
  height: fit-content;
  background-color: rgba(63, 91, 80, 0.08);
}
.projects-page .projects-list .project-card a .project-card-img {
  aspect-ratio: 16/9;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.projects-page .projects-list .project-card a .project-card-img .link-icon {
  width: 30px;
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1;
}
.projects-page .projects-list .project-card a .project-card-img .link-icon img {
  width: 100%;
  object-fit: contain;
}
.projects-page .projects-list .project-card a .project-card-img img {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
}
.projects-page .projects-list .project-card a:hover .project-card-img img {
  transform: scale(1.05) translateZ(0);
}
.projects-page .projects-list .project-card a:hover .project-card-img .link-icon img {
  transform: scale(1);
}
.projects-page .projects-list .project-card .project-card-text {
  padding: 1rem;
  padding-bottom: 1.5rem;
  min-height: 100px;
  display: flex;
  flex-direction: column;
}
.projects-page .projects-list .project-card .project-card-text h3 {
  margin: 0;
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
}
.projects-page .projects-list .project-card .project-card-text p {
  font-size: 1rem;
}
.projects-page .projects-list .project-card .project-card-text .project-card-edit-btn {
  margin-top: auto;
}
.projects-page .projects-list .project-card .project-card-text a {
  width: fit-content;
  gap: 0.5rem;
  height: 1.25rem;
  color: white;
  background-color: #3F5B50;
  border-radius: 5px;
  padding: 0.5rem 1rem;
  font-weight: normal;
}
.projects-page .projects-list .project-card .project-card-text a img {
  height: 1.5rem;
  margin-right: 0.5rem;
  margin-top: -2px;
}
.projects-page .projects-list .project-card .empty-fields {
  padding: 1rem;
}
.projects-page .projects-list .project-card .empty-fields p {
  margin-bottom: 0;
}
.projects-page .projects-list .project-card .empty-fields ul {
  padding: 0;
  padding-left: 1.5rem;
  margin: 0;
  margin-top: 1rem;
}
.projects-page .projects-list .project-card .empty-fields ul li {
  font-size: 0.8rem;
  margin: 0;
  padding: 0;
}
.projects-page .project-add-new {
  margin: 0;
  margin-top: 3rem;
  max-width: 800px;
  background-color: #3F5B50;
}
.projects-page .project-add-new .project-add-new-checkbox {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.projects-page .project-add-new .project-add-new-checkbox input[type=checkbox] {
  width: 35px !important;
  height: 35px !important;
  background-color: #F8F8F8;
  border: 1px solid #D9D9D9;
  border-radius: 5px;
}
.projects-page .project-add-new p, .projects-page .project-add-new a, .projects-page .project-add-new label {
  color: white;
  font-size: 1rem;
  font-weight: normal;
}
.projects-page .project-add-new a {
  text-decoration: underline;
}
.projects-page .project-add-new .project-add-new-title {
  font-weight: bold;
  font-size: 1.25rem;
  margin-bottom: 1rem;
  line-height: 1.25rem;
}
.projects-page .project-add-new {
  padding: 2rem 1rem;
}
.projects-page .project-add-new button:disabled, .projects-page .project-add-new button[disabled] {
  color: #3F5B50;
  cursor: not-allowed;
}
.projects-page .project-add-new button {
  padding: 1rem;
  border: 0;
  border-radius: 5px;
  color: white;
  background-color: #B2BEB9;
  text-transform: none;
  font-weight: 300;
  font-size: 1.25rem;
  height: auto;
  line-height: 1rem;
}

@media screen and (min-width: 64em) {
  .register {
    padding: 7rem 10%;
  }
}
.register .register-container {
  max-width: 1000px;
  margin: auto;
}
.register .register-container .gform_heading .gform_title {
  font-size: 2rem;
  font-family: "HelveticaNowDisplay-Regular";
  margin-bottom: 2rem;
}
.register .register-container .candidate-first .ginput_container {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.register .register-container .gform-theme--foundation .gfield input,
.register .register-container .gform-theme--foundation .gfield select {
  background-color: #F8F8F8;
  border: 1px solid #D9D9D9;
}
.register .register-container .gform-theme--foundation .gfield input::placeholder,
.register .register-container .gform-theme--foundation .gfield select::placeholder {
  color: #AEAAAA;
}
.register .register-container input[type=checkbox] {
  width: 35px !important;
  height: 35px !important;
  background-color: #F8F8F8;
  border: 1px solid #D9D9D9;
}
.register .register-container .gform-field-label {
  font-size: 1.125rem;
  color: #131313;
}
.register .register-container .gfield_radio {
  flex-direction: row !important;
}
.register .register-container .gfield--type-html p, .register .register-container .gfield--type-html a {
  font-size: 1.125rem;
}
.register .register-container .gfield--type-html a {
  color: #3F5B50;
  text-decoration: underline;
  font-weight: normal;
}
.register .register-container .gfield_price {
  display: none;
}
.register .register-container .ginput_product_price {
  border: 0 !important;
  background-color: transparent !important;
}
.register .register-container .gform_button {
  background-color: #3F5B50 !important;
}

.woocommerce h2 {
  font-size: 2rem;
}
.woocommerce .order-again {
  display: none;
}

.text-section {
  padding: 2rem;
}
.text-section .text-section-container .text-section-content p {
  color: black;
}
@media screen and (min-width: 64em) {
  .text-section {
    padding: 0rem;
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
  .text-section .text-section-container .text-section-content {
    padding-inline: 7.5%;
    margin: auto;
    max-width: calc(1000px + 15%);
  }
  .text-section .text-section-container .text-section-content p {
    color: black;
  }
}

.composition {
  background-color: #131313;
  padding: 0;
  padding-top: 3rem;
}
.composition .composition-container .composition-title {
  padding-inline: 2rem;
}
.composition .composition-container .composition-title h2 {
  color: white;
}
.composition .composition-container .composition-text {
  padding: 2rem;
  padding-top: 0;
}
.composition .composition-container .composition-text p {
  color: white;
}
.composition .composition-container .composition-president {
  padding: 2rem;
}
.composition .composition-container .composition-president .composition-president-title h3 {
  color: white;
  text-transform: uppercase;
  font-family: "HelveticaNowDisplay-Regular";
  font-weight: normal;
  font-size: 1.75rem;
}
.composition .composition-container .composition-president .composition-president-list .president-item {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.composition .composition-container .composition-president .composition-president-list .president-item .president-img {
  aspect-ratio: 1;
  width: 200px;
  height: 200px;
}
.composition .composition-container .composition-president .composition-president-list .president-item .president-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.composition .composition-container .composition-president .composition-president-list .president-item .president-text .name {
  font-weight: bold;
  font-family: "HelveticaNowDisplay-Bd";
  color: white;
  margin: 0;
}
.composition .composition-container .composition-president .composition-president-list .president-item .president-text .poste {
  font-family: "HelveticaNowDisplay-Regular";
  color: white;
  font-weight: normal;
  margin: 0;
}
.composition .composition-container .composition-members {
  padding: 2rem;
}
.composition .composition-container .composition-members .composition-members-title h3 {
  color: white;
  text-transform: uppercase;
  font-family: "HelveticaNowDisplay-Regular";
  font-weight: normal;
  font-size: 1.75rem;
}
.composition .composition-container .composition-members .composition-members-list .members-item {
  display: flex;
  flex-direction: column;
  margin-bottom: 2rem;
}
.composition .composition-container .composition-members .composition-members-list .members-item:last-of-type {
  margin: 0;
}
.composition .composition-container .composition-members .composition-members-list .members-item .members-img {
  aspect-ratio: 1;
  width: 200px;
  height: 200px;
}
.composition .composition-container .composition-members .composition-members-list .members-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.composition .composition-container .composition-members .composition-members-list .members-item .name {
  margin-top: 0.5rem;
  font-family: "HelveticaNowDisplay-Bd";
  font-weight: bold;
  color: white;
  margin-bottom: 0;
}
.composition .composition-container .composition-members .composition-members-list .members-item .poste {
  font-family: "HelveticaNowDisplay-Regular";
  color: white;
  font-weight: normal;
}
@media screen and (min-width: 64em) {
  .composition {
    padding-top: 10rem;
  }
  .composition .composition-container {
    position: relative;
  }
  .composition .composition-container .composition-title {
    position: absolute;
    left: 7.5%;
    top: 0;
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    padding-inline: 0;
  }
  .composition .composition-container .composition-title h2 {
    margin: 0;
    color: white;
  }
  .composition .composition-container .composition-text {
    max-width: 75%;
    margin-left: auto;
    padding-inline: 0;
    padding-right: 30%;
    padding-bottom: 5rem;
  }
  .composition .composition-container .composition-president {
    padding: 0;
    max-width: 75%;
    margin-left: auto;
    padding-right: 15%;
  }
  .composition .composition-container .composition-president .composition-president-title h3 {
    color: white;
    text-transform: uppercase;
  }
  .composition .composition-container .composition-president .composition-president-list {
    margin-bottom: 5rem;
  }
  .composition .composition-container .composition-president .composition-president-list .president-item {
    display: flex;
    flex-direction: row;
    gap: 1rem;
  }
  .composition .composition-container .composition-president .composition-president-list .president-item .president-img {
    aspect-ratio: 1;
    width: 200px;
    height: 200px;
  }
  .composition .composition-container .composition-president .composition-president-list .president-item .president-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .composition .composition-container .composition-president .composition-president-list .president-item .president-text {
    flex-grow: 1;
    align-self: end;
  }
  .composition .composition-container .composition-president .composition-president-list .president-item .president-text .name {
    margin-top: auto;
    font-weight: bold;
    color: white;
  }
  .composition .composition-container .composition-president .composition-president-list .president-item .president-text .poste {
    color: white;
    font-weight: normal;
  }
  .composition .composition-container .composition-members {
    max-width: 75%;
    margin-left: auto;
    padding: 0;
    padding-right: 15%;
    padding-bottom: 5rem;
  }
  .composition .composition-container .composition-members .composition-members-title h3 {
    color: white;
    text-transform: uppercase;
  }
  .composition .composition-container .composition-members .composition-members-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
  .composition .composition-container .composition-members .composition-members-list .members-item {
    display: flex;
    flex-direction: column;
  }
  .composition .composition-container .composition-members .composition-members-list .members-item .members-img {
    aspect-ratio: 1;
    width: 200px;
    height: 200px;
  }
  .composition .composition-container .composition-members .composition-members-list .members-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .composition .composition-container .composition-members .composition-members-list .members-item .name {
    margin-top: 0.5rem;
    font-weight: bold;
    color: white;
  }
  .composition .composition-container .composition-members .composition-members-list .members-item .poste {
    color: white;
    font-weight: normal;
  }
}

.role {
  padding: 0;
  padding-top: 5rem;
}
.role .role-container {
  display: grid;
}
.role .role-container .role-title {
  order: 0;
  padding-inline: 2rem;
}
.role .role-container .role-list {
  order: 2;
  padding: 2rem;
  padding-bottom: 4rem;
  display: grid;
  gap: 3rem;
}
.role .role-container .role-list .role-item .number {
  font-size: 6rem;
  line-height: 1em;
  font-family: "HelveticaNowText-Bold";
  margin-bottom: 0;
  padding-bottom: 2rem;
  position: relative;
}
.role .role-container .role-list .role-item .number::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 6px;
  background-color: #131313;
  width: 100%;
}
.role .role-container .role-list .role-item .text {
  font-family: "HelveticaNowText-Medium";
  line-height: 1.4em;
  padding-right: 1.5rem;
  margin-top: 2rem;
}
.role .role-container .role-text {
  order: 1;
  padding: 2rem;
  padding-top: 0;
}
@media screen and (min-width: 64em) {
  .role .role-container .role-list {
    grid-template-columns: 300px 1fr;
  }
}
@media screen and (min-width: 64em) {
  .role {
    padding-top: 10rem;
    padding-bottom: 5rem;
  }
  .role .role-container {
    position: relative;
  }
  .role .role-container .role-title {
    position: absolute;
    left: 82.5%;
    top: 0;
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
    padding-inline: 0;
  }
  .role .role-container .role-title h2 {
    margin: 0;
  }
  .role .role-container .role-list {
    order: 1;
    max-width: none;
    width: 100%;
    margin-right: auto;
    padding-left: 15%;
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-right: 30%;
    display: grid;
    grid-template-columns: 400px 1fr;
    gap: 0;
  }
  .role .role-container .role-list .role-item .text {
    max-width: 400px;
  }
  .role .role-container .role-list .role-item .number {
    font-size: 8rem;
    line-height: 1em;
    font-family: "HelveticaNowText-Bold";
    margin-bottom: 0;
    padding-bottom: 2rem;
    position: relative;
  }
  .role .role-container .role-list .role-item .number::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 8px;
    background-color: #131313;
    width: 100%;
  }
  .role .role-container .role-list .role-item .text {
    font-family: "HelveticaNowText-Medium";
    line-height: 1.4em;
    padding-right: 1.5rem;
    margin-top: 2rem;
  }
  .role .role-container .role-text {
    order: 2;
    max-width: 75%;
    margin-right: auto;
    padding-left: 15%;
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-right: 7.5%;
  }
}

.cgu-content .cgu-content-container {
  max-width: 1400px;
  margin: auto;
}
.cgu-content .cgu-content-container h2 {
  font-size: 2rem;
  margin-bottom: 2rem;
}

/*  -----------------------------------------------------------
	Media Queries - Mobile phones (> 480px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Small desktop & vertical tablets (> 768px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1024px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1264px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1440px
------------------------------------------------------------ */
/* IE */
/* ------------------------------------------
 05 HOMEPAGE
------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Mobile phones (> 480px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Small desktop & vertical tablets (> 768px)
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1024px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1264px
------------------------------------------------------------ */
/*  -----------------------------------------------------------
	Media Queries - Desktop > 1440px
------------------------------------------------------------ */
/* IE */
/* ============================================
   NOMINÉS ET LAURÉATS - PAGE STYLES
   ============================================ */
/* Hero Section */
.nl-hero {
  position: relative;
  height: 80vh;
  min-height: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: #fff;
  overflow: hidden;
}

.nl-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%);
}

.nl-hero-content {
  position: relative;
  z-index: 2;
  text-align: center 0 2;
  padding: rem;
  max-width: 900px;
}

.nl-title {
  font-family: "HelveticaNowText-Light";
  font-size: clamp(2.5rem, 8vw, 5rem);
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1.5rem;
  color: #fff;
}

.nl-subtitle {
  font-size: clamp(1rem, 2vw, 1.25rem);
  line-height: 1.6;
  opacity: 0.9;
  max-width: 700px;
  margin: 0 auto;
}

.nl-scroll-indicator {
  position: absolute;
  bottom: 3rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  animation: bounce 2s infinite;
  z-index: 2;
}

.nl-scroll-indicator span {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  opacity: 0.7;
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateX(-50%) translateY(0);
  }
  40% {
    transform: translateX(-50%) translateY(-10px);
  }
  60% {
    transform: translateX(-50%) translateY(-5px);
  }
}
/* Filter Section */
.nl-filter {
  background-color: #000;
  padding: 1.5rem 0;
  position: sticky;
  top: 0;
  z-index: 100;
}

.nl-filter-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.nl-filter-label {
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #fff;
  opacity: 0.6;
}

.nl-year-selector {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: center;
}

.nl-year-btn {
  padding: 0.5rem 1.5rem;
  font-size: 1rem;
  color: #fff;
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.3);
  transition: all 0.3s ease;
}

.nl-year-btn:hover,
.nl-year-btn.active {
  background-color: #fff;
  color: #000;
  border-color: #fff;
}

/* Sections */
.nl-section {
  padding: 6rem 0;
}

.nl-winners {
  background-color: #fafafa;
}

.nl-section-header {
  text-align: center;
  margin-bottom: 4rem;
}

.nl-section-label {
  display: block;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  color: #8c5932;
  margin-bottom: 1rem;
}

.nl-section-title {
  font-family: "HelveticaNowText-Light";
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0;
}

/* Projects Grid */
.nl-projects-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
}

@media screen and (min-width: 48em) {
  .nl-projects-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 64em) {
  .nl-projects-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }
}
.nl-nominees-grid {
  grid-template-columns: repeat(1, 1fr);
}

@media screen and (min-width: 48em) {
  .nl-nominees-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* Project Card */
.nl-project-card {
  position: relative;
  background: #fff;
  transition: transform 0.4s ease;
}

.nl-project-card:hover {
  transform: translateY(-8px);
}

.nl-card-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.nl-card-image {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background-color: #f0f0f0;
}

.nl-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.nl-project-card:hover .nl-card-image img {
  transform: scale(1.08);
}

.nl-card-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #e0e0e0 0%, #f5f5f5 100%);
}

.nl-card-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.nl-project-card:hover .nl-card-overlay {
  opacity: 1;
}

.nl-view-project {
  padding: 0.75rem 1.5rem;
  background: #fff;
  color: #000;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
}

.nl-card-content {
  padding: 1.5rem;
}

.nl-project-category {
  display: inline-block;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: #8c5932;
  margin-bottom: 0.75rem;
}

.nl-project-name {
  font-family: "HelveticaNowText-Medium";
  font-size: 1.25rem;
  font-weight: 500;
  margin: 0 0 0.5rem;
  line-height: 1.3;
}

.nl-project-architect {
  font-size: 0.95rem;
  color: #555;
  margin: 0 0 0.25rem;
}

.nl-project-location {
  font-size: 0.85rem;
  color: #888;
  margin: 0;
}

/* Winner Card Special Styles */
.nl-winner .nl-card-image {
  aspect-ratio: 16/10;
}

.nl-winner .nl-project-name {
  font-family: "HelveticaNowText-Light";
  font-size: 1.5rem;
}

.nl-winner .nl-project-architect {
  font-size: 1rem;
}

/* ============================================
 WINNER SPECIAL STYLES - REFINED ARCHITECTURAL DESIGN
 ============================================ */
.nl-featured-winner {
  position: relative;
  background: #fff;
  padding: 0;
  margin-bottom: 6rem;
  overflow: hidden;
}

.nl-featured-winner-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 70vh;
}

.nl-featured-winner-image {
  position: relative;
  overflow: hidden;
}
.nl-featured-winner-image .nl-featured-image-link {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.nl-featured-winner-image .nl-featured-image-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.nl-featured-winner-image .nl-featured-image-link:hover img {
  transform: scale(1.03);
}
.nl-featured-winner-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.nl-featured-winner-image:hover img {
  transform: scale(1.03);
}

.nl-featured-winner-image::after {
  content: "";
  position: absolute;
  top: 0;
  right: -30px;
  width: 60px;
  height: 100%;
  background: inherit;
  transform: skewX(-5deg);
  pointer-events: none;
  background: #fff;
}

.nl-featured-winner-content {
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 4rem 4rem 4rem 6rem;
  position: relative;
}

.nl-featured-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  color: #1a1a1a;
  margin-bottom: 2rem;
  position: relative;
  padding-left: 1.5rem;
}
.nl-featured-badge::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 2px;
  background: #1a1a1a;
}

.nl-featured-winner-title {
  font-family: "HelveticaNowText-Light";
  font-size: clamp(2.5rem, 4vw, 4rem);
  font-weight: 300;
  margin: 0 0 1.5rem;
  line-height: 1.1;
  color: #1a1a1a;
  letter-spacing: -0.02em;
}

.nl-featured-winner-architect {
  font-size: 1rem;
  color: #666;
  margin: 0 0 0.25rem;
  font-weight: 400;
}

.nl-featured-winner-location {
  font-size: 0.9rem;
  color: #999;
  margin: 0 0 2rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.nl-featured-winner-category {
  display: inline-block;
  font-size: 0.8rem;
  color: #1a1a1a;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid #1a1a1a;
  margin-bottom: 2rem;
}

.nl-featured-winner-description {
  font-size: 1rem;
  line-height: 1.8;
  color: #555;
  margin-bottom: 2.5rem;
  max-width: 500px;
}

.nl-featured-winner-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  color: #1a1a1a;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  text-decoration: none;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.nl-featured-winner-cta:hover {
  gap: 1.25rem;
  color: #666;
}
.nl-featured-winner-cta svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}
.nl-featured-winner-cta:hover svg {
  transform: translateX(5px);
}

.nl-featured-winner-content::before {
  content: "";
  position: absolute;
  top: 4rem;
  left: 3rem;
  width: 40px;
  height: 1px;
  background: #1a1a1a;
}

@media (max-width: 992px) {
  .nl-featured-winner-inner {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .nl-featured-winner-image {
    height: 50vh;
  }
  .nl-featured-winner-image::after {
    display: none;
  }
  .nl-featured-winner-content {
    padding: 3rem 2rem;
  }
  .nl-featured-winner-content::before {
    top: 2rem;
    left: 2rem;
  }
}
.nl-winner {
  position: relative;
  background: #fff;
}
.nl-winner::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 40px 40px 0;
  border-color: transparent #1a1a1a transparent transparent;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.nl-winner:hover::after {
  opacity: 1;
}

.nl-winner .nl-card-content {
  position: relative;
  padding-top: 1.25rem;
}

.nl-winner .nl-card-content::before {
  content: "Winner";
  position: absolute;
  top: 0;
  left: 1.5rem;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: #1a1a1a;
}

.nl-winners .nl-section-header {
  position: relative;
  margin-bottom: 5rem;
}

.nl-winners .nl-section-label {
  position: relative;
  display: inline-block;
  color: #1a1a1a;
}
.nl-winners .nl-section-label::after {
  content: "/";
  margin: 0 0.5rem;
  opacity: 0.3;
}

/* No Results */
.nl-no-results {
  padding: 8rem 0;
  text-align: center;
}

.nl-no-results-content {
  max-width: 500px;
  margin: 0 auto;
}

.nl-no-results-content p {
  font-size: 1.125rem;
  color: #666;
}

/* Responsive */
@media screen and (max-width: 48em) {
  .nl-hero {
    height: 60vh;
    min-height: 400px;
  }
  .nl-section {
    padding: 4rem 0;
  }
  .nl-section-header {
    margin-bottom: 2.5rem;
  }
  .nl-filter-container {
    gap: 1rem;
  }
}
/* ============================================
 PROJECT POPUP STYLES
 ============================================ */
.nl-popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.nl-popup.active {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

.nl-popup-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(30px);
}

.nl-popup-container {
  position: relative;
  width: 95%;
  max-width: 90vw;
  max-height: 90vh;
  margin: 5vh auto;
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transform: translateY(20px);
  transition: transform 0.4s ease;
  border: 1px solid rgba(140, 89, 50, 0.08);
  box-shadow: 0 28px 80px rgba(17, 17, 17, 0.24);
}
.nl-popup-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #7e4f2c 0%, #d4af37 50%, #7e4f2c 100%);
  z-index: 250;
}

.nl-popup.active .nl-popup-container {
  transform: translateY(0);
}

.nl-popup-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 44px;
  height: 44px;
  background: rgba(247, 244, 238, 0.94);
  color: #161616;
  border: 1px solid rgba(140, 89, 50, 0.22);
  border-radius: 50%;
  cursor: pointer;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
}
.nl-popup-close:hover {
  background: #161616;
  color: #d4af37;
  border-color: rgba(212, 175, 55, 0.5);
  transform: scale(1.06);
}
.nl-popup-close span {
  color: #000000;
  font-size: 24px;
  font-weight: 300;
  line-height: 1;
  margin-top: -1px;
}
.nl-popup-close:hover span {
  color: #ffffff;
}
.nl-popup-close i {
  color: currentColor;
  font-size: 18px;
  line-height: 1;
  display: block;
}

.nl-popup-header {
  flex-shrink: 0;
}

.nl-popup-collapse {
  position: absolute;
  top: 82px;
  right: 18px;
  z-index: 200;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(247, 244, 238, 0.94);
  color: #161616;
  border: 1px solid rgba(140, 89, 50, 0.22);
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
  transition: all 0.3s ease;
}

.nl-popup-collapse:hover {
  background: #161616;
  color: #d4af37;
  border-color: rgba(212, 175, 55, 0.5);
}

.nl-popup-collapse.active svg {
  transform: rotate(180deg);
}

.nl-popup-collapse.active i {
  transform: rotate(180deg);
}

.nl-popup-collapse i {
  color: currentColor;
  font-size: 16px;
  line-height: 1;
  display: block;
}

.nl-popup-close i,
.nl-popup-collapse i,
.nl-popup-nav i {
  font-size: 0;
  width: 0;
  height: 0;
  overflow: hidden;
}

.nl-popup-close::before,
.nl-popup-close::after,
.nl-popup-collapse::before,
.nl-popup-prev::before,
.nl-popup-next::before {
  content: "";
  position: absolute;
  display: block;
  color: currentColor;
}

.nl-popup-close::before {
  width: 18px;
  height: 2px;
  left: 50%;
  top: 50%;
  background: currentColor;
  border-radius: 2px;
  transform: translate(-50%, -50%) rotate(45deg);
}

.nl-popup-close::after {
  width: 18px;
  height: 2px;
  left: 50%;
  top: 50%;
  background: currentColor;
  border-radius: 2px;
  transform: translate(-50%, -50%) rotate(-45deg);
}

.nl-popup-collapse::before {
  width: 12px;
  height: 12px;
  left: 50%;
  top: 50%;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translate(-50%, -62%) rotate(45deg);
}

.nl-popup-prev::before {
  width: 12px;
  height: 12px;
  left: 50%;
  top: 50%;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translate(-38%, -50%) rotate(45deg);
}

.nl-popup-next::before {
  width: 12px;
  height: 12px;
  left: 50%;
  top: 50%;
  border-right: 2px solid currentColor;
  border-top: 2px solid currentColor;
  transform: translate(-62%, -50%) rotate(45deg);
}

.nl-popup-collapse.active::before {
  transform: translate(-50%, -40%) rotate(-135deg);
}

.nl-popup-header.collapsed .nl-popup-hero {
  height: 120px !important;
}

.nl-popup-header.collapsed .nl-popup-title-section {
  padding-top: 18px;
  padding-bottom: 18px;
}

.nl-popup-header.collapsed .nl-popup-category,
.nl-popup-header.collapsed .nl-popup-architect,
.nl-popup-header.collapsed .nl-popup-location {
  opacity: 0;
  max-height: 0;
  margin: 0;
  overflow: hidden;
}

.nl-popup-hero {
  position: relative;
  height: 350px;
  overflow: hidden;
  transition: height 0.3s ease;
  background: #1a1a1a;
}
.nl-popup-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.7) 100%);
  z-index: 1;
  pointer-events: none;
}
.nl-popup-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(80% 100% at 50% 0%, rgba(212, 175, 55, 0.24) 0%, rgba(212, 175, 55, 0) 65%);
  pointer-events: none;
  z-index: 1;
}

.nl-popup-hero img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.nl-popup-hero img {
  cursor: pointer;
}

.nl-popup-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
}

.nl-popup-title-section {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 40px;
  color: #fff;
  z-index: 2;
  backdrop-filter: blur(2px) saturate(115%);
  -webkit-backdrop-filter: blur(2px) saturate(115%);
  border-top: 1px solid rgba(255, 255, 255, 0.24);
}

.nl-popup-category {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #D4AF37;
  margin-bottom: 12px;
  padding: 4px 12px;
  background: rgba(0, 0, 0, 0.4);
  border-radius: 4px;
  border: 1px solid rgba(212, 175, 55, 0.4);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
}

.nl-popup-title-section h2 {
  font-family: "HelveticaNowText-Light";
  font-size: 36px;
  font-weight: 300;
  margin: 0 0 12px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.nl-popup-architect {
  font-size: 16px;
  margin: 0 0 4px;
  opacity: 0.9;
}

.nl-popup-location {
  font-size: 14px;
  margin: 0;
  opacity: 0.8;
}

/* Tabs Navigation */
.nl-popup-tabs {
  display: flex;
  overflow-x: hidden;
  background: linear-gradient(180deg, rgba(250, 248, 245, 0.98) 0%, rgba(255, 255, 255, 0.98) 100%);
  border-bottom: 1px solid rgba(140, 89, 50, 0.12);
  flex-shrink: 0;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 0;
}

.nl-popup-tabs::-webkit-scrollbar {
  display: none;
}

.nl-tabs-container {
  display: flex;
  justify-content: stretch;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  width: 100%;
  padding: 0;
  min-height: 60px;
}

.nl-tab-btn {
  flex: 1 1 0;
  min-width: 0;
  background: none;
  border: none;
  font-size: 13px;
  font-weight: 500;
  color: rgba(22, 22, 22, 0.62);
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.3s ease;
  position: relative;
  padding: 16px 10px;
  text-align: center;
}
.nl-tab-btn::after {
  left: 12px;
  right: 12px;
  width: auto;
  transform: none;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.nl-tab-btn:hover {
  color: #333;
}
.nl-tab-btn.active {
  color: #1a1a1a;
  font-weight: 600;
}
.nl-tab-btn.active::after {
  left: 12px;
  right: 12px;
  width: auto;
  opacity: 1;
}
.nl-tab-btn:hover::after {
  left: 12px;
  right: 12px;
  width: auto;
  opacity: 1;
}

/* Tab Content */
.nl-popup-content {
  flex: 1;
  overflow-y: auto;
  padding: 30px 40px;
  background: linear-gradient(180deg, #ffffff 0%, #fcfaf7 100%);
}

.nl-tab-content {
  display: none;
  animation: fadeIn 0.3s ease;
}

.nl-tab-content.active {
  display: block;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* General Tab */
.nl-popup-grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 40px;
  margin-bottom: 40px;
}

.nl-popup-info h3,
.nl-popup-intro h3,
.nl-popup-gallery h3,
.nl-popup-description h3,
.nl-popup-durability h3,
.nl-popup-3d h3,
.nl-popup-plans h3,
.nl-popup-summary h3,
.nl-popup-location-info h3 {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 20px;
  color: #333;
}

.nl-popup-details .detail-item {
  margin-bottom: 16px;
}

.nl-popup-details dt {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #999;
  margin-bottom: 4px;
}

.nl-popup-details dd {
  font-size: 15px;
  color: #333;
  margin: 0;
}

.nl-popup-intro div,
.nl-popup-description div,
.nl-popup-durability div,
.nl-popup-location-info div,
.nl-popup-summary-section div {
  font-size: 15px;
  line-height: 1.7;
  color: #555;
}

/* Gallery Grid */
.nl-popup-gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 16px;
  margin-top: 20px;
}

.nl-popup-gallery-grid img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 10px;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
}

.nl-popup-gallery-grid img:hover {
  transform: scale(1.02);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

/* Location Tab */
.nl-popup-location-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-bottom: 40px;
}

.nl-popup-map {
  min-height: 300px;
  background: #f5f5f5;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #999;
}

/* Plans Tab */
.nl-popup-plan-section {
  margin-bottom: 30px;
}

.nl-popup-plan-section h3 {
  margin-bottom: 15px;
}

/* Summary Tab */
.nl-popup-summary {
  margin-bottom: 30px;
}

.nl-popup-summary-section {
  margin-bottom: 25px;
}

/* Responsive Popup */
@media (max-width: 768px) {
  .nl-popup-container {
    width: 100%;
    max-height: 100vh;
    border-radius: 0;
  }
  .nl-popup-hero {
    height: 200px;
  }
  .nl-popup-title-section {
    padding: 20px;
  }
  .nl-popup-title-section h2 {
    font-size: 24px;
  }
  .nl-popup-tabs {
    overflow-x: auto;
    padding: 0;
  }
  .nl-tab-btn {
    flex: 0 0 auto;
    min-width: 132px;
    padding: 14px 14px;
    font-size: 12px;
  }
  .nl-popup-content {
    padding: 20px;
  }
  .nl-popup-grid,
  .nl-popup-location-content {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
/* ============================================
 LIGHTBOX STYLES
 ============================================ */
.nl-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, 0.95);
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.nl-lightbox.active {
  display: flex;
  opacity: 1;
}

.nl-lightbox-close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.1);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}

.nl-lightbox-close:hover {
  background: rgba(255, 255, 255, 0.2);
}

.nl-lightbox-close svg {
  color: white;
}

.nl-lightbox-close i {
  color: #fff;
  font-size: 22px;
}

.nl-lightbox-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.1);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}

.nl-lightbox-nav:hover {
  background: rgba(255, 255, 255, 0.2);
}

.nl-lightbox-nav svg {
  color: white;
}

.nl-lightbox-nav i {
  color: #fff;
  font-size: 20px;
}

.nl-lightbox-prev {
  left: 20px;
}

.nl-lightbox-next {
  right: 20px;
}

.nl-lightbox-content {
  max-width: 90%;
  max-height: 90%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.nl-lightbox-content img {
  max-width: 100%;
  max-height: 80vh;
  object-fit: contain;
  border-radius: 4px;
}

.nl-lightbox-caption {
  color: white;
  margin-top: 15px;
  font-size: 14px;
  text-align: center;
  opacity: 0.8;
}

/* Map placeholder */
.nl-map-placeholder {
  width: 100%;
  height: 100%;
  min-height: 300px;
  background: #f5f5f5;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #999;
  font-size: 14px;
}

.nl-map-placeholder span {
  padding: 20px;
  text-align: center;
}

/* Fix footer visibility on nominations page */
.page-template-page-nomines-laureats #page,
.page-template-nomines-et-laureats #page {
  min-height: auto;
  display: block;
}

.page-template-page-nomines-laureats .site-content,
.page-template-nomines-et-laureats .site-content {
  display: block;
}

.page-template-page-nomines-laureats footer,
.page-template-nomines-et-laureats footer {
  position: relative;
  z-index: 10;
}

/* ============================================
 SCROLL ANIMATIONS
 ============================================ */
.nl-project-card,
.nl-section-header,
.nl-filter {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.nl-project-card.is-visible,
.nl-section-header.is-visible,
.nl-filter.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.nl-projects-grid .nl-project-card:nth-child(1) {
  transition-delay: 0.1s;
}
.nl-projects-grid .nl-project-card:nth-child(2) {
  transition-delay: 0.2s;
}
.nl-projects-grid .nl-project-card:nth-child(3) {
  transition-delay: 0.3s;
}
.nl-projects-grid .nl-project-card:nth-child(4) {
  transition-delay: 0.4s;
}
.nl-projects-grid .nl-project-card:nth-child(5) {
  transition-delay: 0.5s;
}
.nl-projects-grid .nl-project-card:nth-child(6) {
  transition-delay: 0.6s;
}
.nl-projects-grid .nl-project-card:nth-child(7) {
  transition-delay: 0.7s;
}
.nl-projects-grid .nl-project-card:nth-child(8) {
  transition-delay: 0.8s;
}
.nl-projects-grid .nl-project-card:nth-child(9) {
  transition-delay: 0.9s;
}
.nl-projects-grid .nl-project-card:nth-child(10) {
  transition-delay: 1s;
}
.nl-projects-grid .nl-project-card:nth-child(11) {
  transition-delay: 1.1s;
}
.nl-projects-grid .nl-project-card:nth-child(12) {
  transition-delay: 1.2s;
}

.nl-winners .nl-projects-grid .nl-project-card:nth-child(1) {
  transition-delay: 0.15s;
}
.nl-winners .nl-projects-grid .nl-project-card:nth-child(2) {
  transition-delay: 0.3s;
}
.nl-winners .nl-projects-grid .nl-project-card:nth-child(3) {
  transition-delay: 0.45s;
}
.nl-winners .nl-projects-grid .nl-project-card:nth-child(4) {
  transition-delay: 0.6s;
}
.nl-winners .nl-projects-grid .nl-project-card:nth-child(5) {
  transition-delay: 0.75s;
}
.nl-winners .nl-projects-grid .nl-project-card:nth-child(6) {
  transition-delay: 0.9s;
}

/* ============================================
 ENHANCED HOVER EFFECTS
 ============================================ */
.nl-project-card {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04);
}
.nl-project-card:hover {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}
.nl-project-card:hover .nl-card-image img {
  filter: brightness(1.05);
}

.nl-card-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(140, 89, 50, 0.3) 0%, rgba(0, 0, 0, 0.5) 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
}
.nl-project-card:hover .nl-card-overlay::before {
  opacity: 1;
}

.nl-view-project {
  transform: translateY(10px);
  opacity: 0;
  transition: all 0.4s ease;
}
.nl-project-card:hover .nl-view-project {
  transform: translateY(0);
  opacity: 1;
}

.nl-card-content {
  transition: background-color 0.3s ease;
}
.nl-project-card:hover .nl-card-content {
  background-color: #fafafa;
}

.nl-project-category {
  position: relative;
  overflow: hidden;
}
.nl-project-category::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #8c5932;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease;
}
.nl-project-card:hover .nl-project-category::after {
  transform: scaleX(1);
  transform-origin: left;
}

/* ============================================
 HERO SECTION ENHANCED ANIMATIONS
 ============================================ */
.nl-hero-content {
  opacity: 0;
  transform: translateY(30px);
  animation: heroFadeIn 1s ease forwards;
  animation-delay: 0.3s;
}

@keyframes heroFadeIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.nl-scroll-indicator::before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 30px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    transform: translateX(-50%) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%) scale(2);
    opacity: 0;
  }
}
.nl-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  transform: translateZ(-1px);
  z-index: -1;
}

/* ============================================
 FILTER SECTION ANIMATIONS
 ============================================ */
.nl-year-btn {
  position: relative;
  overflow: hidden;
}
.nl-year-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s ease;
}
.nl-year-btn:hover::before {
  left: 100%;
}
.nl-year-btn.active {
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
}

/* ============================================
 SECTION HEADER ANIMATIONS
 ============================================ */
.nl-section-header .nl-section-label {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.nl-section-header .nl-section-title {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease 0.2s, transform 0.5s ease 0.2s;
}
.nl-section-header.is-visible .nl-section-label,
.nl-section-header.is-visible .nl-section-title {
  opacity: 1;
  transform: translateY(0);
}

/* ============================================
 POPUP ENHANCED ANIMATIONS
 ============================================ */
.nl-popup-container {
  transform: translateY(40px) scale(0.95);
}
.nl-popup.active .nl-popup-container {
  transform: translateY(0) scale(1);
}

.nl-tab-btn::after {
  left: 12px;
  right: 12px;
  width: auto;
  transform: none;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.nl-tab-btn:hover::after {
  left: 12px;
  right: 12px;
  width: auto;
  opacity: 1;
}
.nl-tab-btn.active::after {
  left: 12px;
  right: 12px;
  width: auto;
  opacity: 1;
}
.nl-tab-btn .nl-tab-icon {
  transition: transform 0.3s ease;
}
.nl-tab-btn.active .nl-tab-icon {
  transform: scale(1.1);
}

.nl-popup-gallery-grid img {
  opacity: 0;
  transform: scale(0.9);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.nl-popup-gallery-grid img:nth-child(1) {
  transition-delay: 0.05s;
}
.nl-popup-gallery-grid img:nth-child(2) {
  transition-delay: 0.1s;
}
.nl-popup-gallery-grid img:nth-child(3) {
  transition-delay: 0.15s;
}
.nl-popup-gallery-grid img:nth-child(4) {
  transition-delay: 0.2s;
}
.nl-popup-gallery-grid img:nth-child(5) {
  transition-delay: 0.25s;
}
.nl-popup-gallery-grid img:nth-child(6) {
  transition-delay: 0.3s;
}
.nl-popup-gallery-grid img:nth-child(7) {
  transition-delay: 0.35s;
}
.nl-popup-gallery-grid img:nth-child(8) {
  transition-delay: 0.4s;
}
.nl-popup-gallery-grid img:nth-child(9) {
  transition-delay: 0.45s;
}
.nl-popup-gallery-grid img:nth-child(10) {
  transition-delay: 0.5s;
}
.nl-popup-gallery-grid img:nth-child(11) {
  transition-delay: 0.55s;
}
.nl-popup-gallery-grid img:nth-child(12) {
  transition-delay: 0.6s;
}
.nl-tab-content.active .nl-popup-gallery-grid img {
  opacity: 1;
  transform: scale(1);
}

.nl-popup-hero img {
  transition: transform 0.6s ease;
}
.nl-popup.active .nl-popup-hero img {
  transform: scale(1.05);
  animation: heroImageZoom 8s ease infinite alternate;
}

@keyframes heroImageZoom {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.1);
  }
}
.nl-popup-close:hover {
  transform: rotate(90deg);
}

/* ============================================
 LIGHTBOX ENHANCED ANIMATIONS
 ============================================ */
.nl-lightbox.active ~ .nl-lightbox {
  backdrop-filter: blur(10px);
}

.nl-lightbox-content img {
  opacity: 0;
  transform: scale(0.9);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.nl-lightbox.active .nl-lightbox-content img {
  opacity: 1;
  transform: scale(1);
}

.nl-lightbox-nav:hover {
  transform: translateY(-50%) scale(1.1);
}

/* ============================================
 RESPONSIVE ANIMATIONS
 ============================================ */
@media (prefers-reduced-motion: reduce) {
  .nl-project-card,
  .nl-section-header,
  .nl-filter,
  .nl-card-image img,
  .nl-card-overlay,
  .nl-view-project,
  .nl-year-btn::before,
  .nl-popup-container,
  .nl-popup-gallery-grid img,
  .nl-lightbox-content img {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}
@media screen and (max-width: 48em) {
  .nl-projects-grid .nl-project-card:nth-child(1) {
    transition-delay: 0.05s;
  }
  .nl-projects-grid .nl-project-card:nth-child(2) {
    transition-delay: 0.1s;
  }
  .nl-projects-grid .nl-project-card:nth-child(3) {
    transition-delay: 0.15s;
  }
  .nl-projects-grid .nl-project-card:nth-child(4) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(5) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(6) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(7) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(8) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(9) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(10) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(11) {
    transition-delay: 0.2s;
  }
  .nl-projects-grid .nl-project-card:nth-child(12) {
    transition-delay: 0.2s;
  }
}
/* ============================================
 POPUP NAVIGATION, THUMBNAILS & BACKGROUND
 ============================================ */
.nl-popup-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  background-size: cover;
  background-position: center;
  filter: blur(15px);
  transform: scale(1.1);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.nl-popup.active .nl-popup-bg {
  opacity: 1;
}

.nl-popup-nav {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100;
  width: 56px;
  height: 56px;
  background: rgba(247, 244, 238, 0.94);
  color: #161616;
  border: 1px solid rgba(140, 89, 50, 0.22);
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
}
.nl-popup-nav:hover {
  background: #161616;
  color: #d4af37;
  border-color: rgba(212, 175, 55, 0.5);
  transform: translateY(-50%) scale(1.06);
}
.nl-popup-nav:hover svg {
  stroke: currentColor;
}
.nl-popup-nav svg {
  width: 24px;
  height: 24px;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
  transition: stroke 0.3s ease;
}
.nl-popup-nav i {
  color: currentColor;
  font-size: 18px;
  line-height: 1;
  display: block;
}

.nl-popup-prev {
  left: 20px;
}
@media screen and (max-width: 768px) {
  .nl-popup-prev {
    left: 10px;
    width: 44px;
    height: 44px;
  }
}

.nl-popup-next {
  right: 20px;
}
@media screen and (max-width: 768px) {
  .nl-popup-next {
    right: 10px;
    width: 44px;
    height: 44px;
  }
}

.nl-popup-counter {
  position: fixed;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  background: rgba(247, 244, 238, 0.94);
  padding: 10px 24px;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 500;
  color: #1a1a1a;
  border: 1px solid rgba(140, 89, 50, 0.22);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .nl-popup-counter {
    bottom: 20px;
    padding: 8px 18px;
    font-size: 13px;
  }
}

.nl-popup-thumbnails {
  padding: 24px 40px 30px;
  background: #fafafa;
  border-top: 1px solid rgba(140, 89, 50, 0.12);
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .nl-popup-thumbnails {
    padding: 16px 20px 20px;
  }
}

.nl-popup-thumbnails-container {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 8px 4px;
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(140, 89, 50, 0.12);
  border-radius: 14px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.nl-popup-thumbnails-container::-webkit-scrollbar {
  display: none;
}
.nl-popup-thumbnails-container img {
  flex: 0 0 80px;
  height: 60px;
  object-fit: cover;
  border-radius: 8px;
  cursor: pointer;
  opacity: 0.5;
  transition: all 0.3s ease;
  border: 2px solid transparent;
}
.nl-popup-thumbnails-container img:hover {
  opacity: 0.8;
  transform: scale(1.05);
}
.nl-popup-thumbnails-container img.active {
  opacity: 1;
  border-color: #8c5932;
  box-shadow: 0 8px 20px rgba(140, 89, 50, 0.18);
}
@media screen and (max-width: 768px) {
  .nl-popup-thumbnails-container {
    gap: 8px;
  }
  .nl-popup-thumbnails-container img {
    flex: 0 0 60px;
    height: 45px;
  }
}

@media screen and (max-width: 768px) {
  .nl-popup-close {
    top: 12px;
    right: 12px;
    width: 46px;
    height: 46px;
  }
  .nl-popup-collapse {
    top: 66px;
    right: 12px;
    width: 46px;
    height: 46px;
  }
}
/* ============================================
   PUBLIC PROJECTS DIRECTORY
   ============================================ */
.projects-directory-page {
  --projects-ink: #17120d;
  --projects-gold: #c6a35a;
  --projects-gold-deep: #8d6833;
  --projects-paper: #f6f1e8;
  --projects-paper-strong: #fffdfa;
  --projects-line: rgba(122, 90, 48, 0.16);
  --projects-shadow: 0 28px 65px rgba(23, 18, 13, 0.12);
  background: radial-gradient(circle at top left, rgba(198, 163, 90, 0.08), transparent 28%), linear-gradient(180deg, #fcfbf8 0%, #f3ede3 100%);
  color: var(--projects-ink);
}
.projects-directory-page.is-loading .projects-directory-filters,
.projects-directory-page.is-loading .projects-directory-listing {
  opacity: 0.72;
  transition: opacity 0.2s ease;
}

.projects-directory-hero {
  position: relative;
  min-height: 66vh;
  display: flex;
  align-items: flex-end;
  padding: 9rem 0 5rem;
  background: linear-gradient(135deg, #1e1812 0%, #46331c 45%, #1e1812 100%);
  background-size: cover;
  background-position: center;
  color: #fff;
  overflow: hidden;
}

.projects-directory-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 8, 6, 0.2) 0%, rgba(10, 8, 6, 0.7) 100%), radial-gradient(circle at top right, rgba(212, 175, 55, 0.25), transparent 30%);
}

.projects-directory-hero-overlay {
  position: absolute;
  inset: 0;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.projects-directory-hero .wrapper {
  position: relative;
  z-index: 2;
}

.projects-directory-hero-content {
  max-width: 920px;
}

.projects-directory-kicker {
  display: inline-block;
  margin-bottom: 1.25rem;
  padding: 0.45rem 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  font-size: 0.74rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

.projects-directory-title {
  margin: 0;
  font-family: "HelveticaNowText-Light";
  font-size: clamp(3rem, 8vw, 5.75rem);
  font-weight: 300;
  line-height: 0.96;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.projects-directory-intro,
.projects-directory-intro-text {
  max-width: 720px;
  margin-top: 1.5rem;
  font-size: clamp(1rem, 1.7vw, 1.15rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.85);
}

.projects-directory-filters {
  position: sticky;
  top: 0;
  z-index: 90;
  padding: 1.5rem 0;
  border-bottom: 1px solid rgba(122, 90, 48, 0.1);
  background: rgba(250, 247, 241, 0.9);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
}

.projects-directory-filter-toggle {
  position: fixed;
  right: 18px;
  bottom: 22px;
  z-index: 110;
  display: none;
  align-items: center;
  justify-content: center;
  min-width: 116px;
  min-height: 52px;
  padding: 0 18px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(135deg, #17120d 0%, #8d6833 100%);
  color: #fff8ea;
  box-shadow: 0 18px 36px rgba(20, 17, 12, 0.18);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  cursor: pointer;
}

.projects-directory-filter-toggle.is-active {
  background: linear-gradient(135deg, #8d6833 0%, #17120d 100%);
}

.projects-directory-filter-form {
  padding: 1.5rem;
  border: 1px solid rgba(122, 90, 48, 0.13);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(247, 241, 232, 0.92));
  box-shadow: var(--projects-shadow);
}

.projects-directory-filter-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1rem;
  align-items: end;
}

.projects-directory-field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: flex-end;
}

.projects-directory-field-search {
  grid-column: span 1;
}

.projects-directory-field label {
  font-size: 0.72rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(23, 18, 13, 0.68);
}

.projects-directory-field input,
.projects-directory-field select {
  width: 100%;
  min-height: 54px;
  padding: 0.95rem 1rem;
  border: 1px solid var(--projects-line);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--projects-ink);
  font-size: 0.98rem;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.projects-directory-field input:focus,
.projects-directory-field select:focus {
  outline: none;
  border-color: rgba(198, 163, 90, 0.95);
  box-shadow: 0 0 0 4px rgba(198, 163, 90, 0.12);
  transform: translateY(-1px);
}

.projects-directory-filter-actions {
  display: flex;
  gap: 0.9rem;
  align-items: center;
  margin-top: 1.25rem;
  flex-wrap: wrap;
}

.projects-directory-submit,
.projects-directory-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0.85rem 1.4rem;
  border-radius: 999px;
  text-decoration: none;
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.projects-directory-submit {
  border: 0;
  color: #fff;
  background: linear-gradient(135deg, #19130d 0%, #8d6833 100%);
  box-shadow: 0 16px 34px rgba(27, 21, 14, 0.18);
  cursor: pointer;
}

.projects-directory-reset {
  border: 1px solid rgba(122, 90, 48, 0.2);
  color: var(--projects-ink);
  background: rgba(255, 255, 255, 0.76);
}

.projects-directory-submit:hover,
.projects-directory-reset:hover {
  transform: translateY(-2px);
}

.projects-directory-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  margin-top: 1.25rem;
  flex-wrap: wrap;
}

.projects-directory-results p {
  margin: 0;
  color: rgba(23, 18, 13, 0.72);
}

.projects-directory-active-filters {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.projects-directory-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0.45rem 0.8rem;
  border: 1px solid rgba(198, 163, 90, 0.24);
  border-radius: 999px;
  background: rgba(198, 163, 90, 0.08);
  color: rgba(23, 18, 13, 0.82);
  font-size: 0.8rem;
}

.projects-directory-grid-card {
  overflow: hidden;
  border: 1px solid rgba(122, 90, 48, 0.08);
  box-shadow: 0 18px 45px rgba(25, 19, 13, 0.08);
}

.projects-directory-listing .nl-project-card {
  opacity: 1;
  transform: none;
}

.projects-directory-grid-card .nl-card-content {
  position: relative;
}

.projects-directory-card-year {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0.45rem 0.8rem;
  border-radius: 999px;
  background: rgba(23, 18, 13, 0.72);
  color: #fff;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.projects-directory-listing {
  padding: 3rem 0 5rem;
}

.projects-directory-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 2rem;
}

.projects-directory-popup .nl-popup-overlay {
  background: linear-gradient(180deg, rgba(10, 8, 6, 0.2) 0%, rgba(10, 8, 6, 0.34) 100%);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.projects-directory-popup .nl-popup-container {
  max-width: min(1080px, 92vw);
}

.projects-directory-popup .nl-popup-bg {
  filter: blur(18px) saturate(1.06) brightness(0.88);
}

.projects-directory-popup-sections {
  display: grid;
  gap: 2rem;
  padding: 2.5rem 2.5rem 0;
}

.projects-directory-popup-section h3 {
  margin-top: 0;
}

.projects-directory-popup .nl-popup-gallery {
  padding: 0 2.5rem 2.5rem;
}

.projects-directory-popup .nl-popup-content {
  padding-bottom: 1.5rem;
}

.projects-directory-card {
  overflow: hidden;
  border: 1px solid rgba(122, 90, 48, 0.1);
  border-radius: 24px;
  background: linear-gradient(180deg, #fffdfa 0%, #f8f4ee 100%);
  box-shadow: 0 18px 45px rgba(25, 19, 13, 0.08);
}

.projects-directory-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, rgba(141, 104, 51, 0.1), rgba(198, 163, 90, 0.95), rgba(141, 104, 51, 0.1));
  opacity: 0;
  transition: opacity 0.3s ease;
}

.projects-directory-card:hover::before {
  opacity: 1;
}

.projects-directory-card-image {
  position: relative;
}

.projects-directory-card-meta {
  position: absolute;
  top: 1rem;
  left: 1rem;
  right: 1rem;
  display: flex;
  gap: 0.55rem;
  flex-wrap: wrap;
  z-index: 2;
}

.projects-directory-card-pill {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  background: rgba(24, 19, 13, 0.72);
  color: #fff;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.projects-directory-card-pill.status-laureat {
  background: linear-gradient(135deg, rgba(198, 163, 90, 0.95), rgba(141, 104, 51, 0.95));
}

.projects-directory-card-pill.status-nomine {
  background: rgba(24, 19, 13, 0.78);
}

.projects-directory-card-content {
  display: grid;
  gap: 0.65rem;
}

.projects-directory-card-kicker {
  margin: 0;
  color: var(--projects-gold-deep);
  font-size: 0.78rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.projects-directory-card-title {
  margin: 0;
  font-family: "HelveticaNowText-Light";
  font-size: clamp(1.5rem, 2vw, 2rem);
  font-weight: 300;
  line-height: 1.08;
  color: var(--projects-ink);
}

.projects-directory-card-architect,
.projects-directory-card-location,
.projects-directory-card-excerpt {
  margin: 0;
}

.projects-directory-card-architect {
  font-size: 1rem;
  color: rgba(23, 18, 13, 0.9);
}

.projects-directory-card-location {
  font-size: 0.92rem;
  color: rgba(23, 18, 13, 0.6);
}

.projects-directory-card-excerpt {
  color: rgba(23, 18, 13, 0.76);
  line-height: 1.7;
}

.projects-directory-empty {
  max-width: 680px;
  margin: 0 auto;
  padding: 4rem 2rem;
  text-align: center;
  border: 1px solid rgba(122, 90, 48, 0.12);
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(247, 241, 232, 0.92));
  box-shadow: var(--projects-shadow);
}

.projects-directory-empty h2 {
  margin-top: 0;
  font-family: "HelveticaNowText-Light";
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 300;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.projects-directory-pagination {
  margin-top: 3rem;
}

.projects-directory-pagination .page-numbers {
  display: flex;
  justify-content: center;
  gap: 0.65rem;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.projects-directory-pagination .page-numbers li {
  margin: 0;
}

.projects-directory-pagination .page-numbers a,
.projects-directory-pagination .page-numbers span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  min-height: 48px;
  padding: 0.75rem 1rem;
  border-radius: 10px;
  border: 1px solid rgba(122, 90, 48, 0.15);
  background: rgba(255, 255, 255, 0.86);
  color: var(--projects-ink);
  text-decoration: none;
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.projects-directory-pagination .page-numbers a:hover,
.projects-directory-pagination .page-numbers .current {
  transform: translateY(-2px);
  border-color: rgba(198, 163, 90, 0.8);
  background: linear-gradient(135deg, #19130d 0%, #8d6833 100%);
  color: #fff;
}

@media screen and (min-width: 48em) {
  .projects-directory-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .projects-directory-field-search {
    grid-column: span 2;
  }
  .projects-directory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (min-width: 64em) {
  .projects-directory-filter-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .projects-directory-field-search {
    grid-column: span 4;
  }
  .projects-directory-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.25rem;
  }
}
@media screen and (min-width: 90em) {
  .projects-directory-filter-grid {
    grid-template-columns: 2.1fr repeat(4, minmax(0, 1fr));
  }
  .projects-directory-field-search {
    grid-column: span 2;
  }
}
@media screen and (max-width: 47.99em) {
  .projects-directory-filter-toggle {
    display: inline-flex;
  }
  .projects-directory-hero {
    min-height: 56vh;
    padding-top: 7rem;
  }
  .projects-directory-filters {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 86px;
    top: auto;
    z-index: 109;
    padding: 0;
    border: 0;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity 0.25s ease, transform 0.25s ease;
  }
  .projects-directory-filters.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  .projects-directory-filter-form {
    padding: 1.1rem;
    border-radius: 20px;
    max-height: min(72vh, 640px);
    overflow-y: auto;
  }
  .projects-directory-submit,
  .projects-directory-reset {
    width: 100%;
  }
  .projects-directory-popup-sections {
    padding: 1.5rem 1.5rem 0;
  }
  .projects-directory-popup .nl-popup-gallery {
    padding: 0 1.5rem 1.5rem;
  }
  .projects-directory-pagination .page-numbers {
    gap: 0.4rem;
  }
  .projects-directory-pagination .page-numbers a,
  .projects-directory-pagination .page-numbers span {
    min-width: 42px;
    min-height: 42px;
    padding: 0.7rem 0.85rem;
  }
}
.project-single-page {
  background: radial-gradient(circle at top, rgba(212, 175, 55, 0.08), transparent 34%), linear-gradient(180deg, #f6f1e8 0%, #ffffff 24%, #ffffff 100%);
  color: #171310;
  padding-bottom: 124px;
}

.project-single-hero {
  position: relative;
  min-height: 72vh;
  display: flex;
  align-items: flex-end;
  padding: 150px 0 72px;
  background-size: cover;
  background-position: center;
}

.project-single-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 7, 6, 0.16) 0%, rgba(8, 7, 6, 0.42) 44%, rgba(8, 7, 6, 0.76) 100%), radial-gradient(circle at top right, rgba(212, 175, 55, 0.3), transparent 30%);
}

.project-single-hero .wrapper,
.project-single-summary .wrapper,
.project-single-stage .wrapper,
.project-single-panel .wrapper {
  position: relative;
  z-index: 1;
}

.project-single-hero-content {
  max-width: 920px;
  color: #fffaf2;
}

.project-single-back-link,
.project-single-kicker,
.project-single-tab-trigger {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.project-single-back-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  color: rgba(255, 248, 235, 0.88);
}

.project-single-back-link::before {
  content: "";
  width: 34px;
  height: 1px;
  background: currentColor;
}

.project-single-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
}

.project-single-badges span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(255, 244, 223, 0.3);
  background: rgba(255, 248, 235, 0.08);
  backdrop-filter: blur(12px);
  color: #fff6e5;
}

.project-single-hero h1,
.project-single-heading h2,
.project-single-card h3 {
  font-family: "IvyPresto Display", "Cormorant Garamond", Georgia, serif;
}

.project-single-hero h1 {
  margin: 0;
  font-size: clamp(42px, 6vw, 84px);
  line-height: 0.95;
  text-wrap: balance;
}

.project-single-architect {
  margin: 22px 0 10px;
  font-size: clamp(20px, 2vw, 28px);
  color: #f7e7c3;
}

.project-single-location {
  margin: 0;
  color: rgba(255, 250, 242, 0.82);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.project-single-summary {
  margin-top: -72px;
  padding-bottom: 24px;
}

.project-single-summary-grid,
.project-single-columns {
  display: grid;
  gap: 24px;
}

.project-single-summary-grid {
  grid-template-columns: 1fr;
}

.project-single-summary-meta {
  max-width: 780px;
}

.project-single-summary-overview {
  width: 100%;
}

.project-single-card {
  margin-bottom: 24px;
  padding: 30px;
  border: 1px solid rgba(89, 58, 28, 0.08);
  border-radius: 28px;
  background: rgba(255, 252, 247, 0.95);
  box-shadow: 0 24px 60px rgba(20, 17, 12, 0.08);
}

.project-single-lead-card {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(247, 242, 234, 0.94)), radial-gradient(circle at top right, rgba(212, 175, 55, 0.12), transparent 28%);
}

.project-single-kicker {
  display: inline-block;
  margin-bottom: 16px;
  color: #8c6b35;
}

.project-single-meta {
  display: grid;
  gap: 18px;
  margin: 0;
}

.project-single-meta div {
  padding-top: 18px;
  border-top: 1px solid rgba(111, 80, 42, 0.1);
}

.project-single-meta div:first-child {
  padding-top: 0;
  border-top: 0;
}

.project-single-meta dt {
  margin-bottom: 6px;
  color: rgba(23, 19, 16, 0.54);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.project-single-meta dd {
  margin: 0;
}

.project-single-stage {
  position: sticky;
  top: 0;
  z-index: 24;
  padding: 20px 0 22px;
  background: rgba(249, 244, 237, 0.84);
  border-top: 1px solid rgba(111, 80, 42, 0.06);
  border-bottom: 1px solid rgba(111, 80, 42, 0.1);
  backdrop-filter: blur(18px) saturate(150%);
}

.project-single-stage-intro {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: baseline;
  margin-bottom: 16px;
}

.project-single-stage-intro p {
  max-width: 720px;
  margin: 0;
  color: rgba(23, 19, 16, 0.72);
}

.project-single-tab-bar,
.project-single-floating-nav-inner {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.project-single-tab-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid rgba(111, 80, 42, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  color: rgba(23, 19, 16, 0.76);
  cursor: pointer;
  transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}

.project-single-tab-trigger:hover {
  transform: translateY(-1px);
  border-color: rgba(141, 104, 51, 0.3);
  background: rgba(255, 252, 245, 0.96);
  color: #171310;
  box-shadow: 0 10px 22px rgba(20, 17, 12, 0.08);
}

.project-single-tab-trigger.is-active {
  color: #fff8ea;
  background: linear-gradient(135deg, #1b150f 0%, #8d6833 100%);
  border-color: transparent;
  box-shadow: 0 16px 32px rgba(27, 21, 14, 0.18);
}

.project-single-panels {
  padding: 28px 0 0;
}

.project-single-panel {
  padding: 28px 0 0;
  scroll-margin-top: 132px;
}

.project-single-heading {
  max-width: 760px;
  margin-bottom: 26px;
}

.project-single-heading h2 {
  margin: 0;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1;
}

.project-single-map iframe {
  display: block;
  width: 100%;
  min-height: 360px;
  border: 0;
  border-radius: 18px;
}

.project-single-gallery {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.project-single-gallery::-webkit-scrollbar {
  display: none;
}

.project-single-gallery-shell {
  position: relative;
}

.project-single-gallery-shell .project-single-gallery {
  padding: 0 58px;
}

.project-single-gallery a {
  flex: 0 0 calc(33.333% - 12px);
  display: block;
  overflow: hidden;
  border-radius: 22px;
  background: #ece4d8;
  box-shadow: 0 18px 34px rgba(20, 17, 12, 0.08);
  scroll-snap-align: start;
}

.project-single-gallery img {
  display: block;
  width: 100%;
  aspect-ratio: 1.08;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.project-single-gallery a:hover img {
  transform: scale(1.03);
}

.project-single-gallery-nav {
  position: absolute;
  top: 50%;
  z-index: 4;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(111, 80, 42, 0.14);
  border-radius: 10px;
  background: rgba(255, 252, 247, 0.9);
  color: #171310;
  box-shadow: 0 12px 26px rgba(20, 17, 12, 0.12);
  transform: translateY(-50%);
  cursor: pointer;
  transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.project-single-gallery-nav:hover {
  background: linear-gradient(135deg, #1b150f 0%, #8d6833 100%);
  color: #fff8ea;
}

.project-single-gallery-prev {
  left: 0;
}

.project-single-gallery-next {
  right: 0;
}

.project-single-stack .project-single-card:last-child,
.project-single-panel .wrapper > .project-single-card:last-child {
  margin-bottom: 0;
}

.project-single-floating-nav {
  position: fixed;
  left: 50%;
  bottom: 22px;
  z-index: 30;
  transform: translateX(-50%);
  width: min(1120px, 100vw - 24px);
  pointer-events: none;
}

.project-single-floating-nav-inner {
  justify-content: center;
  padding: 12px;
  border: 1px solid rgba(111, 80, 42, 0.12);
  border-radius: 999px;
  background: rgba(252, 248, 241, 0.78);
  box-shadow: 0 22px 44px rgba(20, 17, 12, 0.12);
  backdrop-filter: blur(18px) saturate(160%);
  pointer-events: auto;
}

.project-single-lightbox {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(6, 5, 4, 0.92);
  backdrop-filter: blur(8px);
}

.project-single-lightbox.is-active {
  display: flex;
}

.project-single-lightbox-content {
  max-width: min(88vw, 1320px);
  max-height: 82vh;
  text-align: center;
}

.project-single-lightbox-content img {
  display: block;
  max-width: 100%;
  max-height: 74vh;
  margin: 0 auto;
  border-radius: 18px;
  box-shadow: 0 28px 60px rgba(0, 0, 0, 0.28);
}

.project-single-lightbox-caption {
  margin: 18px 0 0;
  color: rgba(255, 248, 235, 0.82);
}

.project-single-lightbox-close,
.project-single-lightbox-nav {
  position: absolute;
  border: 0;
  background: transparent;
  color: #f5e9cf;
  cursor: pointer;
  text-shadow: 0 10px 30px rgba(0, 0, 0, 0.36);
  transition: color 0.25s ease, transform 0.25s ease;
}

.project-single-lightbox-close:hover,
.project-single-lightbox-nav:hover {
  color: #ffffff;
  transform: scale(1.05);
}

.project-single-lightbox-close {
  top: 18px;
  right: 22px;
  font-size: 44px;
  line-height: 1;
}

.project-single-lightbox-nav {
  top: 50%;
  transform: translateY(-50%);
  font-size: 58px;
  line-height: 1;
}

.project-single-lightbox-prev {
  left: 24px;
}

.project-single-lightbox-next {
  right: 24px;
}

body.project-lightbox-open {
  overflow: hidden;
}

@media (min-width: 1200px) {
  .project-single-gallery a {
    flex-basis: calc(25% - 14px);
  }
}
@media (max-width: 991px) {
  .project-single-columns {
    grid-template-columns: 1fr;
  }
  .project-single-gallery a {
    flex-basis: calc(50% - 10px);
  }
  .project-single-summary {
    margin-top: -38px;
  }
  .project-single-stage-intro {
    flex-direction: column;
  }
}
@media (max-width: 767px) {
  .project-single-page {
    padding-bottom: 112px;
  }
  .project-single-hero {
    min-height: auto;
    padding: 128px 0 48px;
  }
  .project-single-card {
    padding: 22px;
    border-radius: 22px;
  }
  .project-single-stage {
    position: static;
    padding: 18px 0 0;
    background: transparent;
    border: 0;
    backdrop-filter: none;
  }
  .project-single-tab-bar,
  .project-single-floating-nav-inner {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .project-single-tab-bar::-webkit-scrollbar,
  .project-single-floating-nav-inner::-webkit-scrollbar {
    display: none;
  }
  .project-single-panel {
    padding-top: 20px;
    scroll-margin-top: 30px;
  }
  .project-single-tab-trigger {
    min-height: auto;
    padding: 10px 14px;
    font-size: 11px;
    line-height: 1.2;
    white-space: nowrap;
    flex: 0 0 auto;
  }
  .project-single-gallery-shell .project-single-gallery {
    padding: 0 44px;
  }
  .project-single-gallery a {
    flex-basis: 82%;
  }
  .project-single-floating-nav {
    width: calc(100vw - 14px);
    bottom: 10px;
  }
  .project-single-floating-nav-inner {
    justify-content: flex-start;
    border-radius: 24px;
    padding: 10px;
  }
  .project-single-gallery-nav {
    width: 34px;
    height: 34px;
  }
  .project-single-lightbox-close {
    top: 10px;
    right: 14px;
  }
  .project-single-lightbox-nav {
    font-size: 44px;
  }
  .project-single-lightbox-prev {
    left: 12px;
  }
  .project-single-lightbox-next {
    right: 12px;
  }
}
/* ============================================
   LCP PRODUCTS AND BRANDS
   ============================================ */
.lcp-product-catalog-page,
.lcp-product-single-page,
.lcp-brands-index-page {
  --catalog-ink: #111414;
  --catalog-muted: rgba(17, 20, 20, 0.66);
  --catalog-green: #315c50;
  --catalog-blue: #244b62;
  --catalog-gold: #b9934a;
  --catalog-paper: #f8f7f2;
  --catalog-line: rgba(26, 37, 36, 0.13);
  --catalog-shadow: 0 18px 42px rgba(17, 20, 20, 0.1);
  --catalog-shadow-hover: 0 22px 52px rgba(17, 20, 20, 0.16);
  --catalog-duration-fast: 150ms;
  --catalog-duration: 220ms;
  --catalog-duration-slow: 360ms;
  --catalog-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --catalog-ease-emphasis: cubic-bezier(0.2, 0.8, 0.2, 1);
  background: linear-gradient(180deg, #fbfaf6 0%, #eef3ef 100%);
  color: var(--catalog-ink);
}

.lcp-product-catalog-page.is-loading .lcp-product-filters {
  opacity: 0.76;
  transition: opacity var(--catalog-duration) var(--catalog-ease);
}
.lcp-product-catalog-page.is-loading .lcp-products-grid,
.lcp-product-catalog-page.is-loading .lcp-product-pagination,
.lcp-product-catalog-page.is-loading .lcp-product-empty {
  opacity: 0.18;
  pointer-events: none;
  transition: opacity var(--catalog-duration) var(--catalog-ease);
}
.lcp-product-catalog-page.is-loading .lcp-product-loading {
  display: inline-flex;
}
.lcp-product-catalog-page.is-loading .lcp-product-skeleton-grid {
  display: grid;
}

@keyframes lcpCatalogCardIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes lcpCatalogSkeleton {
  0% {
    background-position: 120% 0;
  }
  100% {
    background-position: -120% 0;
  }
}
.lcp-product-hero {
  position: relative;
  min-height: 35vh;
  display: flex;
  align-items: flex-end;
  padding: 8.5rem 0 4.5rem;
  background: linear-gradient(135deg, #101514 0%, #315c50 54%, #244b62 100%);
  background-position: center;
  background-size: cover;
  color: #ffffff;
  overflow: hidden;
}

.lcp-product-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(4, 8, 8, 0.08) 0%, rgba(4, 8, 8, 0.72) 100%), linear-gradient(90deg, rgba(49, 92, 80, 0.28), rgba(36, 75, 98, 0.18));
}

.lcp-product-hero-overlay {
  position: absolute;
  inset: 0;
  backdrop-filter: blur(1px);
  -webkit-backdrop-filter: blur(1px);
}

.lcp-product-hero .wrapper,
.lcp-brand-hero .wrapper {
  position: relative;
  z-index: 2;
}

.lcp-product-hero-content {
  max-width: 880px;
}

.lcp-product-kicker {
  display: inline-block;
  margin-bottom: 1rem;
  color: var(--catalog-gold);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.lcp-product-hero h1,
.lcp-brand-hero h1,
.lcp-product-single-summary h1 {
  margin: 0;
  font-family: "HelveticaNowText-Bold";
  font-size: 2rem;
  font-weight: 700;
  line-height: 0.98;
  text-transform: uppercase;
}

.lcp-product-single-summary h1 {
  color: var(--catalog-ink);
}

.lcp-product-single-page .lcp-product-single-summary .lcp-product-single-title {
  color: var(--catalog-ink) !important;
}

.lcp-product-intro,
.lcp-brand-description,
.lcp-product-single-lead {
  max-width: 720px;
  margin-top: 1.35rem;
  font-size: clamp(1rem, 1.6vw, 1.12rem);
  line-height: 1.75;
}

.lcp-product-catalog-page p,
.lcp-product-single-page p {
  font-size: 1rem;
}

.lcp-product-hero .lcp-product-intro {
  color: rgba(255, 255, 255, 0.86);
}

.lcp-product-filters {
  position: sticky;
  top: 0;
  z-index: 88;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--catalog-line);
  background: rgba(248, 247, 242, 0.94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.lcp-product-filter-form {
  padding: 1.25rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--catalog-shadow);
}

.lcp-brand-index-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  margin-bottom: 1rem;
  padding: 1.25rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--catalog-shadow);
}

.lcp-brand-index-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.45rem;
}

.lcp-brand-index-field label {
  color: var(--catalog-muted);
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.lcp-brand-index-field input,
.lcp-brand-index-field select {
  width: 100%;
  min-height: 50px;
  padding: 0.82rem 2.4rem 0.82rem 0.9rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  color: var(--catalog-ink);
  font-size: 0.9rem;
}

.lcp-brand-index-actions {
  display: flex;
  gap: 0.85rem;
  align-items: end;
  flex-wrap: wrap;
}

.lcp-brand-index-meta {
  margin-bottom: 1.25rem;
  color: var(--catalog-muted);
}

.lcp-brand-index-meta p {
  margin: 0;
}

.lcp-product-filter-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1rem;
  align-items: end;
}

.lcp-product-field {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  min-width: 0;
}

.lcp-product-field-search {
  grid-column: span 1;
}

.lcp-product-field label {
  color: var(--catalog-muted);
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.lcp-product-field input,
.lcp-product-field select {
  width: 100%;
  min-width: 0;
  min-height: 50px;
  padding: 0.82rem 2.4rem 0.82rem 0.9rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  color: var(--catalog-ink);
  font-size: 0.9rem;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.lcp-product-field input:focus,
.lcp-product-field select:focus {
  outline: none;
  border-color: var(--catalog-green);
  box-shadow: 0 0 0 3px rgba(49, 92, 80, 0.12);
}

.lcp-product-filter-actions,
.lcp-product-toolbar {
  display: flex;
  gap: 0.85rem;
  align-items: center;
  flex-wrap: wrap;
}

.lcp-product-filter-actions {
  margin-top: 1rem;
}

.lcp-product-toolbar {
  justify-content: space-between;
  margin-top: 1rem;
}

.lcp-product-submit,
.lcp-product-reset,
.lcp-product-card-cta,
.lcp-product-back-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0.75rem 1rem;
  border-radius: 8px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background var(--catalog-duration-fast) var(--catalog-ease), border-color var(--catalog-duration-fast) var(--catalog-ease), color var(--catalog-duration-fast) var(--catalog-ease), box-shadow var(--catalog-duration-fast) var(--catalog-ease), transform var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-submit,
.lcp-product-card-cta {
  border: 1px solid var(--catalog-green);
  background: var(--catalog-green);
  color: #ffffff;
}

.lcp-product-reset,
.lcp-product-back-link {
  border: 1px solid var(--catalog-line);
  background: #ffffff;
  color: var(--catalog-ink);
}

.lcp-product-submit:hover,
.lcp-product-reset:hover,
.lcp-product-card-cta:hover,
.lcp-product-back-link:hover {
  transform: translateY(-1px);
}

.lcp-product-submit:focus-visible,
.lcp-product-reset:focus-visible,
.lcp-product-card-cta:focus-visible,
.lcp-product-back-link:focus-visible,
.lcp-product-filter-chip:focus-visible,
.lcp-product-clear-filters:focus-visible,
.lcp-product-pagination a:focus-visible,
.lcp-product-single-main-image:focus-visible,
.lcp-product-single-thumbs button:focus-visible,
.lcp-product-lightbox button:focus-visible,
.lcp-product-single-anchors a:focus-visible,
.lcp-product-mobile-actions a:focus-visible,
.lcp-product-mobile-actions button:focus-visible,
.lcp-product-mobile-nav a:focus-visible,
.lcp-product-mobile-nav button:focus-visible {
  outline: 3px solid rgba(185, 147, 74, 0.5);
  outline-offset: 3px;
}

.lcp-product-results p {
  margin: 0;
  color: var(--catalog-muted);
}

.lcp-product-active-filters {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.lcp-product-applied-filters {
  display: none;
  margin-bottom: 1.25rem;
}

.lcp-product-filter-chip,
.lcp-product-clear-filters {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  gap: 0.45rem;
  padding: 0.35rem 0.7rem;
  border: 1px solid rgba(49, 92, 80, 0.18);
  border-radius: 8px;
  background: rgba(49, 92, 80, 0.08);
  color: var(--catalog-green);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}

.lcp-product-clear-filters {
  border-color: var(--catalog-line);
  background: #ffffff;
  color: var(--catalog-muted);
}

.lcp-product-loading {
  display: none;
  margin-top: 0.35rem;
  color: var(--catalog-green);
  font-size: 0.82rem;
  font-weight: 700;
}

.lcp-product-listing,
.lcp-brands-index-listing,
.lcp-product-related,
.lcp-product-brand-products {
  padding: 3.5rem 0 5rem;
}

.lcp-products-grid,
.lcp-brands-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  align-items: stretch;
  gap: 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.woocommerce h2 {
  font-size: 1.2rem;
}

.lcp-product-skeleton-grid {
  display: none;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}

.lcp-product-skeleton-card {
  display: grid;
  gap: 0.75rem;
  padding: 1rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 32px rgba(17, 20, 20, 0.06);
}

.lcp-product-skeleton-card span {
  display: block;
  overflow: hidden;
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(235, 240, 236, 0.95) 0%, rgba(248, 247, 242, 0.98) 42%, rgba(226, 234, 229, 0.95) 74%);
  background-size: 220% 100%;
  animation: lcpCatalogSkeleton 1.2s var(--catalog-ease) infinite;
}

.lcp-product-skeleton-media {
  aspect-ratio: 4/3;
}

.lcp-product-skeleton-line {
  height: 14px;
}

.lcp-product-skeleton-line-short {
  width: 42%;
}

.lcp-product-skeleton-line-medium {
  width: 68%;
}

.woocommerce ul.products.lcp-products-grid,
.woocommerce-page ul.products.lcp-products-grid {
  display: grid;
  margin: 0;
}

.woocommerce ul.products.lcp-products-grid::before,
.woocommerce ul.products.lcp-products-grid::after,
.woocommerce-page ul.products.lcp-products-grid::before,
.woocommerce-page ul.products.lcp-products-grid::after {
  display: none;
}

.woocommerce ul.products.lcp-products-grid li.product.lcp-product-card,
.woocommerce-page ul.products.lcp-products-grid li.product.lcp-product-card {
  grid-column: auto;
  grid-row: auto;
  float: none;
  clear: none !important;
  width: 100%;
  margin: 0;
}

.woocommerce ul.products.lcp-products-grid li.product.lcp-product-card a img,
.woocommerce-page ul.products.lcp-products-grid li.product.lcp-product-card a img {
  width: 100%;
  margin: 0;
}

.lcp-product-card,
.lcp-brand-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 32px rgba(17, 20, 20, 0.08);
  animation: lcpCatalogCardIn var(--catalog-duration-slow) var(--catalog-ease-emphasis) both;
  transition: border-color var(--catalog-duration) var(--catalog-ease), box-shadow var(--catalog-duration) var(--catalog-ease), transform var(--catalog-duration) var(--catalog-ease);
}

.lcp-product-card-media,
.lcp-brand-card-media {
  position: relative;
  display: block;
  flex: 0 0 auto;
  overflow: hidden;
  background: #e8eee9;
}

.lcp-product-card-media img,
.lcp-brand-card-media img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  transition: transform var(--catalog-duration-slow) var(--catalog-ease-emphasis);
}

.lcp-product-card:hover .lcp-product-card-media img,
.lcp-brand-card:hover .lcp-brand-card-media img {
  transform: scale(1.03);
}

@media (hover: hover) {
  .lcp-product-card:hover,
  .lcp-brand-card:hover {
    border-color: rgba(49, 92, 80, 0.28);
    box-shadow: var(--catalog-shadow-hover);
    transform: translateY(-3px);
  }
}
.lcp-product-card-overlay {
  position: absolute;
  inset: auto 1rem 1rem 1rem;
  display: inline-flex;
  justify-content: center;
  min-height: 38px;
  align-items: center;
  border-radius: 8px;
  background: rgba(17, 20, 20, 0.76);
  color: #ffffff;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  opacity: 0;
  text-transform: uppercase;
  transform: translateY(8px);
  transition: opacity var(--catalog-duration) var(--catalog-ease), transform var(--catalog-duration) var(--catalog-ease);
}

.lcp-product-card:hover .lcp-product-card-overlay {
  opacity: 1;
  transform: translateY(0);
}

.lcp-product-card-body,
.lcp-brand-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0.65rem;
  padding: 1.05rem;
}

.lcp-product-card-body .lcp-product-card-cta,
.lcp-brand-card-body .lcp-product-card-cta {
  margin-top: auto;
}

.lcp-product-card-meta,
.lcp-product-single-tax,
.lcp-product-single-categories {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.lcp-product-card-brand,
.lcp-product-card-category,
.lcp-product-single-tax a,
.lcp-product-single-categories a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0.35rem 0.65rem;
  border-radius: 8px;
  background: rgba(36, 75, 98, 0.08);
  color: var(--catalog-blue);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
}

.lcp-product-card-title,
.lcp-brand-card h2 {
  margin: 0;
  font-family: "HelveticaNowText-Light";
  font-size: clamp(1.12rem, 1.45vw, 1.38rem);
  font-weight: 300;
  line-height: 1.2;
}

.lcp-product-card-title a,
.lcp-brand-card h2 a {
  color: var(--catalog-ink);
  text-decoration: none;
}

.lcp-product-card-summary,
.lcp-brand-card-body p {
  margin: 0;
  color: var(--catalog-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.lcp-product-card-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.lcp-brand-card-count {
  color: var(--catalog-green) !important;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.lcp-brand-card-monogram,
.lcp-brand-hero-monogram {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 4/3;
  background: linear-gradient(135deg, rgba(49, 92, 80, 0.12), rgba(36, 75, 98, 0.16)), #f8f7f2;
  color: var(--catalog-green);
  font-family: "HelveticaNowText-Light";
  font-size: clamp(2.4rem, 7vw, 5rem);
  letter-spacing: 0.08em;
}

.lcp-brand-hero-monogram {
  aspect-ratio: 16/10;
  font-size: clamp(4rem, 12vw, 8rem);
}

.lcp-product-pagination {
  margin-top: 3rem;
}

.lcp-product-pagination .page-numbers {
  display: flex;
  justify-content: center;
  gap: 0.55rem;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lcp-product-pagination a,
.lcp-product-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0.65rem 0.9rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  color: var(--catalog-ink);
  text-decoration: none;
  transition: background var(--catalog-duration-fast) var(--catalog-ease), border-color var(--catalog-duration-fast) var(--catalog-ease), color var(--catalog-duration-fast) var(--catalog-ease), transform var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-pagination .current,
.lcp-product-pagination a:hover {
  border-color: var(--catalog-green);
  background: var(--catalog-green);
  color: #ffffff;
}

.lcp-product-pagination a:hover {
  transform: translateY(-1px);
}

.lcp-product-empty {
  max-width: 680px;
  margin: 0 auto;
  padding: 3rem 2rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: var(--catalog-shadow);
  text-align: center;
}

.lcp-product-empty::before {
  content: "";
  display: block;
  width: 48px;
  height: 4px;
  margin: 0 auto 1.25rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--catalog-green), var(--catalog-gold));
}

.lcp-product-empty-actions {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}

.lcp-product-empty-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0.35rem 0.7rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  color: var(--catalog-blue);
  font-size: 0.78rem;
  font-weight: 700;
  text-decoration: none;
}

.lcp-product-filter-toggle {
  position: fixed;
  right: 18px;
  bottom: 20px;
  z-index: 110;
  display: none;
  min-width: 112px;
  min-height: 48px;
  border: 0;
  border-radius: 8px;
  background: var(--catalog-green, #315c50);
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: 0 14px 28px rgba(17, 20, 20, 0.18);
  transition: background var(--catalog-duration-fast) var(--catalog-ease), box-shadow var(--catalog-duration-fast) var(--catalog-ease), transform var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-filter-backdrop {
  display: none;
}

body.lcp-product-filters-open {
  overflow: hidden;
}

.lcp-brand-hero {
  padding: 9rem 0 4rem;
  background: linear-gradient(135deg, #f9f7f0 0%, #e8f0ea 100%);
}

.lcp-product-brand-page .lcp-brand-hero {
  padding: 7.5rem 0 2.75rem;
}

.lcp-brand-hero-grid,
.lcp-product-single-grid,
.lcp-product-single-content-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

.lcp-brand-hero-media,
.lcp-product-single-main-image {
  overflow: hidden;
  border-radius: 8px;
  background: #e7eee9;
  box-shadow: var(--catalog-shadow);
}

.lcp-product-single-main-image {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  min-height: clamp(280px, 42vw, 620px);
  padding: 0;
  border: 0;
  aspect-ratio: 4/3;
  cursor: zoom-in;
  line-height: 0;
}

.lcp-brand-hero-media img,
.lcp-product-single-main-image img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
}

.lcp-product-brand-page .lcp-brand-hero-media img {
  aspect-ratio: 16/10;
}

.lcp-product-single-main-image img {
  height: 100%;
  min-height: inherit;
  aspect-ratio: auto;
}

.lcp-product-gallery-zoom {
  position: absolute;
  right: 0.85rem;
  bottom: 0.85rem;
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0.35rem 0.7rem;
  border-radius: 8px;
  background: rgba(17, 20, 20, 0.78);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.lcp-brand-count {
  margin-top: 1.25rem;
  color: var(--catalog-green);
  font-weight: 700;
}

.lcp-product-single-hero {
  padding: 9rem 0 4rem;
  background: linear-gradient(180deg, #fbfaf6 0%, #edf3ef 100%);
}

.lcp-product-single-gallery {
  min-width: 0;
}

.lcp-product-single-thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 0.65rem;
  margin-top: 0.75rem;
}

.lcp-product-single-thumbs button {
  overflow: hidden;
  min-height: 96px;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 8px;
  aspect-ratio: 1;
  background: transparent;
  cursor: pointer;
  opacity: 0.72;
  transition: border-color var(--catalog-duration-fast) var(--catalog-ease), opacity var(--catalog-duration-fast) var(--catalog-ease), transform var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-single-thumbs button.is-active {
  border-color: var(--catalog-green);
  opacity: 1;
  transform: translateY(-1px);
}

.lcp-product-single-thumbs img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lcp-product-lightbox {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  background: rgba(5, 8, 8, 0.92);
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity var(--catalog-duration) var(--catalog-ease), visibility var(--catalog-duration) var(--catalog-ease);
}

.lcp-product-lightbox.is-open {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.lcp-product-lightbox figure {
  max-width: min(1120px, 88vw);
  margin: 0;
  color: #ffffff;
  text-align: center;
  transform: scale(0.96);
  transition: transform var(--catalog-duration) var(--catalog-ease-emphasis);
}

.lcp-product-lightbox.is-open figure {
  transform: scale(1);
}

.lcp-product-lightbox img {
  display: block;
  max-width: 100%;
  max-height: 78vh;
  margin: 0 auto;
  border-radius: 8px;
  object-fit: contain;
}

.lcp-product-lightbox figcaption {
  margin-top: 0.85rem;
  color: rgba(255, 255, 255, 0.78);
}

.lcp-product-lightbox-close,
.lcp-product-lightbox-nav {
  position: absolute;
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  opacity: 0.82;
  transition: opacity var(--catalog-duration-fast) var(--catalog-ease), transform var(--catalog-duration-fast) var(--catalog-ease), background var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-lightbox-close:hover,
.lcp-product-lightbox-nav:hover {
  opacity: 1;
}

.lcp-product-lightbox-close {
  top: 1rem;
  right: 1.25rem;
  font-size: 2.5rem;
  line-height: 1;
}

.lcp-product-lightbox-nav {
  top: 50%;
  min-width: 48px;
  min-height: 64px;
  font-size: 4rem;
  line-height: 1;
  transform: translateY(-50%);
}

.lcp-product-lightbox-prev {
  left: 1rem;
}

.lcp-product-lightbox-next {
  right: 1rem;
}

body.lcp-product-lightbox-open {
  overflow: hidden;
}

.lcp-product-single-summary {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1rem;
}

.lcp-product-single-content {
  padding: 3rem 0;
}

.lcp-product-single-description,
.lcp-product-single-attributes {
  padding: 1.5rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 32px rgba(17, 20, 20, 0.07);
}

.lcp-product-single-description p,
.lcp-product-single-description li {
  color: var(--catalog-muted);
  line-height: 1.78;
}

.lcp-product-attribute-list {
  display: grid;
  gap: 1rem;
  margin: 0;
}

.lcp-product-attribute-item {
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--catalog-line);
}

.lcp-product-attribute-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.lcp-product-attribute-item summary {
  color: var(--catalog-muted);
  cursor: default;
  font-size: 0.74rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  transition: color var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-attribute-item p {
  margin: 0.25rem 0 0;
  color: var(--catalog-ink);
  animation: lcpCatalogCardIn var(--catalog-duration) var(--catalog-ease) both;
}

.lcp-product-section-heading {
  max-width: 760px;
  margin-bottom: 1.5rem;
}

.lcp-product-section-heading h2 {
  margin: 0;
  font-family: "HelveticaNowText-Light";
  font-size: clamp(2rem, 4vw, 3.4rem);
  font-weight: 300;
  text-transform: uppercase;
}

.lcp-product-section-anchor {
  scroll-margin-top: 96px;
}

.lcp-product-breadcrumbs {
  display: flex;
  gap: 0.45rem;
  flex-wrap: wrap;
  margin-bottom: 1.25rem;
  color: var(--catalog-muted);
  font-size: 0.78rem;
}

.lcp-product-breadcrumbs a {
  color: var(--catalog-green);
  text-decoration: none;
}

.lcp-product-breadcrumbs span {
  color: rgba(17, 20, 20, 0.32);
}

.lcp-product-single-main-image img {
  transition: transform var(--catalog-duration-slow) var(--catalog-ease-emphasis);
}

.lcp-product-single-main-image:hover img {
  transform: scale(1.015);
}

.lcp-product-gallery-count {
  position: absolute;
  bottom: 0.85rem;
  left: 0.85rem;
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0.35rem 0.7rem;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--catalog-ink);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.lcp-product-single-thumbs button:hover {
  opacity: 1;
  transform: translateY(-1px);
}

.lcp-product-lightbox-header {
  position: absolute;
  top: 1.1rem;
  left: 1.25rem;
  right: 4.75rem;
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.lcp-product-lightbox-header span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lcp-product-lightbox-nav[hidden] {
  display: none;
}

.lcp-product-single-highlights {
  width: 100%;
  padding: 1.1rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 12px 28px rgba(17, 20, 20, 0.06);
}

.lcp-product-single-highlights .lcp-product-kicker {
  margin-bottom: 0.75rem;
}

.lcp-product-single-highlights dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
}

.lcp-product-single-highlights div {
  min-width: 0;
  padding: 0.75rem;
  border: 1px solid rgba(49, 92, 80, 0.12);
  border-radius: 8px;
  background: #ffffff;
}

.lcp-product-single-highlights dt {
  margin-bottom: 0.28rem;
  color: var(--catalog-muted);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.lcp-product-single-highlights dd {
  margin: 0;
  color: var(--catalog-ink);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.lcp-product-single-highlights a {
  color: var(--catalog-green);
  text-decoration: none;
}

.lcp-product-single-anchors {
  display: flex;
  gap: 0.55rem;
  flex-wrap: wrap;
  width: 100%;
}

.lcp-product-single-anchors a {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  padding: 0.4rem 0.72rem;
  border: 1px solid rgba(49, 92, 80, 0.16);
  border-radius: 8px;
  background: rgba(49, 92, 80, 0.07);
  color: var(--catalog-green);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background var(--catalog-duration-fast) var(--catalog-ease), border-color var(--catalog-duration-fast) var(--catalog-ease), transform var(--catalog-duration-fast) var(--catalog-ease);
}

.lcp-product-single-anchors a:hover {
  border-color: rgba(49, 92, 80, 0.32);
  background: rgba(49, 92, 80, 0.11);
  transform: translateY(-1px);
}

.lcp-product-single-side {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.lcp-product-single-description h2,
.lcp-product-single-attributes h2,
.lcp-product-brand-panel h2 {
  margin: 0;
  font-family: "HelveticaNowText-Light";
  font-size: clamp(1.65rem, 3vw, 2.45rem);
  font-weight: 300;
  line-height: 1.08;
  text-transform: uppercase;
}

.lcp-product-single-description h3,
.lcp-product-single-description h4 {
  margin: 1.35rem 0 0.65rem;
  color: var(--catalog-ink);
  line-height: 1.25;
}

.lcp-product-single-description p:first-of-type {
  margin-top: 0;
}

.lcp-product-single-description a {
  color: var(--catalog-green);
  font-weight: 700;
}

.lcp-product-single-description ul,
.lcp-product-single-description ol {
  display: grid;
  gap: 0.45rem;
  padding-left: 1.25rem;
}

.lcp-product-single-description table {
  display: block;
  width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
}

.lcp-product-single-description th,
.lcp-product-single-description td {
  padding: 0.65rem;
  border: 1px solid var(--catalog-line);
  text-align: left;
}

.lcp-product-single-empty {
  padding: 1rem;
  border: 1px dashed rgba(49, 92, 80, 0.28);
  border-radius: 8px;
  background: rgba(49, 92, 80, 0.06);
}

.lcp-product-single-empty p {
  margin: 0;
}

.lcp-product-attribute-item[open] summary {
  color: var(--catalog-green);
}

.lcp-product-attribute-item p {
  overflow-wrap: anywhere;
}

.lcp-product-brand-panel {
  padding: 1rem 0 3rem;
}

.lcp-product-brand-panel-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.38fr) minmax(0, 1fr);
  gap: 1.5rem;
  align-items: center;
  padding: 1.25rem;
  border: 1px solid var(--catalog-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 14px 32px rgba(17, 20, 20, 0.07);
}

.lcp-product-brand-panel-media {
  overflow: hidden;
  border-radius: 8px;
  background: #e8eee9;
}

.lcp-product-brand-panel-media img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
}

.lcp-product-brand-panel-content {
  display: grid;
  gap: 0.8rem;
  justify-items: start;
}

.lcp-product-brand-panel-content p {
  max-width: 760px;
  margin: 0;
  color: var(--catalog-muted);
  line-height: 1.65;
}

.lcp-product-related-heading {
  display: flex;
  gap: 1rem;
  align-items: end;
  justify-content: space-between;
  max-width: none;
}

.lcp-product-related-heading .lcp-product-card-cta {
  flex: 0 0 auto;
}

.lcp-product-mobile-actions,
.lcp-product-mobile-nav,
.lcp-product-mobile-nav-backdrop {
  display: none;
}

@media screen and (min-width: 48em) {
  .lcp-brand-index-controls {
    grid-template-columns: minmax(280px, 1fr) minmax(180px, 0.45fr) auto;
    align-items: end;
  }
  .lcp-product-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lcp-product-field-search {
    grid-column: span 2;
  }
  .lcp-products-grid,
  .lcp-brands-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lcp-product-skeleton-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (min-width: 64em) {
  .lcp-product-filter-grid {
    grid-template-columns: minmax(220px, 1.3fr) minmax(170px, 1fr) minmax(180px, 1fr) minmax(145px, 0.8fr) minmax(120px, 0.65fr);
  }
  .lcp-product-filter-grid-compact {
    grid-template-columns: minmax(220px, 1.35fr) minmax(180px, 1fr) minmax(145px, 0.8fr) minmax(120px, 0.65fr);
  }
  .lcp-product-field-search {
    grid-column: span 1;
  }
  .lcp-products-grid,
  .lcp-brands-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lcp-product-skeleton-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lcp-brand-hero-grid,
  .lcp-product-single-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
    align-items: start;
  }
  .lcp-product-single-content-grid {
    grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.6fr);
    align-items: start;
  }
  .lcp-product-single-summary,
  .lcp-product-single-side {
    position: sticky;
    top: 104px;
  }
  .lcp-product-related-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media screen and (min-width: 90em) {
  .lcp-products-grid,
  .lcp-brands-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lcp-product-skeleton-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lcp-product-card-title,
  .lcp-brand-card h2 {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .lcp-product-hero,
  .lcp-product-single-hero,
  .lcp-brand-hero {
    padding-top: 6rem;
  }
  .lcp-product-hero {
    min-height: 35vh;
    padding-bottom: 2.5rem;
  }
  .lcp-brand-hero,
  .lcp-product-single-hero {
    padding-bottom: 2.5rem;
  }
  .lcp-product-brand-page .lcp-brand-hero {
    padding-top: 6rem;
  }
  .lcp-product-hero h1,
  .lcp-brand-hero h1,
  .lcp-product-single-summary h1 {
    font-size: 2rem;
  }
  .lcp-product-intro,
  .lcp-brand-description,
  .lcp-product-single-lead {
    font-size: 0.96rem;
    line-height: 1.55;
  }
  .lcp-product-filters {
    position: static;
    display: block;
  }
  body.has-catalog-js .lcp-product-filters {
    position: fixed;
    inset: auto 0 0 0;
    z-index: 109;
    display: block;
    max-height: min(82vh, 100vh - 84px);
    overflow-y: auto;
    padding: 1rem 0 calc(1rem + env(safe-area-inset-bottom));
    border-top: 1px solid var(--catalog-line);
    border-bottom: 0;
    box-shadow: 0 -18px 40px rgba(17, 20, 20, 0.18);
    opacity: 0;
    pointer-events: none;
    transform: translateY(110%);
    transition: opacity var(--catalog-duration) var(--catalog-ease), transform var(--catalog-duration) var(--catalog-ease);
  }
  body.has-catalog-js .lcp-product-filters::before {
    content: "";
    display: block;
    width: 44px;
    height: 4px;
    margin: 0 auto 0.85rem;
    border-radius: 999px;
    background: rgba(17, 20, 20, 0.22);
  }
  body.has-catalog-js .lcp-product-filters.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  body.has-catalog-js .lcp-product-filter-toggle {
    left: 50%;
    right: auto;
    bottom: calc(16px + env(safe-area-inset-bottom));
    z-index: 112;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 150px;
    transform: translateX(-50%);
    box-shadow: 0 18px 34px rgba(17, 20, 20, 0.28);
  }
  body.has-catalog-js .lcp-product-filter-toggle.is-active {
    background: #111414;
    transform: translateX(-50%) translateY(-2px);
  }
  body.has-catalog-js .lcp-product-filter-backdrop {
    position: fixed;
    inset: 0;
    z-index: 108;
    display: block;
    padding: 0;
    border: 0;
    background: rgba(9, 13, 13, 0.44);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--catalog-duration) var(--catalog-ease);
  }
  body.has-catalog-js.lcp-product-filters-open .lcp-product-filter-backdrop {
    opacity: 1;
    pointer-events: auto;
  }
  .lcp-product-filter-form {
    padding: 1rem;
  }
  body.has-catalog-js .lcp-product-filter-form {
    padding-bottom: 4.75rem;
  }
  body.has-catalog-js .lcp-product-filter-actions {
    position: sticky;
    bottom: calc(-1rem - env(safe-area-inset-bottom));
    z-index: 2;
    margin: 1rem -1rem -1rem;
    padding: 0.85rem 1rem calc(0.85rem + env(safe-area-inset-bottom));
    border-top: 1px solid var(--catalog-line);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 -12px 24px rgba(17, 20, 20, 0.08);
  }
  .lcp-product-submit,
  .lcp-product-reset {
    flex: 1 1 100%;
  }
  .lcp-product-active-filters {
    width: 100%;
  }
  body.has-catalog-js .lcp-product-applied-filters {
    display: flex;
  }
  .lcp-product-filter-chip,
  .lcp-product-clear-filters {
    max-width: 100%;
  }
  .lcp-product-filter-chip span:first-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .lcp-product-single-thumbs {
    display: flex;
    gap: 0.65rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  .lcp-product-single-thumbs button {
    flex: 0 0 92px;
    min-height: 92px;
    scroll-snap-align: start;
  }
  .lcp-product-single-main-image {
    min-height: clamp(240px, 72vw, 380px);
  }
  .lcp-product-gallery-zoom {
    right: 0.65rem;
    bottom: 0.65rem;
    min-height: 30px;
    font-size: 0.68rem;
  }
  .lcp-product-lightbox {
    padding: 1rem;
  }
  .lcp-product-lightbox img {
    max-height: 72vh;
  }
  .lcp-product-lightbox-nav {
    top: auto;
    bottom: 1rem;
    min-width: 44px;
    min-height: 44px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
    font-size: 2.4rem;
    transform: none;
  }
  .lcp-product-lightbox.is-open figure {
    transform: scale(1);
  }
  .lcp-product-lightbox-prev {
    left: 1rem;
  }
  .lcp-product-lightbox-next {
    right: 1rem;
  }
  .lcp-product-single-attributes {
    padding: 1.1rem;
  }
  .lcp-product-attribute-list {
    gap: 0.65rem;
  }
  .lcp-product-attribute-item {
    padding: 0;
    border: 1px solid var(--catalog-line);
    border-radius: 8px;
    background: #ffffff;
  }
  .lcp-product-attribute-item summary {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    padding: 0.7rem 0.85rem;
    cursor: pointer;
  }
  .lcp-product-attribute-item summary::after {
    content: "+";
    color: var(--catalog-green);
    font-size: 1rem;
  }
  .lcp-product-attribute-item[open] summary::after {
    content: "-";
  }
  .lcp-product-attribute-item p {
    padding: 0 0.85rem 0.85rem;
  }
  body.has-product-single-js .lcp-product-single-page {
    padding-bottom: calc(72px + env(safe-area-inset-bottom));
  }
  body.has-product-single-js .lcp-product-single-anchors {
    display: none;
  }
  .lcp-product-breadcrumbs {
    margin-bottom: 1rem;
    font-size: 0.72rem;
  }
  .lcp-product-gallery-count,
  .lcp-product-gallery-zoom {
    bottom: 0.65rem;
  }
  .lcp-product-gallery-count {
    left: 0.65rem;
    min-height: 30px;
    font-size: 0.68rem;
  }
  .lcp-product-single-summary {
    gap: 0.85rem;
  }
  .lcp-product-single-highlights {
    padding: 0.9rem;
  }
  .lcp-product-single-highlights dl {
    grid-template-columns: 1fr;
    gap: 0.55rem;
  }
  .lcp-product-single-highlights div {
    padding: 0.7rem;
  }
  .lcp-product-single-content {
    padding: 2rem 0;
  }
  .lcp-product-single-description,
  .lcp-product-single-attributes {
    padding: 1.1rem;
  }
  .lcp-product-single-description h2,
  .lcp-product-single-attributes h2,
  .lcp-product-brand-panel h2 {
    font-size: clamp(1.55rem, 8vw, 2.15rem);
  }
  .lcp-product-brand-panel {
    padding: 0 0 2rem;
  }
  .lcp-product-brand-panel-grid {
    grid-template-columns: 1fr;
    padding: 1rem;
  }
  .lcp-product-brand-panel-media {
    max-width: 220px;
  }
  .lcp-product-related-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  body.has-product-single-js .lcp-product-mobile-actions {
    position: fixed;
    left: 50%;
    bottom: calc(12px + env(safe-area-inset-bottom));
    z-index: 112;
    display: flex;
    width: min(94vw, 390px);
    min-height: 52px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 8px;
    background: rgba(17, 20, 20, 0.92);
    box-shadow: 0 18px 34px rgba(17, 20, 20, 0.28);
    transform: translateX(-50%);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }
  .lcp-product-mobile-actions a,
  .lcp-product-mobile-actions button {
    display: inline-flex;
    flex: 1 1 0;
    min-width: 0;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 0.65rem 0.45rem;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.16);
    background: transparent;
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
  }
  .lcp-product-mobile-actions a:last-child {
    border-right: 0;
  }
  .lcp-product-mobile-actions button[aria-expanded=true] {
    background: rgba(185, 147, 74, 0.2);
  }
  body.has-product-single-js .lcp-product-mobile-nav,
  body.has-product-single-js .lcp-product-mobile-nav-backdrop {
    display: block;
  }
  .lcp-product-mobile-nav-backdrop {
    position: fixed;
    inset: 0;
    z-index: 118;
    padding: 0;
    border: 0;
    background: rgba(9, 13, 13, 0.44);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--catalog-duration) var(--catalog-ease);
  }
  .lcp-product-mobile-nav-backdrop.is-open {
    opacity: 1;
    pointer-events: auto;
  }
  .lcp-product-mobile-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 119;
    pointer-events: none;
  }
  .lcp-product-mobile-nav-panel {
    max-height: min(72vh, 420px);
    overflow-y: auto;
    padding: 1rem 1rem calc(1rem + env(safe-area-inset-bottom));
    border-radius: 8px 8px 0 0;
    background: #ffffff;
    box-shadow: 0 -18px 40px rgba(17, 20, 20, 0.18);
    opacity: 0;
    transform: translateY(100%);
    transition: opacity var(--catalog-duration) var(--catalog-ease), transform var(--catalog-duration) var(--catalog-ease);
  }
  .lcp-product-mobile-nav.is-open {
    pointer-events: auto;
  }
  .lcp-product-mobile-nav.is-open .lcp-product-mobile-nav-panel {
    opacity: 1;
    transform: translateY(0);
  }
  .lcp-product-mobile-nav-panel::before {
    content: "";
    display: block;
    width: 44px;
    height: 4px;
    margin: 0 auto 0.85rem;
    border-radius: 999px;
    background: rgba(17, 20, 20, 0.22);
  }
  .lcp-product-mobile-nav-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    color: var(--catalog-ink);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }
  .lcp-product-mobile-nav-header button {
    display: inline-flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--catalog-line);
    border-radius: 8px;
    background: #ffffff;
    color: var(--catalog-ink);
    font-size: 1.6rem;
    line-height: 1;
  }
  .lcp-product-mobile-nav nav {
    display: grid;
    gap: 0.55rem;
  }
  .lcp-product-mobile-nav nav a {
    display: flex;
    min-height: 48px;
    align-items: center;
    padding: 0.75rem 0.9rem;
    border: 1px solid var(--catalog-line);
    border-radius: 8px;
    background: rgba(49, 92, 80, 0.06);
    color: var(--catalog-green);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-decoration: none;
    text-transform: uppercase;
  }
  body.lcp-product-mobile-nav-open {
    overflow: hidden;
  }
}
@media (prefers-reduced-motion: reduce) {
  .lcp-product-catalog-page *,
  .lcp-product-single-page *,
  .lcp-brands-index-page * {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }
  .lcp-product-card,
  .lcp-brand-card {
    animation: none !important;
  }
  .lcp-product-skeleton-card span {
    animation: none !important;
  }
}
.site {
  height: 100vh;
  display: flex;
  flex-direction: column;
}

.site-content,
.site-main {
  height: 100%;
}

.site-header .wrapper {
  display: flex;
}

.site-menu {
  margin-left: auto;
}

.home-content {
  padding-top: 30vh;
  text-align: center;
}
.home-content p {
  font-size: 32px;
}
