.section{
    padding:120px 0;
    border-bottom:1px solid var(--border);
}

.section-title{
    margin-bottom:16px;
}

.section-title span,
.eyebrow{
    display:block;
    color:var(--red);
    font-size:1.2rem;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:22px;
}

.section-title h2,
.section h2{
    font-family:var(--font-serif);
    font-size:1.5rem;
    font-weight:400;
}

.split{
    display:grid;
    grid-template-columns:1.25fr .75fr;
    gap:80px;
    align-items:center;
}

.split2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

.split3{
    display:grid;
    grid-template-columns:.75fr 1.25fr;
    gap:80px;
    align-items:stretch;
}

.tools-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:0px;
}

.contact-box,
.faq-item{
    background:#f7f5f1;
    border:1px solid var(--border);
}

#servizi{
	background:#f7fafb;
}

.services-section,
.split{
	grid-template-columns: .75fr 1.25fr;
}

.services-grid{
	display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:0px;
	border-top:1px solid var(--border);
    border-left:1px solid var(--border);
}

.services-grid article{
    position:relative;
	overflow:hidden;
	display:flex;
	flex-direction:column;
	padding:45px 35px 30px;
	background:#fff;
	border-right:1px solid var(--border);
	border-bottom:1px solid var(--border);
	transition:background-color .3s ease;
}

.service-card-title{
	margin-bottom:20px;
}

.service-card-title h3{
	margin-bottom:0;
}

.service-excerpt{
	margin-bottom:28px;
}

.service-link{
	display:inline-flex;
	align-items:center;
	gap:10px;
	width:max-content;
	margin-top:auto;
	color:var(--red);
	font-size:.78rem;
	font-weight:500;
	letter-spacing:1.5px;
	text-decoration:none;
	text-transform:uppercase;
}

.service-link-arrow{
	display:inline-block;
	font-size:1.1rem;
	line-height:1;
	transition:transform .25s ease;
}

.service-link:hover{
	color:#8d004a;
}

.service-link:hover .service-link-arrow{
	transform:translateX(6px);
}

.service-corner-image{
    position:absolute;
    left: 30px;
    top: 18px;
    width:90px;
    height:auto;
    object-fit:contain;
    pointer-events:none;
	opacity: .85;
    filter: grayscale(100%);

}

/* .services-grid article{
    padding:35px;
    padding:35px;
	background:#fff;
	border-right:1px solid var(--border);
    border-bottom:1px solid var(--border);
	
} */

.services-grid article:hover{
	background-color:#eef3f7;
	/*cursor:pointer;*/
}

.services-grid h3{
    font-family:var(--font-serif);
    font-size:1.4rem;
    font-weight:400;
    line-height:1.2;
    margin-bottom:20px;
}

.services-grid p{
	font-size:.9rem;
}
.services-img img{
	object-fit:cover;
	display:block;
	width:100%;
	height:100%;
	border-radius:10px;
}

.service-single-title{
	margin-bottom:50px;
}

.service-single-title h1{
	font-family:var(--font-serif);
	font-size:clamp(2.4rem, 5vw, 4.8rem);
	font-weight:400;
	line-height:1.05;
	margin:0;
}

.service-single-content{
	display:flow-root;
}

.service-single-image{
	float:right;
	width:52%;
	margin:0 0 45px 70px;
}

.service-single-image img{
	display:block;
	width:100%;
	height:auto;
	border-radius:10px;
}

.service-single-text{
	font-size:1rem;
	line-height:1.8;
}

.service-single-text h2,
.service-single-text h3,
.service-single-text h4{
	font-family:var(--font-serif);
	font-weight:400;
	line-height:1.2;
	margin-top:40px;
	margin-bottom:18px;
}

.service-single-text h2{
	font-size:1.5rem;
}

.service-single-text h3{
	font-size:1.6rem;
}

.service-single-text p{
	margin-bottom:22px;
}

.service-single-text ul,
.service-single-text ol{
    list-style:none;
    margin:0;
	margin-bottom: 20px;
    padding:0;
}
.service-single-text li{
    position:relative;
    padding-left:35px;
    margin-bottom:6px;
}

.service-single-text li:before{
    content:"";
    position:absolute;
    left:0;
    top:13px;
    width:16px;
    height:1px;
    background:var(--red);
}

.service-single-text a{
	color:var(--red);
}

.service-single-cta{
	clear:both;
	margin-top:60px;
	padding-top:45px;
	border-top:1px solid var(--border);
	text-align:center;
}

.service-single-cta .btn-primary{
	display:inline-flex;
	align-items:center;
	gap:12px;
	border:0;
	cursor:pointer;
}

.service-single-cta .btn-primary span{
	font-size:1.1rem;
	transition:transform .25s ease;
}

.service-single-cta .btn-primary:hover span{
	transform:translateX(5px);
}

.service-contact-modal .modal-dialog{
	max-width:760px;
}

.service-contact-modal .modal-content{
	border:0;
	border-radius:10px;
	padding:20px;
}

.service-contact-modal .modal-header{
	align-items:flex-start;
	padding:25px 25px 20px;
	border-bottom:1px solid var(--border);
}

.service-contact-modal .modal-header .eyebrow{
	margin-bottom:10px;
	font-size:.8rem;
}

.service-contact-modal .modal-title{
	margin:0;
	font-family:var(--font-serif);
	font-size:2rem;
	font-weight:400;
}

.service-contact-modal .modal-body{
	padding:30px 25px 20px;
}

.strument-grid{
	display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0px;
	border-top:1px solid var(--border);
    border-left:1px solid var(--border);
}

.strument-grid article{
    padding:35px;
    padding:35px;
	border-right:1px solid var(--border);
    border-bottom:1px solid var(--border);
	transition: all .3s ease;
}

.strument-grid article:hover{
	background-color:#eef3f7;
	cursor:pointer;
}

.strument-grid span.gold{
	font-size:.9rem;
}

.strument-grid h3{
    font-family:var(--font-serif);
    font-size:1.5rem;
    font-weight:400;
}

.strument-grid p{
	font-size:.9rem;
}

.tool-logos-slider{
    margin-top:60px;
    overflow:hidden;
    position:relative;
    width:100%;
	height:150px;
    /*border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);*/
    padding:24px 0;
	border-radius: 10px;
}

.tool-logos-slider::before{
    content:"";
    position:absolute;
    inset:0;
    background:url('/wp-content/themes/marangoni-forensics/assets/img/04.jpg') center center / cover no-repeat;
    opacity:.95;
    z-index:0;
}

.tool-logos-track{
    display:flex;
    align-items:center;
    gap:70px;
    width:max-content;
    animation:scrollLogos 35s linear infinite;
}

.tool-logo{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:140px;
}

.tool-logo img{
    max-height:120px;
    width:auto;
    display:block;
    /*opacity:.85;
    filter:grayscale(100%);*/
    transition:.3s;
}

/*.tool-logo img:hover{
    opacity:1;
    filter:grayscale(0%);
}*/

@keyframes scrollLogos{
    0%{
        transform:translateX(0);
    }
    100%{
        transform:translateX(-50%);
    }
}

.rounded-full{
    display:block;
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--red);
    flex-shrink:0;
}

.about-image{
	margin-bottom:60px;
}

.about-image img{
	display:block;
	width:100%;
	height:500px;
	object-fit:cover;
	object-position:center;
	border-radius:10px;
}

.about-content{
	display:flow-root;
}

.about-content p{
	line-height:1.7;
}

.about-content::after{
	content:"";
	display:block;
	clear:both;
}

.about-content ul{
    list-style:none;
    margin:0;
	margin-bottom: 20px;
    padding:0;
}

.about-content > *:first-child{
	margin-top:0;
}

.about-content h2,
.about-content h3,
.about-content h4{
	column-span:all;
}

.about-content li{
    position:relative;
    padding-left:35px;
    margin-bottom:6px;
}

.about-content li:before{
    content:"";
    position:absolute;
    left:0;
    top:13px;
    width:16px;
    height:1px;
    background:var(--red);
}

.contact-box{
    padding:35px;
}

.about-card{
	float:right;
	width:55%;
	margin:0 0 45px 80px;
}

.about-card img{
	display:block;
	width:100%;
	height:auto;
	/*object-fit:cover;
	object-position:center;*/
	border-radius:10px;
}

.about-card h3{
    margin-bottom:20px;
	color:var(--red);
	font-weight: 500;
    text-transform: uppercase;
    font-size: .9rem;
}

/* .about-card ul{
	padding-left:0px;
	margin-bottom:0px;
}

.about-card li{
    position:relative;
    padding-left:35px;
    line-height:2rem;
    color:#34495e;
    border:none;
}

.about-card li:before{
	content:"";
    position:absolute;
    left:0;
    top:13px;
    width:16px;
    height:1px;
    background:var(--gold);
}
 */
.feature-list small{
	color:var(--text);
}

.feature-list div{
	margin:20px;
    padding-bottom:4px;
    /*border-bottom:1px solid var(--border);*/
}

.featured-img{
	margin-top:40px;
}

.featured-img img{
	border-radius:10px;
	margin:0px auto;
}

/*.feature-list div:last-child{
    border-bottom:0;
}*/

.labs-grid article{
    overflow:hidden;
	border-right:1px solid var(--border);
    border-bottom:1px solid var(--border);
}

.labs-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0px;
	border-top:1px solid var(--border);
    border-left:1px solid var(--border);
}

.labs-grid img{
    width:100%;
    height:280px;
    object-fit:cover;
	filter:grayscale(100%);
    transform:scale(1);
    transition: 
		filter .4s ease, 
		transform .4s ease;
}

.labs-grid img:hover{
	filter:grayscale(0%);
    transform:scale(1.05);
}

.labs-grid h3{
    font-family:var(--font-serif);
    font-size:1.35rem;
}

.tools-grid{
	display:grid;
    grid-template-columns:repeat(3,1fr);
	gap:45px 70px;
	padding-top:30px;
}

.tool-item{
    background:transparent;
    border:none;
    border-left:2px solid var(--red);
    padding:12px 0 12px 35px;
    min-height:auto;
}

.tool-item h3{
    font-family:var(--font-serif);
    font-size:1.4rem;
    font-weight:500;
    line-height:1.2;
    margin-bottom:14px;
}

.tool-item p{
    color:#334155;
    margin:0;
    /*line-height:1.7;*/
}

/*.tools-grid div{
    min-height:130px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:25px;
    font-weight:600;
}*/

.cyber-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.cyber-grid article{
    border:1px solid var(--border);
    padding:35px;
    background-color:#eef3f7;
}

.cyber-grid h3{
	font-size:1.5rem;
	font-family:var(--font-serif);
    font-weight:400;
    line-height:1.2;
    margin-bottom:20px;
}

.cyber-grid p{
    margin-bottom:25px;
    color:#475569;
    line-height:1.8;
}

.cyber-grid ul{
    list-style:none;
    padding:0;
    margin:0;
}

.cyber-grid li{
    position:relative;
	font-size:.95rem;
    padding-left:18px;
    margin-bottom:6px;
	color:var(--text);
}

.cyber-grid li:before{
    content:"›";
    position:absolute;
    left:0;
    color:var(--red);
    font-weight:600;
}

.collab-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    border:1px solid var(--border);
}

.collab-box{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 24px;
    border-right:1px solid var(--border);
    border-bottom:1px solid var(--border);
    transition: all .3s ease;
}

.collab-box:hover{
	cursor:pointer;
	background-color:#eef3f7;
}

.collab-box:nth-child(2n){
    border-right:none;
}

.collab-box:nth-last-child(-n+2){
    border-bottom:none;
}

.collab-box .gold{
    min-width:auto;
    font-family:var(--font-serif);
    font-size:1.2rem;
}

.collab-box p{
    margin:0;
	font-size:.9rem;
	color:var(--text);
	line-height:1.3rem;
}

.contact-table{
    border-top:1px solid var(--border);
    border-left:1px solid var(--border);
    border-right:1px solid var(--border);
}

.contact-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
    padding:28px 35px;
    border-bottom:1px solid var(--border);
    color:inherit;
}

.contact-row span{
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:4px;
    color:#64748b;
}

.contact-row strong{
    font-family:var(--font-serif);
    font-size:1.1rem;
    font-weight:500;
    color:#000;
    text-align:right;
}

.contact-row:hover{
    background-color:#eef3f7;
}

.wpforms-container .wpforms-field-label, .wp-core-ui div.wpforms-container .wpforms-field-label{
	font-family:var(--font-sans);
	font-weight:500 !important;
}

.wpforms-submit{
	background:var(--red) !important;
    color:white !important;
    padding:15px 28px !important;
    display:inline-flex !important;
    align-items:center !important;
    text-transform:uppercase !important;
    letter-spacing:1px !important;
    font-size:.82rem !important;
	border-radius:0px !important;
    transition: all .3s ease;
}

.wpforms-submit:hover{
	background:#8d004a !important;
}

.news-section{
	background:#f7fafb;
}

.news-grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:30px;
}

.news-card{
	display:flex;
	flex-direction:column;
	background:#fff;
	border:1px solid var(--border);
	overflow:hidden;
	transition:all .3s ease;
}

.news-card:hover{
	background:#eef3f7;
}

.news-image{
	display:block;
	overflow:hidden;
}

.news-image img{
	display:block;
	width:100%;
	height:240px;
	object-fit:cover;
	/*filter:grayscale(100%);*/
	transition:
		filter .4s ease,
		transform .4s ease;
}

.news-card:hover .news-image img{
	filter:grayscale(0%);
	transform:scale(1.04);
}

.news-content{
	display:flex;
	flex-direction:column;
	flex:1;
	padding:30px;
}

.news-content time{
	display:block;
	margin-bottom:15px;
	color:var(--red);
	font-size:.75rem;
	letter-spacing:2px;
	text-transform:uppercase;
}

.news-content h3{
	margin-bottom:18px;
	font-family:var(--font-serif);
	font-size:1.5rem;
	font-weight:400;
	line-height:1.2;
}

.news-content h3 a{
	color:inherit;
	text-decoration:none;
}

.news-excerpt{
	margin-bottom:25px;
	font-size:.9rem;
	line-height:1.7;
}

.news-content .service-link{
	margin-top:auto;
}
.news-archive .news-grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:30px;
}

.news-archive .news-content h2{
	margin-bottom:18px;
	font-family:var(--font-serif);
	font-size:1.5rem;
	font-weight:400;
	line-height:1.2;
}

.news-archive .news-content h2 a{
	color:inherit;
	text-decoration:none;
}

.news-pagination{
	display:flex;
	justify-content:center;
	gap:8px;
	margin-top:60px;
}

.news-pagination .page-numbers{
	display:flex;
	align-items:center;
	justify-content:center;
	min-width:40px;
	height:40px;
	padding:0 12px;
	border:1px solid var(--border);
	color:var(--text);
	text-decoration:none;
}

.news-pagination .current{
	background:var(--red);
	border-color:var(--red);
	color:#fff;
}

.single-news-header{
	max-width:1000px;
	margin-bottom:50px;
}

.single-news-header .section-title{
	margin-bottom:20px;
}

.single-news-header h1{
	font-family:var(--font-serif);
	font-size:clamp(2.5rem, 4vw, 4.5rem);
	font-weight:400;
	line-height:1.08;
	margin:0;
}

.single-news-date{
	display:block;
	color:#64748b;
	font-size:.78rem;
	letter-spacing:2px;
	text-transform:uppercase;
}

.single-news-image{
	margin:0 0 60px;
}

.single-news-image img{
	display:block;
	width:100%;
	max-height:450px;
	object-fit:cover;
	border-radius:10px;
	object-position:center center;
}

.single-news-content{
	max-width:900px;
	margin:0 auto;
	font-size:1rem;
	line-height:1.8;
}

.single-news-content p{
	margin-bottom:24px;
}

.single-news-content h2,
.single-news-content h3,
.single-news-content h4{
	font-family:var(--font-serif);
	font-weight:400;
	line-height:1.2;
	margin-top:45px;
	margin-bottom:20px;
}

.single-news-content h2{
	font-size:2rem;
}

.single-news-content h3{
	font-size:1.6rem;
}

.single-news-content img{
	max-width:100%;
	height:auto;
	border-radius:10px;
}

.single-news-content a{
	color:var(--red);
}

.single-news-footer{
	max-width:900px;
	margin:60px auto 0;
	padding-top:30px;
	border-top:1px solid var(--border);
}