/*! Flickity v3.0.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled { position: relative; }
.flickity-enabled:focus { outline: 0; }
.flickity-viewport { height: 100%; overflow: hidden; position: relative; touch-action: pan-y; }
.flickity-slider { height: 100%; left: 0; position: absolute; width: 100%; }
.flickity-rtl .flickity-slider { left: unset; right: 0; }
.flickity-enabled.is-draggable { -webkit-tap-highlight-color: transparent; -webkit-user-select: none; -moz-user-select: none; user-select: none; }
.flickity-enabled.is-draggable .flickity-viewport { cursor: move; cursor: grab; }
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down { cursor: grabbing; }
.flickity-cell { left: 0; position: absolute; }
.flickity-rtl .flickity-cell { left: unset; right: 0; }
.flickity-button { background: hsla(0,0%,100%,.75); border: none; color: #333; position: absolute; }
.flickity-button:hover { background: #fff; cursor: pointer; }
.flickity-button:focus { box-shadow: 0 0 0 5px #19f; outline: 0; }
.flickity-button:active { opacity: .6; }
.flickity-button:disabled { cursor: auto; opacity: .3; pointer-events: none; }
.flickity-button-icon { fill: currentColor; }
.flickity-prev-next-button { border-radius: 50%; height: 44px; top: 50%; transform: translateY(-50%); width: 44px; }
.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }
.flickity-rtl .flickity-prev-next-button.previous { left: auto; right: 10px; }
.flickity-rtl .flickity-prev-next-button.next { left: 10px; right: auto; }
.flickity-prev-next-button .flickity-button-icon { height: 60%; left: 20%; position: absolute; top: 20%; width: 60%; }
.flickity-page-dots { bottom: -25px; display: flex; flex-wrap: wrap; justify-content: center; position: absolute; text-align: center; width: 100%; }
.flickity-rtl .flickity-page-dots { direction: rtl; }
.flickity-page-dot { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: rgba(51,51,51,.25); border: none; border-radius: 50%; cursor: pointer; display: block; height: 10px; margin: 0 8px; overflow: hidden; padding: 0; text-indent: -9999px; width: 10px; }
.flickity-rtl .flickity-page-dot { text-indent: 9999px; }
.flickity-page-dot:focus { box-shadow: 0 0 0 5px #19f; outline: 0; }
.flickity-page-dot.is-selected { background: #333; }
.flickity-enabled.is-fade .flickity-slider > * { pointer-events: none; z-index: 0; }
.flickity-enabled.is-fade .flickity-slider > .is-selected { pointer-events: auto; z-index: 1; }

/* Fonts LightGallery */
@font-face {
    font-display: swap;
    font-display: block;
    font-family: lg;
    font-style: normal;
    font-weight: 400;
    src: url(../../themes/gnb_architects/assets/fonts/lgb687.html?io9a6k) format("woff2"),
         url(../../themes/gnb_architects/assets/fonts/lgb687.ttf?io9a6k) format("truetype"),
         url(../../themes/gnb_architects/assets/fonts/lgb687.woff?io9a6k) format("woff"),
         url(../../themes/gnb_architects/assets/fonts/lgb687.svg?io9a6k#lg) format("svg");
}

/* LightGallery Base */
.lg-icon { speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-family: lg!important; font-style: normal; font-variant: normal; font-weight: 400; line-height: 1; text-transform: none; }
.lg-container { font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, Liberation Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; }
.lg-next, .lg-prev { background-color: rgba(0,0,0,.45); border: none; border-radius: 2px; color: #999; cursor: pointer; display: block; font-size: 22px; margin-top: -10px; outline: 0; padding: 8px 10px 9px; position: absolute; top: 50%; z-index: 1084; }
.lg-next.disabled, .lg-prev.disabled { cursor: default; opacity: 0!important; }
.lg-next:hover:not(.disabled), .lg-prev:hover:not(.disabled) { color: #fff; }
.lg-single-item .lg-next, .lg-single-item .lg-prev { display: none; }
.lg-next { right: 20px; }
.lg-next:before { content: "\e095"; }
.lg-prev { left: 20px; }
.lg-prev:after { content: "\e094"; }

@keyframes lg-right-end {
    0% { left: 0; }
    50% { left: -30px; }
    to { left: 0; }
}
@keyframes lg-left-end {
    0% { left: 0; }
    50% { left: 30px; }
    to { left: 0; }
}

.lg-outer.lg-right-end .lg-object { animation: lg-right-end .3s; position: relative; }
.lg-outer.lg-left-end .lg-object { animation: lg-left-end .3s; position: relative; }
.lg-toolbar { left: 0; position: absolute; top: 0; width: 100%; z-index: 1082; }
.lg-media-overlap .lg-toolbar { background-image: linear-gradient(0deg, transparent, rgba(0,0,0,.4)); }
.lg-toolbar .lg-icon { background: 0 0; border: none; box-shadow: none; color: #999; cursor: pointer; float: right; font-size: 24px; height: 47px; line-height: 27px; outline: medium none; padding: 10px 0; text-align: center; text-decoration: none!important; transition: color .2s linear; width: 50px; will-change: color; }
.lg-toolbar .lg-icon.lg-icon-18 { font-size: 18px; }
.lg-toolbar .lg-icon:hover { color: #fff; }
.lg-toolbar .lg-close:after { content: "\e070"; }
.lg-toolbar .lg-maximize { font-size: 22px; }
.lg-toolbar .lg-maximize:after { content: "\e90a"; }
.lg-toolbar .lg-download:after { content: "\e0f2"; }

.lg-sub-html { color: #eee; font-size: 16px; opacity: 0; padding: 10px 40px; text-align: center; transition: opacity .2s ease-out 0s; z-index: 1080; }
.lg-sub-html h4 { font-size: 13px; font-weight: 700; margin: 0; }
.lg-sub-html p { font-size: 12px; margin: 5px 0 0; }
.lg-sub-html a { color: inherit; }
.lg-sub-html a:hover { text-decoration: underline; }
.lg-media-overlap .lg-sub-html { background-image: linear-gradient(180deg, transparent, rgba(0,0,0,.6)); }
.lg-item .lg-sub-html { bottom: 0; left: 0; position: absolute; right: 0; }
.lg-error-msg { color: #999; font-size: 14px; }
.lg-counter { color: #999; display: inline-block; font-size: 16px; height: 47px; padding-left: 20px; padding-top: 12px; vertical-align: middle; }
.lg-closing .lg-next, .lg-closing .lg-prev, .lg-closing .lg-sub-html, .lg-closing .lg-toolbar { opacity: 0; transition: transform .08 cubic-bezier(0,0,.25,1) 0s, opacity .08 cubic-bezier(0,0,.25,1) 0s, color .08 linear; }

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-video-cont { opacity: 0; transform: scale3d(.5,.5,.5); transition: transform .25s cubic-bezier(0,0,.25,1) 0s, opacity .25s cubic-bezier(0,0,.25,1)!important; will-change: transform,opacity; }
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-video-cont { opacity: 1; transform: scaleX(1); }

.lg-icon:focus-visible { border-radius: 3px; color: #fff; outline: 1px dashed hsla(0,0%,100%,.6); }
.lg-toolbar .lg-icon:focus-visible { border-radius: 8px; outline-offset: -5px; }

/* LightGallery Thumbnails */
.lg-outer .lg-thumb-outer { background-color: #0d0a0a; float: left; max-height: 350px; overflow: hidden; width: 100%; }
.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item { cursor: -o-grab; cursor: -ms-grab; cursor: grab; }
.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item { cursor: move; cursor: -o-grabbing; cursor: -ms-grabbing; cursor: grabbing; }
.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb, .lg-outer .lg-thumb-outer.lg-rebuilding-thumbnails .lg-thumb { transition-duration: 0s!important; }
.lg-outer .lg-thumb-outer.lg-thumb-align-middle { text-align: center; }
.lg-outer .lg-thumb-outer.lg-thumb-align-left { text-align: left; }
.lg-outer .lg-thumb-outer.lg-thumb-align-right { text-align: right; }
.lg-outer.lg-single-item .lg-thumb-outer { display: none; }
.lg-outer .lg-thumb { display: inline-block; height: 100%; margin-bottom: -5px; padding: 5px 0; vertical-align: middle; }
@media (min-width:768px) { .lg-outer .lg-thumb { padding: 10px 0; } }
.lg-outer .lg-thumb-item { border-radius: 2px; cursor: pointer; float: left; height: 100%; margin-bottom: 5px; overflow: hidden; will-change: border-color; }
@media (min-width:768px) { .lg-outer .lg-thumb-item { border: 2px solid #fff; border-radius: 4px; transition: border-color .25s ease; } }
.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover { border-color: #a90707; }
.lg-outer .lg-thumb-item img { display: block; height: 100%; -o-object-fit: cover; object-fit: cover; width: 100%; }
.lg-outer.lg-can-toggle .lg-item { padding-bottom: 0; }
.lg-outer .lg-toggle-thumb:after { content: "\e1ff"; }
.lg-outer.lg-animate-thumb .lg-thumb { transition-timing-function: cubic-bezier(.215,.61,.355,1); }

/* LightGallery Video */
.lg-outer .lg-video-cont { display: inline-block; position: relative; text-align: center; vertical-align: middle; }
.lg-outer .lg-video-cont .lg-object { height: 100%!important; width: 100%!important; }
.lg-outer .lg-has-iframe .lg-video-cont { -webkit-overflow-scrolling: touch; overflow: auto; }
.lg-outer .lg-video-object { bottom: 0; height: 100%; left: 0; position: absolute; right: 0; top: 0; width: 100%; z-index: 3; }
.lg-outer .lg-video-poster { z-index: 1; }
.lg-outer .lg-has-video .lg-video-object { opacity: 0; transition: opacity .3s ease-in; will-change: opacity; }
.lg-outer .lg-has-video.lg-video-loaded .lg-video-play-button, .lg-outer .lg-has-video.lg-video-loaded .lg-video-poster { opacity: 0!important; }
.lg-outer .lg-has-video.lg-video-loaded .lg-video-object { opacity: 1; }

@keyframes lg-play-stroke {
    0% { stroke-dasharray: 1,200; stroke-dashoffset: 0; }
    50% { stroke-dasharray: 89,200; stroke-dashoffset: -35px; }
    to { stroke-dasharray: 89,200; stroke-dashoffset: -124px; }
}
@keyframes lg-play-rotate {
    to { transform: rotate(1turn); }
}

.lg-video-play-button { cursor: pointer; left: 50%; max-width: 140px; position: absolute; top: 50%; transform: translate(-50%,-50%) scale(1); transition: transform .25s cubic-bezier(.17,.88,.32,1.28), opacity .1s; width: 18%; will-change: opacity,transform; z-index: 2; }
.lg-video-play-button:hover .lg-video-play-icon, .lg-video-play-button:hover .lg-video-play-icon-bg { opacity: 1; }
.lg-video-play-icon-bg { fill: none; stroke-width: 3%; stroke: #fcfcfc; opacity: .6; transition: opacity .12s ease-in; will-change: opacity; }
.lg-video-play-icon-circle { fill: none; stroke-width: 3%; stroke: rgba(30,30,30,.9); stroke-opacity: 1; stroke-linecap: round; stroke-dasharray: 200; stroke-dashoffset: 200; bottom: 0; left: 0; position: absolute; right: 0; top: 0; }
.lg-video-play-icon { left: 50%; max-width: 120px; opacity: .6; position: absolute; top: 50%; transform: translate3d(-50%,-50%,0); transition: opacity .12s ease-in; width: 25%; will-change: opacity; }
.lg-video-play-icon .lg-video-play-icon-inner { fill: #fcfcfc; }
.lg-video-loading .lg-video-play-icon-circle { animation: lg-play-rotate 2s linear .25s infinite, lg-play-stroke 1.5s ease-in-out .25s infinite; }
.lg-video-loaded .lg-video-play-button { opacity: 0; transform: translate(-50%,-50%) scale(.7); }

/* Progress Bar */
.lg-progress-bar { background-color: #333; height: 5px; left: 0; opacity: 0; position: absolute; top: 0; transition: opacity 80ms ease 0s; width: 100%; will-change: opacity; z-index: 1083; }
.lg-progress-bar .lg-progress { background-color: #a90707; height: 5px; width: 0; }
.lg-progress-bar.lg-start .lg-progress { width: 100%; }
.lg-show-autoplay .lg-progress-bar { opacity: 1; }
.lg-autoplay-button:after { content: "\e01d"; }
.lg-show-autoplay .lg-autoplay-button:after { content: "\e01a"; }
.lg-single-item .lg-autoplay-button { opacity: .75; pointer-events: none; }

/* LightGallery Zoom & Transforms */
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image,
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap { transition-duration: 0s!important; }
.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap { transition: transform .5s cubic-bezier(.12,.415,.01,1.19) 0s; will-change: transform; }
.lg-outer.lg-use-transition-for-zoom.lg-zoom-drag-transition .lg-item.lg-complete.lg-zoomable .lg-img-wrap { transition: transform .8s cubic-bezier(0,0,.25,1) 0s; will-change: transform; }
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap { backface-visibility: hidden; transform: translateZ(0); }
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image { backface-visibility: hidden; transform: scaleX(1); transition: transform .5s cubic-bezier(.12,.415,.01,1.19) 0s, opacity .15s!important; }
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.no-transition,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.no-transition { transition: none!important; }
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition { left: 50%!important; max-height: none!important; max-width: none!important; top: 50%!important; transform: scaleX(1) translate3d(-50%,-50%,0)!important; }
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition-x,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition-x { left: 50%!important; max-height: none!important; max-width: none!important; top: 0!important; transform: scaleX(1) translate3d(-50%,0,0)!important; }
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img.reset-transition-y,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image.reset-transition-y { left: 0!important; max-height: none!important; max-width: none!important; top: 50%!important; transform: scaleX(1) translate3d(0,-50%,0)!important; }

/* LightGallery Icons & Extras */
.lg-icon.lg-zoom-in:after { content: "\e311"; }
.lg-actual-size .lg-icon.lg-zoom-in { opacity: .5; pointer-events: none; }
.lg-icon.lg-actual-size { font-size: 20px; }
.lg-icon.lg-actual-size:after { content: "\e033"; }
.lg-icon.lg-zoom-out { opacity: .5; pointer-events: none; }
.lg-icon.lg-zoom-out:after { content: "\e312"; }
.lg-zoomed .lg-icon.lg-zoom-out { opacity: 1; pointer-events: auto; }
.lg-outer.lg-first-slide-loading .lg-actual-size,
.lg-outer.lg-first-slide-loading .lg-zoom-in,
.lg-outer.lg-first-slide-loading .lg-zoom-out,
.lg-outer[data-lg-slide-type=iframe] .lg-actual-size,
.lg-outer[data-lg-slide-type=iframe] .lg-zoom-in,
.lg-outer[data-lg-slide-type=iframe] .lg-zoom-out,
.lg-outer[data-lg-slide-type=video] .lg-actual-size,
.lg-outer[data-lg-slide-type=video] .lg-zoom-in,
.lg-outer[data-lg-slide-type=video] .lg-zoom-out { opacity: .75; pointer-events: none; }

/* LightGallery Core Layout */
.lg-outer { height: 100%; left: 0; opacity: .001; outline: 0; overflow: hidden; position: fixed; text-align: left; top: 0; transition: opacity .15s ease 0s; width: 100%; will-change: auto; z-index: 1050; }
.lg-outer * { box-sizing: border-box; }
.lg-outer.lg-visible, .lg-outer.lg-zoom-from-image { opacity: 1; }
.lg-outer .lg-content { bottom: 0; left: 0; position: absolute; right: 0; top: 0; }
.lg-outer .lg-inner { bottom: 0; left: 0; position: absolute; top: 0; transition: opacity 0s; white-space: nowrap; width: 100%; }
.lg-outer .lg-item { display: none!important; }
.lg-outer .lg-item:not(.lg-start-end-progress) { background: url(../../themes/gnb_architects/assets/images/loading.gif) no-repeat scroll 50% transparent; }
.lg-outer.lg-css .lg-current, .lg-outer.lg-css3 .lg-current, .lg-outer.lg-css3 .lg-next-slide, .lg-outer.lg-css3 .lg-prev-slide { display: inline-block!important; }
.lg-outer .lg-img-wrap, .lg-outer .lg-item { display: inline-block; height: 100%; position: absolute; text-align: center; width: 100%; }
.lg-outer .lg-img-wrap:before, .lg-outer .lg-item:before { content: ""; display: inline-block; height: 100%; vertical-align: middle; }
.lg-outer .lg-img-wrap { bottom: 0; font-size: 0; left: 0; position: absolute; right: 0; top: 0; white-space: nowrap; }
.lg-outer .lg-item.lg-complete { background-image: none; }
.lg-outer .lg-item.lg-current { z-index: 1060; }
.lg-outer .lg-object { display: inline-block; height: auto; max-height: 100%; max-width: 100%; position: relative; vertical-align: middle; width: auto; }
.lg-backdrop { background-color: #000; bottom: 0; left: 0; opacity: 0; position: fixed; right: 0; top: 0; transition: opacity 333ms ease-in 0s; will-change: auto; z-index: 1040; }
.lg-backdrop.in { opacity: 1; }

/* =========================================================================================
   UTILITY CLASSES (Margins & Paddings)
   ========================================================================================= */
.p-xs-5{padding:5px} .p-xs-10{padding:10px} .p-xs-15{padding:15px} .p-xs-20{padding:20px} .p-xs-30{padding:30px} .p-xs-40{padding:40px} .p-xs-50{padding:50px} .p-xs-60{padding:60px} .p-xs-70{padding:70px} .p-xs-80{padding:80px} .p-xs-90{padding:90px} .p-xs-100{padding:100px} .p-xs-120{padding:120px} .p-xs-140{padding:140px} .p-xs-150{padding:150px} .p-xs-160{padding:160px} .p-xs-170{padding:170px}
.pt-xs-5{padding-top:5px} .pt-xs-10{padding-top:10px} .pt-xs-15{padding-top:15px} .pt-xs-20{padding-top:20px} .pt-xs-30{padding-top:30px} .pt-xs-40{padding-top:40px} .pt-xs-50{padding-top:50px} .pt-xs-60{padding-top:60px} .pt-xs-70{padding-top:70px} .pt-xs-80{padding-top:80px} .pt-xs-90{padding-top:90px} .pt-xs-100{padding-top:100px} .pt-xs-120{padding-top:120px} .pt-xs-140{padding-top:140px} .pt-xs-150{padding-top:150px} .pt-xs-160{padding-top:160px} .pt-xs-170{padding-top:170px}
.pr-xs-5{padding-right:5px} .pr-xs-10{padding-right:10px} .pr-xs-15{padding-right:15px} .pr-xs-20{padding-right:20px} .pr-xs-30{padding-right:30px} .pr-xs-40{padding-right:40px} .pr-xs-50{padding-right:50px} .pr-xs-60{padding-right:60px} .pr-xs-70{padding-right:70px} .pr-xs-80{padding-right:80px} .pr-xs-90{padding-right:90px} .pr-xs-100{padding-right:100px} .pr-xs-120{padding-right:120px} .pr-xs-140{padding-right:140px} .pr-xs-150{padding-right:150px} .pr-xs-160{padding-right:160px} .pr-xs-170{padding-right:170px}
.pb-xs-5{padding-bottom:5px} .pb-xs-10{padding-bottom:10px} .pb-xs-15{padding-bottom:15px} .pb-xs-20{padding-bottom:20px} .pb-xs-30{padding-bottom:30px} .pb-xs-40{padding-bottom:40px} .pb-xs-50{padding-bottom:50px} .pb-xs-60{padding-bottom:60px} .pb-xs-70{padding-bottom:70px} .pb-xs-80{padding-bottom:80px} .pb-xs-90{padding-bottom:90px} .pb-xs-100{padding-bottom:100px} .pb-xs-120{padding-bottom:120px} .pb-xs-140{padding-bottom:140px} .pb-xs-150{padding-bottom:150px} .pb-xs-160{padding-bottom:160px} .pb-xs-170{padding-bottom:170px}
.pl-xs-5{padding-left:5px} .pl-xs-10{padding-left:10px} .pl-xs-15{padding-left:15px} .pl-xs-20{padding-left:20px} .pl-xs-30{padding-left:30px} .pl-xs-40{padding-left:40px} .pl-xs-50{padding-left:50px} .pl-xs-60{padding-left:60px} .pl-xs-70{padding-left:70px} .pl-xs-80{padding-left:80px} .pl-xs-90{padding-left:90px} .pl-xs-100{padding-left:100px} .pl-xs-120{padding-left:120px} .pl-xs-140{padding-left:140px} .pl-xs-150{padding-left:150px} .pl-xs-160{padding-left:160px} .pl-xs-170{padding-left:170px}
.m-xs-5{margin:5px} .m-xs-10{margin:10px} .m-xs-15{margin:15px} .m-xs-20{margin:20px} .m-xs-30{margin:30px} .m-xs-40{margin:40px} .m-xs-50{margin:50px} .m-xs-60{margin:60px} .m-xs-70{margin:70px} .m-xs-80{margin:80px} .m-xs-90{margin:90px} .m-xs-100{margin:100px} .m-xs-120{margin:120px} .m-xs-140{margin:140px} .m-xs-150{margin:150px} .m-xs-160{margin:160px} .m-xs-170{margin:170px}
.mt-xs-5{margin-top:5px} .mt-xs-10{margin-top:10px} .mt-xs-15{margin-top:15px} .mt-xs-20{margin-top:20px} .mt-xs-30{margin-top:30px} .mt-xs-40{margin-top:40px} .mt-xs-50{margin-top:50px} .mt-xs-60{margin-top:60px} .mt-xs-70{margin-top:70px} .mt-xs-80{margin-top:80px} .mt-xs-90{margin-top:90px} .mt-xs-100{margin-top:100px} .mt-xs-120{margin-top:120px} .mt-xs-140{margin-top:140px} .mt-xs-150{margin-top:150px} .mt-xs-160{margin-top:160px} .mt-xs-170{margin-top:170px}
.mr-xs-5{margin-right:5px} .mr-xs-10{margin-right:10px} .mr-xs-15{margin-right:15px} .mr-xs-20{margin-right:20px} .mr-xs-30{margin-right:30px} .mr-xs-40{margin-right:40px} .mr-xs-50{margin-right:50px} .mr-xs-60{margin-right:60px} .mr-xs-70{margin-right:70px} .mr-xs-80{margin-right:80px} .mr-xs-90{margin-right:90px} .mr-xs-100{margin-right:100px} .mr-xs-120{margin-right:120px} .mr-xs-140{margin-right:140px} .mr-xs-150{margin-right:150px} .mr-xs-160{margin-right:160px} .mr-xs-170{margin-right:170px}
.mb-xs-5{margin-bottom:5px} .mb-xs-10{margin-bottom:10px} .mb-xs-15{margin-bottom:15px} .mb-xs-20{margin-bottom:20px} .mb-xs-30{margin-bottom:30px} .mb-xs-40{margin-bottom:40px} .mb-xs-50{margin-bottom:50px} .mb-xs-60{margin-bottom:60px} .mb-xs-70{margin-bottom:70px} .mb-xs-80{margin-bottom:80px} .mb-xs-90{margin-bottom:90px} .mb-xs-100{margin-bottom:100px} .mb-xs-120{margin-bottom:120px} .mb-xs-140{margin-bottom:140px} .mb-xs-150{margin-bottom:150px} .mb-xs-160{margin-bottom:160px} .mb-xs-170{margin-bottom:170px}
.ml-xs-5{margin-left:5px} .ml-xs-10{margin-left:10px} .ml-xs-15{margin-left:15px} .ml-xs-20{margin-left:20px} .ml-xs-30{margin-left:30px} .ml-xs-40{margin-left:40px} .ml-xs-50{margin-left:50px} .ml-xs-60{margin-left:60px} .ml-xs-70{margin-left:70px} .ml-xs-80{margin-left:80px} .ml-xs-90{margin-left:90px} .ml-xs-100{margin-left:100px} .ml-xs-120{margin-left:120px} .ml-xs-140{margin-left:140px} .ml-xs-150{margin-left:150px} .ml-xs-160{margin-left:160px} .ml-xs-170{margin-left:170px}

/* Clases de Ocultamiento */
.hide-xs { display: none!important; }
.show-xs { display: block!important; }

@media screen and (min-width:567px){ .hide-sm{display:none!important} .show-sm{display:block!important} }
@media screen and (min-width:768px){ .hide-md{display:none!important} .show-md{display:block!important} }
@media screen and (min-width:992px){ .hide-lg{display:none!important} .show-lg{display:block!important} }
@media screen and (min-width:1400px){ .hide-xl{display:none!important} .show-xl{display:block!important} }
@media screen and (min-width:1600px){ .hide-xxl{display:none!important} .show-xxl{display:block!important} }

/* =========================================================================================
   BASE STYLES & RESETS
   ========================================================================================= */
abbr, address, article, aside, audio, b, blockquote, body, body div, caption, cite, code, dd, del, details, dfn, dl, dt, em, fieldset, figure, footer, form, h1, h2, h3, h4, h5, h6, header, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, var, video {
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}
article, aside, details, figure, footer, header, nav, section, summary { display: block; }
html { box-sizing: border-box; }
*, :after, :before { box-sizing: inherit; }
embed, img, object { max-width: 100%; }
blockquote, q { quotes: none; }
blockquote:after, blockquote:before, q:after, q:before { content: ""; content: none; }
a { background: transparent; color: inherit; font-size: 100%; margin: 0; padding: 0; text-decoration: none; vertical-align: baseline; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted #000; cursor: help; }
table { border-collapse: separate; border-spacing: 0; font-size: inherit; font: 100%; }
th { font-weight: 700; vertical-align: bottom; }
td { font-weight: 400; vertical-align: top; }
td, td img { vertical-align: top; }
hr { border: 0; border-top: 1px solid #ccc; display: block; height: 1px; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }
pre { word-wrap: break-word; white-space: pre; white-space: pre-wrap; white-space: pre-line; }
.ie7 input[type=checkbox] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }
input, select, textarea { font: 99% sans-serif; margin: 0; }
small { font-size: 85%; }
strong { font-weight: 700; }
sub, sup { font-size: 75%; line-height: 0; position: relative; }
sup { top: -.5em; }
sub { bottom: -.25em; }
code, kbd, pre, samp { font-family: monospace, sans-serif; }
.clickable, button, input[type=button], input[type=file], input[type=submit], label { cursor: pointer; }
button, input[type=button] { overflow: visible; width: auto; margin: 0; }
.ie7 img { -ms-interpolation-mode: bicubic; }
.clearfix:after { clear: both; content: " "; display: block; }

/* =========================================================================================
   CUSTOM FONTS
   ========================================================================================= */
@font-face {
    font-display: swap;
    font-family: TT Norms Pro;
    font-style: normal;
    font-weight: 700;
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Bold.eot);
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Boldd41d.eot?#iefix) format("embedded-opentype"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Bold.woff2) format("woff2"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Bold.woff) format("woff"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Bold.ttf) format("truetype"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Bold.svg#TTNormsPro-Bold) format("svg");
}
@font-face {
    font-display: swap;
    font-family: TT Norms Pro;
    font-style: normal;
    font-weight: 300;
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Light.eot);
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Lightd41d.eot?#iefix) format("embedded-opentype"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Light.woff2) format("woff2"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Light.woff) format("woff"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Light.ttf) format("truetype"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Light.svg#TTNormsPro-Light) format("svg");
}
@font-face {
    font-display: swap;
    font-family: TT Norms Pro;
    font-style: normal;
    font-weight: 500;
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Medium.eot);
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Mediumd41d.eot?#iefix) format("embedded-opentype"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Medium.woff2) format("woff2"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Medium.woff) format("woff"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Medium.ttf) format("truetype"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Medium.svg#TTNormsPro-Medium) format("svg");
}
@font-face {
    font-display: swap;
    font-family: TT Norms Pro;
    font-style: normal;
    font-weight: 400;
    src: url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Regular.html) format("woff2"),
         url(../../themes/gnb_architects/assets/fonts/TTNormsPro-Regular-2.html) format("woff");
}

/* =========================================================================================
   GENERAL COMPONENTS
   ========================================================================================= */
html {
    font-family: TT Norms Pro, sans-serif;
    font-size: 25px;
    font-weight: 400;
}
body, html {
    -webkit-font-smoothing: antialiased;
}
body {
    background: #f0f0f0;
    font-size: 22px;
    margin: 0;
    transition: background .2s ease;
}
body.home_animation, body.preventscroll {
    overflow: hidden;
}
body.dark {
    background: #272727;
    color: #fff;
}

.iframe-container { overflow: hidden; padding-top: 56.25%; position: relative; }
.iframe-container iframe { border: 0; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.mailchimp_form { position: relative; }
.mailchimp_form__msg { display: none; font-size: .56em; font-weight: 600; position: absolute; top: calc(100% + 5px); }
.error .mailchimp_form__msg { color: #000; }
.success .mailchimp_form__msg { color: #598d00; }

.toast { background: #000; bottom: 10px; color: #fff; font-size: .72em; padding: 15px 20px; position: fixed; right: 10px; transform: translateX(110%); transition: transform .6s cubic-bezier(.51,-.62,.43,1.39); z-index: 999; }
.toast.show { transform: translateX(0); }

.lazy-cont-color { display: inline-block; position: relative; }
.lazy-cont-color:after { background-color: var(--color); content: ""; height: 100%; left: 0; position: absolute; top: 0; transition: opacity .4s ease-in-out; width: 100%; }
.lazy-cont-color.loaded:after { opacity: 0; }
.lazy.blur { filter: blur(20px); transition: filter .5s ease-in-out; }
.lazy.blur.loaded { filter: blur(0); }

.loader { background: #fff; height: 100%; position: fixed; width: 100%; z-index: 999; }
.page-title { font-size: 2.6em; font-weight: 500; transition: opacity .4s ease-in-out .6s; }

@media (max-width:992px) { .page-title { font-size: 2em; } }
@media (max-width:576px) { .page-title { font-size: 1.4em; } }

/* =========================================================================================
   WYSIWYG CONTENT
   ========================================================================================= */
.wysiwyg p { font-size: 20px; font-weight: 500; line-height: 1.3em; }
@media screen and (min-width:320px) { .wysiwyg p { font-size: calc(18.75px + .39063vw); } }
@media screen and (min-width:1600px) { .wysiwyg p { font-size: 25px; } }

.wysiwyg h3 { font-size: 25px; font-weight: 500; line-height: 1.1em; margin-bottom: 30px; }
@media screen and (min-width:320px) { .wysiwyg h3 { font-size: calc(22.5px + .78125vw); } }
@media screen and (min-width:1600px) { .wysiwyg h3 { font-size: 35px; } }

.wysiwyg ul { -moz-column-count: 2; column-count: 2; -moz-column-gap: 20px; column-gap: 20px; font-size: 20px; font-weight: 400; line-height: 1.3em; margin-left: 0; margin-top: 30px; padding-left: 20px; }
@media screen and (min-width:320px) { .wysiwyg ul { font-size: 20px; } }
@media screen and (min-width:1600px) { .wysiwyg ul { font-size: 20px; } }
.wysiwyg ul li { -moz-column-break-inside: avoid; break-inside: avoid; margin-bottom: 10px; max-width: 250px; }

/* =========================================================================================
   MODALS & SLIDERS (SLICK)
   ========================================================================================= */
.video_modal { overflow-x: auto; -ms-overflow-style: none; background: #f0f0f0; display: none; height: 100%; position: fixed; scrollbar-width: none; top: 0; width: 100%; z-index: 1001; }
.video_modal::-webkit-scrollbar { display: none; }
.video_modal__inner { display: flex; height: 100%; padding: 20px 20px 100px; position: relative; width: 100%; }
.video_modal__content { margin: 100px auto; max-width: 1000px; padding-bottom: 50px; width: 100%; }
.video_modal__content video { height: auto; width: 100%; }
.video_modal__close { position: absolute; right: 30px; top: 30px; }
@media (max-width:576px) { .video_modal__close { right: 20px; top: 20px; } }

.slick-slider { -webkit-touch-callout: none; -webkit-tap-highlight-color: transparent; box-sizing: border-box; touch-action: pan-y; -webkit-user-select: none; -moz-user-select: none; user-select: none; }
.slick-list, .slick-slider { display: block; position: relative; }
.slick-list { margin: 0; overflow: hidden; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-list, .slick-slider .slick-track { transform: translateZ(0); }
.slick-track { display: block; left: 0; margin-left: auto; margin-right: auto; position: relative; top: 0; }
.slick-track:after, .slick-track:before { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }
[dir=rtl] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { border: 1px solid transparent; display: block; height: auto; }
.slick-arrow.slick-hidden { display: none; }
.slick-loading .slick-list { background: #fff url(../../themes/gnb_architects/assets/css/ajax-loader.html) 50% no-repeat; }

/* Slick Arrows & Dots */
.slick-next, .slick-prev { border: none; cursor: pointer; display: block; font-size: 0; height: 20px; line-height: 0px; padding: 0; position: absolute; top: 50%; transform: translateY(-50%); width: 20px; }
.slick-next, .slick-next:focus, .slick-next:hover, .slick-prev, .slick-prev:focus, .slick-prev:hover { background: transparent; color: transparent; outline: none; }
.slick-next:focus:before, .slick-next:hover:before, .slick-prev:focus:before, .slick-prev:hover:before { opacity: 1; }
.slick-next.slick-disabled:before, .slick-prev.slick-disabled:before { opacity: .25; }
.slick-next:before, .slick-prev:before { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #fff; font-family: slick; font-size: 20px; line-height: 1; opacity: .75; }
.slick-prev { left: -25px; }
[dir=rtl] .slick-prev { left: auto; right: -25px; }
.slick-prev:before { content: "←"; }
[dir=rtl] .slick-prev:before { content: "→"; }
.slick-next { right: -25px; }
[dir=rtl] .slick-next { left: -25px; right: auto; }
.slick-next:before { content: "→"; }
[dir=rtl] .slick-next:before { content: "←"; }
.slick-dotted.slick-slider { margin-bottom: 30px; }
.slick-dots { bottom: -25px; display: block; list-style: none; margin: 0; padding: 0; position: absolute; text-align: center; width: 100%; }
.slick-dots li { display: inline-block; margin: 0 5px; padding: 0; position: relative; }
.slick-dots li, .slick-dots li button { cursor: pointer; height: 20px; width: 20px; }
.slick-dots li button { background: transparent; border: 0; color: transparent; display: block; font-size: 0; line-height: 0px; outline: none; padding: 5px; }
.slick-dots li button:focus, .slick-dots li button:hover { outline: none; }
.slick-dots li button:focus:before, .slick-dots li button:hover:before { opacity: 1; }
.slick-dots li button:before { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #000; content: "•"; font-family: slick; font-size: 6px; height: 20px; left: 0; line-height: 20px; opacity: .25; position: absolute; text-align: center; top: 0; width: 20px; }
.slick-dots li.slick-active button:before { color: #000; opacity: .75; }

/* =========================================================================================
   SITE STRUCTURE: HEADER & NAVIGATION
   ========================================================================================= */
.header { height: 100vh; left: 0; padding: 0 40px; position: fixed; top: 0; width: 280px; z-index: 1000; }
@media (max-width:768px) { .header { background: #f0f0f0; height: unset; padding: 0; transition: background .4s ease; width: 100%; } .header.white { background: none; } }
.header__inner { height: 100%; position: relative; }
@media (max-width:768px) { .header__inner { align-items: center; display: flex; justify-content: space-between; padding: 10px 15px; } }
.header__logo { display: block; padding-top: 40px; position: relative; z-index: 101; }
@media (max-width:768px) { .header__logo { padding-top: 0; } }
.header__logo img { display: block; transition: filter .4s ease; width: 100%; }
.white .header__logo img { filter: invert(1); }
@media (max-width:768px) { .menu_open .white .header__logo img { filter: none; } .header__logo img { width: 150px; } }

.header__togglemobile { display: block; height: 28px; margin-bottom: 1px; position: relative; width: 22px; z-index: 101; }
.header__togglemobile span { background: #000; height: 4px; position: absolute; transition: background .4s ease; width: 22px; }
.white .header__togglemobile span { background: #fff; }
.menu_open .header__togglemobile span { background: #000; }
.header__togglemobile span:first-child { top: 0; transition: top .2s ease .2s, transform .2s ease 0s; }
.header__togglemobile span:nth-child(2) { top: 13px; transition: opacity .2s ease .2s; }
.header__togglemobile span:nth-child(3) { top: 26px; transition: top .2s ease .2s, transform .2s ease 0s; }
.header__togglemobile.show span:first-child { top: 13px; transform: rotate(-45deg); transition: top .2s ease, transform .2s ease .2s; }
.header__togglemobile.show span:nth-child(2) { opacity: 0; transition: opacity .2s ease; }
.header__togglemobile.show span:nth-child(3) { top: 13px; transform: rotate(45deg); transition: top .2s ease, transform .2s ease .2s; }
.header__togglemobile img { display: block; }
@media (min-width:769px) { .header__togglemobile { display: none; } }

.header__menu { color: #000; height: 100%; left: 0; position: absolute; top: 0; transform: translateX(calc(-100% - 40px)); transition: transform .8s ease-in-out; width: 100%; will-change: transform; }
@media (max-width:768px) { .header__menu { background: #f0f0f0; height: 100%; padding-top: 80px; position: fixed; top: 0; transform: translateY(0) translateX(calc(-100% - 40px)); } }
.white .header__menu { color: #fff; }
@media (max-width:768px) { .white .header__menu { color: #000; } }
.header__menu.show { transform: translateX(0); }
@media (max-width:768px) { .header__menu.show { transform: translateX(0); } }
.header__menu.show .header__menu__toggle { transform: translateY(-50%) rotate(90deg); }

.header__menu nav { position: relative; text-align: right; top: 50%; transform: translateY(-50%); }
@media (max-width:768px) { .header__menu nav { padding: 0 15px; position: relative; top: 50%; transform: translateY(calc(-50% - 80px)); } }
.header__menu nav ul { list-style: none; margin: 0; padding: 0; }
.header__menu nav ul li { display: flex; padding: 10px 0; }
.header__menu nav ul li span { flex: 1 1 100%; position: relative; }
.header__menu nav ul li span:before { background: #000; content: ""; height: 3px; left: 0; position: absolute; top: 60%; transform: translateY(-50%); width: 100%; }
.white .header__menu nav ul li span:before { background: #fff; }
@media (max-width:768px) { .white .header__menu nav ul li span:before { background: #000; } }
.header__menu nav ul li a { color: inherit; flex: 1; font-size: 1em; font-weight: 500; letter-spacing: -1px; padding-left: 10px; position: relative; text-decoration: none; white-space: nowrap; width: 100%; }
.header__menu nav ul li a:after { background: #000; content: ""; height: 3px; left: 0; position: absolute; top: 60%; transform: translateY(-50%); transition: width .3s ease; width: 0; }
.white .header__menu nav ul li a:after { background: #fff; }
@media (max-width:768px) { .white .header__menu nav ul li a:after { background: #000; } }
.current-menu-item .header__menu nav ul li a:after, .header__menu nav ul li a.nuxt-link-active:after, .header__menu nav ul li a:hover:after, .header__menu nav ul li.current-menu-item a:after { width: 100%; }

.header__menu__toggle { position: absolute; right: -70px; top: 50%; transform: translateY(-50%); transition: transform .8s ease, filter .2s ease; will-change: transform; }
.white .header__menu__toggle { filter: invert(1); }
@media (max-width:768px) { .header__menu__toggle { display: none; } }

.header__menu__lang { bottom: 40px; color: inherit; font-size: 1.4em; font-weight: 500; left: 5px; position: absolute; text-decoration: none; transition: color .2s ease, transform .8s ease-in-out; width: 35px; }
.projectspage .header__menu__lang { display: none; }
@media (max-width:768px) { .header__menu__lang { display: none!important; } }
.menu_open .header__menu__lang { transform: translateX(160px); }
.white .header__menu__lang { color: #fff; }

.header__footer { bottom: 40px; position: absolute; width: 100%; }
@media (max-width:768px) { .header__footer { bottom: 100px; } }
.header__footer__inner { align-items: center; display: flex; list-style: none; margin: 0; padding: 0; width: 100%; }
@media (max-width:768px) { .header__footer__inner { padding: 0 15px; width: 100%; } }
.header__footer__inner li { margin-right: 15px; }
.header__footer__inner li a { color: inherit; font-size: 1.4em; font-weight: 500; text-decoration: none; transition: color .2s ease; }
.white .header__footer__inner li a { color: #fff; }
@media (max-width:768px) { .white .header__footer__inner li a { color: #000; } }
.header__footer__inner li:last-child { margin: -8px 0 0; opacity: 0; }
@media (max-width:768px) { .header__footer__inner li:last-child { opacity: 1!important; } }
.projectspage .header__footer__inner li:last-child { opacity: 1; }
.header__footer__inner li img { display: block; max-height: 24px; max-width: 24px; transition: filter .2s ease; }
.white .header__footer__inner li img { filter: invert(1); }
@media (max-width:768px) { .white .header__footer__inner li img { filter: none; } }
.header__footer__inner li.empty { flex-grow: 1; position: relative; }
.header__footer__inner li.empty:after { background: #000; content: ""; height: 3px; position: absolute; width: 100%; }
.white .header__footer__inner li.empty:after { background: #fff; }
@media (max-width:768px) { .white .header__footer__inner li.empty:after { background: #000; } }

/* =========================================================================================
   PAGES: HOME
   ========================================================================================= */
.home__header { height: 100vh; min-height: 600px; overflow-y: hidden; position: relative; width: 100%; z-index: 100; }
@media (max-width:768px) { .home__header { height: calc(100vh - 65px); min-height: 300px; } }
.home__header__text { opacity: 0; overflow: hidden; position: relative; top: 50%; transform: translateY(-50%); }
@media (max-width:767px) { .home__header__text { top: 40%; } }
.home__header__text__inner { transform: translateX(-450px); width: 1300px; }
@media (max-width:768px) { .home__header__text__inner { width: 1000px; } }
.home__header__text__inner ul { list-style: none; margin: 0; padding: 0; width: 100%; }
.home__header__text__inner ul li { align-items: center; display: flex; position: relative; }
.home__header__text__inner ul li h3 { font-size: 3.2em; font-weight: 500; margin: 0; padding: 0 15px 0 0; }
@media (max-width:768px) { .home__header__text__inner ul li h3 { font-size: 2.4em; } }
@media (max-width:767px) { .home__header__text__inner ul li h3 { font-size: 1.6em; } }
.home__header__text__inner ul li span { background: #000; content: ""; flex: 0 1 100%; height: 6px; position: relative; top: 50%; transform: translateY(calc(-50% + 13px)); }

.home__header__scroll { bottom: 40px; left: 50%; position: absolute; transform: translateX(-50%) translateY(0); transition: transform .8s ease-in-out; z-index: 100; }
.home_animation .home__header__scroll { transform: translateX(-50%) translateY(70px); }
@media (max-width:576px) { .home_animation .home__header__scroll { transform: translateX(-50%) translateY(150px); } .home__header__scroll { bottom: 120px; } }

.home__lines { backface-visibility: hidden; height: 100%; outline: 1px solid transparent; -webkit-perspective: 1000; position: fixed; right: 0; top: 0; transform: translateY(-90%); transition: right .8s ease-in-out; width: 100%; will-change: transform; z-index: -1; }
@media (max-width:375px) { .home__lines { height: 650px; } }
@media (max-width:320px) { .home__lines { height: 750px; left: -100px; } }
.menu-visible .home__lines { right: -100px; }
.home__lines img { max-width: unset; width: 185vw; }
@media (max-width:768px) { .home__lines img { width: 4238px; } }
@media (max-width:400px) { .home__lines img { width: 3238px; } }

.home__slider { background: #f1f1f1; height: 100vh; min-height: 600px; overflow: hidden; position: relative; transition: transform .8s ease-in-out; width: 100%; }
@media (max-width:767px) { .home__slider { height: calc(100vh - 63px); min-height: 0; } }
.home__slider__carousel { height: 100%; opacity: 0; transition: opacity .2s ease; width: 100%; }
.home__slider__carousel.show { opacity: 1; }
.home__slider__carousel .c_next_icon, .home__slider__carousel .c_prev_icon { bottom: 45px; cursor: pointer; left: 50%; position: absolute; transform: translateX(-50%); width: 13px; z-index: 100; }
.home__slider__carousel .c_next_icon { margin-left: 25px; }
.home__slider__carousel .c_prev_icon { margin-left: -25px; }
.home__slider__carousel .flickity-slider { height: 100%; width: 100%; }
.home__slider__carousel .flickity-button { background: none; height: 35px; }
.home__slider__carousel .flickity-button svg path { fill: #fff; }
.home__slider__carousel .flickity-button.flickity-prev-next-button { bottom: 38px; box-shadow: none!important; left: 50%; outline: none!important; top: auto; }
@media (max-width:767px) { .home__slider__carousel .flickity-button.flickity-prev-next-button { bottom: 55px; } }
.home__slider__carousel .flickity-button.previous { transform: translateX(calc(-50% - 25px)); }
.home__slider__carousel .flickity-button.next { transform: translateX(calc(-50% + 25px)); }
.home__slider__carousel__cell { background-position: 50%; background-size: cover; height: 100vh; margin: 0; outline: none; width: 100%; }
.home__slider__carousel__cell:after { background: #000; content: ""; height: 100%; left: 0; opacity: .28; position: absolute; top: 0; transition: opacity .6s ease-in-out; width: 100%; }
.menu_open .home__slider__carousel__cell:after { opacity: .7; }

.home__slider__carouseltext { left: 300px; opacity: 0; outline: none; position: absolute; top: 50%; transform: translateY(calc(-50% - 10px)); transition: transform .8s ease-in-out, opacity .2s ease; width: 100%; z-index: 100; }
.home__slider__carouseltext.show { opacity: 1; }
@media (max-width:992px) { .home__slider__carouseltext { left: 15px; } }
@media (max-width:767px) { .home__slider__carouseltext { transform: translateY(calc(-50% + 10px)); } }
.menu-visible .home__slider__carouseltext { transform: translateY(calc(-50% - 10px)) translateX(100px); }
@media (max-width:767px) { .menu-visible .home__slider__carouseltext { transform: translateY(calc(-50% + 10px)) translateX(100px); } }

.home__slider__carouseltext__cell { outline: none; width: 100%; }
.home__slider__carouseltext__cell a { outline: none; text-decoration: none; }
.home__slider__carouseltext__cell__inner { display: inline-block; }
.home__slider__carouseltext__cell__inner__title { align-items: center; display: flex; margin-bottom: 20px; }
.home__slider__carouseltext__cell__inner__title h2 { color: #fff; font-size: 40px; font-weight: 500; margin: 0; padding: 0; position: relative; transition: padding .4s ease; }
@media screen and (min-width:320px) { .home__slider__carouseltext__cell__inner__title h2 { font-size: calc(37.5px + .78125vw); } }
@media screen and (min-width:1600px) { .home__slider__carouseltext__cell__inner__title h2 { font-size: 50px; } }
@media (max-width:767px) { .home__slider__carouseltext__cell__inner__title h2 { font-size: 1.2em; } }
.home__slider__carouseltext__cell__inner__title span { background: #fff; display: block; height: 3px; margin-left: 20px; margin-top: 13px; transition: width .4s ease; width: 30px; }
@media (max-width:767px) { .home__slider__carouseltext__cell__inner__title span { height: 3px; margin-left: 10px; margin-top: 7px; width: 20px; } }
.home__slider__carouseltext__cell__inner__title:hover > span { width: 0; }
.home__slider__carouseltext__cell__inner__title:hover h3 { padding-left: 30px; }

.home__slider__carouseltext__cell__inner__projects { align-items: center; display: flex; width: 100%; }
.home__slider__carouseltext__cell__inner__projects h3 { color: #fff; font-size: 1.6em; font-size: 20px; font-weight: 500; margin: 0; padding: 0; position: relative; transition: padding .4s ease; white-space: nowrap; }
@media screen and (min-width:320px) { .home__slider__carouseltext__cell__inner__projects h3 { font-size: calc(18.75px + .39063vw); } }
@media screen and (min-width:1600px) { .home__slider__carouseltext__cell__inner__projects h3 { font-size: 25px; } }
.home__slider__carouseltext__cell__inner__projects span { background: #fff; display: block; flex: 0 1 100%; height: 3px; margin-right: 20px; margin-top: 7px; width: 30px; }
@media (max-width:767px) { .home__slider__carouseltext__cell__inner__projects span { height: 3px; margin-right: 10px; margin-top: 5px; width: 20px; } }
.home__slider__carouseltext__cell__inner__projects:hover h4 { padding-right: 30px; }

.home__espa { bottom: 100px; left: 40px; position: absolute; z-index: 10000; }
@media (max-width:576px) { .home__espa { bottom: 25px; left: 15px; max-width: 150px; } }

/* =========================================================================================
   PAGES: PROJECTS
   ========================================================================================= */
.projects { max-width: 2000px; padding: 150px 0; position: relative; }
@media (max-width:768px) { .projects { padding: 15px; } }
.projects .left_spacing__inner { position: relative; }
.projects__title { font-size: 2.6em; font-weight: 500; margin-bottom: 25px; transition: opacity .4s ease-in-out .6s; }
@media (max-width:992px) { .projects__title { font-size: 2em; } }
@media (max-width:576px) { .projects__title { font-size: 1.2em; margin-bottom: 15px; } }
.projects__title.hide { opacity: 0; transition: opacity .4s ease-in-out; }

.projects__toggle { background: #f0f0f0; bottom: 44px; display: flex; justify-content: center; left: 48px; margin-left: -2px; position: fixed; transition: transform .8s ease-in-out; width: 32px; z-index: 1000; }
@media (max-width:768px) { .projects__toggle { bottom: unset; left: unset; right: 70px; top: 17px; } }
.projects__toggle img { display: block; filter: grayscale(1); transition: filter .2s ease; }
@media (max-width:768px) { .projects__toggle img { height: 30px; } }
.grid-view .projects__toggle img.grid_icon, .list-view .projects__toggle img.list_icon { display: none; }
.projects__toggle:hover img { filter: unset; }
@media (min-width:768px) { .menu_open .projects__toggle { transform: translateX(240px); } }

.projects__inner { height: 100%; max-width: 1280px; position: relative; width: 100%; }
.projects__list { height: 100vh; left: 0; margin: 0; overflow-y: auto; padding-right: 30px; position: fixed; top: 0; transform: translateX(-110%); transition: transform 1s ease-in-out, margin-left .8s ease-in-out; width: 100%; }
.projects__list.noanimation { transition: margin-left .8s ease-in-out; }
.menu_open .projects__list { margin-left: 90px; }
.projects__list::-webkit-scrollbar { background: none; height: 10px; width: 10px; }
.projects__list::-webkit-scrollbar-track { border-radius: 10px; }
@media (max-width:768px) { .projects__list { padding-left: 15px; padding-right: 15px; } }
.list-view .projects__list, .projects__list.active { transform: translateX(0); }

.projects__list__inner { margin-left: 280px; margin-top: 150px; max-width: 1280px; position: relative; }
@media (max-width:768px) { .projects__list__inner { margin-left: 0; margin-top: 70px; } }

.projects__grid { grid-column-gap: 20px; grid-row-gap: 20px; display: grid; grid-auto-rows: 1fr; grid-template-columns: repeat(3, 1fr); padding-right: 30px; transform: translateX(100vw); transition: transform 1s ease-in-out; }
.projects__grid.noanimation { transition: none; }
.grid-view .projects__grid, .projects__grid.active { transform: translateX(0); }
@media (max-width:768px) { .projects__grid { grid-column-gap: 15px; grid-row-gap: 15px; padding-right: 0; } }
@media (max-width:576px) { .projects__grid { grid-auto-rows: 1fr; grid-template-columns: 1fr; } }
.projects__grid:after { content: ""; grid-column: 1/1; padding-bottom: 100%; width: 0; }

.projects__grid .cell { box-sizing: border-box; position: relative; }
@media (max-width:768px) { .projects__grid .cell--empty, .projects__grid .cell--hiddenmobile { display: none; } }
.projects__grid .cell a { background-position: 50%; background-repeat: no-repeat; background-size: cover; display: block; height: 100%; position: relative; text-decoration: none; width: 100%; }
.projects__grid .cell a img { height: 100%; left: 0; -o-object-fit: cover; object-fit: cover; pointer-events: none; position: absolute; top: 0; width: 100%; z-index: -1; }
.projects__grid .cell.big_square_2_2 { grid-column: auto/span 2; grid-row: auto/span 2; }
.projects__grid .cell.vertical_1_2 { grid-column: auto/span 1; grid-row: auto/span 2; }
.projects__grid .cell.vertical_1_3 { grid-column: auto/span 1; grid-row: auto/span 3; }
.projects__grid .cell.horizontal_2_1 { grid-column: auto/span 2; grid-row: auto/span 1; }
.projects__grid .cell.horizontal_3_1 { grid-column: auto/span 3; grid-row: auto/span 1; }
@media (max-width:576px) { .projects__grid .cell { grid-column: auto/span 1!important; grid-row: auto/span 1!important; } }

.projects__grid__item:hover .projects__grid__item__inner { opacity: 1; }
.projects__grid__item:hover .projects__grid__item__inner .projects__grid__item__upper p { padding-right: 0; }
.projects__grid__item:hover .projects__grid__item__inner .projects__grid__item__lower { transform: translateX(0); }
.projects__grid__item:hover .projects__grid__item__inner .projects__grid__item__lower span { width: 45px; }

.projects__grid__item__inner { background: rgba(0,0,0,.28); box-sizing: border-box; color: #fff; display: flex; flex-flow: column wrap; font-size: 5px; height: 100%; justify-content: flex-start; opacity: 0; padding: 20px; transition: opacity .6s ease; }
@media screen and (min-width:320px) { .projects__grid__item__inner { font-size: 1.5625vw; } }
@media screen and (min-width:1600px) { .projects__grid__item__inner { font-size: 25px; } }
@media (max-width:768px) { .projects__grid__item__inner { opacity: 1; } }
@media (max-width:576px) { .projects__grid__item__inner { font-size: 15px; opacity: 1; } }

.projects__grid__item__upper h3 { font-size: 1.6em; margin: 0; padding: 0; transition: transform .6s ease; }
.projects__grid__item__upper ul { list-style: none; margin: 10px 0 0; padding: 0 0 0 2px; }
@media (min-width:768px) { 
    .horizontal_2_1 .projects__grid__item__upper ul { max-width: 50%; }
    .horizontal_3_1 .projects__grid__item__upper ul { max-width: calc(33% - 30px); }
    .big_square_2_2 .projects__grid__item__upper ul { max-width: calc(50% - 30px); }
}
.projects__grid__item__upper ul li { align-items: center; display: flex; font-size: 1em; font-weight: 500; }
.projects__grid__item__upper ul li p { font-weight: 500; margin: 0; padding-left: 15px; transition: all .6s ease-in-out; }
@media (max-width:576px) { .projects__grid__item__upper ul li p { padding-right: 0; } }
.projects__grid__item__upper ul li span { background: #fff; display: block; flex: 1; height: 3px; transition: all .6s ease-in-out; }
@media (max-width:576px) { .projects__grid__item__upper ul li span { height: 2px; } }

.projects__grid__item__lower { align-items: center; display: flex; justify-content: flex-end; margin-top: auto; transform: translateX(25px); transition: all .6s ease-in-out; }
@media (max-width:576px) { .projects__grid__item__lower { transform: translateX(0); } }
.projects__grid__item__lower p { font-weight: 500; margin: 0; padding-left: 15px; }
.projects__grid__item__lower span { background: #fff; display: block; height: 3px; margin-top: 4px; transition: all .6s ease-in-out; width: 25px; }
@media (max-width:576px) { .projects__grid__item__lower span { height: 2px; } }

.projects__lines { height: 100%; position: fixed; right: 0; top: 0; transform: translateY(-300%) translateX(20%); transition: right .8s ease-in-out; width: 100%; z-index: -1; }
.projects__lines.hide { right: -100vw; }
.menu-visible .projects__lines { right: -100px; }
.projects__lines img { max-width: unset; width: 185vw; }
@media (max-width:768px) { .projects__lines img { width: 4238px; } }
@media (max-width:400px) { .projects__lines img { width: 3238px; } }

/* =========================================================================================
   PAGES: SINGLE PROJECT DETAILS
   ========================================================================================= */
.project { box-sizing: border-box; padding-right: 40px; padding-top: 40px; position: relative; width: 100%; }
@media (max-width:768px) { .project { padding: 0; } }
.project__carousel { position: relative; }
.project__carousel .showlightbox { bottom: 0; padding: 10px 15px; position: absolute; right: 0; z-index: 100; }
@media (max-width:767px) { .project__carousel .showlightbox { display: none; } }
.project__carousel .showlightbox img { width: 25px; }
.project__carousel .flickity-button { background: none; border: none; border-radius: 0; box-shadow: none; height: 100%; left: 0; outline: none!important; position: absolute; top: 0; transform: none; width: 50%; }
@media (max-width:992px) { .project__carousel .flickity-button { display: none; } }
.project__carousel .flickity-button svg { display: none; }
.project__carousel .flickity-button.previous { cursor: url(../../themes/gnb_architects/assets/images/prev_arrow.png),auto; }
.project__carousel .flickity-button.next { cursor: url(../../themes/gnb_architects/assets/images/next_arrow.png),auto; left: unset; right: 0; }
.project__carousel .flickity-viewport { max-height: calc(100vh - 187px); }
.project__carousel .flickity-viewport:before { content: ""; float: left; height: 0; margin-left: -1px; padding-top: 52.4633207373%; width: 1px; }
.project__carousel .flickity-viewport:after { clear: both; content: ""; display: table; }
.project__carousel__inner { height: 100%; outline: none; position: relative; transition: opacity .4s ease-in-out; width: 100%; }
@media (max-width:992px) { .project__carousel__inner { height: unset; } }
.project__carousel__inner.loaded { opacity: 1; visibility: visible; }
.project__carousel__inner__img { cursor: pointer; display: inline; height: 100%; pointer-events: none; }
@media (max-width:576px) { .project__carousel__inner__img { pointer-events: unset; } }
.project__carousel__inner img { display: inline; display: block; height: 100%; padding-right: 3px; }

.project__carousel__video { cursor: pointer; height: 100%; margin-right: 3px; min-width: 69vw; }
.project__carousel__video img { padding: 0; }
.project__carousel__video:hover .project__carousel__video__cover__icon { transform: translate(-50%,-50%) scale(1.1); }
.project__carousel__video.playing:after { opacity: 0; }
.project__carousel__video__cover, .project__carousel__video__cover:after { height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 1; }
.project__carousel__video__cover:after { background: rgba(0,0,0,.3); content: ""; pointer-events: none; transition: opacity .4s ease; }
.project__carousel__video__cover__img { height: 100%; left: 0; -o-object-fit: cover; object-fit: cover; padding-right: 0; position: absolute; top: 0; width: 100%; }
.project__carousel__video__cover__icon { height: auto; left: 50%; position: absolute; top: 50%; transform: translate(-50%,-50%); transition: transform .2s ease; width: 65px; z-index: 100; }
@media (max-width:992px) { .project__carousel__video__cover__icon { width: 45px; } }
@media (max-width:576px) { .project__carousel__video__cover__icon { width: 35px; } }
.project__carousel__video__iframe { background: #000; height: 100%; position: relative; width: 100%; }
.project__carousel__video__iframe .player { height: 100%!important; width: 100%!important; }
.project__carousel__video__iframe iframe { height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.project__content { max-width: 1280px; }
@media (max-width:768px) { .project__content { padding: 0 15px; } }
.project__content h1 { font-size: 2.6em; font-weight: 500; padding: 35px 0 38px; }
@media (max-width:992px) { .project__content h1 { font-size: 2em; } }
@media (max-width:576px) { .project__content h1 { font-size: 1.2em; padding: 26px 0 30px; } }
.project__content .more { margin-top: -20px; text-align: right; }
@media (min-width:577px) { .project__content .more { display: none; } }
.project__content .more--details { margin-bottom: 60px; margin-top: -30px; }
.project__content .more .less-details, .project__content .more .less-text { display: none; }
.project__content .more a { color: #220af9; display: inline-block; font-size: .64em; position: relative; text-decoration: none; }
.project__content .more a:before { background: #220af9; content: ""; height: 5px; left: -40px; position: absolute; top: 8px; width: 35px; }

.project__content__body { display: flex; flex-direction: row; flex-wrap: wrap; }
@media (max-width:576px) { .project__content__body { display: block; } }
.project__content__body__left { flex: 0 0 300px; }
@media (max-width:992px) { .project__content__body__left { flex: 0 0 200px; } }
@media (max-width:576px) { .project__content__body__left { height: 100px; margin-bottom: 30px; overflow: hidden; width: 100%; } .project__content__body__left.show_more { height: 100%; } }

.project__content__body__main { flex: 1; margin-top: -7px; padding-left: 50px; }
@media (max-width:576px) { .project__content__body__main { margin-top: 0; padding-left: 0; } }
.project__content__body__main p { font-size: .8em; font-weight: 400; line-height: 1.2em; margin-bottom: 35px; }
@media (max-width:576px) { .project__content__body__main p { display: none; font-size: .8em; } .project__content__body__main p:first-child { display: block; } }
.project__content__body__main h3 { font-size: 1em; font-weight: 500; line-height: 1.2em; }
.project__content__body__main.show_more p { display: block!important; }
.project__content__body__main strong { font-weight: 500; }

.project__content__details { list-style: none; margin: 0; padding: 0; }
.project__content__details li { margin-bottom: 25px; }
.project__content__details__line { align-items: center; display: flex; }
.project__content__details__line span { background: #000; display: flex; flex: 1; height: 3px; }
.project__content__details__line h5 { font-size: .4em; font-weight: 700; letter-spacing: .2px; padding-right: 5px; text-transform: uppercase; }
.project__content__details h4 { font-size: .56em; font-weight: 700; margin-top: 5px; text-align: right; text-transform: uppercase; width: 100%; }

.project__content__links { display: flex; justify-content: space-between; margin: 60px 0 45px; width: 100%; }
@media (max-width:767px) { .project__content__links { font-size: 27px; margin: 50px 0 30px; } }
.project__content__links a { align-items: center; color: #220af9; display: flex; text-decoration: none; }
@media (max-width:767px) { .project__content__links a { display: none; } }
.project__content__links a:first-child { color: #000; }
.project__content__links a span { background: #220af9; height: 3px; margin-bottom: -4px; margin-right: 15px; width: 100px; }

/* Related Projects Table */
.related_projects { background: #f0f0f0; margin-bottom: 100px; text-align: left; width: 100%; }
.related_projects .more { margin-top: 40px; }
.related_projects__th { align-items: center; background: #f0f0f0; display: flex; padding: 15px 0 0; position: sticky; }
.related_projects__th.active p { color: #220af9; }
.related_projects__th.active svg path { fill: #220af9; }
.related_projects__th p { color: #000; font-size: .56em; font-weight: 500; letter-spacing: 3px; padding-left: 8px; padding-right: 8px; }
.related_projects__th p svg { margin-left: 5px; }
.related_projects__th span { background: #000; flex: 1; height: 3px; margin-top: 3px; }
@media (max-width:767px) { .related_projects th { display: none; } }
.related_projects th:last-child p { padding-right: 0; }
.related_projects th:first-child p { padding-left: 0; }

.related_projects tr { cursor: pointer; transition: color .4s ease-in-out; vertical-align: middle; }
.related_projects tr:hover { color: #220af9; }
.related_projects tr:hover a { transform: translateX(5px); }
.related_projects tr:first-child { cursor: default; }
.related_projects tr a { color: inherit; display: block; text-decoration: none; transition: transform .4s ease-in-out; }
.related_projects tr td { border-bottom: 3px solid #000; font-size: 1em; font-weight: 300; padding: 20px 15px 25px 0; vertical-align: middle; }
@media (max-width:767px) { .related_projects tr td { border-bottom: 3px solid #000; display: none; padding: 12px 0 14px; } }
.related_projects tr td:first-child { display: block; font-size: 1.6em; font-weight: 500; }
@media (max-width:767px) { .related_projects tr td:first-child { font-size: 1.2em; } }
.related_projects tr td:last-child { padding-right: 0; }

/* =========================================================================================
   PAGES: ABOUT
   ========================================================================================= */
.about-new { max-width: 930px; padding: 150px 45px 150px 0; }
@media (max-width:1400px) { .about-new { padding-right: 22px; } }
@media (max-width:992px) { .about-new { padding-right: 25px; } }
@media (max-width:768px) { .about-new { padding: 50px 15px 15px; } }

.about-new__section { margin-top: 60px; }
@media (min-width:769px) { .about-new__section { margin-top: 90px; } }

.about-new__section__title { align-items: center; display: flex; font-size: 25px; font-weight: 500; line-height: 1.1em; margin-bottom: 20px; }
@media screen and (min-width:320px) { .about-new__section__title { font-size: calc(22.5px + .78125vw); } }
@media screen and (min-width:1600px) { .about-new__section__title { font-size: 35px; } }
@media (min-width:769px) { .about-new__section__title { margin-bottom: 30px; } }
.about-new__section__title:after { background: #000; content: ""; display: block; flex: 1; height: 3px; margin-left: 15px; margin-top: 8px; }

.about__lines { height: 100%; overflow: hidden; position: absolute; right: 0; top: 0; width: 100%; }
.about__lines img { height: 130%; max-width: unset; transform: translateX(200px) translateY(-100px); width: auto; }
@media (max-width:576px) { .about__lines img { transform: translateX(-80px) translateY(-100px); } }
.about__lines2 { background-image: url(../../themes/gnb_architects/assets/images/about_lines2.png); background-position-y: 0; background-repeat: no-repeat; background-size: 140%; bottom: 0; height: 100%; left: 0; position: fixed; transform: translateX(200px); width: 100%; }
@media (max-width:576px) { .about__lines2 { display: none; } }
@media (max-width:768px) { .about__lines2 { background-size: 200%; transform: translateX(0); } }
@media (max-width:576px) { .about__lines2 { background-position-x: 15%!important; background-size: 280%; transform: translateX(0); } }
.about__lines2 img { display: none; height: 100%; max-width: unset; -o-object-fit: contain; object-fit: contain; position: relative; top: 0; width: auto; width: 100%; }

.about__inner { max-width: 1000px; padding-right: 30px; position: relative; }
@media (max-width:768px) { .about__inner { padding: 0 15px; } }
.about__section { display: flex; height: 100vh; min-height: 600px; }
.about__section__center { align-self: center; max-width: 700px; }
.about__section__content { padding: 30px 0; }
.about__section__content strong { display: block; font-size: 1.6em; font-weight: 500; line-height: 1.3em; margin-bottom: 30px; }
@media (max-width:576px) { .about__section__content strong { font-size: 25px; } }
.about__section__content p { font-size: 1em; font-weight: 300; line-height: 1.5em; }
@media (max-width:576px) { .about__section__content p { font-size: .8em; } }
.about__section__tabs { display: block; height: unset; margin: 200px 0 600px; min-height: 0; }
.about__section__tabs .about__section__center { margin: 0!important; width: 100%; }

/* Team Section */
.about__team { height: unset; }
.about__team__inner { align-self: center; width: 100%; }
.about__team__title { align-items: center; display: flex; width: 100%; }
.about__team__title h3 { font-size: 1.6em; }
.about__team__title span { background: #000; display: block; flex: 1; height: 5px; margin-left: 10px; margin-top: 10px; }
.about__team__grid { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; }

.about__team__item { margin-bottom: 80px; position: relative; text-decoration: none; width: calc(33.33333% - 16px); }
@media (max-width:576px) { .about__team__item { width: calc(50% - 9px); } }
.about__team__item__text { color: #000; opacity: 0; position: absolute; text-align: center; top: 50%; transform: translateY(-50%); transition: opacity .2s ease; width: 100%; will-change: opacity; }
@media (max-width:576px) { .about__team__item__text { opacity: 1; position: relative; text-align: left; top: unset; transform: unset; } }
.about__team__item__text h4 { font-size: 40px; font-weight: 500; line-height: 1.1em; margin-bottom: 5px; word-spacing: 1000px; }
@media (max-width:576px) { .about__team__item__text h4 { font-size: 20px; line-height: 1.2em; word-spacing: 0; } }
.about__team__item__text span { display: block; font-size: 1em; font-weight: 400; line-height: 1.1em; }
@media (max-width:576px) { .about__team__item__text span { font-size: 14px; } }
.about__team__item__text p { font-size: 1em; font-weight: 400; }
@media (max-width:576px) { .about__team__item__text p { display: none; } }

.about__team__item__img { text-align: center; transition: opacity .2s ease; width: 100%; will-change: opacity; }
.about__team__item__img img { width: 100%; }
.about__team__item:hover .about__team__item__text { opacity: 1; }
.about__team__item:hover .about__team__item__img { opacity: 0; }
@media (max-width:576px) { .about__team__item:hover .about__team__item__img { opacity: 1; } }
.about__team__item--empty { height: 0; opacity: 0; }

.about__footer__inner { align-self: center; margin-top: 0; }
.about__footer__inner h3 { font-size: 1.6em; font-weight: 500; }
.about__footer__inner__contact { align-items: center; display: flex; width: 100%; }
.about__footer__inner__contact span { background: #220af9; display: block; flex: 1; height: 5px; margin-top: 8px; }
.about__footer__inner__contact a { color: #220af9; font-size: 1.6em; padding-left: 15px; text-decoration: none; }

/* Team Modals */
.modal_backdrop { left: 0; z-index: 1000; }
.modal_backdrop, .team_modal { background: #f0f0f0; height: 100%; position: fixed; top: 0; width: 100%; }
.team_modal { overflow-x: auto; -ms-overflow-style: none; left: 50%; max-width: 630px; padding: 0 40px; scrollbar-width: none; transform: translateX(-50%); z-index: 1001; }
.team_modal::-webkit-scrollbar { display: none; }
@media (max-width:576px) { .team_modal { padding: 0 20px; } }
.team_modal__inner { border-bottom: 4px solid #000; border-top: 4px solid #000; margin: 80px 30px 80px 0; padding: 40px 0; position: relative; }
@media (max-width:576px) { .team_modal__inner { margin-right: 0; margin-top: 40px; padding: 40px 0; } }
.team_modal__close { position: absolute; right: -50px; top: -17px; }
@media (max-width:576px) { .team_modal__close { background: #f0f0f0; display: block; padding-left: 10px; right: -1px; } }

.team_modal__top { display: flex; }
@media (max-width:576px) { .team_modal__top { display: block; } }
.team_modal__top__title { flex: 1; }
@media (max-width:576px) { .team_modal__top__title { margin: 10px 0 25px; } }
.team_modal__top__title h5 { font-size: 1.4em; font-weight: 500; line-height: 1.1em; }
@media (max-width:576px) { .team_modal__top__title h5 { line-height: 1.2em; word-spacing: 1000px; } }
.team_modal__top__title p { font-size: .8em; font-weight: 400; margin-top: 5px; }
@media (max-width:576px) { .team_modal__top__title p { font-size: .76em; } }
.team_modal__top__img { padding-right: 30px; }
.team_modal__top__img img { max-width: 250px; }
@media (max-width:576px) { .team_modal__top__img img { width: 100%; } }

.team_modal__content { margin-top: 20px; }
.team_modal__content p { font-size: .8em; font-weight: 400; line-height: 1.3em; }

/* Tabs Component */
.tabs { max-width: 650px; transition: margin .8s ease-in-out; }
.menu_open .tabs { margin-left: 90px; }
.tabs__header { font-size: 1.6em; font-weight: 500; margin-bottom: 10px; }
@media (max-width:576px) { .tabs__header { font-size: 1.2em; } }
.tabs__header__top { align-items: center; display: flex; }
.tabs__header__top h3 { padding-right: 10px; }
.tabs__header__top span { background: #000; display: block; flex: 1; height: 5px; margin-top: 8px; }
@media (max-width:576px) { .tabs__header__top span { height: 4px; margin-top: 5px; } }
.tabs__header__menu { position: relative; }
.tabs__header__menu span { background: #000; display: block; height: 5px; left: 0; margin-top: 5px; position: absolute; top: 50%; transform: translateY(-50%); transition: width .4s ease; width: 0; }
@media (max-width:576px) { .tabs__header__menu span { height: 4px; margin-top: 2px; } }
.tabs__header__menu ul { display: flex; justify-content: space-between; list-style: none; margin: -10px 0 0 auto; padding: 0; width: 70%; }
@media (max-width:350px) { .tabs__header__menu ul { width: 85%; } }
.tabs__header__menu ul li a { color: inherit; cursor: default; opacity: .3; text-decoration: none; transition: opacity .2s ease; }
.tabs__header__menu ul li a.active { opacity: 1; }
.tabs__content__item p { font-size: 1em; font-weight: 300; line-height: 1.5em; }
@media (max-width:576px) { .tabs__content__item p { font-size: 19px; width: 100%; } }

/* =========================================================================================
   PAGES: CONTACT
   ========================================================================================= */
.contact { align-items: center; display: flex; min-height: 100vh; position: relative; }
@media (max-width:1200px) { .contact { height: 100%; margin: 100px 0 50px; } }
@media (max-width:768px) { .contact { margin: 30px 0 0; } }

.contact__inner { display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 1280px; padding: 80px 35px 80px 0; width: 100%; }
@media (max-width:1200px) { .contact__inner { display: block; } }
@media (max-width:768px) { .contact__inner { padding: 15px 15px 80px; } }

.contact__item { flex: 0 1 calc(50% - 30px); }
.contact__info, .contact__info__group { width: 100%; }
.contact__info__group ul { list-style: none; margin: 0 0 30px; padding: 0; width: 100%; }
.contact__info__group ul:last-child { margin-bottom: 0; }
.contact__info__group ul li { display: flex; font-size: 25px; font-weight: 500; padding: 4px 0; width: 100%; }
@media (max-width:768px) { .contact__info__group ul li { font-size: 25px; } }
.contact__info__group ul li.title { font-size: 35px; }
.contact__info__group ul li.title h1 { font-size: 35px; font-weight: 500; }
@media (max-width:768px) { .contact__info__group ul li.title, .contact__info__group ul li.title h1 { font-size: 30px; } }
.contact__info__group ul li.title span { margin-left: 10px; margin-right: 0; margin-top: 24px; }
.contact__info__group ul li a { color: inherit; text-decoration: none; transition: padding .4s ease; }
.contact__info__group ul li a:hover { padding-right: 20px; }
.contact__info__group ul li span { background: #000; display: block; flex: 1; height: 3px; margin-left: 0; margin-right: 10px; margin-top: 16px; }
.contact__info__group ul li span:nth-child(2) { margin-left: 10px; margin-right: 0; }

.contact__map { margin: 20px 0 10px; }
@media (max-width:1200px) { .contact__map { height: 400px; margin-top: 70px; } }
.contact .map-cont { height: 100%; outline: none; width: 100%; }

.contact__footer { bottom: 0; max-width: 1280px; position: absolute; text-align: center; width: 100%; }
@media (max-width:768px) { .contact__footer { margin: 0 -15px; } }
.contact__footer p { font-size: .56em; font-weight: 500; letter-spacing: 1.3px; padding: 25px 15px; }

/* Cookies & Policy */
.cookie { background: #220af9; bottom: 0; color: #fff; left: 50%; max-width: 1300px; opacity: 0; position: fixed; transform: translateX(-50%) translateY(100%); transition: transform .6s ease, opacity .6s ease; width: 100%; z-index: 1000; }
.cookie.show { opacity: 1; transform: translateX(-50%) translateY(0); }
.cookie__inner { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 18px 25px; }
@media (max-width:767px) { .cookie__inner { flex-direction: row; font-size: 16px; justify-content: unset; padding: 15px 20px; } }
.cookie__inner p { width: 80%; }
@media (max-width:767px) { .cookie__inner p { text-align: justify; width: 100%; } }
.cookie__inner a { color: #fff; font-size: 2em; text-decoration: none; }
@media (max-width:767px) { .cookie__inner a { font-size: 2.5em; margin-left: auto; margin-top: 10px; } }

/* =========================================================================================
   PAGES: PUBLICATIONS & NEWS
   ========================================================================================= */
.publications { padding: 150px 45px 150px 0; }
@media (max-width:1400px) { .publications { padding-right: 22px; } }
@media (max-width:992px) { .publications { padding-right: 25px; } }
@media (max-width:768px) { .publications { padding: 15px; } }

.publications__grid { display: flex; flex-wrap: wrap; height: 100%; justify-content: space-between; max-width: 1280px; position: relative; width: 100%; }
.publications__grid__item { flex: 0 1 calc(33.33333% - 40px); margin-bottom: 55px; position: relative; }
@media (max-width:1400px) { .publications__grid__item { flex: 0 1 calc(33.33333% - 20px); margin-bottom: 30px; } }
@media (max-width:992px) { .publications__grid__item { flex: 0 1 calc(50% - 15px); margin-bottom: 29px; } }
@media (max-width:768px) { .publications__grid__item { flex: 0 1 calc(50% - 10px); margin-bottom: 20px; } }
@media (max-width:576px) { .publications__grid__item { flex: 0 1 100%; margin-bottom: 15px; } }

.publications__grid__item--empty { height: 0; overflow: 0; pointer-events: none; visibility: hidden; }
.publications__grid__item img { display: block; height: 100%; height: 500px; -o-object-fit: cover; object-fit: cover; width: 100%; }
@media (max-width:1400px) { .publications__grid__item img { height: 400px; } }
.publications__grid__item__inner { height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.news { padding: 150px 45px 150px 0; }
@media (max-width:1400px) { .news { padding-right: 22px; } }
@media (max-width:992px) { .news { padding-right: 25px; } }
@media (max-width:768px) { .news { padding: 15px; } }

.news__header { margin-bottom: 40px; margin-top: 20px; }
@media (min-width:768px) { .news__header { align-items: center; display: flex; justify-content: space-between; margin-bottom: 40px; } }
.news__inner { max-width: 1280px; position: relative; width: 100%; }

.news__filters { grid-gap: 0 10px; display: flex; }
@media (max-width:767px) { .news__filters { margin-left: -15px; margin-top: 15px; overflow-y: auto; padding-bottom: 2px; padding-left: 15px; scrollbar-width: none; white-space: nowrap; width: calc(100% + 30px); } .news__filters::-webkit-scrollbar { display: none; } }

.news__filter { background: #fff; border: 1px solid #000; border-radius: 25px; font-size: .56em; font-weight: 400; padding: 3px 8px; text-transform: uppercase; transition: all .2s ease-in-out; }
.news__filter.active, .news__filter:hover { background: #220af9; color: #fff; }

.news__grid { grid-gap: 50px; display: flex; flex-wrap: wrap; }
@media (min-width:768px) { .news__grid { grid-gap: 50px; display: grid; grid-auto-rows: minmax(380px, auto); grid-template-columns: repeat(3, 1fr); } }

.news-item { background: #fff; display: flex; overflow: hidden; }
@media (max-width:767px) { .news-item { flex-direction: column; min-height: 320px; width: 100%; } }

.news-item__image { max-height: 380px; position: relative; }
@media (max-width:767px) { .news-item__image { height: unset; max-height: unset; width: 100%!important; } }
.news-item__image img { height: auto; width: 100%; }
@media (min-width:768px) { .news-item__image img { height: 100%; width: auto; } }

.news-item__smallimage { display: none; margin: 15px 0; position: relative; }
.news-item__smallimage img { height: 120px; width: auto; }

.news-item__video-play { cursor: pointer; left: 50%; position: absolute; top: 50%; transform: translate(-50%,-50%); transition: all .2s ease-in-out; z-index: 1; }
.news-item__video-play:hover { transform: translate(-50%,-50%) scale(1.1); }

/* News Item Layout Modifiers */
.news-item:nth-child(6n+1) { grid-column: span 2; }
.news-item:nth-child(6n+1) .news-item__image { width: 35%; }
.news-item:nth-child(6n+2) { grid-column: span 1; }
@media (min-width:768px) { .news-item:nth-child(6n+2) .news-item__image { display: none; } .news-item:nth-child(6n+2) .news-item__smallimage { display: block; } }

.news-item:nth-child(6n+3) { grid-column: span 3; }
@media (min-width:768px) { .news-item:nth-child(6n+3) .news-item__image { order: 2; } .news-item:nth-child(6n+3) .news-item__content { order: 1; } }

.news-item:nth-child(6n+4) { grid-column: span 1; }
@media (min-width:768px) { .news-item:nth-child(6n+4) .news-item__image { display: none; } .news-item:nth-child(6n+4) .news-item__smallimage { display: block; } }

.news-item:nth-child(6n+5) { grid-column: span 2; }
.news-item:nth-child(6n+5) .news-item__image { width: 35%; }

.news-item:nth-child(6n+6) { grid-column: span 3; }
@media (min-width:768px) { .news-item:nth-child(6n+6) .news-item__image { order: 2; } .news-item:nth-child(6n+6) .news-item__content { order: 1; } }

.news-item__content { display: flex; flex: 1; flex-direction: column; padding: 20px; }
.news-item__title { font-size: 1.4em; font-weight: 500; line-height: 1.1em; margin-bottom: 15px; }
.news-item__project { font-size: .56em; font-weight: 400; }
.news-item__project a { text-decoration: underline; }
.news-item__category { grid-gap: 0 15px; display: flex; font-size: .4em; font-weight: 700; margin-bottom: 5px; width: 100%; }
.news-item__text { font-size: .8em; font-weight: 400; line-height: 1.1em; margin-bottom: 10px; margin-top: auto; }
.news-item__link { grid-gap: 0 5px; align-items: center; display: flex; font-size: .4em; font-weight: 700; line-height: 1.2em; }
.news-item__link span { background: #000; flex: 1; height: 3px; transition: all .2s ease-in-out; }
.news-item__link i { font-style: normal; }
.news-item__link:hover span { flex: 0.97; }


/* =========================================================================================
   ANIMATIONS & SCROLL BEHAVIOR
   ========================================================================================= */
.under_construction { align-items: center; display: flex; height: 100vh; justify-content: center; text-align: center; width: 100%; }
.under_construction__inner p { margin-top: 25px; }

[data-fade] { opacity: 0; transition: all 1s cubic-bezier(.65,0,.35,1) 0ms; }
.is-visible [data-fade], [data-fade].is-visible { opacity: 1!important; transform: translateX(0); }

[data-scale] { transform: scale(0); transition: all 1s cubic-bezier(.65,0,.35,1) 0ms; }
.is-visible [data-scale], [data-scale].is-visible { transform: scale(1); }

[data-fade-up] { filter: blur(5px); opacity: 0; transform: translateY(10px); transition: opacity 1s cubic-bezier(.65,0,.35,1) 0ms, transform 1s cubic-bezier(.65,0,.35,1) 0ms, filter 1s cubic-bezier(.65,0,.35,1) 0ms; }
.is-visible [data-fade-up], [data-fade-up].is-visible { filter: blur(0); opacity: 1!important; transform: translateY(0); }

[data-fade-left] { opacity: 0; transform: translateX(20px); transition: all 1s cubic-bezier(.65,0,.35,1) 0ms; }
.is-visible [data-fade-left], [data-fade-left].is-visible { opacity: 1!important; transform: translateX(0); }

[data-fade-right] { opacity: 0; transform: translateX(-5px); transition: all 1s cubic-bezier(.65,0,.35,1) 0ms; }
.is-visible [data-fade-right], [data-fade-right].is-visible { opacity: 1!important; transform: translateX(0); }

[data-title-animation] { display: block; overflow: hidden; position: relative; }
[data-title-animation] span { display: inline-block; transform-origin: bottom left; }

/* Staggered Fade Up Animations */
[data-fadeup="1"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="1"], [data-fadeup="1"].is-visible { opacity: 1; transform: translateY(0); transition-delay: .3s; }
[data-fadeup="2"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="2"], [data-fadeup="2"].is-visible { opacity: 1; transform: translateY(0); transition-delay: .6s; }
[data-fadeup="3"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="3"], [data-fadeup="3"].is-visible { opacity: 1; transform: translateY(0); transition-delay: .9s; }
[data-fadeup="4"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="4"], [data-fadeup="4"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 1.2s; }
[data-fadeup="5"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="5"], [data-fadeup="5"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 1.5s; }
[data-fadeup="6"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="6"], [data-fadeup="6"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 1.8s; }
[data-fadeup="7"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="7"], [data-fadeup="7"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 2.1s; }
[data-fadeup="8"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="8"], [data-fadeup="8"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 2.4s; }
[data-fadeup="9"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="9"], [data-fadeup="9"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 2.7s; }
[data-fadeup="10"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="10"], [data-fadeup="10"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 3s; }
[data-fadeup="11"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="11"], [data-fadeup="11"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 3.3s; }
[data-fadeup="12"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="12"], [data-fadeup="12"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 3.6s; }
[data-fadeup="13"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="13"], [data-fadeup="13"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 3.9s; }
[data-fadeup="14"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="14"], [data-fadeup="14"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 4.2s; }
[data-fadeup="15"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="15"], [data-fadeup="15"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 4.5s; }
[data-fadeup="16"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="16"], [data-fadeup="16"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 4.8s; }
[data-fadeup="17"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="17"], [data-fadeup="17"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 5.1s; }
[data-fadeup="18"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="18"], [data-fadeup="18"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 5.4s; }
[data-fadeup="19"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="19"], [data-fadeup="19"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 5.7s; }
[data-fadeup="20"] { opacity: 0; transform: translateY(50px); transition: transform .8s ease, opacity .8s ease; } .is-visible [data-fadeup="20"], [data-fadeup="20"].is-visible { opacity: 1; transform: translateY(0); transition-delay: 6s; }

[data-blur-animation], [data-title-animation] div, [data-typewriter-animation] { opacity: 0; will-change: transform; }

/* Page Layout Structure */
.pagewrapper { overflow: hidden; }
.content { left: 0; position: relative; transition: left .8s ease-in-out 0s; }
@media (max-width:768px) { .content { padding-top: 65px; } }
.pusher { transition: transform .8s ease-in-out 0s; will-change: transform; }
.menu-visible .pusher { transform: translateX(100px); }
.pusherl { left: 0; position: relative; transition: left .8s ease-in-out 0s; will-change: left; }
.menu-visible .pusherl { left: 100px; }
.left_spacing { overflow-y: hidden; transition: transform .8s ease 0s; }
.left_spacing__inner { padding-left: 280px; }
@media (max-width:768px) { .left_spacing__inner { padding: 0; } }
.left_spacing--reset { margin-left: -160px; }
@media (max-width:768px) { .left_spacing--reset { margin-left: 0; } }

/* Page Transitions */
.page-enter-active, .page-leave-active { transition: opacity .2s; }
.page-enter, .page-leave-active { opacity: 0; }
.slide-up-enter-active, .slide-up-leave-active { transition: opacity .5s ease-in-out 0s, transform .5s ease-in-out 0s; }
.slide-up-enter-active { transition-delay: 0s,0s; }
.slide-up-enter, .slide-up-leave-active { opacity: 0; transform: translateY(70px); }
.slide-up-fast-enter-active, .slide-up-fast-leave-active { transition: opacity .2s ease-in-out 0s, transform .2s ease-in-out 0s; }
.slide-up-fast-enter-active { transition-delay: 0s,0s; }
.slide-up-fast-enter, .slide-up-fast-leave-active { opacity: 0; transform: translateX(20px); }
.first-slide-enter { opacity: 0; transform: translatex(100%); transition: all .5s ease-in-out; }
.first-slide-enter-to { opacity: 1; transform: translatex(0); transition: all .5s ease-in-out; }
.first-slide-leave-to { opacity: 0; transform: translatex(100%); transition: all .5s ease-in-out; }
.second-slide-enter { opacity: 1; transform: translatex(-100vw); transition: all .5s ease-in-out; }
.second-slide-enter-to { opacity: 1; transform: translatex(0); transition: all 1.5s ease-in-out; }
.second-slide-leave-to { opacity: 1; transform: translatex(0); transition: all 5.5s ease-in-out; }

.fade-enter-active, .fade-leave-active { transition: opacity .2s; }
.fade-enter, .fade-leave-to { opacity: 0; }
[v-cloak] { display: none; }

.lg-actions .lg-next, .lg-actions .lg-prev { background: none; }
.espa-banner { bottom: 0; max-width: 500px; position: absolute; right: 0; transform: translateY(110%); transition: transform .8s ease-in-out 1s; width: 40%; z-index: 99; }
@media (max-width:767px) { .espa-banner { max-width: unset; width: 100%; } }
.loaded .espa-banner { transform: translateY(0); }
.espa-banner img { display: block; }
@media (min-width:769px) { #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container { padding: 20px 40px!important; } }