@charset "utf-8";

.site-header::after, .logo-wrap::after { clear: both; content: ""; display: table; }

html { font-family: sans-serif; text-size-adjust: 100%; }

body { margin: 0px; }

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

audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }

audio:not([controls]) { display: none; height: 0px; }

[hidden], template { display: none; }

a { background: transparent; }

a:active, a:focus, a:hover { outline: 0px; }

abbr[title] { border-bottom: 1px dotted; }

b, strong { font-weight: bold; }

dfn { font-style: italic; }

h1 { font-size: 2em; margin: 0.67em 0px; }

mark { background: rgb(255, 255, 0); color: rgb(0, 0, 0); }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

img { border: 0px; }

svg:not(:root) { overflow: hidden; }

figure { margin: 1em 40px; }

hr { box-sizing: content-box; height: 0px; }

pre { overflow: auto; }

code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }

button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0px; }

button { overflow: visible; }

button, select { text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] { appearance: button; cursor: pointer; }

button[disabled], html input[disabled] { cursor: default; }

input { line-height: normal; }

input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0px; }

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }

input[type="search"] { appearance: textfield; box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { appearance: none; }

fieldset { border: 0px; margin: 0px; padding: 0px; }

legend { border: 0px; padding: 0px; }

textarea { overflow: auto; }

optgroup { font-weight: bold; }

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

td, th { padding: 0px; }

* { box-sizing: border-box; }

html { -webkit-font-smoothing: antialiased; text-rendering: optimizelegibility; }

ul { margin: 0px; padding: 0px; }

ul li { list-style-type: none; }

img { vertical-align: top; }

p { margin: 0px; }

a { text-decoration: none; }

html, body { min-height: 100%; }

.italic { font-style: italic; }

.underline { text-decoration: underline; }

.strikethrough { text-decoration: line-through; }

.bold { font-weight: bold; }

.cfix::after { clear: both; content: " "; display: block; height: 0px; line-height: 0; overflow: hidden; visibility: hidden; }

html { background-color: rgb(17, 17, 17); background-image: url(""); background-position: left top; background-repeat: no-repeat; background-size: contain; }

html::before { background-color: rgb(0, 0, 0); display: none; opacity: calc(0.3); }

.site-container { float: none; margin-left: auto; margin-right: auto; max-width: 100%; }

html .page-background-video .video-wrap { left: 0px; width: 100%; }

.image-left .page-background-video .video-wrap { left: 50vw; width: 50vw; }

.image-right .page-background-video .video-wrap { width: 50vw; }

.example-site-footer { background: rgba(37, 38, 42, 0.94); bottom: 0px; color: rgb(255, 255, 255); display: inline-block; font-family: "Helvetica Neue", sans-serif; font-size: 14px; left: 0px; padding: 0px 20px 0px 0px; position: fixed; width: 100%; z-index: 4; }

.example-site-footer .icon { fill: rgb(255, 255, 255); float: left; }

.example-site-footer .content-left, .example-site-footer .content-right { height: 70px; }

.example-site-footer .content-left { float: left; }

.example-site-footer .content-right { float: right; }

.example-footer-content { transform: translateY(-50%); display: inline-block; position: relative; top: 50%; }

.example-footer-link { border-bottom: 1px solid rgb(255, 255, 255); color: rgb(255, 255, 255); }

.example-footer-link:hover { border-bottom-width: 0px; }

@media (max-width: 932px) {
  .example-site-footer .desktop { display: none; }
  .example-site-footer .mobile { text-transform: capitalize; }
}

html { position: relative; }

html::before { content: ""; height: 100%; left: 0px; position: fixed; top: 0px; width: 100%; }

.site-wrap, .site-container { position: relative; width: 100%; }

.site-wrap::before { content: ""; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; }

.site-header { position: relative; }

.theme-container::before { content: ""; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; }

.responsive-nav { display: none; opacity: 0; visibility: hidden; }

.project-cover .separator:last-child, .project-header .fields .separator:last-child { display: none; }

.preserve-whitespace { white-space: pre-wrap; }

.preserve-whitespace--nowrap { white-space: pre; }

.page-background-video .video-wrap { height: 100vh; left: 80px; overflow: hidden; position: fixed; top: 0px; width: calc(-80px + 100vw); z-index: -1; }

.image-right .page-background-video .video-wrap { width: 50vw; }

.image-left .page-background-video .video-wrap { left: 50%; width: 50vw; }

.page-background-video .renditions-video { font-family: "object-fit: cover;"; height: 100%; left: 0px; object-fit: cover; position: relative; top: 0px; width: 100%; }

.page-background-video-with-panel .video-wrap { left: 260px; width: calc(-260px + 100vw); }

.image-right .page-background-video-with-panel .video-wrap { left: 260px; width: calc(-130px + 50vw); }

.image-left .page-background-video-with-panel .video-wrap { left: calc(50% + 130px); width: calc(-130px + 50vw); }

.image-right .page-background-video-with-panel .video-wrap { left: 0px; width: 50vw; }

.image-left .page-background-video-with-panel .video-wrap { left: 50%; width: 50vw; }

.mp4-image { font-family: "object-fit: cover;"; height: 100%; left: 0px; object-fit: cover; position: relative; top: 0px; width: 100%; display: none !important; }

@supports (-webkit-overflow-scrolling: touch) {
  .video-wrap .renditions-video { display: none; }
  .video-wrap .mp4-image { display: block !important; }
}

.logo, .logo-secondary { clear: both; overflow-wrap: break-word; }

.logo img, .logo-secondary img { max-width: 100%; }

.logo a, .logo-secondary a { color: inherit; }

.logo .image-link, .logo-secondary .image-link { display: inline-block; max-width: 100%; }

.logo .image-rollover, .logo .image-scroll, .logo-secondary .image-rollover, .logo-secondary .image-scroll { display: none; }

.logo.logo-text, .logo-secondary.logo-text { width: 100%; }

.logo.has-rollover.hoverable:hover .image-link, .logo-secondary.has-rollover.hoverable:hover .image-link { display: none; }

.logo.has-rollover.hoverable:hover .image-link.image-rollover, .logo-secondary.has-rollover.hoverable:hover .image-link.image-rollover { display: block; }

.on-scroll .logo.has-scroll .image-normal, .on-scroll .logo.has-scroll .image-rollover, .on-scroll .logo-secondary.has-scroll .image-normal, .on-scroll .logo-secondary.has-scroll .image-rollover { display: none !important; }

.on-scroll .logo.has-scroll .image-scroll, .on-scroll .logo-secondary.has-scroll .image-scroll { display: inline-block; }

.logo-image, .logo-secondary-image { width: 100%; }

.social { font-size: 0px; }

.social li { display: inline-block; }

.social li:first-child { padding-left: 0px !important; }

.social li:last-child { padding-right: 0px !important; }

.social li svg { vertical-align: middle; }

.social a { display: block; text-align: center; }

nav .page-title, nav .gallery-title, nav .project-title, nav .link-title, nav .social, nav .social li { display: inline-block; vertical-align: middle; }

nav .project-title:first-child, nav .gallery-title:first-child, nav .page-title:first-child, nav .link-title:first-child { padding-left: 0px !important; }

nav .project-title:last-child, nav .gallery-title:last-child, nav .page-title:last-child, nav .link-title:last-child { padding-right: 0px !important; }

.masthead { overflow: hidden; position: relative; }

.masthead .video-wrap { height: 100%; left: 0px; overflow: hidden; position: absolute; top: 0px; width: 100%; }

.masthead video { font-family: "object-fit: cover;"; height: 100%; left: 0px; object-fit: cover; top: 0px; width: 100%; }

.masthead::after { content: ""; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; }

.masthead h1, .masthead p { width: 100%; overflow-wrap: break-word; }

.masthead, .masthead-placeholder { width: 100%; }

.masthead-placeholder { opacity: 0; z-index: -1; position: relative !important; }

.masthead-contents, .masthead-text { width: 100%; }

.masthead-contents { height: 100%; top: 0px; z-index: 1; }

.masthead, .masthead-contents { display: flex; -webkit-box-align: center; align-items: center; }

.masthead-arrow-container { cursor: pointer; height: 40px; width: 60px; }

.masthead-arrow { transform: rotate(45deg) translateY(-15px) translateX(5px); border-bottom: 1px solid transparent; border-right: 1px solid transparent; bottom: 5px; height: 30px; position: absolute; width: 30px; }

.masthead-button { cursor: pointer; display: inline-block; vertical-align: middle; }

.masthead-button + .masthead-button-spacer + .masthead-button { margin-left: 17px; }

.masthead-button-spacer { display: none; }

@media (max-width: 540px) {
  .masthead-button + .masthead-button-spacer { display: block; height: 17px; }
  .masthead-button + .masthead-button-spacer + .masthead-button { margin-left: 0px; }
}

.site-footer { clear: both; display: block; }

.cookie-banner { bottom: 0px; display: none; position: fixed; text-align: center; z-index: 99999; }

.cookie-banner.show { display: block; }

.cookie-banner p { font-size: 18px; line-height: 1.222; margin: 24px; max-width: calc(100% - 84px); }

@media (max-width: 932px) {
  .cookie-banner p { font-size: 16px; }
}

.cookie-banner a { color: inherit; margin-left: 10px; text-decoration: underline; }

.cookie-banner .close-btn { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 16px; }

.site-header { display: flex; position: fixed; right: 0px; top: 0px; width: 100%; }

.site-header.on-scroll { transition: background-color 0.3s, box-shadow 0.3s; }

.logo-wrap { flex: 1 1 0%; }

.logo-wrap { max-width: 100%; margin-left: auto; margin-right: auto; padding-bottom: 0px; padding-top: 0px; width: 39.5%; }

.logo-text { float: right; text-align: right; }

.logo-image { max-width: 130px; float: left; text-align: left; }

.logo-secondary-text { float: left; text-align: left; }

.logo-secondary-image { max-width: 100%; float: left; text-align: left; }

.logo { font-family: shzc; font-size: 24px; font-style: normal; font-weight: 400; line-height: 35px; padding: 0px 0% 0px 18.5%; text-transform: uppercase; }

.logo, .logo a { color: rgb(255, 255, 255); }

.logo a:hover { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

.logo-secondary { font-family: shzc; font-size: 22px; font-style: normal; font-weight: 400; line-height: 22px; padding: 0px 0%; text-transform: uppercase; }

.logo-secondary, .logo-secondary a { color: rgb(204, 204, 204); }

.logo-secondary a:hover { color: rgb(204, 204, 204); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav { float: left; max-width: 100%; width: 48%; }

nav .gallery-title a { color: rgb(174, 174, 174); font-family: shzc; font-size: 19px; font-style: normal; font-weight: 400; line-height: 19px; text-transform: uppercase; }

nav .gallery-title a:hover { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav .gallery-title a.active { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav .project-title a { color: rgb(174, 174, 174); font-family: shzc; font-size: 19px; font-style: normal; font-weight: 400; line-height: 19px; text-transform: uppercase; }

nav .project-title a:hover { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav .project-title a.active { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav .page-title a { color: rgb(174, 174, 174); font-family: shzc; font-size: 19px; font-style: normal; font-weight: 400; line-height: 19px; text-transform: uppercase; }

nav .page-title a:hover { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav .page-title a.active { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

nav .link-title a { color: rgb(174, 174, 174); font-family: shzc; font-size: 19px; font-style: normal; font-weight: 400; line-height: 19px; text-transform: uppercase; }

nav .link-title a:hover { color: rgb(255, 255, 255); font-style: normal; font-weight: 400; text-transform: uppercase; }

.pf-nav-social { text-align: right; }

.pf-nav-social li { padding: 0px 0px 0px 8px; }

.pf-nav-social a:hover svg { fill: rgb(255, 255, 255); opacity: 1; }

.pf-nav-social svg { fill: rgb(204, 204, 204); height: 24px; opacity: 0.57; width: 24px; }

@media (max-width: 932px) {
  .pf-nav-social li { padding: 0px 0px 0px 6px; }
}

@media (max-width: 540px) {
  .pf-nav-social li { padding: 0px 0px 0px 5px; }
}

.pf-footer-social { text-align: center; }

.pf-footer-social li { padding: 0px 15px 20px 0px; }

.pf-footer-social a:hover svg { fill: rgb(255, 255, 255); opacity: 1; }

.pf-footer-social svg { fill: rgb(204, 204, 204); height: 30px; opacity: 1; width: 30px; }

@media (max-width: 932px) {
  .pf-footer-social li { padding: 0px 12px 16px 0px; }
}

@media (max-width: 540px) {
  .pf-footer-social li { padding: 0px 10px 13px 0px; }
}

.masthead-social { text-align: center; }

.masthead-social li { padding: 40px 15px 15px 0px; }

.masthead-social a:hover svg { fill: rgb(255, 255, 255); opacity: 0.8; }

.masthead-social svg { fill: rgb(255, 255, 255); height: 30px; opacity: 1; width: 30px; }

@media (max-width: 932px) {
  .masthead-social li { padding: 32px 12px 12px 0px; }
}

@media (max-width: 540px) {
  .masthead-social li { padding: 26px 10px 10px 0px; }
}

nav { padding-left: 0%; padding-right: 0%; text-align: left; }

nav .gallery-title { padding-left: 0px; padding-right: 20px; }

nav .project-title { padding-left: 0px; padding-right: 20px; }

nav .page-title { padding-left: 0px; padding-right: 20px; }

nav .link-title { padding-left: 0px; padding-right: 20px; }

.masthead { -webkit-box-pack: center; justify-content: center; height: calc(-100px + 90vh); margin-bottom: 0px; padding-left: 0%; padding-right: 0%; }

.masthead::after { display: none; }

.masthead h1 { color: rgb(255, 255, 255); font-family: shzc; font-size: 60px; font-style: normal; font-weight: 400; line-height: 68px; margin-bottom: 20px; margin-top: 0px; text-align: center; text-transform: none; }

.masthead p { color: rgb(153, 153, 153); font-family: shzc; font-size: 24px; font-style: normal; font-weight: 400; line-height: 30px; margin-bottom: 0px; margin-top: 0px; text-align: center; text-transform: none; }

.masthead-contents { max-width: 800px; }

.masthead-arrow-container { bottom: 45px; position: absolute; left: calc(50% - 30px); }

.masthead-arrow { border-bottom-color: rgb(255, 255, 255); border-right-color: rgb(255, 255, 255); }

.masthead-buttons { padding-top: 30px; text-align: center; }

@media (max-width: 932px) {
  .masthead { margin-bottom: 0px; padding-left: 5%; padding-right: 5%; }
  .masthead h1 { font-size: 28px; line-height: 32px; margin-bottom: 14px; margin-top: 0px; }
  .masthead p { font-size: 15px; line-height: 19px; margin-bottom: 0px; margin-top: 0px; }
  .masthead-buttons { padding-top: 18px; }
}

@media (min-width: 541px) and (max-width: 932px) and (min-height: 1118.4px) {
  .masthead { height: 80vh; }
}

@media (max-width: 540px) and (min-height: 648px) {
  .masthead { height: 80vh; }
}

@media (max-width: 540px) {
  .masthead { margin-bottom: 0px; }
  .masthead h1 { font-size: 25px; line-height: 28px; margin-bottom: 13px; margin-top: 0px; }
  .masthead p { font-size: 14px; line-height: 20px; margin-bottom: 0px; margin-top: 0px; }
  .masthead-buttons { padding-top: 16px; }
}

.site-footer { font-family: shzc; font-size: 14px; font-style: normal; font-weight: 400; line-height: 20px; padding: 0px; text-align: center; text-transform: none; width: 100%; }

.site-footer, .site-footer a { color: rgb(153, 153, 153); }

@media (max-width: 932px) {
  .site-footer { font-size: 14px; line-height: 20px; padding-bottom: 0px; padding-top: 0px; }
}

@media (max-width: 540px) {
  .site-footer { font-size: 14px; line-height: 20px; padding-bottom: 0px; padding-top: 0px; }
}

.cookie-banner { font-family: shzc; width: 100%; }

.cookie-banner .close-btn { cursor: pointer; }

.lightbox-content { height: 100%; }

.lightbox-content .grid__image-caption { font-family: shzc; }

#lightbox-wrap, #lightbox-inner-wrap { height: 100%; }

.grid__image-caption, .grid__image-caption-lightbox { font-family: shzc; }

.site-content { margin-left: 4%; margin-right: 4%; width: 92%; }

.site-header { align-items: center; height: 100px; padding: 0px 4%; position: relative; z-index: 3; }

.site-header.on-scroll { background-color: transparent; }

.site-header.on-scroll .logo, .site-header.on-scroll .logo a { color: rgb(255, 255, 255); }

.site-header.on-scroll .pf-nav-social svg { fill: rgb(255, 255, 255); opacity: 1; }

.site-header.on-scroll nav .page-title a { color: rgb(255, 255, 255); }

.site-header.on-scroll nav .gallery-title a { color: rgb(255, 255, 255); }

.site-header.on-scroll nav .project-title a { color: rgb(255, 255, 255); }

.site-header.on-scroll nav .link-title a { color: rgb(255, 255, 255); }

.header-placeholder { display: none; }

.logo-image img { max-height: 100px; }

.pf-nav-social { width: 12.5%; }

.hamburger-click-area { transform: translateY(-50%); cursor: pointer; display: none; padding: 30px 5%; position: absolute; right: 0px; -webkit-tap-highlight-color: transparent; top: 50%; }

.hamburger { position: relative; width: 24px; }

.hamburger i { display: block; height: 2px; margin-bottom: 4px; }

.hamburger i:last-child { margin-bottom: 0px; }

@media (max-width: 932px) {
  nav { display: none; padding: 0px; width: 100%; }
  .site-header { padding-left: 5%; padding-right: 5%; }
  .logo-wrap { max-width: 100%; padding: 0px; width: 100%; }
  .logo { max-width: 100%; padding: 0px 39px 0px 0px; }
  .logo-image { margin-bottom: -5px; margin-top: -5px; }
  .logo-image img { max-height: 60px; }
  .logo-text { float: none; text-align: left; }
  .logo-secondary { display: none; }
  .close-responsive-button { top: 40px; }
  .hamburger-click-area { display: block; }
  .hamburger i { background-color: rgb(249, 3, 3); }
  main, .site-container { width: 100%; }
  .site-content { margin: 0px; padding: 0px; width: 100%; }
  .responsive-nav { background-color: rgb(17, 17, 17); inset: 0px; display: flex; height: 100%; overflow: auto; padding: 50px 5% 0px; position: fixed; text-align: center; transition: visibility 0.2s, opacity 0.2s; z-index: 99999; }
  .responsive-nav nav { float: none; margin: auto; max-width: 100%; width: 100%; }
  .responsive-nav.has-social nav { padding-bottom: 80px; }
  .responsive-nav .nav-container { width: 100%; }
  .responsive-nav .page-title, .responsive-nav .project-title, .responsive-nav .link-title, .responsive-nav .gallery-title { display: block; text-align: center; }
  .responsive-nav .page-title a, .responsive-nav .project-title a, .responsive-nav .link-title a, .responsive-nav .gallery-title a { font-size: 22px; line-height: 32px; }
  .responsive-nav .page-title, .responsive-nav .project-title, .responsive-nav .link-title, .responsive-nav .gallery-title { padding: 0px 0px 30px; }
  .responsive-nav .group { padding: 0px; }
  .responsive-nav .social { text-align: center; width: 100%; background-color: rgb(17, 17, 17); border-top: 1px solid rgba(0, 0, 0, 0.08); bottom: 0px; left: 0px; margin: 0px; min-height: 80px; overflow: auto hidden; padding: 5%; position: fixed; }
  .responsive-nav .social ul { white-space: nowrap; }
  .responsive-nav .social svg { width: 42px; }
  .responsive-nav .social li { display: inline-block; padding: 0px 20px 0px 0px; float: none !important; }
  .responsive-nav .social li:last-child { padding-right: 0px; }
  .close-responsive-click-area { cursor: pointer; padding: 50px 6%; position: fixed; right: 0px; -webkit-tap-highlight-color: transparent; top: 0px; }
  .close-responsive-button { height: 20px; position: fixed; right: 5%; width: 20px; }
  .close-responsive-button::before, .close-responsive-button::after { background-color: rgb(249, 3, 3); content: ""; display: block; height: 20px; left: 50%; position: absolute; width: 2px; }
  .close-responsive-button::before { transform: rotate(45deg); }
  .close-responsive-button::after { transform: rotate(-45deg); }
  .show-responsive-nav { overflow: hidden; }
  .show-responsive-nav .responsive-nav { opacity: 1; transition: visibility, opacity 0.2s; visibility: visible; }
  .show-responsive-nav .responsive-nav nav { display: block; }
  .show-responsive-nav .site-header, .show-responsive-nav .site-container { display: none; }
  .site-footer { padding-left: 5%; padding-right: 5%; width: 100%; }
}

@media (max-width: 540px) {
  .close-responsive-click-area { padding: 40px 10%; }
  .close-responsive-button { top: 30px; }
  .logo { font-size: 22px; line-height: 23px; }
}

@media (max-width: 932px) {
  .logo-container { width: 100%; }
}

@media (max-width: 932px) {
  .site-header { }
  .site-header .pf-nav-social { display: none; }
  .site-header.on-scroll .hamburger i { background-color: rgb(255, 255, 255); }
}

@media (max-width: 540px) {
  .site-header { }
}

.project-cover .details-inner::after, .project-covers::after { clear: both; content: ""; display: table; }

.project-cover { display: block; position: relative; }

.project-cover.hold-space .cover-image::before { content: ""; display: block; width: 100%; }

.project-cover.hold-space .cover { left: 0px; min-height: 100%; position: absolute; top: 0px; }

.project-cover .cover-image-wrap { overflow: hidden; position: relative; }

.project-cover .cover-image { position: relative; transform: translateZ(0px); }

.project-cover .cover-image::after { transition: background-color 0.2s, opacity 0.2s; content: ""; display: block; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; }

.project-cover .cover { background-position: center center; background-repeat: no-repeat; background-size: cover; display: block; min-height: 100%; overflow: hidden; width: 100%; }

.project-cover .cover .cover__img { font-family: "object-fit: cover;"; height: calc(100% + 2px); left: 50%; object-fit: cover; position: absolute; top: 50%; transform: translate(-50%, -50%); width: calc(100% + 2px); }

.project-cover .cover .cover__img.js-lazy { background-color: rgba(0, 0, 0, 0.03); }

.project-cover .cover .cover__img.js-lazy.image-loaded { background-color: transparent; }

.project-cover .cover-rollover { opacity: 0; visibility: hidden; }

.project-cover:hover .cover-normal.has-rollover, .project-cover.touch-hover .cover-normal.has-rollover { opacity: 0; visibility: hidden; }

.project-cover:hover .cover-rollover, .project-cover.touch-hover .cover-rollover { opacity: 1; visibility: visible; }

.project-cover .title, .project-cover .date, .project-cover .custom1, .project-cover .custom2, .project-cover .description { clear: both; }

.project-cover .description { white-space: pre-line; overflow-wrap: break-word; }

.project-cover .details-inner { overflow: hidden; }

.project-covers { display: flex; flex-wrap: wrap; }

.project-cover:hover .details-wrap, .project-cover.touch-hover .details-wrap { opacity: 1; }

.project-cover .cover-content-container { overflow: hidden; position: relative; }

.project-cover .details-wrap { opacity: 0; position: absolute; top: 0px; transition: opacity 0.15s; }

.project-cover .details-wrap { backface-visibility: hidden; height: 100%; }

.project-cover .details { display: flex; height: 100%; position: relative; width: 100%; }

.project-cover .details-inner { width: 100%; }

.back-to-top .arrow { margin-right: 10px; }

.back-to-top-fixed { position: fixed; z-index: 3; }

.icon-back-to-top { transform: translateX(-50%) translateY(-50%); display: block; left: 50%; position: absolute; top: 50%; }

.project-cover { margin-right: 4px; width: calc(25% - 3px); }

.project-cover.hold-space .cover-image::before { padding-bottom: 66.6667%; }

.project-cover .cover-image { float: none; margin-left: auto; margin-right: auto; width: 95%; }

.project-cover .cover-image::after { background-color: rgb(17, 17, 17); opacity: 0; }

.project-cover:hover .cover-image::after, .project-cover.touch-hover .cover-image::after { background-color: rgb(17, 17, 17); opacity: 0.9; }

.project-cover .cover-image, .project-cover .cover-image::after, .project-cover .cover { border-radius: 30px; }

.project-cover .details-wrap { max-width: 100%; padding-top: 8%; width: 100%; }

.project-cover .details { background: rgba(255, 255, 255, 0); }

.project-cover .details-inner { padding: 0% 8%; }

.project-cover .title { color: rgb(255, 255, 255); float: none; font-family: shzc; font-size: 24px; font-style: normal; font-weight: 400; line-height: 28px; margin: auto; padding: 0px 0% 3px; text-align: center; text-transform: uppercase; width: 100%; }

.project-cover .date { color: rgb(153, 153, 153); float: none; font-family: shzc; font-size: 16px; font-style: normal; font-weight: 400; line-height: 20px; margin: auto; padding: 5px 0% 0px; text-align: center; text-transform: none; width: 100%; }

.project-cover .custom1 { color: rgb(153, 153, 153); float: none; font-family: shzc; font-size: 16px; font-style: normal; font-weight: 400; line-height: 20px; margin: auto; padding: 12px 0% 0px; text-align: center; text-transform: none; width: 100%; }

.project-cover .custom2 { color: rgb(153, 153, 153); float: none; font-family: shzc; font-size: 16px; font-style: normal; font-weight: 400; line-height: 20px; margin: auto; padding: 12px 0% 0px; text-align: center; text-transform: none; width: 100%; }

.project-cover .description { color: rgb(153, 153, 153); float: none; font-family: shzc; font-size: 15px; font-style: normal; font-weight: 400; line-height: 20px; margin: auto; padding: 3px 0% 0px; text-align: center; text-transform: none; width: 100%; }

.project-cover:nth-child(4n) { margin-right: 0px; }

.project-cover:nth-child(4n+1) { clear: left; margin-left: 0px; }

@media (max-width: 932px) {
  .project-cover .title { font-size: 18px; line-height: 21px; padding-bottom: 5px; }
  .project-cover .date { font-size: 14px; line-height: 20px; padding-top: 5px; }
  .project-cover .custom1 { font-size: 14px; line-height: 20px; padding-top: 10px; }
  .project-cover .custom2 { font-size: 14px; line-height: 20px; padding-top: 10px; }
  .project-cover .description { font-size: 14px; line-height: 20px; padding-top: 5px; }
  .project-cover { width: calc(50% - 2px); }
  .project-cover:nth-child(2n) { margin-right: 0px !important; }
  .project-cover:nth-child(4n) { margin-right: 4px; }
  .project-cover:nth-child(4n+1) { clear: none; }
}

@media (max-width: 540px) {
  .project-cover { margin-right: 0px !important; width: 100%; }
  .project-cover .title { font-size: 15px; line-height: 18px; padding-bottom: 4px; }
  .project-cover .date { font-size: 14px; line-height: 20px; padding-top: 5px; }
  .project-cover .custom1 { font-size: 14px; line-height: 20px; padding-top: 10px; }
  .project-cover .custom2 { font-size: 14px; line-height: 20px; padding-top: 10px; }
  .project-cover .description { font-size: 14px; line-height: 20px; padding-top: 4px; }
}

.project-covers { padding-bottom: 0px; padding-top: 0px; }

@media (max-width: 932px) {
  .project-covers { padding-bottom: 0px; padding-top: 0px; }
}

@media (max-width: 540px) {
  .project-covers { padding-bottom: 0px; padding-top: 0px; }
}

.project-cover .cover-content-container { margin: 0px 0px 20px; }

.project-cover .details-wrap { left: 50%; transform: translateX(-50%); padding-bottom: 8%; }

.project-cover .details { border-radius: 30px; }

@media (max-width: 932px) {
  .project-cover .custom1, .project-cover .custom2, .project-cover .description { display: none; }
  .project-cover .cover-content-container { margin-bottom: 14px; margin-top: 0px; }
}

@media (max-width: 540px) {
  .project-cover .cover-content-container { margin: 0px 0px 13px; }
}

.project-cover .details { align-items: center; }

.back-to-top { display: none; }

.back-to-top-fixed { background: rgba(255, 255, 255, 0.15); border-radius: 60px; display: block; bottom: 40px; height: 60px; width: 60px; right: 40px; }

.back-to-top-fixed:hover { background: white; }

.back-to-top-fixed:hover .icon-back-to-top { fill: rgb(17, 17, 17); opacity: 1; }

.icon-back-to-top { fill: rgb(255, 255, 255); height: 24px; opacity: 0.7; position: absolute; width: 24px; }

@media (max-width: 932px) {
  .back-to-top-fixed { display: none; }
}