/*
 Theme Name:     Divi Child
 Theme URI:      https://www.4plays.it
 Description:    Divi Child Theme
 Author:         4Plays
 Author URI:     https://www.4plays.it
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */
/* Background fisso per l'intera pagina */
/*body {
    background-image: url('/wp-content/uploads/2024/06/34.png');
    background-attachment: fixed;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}*/

@font-face {
    font-family: Lutech;
    src: url(/wp-content/themes/divi-child/fonts/lutech-woff2-data.woff2) format("woff2"),url(/wp-content/themes/divi-child/fonts/lutech-woff-data.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

/*logo*/
/* Cambia il logo quando la sezione diventa sticky */
.et_pb_sticky--top .et_pb_menu__logo a img {
    content: url('/wp-content/uploads/2024/06/Logo-SoftJam-normal.png') !important;
}
a {
	cursor: pointer;
	position: relative;
    z-index: 10;
}


.occhiello {
    font-family: Lutech, sans-serif;
    font-weight: 400;
    letter-spacing: .00625rem;
    font-size: 1rem;
    line-height: 1.5rem;
    text-transform: uppercase;
    margin-bottom: 12px;
    color: #000;
}
body {
    margin: 0;
    font-family: "Montserrat",sans-serif;
    font-size: .9375rem;
    font-weight: 300;
    line-height: 1.5;
    color: #333;
    text-align: left;
    background-color: #fff
}
.et-fixed-header#main-header {
    box-shadow: none !important;
    background-color: white;
    padding: 15px 0;
}
.footer-legal-info {
	font-size: .625rem;
    line-height: 1.125rem;
    color: #333;
    margin-bottom: 20px;
}
.footer-title {
    font-weight: 700;
    color: #e81b44;
    text-transform: uppercase;
}
.footer {
    font-size: .8125rem;
    line-height: 1.25rem;
    background-color: #f7f7f7;
}
.footer a, .footer a:hover, .footer a:visited {
    color: #333;
}
@media (min-width: 768px) {
    .footer .et_pb_column_0_tb_footer:after,
	.footer .et_pb_column_1_tb_footer:after,
	.footer .et_pb_column_2_tb_footer:after{
        content: "";
        position: absolute;
        right: -8px;
        top: 0;
        height: 100%;
        display: block;
        width: 2px;
        background: #e0e0e0;
    }
}
.social-share-buttons {
    display: flex;
    gap: 10px;
}

.social-share-buttons a {
    display: inline-block;
    width: 24px;
    height: 24px;
}

.social-share-buttons img {
    width: 100%;
    height: 100%;
    display: block;
}


/*menu*/
.et_pb_menu_0_tb_header.et_pb_menu .nav li ul.sub-menu a {
    font-weight: 400;
}
@media only screen and (max-width: 980px) {
    .et_pb_menu_0_tb_header.et_pb_menu ul li a {
		font-weight: 400 !important;
    }
}
.et_pb_menu_0_tb_header .mobile_nav .mobile_menu_bar:before, .et_pb_menu_0_tb_header .et_pb_menu__icon.et_pb_menu__search-button, .et_pb_menu_0_tb_header .et_pb_menu__icon.et_pb_menu__close-search-button, .et_pb_menu_0_tb_header .et_pb_menu__icon.et_pb_menu__cart-button {
    color: #000 !important;
}

.et_pb_menu_0_tb_header.et_pb_menu .nav li ul {
    background-color: #ffffff !important;
    border-color: transparent !important;
    border-radius: 12px;
}
/***news***/
/*.news-home .post-category {
    float: left;
    margin-bottom: 9px !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
    line-height: 1.5rem;
    color: #e81b44 !important;
    min-height: 24px;
    width: 100%;
    text-transform: uppercase;
}*/

.news-home .dp-dfg-layout-grid .dp-dfg-item {
    display: grid;
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
    padding: 0;
}

.news-home .dp-dfg-skin-default .dp-dfg-item > * {
    position: relative;
    padding: 0;
}

.news-home .custom-post-layout {
    width: 100%;
}

.news-home .post-image {
    width: 100%;
    height: 254px;
    overflow: hidden;
    margin-bottom: 20px;
    position: relative;
}

.news-home .post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-home .post-info {
    padding: 20px;
    font-family: 'Aspekta 500', Helvetica, Arial, Lucida, sans-serif;
}

.news-home .post-category {
    margin-bottom: 9px;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #e81b44;
    min-height: 24px;
}

.news-home .post-date .dat-label {
    margin-bottom: 9px;
    font-weight: 300;
    font-size: 0.8125rem !important;
    line-height: 1.25rem;
    color: #333 !important;
}

.news-home .post-title {
    padding-bottom: 10px;
    font-size: 1.125rem;
}

.news-home .post-excerpt {
    padding-bottom: 20px;
    font-weight: 300;
    font-size: .9375rem;
    line-height: 1.5rem;
    height: 72px;
    color: #333;
	font-family: 'Montserrat', Helvetica, Arial, Lucida, sans-serif;
}



/**
 * Mautic styles
 **/
.mauticform_wrapper label {
    font-family: 'Aspekta 500', Helvetica, Arial, Lucida, sans-serif;
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 300;
    color: #000;
}

.mauticform_wrapper input.text,
.mauticform_wrapper input.title,
.mauticform_wrapper input[type=email],
.mauticform_wrapper input[type=password],
.mauticform_wrapper input[type=tel],
.mauticform_wrapper input[type=text],
.mauticform_wrapper select,
.mauticform_wrapper textarea {
    background-color: #efeff0;
    border: 1px solid #efeff0;
    padding: 0 10px;
    color: #000 !important;
    height: 48px;
}

.mauticform-selectbox,
.mauticform-input,
.mauticform-textarea {
    border-radius: 3px;
    font-size: 14px;
}

.mauticform_wrapper input.text:focus,
.mauticform_wrapper input.title:focus,
.mauticform_wrapper input[type=text]:focus,
.mauticform_wrapper select:focus,
.mauticform_wrapper textarea:focus {
    border-color: #000;
    color: #000;
}

.mauticform_wrapper input::placeholder {
    color: #000; /* Colore del placeholder (in questo caso, grigio) */
}

.mauticform_wrapper input::-webkit-input-placeholder {
    color: #000; /* Per browser WebKit (Chrome, Safari, Opera, etc.) */
}

.mauticform_wrapper input:-moz-placeholder {
    color: #000; /* Per Mozilla Firefox 4-18 */
}

.mauticform_wrapper input::-moz-placeholder {
    color: #000; /* Per Mozilla Firefox 19+ */
}

.mauticform_wrapper input:-ms-input-placeholder {
    color: #000; /* Per Internet Explorer 10+ */
}

.mauticform-checkboxgrp-label,
.mauticform-helpmessage {
    font-family: 'Aspekta 200', Helvetica, Arial, Lucida, sans-serif !important;
    font-weight: 300 !important;
    font-size: 14px !important;
    text-transform: none !important;
    color: #efeff0;
}

.mauticform-row {
    margin-bottom: 32px !important;
}

.mauticform-checkboxgrp {
    margin-bottom: 20px !important;
}

.mauticform-button-wrapper .mauticform-button, .mauticform-pagebreak-wrapper .mauticform-pagebreak {
    color: #fff !important;
    border-width: 0px !important;
    background-color: #e81b44;
    border-color: #e81b44 !important;
	text-transform:uppercase;
    font-size: 1rem!important;
	border-radius:0!important;
    font-family: 'Aspekta 500', Helvetica, Arial, Lucida, sans-serif !important;
	height:50px;
	width:296px;
}

.mauticform_wrapper {
    max-width: 100% !important;
    margin: 10px auto;
}

.mauticform-helpmessage {
	color:#000 !important;
}

.mauticform-button-wrapper .mauticform-button.btn-default, .mauticform-pagebreak-wrapper .mauticform-pagebreak.btn-default {
    background-color: #e81b44 !important;
    border-color: #e81b44 !important;
}



.custom-careers-layout {
    width: 100%;
    height: 262px;
    padding: 30px !important;
    box-sizing: border-box;
    background-color: #e81b44;
    border: 1px solid #ddd;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    text-align: left;
}

.careers-title {
    font-size: 18px;
    margin-bottom: 10px;
	color:#fff;
}

.careers-location {
    font-size: 14px;
    color: #f0e7e7;
}

#careers .dp-dfg-skin-default .dp-dfg-item {
    position: relative;
    background-color: #fff;
    border: 0;
    overflow: hidden;
}


#careers .dp-dfg-layout-grid .dp-dfg-item {
    padding: 0;
}


#case-history .container {
    position: relative;
    text-align: center;
    color: white;
}

#case-history .background-image {
    position: relative;
}


#case-history .background-image {
    position: relative;
    overflow: hidden; /* Assicura che l'immagine non sbordi */
}

#case-history .background-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    transition: transform 0.8s ease-in-out; /* Transizione fluida */
}

#case-history .background-image:hover img {
    transform: scale(1.4); /* Zoom out (l'immagine si riduce leggermente) */
}

#case-history .overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    box-sizing: border-box;
    overflow: hidden;
    padding: 36px 30px 36px 36px;
}

#case-history .container-ch {
    margin: 0;
    padding: 0;
    border: 0;
    height: 390px;
}

#case-history .overlay p {
    color: #e81b44;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5rem;
    margin-bottom: 12px;
    text-transform: uppercase;
}

#case-history .overlay h2 {
    font-size: 1.5rem;
    line-height: 1.875rem;
    color: #fff;
	font-weight: 700;

}

#case-history .content {
    position: relative;
    top: 45px; /* Distanza dal bordo superiore */
    transform: translateY(0); /* Rimosso il -50% */
    z-index: 1;
}

#case-history .dp-dfg-skin-default .dp-dfg-item {
    position: relative;
    background-color: #fff;
    border: 0;
    overflow: hidden;
}

#case-history .dp-dfg-layout-grid .dp-dfg-item {
    padding: 0;
}

#case-history .bottom-link {
    position: absolute;
    bottom: 75px;
    left: 36px;
    color: #e81b44;
    text-decoration: underline;
    font-size: 1rem;
    text-decoration: none;
    font-weight: 500;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

#case-history .background-image:hover .bottom-link {
    opacity: 1;
}

#case-history .bottom-areea {
    color: #b4b4b4;
    font-size: .6875rem;
    line-height: 1rem;
    margin-top: 15px;
    padding-top: 9px;
    text-transform: uppercase;
    border-top: 1px solid #515151;
    position: absolute;
    bottom: 30px;
    width: 80%;
    display: block;
}

.benefici-traguardi-list h3 {
	color:#333;
}
.benefici-traguardi-list {
        list-style-type: none; /* Rimuove il punto elenco predefinito */
        padding-left: 0;
    }
    .benefici-traguardi-list li {
		list-style:none;
        position: relative;
        padding-left: 24px; /* Spazio per il nuovo punto elenco */
        margin-bottom: 10px;
    }
    .benefici-traguardi-list li:before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 12px;
        height: 12px;
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width=\'12\' height=\'12\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cpath d=\'M6 10.5a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9zM6 12A6 6 0 1 1 6 0a6 6 0 0 1 0 12z\' fill=\'%23e81b44\' fill-rule=\'evenodd\'/%3E%3C/svg%3E");
        background-size: contain;
        background-repeat: no-repeat;
}

.menu-magazine {
    background-color: transparent;
    border: 0;
}


.menu-magazine .menu-item {
    margin-bottom: 20px;
    border-bottom: 1px solid #e7e7e7;
    padding-bottom: 20px;
}

.menu-magazine .menu-item-description {
    /*font-size: 18px;*/
    color: #878787;
    margin-bottom: 5px;
	font-weight:700;
	text-transform:uppercase;
}

.menu-magazine .menu-item-title {
    font-size: 18px;
    margin: 0;
    padding: 0;
	color:#333;
}

.menu-magazine .menu-item-image {
    width: 150px; /* Modifica la dimensione secondo le tue preferenze */
    height: auto;
    display: block;
    margin: 10px 0;
}

.menu-magazine .menu-item-link {
    text-decoration: none;
	font-weight:700;
	margin-top:10px;

}

.menu-magazine .menu-item-link:hover {
    text-decoration: underline;
	
}

.post-info p {
    color: #333333;
    font-size: 0.81rem;
    line-height: 1.25rem;
    font-weight: 300;
}
.post-info span {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #e81b44 !important;
}
.post-info .thumbnail {
    width: 175px !important;
    margin-bottom: 20px !important;
    margin-top: 20px;
}
.post-info a {
    color: #333;
    font-weight: 600;
}
@media screen and (max-width: 981px) {
    header {
        position: fixed;
        z-index: 99999;
        width: 100%;
        top: 0;
    }
    body.et-tb-has-header #page-container {
        padding-top: 50px!important;
    }
	
	.et_mobile_menu {
		max-height: 60vh!important;
		overflow-y: auto!important;
	}
}
/*
h1,h2,h3,h4,h5,h6 {
    margin-top: 0;
    margin-bottom: .5rem
}
.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 {
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2
}
h1 {
    font-weight: 700;
    font-size: 1.5rem !important;
    line-height: 1.875rem;
}

a {
    color: #e81b44;
    text-decoration: none;
    background-color: transparent
}

a:hover {
    color: #a6112f;
    text-decoration: underline
}

body {
    margin: 0;
    font-family: "Montserrat",sans-serif;
    font-size: .9375rem;
    font-weight: 300;
    line-height: 1.5;
    color: #333;
    text-align: left;
    background-color: #fff
}

@media (min-width: 992px) {
    .h1,h1 {
        font-size:3.3125rem !important;
        line-height: 3.5rem;
        letter-spacing: -.05937rem
    }
}

.h2,h2 {
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 1.875rem
}

@media (min-width: 992px) {
    .h2,h2 {
        font-size:2.5rem;
        line-height: 2.8125rem
    }
}

.h3,h3 {
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.625rem
}

@media (min-width: 992px) {
    .h3,h3 {
        font-size:2rem;
        line-height: 2.3125rem
    }
}

.h4,h4 {
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 1.375rem
}

@media (min-width: 992px) {
    .h4,h4 {
        font-size:1.5rem;
        line-height: 1.875rem
    }
}

.h5,h5 {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.25rem
}

@media (min-width: 992px) {
    .h5,h5 {
        font-size:1.125rem;
        line-height: 1.5625rem
    }
}

.h6,h6 {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.25rem
}

@media (min-width: 992px) {
    .h6,h6 {
        font-size:1rem;
        line-height: 1.5rem;
        letter-spacing: .00625rem
    }
}
*/
/*background effects*/


