body { background: #fff; font: normal 16px/1.4 'petita_medium'; color: #252525; }
main:after { content: ''; display: block; clear: both; }
h1, h2, h3, h4, h5, h6 { font-family: 'petita_bold'; color: #252525; }
p { margin: 1.5em 0; font-family: 'petita_medium'; color: #252525; line-height: 1.6; }
a { color: #494949; cursor: pointer; text-decoration: none; }
ul { margin: 0 0 0 0; padding: 0 0 0 0; list-style: none; }
ol { margin: 0 0 0 0; padding: 0 0 0 0; }
li { list-style-type: none; }
input, textarea, select { background: #fff; color: #005189; border-radius: 0 !important; }
abbr[title] { border: none; }
button:focus,
a:focus,
input:focus,
select:focus,
textarea:focus { outline: none !important; }
textarea { resize: vertical; }
img { height: auto; display: inherit; }

::-webkit-input-placeholder { opacity: 1; }
::-moz-placeholder { opacity: 1; }
:-ms-input-placeholder { opacity: 1; }
:-moz-placeholder { opacity: 1; }

.screen-reader-response { display: none !important; }
.wpcf7-not-valid-tip { display: none !important; }
.wpcf7-validation-errors { margin-top: 1.2em; padding: 0.94em 1em 1em 1em; background: #f8d7da; border: 1px solid #f5c6cb;  font-family: 'petita_medium'; font-size: 0.94em; color: #721c24; }
.wpcf7-mail-sent-ok { margin-top: 1.2em; padding: 0.94em 1em 1em 1em; background: #d4edda; border: 1px solid #c3e6cb;  font-family: 'petita_medium'; font-size: 0.94em; color: #155724; }

#dl-menu { display: none; }
#popup-nav { display: none; }
#nav-open { display: none; }
.wrap { box-sizing: border-box; max-width: 1716px; padding: 0 3em; margin: 0 auto; }
.inside { max-width: 1100px; margin: 0 auto; }
.main-title { font-family: 'petita_bold'; font-size: 1.125em; text-align: center; letter-spacing: 0.2em; text-transform: uppercase; }
.mfp-bg { background: #140d0d; opacity: 1; z-index: 99999; }
.mfp-wrap { z-index: 999999; }

.slug-about-us main > *:last-child { margin-bottom: 10.25em; }
.post-type-archive-projects main > *:last-child { margin-bottom: 10.25em; }
.slug-contact main > *:last-child { padding-bottom: 10.25em; }

.block-big-banner { position: relative; }
.block-big-banner .bgd { height: 94.1vh; background-size: cover; background-repeat: no-repeat; background-position: top center; background-attachment: fixed; }
.iphone .block-big-banner .bgd { background-attachment: scroll; }
.block-big-banner .bgd img { visibility: hidden; }
.block-big-banner .text { position: absolute; left: 0; right: 0; bottom: 5em; top: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding-top: 3em; }
.block-big-banner .logo { margin-bottom: 3.5em; max-height: 70%; width: auto; }
.block-big-banner a { font-family: 'petita_medium'; font-size: 1.25em; color: #fff; text-transform: uppercase; letter-spacing: 0.46em; text-align: center; }
.block-big-banner a span { display: block; }
.block-big-banner a img { display: inline-block; position: relative; top: 0; margin: 1em auto 0 auto; transition: all 200ms ease-in-out; }
.block-big-banner a:hover img { top: 1em; }

.block-home-projects { padding: 3.75em 0 9.625em 0; background: #140d0d; }

.block-banner { position: relative; }
.block-banner .bgd { /*height: 87.2vh;*/ height: 94.1vh; background-size: cover; background-repeat: no-repeat; background-position: top center; background-attachment: fixed; }
.iphone .block-banner .bgd { background-attachment: scroll; }
.block-banner img { visibility: hidden; width: 100%; height: auto; }
.block-banner .text { position: absolute; left: 0; right: 0; top: 0; bottom: 0; }
.block-banner .text .wrap { height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; }
.block-banner .title { font-family: 'petita_bold'; font-size: 3em; color: #fff; text-transform: uppercase; letter-spacing: 0.6em; }

.block-simple-content { margin: 6.25em 0; }
.block-simple-content .main-title { margin-bottom: 3.3em; }
.block-simple-content h3 { font-family: 'petita_bold'; font-size: 1.25em; text-transform: uppercase; }
.block-simple-content h3 + p { margin-top: 0; }
.block-simple-content p { font-size: 1.25em; }
.block-simple-content .horizontal { display: flex; justify-content: space-between; margin: 3.75em 0 0 -2em; }
.block-simple-content .horizontal li { padding-left: 2em; text-align: center; }
.block-simple-content .horizontal li [href$="pdf"] { font-family: 'petita_bold'; font-size: 0.875em; color: #252525; letter-spacing: 0.2em; text-transform: uppercase; }
.block-simple-content li [href$="pdf"] { display: inline-block; padding-top: 3.6em; background: url('images/icon-pdf.png') no-repeat top center; }
.block-simple-content + .block-simple-content { padding-top: 0; }
.block-simple-content .inside > *:last-child { margin-bottom: 0; }
.block-simple-content iframe { display: block; margin: 2.5em auto 0 auto; max-width: 750px; width: 100% !important; height: 448px !important; }

.block-team ul { display: flex; margin-left: -6.75em; }
.block-team li { width: 33.33%; padding-left: 6.75em; }
.block-team li:nth-child(3n+1):nth-last-child(-n+3), .block-team li:nth-child(3n+1):nth-last-child(-n+3) ~ li { margin-bottom: 0; }
.block-team li .box { background: #e7e6e6; margin-bottom: 1.625em; }
.block-team h4 { font-family: 'petita_bold'; font-size: 1.25em; text-transform: uppercase; }
.block-team .position { display: block; margin-top: 0.5em; font-size: 1.0625em; }

.block-home-projects { text-align: right; }
.block-home-projects .view-projects { display: inline-block; margin-top: 3.7em; font-family: 'petita_bold'; font-size: 0.875em; color: #fcee22; letter-spacing: 0.14em; text-transform: uppercase; }
.block-home-projects .view-projects i { top: 0; margin-left: 0.7em; }

.projects { display: flex; flex-wrap: wrap; justify-content: center; margin-left: -3.75em; text-align: left; overflow: hidden; }
.projects > li { width: 25%; padding-left: 3.75em; overflow: hidden; margin-bottom: 3.75em; }
.projects > li:nth-child(4n+1):nth-last-child(-n+4), .projects > li:nth-child(4n+1):nth-last-child(-n+4) ~ li { margin-bottom: 0; }
.projects > li a { display: inline-block; max-width: 100%; position: relative; }
.projects > li .text { position: absolute; left: 0; right: 0; bottom: 0; top: 130%; padding: 1em 0.75em; display: flex; align-items: flex-end; background: rgba(0,0,0,0.5); transition: all 500ms ease-in-out; }
.projects > li a:hover .text { top: 0; }
.projects > li h2 { font-family: 'petita_bold'; font-size: 0.9375em; color: #fff; text-transform: uppercase; letter-spacing: 0.14em; }

.wider .projects { margin-left: -2em; }
.wider .projects > li { width: 20%; padding-left: 2em; overflow: hidden; margin-bottom: 2em; }
.wider .projects > li:nth-child(5n+1):nth-last-child(-n+5), .wider .projects > li:nth-child(5n+1):nth-last-child(-n+5) ~ li { margin-bottom: 0; }
.wider .full-project p a { color: #252525; }

/*.archive .projects { margin-left: -2em; }*/
/*.archive .projects > li { width: 20%; padding-left: 2em; overflow: hidden; margin-bottom: 2em; }*/
/*.archive .projects > li:nth-child(5n+1):nth-last-child(-n+5), .projects > li:nth-child(5n+1):nth-last-child(-n+5) ~ li { margin-bottom: 0; }*/

.projects + .full-project { left: 0; margin-top: 3.75em; }
.full-project { /*box-sizing: content-box;*/ display: none; position: relative; width: calc(100% - 3.75em); left: 1.875em; padding: 3.125em 0 3.125em 0; margin-bottom: 3.125em; border-top: 1px solid #fff; border-bottom: 1px solid #fff; overflow: hidden; }
.full-project .inside { position: relative; }
/*.full-project .inside { position: absolute; top: 0; left: 0; right: 0; }*/
/*.full-project .scrollable { position: relative; right: -17px; margin-left: -17px; max-height: 600px; overflow-y: scroll; }*/
.full-project .scrollable { position: relative; right: -17px; margin-left: -17px; height: 62.2vh; overflow-y: scroll; overflow-x: hidden; }
.full-project .general { display: flex; justify-content: space-between; position: -webkit-sticky; position: sticky; top: 0; /*left: 0;*/ /*top: 3.125em;*/ text-align: left; }
.full-project .general .box { max-width: 12.2em; }
.full-project .general h3 { font-family: 'petita_bold'; font-size: 0.9375em; color: #fff; }
.full-project .gallery li { display: flex; align-items: center; justify-content: center; margin-bottom: 6em; text-align: center; }
.full-project .gallery li a { display: inline-flex; align-items: center; height: 100%; }
@media all and (-ms-high-contrast:none)
{
	.full-project .gallery li { text-align: center; }
	.full-project .gallery li a { display: inline-block; width: 100%; } /* IE10 */
	*::-ms-backdrop, .full-project .gallery li { text-align: center; }
	*::-ms-backdrop, .full-project .gallery li a { display: inline-block; width: 100%; } /* IE11 */
}
.full-project .gallery li:last-child { margin-bottom: 0; }
.full-project .gallery li img { margin: 0 auto; max-height: 100%; width: auto; }
.full-project .close { position: absolute; right: 0; /*top: 0.86em;*/ font-size: 3em; color: #fff; transition: all 250ms ease-in-out; }
/*.full-project .close:hover { color: #fcee22; }*/
.full-project .con { padding: 6em 0 0 0; text-align: left; }
.full-project .con > *:last-child { margin-bottom: 0; }
.full-project p { font-size: 1.25em; color: #fff; }
.full-project p a { color: #fff; transition: all 250ms ease-in-out; }
.full-project p a:hover { color: #fcee22; }
.full-project .main-title { margin-bottom: 3.3em; color: #fff; }
.full-project .con  h3 { font-family: 'petita_bold'; font-size: 1.25em; text-transform: uppercase; color: #fff; }
.full-project .con  h3 + p { margin-top: 0; }
.full-project .project-scroll { display: block; margin-top: 0.7em; font-family: 'petita_bold'; font-size: 0.84em; color: #fff; transition: all 250ms ease-in-out; }
.full-project .project-scroll:hover { color: #fcee22; }

.full-project .close .light { display: none; }
.full-project .close .dark { display: block; }
.home .full-project .close .dark { display: none; }
.home .full-project .close .light { display: block; }

.block-projects .main-title { margin-bottom: 3.3em; }
.block-projects .full-project { border-color: #cecccb; }
.block-projects .full-project .general h3 { color: #252525; }
.block-projects .full-project .project-scroll { color: #9b9a9a; }
.block-projects .full-project .project-scroll:hover { color: #252525; }
.block-projects .full-project .main-title { color: #252525; }
.block-projects .full-project .con h3 { color: #252525; }
.block-projects .full-project p { color: #252525; }
.block-projects .full-project .close { color: #b5b3b3; }
.block-projects .full-project .close:hover { color: #252525; }

.project-category .full-project { border-color: #cecccb; }
/*.project-category .full-project .inside { max-width: 896px; padding: 0 3em; }*/
.project-category .full-project .con { padding-top: 4em; }
.project-category .full-project .gallery li { margin-bottom: 4em; }
.project-category .full-project .gallery li:last-child { margin-bottom: 0; }
.project-category .full-project .general h3 { color: #252525; }
.project-category .full-project .project-scroll { color: #9b9a9a; }
.project-category .full-project .project-scroll:hover { color: #252525; }
.project-category .full-project .main-title { color: #252525; }
.project-category .full-project .con h3 { color: #252525; }
.project-category .full-project p { color: #252525; }
.project-category .full-project .close { color: #b5b3b3; }
.project-category .full-project .close:hover { color: #252525; }

/*.project-category .inside { max-width: 1286px; }*/
.project-category { margin: 6.25em 0; }
.project-category .main-title { margin-bottom: 3.3em; }

.block-contact { padding: 6.25em 0; }
.block-contact form { margin-top: 3.125em; }
.block-contact form p { margin: 0 0; }
.block-contact .information { display: flex; justify-content: space-between; }
.block-contact .information .box { display: flex; align-items: flex-start; flex-direction: column; }
.block-contact .box .main-title { font-size: 1.25em; margin-bottom: 0.2em; }
.block-contact .box a { font-family: 'petita_medium'; font-size: 1.25em; color: #252525; }
.block-contact .box span { font-family: 'petita_medium'; font-size: 1.25em; color: #252525; }
.block-contact .contact-form { margin-top: 5.75em; }
.block-contact p { font-size: 1.25em; color: #252525; }
.block-contact label { display: block; font-family: 'petita_bold'; font-size: 1.125em; color: #252525; text-transform: uppercase; }
.block-contact .input { width: 100%; border: none; padding: 0.3em 0; border-bottom: 1px solid #b3b1b9; font-family: 'petita_medium'; font-size: 1.25em; color: #8e8e8e; }
.block-contact textarea.input { max-height: 10em; }
.block-contact .input-row { display: flex; margin-left: -4.5em; margin-bottom: 3.125em; }
.block-contact .input-row .input-box { width: 50%; padding-left: 4.5em; }
.block-contact .input-row.full .input-box { width: 100%; }
.block-contact [type="submit"] { padding: 1em 3.2em 0.85em 3.2em; font-family: 'petita_bold'; font-size: 0.875em; color: #fff; background: #3b3839; border: none; text-transform: uppercase; letter-spacing: 0.14em; cursor: pointer; }

.site-footer { position: relative; padding: 0.625em 0; background: #201d1b; }
.site-footer.fixed { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999; animation: appear linear 0.36s; animation-iteration-count: 1; animation-fill-mode: forwards; }
@keyframes appear { 0% { opacity: 0; } 100% { opacity: 1; } }
.site-footer .wrap { display: flex; flex-wrap: wrap; }
.site-footer .side { display: flex; align-items: center; }
.site-footer .info { display: flex; }
.site-footer .info li { margin-left: 2.86em; font-family: 'petita_medium'; font-size: 0.875em; color: #7d7d7d; text-transform: uppercase; }
.site-footer .info li a { color: #7d7d7d; transition: all 250ms ease-in-out; }
.site-footer .info li a:hover { color: #fcee21; }
.site-footer #menu-footer-menu { position: absolute; right: 0; height: 100%; display: flex; }
.site-footer #menu-footer-menu li { border-left: 1px solid #424243; }
.site-footer #menu-footer-menu li.current-menu-item a { color: #fcee21; }
.site-footer #menu-footer-menu a { display: inline-flex; align-items: center; height: 100%; padding: 0 4em; font-family: 'petita_bold'; font-size: 0.875em; color: #fff; text-transform: uppercase; letter-spacing: 0.16em; transition: all 250ms ease-in-out; }
.site-footer #menu-footer-menu a:hover { color: #fcee21; }
.site-footer .side.left .menu { display: flex; }
.site-footer .side.left .menu li { margin-left: 3em; }
.site-footer .side.left .menu a { font-family: 'petita_bold'; font-size: 0.875em; color: #fff; transition: all 250ms ease-in-out; }
.site-footer .side.left .menu a:hover { color: #fcee21; }

@media all and (-ms-high-contrast:none)
{
	.site-footer { max-height: 65px; }
	.site-footer .info { display: inline-flex; padding-top: 0.8em; }
	.site-footer .side { display: inline-block; } /* IE10 */
	.site-footer .side.left .menu { display: inline-flex; padding-top: 0.8em; }
	.site-footer #menu-footer-menu { bottom: -3px; }
	*::-ms-backdrop, .site-footer { max-height: 65px; }
	*::-ms-backdrop, .site-footer .info { display: inline-flex; padding-top: 0.8em; }
	*::-ms-backdrop, .site-footer .side { display: inline-block; } /* IE11 */
	*::-ms-backdrop, .site-footer .side.left .menu { display: inline-flex; padding-top: 0.8em; }
	*::-ms-backdrop, .site-footer #menu-footer-menu { bottom: -3px; }
}