/*
    Theme Name: Prima Pubblicita
    Author: Andrea Paolazzi
    Author URI: https://www.primapubblicita.it/
    Description: Tema modulare di Prima Pubblicita
    Version: 7.0
*/



/*
    ================================================
    CSS RESET - START
    ================================================
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 reset display per i browser vecchi */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
    overflow: auto !important;
    padding-right: 0 !important;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}
    blockquote:before, blockquote:after,
    q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*
    ================================================
    CSS RESET - END
    ================================================
*/





/*
    ================================================
    GLOBALI
    ================================================
*/

body {
    font-size: 16px !important;
    background-color: #ffffff;
    overflow-x: hidden !important;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
    .ContenitoreBody {
        margin-top: 5.5em;
    }

table {
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 1em;
}

a {
    text-decoration: none;
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
    font-size: 1em;
    list-style-type: none !important;
    transition: 0.2s;
}
    a:hover {
        text-decoration: none !important;
        opacity: 0.8;
    }

li {
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 1em;
    line-height: 1.5em;
    list-style-type: none !important;
}
    
p {
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5em;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
    font-weight: 400;
    margin: 0;
}

h1 {
    font-size: 2em;
}

h2 {
    font-size: 1.8em;
}

h3 {
    font-size: 1.6em;
}

h4 {
    font-size: 1.4em;
}

h5 {
    font-size: 1.2em;
}

h6 {
    font-size: 1.1em;
}

td {
    vertical-align: middle;
    padding: 2em !important;
}

strong {
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
    font-weight: bold;
}

ul {
    list-style-type: circle;
    list-style-position: inside;
    margin: 5px;
    margin-left: 20px;
}

hr {
    margin: 0.2em 0 0 0 !important;
}

html {
    scroll-behavior: smooth;
    margin-top: 0 !important;
}


/* SCROLLBAR */

/* width */
::-webkit-scrollbar {
    width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
    background: #F0F0F0;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--Grigio-2);
}
    /* Handle on hover */
    ::-webkit-scrollbar-thumb:hover {
        background: var(--Grigio);
    }


/* LIBRERIA COLORI */

:root {
    --Grigio : #444444;
    --Grigio-2 : #b2b2b2;
}





/*
    ================================================
    GENERALI
    ================================================
*/

.Background {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}
    .BackgroundGrigio3 {
        background-color: var(--Grigio3);
    }

.BackgroundContain {
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.Relative {
    position: relative;
}

.Padding5 {
	padding-top: 5em;
	padding-bottom: 5em;
}
	.Padding5Sopra {
		padding-top: 5em;
	}
	.Padding5Sotto {
		padding-bottom: 5em;
	}

.Padding4 {
	padding-top: 4em;
	padding-bottom: 4em;
}
	.Padding4Sopra {
		padding-top: 4em;
	}
	.Padding4Sotto {
		padding-bottom: 4em;
	}

.Padding3 {
	padding-top: 3em;
	padding-bottom: 3em;
}
	.Padding3Sopra {
		padding-top: 3em;
	}
	.Padding3Sotto {
		padding-bottom: 3em;
	}
    
.Padding2 {
    padding-top: 2em;
    padding-bottom: 2em;
}
    .Padding2Sopra {
        padding-top: 2em;
    }
    .Padding2Sotto {
        padding-bottom: 2em;
    }

.Padding1 {
	padding-top: 1em;
	padding-bottom: 1em;
}
	.Padding1Sopra {
		padding-top: 1em;
	}
	.Padding1Sotto {
		padding-bottom: 1em;
	}

.Margin5 {
    margin-top: 5em;
    margin-bottom: 5em;
}
    .Margin5Sopra {
        margin-top: 5em;
    }
    .Margin5Sotto {
        margin-bottom: 5em;
    }

.Margin4 {
    margin-top: 4em;
    margin-bottom: 4em;
}
    .Margin4Sopra {
        margin-top: 4em;
    }
    .Margin4Sotto {
        margin-bottom: 4em;
    }

.Margin3 {
    margin-top: 3em;
    margin-bottom: 3em;
}
    .Margin3Sopra {
        margin-top: 3em;
    }
    .Margin3Sotto {
        margin-bottom: 3em;
    }

.Margin2 {
    margin-top: 2em;
    margin-bottom: 2em;
}
    .Margin2Sopra {
        margin-top: 2em;
    }
    .Margin2Sotto {
        margin-bottom: 2em;
    }

.Margin1 {
    margin-top: 1em;
    margin-bottom: 1em;
}
    .Margin1Sopra {
        margin-top: 1em;
    }
    .Margin1Sotto {
        margin-bottom: 1em;
    }

.Img100 {
    width: 100%;
}

.SfondoNero {
    background: #000000;
}

.SfondoBianco {
    background: #ffffff;
}

.SfondoGrigio {
    background: var(--Grigio);
}

.TestoBianco {
    color: #ffffff;
}

.TestoBianco2 {
    color: white;
    font-size: 1em;
    margin-top: 0.3em;
}

.Editor h1 {
    font-size: 2.5em;
    font-weight: 700;
    margin-bottom: 0.5em;
    margin-top: 1em;
}

.Editor h2 {
    font-size: 1.6em;
    font-weight: 600;
    margin-bottom: 0.5em;
    margin-top: 1em;
}

.Editor h3 {
    font-size: 1.4em;
    font-weight: 500;
    margin-bottom: 0.5em;
    margin-top: 1em;
}

.Editor h4 {
    font-size: 1.2em;
    font-weight: 500;
    margin-bottom: 0.5em;
    margin-top: 1em;
    line-height: 1.2em;
}

.Editor h5 {
    font-size: 1.1em;
    font-weight: 400;
    margin-bottom: 0.5em;
    margin-top: 1em;
    line-height: 1.2em;
}

.Editor h6 {
    font-size: 1em;
    font-weight: 400;
    margin-bottom: 0.5em;
    margin-top: 1em;
    line-height: 1.2em;
}

.Editor p {
    font-size: 1em;
    font-weight: 200;
    margin: 1em 0;
    line-height: 1.5em;
    word-break: break-word;
    line-height: 1.2em;
    letter-spacing: 0.9px;
    word-spacing: 0.2px;
}
    .Editor p:first-child {
        margin-top: 0;
    }
    .Editor p:last-child {
        margin-bottom: 0;
    }

    .Editor p strong {
        font-weight: 500;
    }

.Editor ul {
    margin-left: 0 !important;
    margin-top: 0;
    margin-bottom: 1em;
}
    .Editor ul li {
        margin-left: 1.4em !important;
        list-style-type: square !important;
        list-style-position: outside;
        font-size: 1em;
    }
        .Editor ul li ul li {
            margin-left: 1em !important;
            list-style-type: circle !important;
        }

.Editor img {
    height: auto;
}

.Editor a {
    color: #ffffff;
    transition: 0.2s;
}
    .Editor a:hover {
        opacity: 0.8;
    }

.PaddingGalleria{
    padding: 4em 8.1em 4em 8.1em;
}

.glightbox img {
    width: 100%;
    height: 406px;
    object-fit: cover;
}

.TestoDescrizione p {
    font-size: 1em !important;
    line-height: 1.5em !important;
    font-weight: 400;
}

.TitoloDescrizioneNero {
    font-size: 1.5em;
    font-weight: 600 !important;
    margin-bottom: 1.2em;
}





/*
    ================================================
    HEADER
    ================================================
*/

.HeaderHome {
    position: absolute;
    width: 100%;
}

.HeaderInterna {
    position: relative;
    background: #000000;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 90000;
}

.header .LogoHeder img {
    margin-left: 1em;
    height: 3em;
}

.header .LoghiHeader {
    display: flex;
    justify-content: center;
    gap: 2em;
}
    .header .LoghiHeader a img {
        max-height: 50px;
        width: 100%;
    }


/* Menu principale */
.MenuPrincipale {
    width: fit-content;
    background: #EBEBEB;
    text-align: center;
    margin: 1.4em auto;
}
    .MenuPrincipale ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }
        .MenuPrincipale a {
            display: block;
            font-weight: 300;
            text-transform: uppercase;
            padding: 1em 1.5em;
            color: #000000;
        }

.MenuPrincipale .menu > li:first-child {
    background: #ffffff;
}

.MenuPrincipale .menu {
    display: flex;
}
    .MenuPrincipale .menu > li {
        position: relative;
    }
        .MenuPrincipale .menu > li:last-of-type {
            background: #1F1F1F;
        }
            .MenuPrincipale .menu > li:last-of-type a {
                padding: 1em 3em;
                color: #ffffff;
            }

.MenuPrincipale .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: #fff;
    display: none;
    padding: 10px 0;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    z-index: 999;
}

.MenuPrincipale .menu-item-has-children:hover > .sub-menu {
    display: block;
}

.MenuPrincipale .sub-menu li a {
    display: block;
    padding: 8px 20px;
}

.BloccoHome {
    height: 125px;
    display: flex;
    justify-content: center;
    align-items: center;
} 









/*
    ================================================
    FOOTER
    ================================================
*/

.Footer {
    background: var(--Grigio);
    position: relative;
    margin-top: auto;
}

.SezioneSocial {
    display: flex;
    justify-content: start;
    align-items: start;
    gap: 0em;
}
    .SocialFooter {
        text-transform: uppercase;
        background: #ffffff;
        color: #000000;
        padding: 1em 1em;
        display: flex;
        justify-content: center;
        align-items: center;
        height: unset;
    }
        .SocialFooter:hover {
            transition: 0.2s;
            color: #000000;
            opacity: 0.8;
        }
        .SocialFooter img {
            display: inline-block;
            margin-right: 1em;
            margin-bottom: -2px;
        }
        .SocialFooter p {
            display: inline-block;
            transition: 0.2s;
        }

.Footer .Editor p {
    font-weight: 200;
}

.Footer .Editor strong {
    font-weight: 500;
}

.Cookies,
.Privacy {
    display: block;
    font-weight: 200;
    text-transform: uppercase;
    transition: 0.2s;
}
    .Cookies:hover,
    .Privacy:hover {
        color: #ffffff;
        opacity: 0.8;
        transition: 0.2s;
    }

.Cookies {
    margin-bottom: 1em;
}










/*
    ================================================
    PAGE
    ================================================
*/

.TitoloPage {
    text-align: center;
    margin-top: 4em;
}

.ContenutoPage a {
    text-transform: uppercase;
    color: #fff;
    padding: 0.6em 1em;
    transition: 0.2s;
    font-size: 0.72em !important;
}
    .ContenutoPage a:hover {
        background-color: #ffffff;
    }

input.tnp-email {
    font-family: "Montserrat", sans-serif !important;
    font-optical-sizing: auto;
}










/*
    ================================================
    404
    ================================================
*/

.QuattroZeroQuattro {
    padding-top: 3em;
}

.TornaHome {
    text-align: center;
    margin: 0 auto;
    width: fit-content;
    margin-top: 4em;
    padding: 1em;
}
    .TornaHome h1 {
        font-family: "Montserrat", sans-serif !important;
        font-optical-sizing: auto;
        font-size: 2em;
        text-transform: uppercase;
        display: inline-block;
        margin: 0em 0.6em;
        vertical-align: middle;
    }

.QuattroZeroQuattro {
    padding-top: 3em;
}

.QuattroZeroQuattro img {
    width: auto;
    height: 100%;
}

.QuattroZeroQuattro a {
    display: inline-block;
    background: var(--Grigio);
    transition: 0.2s;
}
    .QuattroZeroQuattro a h1 {
        font-family: 'Roboto', sans-serif !important;
        font-size: 1.2em;
        text-transform: uppercase;
        color: white;
        background: var(--Grigio);
        padding: 0.7em;
        transition: 0.2s;
    }
    .QuattroZeroQuattro a:hover {
        opacity: 0.8;
    }










/*
    ================================================
    HOMEPAGE
    ================================================
*/

.BackgroundHome {
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    height: 100vh;
}
    .HeroImage h1 {
        position: absolute;
        bottom: 1em;
        left: 8.9%;
        font-size: 3.7em;
        font-weight: 500;
        text-shadow: 2px 2px 4px #000000;
        color: #ffffff;
    }

.Homepage h2 {
    font-size: 3.7em;
    font-weight: 500;
}

.TestoBiancoHome2 {
    position: absolute;
    right: 1em;
}

.BottoneHome {
    border: 1px solid #ffffff;
    padding: 1em;
    transition: 0.2s;
    min-width: 233px;
    text-align: center;
    display: inline-block;
    text-transform: uppercase;
}
    .BottoneHome:hover {
        color: #ffffff;
        transition: 0.2s;
    }
        .BottoneHome img {
            margin-left: 1em;
            margin-bottom: -4px;
        }


/* Swiper progetti */
.ProgettiSwiper {
    width: 100%;
    overflow: hidden;
}

.ProgettiSwiper .swiper-slide {
    height: auto;
}

.ProgettiSwiper img {
    width: 100%;
    height: 509px;
    display: block;
    object-fit: cover;
}

.ProgettiSwiper a p {
    font-weight: 600;
    margin-top: 0.6em;
}

.ProgettiSwiper .swiper-slide p {
    font-weight: 400;
    font-size: 1em;
    margin-top: 0.5em;
}

.ProgettiNav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
    margin-top: 6em;
}

.ProgettiNav .swiper-button-prev::after,
.ProgettiNav .swiper-button-next::after {
    display: none;
}

.ProgettiNav .swiper-button-prev,
.ProgettiNav .swiper-button-next {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ProgettiNav .swiper-button-prev img,
.ProgettiNav .swiper-button-next img {
    width: 25px;
    height: auto;
    display: block;
}

.Materiale .Img100 {
    height: 440px;
    object-fit: cover;
    max-width: 100%;
}










/*
    ================================================
    MATERIALI
    ================================================
*/

.materiale-title {
    margin-top: 1.6em;
    font-size: 0.9em;
}

.BordoNero {
    border: 2px solid #000000;
}

.BordoSinistraNO {
    border-left: none;
}

.PaddingMateriale {
    padding: 2.5em;
}

.Materiale h1 {
    font-weight: 500;
}










/*
    ================================================
    PROGETTI
    ================================================
*/

.ArchiveProgetti .SfondoGrigio {
    background: var(--Grigio);
   /* height: 654px;*/
}

.ArchiveProgetti .glightbox img {
    width: 100%;
    height: 654px;
    display: block;
}

.Img2Prog {
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    height: 434px;
}

.ArchiveProgetti h1 {
    font-weight: 500;
    font-size: 2.4em;
    margin-bottom: 1em;
}

.ContTestoProg {
    padding: 2.5em 4em 5em 7.5em;
}

.ProgettoItem h2 {
    font-size: 1.2em;
    font-weight: 500;
}

.TestoDescrizioneProgeggi p {
    font-weight: 200;
    font-size: 1em;
    line-height: 1.1em;
}










/*
    ================================================
    SERVIZI
    ================================================
*/

.BackgroundServizi {
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    height: 970px;
}

.PaddingServizi {
    padding: 13em 0;
}

.BkgListaServizi .SfondoBianco {
    padding: 2.8em 1em;
}

.Servizi h1 {
    font-weight: 500;
    font-size: 2.4em;
    margin-bottom: 0.5em;
}

.Servizi h3 {
    font-weight: 500;
    font-size: 1.8em;
    margin-bottom: 1.2em;
}

.BkgListaServizi .SfondoBianco {
    display: flex;
    align-items: start;
    justify-content: center;
}

.Servizio {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
}

.Servizio img {
    min-height: 45%;
    max-height: 45%;
    object-fit: contain;
    margin-bottom: 15px;
}

.Servizio p {
    margin: 0;
    line-height: 1.3em;
}

.TestoSinistro h4 {
    font-weight: 300;
    line-height: 1.5em;
    font-size: 1.7em;
    margin-top: 0;
}
    .TestoSinistro h4 strong {
        font-weight: 600;
}

.TestoDestro p {
    font-weight: 400;
    line-height: 1.5em;
    font-size: 1em;
}
    .TestoDestro p strong {
        font-weight: 600;
    }

.TestoDestroBianco p {
    font-weight: 200 !important;
    font-size: 1.05em;
    line-height: 1.3em;
}

.TestoDestroBianco p strong {
    font-weight: 500 !important;
}










/*
    ================================================
    PIETRA TRENTINA
    ================================================
*/

.Slider1Swiper,
.Slider2Swiper {
    width: 100%;
    overflow: hidden;
}

.Slider1Item img,
.Slider2Item img{
    width: 100%;
    height: auto;
    display: block;
}

.Slider1Nome,
.Slider2Nome{
    margin-top: 10px;
}

.PietraTrentina h1 {
    font-size: 2.4em;
    font-weight: 500;
}

.PietraTrentina h2 {
    font-weight: 500;
}

/* Swiper */
.Slider1Nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 2.8em;
}

.Slider1Nav .swiper-button-prev,
.Slider1Nav .swiper-button-next {
    position: static;
    width: 25px;
    height: 25px;
    margin: 0;
}

.Slider1Nav .swiper-button-prev::after,
.Slider1Nav .swiper-button-next::after {
    display: none;
}

.Slider1Nav img {
    width: 25px;
    height: auto;
}

.Slider2Nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 2.8em;
}

.Slider2Nav .swiper-button-prev,
.Slider2Nav .swiper-button-next {
    position: static;
    width: 25px;
    height: 25px;
    margin: 0;
}

.Slider2Nav .swiper-button-prev::after,
.Slider2Nav .swiper-button-next::after {
    display: none;
}

.Slider2Nav img {
    width: 25px;
    height: auto;
}










/*
    ================================================
    CONTATTI
    ================================================
*/

.Contatti h1 {
    font-size: 2.4em;
    font-weight: 500;
    margin-bottom: 1.5em;
}

.Contatti .Editor p {
    font-weight: 200;
    line-height: 1.5em;
    font-size: 1.1em;
}


.Contatti .Editor a {
    font-weight: 600;
}










/*
    ================================================
    SINGOLO MATERIALE
    ================================================
*/

.PaddingDescrizione {
    padding: 4em 2.5em 4em 2.5em;
}

.SingleMateriale .ImmagineLastra {
    /*max-width: 264px;*/
    width: 264px;
    max-height: 166px;
    object-fit: cover;
}

.PulsanteIndietroWrap {
    position: absolute;
    right: 2em;
    bottom: 3em;
    border-bottom: 0;
}










/*
    ================================================
    PAGINA GENERICA
    ================================================
*/

.Generica h1 {
    font-weight: 500;
    font-size: 2.4em;
    margin-bottom: 0.5em;
    
} 

.Generica .Editor p {
    font-weight: 400;
    line-height: 1.5em;
}










/*
    ================================================
    COOKIE
    ================================================
*/

body #ct-ultimate-gdpr-cookie-popup.ct-ultimate-gdpr-cookie-popup-wafer {
    border-radius: 0 !important;
    bottom: 0 !important;
}
body #ct-ultimate-gdpr-cookie-popup.ct-ultimate-gdpr-cookie-popup-wafer a {
   color: black !important;
}

#ct-ultimate-gdpr-cookie-popup #ct-ultimate-gdpr-cookie-accept, 
#ct-ultimate-gdpr-cookie-popup #ct-ultimate-gdpr-cookie-change-settings, 
#ct-ultimate-gdpr-cookie-popup #ct_ultimate-gdpr-cookie-reject {
    background-color: var(--Grigio) !important;
    color: white !important;
    border: unset;
}

.ct-ultimate-gdpr-cookie-popup-10-set.ct-ultimate-gdpr-cookie-bottomPanel.ct-ultimate-gdpr-cookie-popup-wafer #ct-ultimate-gdpr-cookie-content {
    width: 100% !important;
}

.ct-ultimate-gdpr-cookie-popup-10-set.ct-ultimate-gdpr-cookie-bottomPanel.ct-ultimate-gdpr-cookie-popup-wafer .ct-ultimate-gdpr-cookie-popup-btn-wrapper {
    width: 100% !important;
}


/* impostazioni */

#ct-ultimate-gdpr-cookie-modal-body {
    margin-top: 2em;
}

form#ct-ultimate-gdpr-cookie-modal-slider-form {
    margin-top: 3em;
}
    form#ct-ultimate-gdpr-cookie-modal-slider-form a {
        color:var(--Grigio)
    }
    .ct-ultimate-gdpr-slider-not-block .ct-ultimate-gdpr-slider {
        border: 3px solid var(--Grigio) !important;
    }
    .ct-ultimate-gdpr-cookie-modal-slider li div svg path {
        fill: var(--Grigio) !important;
    }
    .ct-ultimate-gdpr-cookie-modal-slider li.ct-ultimate-gdpr-cookie-modal-slider-item--active label:after {
        background-color: var(--Grigio);
    }
    .ct-ultimate-gdpr-cookie-modal-btn a {
        border-radius: 0;
        background: var(--Grigio);
        border: unset;
    }
        .ct-ultimate-gdpr-cookie-modal-btn a:hover {
            border-color: var(--Grigio) !important;
            background-color: white !important;
            color: var(--Grigio) !important;
        }

.ct-ultimate-gdpr-cookie-modal-slider-info {
    display: none !important;
}

.ct-ultimate-gdpr-cookie-modal-content {
    margin-top: 7em;
}

form#ct-ultimate-gdpr-cookie-modal-slider-form {
    display: none;
}

#ct_ultimate-gdpr-cookie-reject,
#ct-ultimate-gdpr-cookie-change-settings {
    display: none !important;
}

div#ct-ultimate-gdpr-cookie-modal-body a strong {
    color: var(--Grigio);
}

.ct-ultimate-gdpr-cookie-modal-btn.save a:hover {
    border: 1px solid var(--Grigio) !important;
}


