﻿/* STEPS RESPONSIVE: [1-320] [321-480] [481-600] [601-768] [769-1024] [1025-1200] [1201-***]  */

/* #region TAVOLA COLORI */
/*
    #384184 blu scuro           rgba(0,69,103, 1)          hsl(200, 100%, 20%)     Colore ufficiale SOFTIMAX -> Sfondi blu scuro
    #00aaff azzurro scuro       rgba(0,170,255, 1)         hsl(200, 100%, 45%)     Sfondo azzurro scuro
    #80d4ff azzurro             rgba(128,212,255, 1)       hsl(200, 100%, 75%)     Titolo H3 nell'header
    #b3e5ff azzurro chiaro      rgba(179,229,255, 1)       hsl(200, 100%, 85%)     Link nell'header
    #def4ff azzurro chiarissimo                                                    Per differenziare (nel mobile) contenuti originariamente bianchi
    #666666 grigio scuro                                                           Testi 
    #cccccc grigio-chiaro                                   hsl(0, 0%, 80%)        Sfondo obliquo-chiaro
    #dddddd grigio (bordi)
    #f2f2f2 grigio-chiarissimo                              hsl(0, 0%, 95%)        Sfondo obliquo-chiaro
    #ffffff bianco
*/

:root {
    --max-width-breakpoint--hamburger-menu: 900px;
    --min-width-breakpoint--classic-menu: 901px;
}

:root {
    /* Colori assoluti con sintassi:  --Colore--NOME */
    --Colore--Trasparente: #00000000;
    --Colore--Bianco: #ffffff;
    --Colore--Nero: #000000;
    --Colore--Blu:#0079c3;
    --Colore--Blu-Scuro:#005a8c;
    --Colore--Blu-Testo: #335d88;
    --Colore--Blu-Footer: #12171e;

    --Colore--Blu-SemiTrasparente: rgba(0, 121, 195, 0.8);
    --Colore--Blu-Pieno: rgba(0, 121, 195, 0.9);
    /* Colori degli elementi con sintassi:  --Colore-ELEMENTO */
    --Colore-ContenutoDinamico-Anteprima-Testo: var(--Colore--Bianco);
    --Colore-ContenutoDinamico-Anteprima-Sfondo: var(--Colore--Blu-SemiTrasparente);
    --Colore-ContenutoDinamico-Anteprima-Sfondo-Hover: var(--Colore--Blu-Pieno);
    /* Colori di alcuni brand, con sintassi: --Colore-BRAND */
    --Colore-Facebook: #4267B2;
    --Colore-Whatsapp: #25D366;
    --Colore-Twitter: #1DA1F2;
    --Colore-XTwitter: #000000;
    --Colore-Telegram: #3390ec;
    --Colore-Linkedin: #0a66c2;
    --Colore-AzzurroChiaro: #0ea2af;
    --Colore-AzzurroChiaro_SemiTrasparente: #0ea2af44;
    --Colore-AzzurroScurito: #4e787b; /* #026168; /*#497a7e;*/
    --Colore-GrigioScuro: #343a40;
    --Colore-Nero: #000000;
}

/* #endregion TAVOLA COLORI */

/* #region GENERIC ELEMENTS */

body {
    color: #666666;
    color: var(--Colore--Blu-Testo);
    color: #333133;
    font-family: "Josefin Sans", sans-serif;
    font-family: "Judson", serif;
    font-family: "Noto Sans", sans-serif;
    font-family: "Josefin Sans", sans-serif;
    font-family: "Montserrat", sans-serif;
    font-size: 1em;
}

h1, h2, h3 {
    color: #12171e;
    color: #005a8c;
    color: var(--Colore--Blu);
    line-height: 0.5em;
    font-size: 3em;
    font-weight: bold;
    margin-top: 1em;
    margin-bottom:1em;
}

h2 {
    color: #12171e;
    color: #005a8c;
    color: var(--Colore--Blu);
    font-size: 1.8em;
    font-weight: bold;
    line-height: 0.8em;
    /*    text-shadow: 1px 1px 1px var(--Colore--Blu);*/
}

h3 {
    color: #12171e;
    color: #005a8c;
    color: var(--Colore--Blu);
    font-size: 1.6em;
    font-weight: 600;
    line-height: 0.5em;
    /*    text-shadow: 1px 1px 1px var(--Colore--Blu);*/
}

h4 {
    color: var(--Colore--Blu);
    font-size: 1.5em;
    font-weight: 600;
    line-height: 0.5em;
    /*    text-shadow: 1px 1px 1px var(--Colore--Blu);*/
}


.titolo_home h1 {
    color: #12171e;
    color: #005a8c;
    color: var(--Colore--Blu);
    line-height: 0em;
    font-size: 3em;
    font-weight: bold;
    /* text-shadow: 2px 2px 1px var(--Colore--Blu);*/
}
.titolo_home h2 {
    color: var(--Colore--Blu);
    font-size: 1.5em;
    line-height: normal;
    font-weight: bold;
}

.titolo_home h4 {
    color: var(--Colore--Blu);
    font-size: 1.5em;
    line-height: normal;
    font-weight: bold;
}

.layout_page.pagina_dettaglio h1{
    margin-top:4em;
}

b, strong {
    color: var(--Colore--Blu);
}

a {
    color: var(--Colore--Blu);
}

    a.hover,
    a:hover {
        color: #ffffff;
       
        
    }

h1 > a,
h2 > a,
h3 > a,
h4 > a {
    color: var(--Colore--Blu);
}

/* #endregion GENERIC ELEMENTS */

/* #region LAYOUT: HEADER */

.layout_header li:hover {
    /*background-color: #ffffff55;*/
    background-color: var(--Colore--Blu);
}

.layout_header li a {
    color: var(--Colore--Bianco);
    display: inline-block;
    padding: 0 0.5em;
    line-height: 3em;
    text-decoration: none;
    font-weight: bold;
}

.layout_header li a:hover::after
{
	left:0%;
	width:100%;
}

.layout_header {
    color: #384184;
}

    .layout_header:before {
        /* background: linear-gradient(-70deg, #00aaff, #384184 70%);*/
        background: White;
        border-bottom: 1px solid #48b8e1;
       
        background: #0066ccc9;
        opacity: 0.8;
        color: var(--Colore--Blu);
        border-bottom: 2px solid var(--Colore--Blu);
    }

.layout_header .logo {
   
}


.layout_header.mini .logo,
.layout_header #show-menu:checked ~ .logo {
    bottom: 0.5em;
    top: 0.5em;
    padding: 0;
    width: 5em;
    border-width: 0;
}


/* LOGO-SOPRA >> */
.layout_header nav {
    padding-top: 7.5em;
}
    .layout_header .logo {
        background-image: url('/graphics/logo.png');
        bottom: -5em;
        padding-bottom: 1em;
        margin-left: 50%;
        left: -4em;
        top: 0.5em;
        height: 8em;
        width: 8em;
        opacity: 1;
        background-position: center center;
        transition: all 0.25s ease 0s;
    }
.layout_header.mini .logo {
    height: 0;
    opacity: 0;
    left: 0em;
    width: 0;
    transition: all 0.5s ease 0s;
}
/* LOGO-SOPRA << */

.layout_header .show-menu {
    color: var(--Colore--Bianco);
}

.layout_header .show-menu.hover,
.layout_header .show-menu:hover {
    color: #384184;
    
}

/*righe bianche che delimitano il menù principale*/
    .layout_header nav .menu0_container {
        border-top:1px solid var(--Colore--Bianco);
        border-bottom:1px solid var(--Colore--Bianco);
        padding-top:1em;
        padding-bottom:1em;
       
    }


    /* #region MENU' TRASPARENTE */
    .layout_header + .layout_page {
        padding-top: 2em;
        padding: 0 !important;
    }
    /*.layout_header::before {
        background: transparent;
        opacity: 0;
    }*/

    .layout_header.mini::before {
        background: #fffa;
        background: #0066ccc9; 
        opacity: 1;
        color: var(--Colore--Blu);
        border-bottom: 2px solid var(--Colore--Blu);
    }
    /* #endregion MENU' TRASPARENTE */

.layout_header nav li.hover a,
.layout_header nav li:hover a { 
    color: var(--Colore--Bianco); 
    background-color: transparent !important;
}

/*menù centrato invece che spostato piu a destra come standard*/
    .layout_header nav{
        padding-left:0em;
        text-align:center;
    }

    .layout_header nav li a {
        /*background-color:#48b8e1;
    border:1px solid #384184;*/
        line-height: 1.8em;
        font-size:0.9em;
    }

.layout_header nav .flags.nascoste {
    width:0;
    top:0;
    display:none;
}

.layout_header nav .flags.nascoste * {
    display:none;
}


.layout_header nav .flags.hover div,
.layout_header nav .flags:hover div {
    background: #48b8e1 none repeat scroll 0 0;
}


.layout_page.sfondo_scuro > div {
    background-color: black;
    /*filter:blur(5px);*/
}


.layout_page.sfondo_scuro .back_block {
    opacity: 0.7;
    /*filter:blur(5px);*/
}


/* #endregion LAYOUT: HEADER */

/* #region LAYOUT: PAGE */

.layout_page .art_block > a {
    color: #000000;
    color: #FFFFFF;
    background-color: #ffffff;
}

.layout_page .art_block > a > div {
    color: white;
}

.layout_page.pagina_dettaglio img {
    box-shadow: 6px 6px 10px 0px #cccccc;    
}

.layout_page.pagina_dettaglio img.sinistra_dopo_il_titolo,
.layout_page.pagina_dettaglio img.destra_dopo_il_titolo {
    border: 1px solid #384184;
}

/* #endregion LAYOUT: PAGE */

/* #region LAYOUT: FOOTER */

.layout_footer {    
    color: white;
    background-color: var(--Colore--Blu);
}

.layout_footer a {
    color: white;
    margin:0px;
}

.layout_footer a.hover,
.layout_footer a:hover {
    
    color: var(--Colore--Blu);
}

.layout_footer b strong {
    color: #ffffff;
}

.layout_footer h3 {
    color:#ffffff;
}




.sezione .share {
    display: inline-block;
    vertical-align: top;
}

.layout_footer .bottone.facebook,
.share .bottone.facebook {
    background-color: var(--Colore-Facebook);
}

.layout_footer .bottone.whatsapp,
.share .bottone.whatsapp {
    background-color: var(--Colore-Whatsapp);
}

.layout_footer .bottone.twitter,
.share .bottone.twitter {
    background-color: var(--Colore-XTwitter);
}

.layout_footer .bottone.telegram,
.share .bottone.telegram {
    background-color: var(--Colore-Telegram);
}

.layout_footer .bottone.linkedin,
.share .bottone.linkedin {
    background-color: var(--Colore-Linkedin);
}

.layout_page .text_block a.bottone:hover,
 .share .bottone:hover {
    background-color: var(--Colore-AzzurroChiaro);
}

.sezione.pulsanti .bottone {
    margin: 0.5em 0.5em 0.5em 0em;
    min-width: 2.5em;
    text-align: center;
}

.bottone,
.layout_footer a.bottone,
.bottone_form {
    background-color: var(--Colore-GrigioScuro);
    color: white;
    display: inline-block;
    font-size: 1em !important;
    margin: 0em;
    padding: 0.5em 0.5em;
    text-decoration: none !important;
    text-transform: inherit;
    text-shadow: none;
    border: 0;
    border-radius: 5px;
}

.layout_footer p .bottone {
    margin-left: 0;
    margin-top: 0;
}

.bottone:hover,
.layout_footer a.bottone:hover {
    /*background-color: #000000 !important;*/
    background-color: var(--Colore-AzzurroChiaro);
    /* border: 1px solid #fe0000 !important; */
    /* color: #fe0000 !important; */
    /* box-shadow: 0px 0px 0px red; */
}



/* #endregion LAYOUT: FOOTER */



.home_elenco h2 {
    color: #12171e;
    color: #005a8c;
    color: var(--Colore--Blu);
    font-size: 2em;
    font-weight: 600;
    font-weight:bold;
    line-height:normal;
    /*    text-shadow: 1px 1px 1px var(--Colore--Blu);*/
}
.home_elenco h3 {
    color: var(--Colore--Blu);
    font-size: 2em;
    font-weight: bold;
    line-height: normal;
   
}


/* #region BOTTONI SOCIAL PAGINA CONTATTI */
a.tondo_social {
    background: black;
    border-radius: 50%;
    height: 1.5em;
    width: 1.5em;
    display: inline-block;
    position: relative;
}

    a.tondo_social .fa {
        color: #ffffff;
        position: absolute;
        width: 0.1em;
        height: 0.3em;
        left: 0.325em;
        top: 0.325em;
    }

.tondo_social .fa {
    color: white;
}

a.tondo_social {
    background: blue;
}

    a.tondo_social:hover {
        background: red;
    }
/* #endregion BOTTONI SOCIAL PAGINA CONTATTI */




/* #region BORDI */

/*bordo separatore tra foto*/
.bordo .back_block {
    border: 2px solid white;
}

/*bordo alla foto che sta a destra del testo*/
.bordo_foto_DX .blk_2_2 .back_block {
    border-bottom: 2px solid var(--Colore--Blu);
}

/*bordo alla foto che sta a sinistra del testo*/
.bordo_foto_SX .blk_1_2 .back_block {
    border-bottom: 2px solid var(--Colore--Blu);
}

/*.blocco_bordato .back_block {
    border: 2px solid red;
}*/

/* ROBY-251201 >> * /
.blocco_bordato {
    border: 2px solid var(--Colore--Blu);
    max-width:60%;
}
/* ROBY-251201 -- */
.blocco_bordato > div {
    border: 2px solid var(--Colore--Blu);
}
@media screen and (max-width: 480px) 
{
	.hamburger-menu .blocco_bordato > div {
		margin-left:1em;
		margin-right:1em;
	}
}
/* ROBY-251201 << */


.html5-video-player {
	background: #FF0000 !important;
}


/* #endregion BORDI */
/* #region CLASSES */
/* #region .menu_secondario */
.layout_header nav .menu_secondario {
    color: #384184;
    font-weight: bold;
    display: none;
}

.layout_header nav .menu_secondario p {
    border-left:1px solid #384184;
}

.layout_header nav .menu_secondario a {
    color: #384184;
    font-weight:bold;
}

.layout_header nav .menu_secondario a.hover,
.layout_header nav .menu_secondario a:hover {
    color: #384184;
}

/* #endregion .menu_secondario */


.testo_header p {
    width: 80%;
    font-family: "Montserrat", sans-serif;
    color: white !important;
    font-size: 2.5em !important;
    /*text-transform:uppercase;*/
    /*text-shadow: 1px 1px 1px #FFFFFF, 0px 0px 10px #FFFFFF !important;*/
    line-height: 1.4em;
    margin-top: 1em;
    margin-bottom: 1em;
    /*font-weight:lighter;*/
    text-align: center;
    /*background: rgba(56,65,132,0.8);*/
    padding-top: 1em;
    padding-bottom: 1em;
}

.testo_header strong {
    font-size: 1.5em !important;
    /*text-transform:uppercase;*/
    /*text-shadow: 1px 1px 1px #FFFFFF, 0px 0px 10px #FFFFFF !important;*/
    line-height:1.2em;  
    margin-top: 2em;
   color: white !important;
    
}

.testo_foto_sovrapposti {
    width: 30%;
    background: rgba(255,255,255, 1);
    background-color: white;
    margin-top: 1em;
    margin-bottom: 1em;
    text-align: center;
    padding-top: 1em;
    padding-bottom: 1em;
    color:var(--Colore--Bianco);
    border: 1px solid var(--Colore--Marrone);
}

    .testo_foto_sovrapposti h2 {
        border: none;
        color: var(--Colore--Bianco);
    }



.servizi b,
.servizi strong {
    font-size: 1.5em;
    line-height: 0em;
    color: var(--Colore--Blu);
 
}

.servizi h3 {
    font-size: 1.8em;
    line-height: 1em;
    color: var(--Colore--Blu);

}



/* #region .stacktable */

/* --- GENERIC ELEMENT+CLASSES --- */

table.stacktable tr:nth-child(2n+1) {
    background-color:rgba(125,125,125,0.125);
}

table.stacktable thead tr,
table.stacktable thead tr:nth-child(2n+1) {
    background-color:transparent;
}

table.stacktable.small-only .st-head-row  {
    border-bottom:1px solid #384184;
}

/* #endregion .stacktable */

/* #region .bottone */

.bottone {
    border: 2px solid var(--Colore--Blu);
    background-color: transparent;
    color: var(--Colore--Blu) !important;
    text-transform: uppercase;
    font-family: "Noto Sans", sans-serif;
    font-family: "Josefin Sans", sans-serif;
    font-family: "Montserrat", sans-serif;
}

    .bottone.hover,
    .bottone:hover {
        background-color: var(--Colore--Blu) !important;
        color: #ffffff !important;
    }

/* #endregion // .bottone */

/* #region .tondo + .tondo_footer + .fa-tondo*/

/* icone "font awensome" */

.tondo {
    background: #384184;    
}

.tondo .fa {
    color: #ffffff;
}

a.tondo_footer {
    background: var(--Colore--Blu);
}

a.tondo_footer:hover {
    background: grey;
}

.fa-tondo {
    background: var(--Colore--Blu);
    color: #ffffff;
}

/* #endregion // .tondo + .tondo_footer */

/* #region .galleria_immagini */

.layout_page > div > .text_block .galleria_immagini {
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
}

.galleria_immagini a {
    border:1px solid #384184;
    box-shadow:6px 6px 10px 0px #cccccc;
}

/* #endregion galleria_immagini */

/* #endregion CLASSES */

/* #region SPECIFIC CLASSES */

/* #region .newback (x softimax.it) */

.layout_page.newback > div h1,
.layout_page.newback > div h2,
.layout_page.newback > div h3,
.layout_page.newback > div p,
.layout_page.newback > div > .back_block:first-child + .text_block:last-child, 
.layout_page.newback > div > .text_block > .back_block {
    text-shadow:none;
}

.layout_page.newback h1 
{
    font-size: 2em;
    font-weight:normal;
}


.layout_page.newback h2 {
    font-size: 1.6em;
    font-weight: normal;
}

.layout_page.newback h3 
{
    font-size: 1.1em;
    margin-bottom: 0;
    margin-top: 0;
    text-align:left;
}


.newback:before 
{
    content:'';
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    right:0;
    background-color:transparent;
    
}

.newback-skew-up:before
{
    -webkit-transform: skewY(-10deg);
    transform: skewY(-10deg);
}

.newback-skew-down:before
{
    -webkit-transform: skewY(10deg);
    transform: skewY(10deg);    
}

.newback-origin-topleft:before
{
    -webkit-transform-origin: 0;
    transform-origin: 0;    
}

.newback-origin-center:before
{
    -webkit-transform-origin: center;
    transform-origin: center;    
}

.newback-origin-bottomright:before
{
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;    
}

.newback-clip 
{
    overflow:hidden;   
}

.newback-blu:before
{
    background: linear-gradient(-90deg, #48b8e1, #384184 90%);
}

    .layout_page.newback-blu h1,
    .layout_page.newback-blu h2 {
        color:#ffffff;
        text-shadow:none !important;
        color:#ffffff !important;
    }

    .layout_page.newback-blu h3 {
        color: #80d4ff;    
        text-shadow:none !important;
    }
    
    .layout_page.newback-blu p {
        color: #ffffff; 
        text-shadow:none !important;
    }

    .layout_page.newback-blu strong {
        color: White;
    }

    .layout_page.newback-blu a {
        color:white;
        display:inline-block;
    }
    
    .layout_page.newback-blu a.hover,
    .layout_page.newback-blu a:hover {
        color:#384184;
        background-color:#ffffff;
    }
    
  

    .layout_page.newback-blu .bottone {
        border-color: #ffffff;
        background-color: transparent;    
        color:#ffffff !important;
    }

    .layout_page.newback-blu .bottone.hover,
    .layout_page.newback-blu .bottone:hover {
        background-color: #ffffff;
        color: #384184 !important;        
    }



/* #endregion sfondo-obliquo */

/* #region .icone (x softimax.it) */

.layout_page.icone p {
    min-height:0em;

}

.layout_page.icone h3 {
    margin-bottom: 0;
    font-size:1em;
    font-weight:bold;
}

.layout_page.icone h3+p {
    margin-top:0;    
}

.icone {
    color:var(--Colore--Blu);
    
}
.icone fa-icona {
    color: var(--Colore--Blu);
}

.layout_page.icone b,
.layout_page.icone strong {
   
    margin-right: 1em;
    font-weight: normal;
    display: inline-block;
}



/* #endregion .icone */
/* #region .campo-form */
.campo-form {
    margin-top: 1em;
    margin-bottom: 1em;
    color: var(--Colore--Bianco);
}

.campo-form input,
.campo-form textarea,
.campo-form select, /* SCM v.1.9j */
.campo-form *[sfx-form-field="1"] /* SCM v.1.9j */ 
{
    background: #eee;
    color: black;
    width: 100%;
    padding: 4px;
    border: 1px solid black;
    border-radius: 2px;
}

/* agisce su foto e contenitore del form, per esempio per angoli arrotondati */ 
.sfondo_contatti .back_block {
    border-radius: 0em;
}

/*classe applicata al singolo form, per gestire link */
.contatti_form a {
    text-decoration: underline;
    color:var(--Colore--Bianco);
}

.contatti_form h2 {
    color:var(--Colore--Bianco);
}
.contatti_form p {
    color: var(--Colore--Bianco);
}

/* classe applicata al singolo form, per gestire hover su link presenti*/
.contatti_form a:hover {
        background-color: transparent;
        color:var(--Colore--Bianco);
        text-decoration: none;
    }

.bottone_form {
    border: 2px solid var(--Colore--Bianco);
    background-color: transparent;
    color: var(--Colore--Bianco);
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
}

.bottone_form.hover,
.bottone_form:hover {
    background-color: var(--Colore--Bianco);
    color: var(--Colore--Blu);
}

/* #endregion .campo-form */




/* #region .portfolio / .news / .contatti (x softimax.it)*/

.portfolio .layout_header:before,
.news .layout_header:before,
.contatti .layout_header:before {
    opacity:1;
}

.layout_page.portfolio-title,
.layout_page.news-title {
    z-index: 5;
    /*top: 6em; /* v1.9e */
}

.layout_page.portfolio-title h2,
.layout_page.news-title {
    text-shadow:none !important;
    color:#ffffff;
}

.layout_page.portfolio,
.layout_page.news,
.layout_page.news-con-anteprima,
.layout_page.offerte-con-anteprima,
.layout_page.offerte-con-anteprima-sotto {
    /* v1.9e >>
    padding-top: 6em;	
    padding-bottom: 7em;
	/* v1.9e -- */
    padding-top: 1em;
    padding-bottom: 1em;
    /* v1.9e << */
}

.layout_page.pagina_dettaglio.portfolio,
.layout_page.pagina_dettaglio.news {
    margin-top: 2em;
}

.layout_page.pagina_dettaglio > div > .text_block > .testo2 {
    /* serve per mandare a capo il 2o testo*/
    clear: both; 
}

.layout_page.portfolio-footer,
.layout_page.news-footer {
    top: -7em;
}

.layout_page.portfolio-footer .bottone,
.layout_page.news-footer .bottone {
    border-color: #ffffff;
    background-color: transparent;    
    color:#ffffff !important;
}

.layout_page.portfolio-footer .bottone.hover,
.layout_page.portfolio-footer .bottone:hover,
.layout_page.news-footer .bottone.hover,
.layout_page.news-footer .bottone:hover {
    background-color: #ffffff;
    color: #384184 !important;        
}

.newback.news:before {
    
}

.newback.news-footer:before {
    height: 14em;
}

.layout_page.portfolio .art_block > a.img_background  {
    border: 1px solid #384184;
    box-shadow: 4px 4px 10px 0px rgba(0,0,0,0.25);
}

.layout_page.portfolio .art_block > a.img_background > b {
    display: block;
    position: absolute;
    top:50%;
    left:1em;
    right:1em;
    text-align: center;
    padding: 0.5em;
    font-size:0.85em;
    font-weight:normal;
    color: #ffffff;
    background-color: #384184;
    box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.75);
}

.layout_page.portfolio .art_block > a.img_background > div {
    padding: 1em;
    background: #dddddd;
    min-height: 5em;
    text-shadow: none;
    color: #384184;
    overflow: hidden;    
    background-color: rgba(128,212,255, 0.9);
    
    text-align:center;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.layout_page.portfolio .art_block > a.img_background > div p 
{
    color: #384184;
    text-align:center;
}

.layout_page.news .art_block > a.img_background,
.layout_page.news-con-anteprima .art_block > a.img_background {
    overflow:hidden;
    padding-left:0;
    padding-bottom:0;
    padding-right:0;
    border: 2px solid var(--Colore--Blu);
    box-shadow: 4px 4px 10px 0px rgba(0,0,0,0.25);
	min-height: 25em; /*v1.9e*/
    width: 100%; /*v1.9e*/
}    

.layout_page.news .art_block > a.img_background > b,
.layout_page.news-con-anteprima .art_block > a.img_background > div > p > b {
	display:block;
	font-weight:bold;
    color:var(--Colore-ContenutoDinamico-Anteprima-Testo);
}




.layout_page.offerte-con-anteprima .art_block > a.img_background,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background {
    overflow: hidden;
    padding-left: 0;
    padding-bottom: 0;
    padding-right: 0;
    border: 2px solid var(--Colore--Blu);
    box-shadow: 4px 4px 10px 0px rgba(0,0,0,0.25);
    min-height: 25em; /*v1.9e*/
    width: 100%; /*v1.9e*/
}

.layout_page.news .art_block > a.img_background > b,
.layout_page.offerte-con-anteprima .art_block > a.img_background > div > p > b,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background > div > p > b {
	display: block;
	font-weight: bold;
	color: var(--Colore-ContenutoDinamico-Anteprima-Testo);
	color: var(--Colore--Bianco);
}

.art_block > a.img_background > b {
    background: var(--Colore--Blu);
    color: #ffffff;
    width: auto;
    display: block;
    margin-top: 0;
    padding: 0.25em 0;
}

.layout_page.news .art_block > a.img_background > b {
    padding:0.5em;    
    /* min-height:3em; /* v1.9e */
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	text-align:center;
	background-color: var(--Colore-ContenutoDinamico-Anteprima-Sfondo);
}

.layout_page.news-con-anteprima .art_block > a.img_background > div > p > b {
	background-color:var(--Colore-Trasparente);
}

.layout_page.offerte-con-anteprima .art_block > a.img_background > div > p > b,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background > div > p > b {
    background-color: var(--Colore-Trasparente);
    color: var(--Colore--Blu);
}

.layout_page.news .art_block > a.img_background > div,
.layout_page.news-con-anteprima .art_block > a.img_background > div {
    /*top: 20em; 	/* v1.9e */
    /*left: 1em; 	/* v1.9e */
    left: 0; 		/* v1.9e */
    /*right: 1em; 	/* v1.9e */
    right: 0; 		/* v1.9e */
    bottom:0;    
    padding:0;
    position:absolute;
    overflow:hidden;
    transition: all 0.25s 0s ease;
    background-color: var(--Colore-ContenutoDinamico-Anteprima-Sfondo);    		
}
.layout_page.news .art_block > a.img_background > div,
.layout_page.offerte-con-anteprima .art_block > a.img_background > div {
    /*top: 20em; 	/* v1.9e */
    /*left: 1em; 	/* v1.9e */
    left: 1em; /* v1.9e */
    /*right: 1em; 	/* v1.9e */
    right: 1em; /* v1.9e */
    /*bottom: 3em;
    top: 3em;*/
    padding: 0;
    position: absolute;
    overflow: hidden;
    transition: all 0.25s 0s ease;
    background-color: rgba(0,121,195, 1);
}

.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background > div {
    /*top: 20em; 	/* v1.9e */
    /*left: 1em; 	/* v1.9e */
    left: 1em; /* v1.9e */
    /*right: 1em; 	/* v1.9e */
    right: 1em; /* v1.9e */
    bottom: 3em;
    top: 3em;
    padding: 0;
    position: absolute;
    overflow: hidden;
    transition: all 0.25s 0s ease;
   
  
}

.layout_page.news .art_block > a.img_background > div
{
	max-height: 0;    /* v1.9e */
	top: 20em; 	/* v1.9e */
    left: 1em; 	/* v1.9e */
    right: 1em; 	/* v1.9e */    
	padding:1em;
}

.layout_page.news .art_block > a.img_background.hover > div,
.layout_page.news .art_block > a.img_background:hover > div {
    max-height: 20em;    /* v1.9e */
	top: 0em; 	/* v1.9e */
    left: 0em; 	/* v1.9e */
    right: 0em; 	/* v1.9e */    
}

.layout_page.news-con-anteprima .art_block > a.img_background.hover > div,
.layout_page.news-con-anteprima .art_block > a.img_background:hover > div {
	/* v1.9e >>
padding:1em;
max-height:20em;
color: rgba(56,65,132, 1);
v1.9e << */
	padding-top: 1em;
	padding-bottom: 1em;
	background-color: var(--Colore-ContenutoDinamico-Anteprima-Sfondo-Hover);
}

.layout_page.offerte-con-anteprima .art_block > a.img_background.hover > div,
.layout_page.offerte-con-anteprima .art_block > a.img_background:hover > div {
    /* v1.9e >>
    padding:1em;
    max-height:20em;
    color: rgba(56,65,132, 1);
	v1.9e << */
    padding-top: 0em;
    padding-bottom: 0em;
    background-color: rgba(0,121,195, 0.6);
    color: var(--Colore--Bianco) !important;
}

.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background.hover > div,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background:hover > div {
    /* v1.9e >>
    padding:1em;
    max-height:20em;
    color: rgba(56,65,132, 1);
	v1.9e << */
    padding-top: 0em;
    padding-bottom: 0em;
    background-color: var(--Colore-ContenutoDinamico-Anteprima-Sfondo-Hover);
    color: var(--Colore--Bianco) !important;
}

.layout_page.news .art_block > a.img_background > div p,
.layout_page.news-con-anteprima .art_block > a.img_background > div p {
    text-align:center;
    /* color: rgba(0,0,0,0); 	/* v1.9e */
    transition: all 0.25s 0s ease;
	font-size: 0.9em; /* v1.9e */
    font-weight:normal; /* v1.9e */
}

.layout_page.offerte-con-anteprima .art_block > a.img_background > div p {
    text-align: center;
    /* color: rgba(0,0,0,0); 	/* v1.9e */
    transition: all 0.25s 0s ease;
    font-size: 0.9em; /* v1.9e */
    font-weight: normal; /* v1.9e */
    color: var(--Colore--Bianco);
}
.layout_page.offerte-con-anteprima .art_block > a.img_background > div strong {
    
   
    color: var(--Colore--Bianco);
}

.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background > div p {
    text-align: center;
    /* color: rgba(0,0,0,0); 	/* v1.9e */
    transition: all 0.25s 0s ease;
    font-size: 0.9em; /* v1.9e */
    font-weight: normal; /* v1.9e */
    color: var(--Colore--Blu);
}

.layout_page.news .art_block > a.img_background.hover > div p,
.layout_page.news .art_block > a.img_background:hover > div p,
.layout_page.news-con-anteprima .art_block > a.img_background.hover > div p,
.layout_page.news-con-anteprima .art_block > a.img_background:hover > div p {
    color: rgba(255,255,255,1);
    transition: all 1s 0s ease;
}

.art_block > a.img_background > b {
    /* display:none;*/
}

.layout_page.offerte-con-anteprima .art_block > a.img_background.hover > div p,
.layout_page.offerte-con-anteprima .art_block > a.img_background:hover > div p,
.layout_page.offerte-con-anteprima .art_block > a.img_background.hover > div strong,
.layout_page.offerte-con-anteprima .art_block > a.img_background:hover > div strong,
.layout_page.offerte-con-anteprima .art_block > a.img_background.hover > div b,
.layout_page.offerte-con-anteprima .art_block > a.img_background:hover > div b,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background.hover > div p,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background:hover > div p,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background.hover > div strong,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background:hover > div strong,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background.hover > div b,
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background:hover > div b {
    color: var(--Colore--Bianco);
    transition: all 1s 0s ease;
}

.layout_page.pagina_dettaglio.portfolio img.sinistra_dopo_il_titolo + p,
.layout_page.pagina_dettaglio.portfolio img.destra_dopo_il_titolo + p {
    color: #384184;
    display: inline-block;    
    max-width: 40% !important;
    margin: 1em 0;
    font-size:1.1em;
}

.layout_page.pagina_dettaglio.portfolio img.sinistra_dopo_il_titolo ~ h3 {
    clear:both;
}


/* #endregion .portfolio */

.layout_page > div > .back_block:first-child + .text_block:last-child,
.layout_page > div > .text_block > .back_block {
    text-shadow: 0px 0px 0px #fff;
}

.form_contatti .pannello {
  text-shadow: 0px 0px 0px #fff;
}

.nota_informativa p,
.layout_page.nota_informativa > div > .text_block > p {
    font-size: 10px;
    color: #222222;
  
}

.nota_informativa_contatti a {
    font-size: 12px;
    color: #384184;
    text-decoration: underline;
}


.nota_informativa a {
    font-size: 10px;
    color: #384184;
    text-decoration: underline;
}

.nota_informativa a.hover,
.nota_informativa a:hover {
    color: white;
    text-decoration: none;
}



/* #region .intestazione (x softimax.it)*/

.intestazione >DIV {
    padding-top:1em;    
}

/* #endregion .intestazione */

/* #region .apponline (x softimax.it) */

.apponline .art_block {
    border: 1px solid #384184;
    margin: 1em !important;
    box-shadow: 5px 5px 10px 0 #ccc;
    text-align:center;
}

.apponline .art_block > a.img_background {
    background-size: contain;
    background-position: center;
    padding-top:8em;
    position:relative;
    margin-bottom:6em;
}

.apponline .art_block > a.img_background > b
{
    position:absolute;
    top:9em;
    left:0;
    right:0;
    background-color:#384184;
}

.apponline .art_block > a > div {
    position:absolute;
    top:11em;
    left:0;
    right:0;
}

.apponline .art_block > a > div > p {
    text-align:center;
}

/* #endregion .apponline */

/* #region .credits-list (x softimax.it) */

.credits-list p {
    display: inline-block;
    width: 200px;
    vertical-align: top;
    margin: 10px !important;
    padding: 0;
    padding-top: 170px !important;
    position: relative;
    text-align: center !important;
    font-size: 0.7em;
}

.credits-list img {
    display:block;
    position:absolute;
    left:0;
    top:0;
    max-height:180px;
}

/* #endregion .credits-list */

/* #endregion SPECIFIC CLASSES */

/* #region RESPONSIVE (all overrides) */

@media screen and (min-width: 2001px) 
{
    /*ALTRE CLASSI*/
    .newback-skew-up:before,
    .newback-skew-down:before {
        -webkit-transform: none;
        transform: none;
    }
}

@media screen and (min-width: 1201px) 
{
}

@media screen and (max-width: 1200px) 
{
    /*LAYOUT-HEADER*/
    .layout_header .logo {
        /* LOGO-SOPRA >> */
        height: 7.5em;
        bottom: unset;
        /* LOGO-SOPRA << */
    }

    /*ALTRE CLASSI*/
    .layout_page.newback h1,
    .layout_page.newback h2 {
        font-size: 1.9em;
    }   
}

@media screen and (max-width: 1024px) 
{
    /*LAYOUT-HEADER*/
    .layout_header .logo {
        /* LOGO-SOPRA >> * /
        width: 6em;
        bottom: -2em;
        /* LOGO-SOPRA -- */
        height:7em;
        bottom:unset;
        /* LOGO-SOPRA << */
    }

    /*ALTRE-CLASSI*/\
    .layout_page.newback h1 {
        font-size: 1.6em;
    }
    .layout_page.newback h2 {
        font-size: 1.6em;
    }
    .testo_header p {
        width: 90%;
        font-size: 2em !important;
        line-height: 1.4em;
        margin-top: 1em;
        margin-bottom: 1em;
        padding-top: 1em;
        padding-bottom: 1em;
    }

    .testo_header strong {
        font-size: 1.6em !important;
        line-height: 1.2em;
        margin-top: 2em;
    }

    .titolo_home h1,
    h1 {
        line-height: 1em;
        font-size: 2.4em;
        font-weight: bold; 
    }

    .titolo_home h2 {
        font-size: 1.5em;
        line-height: normal;
        font-weight: bold;
    }

    .titolo_home h4 {
        font-size: 1.3em;
        line-height: normal;
        font-weight: bold;
    }

    .home_elenco h2,
    h2 {
        font-size: 1.7em;
        font-weight: bold;
        line-height: normal;
    }

    .home_elenco h3,
    h3 {
        font-size: 1.7em;
        line-height: normal;
        font-weight: normal;
    }

    .servizi b,
    .servizi strong {
        font-size: 1.2em;
        line-height: 0em;
        color: var(--Colore--Blu);
    }

}


@media screen and (min-width: 901px) {
    /* NO-FLAGS >> */
    .layout_header nav .flags div {
        left: 0;
        position: absolute;
        top: -0.5em;
        z-index: 999;
        line-height: 1em;
        vertical-align: middle;
    }
    .layout_header nav .flags div::after {
        content: '\f078'; /* fa-chevron-down */
        display: block;
        position: absolute;
        right:0;
        top: 2em;
        font: normal normal normal 14px / 1 FontAwesome;
        font-size: 0.5em;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        opacity: 1;
        transition: all 0.25s ease 0s;
        color: #ffffff; /* da modificare in base allo stile del resto del menu */
    }
    .layout_header nav .flags.hover div::after,
    .layout_header nav .flags:hover div::after {
        opacity: 0;        
    }
    .layout_header nav .flags.hover div,
    .layout_header nav .flags:hover div {
        border-radius: 2px; /* da modificare in base allo stile del resto del menu */
        background-color: var(--Colore--Blu); /* da modificare in base allo stile del resto del menu */
        color: #000000; /* da modificare in base allo stile del resto del menu */
    }

    .layout_header nav .flags .flag {
        display: block;
        height: 0;
        opacity: 0.75;
        transition: all 0.25s ease 0s;
        overflow: hidden;
        margin: 0em auto 0em auto;

        /* FX-Sottolineato >> */
        position: relative;
        /* FX-Sottolineato << */
    }

    /* FX-Sottolineato */
    .layout_header nav .flags .flag::after {
        content: '';
        display: block;
        position: absolute;
        top: -2px;
        bottom: -2px;
        left: 50%;
        width: 0%;
        border-top: 1px solid var(--Colore--Bianco);
        border-bottom: 1px solid var(--Colore--Bianco);
        transition: all 0.25s ease 0s;
    }
    /* sulla prima lingua ci sono difetti dovuti al font, eventualmente cambiare */
    html[lang=it] .layout_header nav .flags .flag::after {
        top: -4px;
        bottom: 0;
    }

    .layout_header nav .flags .flag.hover::after,
    .layout_header nav .flags .flag:hover::after,
    html[lang=it] .layout_header nav .flags.hover .flag.it::after,
    html[lang=en] .layout_header nav .flags.hover .flag.en::after,
    html[lang=fr] .layout_header nav .flags.hover .flag.fr::after,
    html[lang=de] .layout_header nav .flags.hover .flag.de::after,
    html[lang=ru] .layout_header nav .flags.hover .flag.ru::after,
    html[lang=it] .layout_header nav .flags:hover .flag.it::after,
    html[lang=en] .layout_header nav .flags:hover .flag.en::after,
    html[lang=fr] .layout_header nav .flags:hover .flag.fr::after,
    html[lang=de] .layout_header nav .flags:hover .flag.de::after,
    html[lang=ru] .layout_header nav .flags:hover .flag.ru::after {
        transition: all 0.25s ease 0s;
        left: 25%;
        width: 50%;
    }
    /* FX-Sottolineato */


    .layout_header nav .flags.hover .flag,
    .layout_header nav .flags:hover .flag,
    html[lang=it] .layout_header nav .flags .flag.it,
    html[lang=en] .layout_header nav .flags .flag.en,
    html[lang=fr] .layout_header nav .flags .flag.fr,
    html[lang=de] .layout_header nav .flags .flag.de,
    html[lang=ru] .layout_header nav .flags .flag.ru {
        display: block;
        height: 1em;
        line-height: 1em;
        font-size: 0.9em;
        margin: 1em auto 1em auto;
        transition: all 0.25s ease 0s;
        overflow: visible;
    }    
    /* NO-FLAGS << */
}


@media screen and (max-width: 900px) {
    .layout_header .logo,
    .layout_header.mini .logo {
        background-image: url('/graphics/logo.png');
        bottom: -5em;
        padding-bottom: 1em;
        margin-left: 50%;
        left: -4em;
        top: 0.5em;
        height: 8em;
        width: 8em;
        opacity: 1;
        background-position: center center;
        transition: all 0.25s ease 0s;
    }

    /* NO-FLAGS >> */
    .layout_header nav .flags,
    .layout_header nav .flags > div,
    .hamburger-menu .layout_header nav .flags,
    .hamburger-menu .layout_header nav .flags > div {
        width: auto;
        display: block;
        text-align: center;
        position: relative;
    }
    /* NO-FLAGS << */

    .testo_header p {
        width: 95%;
        font-size: 1.8em !important;
        line-height: 1.4em;
        margin-top: 1em;
        margin-bottom: 1em;
        padding-top: 1em;
        padding-bottom: 1em;
    }

    .testo_header strong {
        font-size: 1.6em !important;
        line-height: 1.2em;
        margin-top: 2em;
    }
}

@media screen and (max-width: 768px) 
{
    /*LAYOUT-HEADER*/
    
    /* LOGO-SOPRA >> * /
    .layout_header .logo {
        width: 5em;
        bottom: -3em;
    }
    /* LOGO-SOPRA << */

    .layout_header nav {
        background: #ffffff;
    }    
    .layout_header #show-menu:checked ~ nav {
       /* background-image: url(/graphics/simbolo_softimax.png);*/
       background-color: White;
       background-size: 150% auto;
    }    
    .layout_header nav > ul.menu0_container {
        background: rgba(255,255,255,0.85);
    }    
    .layout_header li.hover,
    .layout_header li:hover {
        background-color: transparent;
    }
    .layout_header li a {
        color: #384184;
    }
    .layout_header nav .flags.hover,
    .layout_header nav .flags:hover,
    .layout_header nav .flags.hover div,
    .layout_header nav .flags:hover div {
        background: transparent;
    }
    .layout_header nav .flags .flag {
        border-width: 2px !important;
        border: 2px solid transparent;
        padding: 2px !important;
        border-radius: 4px;
    }
    .layout_header nav .flags .flag.hover,
    .layout_header nav .flags .flag:hover {
        border-color: #48b8e1;
    }
    
    /* LAYOUT PAGE */
    .layout_page.colora_testi_768 .text_block {
        background: #b3e5ff;
        color: #384184;
        box-shadow: 5px 5px 20px 0px #cccccc;
    }       
    .layout_page.colora_blocco_768 {
        background: #b3e5ff;        
        color:#384184;
    }
    .layout_page.colora_testi_768.icone .text_block {
        /*background: linear-gradient(-180deg, #fff, #b3e5ffb0 );*/
        background-color: #384184;
    }
    .layout_page.pagina_dettaglio.portfolio img.sinistra_dopo_il_titolo + p, 
    .layout_page.pagina_dettaglio.portfolio img.destra_dopo_il_titolo + p {
        max-width:100% !important;
       
    }

    /*ALTRE CLASSI*/
    .layout_page.apponline.text_blocks_3 > div > .text_block,
    .layout_page.apponline.art_blocks_3 > div > .art_block {
        min-width: 80%;
    }    
    .newback-skew-up:before,
    .newback-skew-down:before {
        -webkit-transform: none;
        transform: none;
    }

    .titolo_home h1,
    h1 {
        line-height: 1em;
        font-size: 1.9em;
        font-weight: bold;
    }

    .titolo_home h2 {
        font-size: 1.5em;
        line-height: normal;
        font-weight: bold;
    }

    

    .titolo_home h4 {
        font-size: 1em;
        line-height: normal;
        font-weight: bold;
    }

    .home_elenco h2,
    h2 {
        font-size: 1.5em;
        font-weight: bold;
        line-height: normal;
    }

    .home_elenco h3,
    h3 {
        font-size: 1.5em;
        line-height: normal;
        font-weight: bold;
    }

    .testo_header p {
        width: 95%;
        font-size: 1.4em !important;
        line-height: 1.4em;
        margin-top: 1em;
        margin-bottom: 1em;
        padding-top: 1em;
        padding-bottom: 1em;
    }

    .layout_footer h4{
        font-size:1.2em;
        line-height:1em;
    }
}

@media screen and (max-width: 600px) 
{
    /*LAYOUT-HEADER*/
    /* LOGO-SOPRA >> * /
    .layout_header .logo {
        width: 4em;
        bottom: -2em;
    }
    .layout_header.mini .logo,
    .layout_header #show-menu:checked ~ .logo {
        bottom: 1px;
        width: 2em;
        border-width: 0;
    }
    /* LOGO-SOPRA >> */

    .layout_header li a {
        color: #384184;
        font-size: 1.5em;
    }

    /*ALTRE CLASSI*/
    .layout_page.newback h1 {
        font-size: 1.6em;
    }
    .layout_page.newback h2 {
        font-size: 1.6em;
    }
  
}

@media screen and (max-width: 480px) 
{
    /*ALTRE CLASSI*/
    .layout_page.newback h1 {
        font-size: 2em;
    }
    .layout_page.newback h2 {
        font-size: 1.6em;
    } 
}

@media screen and (max-width: 320px) 
{
}

/* #endregion RESPONSIVE (all overrides) */





.hamburger-menu .layout_header.mini .logo {
        height: 6em;
        transition: all 0.5s ease 0s;
    }
	
.hamburger-menu .layout_header #show-menu:checked ~ .logo,
.hamburger-menu .layout_header.mini #show-menu:checked ~ .logo
{
	top:0;
	left:1em;
	margin-left:0;		
	width:5em;
	height:6em;
}
.hamburger-menu .layout_header nav {
	font-size:0.7em;
}

.hamburger-menu .layout_header nav .menu1_container {
	font-size:0.7em;
	padding:0;
}

.hamburger-menu .layout_header nav .menu1_container,
.hamburger-menu .layout_header nav .menu1_container li,
.hamburger-menu .layout_header nav .menu1_container li a {
	font-weight:normal;
}	

.hamburger-menu .layout_header nav li a,
.hamburger-menu .layout_header nav li:hover a, 
.hamburger-menu .layout_header nav li.hover a {
    color:  var(--Colore--Blu);
    background-color: transparent !important;
	transition: background-color 0.25s 0s ease;
}

.hamburger-menu .layout_header nav .flags .flag,
.hamburger-menu .layout_header nav .flags .flag,
html.hamburger-menu .layout_header nav .flags .flag, 
.hamburger-menu .layout_header nav .flags:hover .flag, 
.hamburger-menu .layout_header nav .flags.hover .flag {
	line-height:1.5em;
}

.hamburger-menu .layout_header nav li > a.hover, 
.hamburger-menu .layout_header nav li > a:hover,
.hamburger-menu .layout_header nav .flags .flag.hover,
.hamburger-menu .layout_header nav .flags .flag:hover
{
	border-color:transparent;
	color: var(--Colore--Bianco);
    background-color: var(--Colore--Blu) !important;	
}






.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background {
    background-size: auto 25em;
    background-position: center top;
	height:40em;
}
.layout_page.offerte-con-anteprima-sotto .art_block > a.img_background > div {
	left:0;
	right:0;
	bottom:0;
	top:25em;	
	height:20em;
	overflow-y: auto;
}
