*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, blockquote, th, td {
    margin: 0;
    padding: 0;
    direction: ltr;
}

html {
    height: 100%;
    font-size: 12px;
    letter-spacing: 1.3px;
}

body {
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    font-family: 'Roboto', sans-serif;    
    letter-spacing: 1.6px;    
    color: #000;
    position: relative;
    min-height: 100%;
    overflow-x: hidden;
}

@media screen and (max-width: 1200px) {
    html {
        font-size: 12px;
    }
}

body.home {
    background-color: #000;
    color: #fff;
}

.loading * {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
}

p {
    line-height: 2em;
    font-weight: 300;
}

a {
    text-decoration: none;
    color: #000;
    outline: none;
    -webkit-transition: opacity 200ms ease-in-out;
    -moz-transition: opacity 200ms ease-in-out;
    -o-transition: opacity 200ms ease-in-out;
    -ms-transition: opacity 200ms ease-in-out;
    transition: opacity 200ms ease-in-out;
}

a img {
    opacity: 1;
    transition: opacity 0.4s ease-in-out;
    -webkit-backface-visibility: hidden;
}

/* a:hover {
    opacity: 0.8;
    -webkit-backface-visibility: hidden;
} */

a.no-hover, a.no-hover:hover img, a.no-hover:hover img.lazy.loading, a.no-hover:hover img.lazy.loaded {
    opacity: 1 !important;
}

img.bwhover {
    opacity: 1 !important;
}

img.bwhover:hover {
    filter: none;
}

.nolink>a {
    cursor: default;
    pointer-events: none;
}

img.lazy {
    transition: opacity 200ms ease-in-out;
    opacity: 0;
}

img.lazy.loading, img.lazy.loaded {
    opacity: 1;
}

.hidden {
    display: none !important;
}

.opaco {
    opacity: 0;
}

.disabled {
    pointer-events: none;
    cursor: default;
}

.align-left {
    text-align: left;
}

.align-right {
    text-align: right;
}

.align-center {
    text-align: center;
}

.vertical-center {
    display: table;
    width: 100%;
    height: 100%;
}

.vertical-center>div {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.left {
    float: left;
}

.right {
    float: right;
}

.clear:before, .clear:after {
    content: " ";
    display: table;
}

.clear:after {
    clear: both;
}

.clear {
    *zoom: 1;
}

.underline {
    display: inline-block;
    border-bottom: 1px solid #000;
}

.loading .overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #fff;
    z-index: 100;
    display: none;
}

.loading .overlay {
    display: block;
}

.fadein {
    -webkit-transition: opacity 600ms ease-in;
    -moz-transition: opacity 600ms ease-in;
    -o-transition: opacity 600ms ease-in;
    -ms-transition: opacity 600ms ease-in;
    transition: opacity 600ms ease-in;
}

.autofadein {
    -webkit-animation: fadein 600ms ease-in;
    -moz-animation: fadein 600ms ease-in;
    -o-animation: fadein 600ms ease-in;
    animation: fadein 600ms ease-in;
}

.autofadeout {
    -webkit-animation: fadeout 600ms ease-out;
    -moz-animation: fadeout 600ms ease-out;
    -o-animation: fadeout 600ms ease-out;
    animation: fadeout 600ms ease-out;
}

@-webkit-keyframes fadein {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-moz-keyframes fadein {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-o-keyframes fadein {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadein {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes fadeout {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@-moz-keyframes fadeout {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@-o-keyframes fadeout {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes fadeout {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.loader {
    position: fixed;
    top: 0;
    z-index: 200;
    width: 100vw;
    height: 100vh;
    z-index: 999;
}

.spinner {
    position: absolute;
    z-index: 200;
    width: 100%;
    height: 100%;
    z-index: 999;
}

.spinner:before {
    content: 'Loading';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 24px;
    margin-top: -10px;
    margin-left: -10px;
}

.spinner:not(:required):before {
    content: '';
    border-radius: 50%;
    border-top: 2px solid #000 !important;
    border-right: 2px solid transparent;
    -webkit-animation: spinner .6s linear infinite;
    -moz-animation: spinner .6s linear infinite;
    -o-animation: spinner .6s linear infinite;
    animation: spinner .6s linear infinite;
}

@keyframes spinner {
    to {
        transform: rotate(360deg);
    }
}

@-webkit-keyframes spinner {
    to {
        -webkit-transform: rotate(360deg);
    }
}

.progress {
    display: inline-block;
}

h1, h2, h3 {
    font-family: 'Arsenal', sans-serif;
    font-weight: 500;
}

h1 {
    letter-spacing: 0.15em;
    font-size: 4.8em;
    line-height: 1em;
    /* font-weight: 300; */
    margin-bottom: 0.5em;
}

h2 {
    letter-spacing: 0.1em;
    font-size: 4em;
    /* font-weight: 300; */
}

h3 {
    font-size: 2.2em;
    letter-spacing: 0.15em;
    /* font-weight: 300; */
}

h2.big {
    font-size: 2.6em;
}

h4 {
    font-size: 1.5em;
    font-weight: 400;
    margin-top: -0.1em;
}

h4.subtitle {
    border-bottom: 1px solid #bb9c6e;
    display: inline-block;
    clear: both;
}

h2.title {
    margin-top: 1.5em;
    margin-bottom: 1em;
    display: block;
    clear: both;
}

h5 {
    font-size: 1em;
    letter-spacing: 0.15em;
    font-weight: 300;
}

h6, h7 {
    font-size: 12px;
    line-height: 1.5em;
    font-weight: 400;
}

picture {
    margin: 0;
    padding: 0;
}

.small {
    font-weight: normal;
    font-size: 0.8em;
}

.full {
    width: 100%;
    height: auto;
    display: block;
}

.padding-top {
    padding-top: 4vh;
}

.padding-bottom {
    padding-bottom: 4vh;
}

.padding-left {
    padding-left: 4vw;
}

.padding-right {
    padding-right: 4vw;
}

.full-width {
    width: 100vw;
}

.full-height {
    height: 100vh;
    overflow: hidden;
}

.overflow-hidden {
    overflow: hidden;
}

.object-fit {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.max100 {
    max-width: 100%;
    height: auto;
    display: block;
}

.max70 {
    max-width: 100%;
    width: 70%;
    height: auto;
    display: block;
}

.embed-responsive {
    position: relative;
    display: block;
    height: 0;
    padding: 0;
    overflow: hidden;
}

.embed-responsive .embed-responsive-item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border: 0;
}

.embed-responsive-16by9 {
    padding-bottom: 56.25%;
}

.embed-responsive-4by3 {
    padding-bottom: 75%;
}

.embed-responsive-oggioni {
    padding-bottom: 32%;
}

.inline-block {
    display: inline-block;
}

.row {
    display: flex;
    margin: -2em -2em 0 -2em;
}

.column {
    flex: 1;
    padding: 2em;
}

.column-full {
    min-width: 100%;
    max-width: 100%;
}

.column-half {
    min-width: 50%;
    max-width: 50%;
}

.column-onethird {
    min-width: 33.33%;
    max-width: 33.33%;
}

.column-twothirds {
    min-width: 66.66%;
    max-width: 66.66%;
}

.column-onefourth {
    min-width: 25%;
    max-width: 25%;
}

.column-threefourths {
    min-width: 75%;
    max-width: 75%;
}

.column h2 {
    font-size: 3.3em;
}

.column h3 {
    font-size: 1.65em;
}

.column h4 {
    font-size: 1.23em;
    font-style: italic;
}

.column h4 a, .column h6 a {
    border-bottom: 1px solid #000;
}

.column h6 {
    margin-top: 1.3em;
}

/* .black, .black:before, .black:after {
	color: #242424 !important;
	border-color: #242424 !important;
}

.white, .white:before, .white:after {
	color: #fff !important;
	border-color: #fff !important;
} */

.gray, .gray:before, .gray:after {
    color: #999 !important;
    border-color: #999 !important;
}

.lightgray, .lightgray:before, .lightgray:after {
    color: #dbdbdb !important;
    border-color: #dbdbdb !important;
}

.light {
    font-weight: 300;
}

.separator {
    padding: 0.5em;
}

.uppercase {
    text-transform: uppercase;
}

.square {
    position: relative;
    width: 100%;
}

.square:after {
    content: '';
    display: block;
    padding-bottom: 100%;
}

.square>* {
    position: absolute;
    width: 100%;
    height: 100%;
}

picture.full img {
    width: 100%;
    height: auto;
}

.bg-white {
    background-color: #fff;
}

.reveal {
    -webkit-transition: transform 1s, opacity 1s;
    transition: transform 1s, opacity 1s;
    -o-transition: transform 1s, opacity 1s;
    -ms-transition: transform 1s, opacity 1s;
    -moz-transition: transform 1s, opacity 1s;
    opacity: 0;
    transform: matrix3d(1, 0, 0, 0, 0, 1, .208378, 0, 0, -.173648, .984808, 0, 0, 90, 0, 1);
}

.reveal.visible {
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
    transform-origin: 50% 50% 0px;
}

.delay300 {
    transition-delay: 300ms;
}

.delay600 {
    transition-delay: 600ms;
}

.delay900 {
    transition-delay: 900ms;
}

.position-relative {
    position: relative;
}

.position-absolute {
    position: absolute;
}

.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
}

@media (min-width: 768px) {
    .container {
        width: 92%;
    }
}

/* @media (min-width: 992px) {
    .container {
        width: 970px;
    }
}

@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
} */

.text-animate-bottom {
    overflow: hidden;
}

.text-animate-bottom>* {
    display: inline-block;
    opacity: 0;
    transform: translateY(100%);
    animation: animate-bottom 600ms ease-out;
    animation-fill-mode: forwards;
}

@keyframes animate-bottom {
    0% {
        opacity: 0;
        transform: translateY(100%);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.text-transition-bottom {
    overflow: hidden;
}

.text-transition-bottom>* {
    opacity: 0;
    transform: translateY(100%);
    transition: all 600ms ease-out;
}

.text-transition-bottom.visible>* {
    opacity: 1;
    transform: translateY(0);
}

/*** header-footer ***/

.header-container {
    position: fixed;
    z-index: 1001;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    transition: all 200ms ease-in-out;
    transform: translateY(0);
}

.header-container.bgwhite {
    background-color: #fff;
}

.header-container::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100vw;
    height: 0;
    z-index: -1;
    opacity: 0;
    background: rgba(27, 27, 27, 0.9);
    transition: all 400ms ease-in-out;
}

.header-container::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 10em;
    width: 100vw;
    height: 0;
    z-index: -1;
    opacity: 0;
    border-top: 1px solid #fff;
    transition: all 400ms ease-in-out;
}

@media (min-width: 1024px) {
    .header-container.active::before {
        opacity: 1;
        height: 32rem;
    }

    .header-container.active::after {
        opacity: 1;
    }
}

.header-container:not(.active):hover::before {
    opacity: 1;
    height: 100%;
}

.scrolling.header-container {
    transform: translateY(-100%);
}

.fixed.header-container {
    position: fixed;
}

.header {
    position: relative;
}

.header__top {
    display: flex;
    justify-content: space-between;
    margin-top: 1em;
    font-size: 12px;
    font-weight: 400;
}

.header__logo a {
    width: 9vw;
    display: inline-block;
}

.header__logo a:hover {
    opacity: 1;
}

.header__logo svg {
    width: 100%;
    height: auto;
}

.header__logo svg path, .header__logo svg polygon, .header__logo svg rect {
    fill: #000;
    stroke: #000;
}

.white .header__logo svg path, .white .header__logo svg polygon, .white .header__logo svg rect, .header-container:hover .header__logo svg path, .header-container:hover .header__logo svg polygon, .header-container:hover .header__logo svg rect {
    fill: #fff;
    stroke: #fff;
}

.gradient-black {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0.83+0,0+100 */
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d4000000', endColorstr='#00000000', GradientType=0);
    /* IE6-9 */
}

.menu {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.menu, .menu .sub-menu, .menu-footer, .menu-footer .sub-menu, .menu-product, .language-chooser {
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu-link {
    padding-top: 0.2em;
    display: inline-block;
    border-bottom: 1px solid #bb9c6e;
}

.menu>li {
    text-align: left;
    padding: 0;
    position: relative;
}

.menu>li:first-child {
    padding-left: 0;
}

.menu>li:last-child {
    padding-right: 0;
}

.menu>li>a {
    display: inline-block;
}

.menu-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 3em;
    margin-bottom: 3em;
}

.qtranxs_widget {
    padding-top: 1em;
}

.menu-main {
    flex: 0.5;
    display: flex;
    justify-content: space-between;
    padding-top: 1em;
}

@media screen and (max-width: 1800px) {
    .menu-main {
        flex: 0.55;
    }
}

@media screen and (max-width: 1600px) {
    .menu-main {
        flex: 0.65;
    }
}

@media screen and (max-width: 1400px) {
    .menu-main {
        flex: 0.7;
    }
}

@media screen and (max-width: 1200px) {
    .menu-main {
        flex: 0.75;
    }
}

.menu-main li a {
    font-weight: 400;
    color: #000;
    padding-bottom: 0.3em;
    border-bottom: 1px solid transparent;
    transition: border-color 200ms ease-in-out;
}

.black .menu-main li a, .black #menu-topleft li a, .black #menu-topright li a {
    color: #000;
}

.white .menu-main li a, .header-container:hover .menu-main li a, .white #menu-topleft li a, .header-container:hover #menu-topleft li a, .white #menu-topright li a, .header-container:hover #menu-topright li a {
    color: #fff;
}

.black .menu-main>li:active>a, .black .menu-main>li.featured>a, .black .menu-product>li.current-menu-item>a {
    opacity: 1;
    border-bottom: 1px solid #000;
}

.white .menu-main>li:hover>a, .white .menu-main>li:active>a, .white .menu-main>li.featured>a, .white .menu-product>li.current-menu-item>a, .black .menu-main>li:hover>a {
    opacity: 1;
    border-bottom: 1px solid #fff;
}

.white .menu-main>li:hover>a, .white .menu-main>li:active>a, .white .menu-main>li.featured>a, .white .menu-product>li.current-menu-item>a {
    opacity: 1;
    border-bottom: 1px solid #fff;
}

.menu-main .sub-menu {
    padding-top: 6em;
    margin-left: -2px;
    display: none;
    position: absolute;
    z-index: 4;
    min-width: 30vw;
    width: 100%;
    column-count: 2;
}

.menu-main .sub-menu.active {
    display: block;
}

.menu-main li.twocolumns .sub-menu {
    column-count: 2;
}

/* .menu-main>li:hover>.sub-menu {
    display: block;       
} */

.menu-main>li>.sub-menu li {
    transition: opacity 400ms ease-out;
    margin-bottom: 0.4em;
}

.menu-main .sub-menu li a {
    position: relative;
    display: inline-block;
    padding: 0.3em 0;
    border-bottom: 1px solid transparent;
}

.menu-main .sub-menu li a:hover {
    opacity: 1;
    border-bottom: 1px solid #000;
}

.white .menu-main .sub-menu li a:hover, .header-container:hover .menu-main .sub-menu li a:hover {
    opacity: 1;
    border-bottom: 1px solid #fff;
}

.menu-main #searchform {
    position: relative;
}

.menu-main input::placeholder, .black .menu-main input::placeholder, .header-container:hover .menu-main input::placeholder {
    transition: color 400ms ease-in-out;
    color: #000;
    font-size: 1em;
}

.menu-main input[type="text"], .black .menu-main input[type="text"], .header-container:hover .menu-main input[type="text"] {
    transition: color 400ms ease-in-out;
    background: none;
    border: none;
    color: #000;
    padding: 0 0 0.3em 0;
    outline: none;
    width: 8vw;
    border-bottom: 1px solid #000;
    font-size: 1em;
}

.menu-main .fa-search, .black .menu-main .fa-search, .header-container:hover .menu-main .fa-search {
    transition: color 400ms ease-in-out;
    position: absolute;
    right: 0;
    color: #000;
}

.white .menu-main .fa-search {
    color: #fff;
}

.white .menu-main input::placeholder {
    color: #fff;
}

.white .menu-main input[type="text"] {
    color: #fff;
    border-bottom: 1px solid #fff;
}

.category-image {
    position: absolute;
    top: 6.2vw;
    right: 10.8vw;
    width: 16vw;
    height: 9vw;
    overflow: hidden;
    transition: all 400ms ease-in-out;
}

.category-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.language-chooser li {
    display: inline-block;
    text-transform: uppercase;
    font-size: 1em;
    margin-right: 1em;
}

.language-chooser li:last-child {
    margin-right: 0;
}

.language-chooser li.active {
    border-bottom: 1px solid #000;
}

.white .language-chooser li a, .header-container:hover .language-chooser li a {
    color: #fff;
}

.white .language-chooser li.active, .header-container:hover .language-chooser li.active, .footer .language-chooser li.active {
    border-bottom: 1px solid #fff;
}

/* #menu-topright > li:last-child:before {
    content: '/';
    display: inline-block;
    padding: 0 0.5em;
} */

.footer {
    margin-top: 0;
    padding: 5em 0 3em 0;
    background-color: #212121;
    color: #9c9c9c;
    font-size: 1em;
}

.footer a {
    color: #9c9c9c;
}

.footer h4 {
    color: #fff;
}

.footer p {
    line-height: 1.4em;
}

.footer-menu-container {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.5em;
}

.menu-footer {
    margin-top: 1em;
}

.menu-footer li {
    list-style: none;    
}

.menu-footer li a {
    padding: 0 0 1em 0;
    display: block
}

.footer-menu__item {
    flex-basis: 20%;
    padding-right: 4rem;
}

.footer-menu__item:last-child {
    padding-right: 0;
}

.footer input[type="text"] {
    background: transparent;
    border: none;
    border-bottom: 1px solid #fff;
    color: #fff;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
    outline: none;
}

.footer input[type="submit"] {
    background: transparent;
    border: none;
    border-bottom: 1px solid #fff;
    color: #fff;
    padding: 0 0 0.5em 0;        
    outline: none;
    font-size: 1rem;
    margin-top: 0.5em;
}

.footer .wpcf7-list-item,
.footer .wpcf7-list-item input {
    margin: 0;
}

.footer .wpcf7-form p {
    display: flex;
    gap: 1em;        
}

.footer .wpcf7-form p span {
    font-size: 0.95em;
    line-height: 1em;
}

.footer .wpcf7 form .wpcf7-response-output {
    margin: 0;
    padding: 0;
    border: none;
}

.footer-bottom-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 7em;
    margin-bottom: 1.5em;
    gap: 0;    
}

.footer-bottom__item {
    flex-basis: 20%;
    padding-right: 4rem;
}

.footer-bottom__item:last-child {
    padding-right: 0;
}

.footer-bottom__item:nth-child(2) {
    flex-basis: 40%;
}

.footer .qtranxs_widget {
    padding-top: 0;
}

.menu-bottom, 
.menu-bottom li {
    list-style: none;    
}

.menu-bottom {
    display: flex;
    flex-direction: row;
    gap: 0;
}

.menu-bottom > li {
    margin-right: 2em;
}

.menu-bottom > li:last-child {
    margin-right: 0;
}

.footer-bottom__item:last-child {
    text-align: right;
}

.footer-bottom-container .language-chooser li a {
    color: #fff;
}

/*** /header-footer ***/

.content {
    position: relative;
    min-height: calc(100vh - 350px);
}

.content-top {
    margin-top: 9vw;
}

.flickity-prev-next-button:disabled {
    display: none;
}

.flickity-enabled.is-fade .flickity-viewport {
    cursor: default;
}

.flickity-button-icon {
    display: none;
}

.flickity-button.flickity-prev-next-button {
    background-repeat: no-repeat;
    background-color: transparent;
    border: none;
    border-radius: 0;
}

.black .flickity-button.flickity-prev-next-button.previous,
.bgwhite .flickity-button.flickity-prev-next-button.previous {
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ibGVmdEFycm93LXN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjUuMSIgaGVpZ2h0PSIyMCI+PHBhdGggZD0iTTI1LjEgMTEuMkg0LjNsOSA4LjhIMTBMMCAxMCAxMCAwaDMuM2wtOSA4LjloMjAuOHYyLjN6Ii8+PC9zdmc+);
    background-position: center left;
    left: 2em;
}

.flickity-button.flickity-prev-next-button.previous {
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ibGVmdEFycm93LXN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjUuMSIgaGVpZ2h0PSIyMCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTI1LjEgMTEuMkg0LjNsOSA4LjhIMTBMMCAxMCAxMCAwaDMuM2wtOSA4LjloMjAuOHYyLjN6Ii8+PC9zdmc+);
    background-position: center left;
}

.black .flickity-button.flickity-prev-next-button.next,
.bgwhite .flickity-button.flickity-prev-next-button.next {
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0icmlnaHRBcnJvdy1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI1LjEiIGhlaWdodD0iMjAiPjxwYXRoIGQ9Ik0wIDguOGgyMC43TDExLjggMGgzLjNsMTAgMTAtMTAgMTBoLTMuM2w5LTguOUgwVjguOHoiLz48L3N2Zz4=);
    background-position: center right;
    right: 3em;
}

.flickity-button.flickity-prev-next-button.next {
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0icmlnaHRBcnJvdy1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI1LjEiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDguOGgyMC43TDExLjggMGgzLjNsMTAgMTAtMTAgMTBoLTMuM2w5LTguOUgwVjguOHoiLz48L3N2Zz4=);
    background-position: center right;
}

.homepage-slider {
    width: 100%;
    height: 100vh;
    position: relative;
}

.homepage-slider__item {
    width: 100%;
    height: 100%;
    position: relative;
}

.homepage-slider__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.homepage-slider__item .caption {
    position: absolute;
    bottom: 6em;
    width: 50vw;
    min-width: 250px;
    text-align: left;
}

.homepage-slider__item .caption p {
    font-size: 1.2em;
    font-weight: 300;
}

.homepage-slider__item .caption.left {
    left: 14em;
}

.homepage-slider__item .caption.right {
    right: 14em;
}

.homepage-slider__item .caption.center {
    left: 50%;
    transform: translateX(-50%);
}

.flickity-button {
    outline: none;
}

.flickity-button:focus {
    box-shadow: none;
}

.fullscreen-image {
    width: 100%;
    height: 100%;
}

.fullscreen-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fullscreen-video, .fullscreen-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* .fullscreen-video video {
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);    
} */

section {
    position: relative;
    overflow: hidden;
    background-color: #000;
}

.arrow-down {
    position: absolute;
    display: block !important;
    z-index: 99999;
    bottom: 3em;
    content: '';
    width: 2em !important;
    height: 2em !important;
    background-image: url(../images/arrow-down-white.svg);
    background-repeat: no-repeat;
    background-size: 2em 2em;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    animation-name: arrowdown;
    animation-duration: 2000ms;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-play-state: running;
    animation-delay: 600ms;
}

.arrow-down.black {
    background-image: url(../images/arrow-down-black.svg);
}

@keyframes arrowdown {
    0% {
        transform: translate3d(-50%, 0, 0);
        opacity: 0;
    }

    33% {
        opacity: 1;
    }

    66% {
        opacity: 1;
    }

    100% {
        transform: translate3d(-50%, 30px, 0);
        opacity: 0
    }
}

.magnet:nth-last-child(2) .arrow-down {
    display: none !important;
}

.arrow-up {
    position: fixed;
    display: block !important;
    z-index: 99999;
    bottom: 2.5em;
    content: '';
    width: 2em !important;
    height: 2em !important;
    background-image: url(../images/arrow-down-white.svg);
    background-repeat: no-repeat;
    background-size: 2em 2em;
    right: 4em;
    transform: rotate(180deg);
    cursor: pointer;
    opacity: 0;
    transition: opacity 400ms ease-in-out;
}

.arrow-up.visible {
    opacity: 1;
}

.fullwidth {
    width: 100%;
}

.fullheight {
    height: 100vh;
}

.fullheight .halfgrid__item {
    height: 100%;
}

.halfheight {
    height: 50vh;
}

section.black {
    color: #000;
}

section.black a {
    color: #000;
}

section.white {
    color: #fff;
}

section.white a {
    color: #fff;
}

.halfgrid {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.halfgrid__item {
    flex-basis: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.halfgrid__item .testo {
    padding: 15em;
}

.halfgrid__item.white,
.halfgrid__item.white .caption {
    color: #fff;
}

.halfgrid__item.black,
.halfgrid__item.black .caption {
    color: #000 !important;
}

.bgwhite {
    background-color: #fff;
}

.bgblack {
    background-color: #212121;
}

.bggrey {
    background-color: rgba(0, 0, 0, 0.35);
}

figure {
    margin: 0;
}

section .caption {
    width: 100%;
    position: absolute;
    bottom: 6em;
}

.halfheight .caption {
    position: relative;
    bottom: auto;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

section .caption p {
    font-size: 1em;
    font-weight: 300;
}

section .caption.left {
    left: 10em;
}

section .caption.right {
    right: 10em;
}

/* .parallax {
    z-index: -1;
} */

.section-riga {
    display: none;
}

.home .section-riga {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;    
}

.home section.news {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: #dbdcdb;
    color: #000;
    margin-top: 0;
}

.home section.news>div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: calc(100% - 15em);
}

.home .news__item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 6em;
}

.home .news__item__date {
    flex: 1;
    min-width: 6em;
    text-transform: uppercase;
}

.home .news__item__description {
    flex: 4;
    padding: 0 4em;
}

.home .news__item__description h4 {
    text-transform: uppercase;
    font-weight: 400;
}

.home .news__item__image {
    flex: 2;
    width: 100%;
    height: auto;
}

.home .news__item__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: top center;
}

section.social {
    background-color: #151515;
}

.social-grid {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 -4em;
}

.social-grid__item {
    padding: 2em;
    position: relative;
    text-align: center;
    /*     max-width: calc(50vw - 8em); */
}

.break-column {
    flex-basis: 100%;
    width: 0;
}

.social-grid__item img {
    width: auto;
    height: 25vh;
}

@media (min-aspect-ratio: 2/1) {
    .social-grid__item img {
        height: 35vh;
    }
}

@media (max-width: 1023px) {
    .social-grid__item img {
        width: 40vw;
        height: calc(40vw * 0.6);
    }
}

.social-caption {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 5em;
    text-align: center;
    color: #fff;
}

.splash {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.splash-image {
    width: 100%;
    height: 100%;
    position: relative;
}

.splash-image figure {
    height: 100%;
}

.splash-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.splash-image.contain img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.splash-image video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.padding-boxed .splash-image video {
    object-fit: contain;
}

.splash-image .caption {
    position: absolute;
    bottom: 0;
    width: 100%;
    min-width: 250px;
    text-align: center;
    padding: 4em 14em;
}

.halfgrid__item .splash-image .caption {
    bottom: 2rem;
}

.splash-image.contain .caption {
    width: auto;
    min-width: auto;
}

.splash-image .caption p {
    font-size: 1.2em;
    font-weight: 300;
}

.splash-image .caption.left {
    left: 14em;
}

.splash-image .caption.right {
    right: 14em;
}

.splash-image .caption.center {
    left: 50%;
    transform: translateX(-50%);
}

.splash-image .caption .title {
    letter-spacing: 0.15em;
    font-size: 4.8em;
    line-height: 1em;
    font-weight: 300;
    margin-bottom: 0.3em;
    text-transform: uppercase;
}

.splash-image .caption.center .title, .splash-image .caption.center .subtitle {
    text-align: center;
}

.splash-image .caption .subtitle {
    font-size: 3em;
    letter-spacing: 0.15em;
    font-weight: 300;
    text-transform: uppercase;
}

.page-template-page-sezioni figure,
figure.zoom {
    overflow: hidden;
}

.page-template-page-sezioni figure img,
figure.zoom img {
    transform: scale(1);
    transition: all 800ms ease-in-out;
    display: block;
}

.page-template-page-sezioni figure:hover img,
figure.zoom:hover img {
    transform: scale(1.1);
}

.full-image {
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4em;
    padding: 10rem 8rem
}

.full-image figure {
    height: 100%;
    width: auto;
}

.halfgrid .halfgrid__item:nth-child(2) .full-image figure {
    height: 100%;
}

.full-image img {
    height: 100%;
    width: auto;
}

.full-image-contain img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.full-image .caption {
    position: static;
    padding: 0 3rem;
}

.full-image.testoup figure {
    order: 2;
}

.full-image.testoup .caption {
    order: 1;
}

section.product-list {
    background-color: #fff;
    min-height: 100vh;
    padding: 13em 0;
}

section.white .caption, .homepage-slider__item.white .caption {
    color: #fff;
}

section.black .homepage-slider__item.black .caption {
    color: #000;
}

.video-hover {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-hover-container {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-hover-container.contain {
    object-fit: contain;
    height: auto;
}

.video-hover-container.paused::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/video_play_small.png);
    background-size: cover;
    background-position: center;
    cursor: pointer;
}

.products-list-cat {
    padding: 3rem 0;
}

.product-grid {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    margin: 2em -2em;
}

.product-grid__item {
    padding: 4em 2em;
    position: relative;
    text-align: center;
    flex-basis: 33.33%;
    width: 33.33%;
}

.product-grid__item figure, .product-grid__item img {
    width: auto;
    height: 22vh;
    padding: 0;
    margin: 0;
}

.product-grid__item img {
    padding-bottom: 1em;
}

.product-grid__item figcaption {
    text-align: center;
    color: #000;
    font-weight: 600;
    text-transform: uppercase;
}

section.product {
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.product .product-view {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.product .product-view>div {
    flex-basis: 50%;
    width: 50%;
}

.product-full-image {
    width: 100%;
    height: 100%;
    text-align: center;
    padding: 12rem 0;
}

.product-galleria {
    position: relative;
    width: 100%;
    height: 100%;
}

.product-slider {
    position: relative;
    width: 100%;
    height: 100%;
}

.product-slider__item {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-slider__item img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: calc(100vh - 20rem);
    object-fit: contain;
}

.product-slider .owl-item {
    opacity: 0;
    transition: opacity 400ms ease-in-out;
}

.product-slider .owl-item.active {
    opacity: 1;
}

.product-slider .owl-dots {
    position: static;
    width: 100%;
    padding: 0 4em 0 0;
    margin: 1em 0;
    list-style: none;
    text-align: center;
}

.product-slider .owl-dots .owl-dot {
    display: inline-block;
    margin: 0 4px;
    cursor: pointer;
    color: transparent;
    font-size: 0.85em;
    border-bottom: 3px solid rgba(0, 0, 0, 0.5);
}

.product-slider .owl-dots .owl-dot span,
.product-slider .owl-dots .owl-dot.active span,
.product-slider .owl-dots .owl-dot:hover span {
    background: transparent;
}

.product-slider .owl-dots .owl-dot.active {
    border-bottom: 3px solid #000;
}

.product-slider .owl-nav .owl-dot:only-child {
    display: none;
}

.product-info {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 6vw;
    max-width: 700px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    /*     overflow: hidden; */
}

.product-info__titolo {
    text-align: center;
}

.product-info__descrizione {
    padding-top: 1em;
}

.product-info__links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 4em;
}

.product-info__links>a {
    margin-bottom: 1em;
    padding: 0 1em;
}

section.product-galleria-ambientata {
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.product-ambientata-slider {
    position: relative;
    width: 100%;
    height: auto;
}

.product-ambientata-slider__item {
    position: relative;
    padding: 2em;
    /* filter: brightness(0.5); */
    transition: filter 400ms ease-in-out;
}

/* .product-ambientata-slider .owl-item.active.center .product-ambientata-slider__item {
    filter: none;
} */

.product-ambientata-slider__item img {
    width: auto !important;
    height: 70vh;
    object-fit: contain;
}

.product-ambientata-slider .owl-nav,
.product-related-slider .owl-nav {
    display: flex !important;
    pointer-events: auto !important;
}

.product-ambientata-slider.grid {
    display: flex;
    justify-content: center;   
    margin-bottom: 4rem; 
}

.product-ambientata-slider.grid .product-ambientata-slider__item img {
    width: 100%;
    height: 100%;
    max-height: 70vh;
}

.owl-carousel .owl-nav {
    position: absolute;
    z-index: 0;    
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 20px);    
}

.owl-carousel .owl-nav [class*=owl-]:hover {
    background: none;
}

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next {
    background-repeat: no-repeat !important;
    background-color: transparent !important;
    border: none;
    border-radius: 0;
    width: 44px;
    height: 44px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;        
    font-size: 5rem;
}

.owl-carousel .owl-nav .owl-prev span,
.owl-carousel .owl-nav .owl-next span {
    display: none;
}

.owl-carousel .owl-nav .owl-prev {
    left: 0;
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ibGVmdEFycm93LXN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjUuMSIgaGVpZ2h0PSIyMCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTI1LjEgMTEuMkg0LjNsOSA4LjhIMTBMMCAxMCAxMCAwaDMuM2wtOSA4LjloMjAuOHYyLjN6Ii8+PC9zdmc+) !important;
    background-position: center left !important;
}

.owl-carousel .owl-nav .owl-next {
    right: 0;
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0icmlnaHRBcnJvdy1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI1LjEiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDguOGgyMC43TDExLjggMGgzLjNsMTAgMTAtMTAgMTBoLTMuM2w5LTguOUgwVjguOHoiLz48L3N2Zz4=) !important;
    background-position: center right !important;
}

.product-related-slider .owl-nav .owl-prev {
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ibGVmdEFycm93LXN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjUuMSIgaGVpZ2h0PSIyMCI+PHBhdGggZD0iTTI1LjEgMTEuMkg0LjNsOSA4LjhIMTBMMCAxMCAxMCAwaDMuM2wtOSA4LjloMjAuOHYyLjN6Ii8+PC9zdmc+) !important;
    background-position: center left !important;
}

.product-related-slider .owl-nav .owl-next {
    background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0icmlnaHRBcnJvdy1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI1LjEiIGhlaWdodD0iMjAiPjxwYXRoIGQ9Ik0wIDguOGgyMC43TDExLjggMGgzLjNsMTAgMTAtMTAgMTBoLTMuM2w5LTguOUgwVjguOHoiLz48L3N2Zz4=) !important;
    background-position: center right !important;
}

section.product-related {
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.product-related-slider {
    position: relative;
    width: 100%;
    height: auto;
}

.product-related-slider__item {
    position: relative;
    padding: 2em;
    transition: filter 400ms ease-in-out;
}

.product-related-slider__item img {
    width: auto;
    height: 22vh;
    object-fit: contain;
}

.product-related-slider__item h5 {
    text-align: center;
    margin-top: 1em;
}

.product-related-slider__item a {
    display: block;
}

.product-related > h5 {
    margin-bottom: 2em;
}

.product-related-slider.grid {
    display: flex;
    justify-content: center;   
    margin-bottom: 4rem; 
}

.product-related-slider.grid .product-related-slider__item img {
    width: 100%;
    height: 100%;
    max-height: 22vh;
}

section.product-technicals {
    padding: 8em 0;
}

.product-technicals h2 {
    margin-bottom: 2em;
}

.product-technicals h5 {
    margin-bottom: 2em;
}

.product-technicals-container {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -2em;
}

.product-technicals__item {
    flex-basis: 50%;
    padding: 0 2em;
    margin-bottom: 3em;
    display: block;
}

.product-technicals__item img {
    max-width: 100%;
    width: auto;
    height: 22vh;
}

.product-technicals.short .product-technicals__item {
    display: none;
}

.product-technicals.short .product-technicals__item:nth-of-type(1), .product-technicals.short .product-technicals__item:nth-of-type(2) {
    display: block;
}

section.product-finishing {
    min-height: 100vh;
    padding: 8em 0 4em 0;
}

.product-finishing__menu {
    margin-top: 2em;
    margin-bottom: 1em;
    display: block;
}

.product-finishing__menu>li {
    display: inline-block;
    vertical-align: top;
    padding: 2em 7.2em 2em 0;
    font-weight: 600;
}

.product-finishing__menu>li>ul {
    list-style: none;
    margin-top: 0.85em;
}

.product-finishing__menu ul.twocolumns {
    column-count: 2;
}

.product-finishing__menu>li>ul>li {
    display: block;
    font-size: 0.85em;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 0.5em;
}

.product-finishing__menu>li>ul>li.active a {
    border-bottom: 1px solid #000;
}

.product-finishing__content {
    display: none;
}

.product-finishing__content.active {
    display: block;
}

.finishing-grid {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0 -1em;
    overflow: auto;
    max-height: calc(100% - 2.5em);
}

.finishing-grid__item {
    padding: 0.5em 1em;
    position: relative;
    text-align: center;
    flex-basis: 10%;
}

.finishing-grid__item figure, .finishing-grid__item img {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
}

.finishing-grid__item figcaption {
    text-align: left;
    color: #000;
    font-size: 0.85em;
    font-weight: 600;
    text-transform: uppercase;
    margin-top: 0.5em;
}

section.mosaic {
    position: relative;
    padding: 12em 10em 8em 10em;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.mosaic-grid {
    width: 100%;
    display: grid;
    gap: 4em;
    align-items: start;
    overflow: hidden;
    grid-template-rows: 0.7fr 1fr;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-areas: 'img1 txt1 img2'
        'img1 img3 img3';
}

.mosaic-grid__item {
    overflow: hidden;
    height: 100%;
}

.mosaic-grid__item:nth-child(1) {
    grid-area: img1;
}

.mosaic-grid__item:nth-child(2) {
    grid-area: txt1;
    font-size: 0.9em;
}

.mosaic-grid__item:nth-child(3) {
    grid-area: img2;
    text-align: right;
}

.mosaic-grid__item:nth-child(4) {
    grid-area: img3;
    text-align: right;
}

.mosaic-grid__item img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: top right;
}

.mosaic-finishing {
    position: absolute;
    right: 0;
    top: 0;
    width: 51vw;
    height: 100%;
    padding: 12em 10em 8em 0;
    background-color: #fff;
    transform: translateY(100%);
    transition: all 400ms ease-in-out;
}

.mosaic-finishing.active {
    transform: translateY(0);
}

.mosaic-finishing .finishing-grid {
    margin: -0.5em -1em;
}

.mosaic-finishing .finishing-grid .finishing-grid__item {
    flex-basis: 16.666%;
}

@media (max-width: 1300px) {
    .mosaic-finishing .finishing-grid .finishing-grid__item {
        flex-basis: 20%;
    }
}

.mosaic-finishing__close {
    position: absolute;
    left: 0;
    bottom: 10em;
    cursor: pointer;
    display: inline-block;
    border-bottom: 1px solid #000;
    font-size: 0.85em;
}

.mosaic-finishing__close:hover {
    opacity: 0.6;
}

.padding-boxed {
    padding: 12em 10em 8em 10em;
}

.padding-boxed .halfgrid__item:nth-child(1) {
    padding-right: 4em;
}

.padding-boxed .halfgrid__item:nth-child(2) {
    padding-left: 4em;
}

.testo-padding {
    padding: 4em 2em;
}

.testo-padding-top {
    padding: 4em 0 0 0;
}

.testo-padding h1, .testo-padding h2, .testo-padding h3, .testo-padding h4 {
    margin-bottom: 1.5em;
}

.text-align-center {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.text-align-top {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.text-align-bottom {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.height100 {
    height: 100%;
}

.finitura-title, .finitura-text {
    text-align: center;
}

.finitura-text {
    margin-top: 4em;
    margin-bottom: 4em;
}

section.news {
    padding: 4rem 0;
    margin-top: 5rem;
}

.news-grid {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0 -6rem;
}

.news-grid__item {
    position: relative;
    flex-basis: 33.333%;
    padding: 3rem 6rem;
}

.news-grid__item img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.news-grid__item .description {
    color: #000;
    margin-top: 2rem;
}

.news-grid__item .description h5 {
    font-weight: 600;
    text-transform: uppercase;
}

.news-grid__item .description h6 {
    margin-top: 0.2rem;
}

.news-grid__item .description p {
    margin-top: 1.2rem;
    overflow: hidden;
}

.news-grid__item .description a {
    color: #000;
    font-size: 0.85em;
}

.readmore, .readless {
    display: inline-block;
    font-weight: 600;
}

.chocolat-center {
    max-height: 60%;
}

.chocolat-top, .chocolat-bottom {
    display: none !important;
}

.chocolat-wrapper .chocolat-left {
    background: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ibGVmdEFycm93LXN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjUuMSIgaGVpZ2h0PSIyMCI+PHBhdGggZD0iTTI1LjEgMTEuMkg0LjNsOSA4LjhIMTBMMCAxMCAxMCAwaDMuM2wtOSA4LjloMjAuOHYyLjN6Ii8+PC9zdmc+);
    background-repeat: no-repeat;
    background-position: center left;
    margin-left: 20px;
    padding-right: 10vw;
    padding-top: 200px;
    padding-bottom: 200px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.chocolat-wrapper .chocolat-right {
    background: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0icmlnaHRBcnJvdy1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI1LjEiIGhlaWdodD0iMjAiPjxwYXRoIGQ9Ik0wIDguOGgyMC43TDExLjggMGgzLjNsMTAgMTAtMTAgMTBoLTMuM2w5LTguOUgwVjguOHoiLz48L3N2Zz4=);
    background-repeat: no-repeat;
    background-position: center right;
    margin-right: 10px;
    padding-left: 20vw;
    padding-top: 200px;
    padding-bottom: 200px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.designer-grid {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0 -3rem;
}

.designer-grid__item {
    position: relative;
    flex-basis: 25%;
    padding: 2rem 3rem;
    text-align: center;
}

.designer-grid__item img {
    height: 70%;
    width: 70%;
    object-fit: cover;
}

.designer-grid__item .description {
    color: #000;
    margin-top: 2rem;
    text-align: center;
}

.designer-grid__item .description h5 {
    font-weight: 600;
    text-transform: uppercase;
}

.designer-grid__item .description h6 {
    margin-top: 0.2rem;
}

.designer-grid__item .description p {
    margin-top: 1.2rem;
    overflow: hidden;
}

.designer-grid__item .description a {
    color: #000;
    font-size: 0.75rem;
}

.progetto-grid {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 4em;
    border-bottom: 1px solid #ccc;
}

.progetto__item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 4em;
}

.progetto__item__date {
    min-width: 6em;
    text-transform: uppercase;
}

.progetto__item__description {
    flex-basis: 50%;
}

.progetto__item__description h3 {
    text-transform: uppercase;
    font-weight: 400;
    margin-bottom: 2em;
}

.progetto__item__description h4 {
    text-transform: uppercase;
}

.progetto__item__image {
    padding-left: 4em;
    text-align: right;
    flex-basis: 50%;
}

.progetto__item__image img {
    width: 100%;
    height: auto;
}

.progetto-more {
    position: relative;
    margin-top: 4em;
    display: inline-block;
}

.progetto-more::after {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 17px) scale(0.7);
    opacity: 0.5;
    content: '';
    display: block;
    width: 75px;
    height: 27px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" id="more-arrows"><polygon points="37.6,27.9 1.8,1.3 3.3,0 37.6,25.3 71.9,0 73.7,1.3 "/></svg>');
}

.progetto-less {
    position: relative;
    margin-top: 4em;
    display: inline-block;
}

.progetto-less::after {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 17px) scale(0.7) rotate(180deg);
    opacity: 0.5;
    content: '';
    display: block;
    width: 75px;
    height: 27px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" id="more-arrows"><polygon points="37.6,27.9 1.8,1.3 3.3,0 37.6,25.3 71.9,0 73.7,1.3 "/></svg>');
}

section.download, 
section.contact,
section.protected {
    padding: 4rem 0;
    margin-top: 5rem;
}

#download-filter ul {
    list-style: none;
}

#download-filter input {
    width: auto;
    display: none;
}

#download-filter input[type='checkbox']:checked+label, #download-filter input[type='radio']:checked+label {
    border-bottom: 1px solid #444;
    color: #444;
}

#download-filter label, #download-filter a {
    cursor: pointer;
    line-height: 2em;
}

.download-cat-list li {
    display: inline-block;
    margin: 1em;
}

.download-cat-list li:first-child {
    margin-left: 0;
}

.download-cat-list li:last-child {
    margin-right: 0;
}

.download-cat-list li label {
    padding: 1em 0;
}

#download-output {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    min-height: calc(100vh - 30em);
    margin-top: 2em;
    position: relative;
}

#download-output>div {
    flex-basis: 25%;
    padding: 1em;
    border-right: 1px solid #ccc;
    min-height: calc(100vh - 30em);
}

#download-output>div:first-child {
    padding-left: 0;
}

#download-output .downloads {
    flex-basis: 50%;
}

#download-output .downloads.noborder {
    border: none;
}

#download-output .spinner {
    background-color: rgba(255, 255, 255, 0.5);
    padding: 0;
}

.xoo-el-inmodal {
    background: transparent;
    border-radius: 0;
}

.xoo-el-srcont {
    background: transparent;
}

.xoo-el-main {
    padding: 40px 0;
}

.xoo-el-main, .xoo-el-main a, .xoo-el-main label {
    color: #fff;
}

span.xoo-el-close {
    color: #000;
    display: none;
}

.xoo-el-popup-active .xoo-el-opac {
    background-color: rgb(0, 0, 0);
    opacity: 0.8;
}

.xoo-el-form-container ul.xoo-el-tabs li {
    background-color: #000;
    color: #fff;
}

.xoo-el-form-container ul.xoo-el-tabs li.xoo-el-active {
    background-color: #fff;
    color: #000;
}

.xoo-el-form-container button.btn.button.xoo-el-action-btn {
    background-color: #fff;
    color: #000 !important;
    border: none;
}

.xoo-el-notice-error a {
    color: #000;
}

.xoo-el-form-container .spinner:not(:required):before {
    border-top: 2px solid #fff !important;
}

.xoo-aff-input-group .xoo-aff-input-icon {
    display: none;
}

.xoo-el-section {
    padding: 0 15px 20px;
}

.xoo-aff-group, .xoo-el-form-container button.button.btn.xoo-el-action-btn {
    width: 100%;
}

.xoo-aff-group.onehalf {
    width: 50%;
    margin-right: 0;
    padding-right: 20px;
}

.xoo-aff-group.onehalf + .xoo-aff-group.onehalf {
    padding-right: 0;
}

.xoo-aff-group input[type="text"], .xoo-aff-group input[type="password"], .xoo-aff-group input[type="email"], .xoo-aff-group input[type="number"], .xoo-aff-group select, .xoo-aff-group select + .select2 {
    border-radius: 0;
}

.download .halfgrid {
    align-items: flex-start;
}

.catalogue-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -6rem;
}

.catalogue-grid__item {
    flex-basis: 33%;
    padding: 3rem 6rem;
}

.catalogue-grid__item img {
    width: 100%;
    height: auto;
    display: block;
}

.catalogue-description {
    margin-top: 1em;
    text-align: center;
}

body.page-template-page-contact {
    background-color: #212121;
    color: #fff;
}

.contact .row {
    width: 800px;
    margin-left: 6rem;
    gap: 1%;
}

.contact .address, .contact .address a {
    color: #9c9c9c
}

.contact .indirizzo p {
    margin: 0;
}

div.wpcf7 .ajax-loader {
    display: block;
    margin: 0 auto;
}

.contact .wpcf7 input, .contact .wpcf7 textarea {
    font-size: 1em;
    padding: 0.5rem 1rem;
    width: 100%;
    border: 1px solid #fff;
    background: transparent;
    color: #fff;
    font-family: 'Roboto', sans-serif;
}

.contact .wpcf7-submit {
    float: right;
    width: auto !important;
    margin-top: 10px;
    text-align: right;
    color: #fff !important;
    cursor: pointer;
    outline: none !important;
}

.contact .wpcf7-submit:disabled {
    text-decoration: line-through;
}

.contact div.wpcf7-validation-errors {
    border: 1px solid #fff !important;
    display: inline-block !important;
    margin-left: 0 !important;
}

.contact .wpcf7 input[type='checkbox'] {
    width: auto;
    padding-left: 0;
    margin: 0;
    vertical-align: middle;
    width: 15px;
    height: 15px;
}

.contact span.wpcf7-list-item {
    margin: 0;
}

.wpcf7 form .wpcf7-response-output {
    margin: 4em 0;
    padding: 0.5em 1em;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #fff;
}

.wrap_svl_center_box, .wrap_svl {
    width: 100%;
}

.img-link picture {
    overflow: hidden;
}

.img-link img {
    transform: scale(1);
    transition: all 800ms ease-in-out;
}

.img-link:hover img {
    opacity: 1;
    transform: scale(1.1);
}

.img-link figcaption {
    overflow: hidden;
    transition: all 800ms ease-in-out;
}

.img-link:hover figcaption {
    background-color: rgba(0, 0, 0, 0.5);
}

.img-link figcaption h4::after {
    content: '';
    display: inline-block;
    width: 100%;
    height: 1px;
    background-color: #fff;
    transition: all 400ms ease-in-out;
    opacity: 0;
    transform: translateX(-100%);
}

.img-link:hover figcaption h4::after {
    opacity: 1;
    transform: translateX(0);
}

#cookieChoiceInfo {
    color: #000;
}

.homepage-popup {
    position: fixed;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
}

.homepage-popup.chocolat-open {
    z-index: 1005;
}

.homepage-popup .chocolat-overlay {
    background: #000;
}

.video-center {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100%;
    height: 100%;
    padding: 10rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;  
    gap: 0;  
}

.video-center>* {
    padding-top: 2em;
    padding-bottom: 2em;
}

.video-center>*:first-child {
    padding-top: 0;
}

.video-center>*:last-child {
    padding-bottom: 0;
}

.video-center video {
    width: auto;
    max-width: 100%;
    height: 100%;
}

.video-center .video-text {
    text-transform: uppercase;
    font-size: 1em;
    line-height: 2em;
    text-align: center;
}

/* MOBILE MENU HAMBURGER TOGGLE */

.menu-toggle {
    position: absolute;
    top: 20px;
    right: 22px;
    z-index: 999;
    cursor: pointer;
    padding-top: 11px;
    width: 24px;
    height: 30px;
    display: none;
}

.menu-toggle span, .menu-toggle span:before, .menu-toggle span:after {
    -webkit-transition: all 200ms cubic-bezier(0.305, 0.1, 0.485, 0.87);
    -moz-transition: all 200ms cubic-bezier(0.305, 0.1, 0.485, 0.87);
    -o-transition: all 200ms cubic-bezier(0.305, 0.1, 0.485, 0.87);
    transition: all 200ms cubic-bezier(0.305, 0.1, 0.485, 0.87);
}

.menu-toggle span:before {
    top: -7px;
}

.menu-toggle span:after {
    top: 5px;
}

.menu-toggle span, .menu-toggle span:before, .menu-toggle span:after {
    cursor: pointer;
    border-radius: 0;
    height: 2px;
    width: 24px;
    position: relative;
    display: block;
    background-color: #fff;
    content: '';
}

/* .black .menu-toggle span, .black .menu-toggle span:before, .black .menu-toggle span:after {
    background-color: #000;
}

.white .menu-toggle span, .white .menu-toggle span:before, .white .menu-toggle span:after, .menu-mobile-open .menu-toggle span, .menu-mobile-open .menu-toggle span:before, .menu-mobile-open .menu-toggle span:after {
    background-color: #fff;
} */

.menu-toggle.close span {
    background-color: transparent;
    top: 0;
}

.menu-toggle.close span:before {
    top: 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.menu-toggle.close span:after {
    top: -2px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

/* FORM */

input, textarea {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 0.9rem;
	padding: 0.5rem 1rem;
	width: 100%;
}

@media screen and (min-width: 769px) {

	.form p {
		display: block;
		float: left;
		width: 49%;
        text-align: left;
	}
	
	.form p.full {
		display: block;
		clear: both;
		width: 100%;	
        margin-left: 0 !important;	
        margin-right: 0 !important;	
	}

	.form p:nth-child(even) {
		margin-left: 1%;
	}

	.form p:nth-child(odd) {
		margin-right: 1%;	
		clear: both;
	}

}

span.check-text {
    margin-left: 1em;
}

.form p.submit {
	display: block;
	clear: both;
	float: none;
	width: 100%;
	text-align: center;
    margin-left: 0;
}

.button {
  position: relative;
  background: #666;
  border: 1px solid #666;
  font-size: 1rem;
  color: #fff !important;
	width: auto !important;
  padding: 0.5rem 1rem;
  cursor: pointer;
  -webkit-transition: background-color 0.28s ease, color 0.28s ease, box-shadow 0.28s ease;
  transition: background-color 0.28s ease, color 0.28s ease, box-shadow 0.28s ease;
  overflow: hidden;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.button span {
  color: #fff;
  position: relative;
  z-index: 1;
}

.button::before {
  content: '';
  position: absolute;
  background: #333;
  border: 50vh solid #333;
  width: 30vh;
  height: 30vh;
  border-radius: 50%;
  display: block;
  top: 50%;
  left: 50%;
  z-index: 0;
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
}

.button:hover {
  color: #000;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.2);
}

.button:active::before, .button:focus::before {
  -webkit-transition: opacity 0.28s ease 0.364s, -webkit-transform 1.12s ease;
  transition: opacity 0.28s ease 0.364s, -webkit-transform 1.12s ease;
  transition: transform 1.12s ease, opacity 0.28s ease 0.364s;
  transition: transform 1.12s ease, opacity 0.28s ease 0.364s, -webkit-transform 1.12s ease;
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
  opacity: 0;
}

.button:focus {
  outline: none;
}

/***************************/

/***************************/

.menu-mobile-container {
    display: none;
}

.mobile-only {
    display: none;
}

@media (max-width: 1200px) {
    .product-info__links>a {
        font-size: 0.85em;
    }

    .halfgrid__item .testo {
        padding: 8em;
    }

    .splash-image .caption {
        padding: 4em;
    }
}

/* MOBILE */

@media screen and (max-width: 1023px) {
    .mobile-only {
        display: block;
    }

    .desktop-only {
        display: none !important;
    }

    html {
        font-size: 12px;
    }

    /*     .home .header-container {
        position: absolute;
    }*/
    .fixed.header-container {
        background: #fff;
    }

    .header {
        width: 100%;
        position: relative;
        padding-top: 20px;
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 20px;
    }

    .header-container::before {
        opacity: 1;
        height: 70px !important;
    }

    .header__top {
        display: none;
    }

    .arrow-down {
        /* bottom: 4.5em; */
        display: none !important;
    }

    .content-boxed, .content-superboxed {
        overflow: hidden;
        padding: 6vw 20px;
    }

    .container {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }

    .header__logo {
        margin-top: 0;
        text-align: left;
    }

    .header__logo svg path, .header__logo svg polygon, .header__logo svg rect {
        fill: #fff;
        stroke: #fff;
    }

    .menu-mobile-open .header__logo {
        position: absolute;
        left: 20px;        
        z-index: 1000;
    }

    .header__logo a {
        width: 80px;
    }

    .header__menu, .menu-container {
        display: none;
    }

    .menu-toggle {
        display: block;
    }

    .menu-mobile-container {
        display: block;
        position: fixed;
        z-index: 998;
        top: 70px;
        bottom: 0;
        right: 0;
        width: 100%;
        height: calc(100vh - 70px);
        background: rgba(27, 27, 27, 0.9);
        opacity: 0;
        padding: 25px 25px 0 25px;
        border-top: 1px solid #fff;
        overflow-y: auto;
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
        -webkit-transform: translateY(-150%);
        -moz-transform: translateY(-150%);
        -ms-transform: translateY(-150%);
        -o-transform: translateY(-150%);
        transform: translateY(-150%);
        margin-top: 0;
        margin-bottom: 0;
    }

    .menu-mobile-container.reveal {
        opacity: 1;
        -webkit-transform: translateY(0%);
        -moz-transform: translateY(0%);
        -ms-transform: translateY(0%);
        -o-transform: translateY(0%);
        transform: translateY(0%);
    }

    .menu-mobile {
        width: 100%;
        height: auto;
        display: block;
        margin-top: 20px;
        margin-bottom: 90px;
        float: none;
    }

    .menu-mobile {
        list-style: none;
    }

    .menu-mobile li {
        float: none;
        display: block;
        padding-left: 0;
        padding-right: 0;
        text-align: left;
        margin-bottom: 1em !important;
        color: #fff !important;
        text-transform: uppercase !important;
    }

    .menu-mobile>li.wpml-ls-menu-item {
        display: inline-block;
        margin-right: 0.5em;
    }

    .menu-mobile li a {
        color: #fff !important;
    }

    .menu-mobile .sub-menu {
        column-count: 1 !important;
        max-width: 100% !important;
        padding: 1em 0 0 1em !important;
    }

    .menu-mobile .sub-menu li {
        margin-bottom: 0.85em !important;
        text-align: left;
    }

    #menu-lang {
        margin: 6em 0;
        padding-left: 20px;
    }

    #menu-lang>li {
        display: inline-block;
        padding: 0 0 0 1em;
    }

    #menu-lang>li:first-child {
        padding-left: 0;
    }

    #menu-lang>li>a {
        color: #fff;
    }

    .mobile-body-overlay {
        display: none;
        width: 100vw;
        height: 100vh;
        position: fixed;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #000;
        opacity: 0;
    }

    .menu-mobile-open .mobile-body-overlay {
        display: block;
        z-index: 997;
    }

    body.menu-mobile-open {
        overflow-y: hidden;
    }

    input {
        max-width: 100%;
    }

    h1 {
        font-size: 2.2em;
    }

    h2 {
        font-size: 1.8em;
    }

    h3 {
        font-size: 1.5em;
    }

    h4 {
        font-size: 1.2em;
    }

    .homepage-slider__item .caption, .splash-image .caption {
        left: auto !important;
        right: auto !important;
        transform: none !important;
        width: 100%;
        padding: 0 25px;
        bottom: 14em;
    }

    section.news {
        padding: 90px 0 90px 0;
        height: auto !important;
    }

    .home .news__item__date {
        min-width: 1em;
    }

    .home .news__item__image {
        display: none;
    }

    section.social {
        padding: 90px 0 90px 0;
        height: auto !important;
        overflow: visible;
    }

    section.social .container {
        height: auto !important;
    }

    .social-grid {
        position: static;
        display: block;
        width: 100%;
        transform: none;
        margin: 0;
    }

    .social-grid__item {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        display: block;
    }

    .social-grid__item img {
        width: 100%;
        height: auto;
    }

    .footer-menu-container, .footer-bottom-container {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 0;
    }

    .footer-menu-container .footer-left {
        width: 100%;
    }

    .footer-menu__item {
        flex-basis: 46%;
        margin-bottom: 20px;
        margin-right: 4%;
        padding-right: 0;
    }

    .footer-menu__item:nth-child(2n + 0) {
        margin-right: 0;
    }

    .footer-menu__item:nth-child(5) {
        order: 4;
    }

    .footer-menu__item:nth-child(4) {
        order: 5;
        flex-basis: 100%;
    }

    .footer-bottom-container {
        padding-top: 0;
    }

    .footer-bottom__item {
        flex: 50%;
        margin-bottom: 20px;
        padding-right: 4%;
    }

    .footer-bottom__item:nth-child(2) {
        flex-basis: 50%;
    }

    .footer-bottom__item:last-child {
        margin-right: 0;    
        text-align: left;    
    }

    .menu-bottom > li {
        white-space: nowrap;
        flex-basis: 50%;
    }

    #menu-social {
        justify-content: flex-end;
    }

    #menu-footer {
        padding: 0;
    }

    section.product {
        height: auto !important;
        padding: 90px 0 90px 0;
    }

    .product-grid__item figure, .product-grid__item img {
        width: auto;
        height: 22vh;
    }

    .product-grid__item {
        flex-basis: 100%;
        width: 100%;
        padding: 1em 2em;
        margin: 1em 0;
    }

    .splash-image .caption .title {
        font-size: 2em;
    }

    .splash-image .caption .subtitle {
        font-size: 1.3em;
    }

    .splash-image .testo-padding-top {
        padding-left: 25px;
        padding-right: 25px;
    }

    .product .product-view {
        flex-direction: column;
    }

    .product .product-view>div {
        width: 100%;
        flex-basis: 100%;        
    }

    .product-info {
        order: 2;
        margin-top: 4em;
        padding: 0;
        max-width: 100%;
    }

    .product-galleria {
        order: 1;
    }

    section.product-galleria-ambientata,
    section.product-related {
        height: auto !important;
    }

    .product-ambientata-slider__item img {
        width: auto !important;
        height: 30vh;
    }

    .product-related-slider__item img {
        width: auto !important;
        height: 30vh;
    }

    section.normalscroll-mobile .arrow-down {
        display: none !important;
    }

    .product-technicals-container {
        display: block;
    }

    .product-technicals__item img {
        width: auto !important;
        height: 30vh;
    }

    .product-finishing__menu>li {
        padding: 1em 2em 1em 0;
    }

    .finishing-grid__item {
        flex-basis: 33%;
    }

    .mosaic-finishing {
        width: 100vw;
        padding: 7em 25px;
    }

    .mosaic-finishing.active {
        position: fixed;
        height: 100vh;
    }

    .mosaic-finishing.normal.active {
        position: static;
        height: 100%;
    }

    .mosaic-finishing .finishing-grid .finishing-grid__item {
        flex-basis: 33%;
    }

    .mosaic-finishing__close {
        left: 25px;
        bottom: 3em;
    }

    .designer-grid {
        display: block;
    }

    section.news {
        margin-top: 0;
    }

    .progetto-grid {
        display: block;
    }

    .progetto__item {
        flex-wrap: wrap;
    }

    .progetto__item__description {
        flex-basis: 100%;
        display: block;
        order: 2;
        margin-top: 1em;
    }

    .progetto__item__description h3 {
        margin-bottom: 1em;
    }

    .progetto__item__image {
        flex-basis: 100%;
        display: block;
        padding-left: 0;
        order: 1;
    }

    .page-template-page-collection section.mosaic {
        height: auto !important;
        padding: 90px 0 90px 0;
    }

    .mosaic-grid {
        display: block;
        padding: 0 25px;
    }

    .mosaic-grid__item {
        margin-bottom: 2em;
    }

    .mosaic-grid__item img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .page-template-page-collection section.halfgrid {
        flex-direction: column;
        padding: 0;
        height: 100% !important;
    }

    .page-template-page-collection section.halfgrid .halfgrid__item {
        height: 50%;
        padding: 0;
    }

    .page-template-page-collection section.halfgrid.padding-boxed {
        padding: 90px 0 90px 0;
    }

    .page-template-page-collection section.halfgrid .halfgrid__item .testo-padding {
        padding: 25px !important;
    }

    .news-grid {
        display: block;
    }

    section.download {
        margin-top: 0;
    }

    .download-cat-list li {
        margin: 0 1em 0 0;
    }

    .download-cat-list li label {
        padding: 0.2em 0;
    }

    #download-output {
        flex-wrap: wrap;
    }

    #download-output>div {
        flex-basis: 50%;
        min-height: auto;
    }

    #download-output .downloads {
        flex-basis: 100%;
        padding: 1em 0;
        border: none;
    }

    section.contact {
        display: block;
        height: auto !important;
    }

    section.contact .halfgrid__item {
        margin-bottom: 4em;
    }

    .catalogue-grid {
        display: block;
        margin-top: 3rem;
    }

    .video-center {
        padding: 4rem 20px;
    }

    .fullheight {
        height: 100%;
    }

    .halfgrid {
        display: block;
    }

    .halfgrid__item .testo {
        padding: 20px;
    }

    .full-image {
        padding: 20px;
        gap: 0;
    }

    .full-image > * {
        margin-bottom: 20px;
    }

    .full-image > *:last-child,
    .home .immagine_singola_2 .full-image > * {
        margin-bottom: 0;
    }

    .contact .full-image {
        padding: 0;
        gap: 0;
    }

    .form.row {
        margin: 0;
    }

    .full-image img {
        width: 100%;
        height: auto;
    }

    .full-image .caption {
        padding: 0;
    }

    .full-image.testoup .caption {
        order: 2;
    }

    .full-image.testoup img {
        order: 1;
    }

    .xoo-aff-group.onehalf {
        width: 100%;
        margin-right: 0;
        padding-right: 0;
    }

    span.xoo-el-close {
        display: block;
    }

    .contact .row {
        width: 100%;
        margin-left: 0;
    }

    .product-slider .owl-dots {
        padding-right: 0;
    }

    .immagine_e_testo.halfgrid {
        position: relative;
    }

    .immagine_e_testo .halfgrid__item:nth-child(2) {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        align-items: flex-end;
    }

    .immagini_affiancate_2 .full-image figcaption {
        order: 1;
    }

    .immagini_affiancate_2 .full-image figure {
        order: 2;
    }    

    .home .immagine_singola_2 .fullheight {
        position: relative;
    }

    .home .immagine_singola_2 .video-center {
        padding: 0;
    }

    .home .immagine_singola_2 .video-center figure {
        padding-bottom: 0;
    }

    .home .immagine_singola_2 .caption {
        position: absolute;
        left: 0;
        bottom: 0;        
        width: 100%;
        padding: 20px;
    }

    .owl-carousel .owl-nav .owl-prev {
        background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ibGVmdEFycm93LXN2ZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjUuMSIgaGVpZ2h0PSIyMCI+PHBhdGggZD0iTTI1LjEgMTEuMkg0LjNsOSA4LjhIMTBMMCAxMCAxMCAwaDMuM2wtOSA4LjloMjAuOHYyLjN6Ii8+PC9zdmc+) !important;
        background-position: center left !important;
    }
    
    .owl-carousel .owl-nav .owl-next {
        background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0icmlnaHRBcnJvdy1zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI1LjEiIGhlaWdodD0iMjAiPjxwYXRoIGQ9Ik0wIDguOGgyMC43TDExLjggMGgzLjNsMTAgMTAtMTAgMTBoLTMuM2w5LTguOUgwVjguOHoiLz48L3N2Zz4=) !important;
        background-position: center right !important;
    }

    span.xoo-el-close {
        background: transparent;
        border-color: transparent;
        color: #fff;
    }
}

/***************************/