/*
Theme Name: Mailas
Description: mailas
Theme URI: https://andreamantegazza.it
Author: AM Dev
Version: 1.0
*/


@font-face {
    font-family: 'HelveticaNowDisplay';
    src: url('fonts/HelveticaNowDisplay-Md.eot');
    src: url('fonts/HelveticaNowDisplay-Md.eot?#iefix') format('embedded-opentype'),
        url('fonts/HelveticaNowDisplay-Md.woff2') format('woff2'),
        url('fonts/HelveticaNowDisplay-Md.woff') format('woff'),
        url('fonts/HelveticaNowDisplay-Md.ttf') format('truetype'),
        url('fonts/HelveticaNowDisplay-Md.svg#HelveticaNowDisplay-Md') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'SuisseIntlMono';
    src: url('fonts/SuisseIntlMono.eot');
    src: url('fonts/SuisseIntlMono.eot?#iefix') format('embedded-opentype'),
        url('fonts/SuisseIntlMono.woff2') format('woff2'),
        url('fonts/SuisseIntlMono.woff') format('woff'),
        url('fonts/SuisseIntlMono.ttf') format('truetype'),
        url('fonts/SuisseIntlMono.svg#SuisseIntlMono') format('svg');
    font-weight: normal;
    font-style: normal;
}


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

:root {
    --size-body: 1vw;
    --line-body: 1.2em; 
    
    --size-medium: 1.3vw;
    --line-medium: 1.0em; 
    
    --size-large: 3vw;
    --line-large: 1.2em; 
    
    --size-small: 0.8vw;
    --line-small: 1.2em; 
    
    --size-mono: 0.8vw;
    --line-mono: 1.2em;
    
    --color-white: #EDEEEE;
    --color-blue: #002D40;
    --color-green: #036874;
    --color-green: #243c5c;

}

html{
    overflow-y: auto;
}
body {
    font-size: var(--size-body);
    line-height: var(--line-body);
    font-family: 'HelveticaNowDisplay';
    background-color: var(--color-white);
}

/* We like off-black for text. */
body, select, input, textarea {color: #000;}

a {color: #000; text-decoration: none;}
a:hover {color: #000;}

::-moz-selection{background: var(--color-blue); color: #fff; text-shadow: none;}
::selection {background: var(--color-blue); color: #fff; text-shadow: none;}

a:link {-webkit-tap-highlight-color: var(--color-blue);}

ins {background-color: var(--color-blue); color: #000; text-decoration: none;}
mark {background-color: var(--color-blue); color: #000; font-style: italic; font-weight: bold;}

/* Mozilla dosen't style place holders by default */
input:-moz-placeholder { color:#a9a9a9; }
textarea:-moz-placeholder { color:#a9a9a9; }

img.mobile {
    display: none !important;
}

/* C O D E
-------------------------------------------------------------------------------*/

#header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    padding: 10px 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    background-color: transparent;
    transition: background-color 0.4s;
    z-index: 5000;
}
#header:hover {
    background-color: var(--color-white);
}
#header .main-logo {
    height: 3vw;
    display: block;
}

#header nav#nav {
    display: flex;
    flex-direction: row;
    justify-content: center;
}
#header .wpml-ls-legacy-list-horizontal {
    padding: 0;
    text-transform: uppercase;
    margin-left: 2em;
}
#header .wpml-ls-legacy-list-horizontal a {
    padding: 0;
}
#header .wpml-ls-legacy-list-horizontal ul li {
    margin-left: 0.5;
}
#header .wpml-ls-legacy-list-horizontal .wpml-ls-current-language * {
    color: var(--color-blue);
}

#header nav ul {
    display: flex;
    flex-direction: row;
}
#header nav ul li {
    margin-left: 1em;
}
#header nav ul li ul {
    display: flex;
    flex-direction: column;
    padding-top: 1em;
    display: none;
    background-color: var(--color-white);
}
#header nav ul li:hover ul {
    display: flex;
    position: absolute;
    width: 15vw;
    padding: 20px;
    margin-left: -20px;
}
#header nav ul li ul li {
    margin-left: 0;
        margin-bottom: 0.2em;
    
}
#header nav ul li a:hover,
#header nav ul li.current-menu-item a,
#header nav ul li.current-menu-parent a {
    border-bottom: 2px solid;
}
#header nav ul li.current-menu-parent ul li a {
    border-bottom: 0;
}
#header nav ul li.current-menu-parent ul li.current-menu-item a {
    border-bottom: 2px solid;
}

#header nav ul li.current-menu-item *,
#header nav ul li:hover * {
    color: var(--color-green);
}

#header .toggle-menu {
    display: none;
}


.home .intro-image {
    height: 100dvh;
    background-position: center;
    background-size: cover;
    display: flex !important;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 20px;
    font-family: 'SuisseIntlMono';
}
.home .caption {
    text-align: left;
    font-size: var(--size-mono);
    line-height: var(--line-mono);
    color: var(--color-blue);
}
.home .prev-arrow.slick-arrow {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    z-index: 1000;
    cursor: pointer;
    mix-blend-mode: difference;
    color: #fff;
        font-size: 2em;
}
.home .next-arrow.slick-arrow {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    z-index: 1000;
    cursor: pointer;
    mix-blend-mode: difference;
    color: #fff;
        font-size: 2em;
}


/**/
.home .section-split .col-subtitle {
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-top: -0.3em;
}
.home .section-split .col-content h3 {
    font-size: var(--size-medium);
    line-height: var(--line-medium);
    margin-bottom: 0.8em;
}
.home .section-split .col-content p {
    margin-bottom: 0.8em;
}


/**/
.home .block-info {
    display: flex;
}
.home .section-1 {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 4em 8.33%;
    width: 50%;
}
.home .section-1 .col-subtitle {
    width: 100%;
    margin-bottom: 0.5em;
}
.home .section-1 .col-content {
    width: 100%;
}


/**/
.home .section-2 {
    height: 40vw;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 20px;
    font-family: 'SuisseIntlMono';
}

/**/
.home .section-3 {
    display: flex;
    flex-direction: row;
    padding: 4em 8.33%;
}
.home .section-3 .col-subtitle {
    width: 50%;
}
.home .section-3 .col-content {
    width: 50%;
}



/**/
.home .section-4 {
    padding: 0 8.33%;
    padding-left: calc(12vw);
    padding-right: 14.5vw;
    padding-bottom: 4em;
}
.home .section-4 img {
    width: 100%;
    display: block;
}


/**/
.home .section-5 {
    height: 30vw;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    padding: 20px;
    font-family: 'SuisseIntlMono';
}



/**/
.home .section-6 {
    display: flex;
    flex-direction: row;
    padding: 4em 8.33%;
}
.home .section-6 .col-subtitle {
    width: 50%;
}
.home .section-6 .col-content {
    width: 50%;
}


/**/
.home .section-7 {
    padding: 4em 8.33%;
    padding-left: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.home .section-7 .col-subtitle {
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-top: -0.3em;
    width: 100%;
    margin-bottom: 0.5em;
}
.home .section-7 a {
    width: calc(50% - 10px);
}
.home .section-7 .bubble-wrapper {
    width: 100%;
    min-height: 8vw;
    border: 1.5px solid;
    border-radius: 1vw;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    transition: background-color 0.2s, color 0.2s; 
}
.home .section-7 a:nth-of-type(even) {
    margin-top: 3vw;
}
.home .section-7 .bubble-wrapper:hover {
    background-color: var(--color-green);
    color: var(--color-white);
}
.home .section-7 .bubble-wrapper:hover .dot {
    background-color: var(--color-white);
}
.home .section-7 .bubble-wrapper .dot {
    height: 1em;
    width: 1em;
    border-radius: 10vw;
    background-color: var(--color-green);
    margin-bottom: 1.5em;
}
.home .section-7 .bubble-wrapper .bubble-title {
    font-size: var(--size-medium);
    line-height: var(--line-medium);
    margin-top: auto;
    margin-bottom: 0.3em;
}
.home .section-7 .bubble-wrapper .bubble-description {
    min-height: 10em;
}
.home .section-7 img {
    width: 60%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}





/**/
.home .section-8 {
    height: 40vw;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    padding: 20px;
    font-family: 'SuisseIntlMono';
}


.home .contact-form {
    margin-top: 0;
}







/* ARCHIVE CASE STUDY
-----------------------------------------------------------------------*/
.archive .intro-bg-image,
.page-template-page-about .intro-bg-image {
    height: 40vw;
    background-position: center;
    background-size: cover;
    position: absolute;
    width: 100%;
    z-index: 0;
    filter: grayscale(1) brightness(1.2);
}

.archive .intro-archive,
.post-type-archive-progetti .intro-archive {
    height: 40vw;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    text-transform: uppercase;
    font-size: 10vw;
    line-height: 0.9em;
    color: var(--color-green);
    padding: 0 8.33%;
    z-index: 1;
    position: relative;
}
.archive .intro-archive .word-1,
.post-type-archive-progetti .intro-archive .word-1 {
    width: 100%;
    text-align: left;
}
.archive .intro-archive .word-2,
.post-type-archive-progetti .intro-archive .word-2 {
    width: 100%;
    text-align: right;
}


.archive .section-split,
.post-type-archive-progetti .section-split {
    display: flex;
    flex-direction: row;
    padding: 4em 8.33%;
    padding-bottom: 6em;
}
.archive .section-split .col-subtitle,
.post-type-archive-progetti .section-split .col-subtitle {
    width: 50%;
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-top: -0.3em;
}
.archive .section-split .col-content,
.post-type-archive-progetti .section-split .col-content {
    width: 50%;
}

/**/

.archive .works-wrapper,
.post-type-archive-progetti .works-wrapper {
    padding: 0 8.33vw;
}
.archive .mobile-filter,
.post-type-archive-progetti .mobile-filter {
    display: none;
}


.archive .works-wrapper .table-header,
.post-type-archive-progetti .works-wrapper .table-header {
    display: flex;
    flex-direction: row;
    font-family: 'SuisseIntlMono';
    font-size: var(--size-small);
    line-height: var(--line-small);
    text-transform: uppercase;
    /*border-bottom: 1.5px solid #000;*/
    width: 100%;
    /*padding-bottom: 0.3em;*/
    margin-bottom: 0.3em;
}

.archive .works-wrapper .table-header div:nth-of-type(1),
.post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(1) {
    width: 25%;
}
.archive .works-wrapper .table-header div:nth-of-type(2),
.post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(2) {
    width: 25%;
}
.archive .works-wrapper .table-header div:nth-of-type(3),
.post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(3) {
    width: 50%;
}
/*
.post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(3) {
    width: 15%;
}
.post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(4) {
    width: 45%;
}
*/
.archive .works-wrapper .work-row:hover .client {
    text-decoration: underline;
}
.archive .works-wrapper .work-row,
.post-type-archive-progetti .works-wrapper .work-row {
    width: 100%;
    display: flex;
    flex-direction: row;
    font-size: var(--size-medium);
    line-height: var(--line-medium);
}
.archive .works-wrapper .work-row div:nth-of-type(1),
.post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(1) {
    width: 25%;
    padding: 0.4em 0;
}
.archive .works-wrapper .work-row div.category,
.post-type-archive-progetti .works-wrapper .work-row div.category {
    width: 25%;
    /*border-bottom: 1.5px solid #000;*/
    padding: 0.4em 0;
}
.archive .works-wrapper .work-row div.image-wrapper,
.post-type-archive-progetti .works-wrapper .work-row div.image-wrapper {
    width: 50%;
    /*border-bottom: 1.5px solid #000;*/
    padding: 0.4em 0;
}
/*
.post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(3) {
    width: 15%;
    padding: 0.4em 0;
}
.post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(4) {
    width: 45%;
    padding: 0.4em 0;
}
*/

.archive .works-wrapper .work-row:hover div:nth-of-type(2),
.post-type-archive-progetti .works-wrapper .work-row:hover div:nth-of-type(2){
    color: var(--color-green);
}
.archive .works-wrapper .work-row:hover div:nth-of-type(3),
.post-type-archive-progetti .works-wrapper .work-row:hover div:nth-of-type(3){
    color: var(--color-green);
}


.archive .works-wrapper .work-row div.col-1,
.post-type-archive-progetti .works-wrapper .work-row div.col-1 {
    border-top: 1.5px solid;
	padding-right: 20px;
}
.archive .works-wrapper .work-row div.category,
.post-type-archive-progetti .works-wrapper .work-row div.category {
    border-top: 1.5px solid;
}
.archive .works-wrapper .work-row div.image-wrapper,
.post-type-archive-progetti .works-wrapper .work-row div.image-wrapper {
    border-top: 1.5px solid;
}
.archive .works-wrapper .work-row div:nth-of-type(4),
.post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(4) {
    border-top: 1.5px solid;
}

.archive .works-wrapper .work-row .image-wrapper,
.post-type-archive-progetti .works-wrapper .work-row .image-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.archive .works-wrapper .work-row .image-wrapper .inner-image,
.post-type-archive-progetti .works-wrapper .work-row .image-wrapper .inner-image {
    background-position: center;
    background-size: cover;
    min-height: 10vw;
    width: calc(33.33% - 6px);
}
.archive .works-wrapper .work-row .image-wrapper img,
.post-type-archive-progetti .works-wrapper .work-row .image-wrapper img {
    display: block; 
    height: 9vw;
}




/* PAGE ABOUT
-----------------------------------------------------------------------*/

.page-template-page-about .intro-archive {
    height: 40vw;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    text-transform: uppercase;
    font-size: 10vw;
    line-height: 0.9em;
    padding: 0 18%
}
.page-template-page-about .intro-archive .word-1 {
    width: 100%;
    text-align: left;
}
.page-template-page-about .intro-archive .word-2 {
    width: 100%;
    text-align: right;
}
.page-template-page-about .subwords {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    font-family: 'SuisseIntlMono';
    font-size: var(--size-small);
    line-height: var(--line-small);
    text-transform: uppercase;
    padding: 0 20px;
}
.page-template-page-about .section-1 {
    display: flex;
    flex-direction: row;
    padding-left: 12.66%;
    padding-right: 20px;
    margin-top: 6em;
}
.page-template-page-about .section-1 .col-left {
    width: 65%;
    padding-right: 15%;
    padding-top: 4em;
}
.page-template-page-about .section-1 .col-right {
    width: 35%;
    background-position: center;
    background-size: cover;
    min-height: 35vw;
        border-radius: 1em;
}

.page-template-page-about .section-1 h2 {
    font-size: var(--size-large);
    line-height: var(--line-large);
}


/**/
.page-template-page-about .section-2 {
    padding: 0 8.33%;
}
.page-template-page-about .section-2 .col-left {
    width: 45%;
    background-position: center;
    background-size: cover;
    height: 25vw;
    border-radius: 1em;
    margin-top: -10vw;
}


.page-template-page-about .section-2-lavorazioni {
    display: flex;
    flex-direction: row;
    padding: 6em 12.66%;
    padding-top: 6em;
}
.page-template-page-about .section-2-lavorazioni h2 {
    font-size: var(--size-large);
    line-height: var(--line-large);
}
.page-template-page-about .section-2-lavorazioni .col-subtitle {
    width: 50%;
}
.page-template-page-about .section-2-lavorazioni .col-content {
    width: 50%;
}
.page-template-page-about .video-wrappers {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 0 8.33%;
}
.page-template-page-about .video-wrappers video.video-1 {
    width: 22%;
    border-radius: 1em;
    overflow: hidden;
    margin-top: 30em;
}
.page-template-page-about .video-wrappers video.video-2 {
    width: 30%;
    border-radius: 1em;
    overflow: hidden;
    margin-left: 4em;
    margin-right: 4em;
    margin-bottom: 14em;
}
.page-template-page-about .video-wrappers video.video-3 {
    width: 24%;
    border-radius: 1em;
    overflow: hidden;
    margin-top: 10em;
}




.page-template-page-about .section-3-metodo {
    display: flex;
    flex-direction: row;
    padding: 4em 12.66%;
    padding-top: 6em;
}
.page-template-page-about .section-3-metodo h2 {
    font-size: var(--size-large);
    line-height: var(--line-large);
}
.page-template-page-about .section-3-metodo .col-subtitle {
    width: 50%;
}
.page-template-page-about .section-3-metodo .col-content {
    width: 50%;
}

.page-template-page-about .section-3 {
    padding: 0 8.33%;
    padding-left: calc(12vw);
    padding-right: 14.5vw;
    padding-top: 4em;
    padding-bottom: 4em;
}
.page-template-page-about .section-3 img {
    width: 100%;
    display: block;
}
.page-template-page-about .section-content h2 {
    font-size: var(--size-large);
    line-height: var(--line-large);
}
.page-template-page-about .section-content {
    padding: 2em 8.33%;
    padding: 5em 12.66%;
}
.page-template-page-about .section-content p {
    margin-bottom: 1em;
}

.page-template-page-about .section-4 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-end;
    padding-left: 8.33%;
    padding-right: 8.33%;
    padding-top: 4em;
}
.page-template-page-about .section-4 .col-left {
    width: 35%;
    height: 20vw;
    background-position: center;
    background-size: cover;
    border-radius: 1em;
    margin-bottom: 8vw;
    margin-right: 4vw;
}
.page-template-page-about .section-4 .col-right {
    width: 42%;
    height: 50vw;
    background-position: center;
    background-size: cover;
    border-radius: 1em;
}

.page-template-page-about .section-5 {
    padding-left: 12.66%;
    padding-right: 25%;
    margin-top: 4em;
}
.page-template-page-about .section-5 h2 {
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-bottom: 0.2em;
}
.page-template-page-about .section-5 p {
    margin-bottom: 0.8em;
}





/* PAGE CONTATTI
-----------------------------------------------------------------------*/
.page-template-page-contatti .entry {
    padding: 10em 8.33%;
}
.page-template-page-contatti .entry h2 {
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-top: -0.3em;
    margin-bottom: 0.5em;
}
.page-template-page-contatti .entry p {
    margin-bottom: 1em;
}









/* PAGE LEGAL
-----------------------------------------------------------------------*/
.page-template-page-legal .entry {
    padding: calc(3vw + 20px + 3em) 20px 4em 20px;
}

.page-template-page-legal .entry p,
.page-template-page-legal .entry ul {
    margin-bottom: 1em;
}
.page-template-page-legal .entry ul li {
    list-style: disc;
    margin-left: 1em;
}
.page-template-page-legal .contact-form {
    display: none;
}







/*
-----------------------------------------------------------------------*/
.single-progetti .intro-image {
    height: 35vw;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    padding: 20px;
    font-family: 'SuisseIntlMono';
}
.single-progetti .section-split {
    display: flex;
    flex-direction: row;
    padding: 6em 8.33%;
}
.single-progetti .section-split .col-subtitle {
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-top: -0.3em;
    width: 50%;
}
.single-progetti .section-split .col-subtitle .entry-title {
    padding-right: 2em;
}
.single-progetti .section-split .col-content {
    width: 50%;
}
.single-progetti .section-split .col-content h3 {
    font-size: var(--size-medium);
    line-height: var(--line-medium);
    margin-bottom: 0.8em;
}
.single-progetti .section-split .col-content p {
    margin-bottom: 0.8em;
}

.single-progetti .section-split .technical {
    font-size: var(--size-mono);
    line-height: var(--line-mono);
    color: var(--color-green);
    font-family: 'SuisseIntlMono';
    margin-top: 1em;
}

/**/
.single-progetti .gallery {
    display: flex;
    flex-wrap: wrap;
    padding: 0 8.33%;
}
.single-progetti .gallery .single-image {
    height: 18vw;
    border-radius: 1vw;
    width: calc(33.33% - 20px);
    background-position: center;
    background-size: cover;
    margin-right: 20px;
    margin-bottom: 20px;
    cursor: pointer;
}
.single-progetti .gallery .single-image:nth-of-type(4n+3) {
    margin-left: 33.33%;
}


.single-progetti #fullscreen-image {
    display: none;
    height: 100vh;
    width: 100vw;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 5000;
    background-color: #ffffff7a;
    padding: 20px;
    backdrop-filter: blur(10px);
    cursor: pointer;
}
.single-progetti #fullscreen-image.visible {
    display: flex;
    justify-content: center;
    align-items: center;
}
.single-progetti #fullscreen-image .image-inner {
    height: 100%;
    width: 100%;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}




/*
-----------------------------------------------------------------------*/
.contact-form .form-title {
    font-size: var(--size-large);
    line-height: var(--line-large);
    margin-bottom: 1em;
}
.contact-form {
    background-color: #D2D7DA;
    display: flex;
    flex-direction: row;
    padding: 2em 8.33%;
        padding-right: 0;
    margin-top: 4em;
}
.contact-form .col-form {
    width: 66%;
    padding-top: 5em;
    padding-bottom: 5em;
}
.contact-form .col-image {
    width: 34%;
    background-position: center right;
    background-size: contain;
    background-repeat: no-repeat;
}
.contact-form form.wpcf7-form {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.contact-form form.wpcf7-form .col-half {
    width: 50%;
    padding-right: 20px;
    margin-bottom: 2em;
}
.contact-form form.wpcf7-form .col-half input {
    width: 100%;
    background-color: transparent;
    border: 0;
    border-bottom: 2px solid #000;
    outline: none;
    padding-left: 0;
    padding-bottom: 0.2em;
    font-family: 'HelveticaNowDisplay';
}
.contact-form form.wpcf7-form .col-half input::placeholder { color: #000; }

.contact-form form.wpcf7-form .col-full input {
    background-color: transparent;
    border: 0;
    border-bottom: 2px solid #000;
    outline: none;
    padding-left: 0;
    padding-bottom: 0.2em;
    font-family: 'HelveticaNowDisplay';
    padding-right: 2em;
}





footer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 20px;
    padding-top: 5em;
    font-size: var(--size-small);
    line-height: var(--line-small);
}
footer .general {
    text-align: right;
}
footer .general .social {
    margin-bottom: 1em;
}
footer .general a{
    margin-left: 1em;
}
footer .info {
	width: 30%;
}
footer .loghi {
	width: 50%;
	display: flex;
	justify-content: center;
	margin-left: auto;
}
footer .loghi img {
	height: 3em;
	display: block;
}



@media screen and (max-width: 960px) {
    
    
    :root {
        --size-body: 4vw;
        --line-body: 1.2em; 

        --size-medium: 6vw;
        --line-medium: 1.0em; 

        --size-large: 8vw;
        --line-large: 1.2em; 

        --size-small: 3vw;
        --line-small: 1.2em; 

        --size-mono: 3vw;
        --line-mono: 1.2em;

    }
    
    img.desktop {
        display: none !important;
    }
    img.mobile {
        display: block !important;
    }
    
    
    /**/
    
    #header .main-logo {
        height: 9vw;
    }
    
    #header nav ul li:hover ul,
    #header nav ul li ul {
        width: 100%;
        position: initial;
        background-color: transparent;
        padding-left: 2em;
        padding-top: 0;
    }
        
    #header .toggle-menu {
        display: block;
    }
    #header .toggle-menu img {
        display: block;
        height: 1.5em;
    }
    #header nav#nav {
        display: none;
        flex-direction: initial;
        justify-content: initial;
    }
  
    #header nav#nav.visible {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        height: 100dvh;
        display: flex;
        flex-direction: column;
        background-color: #fff;
        font-size: var(--size-medium);
        line-height: 1.4em;
        padding: 20px;
        padding-top: calc(9vw + 40px);
        z-index: -1;
    }
    #header nav ul {
        flex-direction: column;
    }
    #header nav ul li {
        margin-left: 0;
                margin-bottom: 0.2em;
    }
    #header nav ul li ul li {
        line-height: 1.2em;
        margin-top: 0.5em;
    }
    
    #header .wpml-ls-legacy-list-horizontal {
        margin-left: 0;
        margin-top: 2em;
    }
    #header .wpml-ls-legacy-list-horizontal ul {
        flex-direction: row;
    }
    #header .wpml-ls-legacy-list-horizontal ul li {
        margin-right: 1em;
    }
    

        
    .home .intro-image {
        height: 50svh;
    }
    
    
    .home .block-info {
        flex-direction: column;
    }
    .home .section-1 {
        padding: 4em 20px;
        width: 100%;
    }
    .home .section-7 {
        padding: 4em 20px;
        padding-top: 0;
    }
    .home .section-7 .bubble-wrapper {
        border-radius: 5vw;
    }
    .home .section-7 a {
        width: calc(80%);
        margin-top: 20px;
    }

    .home .section-7 a:nth-of-type(even) {
        margin-left: auto;
        margin-top: 20px;
    }

    
    
    /**/
    .home .section-2 {
        height: 50vw;
    }
    
    
    /**/
    .home .section-3 {
        flex-direction: column;
        padding: 4em 20px;
    }
    .home .section-3 .col-subtitle {
        width: 100%;
    }
    .home .section-3 .col-content {
        width: 100%;
        margin-top: 2em;
    }
    .home .section-8 {
        height: 50vw;
    }
    
    .home .section-4 {
        padding: 0 20px;
        padding-bottom: 6em;
    }
    
    
    /**/
    .contact-form {
        flex-direction: column;
        padding: 2em 20px;
        padding-right: 0;
    }
    .contact-form .col-form {
        width: 100%;
        padding-top: 0;
        padding-bottom: 0;
    }


    
    /* ABOUT
     * *****************************************************/
    .page-template-page-about .intro-archive {
        height: 80vw;
    }
    .page-template-page-about .section-content {
        padding: 4em 20px;
    }
    .page-template-page-about .section-content h2 {
        margin-bottom: 0.5em;
    }
    
    .page-template-page-about .section-1 {
        padding-left: 20px;
        margin-top: 2em;
    }
    .page-template-page-about .section-1 h2 {
        margin-bottom: 0.5em;
    }
    
    .page-template-page-about .section-2 .col-left {
        width: 70%;
        height: 70vw;
        border-radius: 1em;
        margin-top: 12vw;
    }
    .page-template-page-about .section-2 {
        padding: 0 20px;
        padding-left: 4em;
    }
    .page-template-page-about .section-2-lavorazioni {
        flex-direction: column;
            padding: 4em 20px;
    }
    .page-template-page-about .section-2-lavorazioni h2 {
        margin-bottom: 0.5em;
    }
    .page-template-page-about .section-2-lavorazioni .col-content {
        width: 100%;
    }
    .page-template-page-about .video-wrappers {
        padding: 0 20px;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .page-template-page-about .video-wrappers video.video-1 {
        width: 65%;
        margin-top: 0;
    }
    .page-template-page-about .video-wrappers video.video-2 {
        width: 70%;
        margin-left: auto;
        margin-right: 0;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .page-template-page-about .video-wrappers video.video-3 {
        width: 60%;
        margin-left: 4wm;
    }
    

    

    .page-template-page-about .section-2-lavorazioni .col-subtitle {
        width: 100%;
    }
    
    .page-template-page-about .section-3 {
        padding: 0 20px;
    }
    .page-template-page-about .section-3-metodo {
        flex-direction: column;
        padding: 4em 20px;
    }
    .page-template-page-about .section-3-metodo h2 {
        margin-bottom: 0.5em;
    }
    .page-template-page-about .section-3-metodo .col-subtitle {
        width: 100%;
    }
    .page-template-page-about .section-3-metodo .col-content {
        width: 100%;
    }
    .page-template-page-about .section-4 {
        padding: 20px;
    }
    .page-template-page-about .section-4 .col-left {
        width: 45%;
        height: 50vw;
            margin-bottom: 18vw;
    }
    
    .page-template-page-about .section-5 {
        padding-left: 20px;
        padding-right: 20px;
    }

    .page-template-page-about .section-5 h2 {
        margin-bottom: 0.5em;
    }
    


    
    
    
        
    
    /* PAGE CONTATTI
     * *****************************************************/
    .page-template-page-contatti .entry {
        padding: 10em 20px;
    }
    .page-template-page-contatti .entry h2 {
        margin-bottom: 0.5em;
    }


    
    
    
        
    
    /* PROGETTI
     * *****************************************************/
    .archive .intro-bg-image, .page-template-page-about .intro-bg-image {
        height: 80vw;
    }
    .archive .intro-archive, .post-type-archive-progetti .intro-archive {
        height: 80vw;
    }
        
    .archive .section-split, .post-type-archive-progetti .section-split {
        flex-direction: column;
        padding: 4em 20px;
    }
    .archive .section-split .col-subtitle, .post-type-archive-progetti .section-split .col-subtitle {
        width: 100%;
        margin-bottom: 0.5em;
    }
    .archive .section-split .col-subtitle, .post-type-archive-progetti .section-split .col-content {
        width: 100%;
    }
    .archive .section-split .col-content, .post-type-archive-progetti .section-split .col-content {
        width: 100%;
    }
    
    .archive .mobile-filter,
    .post-type-archive-progetti .mobile-filter {
        display: flex;
        flex-direction: row;
        padding: 20px;
        font-family: 'SuisseIntlMono';
        font-size: var(--size-small);
        line-height: var(--line-small);
        text-transform: uppercase;
    }
    .archive .mobile-filter div,
    .post-type-archive-progetti .mobile-filter div {
        margin-right: 20px;
    }
    .archive .mobile-filter div.selected,
    .post-type-archive-progetti .mobile-filter div.selected {
        color: var(--color-blue);
    }
    
    
    .archive .works-wrapper .table-header, .post-type-archive-progetti .works-wrapper .table-header {
        display: none;
    }
    
    .archive .works-wrapper .table-header div:nth-of-type(1), 
    .post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(1)
    .archive .works-wrapper .table-header div:nth-of-type(2),
    .post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(2) {
        width: 100%;
    }
    .archive .works-wrapper .work-row,
    .post-type-archive-progetti .works-wrapper .work-row {
        flex-wrap: wrap;
    }
    
    
    .archive .works-wrapper .work-row div:nth-of-type(1),
    .post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(1),
    .archive .works-wrapper .work-row div:nth-of-type(2),
    .post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(2) {
        width: 100%;
        font-size: 4vw;
        line-height: 1.2em;
    }
    .archive .works-wrapper .work-row div:nth-of-type(2),
    .post-type-archive-progetti .works-wrapper .work-row div:nth-of-type(2) {
        border-top: 0;
        padding-top: 0;
    }

    .archive .works-wrapper .table-header div:nth-of-type(3),
    .post-type-archive-progetti .works-wrapper .table-header div:nth-of-type(3) {
        display: none;
    }
    
    .archive .works-wrapper .work-row div.image-wrapper,
    .post-type-archive-progetti .works-wrapper .work-row div.image-wrapper {
        display: none;
    }
    .archive .works-wrapper.visual .work-row div.image-wrapper,
    .post-type-archive-progetti .works-wrapper.visual .work-row div.image-wrapper {
        width: 100%;
        display: flex !important;
        flex-direction: row;
        border-top: 0;
        padding-top: 0;
    }
    .archive .works-wrapper .work-row div.image-wrapper .inner-image,
    .post-type-archive-progetti .works-wrapper .work-row div.image-wrapper .inner-image {
            min-height: 26vw;
    }
    .archive .works-wrapper, .post-type-archive-progetti .works-wrapper {
        padding: 0 20px;
    }
    
    
    
    
    
    /* PROGETTI
     * *****************************************************/
    .single-progetti .intro-image {
        height: 80vw;
    }
        
    .single-progetti .section-split {
        flex-direction: column;
        padding: 4em 20px;
    }
    .single-progetti .section-split .col-subtitle {
        width: 100%;
    }
    .single-progetti .section-split .col-subtitle .entry-title {
        padding: 0;
    }
    .single-progetti .section-split .col-content {
        width: 100%;
    }
    .single-progetti .gallery {
        padding: 0 20px;
    }
    .single-progetti .gallery .single-image {
        height: calc(50vw - 20px);
        border-radius: 5vw;
        width: calc(50% - 10px);
    }
    .single-progetti .gallery .single-image:nth-of-type(even) {
        margin-right: 0;
    }

    .single-progetti .gallery .single-image:nth-of-type(4n+3) {
        margin-left: 0;
    }
    
    
    
    /* PROGETTI
     * *****************************************************/
    footer {
        flex-wrap: wrap;
            padding-top: 20px;
    }
    footer .info {
        width: 70%;
        order: 1;
    }
    footer .general {
        width: 30%;
        order: 2;
    }
    footer .loghi {
        width: 100%;
        order: 3;
        justify-content: flex-start;
        margin-left: initial;
        margin-top: 20px;
    }
    
    footer .loghi img {
	height:initial;
    }

    
    
}

