@import url("https://fonts.googleapis.com/css2?family=Kumbh+Sans:wght@300;400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800;900&display=swap");

:root {
  --alt-font: "Kumbh Sans", sans-serif;
  --primary-font: "Manrope", sans-serif;
  
  --base-color: #009EE2;
  --bg-color-primary: #009EE2;
  --bg-grey-color: #EAEBEF;
  --bg-color-secondary: #8FEC3C;
  
  /*
  --base-color: #B40017;
  --bg-color-primary: #B40017;
  --bg-grey-color: #EAEBEF;
  --bg-color-secondary: #EA5E5E;
  */
  
}

.bg-color-primary{ background-color: var(--bg-color-primary); }
.bg-color-secondary{ background-color: var(--bg-color-secondary); }
.btn-primary{
	--bs-btn-bg: var(--bg-color-primary);
	--bs-btn-border-color: var(--bg-color-primary);
	--bs-btn-hover-border-color: var(--bg-color-primary);
	--bs-btn-active-bg: var(--bg-color-primary);
	--bs-btn-disabled-bg: var(--bg-color-primary);
	--bs-btn-disabled-border-color: var(--bg-color-primary);
}
.text-primary{ color: var(--base-color) !important }
.text-secondary{ color: var(--bg-color-secondary) !important }

header .navbar-brand { padding: 5px 0px 0px 0px; }
header.sticky .navbar-brand { padding: 5px 0px 0px 0px; }
header .logoHeader .iconeLogo { }
header .logoHeader .iconeLogo a { padding-right: 5px; padding-bottom: 5px;}
header .logoHeader .iconeLogo a img{ width: 30px; }
header .logoHeader .siteTitle{ align-content: end; display: grid; line-height: 16px; min-width: 90px; }

.navbar .navbar-nav .dropdown .dropdown-menu { background-color: transparent; padding: 20px 0 20px; box-shadow: none; }
  
.navbar .navbar-nav .nav-link { padding: 10px 10px 10px 10px;}
.navbar .navbar-nav .submenu-content { border-top: 0; }
.header-icon { padding-top: 0px; }



.breadcrumb li, .breadcrumb li a{ font-size: .875rem; }
.breadcrumb-item + .breadcrumb-item::before { color: var(--base-color); }

.theme-demos .buy-theme{ background: #24CC63 }

.bg-gradient-colori-logo-dtm{ background-image: linear-gradient(50deg, var(--bg-color-secondary) 0, var(--bg-color-primary) 100%); }
.text-gradient-colori-logo-dtm{ background-image: linear-gradient(to right, var(--bg-color-primary), var(--bg-color-secondary)); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
.page-divider-wrapper{ margin-bottom: -2; }

.cover-background {
	background-color: var(--bg-grey-color);
	background-image: url(../images/bg-allerte.png);
	background-repeat: no-repeat;
	background-position: 100% 100% !important;
	background-size: auto !important;
	-webkit-transform: skewY(-3deg);
	-moz-transform: skewY(-3deg);
	-o-transform: skewY(-3deg);
	transform: skewY(-3deg);
  
	overflow: hidden;
	position: relative;
	
	padding-top: 150px !important;
	padding-bottom: 0px !important;
}
.breadcrumbCustom{ background: linear-gradient(to bottom, var(--bg-grey-color) 50%, transparent 50%); }

.home.cover-background{ padding-bottom: 150px !important; }

.cover-background .container{ transform: skewY(3deg); }

header .navbar [class*="col-"] .navbar-nav .nav-item a{ text-transform: uppercase; }
.swiper-slide{ border-left: 4px solid var(--bg-color-secondary); }
.swiper-slide .triangle{ 
	
	position: absolute;
	left: 0px;
	top: 30px; 
	
	
	width: 15px;
	height: 30px;
	background-color: var(--bg-color-secondary);
	border-radius: 0rem 15px 15px 0;
	
}
h3 span.mini{ display: block; font-size: 15px }
.blog-standard .blog-details h2, .blog-standard .blog-details h3{ color: var(--dark-gray); line-height: normal; margin-bottom: 10px; }
.blog-standard .blog-details h2 { font-size: 25px; }
.blog-standard .blog-details h3 { font-size: 20px; }
.semi-circle {
  height: 100%;
  width: 100%;
  border-radius: 5rem 5rem 0 0;
}

.blink_text{
	animation:2s blinker linear infinite;
}
@keyframes blinker { 
	0% { opacity: 1.0; color: #DC3131 !important; }
	50% { opacity: 0.0; color: #DC3131 !important; }
	100% { opacity: 1.0;  color: #DC3131 !important; }
}

/*####################### RESPONSIVE CSS #############################*/
@media (max-width: 991px) {
	header .logoHeader .iconeLogo a img{ width: 20px; }
	header .navbar-brand .mobile-logo{ width: 180px !important; }
	header .logoHeader .siteTitle{ font-size: 12px; }
	.home.cover-background{ padding-bottom: 0px !important; }
	.menu-order button{
		order: 5;
		position: absolute !important;
		right: 10px;
		top: 20px;
	}
	header .navbar [class*="col-"].text-end{ position: absolute !important; right: 50px; top: 16px; }
	
	.dropdown-menu.submenu-content{ padding: 0px !important; }
	.dropdown-menu.submenu-content .feature-box{ padding: 15px 0px !important; }
	.dropdown-menu.submenu-content .feature-box .feature-box-icon{ margin-bottom: 5px !important; }
	.dropdown-menu.submenu-content .feature-box .feature-box-icon img{ width: 30px !important; }

}

/*####################### BOX APPROFONDIMENTO (riutilizzabile in tutte le news/blog) #############################*/
/* Connotazione "accademica": stacco grafico netto dai box-scheda standard.
   Uso: <div class="dm-approfondimento"> con __eyebrow, __title, __body, e .dm-approfondimento__term per i termini di glossario.
   Helper: __split (mini-card di confronto), __figure (cornice bianca per infografiche/SVG). */
.dm-approfondimento{
	position: relative;
	background: linear-gradient(180deg, #f4f8fb 0%, #eaf1f6 100%);
	border: 1px solid #d8e5ee;
	border-radius: 10px;
	padding: 48px 52px 42px;
	margin-bottom: 3rem;
	overflow: hidden;
	box-shadow: 0 24px 50px rgba(0, 49, 80, .06);
}
.dm-approfondimento::before{
	content: "";
	position: absolute; top: 0; left: 0; right: 0; height: 5px;
	background: linear-gradient(90deg, var(--bg-color-primary) 0, var(--bg-color-secondary) 100%);
}
.dm-approfondimento::after{
	content: "\f19d"; /* Font Awesome: graduation-cap (filigrana accademica) */
	font-family: "Font Awesome 6 Free"; font-weight: 900;
	position: absolute; right: 34px; top: 30px;
	font-size: 96px; line-height: 1;
	color: var(--base-color); opacity: .06; pointer-events: none;
}
.dm-approfondimento__eyebrow{
	display: inline-flex; align-items: center; gap: 8px;
	font-family: var(--alt-font); font-weight: 700;
	text-transform: uppercase; letter-spacing: 2px; font-size: 12px;
	color: var(--base-color);
	background: #fff; border: 1px solid #cfe0ec; border-radius: 30px;
	padding: 7px 18px; margin-bottom: 22px;
}
.dm-approfondimento__title{
	font-family: var(--alt-font); font-weight: 700;
	color: #1c2b34; letter-spacing: -.5px;
	font-size: 27px; line-height: 1.25;
	margin-bottom: 20px; padding-bottom: 20px;
	border-bottom: 1px dashed #c2d4df;
	position: relative; z-index: 1;
}
.dm-approfondimento__body{
	font-size: 16px; line-height: 1.9; color: #38474f;
	position: relative; z-index: 1;
}
.dm-approfondimento__body p:last-child{ margin-bottom: 0; }
.dm-approfondimento__term{ font-weight: 700; color: var(--base-color); }
.dm-approfondimento__split{
	background: #fff; border: 1px solid #dbe7ef; border-radius: 8px;
	padding: 22px 24px; height: 100%;
}
.dm-approfondimento__split h4{
	font-family: var(--alt-font); font-weight: 700; font-size: 17px;
	color: #1c2b34; margin-bottom: 6px;
}
.dm-approfondimento__split .dm-approfondimento__scale{
	display: inline-block; font-size: 12px; font-weight: 700;
	text-transform: uppercase; letter-spacing: 1px;
	color: var(--base-color); margin-bottom: 10px;
}
.dm-approfondimento__figure{
	background: #fff; border: 1px solid #dbe7ef; border-radius: 8px;
	padding: 24px 28px 18px; position: relative; z-index: 1;
}
.dm-approfondimento__figure svg{ display: block; width: 100%; height: auto; }
@media (max-width: 575px){
	.dm-approfondimento{ padding: 36px 26px 30px; }
	.dm-approfondimento__title{ font-size: 21px; }
	.dm-approfondimento::after{ font-size: 64px; right: 18px; top: 24px; }
}