/* utilities */
html, body {
    overflow-x: hidden; 
    scroll-behavior : smooth;
}
.wide-word-spacing { word-spacing: 8px; letter-spacing: 1px; }
.post-edit-link { color: #00B9F2 !important; font-size: 12px; opacity: 0.5; }
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
.p-relative { position: relative; }
.p-absolute { position: absolute; }
@media(min-width: 992px) {
	.full-lg-height { min-height: 100vh !important; }
}
.square-container { content: ""; padding-top: 100%; position: relative; }
.square-container .square-content { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }

.post-content a { color: #00B9F2 !important; }
.post-content img { max-width: 100% !important; }
    
/* animations */
.slide-up { transition: opacity 2s, max-height 6s cubic-bezier(0, 1, 0, 1); max-height: 0; opacity: 0; }
.slide-down { transition: opacity 2s, max-height 2s; max-height: 100vh; opacity: 1; }
.fade-in { opacity: 1; transition: opacity 2s; }
.fade-out { opacity: 0; transition: opacity 2s; }

/* header - desktop */
#header { z-index: 9999; width: 100%; top: 0; position: fixed; background-color: #fff; } 
#header:hover { background-color: #fff; }
#header .header-edit-link { position: absolute; bottom: 0; }

#header .menu-item { font-size: 13px; text-transform: uppercase; }
#header .menu-item span { padding: 42px 0px; display: block; }
#header .menu-item.active { font-weight: 800; }
#header .menu-item.open > span,
#header .menu-item:hover > span { color: #000; border-bottom: 1px solid #000; }

#header #submenu-container { display: block; position: absolute; top: 100%; left: 0; right: 0; max-height: 0; transition: max-height 1s; }
#header #submenu-container .submenu-inner { display: none; }
#header #submenu-container .submenu { display: none; opacity: 0; transition: opacity 0.5s; }
#header #submenu-container .submenu .bordered { border-bottom: 1px solid #ccc; }
#header #submenu-container.open { display: block; max-height: 100vh; }
#header #submenu-container.open .submenu-inner { display: block; }

#header.nav-overlay { background-color: transparent; }
#header:not(.slim-mode).nav-overlay a { color: #fff; }
#header.nav-overlay #logo { filter: invert(1); }

#header.nav-overlay:hover, #header.open { transition: all 0.6s; background-color: #fff; }
#header.nav-overlay:hover a, #header.open a { color: #000 !important; }
#header.nav-overlay:hover #logo, #header.open #logo { filter: none; }
#header.nav-overlay .post-edit-link { position: absolute; top: 100%; }

#header.dimmed a.menu-item:not(.open) { color: #9D9FA2 !important;}
#header.dimmed a.menu-item:hover,
#header.dimmed .submenu-toggle:hover a.menu-item { color: #000 !important; }

/* header - desktop - slim mode*/
#header #slim-backdrop { position: absolute; top: -100%; transition: top 0.75s, opacity 0.75s; background-color: #fff; opacity: 0; height: calc(100% - 1px); width: 100%; display: flex; align-items: center; }
#header #slim-logo { position: absolute; top: 0px; opacity: 0; transition: all 0.75s; }
#header #slim-logo img { height: 14px; width: auto; }
#header #logo-wrapper { position: absolute; top: 50%; transform: translateY(-50%); transition: all 0.75s; opacity: 1; }
#header #logo-wrapper { height: 45px; width: auto; }
#header.slim-mode #slim-backdrop { top: 0; opacity: 1; }
#header.slim-mode .menu-item span { padding: 21px 0px; display: block; }
#header.slim-mode #slim-logo { opacity: 1; top: 50%;  transform: translateY(-50%); }
#header.slim-mode #logo-wrapper { top: -125%; opacity: 0; }

#header:hover #menu-items-container { position: relative; }
#header.open #menu-items-container::after { content: ''; display: block; height: 1px; position: absolute; width: 100%; bottom: 0; background-color: #C7C8CA; z-index: -1; }

@media(min-width: 992px){
	.header-buffer { margin-top: 145px; }
}

.admin-bar #header { margin-top: 46px; }
@media(min-width: 992px){
	.admin-bar #header { margin-top: 32px; }	
}

/* header - mobile */
#header-mobile #hamburger .ham-line { display: block; width: 33px; height: 3px; background-color: #000; transition: all 1s; }
#header-mobile #hamburger .ham-line.ham-top { margin-bottom: 7px; }  
body.mobile-menu-open #header-mobile #hamburger .ham-top { transform: rotate(45deg) translateY(7px); }
body.mobile-menu-open #header-mobile #hamburger .ham-bottom { transform: rotate(-45deg) translateY(-7px); }
#header-mobile { transition: background-color 0.5s; background-color: rgba(255,255,255,0); z-index: 9999; overflow: hidden; flex-direction: column; font-size: 18px; top: 0; width: 100%; }
#header-mobile #header-mobile-menu { display: none; transition: opacity 0.5s; text-align: center; padding-top: 20px; }
#header-mobile #header-mobile-menu .menu-item-wrapper { margin-left: -1250px; }
#header-mobile #header-mobile-menu .menu-item { text-transform: uppercase; }
#header-mobile #header-mobile-menu .menu-item.active { font-weight: 800; }
#header-mobile #header-mobile-menu .mobile-submenu { font-size: 15px; display: none; padding-top: 10px; }
#header-mobile #header-mobile-menu .mobile-submenu .sub-link { display: none;  }
#header-mobile #header-mobile-menu .mobile-submenu.slide-up { transition: opacity 1s, max-height 2s cubic-bezier(0, 1, 0, 1);  }
#header-mobile #header-mobile-menu .mobile-submenu.slide-down { max-height: 500px; display: block; }
#header-mobile #header-mobile-menu .mobile-submenu.slide-down .sub-link { display: block; }
body.mobile-menu-open,
html.mobile-menu-open { overflow: hidden; position: relative; }
body.mobile-menu-open #header-mobile { display: flex; height: 100vh; top: 0; left: 0; width: 100vw; overflow-y: scroll;}
body.mobile-menu-open #header-mobile #header-mobile-container {  padding-bottom: 60px; }
body.mobile-menu-open #header-mobile #header-mobile-menu { display: block; }
body.mobile-menu-open #wpadminbar { display: none; }

/* hero */
.hero { position: relative; overflow: hidden;  height: 600px; }
.hero .hero-bg { position: absolute; top: 0; right: 0; bottom: 0; left: 0; } 
.hero .hero-bg:after { content: ""; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.1); }
.hero .hero-copy { color: #fff; z-index: 100; position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; }
.hero .hero-btn-wrapper { margin-top: 26px; z-index: 1000; position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); }

@media(min-width: 992px){
	.hero { height: 100vh; }
	.hero .hero-btn-wrapper { position: absolute; bottom: 50px; left: 50px; transform: none; }
}

/* artworks */
.artworks-row { padding-top: 100px; padding-bottom: 100px; }
.artworks-row h2 { font-weight: 300; }
.artworks-row .description { margin: 30px 0 40px; }
.artworks-row img { margin-bottom: 30px; }
@media(min-width: 992px){
	.artworks-row img { margin-bottom: 0; }
}

.artworks-row .stats .number { font-size: 2.625rem; font-weight: 300; }

.artworks { background: linear-gradient(180deg, #F4F4F4 0%, rgba(244, 244, 244, 0) 100%); }
.artworks h2 { font-weight: 300; text-align: center; margin-bottom: 50px; }
.artwork .lead { margin: 30px 0; }
.artworks a { text-decoration: underline; }

/* artwork single */
.artwork-single .back-button { margin-bottom: 20px; }
.artwork-single .back-button i { margin-right: 7px; }

/* pagination */
.pagination .page-number { margin: 0 5px; }
.pagination .page-number:not(.page-number-curr):not(.page-number-next) { color: #9D9FA2; }
.pagination .page-number.page-number-next { margin-left: 40px; }
.pagination .page-number.page-number-prev { margin-right: 40px; }

/* footer */
footer a, footer a:hover { color: #fff; }
footer .footer-menu-item { font-size: 13px; }   
footer .social-media-menu { font-size: 24px; }

/* parts */

.inquiry-form { max-width: 1108px; max-height: 100vh; overflow-y: auto; }

#empty-room-msg { display: none; }

.video-part { cursor: pointer; padding-top: calc(100% * 512/910); position: relative; }
.video-part .play-btn { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.video-part-titled { height: 100vh; }


/* THIRD PARTY LIBRARIES */


/* fancy box */
.fancybox-button--close { background: white; border-radius: 100%; height: 30px; width: 30px; }
.fancybox-button--close:before { color: #000; font-size: 20px; }
/* .fancybox-slide { overflow: hidden; } */
.fancybox-slide--video { width: 100%; padding: 0; }
.fancybox-button--close { z-index: 9999; position: absolute; right: 0; top: 0; height: 55px; width: 55px; background-color: transparent; } 
.fancybox-button--close:before { display: block; content: "\e911"; font-size: 42px; color: #fff; font-family: 'icomoon' !important; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.fancybox-button--close svg { display: none; }
.admin-bar .fancybox-button--close { top: 46px; }
@media(min-width: 992px) {
    .admin-bar .fancybox-button--close { top: 32px; }
}
/*.fancybox-active { overflow: hidden; height: 100vh; }*/

/* Magic Zoom*/
.MagicZoom .mz-hint { top: 10px; right: 10px; left: auto; padding: 0; }

/* 3rd party btns */
.MagicZoom .mz-hint .mz-hint-message,
.page-template-page-project-category-retail #vrcontainer .vrview-hint .vrview-hint-message  { color: #fff; cursor: pointer; display: inline-block; font-weight: 300; font-family: 'Lato'; text-transform: uppercase; background-color: rgba(0,0,0,0.5); border: 1px solid #fff; padding: .9375rem 1.875rem; font-size: 18px; line-height: 1.6875; border-radius: 0; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
.page-template-page-retail-landing #vrcontainer .vrview-hint .vrview-hint-message  { color: #fff; cursor: pointer; display: inline-block; font-weight: 300; font-family: 'Lato'; text-transform: uppercase; background-color: rgba(0,0,0,0.5); border: 1px solid #fff; padding: .9375rem 1.875rem; font-size: 18px; line-height: 1.6875; border-radius: 0; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }

/* slick slider + aos */
.slick-aos:not(.aos-animate) { transition-duration: 0s !important; transition-delay: 0s !important; }
.slick-aos:not(.aos-animate)[data-aos="fade-up"] { -webkit-transform: translate3d(0,100px,0) !important; transform: translate3d(0,100px,0); }
.slick-aos:not(.aos-animate)[data-aos="fade-right"] { -webkit-transform: translate3d(-100px,0,0) !important; transform: translate3d(-100px,0,0); }
.slick-aos:not(.aos-animate)[data-aos="fade-left"] { -webkit-transform: translate3d(100px,0,0) !important; transform: translate3d(100px,0,0); }

/* slick slider */
.slick-track { display: flex !important; }
.slick-track .slick-slide { height: inherit !important; }

.slick-scale-transition .slick-slide { background-size: 140%; transition: background-size .3s cubic-bezier(.4, 0, .2, 1); }
.slick-scale-transition .slick-center { background-size: 100%; }

.slick-bg-images, .slick-bg-images * { height: 100%; }

.slick-dots { list-style: none; margin: 0; padding: 0; }
.slick-dots li { display: inline-block; background-color: #C7C8CA; height: 5px; width: 24px; cursor: pointer; }
.slick-dots li.slick-active { background-color: #000; }
.slick-dots li button { outline: none; display: none; }
.slick-dots li:not(:last-child) { margin-right: 10px; }
.slick-dots > li:only-child { display: none; }


.slick-next, .slick-prev { font-size: 1.5em; position: relative; cursor: pointer; }
@media(min-width: 768px) {
	.slick-prev .icon, 
	.slick-next .icon { line-height: 27px; top: 4px; position: absolute; transition: all 2s; }
	.slick-prev .icon { left: 0; }
	.slick-next .icon { right: 0; }
	.slick-next:hover .icon { transform: translateX(10px); }
	.slick-prev:hover .icon { transform: translateX(-10px); }
}

/* contact form 7 */
.wpcf7, .wpcf7 label { width: 100%; }
.wpcf7 label { margin-bottom: 10px; }
.wpcf7-form-control:not(.wpcf7-submit) { display: block; width: 100%; height: calc(1.6875em + 1.625rem + 2px); padding: 0.8125rem 0.8125rem; font-size: 1rem; font-weight: 400; line-height: 1.6875; color: #8A8B8C; background-color: #fff; background-clip: padding-box; border: 1px solid #C7C8CA; border-radius: 0; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
.wpcf7-form-control.wpcf7-submit { height: 60px; }
.wpcf7-form-control:focus { color: #8A8B8C; background-color: #fff; border-color: #404040; outline: 0; box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); }
.wpcf7 textarea { height: 100px; }
select.wpcf7-form-control { -webkit-appearance: none; -moz-appearance: none; background: transparent; background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='16px' height='16px' viewBox='0 0 16 16' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3C!-- Generator: Sketch 64 (93537) - https://sketch.com --%3E%3Ctitle%3EIcon / Chevron down%3C/title%3E%3Cdesc%3ECreated with Sketch.%3C/desc%3E%3Cg id='Icon-/-Chevron-down' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cpath d='M0,3.82748709 C0,3.90476237 0.0279996837,3.98203765 0.083332392,4.0442508 L7.50058194,12.279307 C7.62658052,12.4194503 7.80857846,12.5 7.99990963,12.5 C8.1912408,12.5 8.37323875,12.4194503 8.49923732,12.279307 L15.9164869,4.0442508 C16.0378188,3.91065625 16.025819,3.70306079 15.8878205,3.58256375 C15.7498221,3.4620667 15.5391578,3.47516421 15.4164925,3.61072338 L7.99990963,11.8457796 L0.583326744,3.61072338 C0.460661463,3.47516421 0.249997176,3.4620667 0.111998735,3.58256375 C0.0379995707,3.6473964 0,3.73711431 0,3.82748709' id='Fill-1' fill='%23cccccc'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-position-x: 98%; background-position-y: 50%; -webkit-border-radius: 0px; }

/* cards */
a.card { text-decoration: none; }
.card-border-none { border: none; }
.card-transparent { background-color: transparent; border: none; }
.card-transparent .card-body { background-color: transparent; padding-left: 0; padding-right: 0; }
.card-bottom-line { border-bottom: 1px solid #C7C8CA !important; }