/*EXTERNAL*/

/* Magazine wrapper */
.cs-magazine-wrap {
	width: 100%;
}

.cs-section-head {
	margin-bottom: 30px;
}

.cs-section-title {
	font-size: 34px;
	line-height: 1.15;
	margin-bottom: 10px;
	color: #111111;
	font-weight: 700;
}

.cs-section-subtitle {
	font-size: 16px;
	line-height: 1.7;
	color: #6b7280;
	max-width: 780px;
	margin: 0;
}

/* Grid */
.cs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 28px;
}

/* Card */
.cs-card {
	background: #ffffff;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.cs-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.10);
}

.cs-image-link {
	display: block;
	text-decoration: none;
}

.cs-image {
	height: 210px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: block;
}

.cs-content {
	padding: 22px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.cs-source-label {
	display: inline-block;
	margin-bottom: 12px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #2060df;
	background: rgba(32, 96, 223, 0.08);
	padding: 6px 10px;
	border-radius: 999px;
	width: fit-content;
}

.cs-post-title {
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 12px;
	font-weight: 700;
}

.cs-post-title a {
	color: #111111;
	text-decoration: none;
}

.cs-post-title a:hover {
	color: #2060df;
}

.cs-content p {
	font-size: 15px;
	color: #5f6673;
	line-height: 1.7;
	margin-bottom: 18px;
	flex-grow: 1;
}

.cs-btn {
	display: inline-block;
	align-self: flex-start;
	margin-top: auto;
	background: #2060df;
	color: #ffffff;
	padding: 12px 22px;
	border-radius: 8px;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.2s ease;
}

.cs-btn:hover {
	text-decoration: none;
	opacity: 0.92;
	color: #ffffff;
}

/* Variante personalizzabile */
.kaizen-btn-alt {
	background: #111111;
	color: #ffffff;
	border-radius: 999px;
	padding: 12px 24px;
}

.kaizen-btn-alt:hover {
	color: #ffffff;
	opacity: 0.9;
}

/* Responsive */
@media (max-width: 767px) {
	.cs-section-title {
		font-size: 28px;
	}

	.cs-image {
		height: 190px;
	}
}

/*INTERNAL*/
.blue-text {
	color: var(--blue-color1);
}

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

.cursive {
	font-style: italic;
}

.red-underline,
.blue1-underline,
.blue2-underline {
	position: relative;
	display: inline-block;
	padding-bottom: 0.35em;
}

.red-underline::after,
.blue1-underline::after,
.blue2-underline::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 14px;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	pointer-events: none;
}

.red-underline::after {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 14' preserveAspectRatio='none'><path d='M2 10 Q 50 2 98 10' fill='none' stroke='%23c90719' stroke-width='3' stroke-linecap='round'/></svg>");
}

.blue1-underline::after {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 14' preserveAspectRatio='none'><path d='M2 10 Q 50 2 98 10' fill='none' stroke='%23c90719' stroke-width='3' stroke-linecap='round'/></svg>");
}

.blue2-underline::after {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 14' preserveAspectRatio='none'><path d='M2 10 Q 50 2 98 10' fill='none' stroke='%23c90719' stroke-width='3' stroke-linecap='round'/></svg>");
}

/*HEADER*/
#top-header a,
#top-header a:visited {
	color:var(--white-color);
	text-decoration:underline;
}
#header .logo-sticky,
#header.et_pb_sticky .logo-sticky {
	position:absolute;
	top:0;
	transition: all 300ms ease 0ms;
}
#header .logo-sticky {
    visibility: hidden;
	opacity: 0;
	transition: all 300ms ease 0ms;
}
#header.et_pb_sticky .logo {
    visibility: hidden;
	opacity: 0;
	transition: all 300ms ease 0ms;
	transition-delay: 150ms;
}
#header.et_pb_sticky .logo-sticky {
    visibility: visible;
	opacity: 1;
	transition: all 300ms ease 0ms;
	transition-delay: 150ms;
}
#top-menu li {
	margin:0;
}
#top-menu a,
#top-menu a:visited {
	padding: .3em 1em;
	border:2px solid var(--black-color);
	border-radius:5px;
	transition-duration: .2s;
    transition-property: all !important;
}
#top-menu li.current-menu-item>a {
	border:2px solid var(--blue-color1);
}
#top-menu a:hover,
#top-menu a:active {
	border:2px solid var(--blue-color1);
	background:var(--blue-color1);
	border-radius:0;
	transition-duration: .2s;
    transition-property: all !important;
}
.calendly-popup a,
.calendly-popup a:visited,
a.calendly-popup,
a:visited.calendly-popup {
	background:var(--blue-color1);
	color:var(--white-color) !important;
	border:2px solid var(--blue-color1) !important;
}
.calendly-popup a:hover,
.calendly-popup a:active,
a:hover.calendly-popup,
a:active.calendly-popup {
	background:var(--blue-color2) !important;
	border:2px solid var(--blue-color2) !important;
	padding: .3em 2em .3em .7em !important;
}
.calendly-popup a:after {
	font-family: ETmodules !important;
    speak: none;
	font-size: 32px;
    line-height: 1em;
    content: "\35";
    opacity: 0;
    position: absolute;
    transition: all .2s;
    text-transform: none;
    font-feature-settings: "kern" off;
    font-variant: none;
    font-style: normal;
    font-weight: 400;
    text-shadow: none;
    top: 50%;
    transform: translateY(-50%);
}
.calendly-popup a:hover:after {
	opacity: 1;
}

/*HERO*/
#hero.v4, 
#hero.v3 {
	background-image: url(https://www.kaizenflow.it/wp-content/uploads/2026/03/bg-hero.jpg) !important;
}
#hero.v2, #hero.v1 {
	/*background-image: url(https://www.kaizenflow.it/wp-content/uploads/2026/03/bg-hero.jpg) !important;*/
}
#hero.v4 .et_pb_row,
#hero.v2 .et_pb_row {
	padding-top: 150px !important;
	background-image: url(https://www.kaizenflow.it/wp-content/uploads/2026/03/lines.png);
	min-height: 700px;
    height: 700px;
	display:flex;
	justify-content:center;
	align-items:flex-start;
}
#hero.v3 .et_pb_row,
#hero.v1 .et_pb_row {
	padding-top: 0px !important;
	/*background-image: url(https://www.kaizenflow.it/wp-content/uploads/2026/03/lines.png);*/
	min-height: 700px;
    height: 700px;
	display:flex;
	justify-content:center;
	align-items:flex-start;
}
#hero.v1 .et_pb_row {
	padding-top: 100px !important;
	align-items:center;
	min-height: 650px;
    height: 650px;
}
#hero.v1 .hero-cta.et_flex_column {
    display: block !important;
	text-align: center;
}
#hero.v1 .hero-cta {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#hero.v1 .hero-cta .et_pb_button_module_wrapper {
    display: inline-flex !important;
    width: auto !important;
    max-width: none !important;
    clear: none !important;
    float: none !important;
    margin: 50px 8px 0 0 !important;
}
#hero.v1 .hero-cta .et_pb_button {
    display: inline-block !important;
    width: auto !important;
}