

.logo > a { display: block; }
.responsive-menu .logo > a { padding: .9375rem 3.125rem; }

.menubar-inner .logo img,
.sticky-header .menubar-inner .logo img,
.responsive-header .logo img,
.responsive-topbar .logo img { width: 185px; max-width: 100%; height: auto; }

.search-btn:focus-visible,
.res-menu-btn:focus-visible,
.search-close-btn:focus-visible {
	outline: 2px solid var(--color3) !important;
	outline-offset: 2px !important;
	border-radius: 4px;
}
.header-search .search-close-btn:focus-visible { outline-color: var(--color3); }

nav > ul > li {
	font-family: var(--Nunito-Sans);
	font-size: 1.125rem;
	font-weight: 700;
	transition: var(--transition2);
}
nav > ul li > a { transition: var(--transition2); }
nav > ul li:hover > a,
nav > ul li > a:hover,
nav > ul li a:focus { color: var(--color6); }

nav ul ul li {
	font-family: var(--Nunito-Sans);
	font-size: 1rem;
	font-weight: 400;
	color: var(--color2);
}
nav ul ul li a { opacity: 1; padding: 5px 0; transition: var(--transition2); }
nav ul ul li:hover > a,
nav ul ul li a:focus,
nav ul ul li.active > a { opacity: 1; color: var(--color3); }

nav ul ul.children {
	-webkit-box-shadow: 0 6px 1rem 0 rgba(16, 1, 148, .18);
	box-shadow: 0 6px 1rem 0 rgba(16, 1, 148, .18);
}

header.style1 nav > ul > li,
header.style1 nav > ul li:hover > a,
header.style1 nav > ul li > a:hover,
header.style1 nav > ul li a:focus { color: var(--white); }
header.style1 nav > ul > li > a:after { background-color: var(--white); }

header.style1 nav > ul > li:hover > a,
header.style1 nav > ul > li > a:hover,
header.style1 nav > ul > li > a:focus { color: var(--color3); }

@media (max-width: 1210px) {
	header.style1 nav > ul > li { color: var(--color1); }
	header.style1 nav > ul li:hover > a,
	header.style1 nav > ul li > a:hover,
	header.style1 nav > ul li a:focus { color: var(--color6); }
	header.style1 nav > ul > li > a:after { background-color: var(--color3); }
}

.testi-info > h3 { font-size: 1.25rem; }

.responsive-menu > ul > li {
	font-family: var(--Open-Sans);
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--color1);
}
.responsive-menu > ul > li a { transition: var(--transition2); }
.responsive-menu > ul ul li { font-size: .9375rem; font-weight: 400; }
.responsive-menu > ul li.active > a,
.responsive-menu > ul li:hover > a,
.responsive-menu > ul li > a:focus { color: var(--color3); }

.leftside.rs-sidebar-sticky { position: relative; }

form.searchform > input {
	background-color: var(--color24);
	color: var(--color1);
	transition: var(--transition2);
}
form.searchform > input::placeholder { color: var(--color6); }
form.searchform > input:focus-visible {
	outline: 2px solid var(--color3) !important;
	outline-offset: 2px !important;
}
form.searchform > button { transition: var(--transition2); }

.widget.v2 { border: 1px solid var(--color7); }
.widget.v2 > h3,
.sidebar-wrap .widget > h3 { font-size: 1.25rem; line-height: 1.75rem; }

.recentpost-box + .recentpost-box { border-top: 1px solid var(--color5); }
.widget.v2 .recentpost-info > :is(h4, h5) { font-weight: 600; color: var(--color2); }
.widget.v2 .recentpost-info > :is(h4, h5) a { color: inherit; transition: var(--transition2); }
.widget.v2 .recentpost-info > :is(h4, h5) a:hover,
.widget.v2 .recentpost-info > :is(h4, h5) a:focus { color: var(--color3); }
.recentpost-info > span { color: var(--color6); }

footer .widget .recentpost-info > :is(h4, h5) a { color: var(--white); transition: var(--transition2); }
footer .widget .recentpost-info > :is(h4, h5) a:hover,
footer .widget .recentpost-info > :is(h4, h5) a:focus { color: var(--color3); }

.widget.v2 ul li { color: var(--color2); }
.widget.v2 ul li + li { border-top: 1px solid var(--color5); }
.widget.v2 ul li a { color: inherit; transition: var(--transition2); }
.widget.v2 ul li a:hover,
.widget.v2 ul li a:focus { color: var(--color3); }

.seo-live-search-host { position: relative; }
.seo-live-search {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 100000;
	background: var(--white);
	border: 1px solid var(--color5);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
	text-align: left;
	max-height: 70vh;
	overflow-y: auto;
}
.seo-live-search[hidden] { display: none; }

@media (max-width: 991.98px) {
	.header-search.active {
		align-items: flex-start !important;
		align-content: flex-start;
		padding-top: 5.5rem;
		overflow-y: auto;
	}
	.header-search > form input { font-size: 1.5rem; padding: 1rem 0; }
	.seo-live-search { max-height: calc(100vh - 14rem); }
}
.seo-live-search__list { list-style: none; margin: 0; padding: 0; }
.seo-live-search__item,
.seo-live-search__all {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: .75rem 1rem;
	color: var(--color2);
	font-size: 1rem;
	transition: var(--transition2);
}
.seo-live-search__list li + li { border-top: 1px solid var(--color5); }
.seo-live-search__item:hover,
.seo-live-search__item:focus,
.seo-live-search__item.is-active,
.seo-live-search__all:hover,
.seo-live-search__all:focus { color: var(--color3); background: var(--color7); }
.seo-live-search__type { color: var(--color6); font-size: .8125rem; white-space: nowrap; }
.seo-live-search__all { font-weight: 600; }
.seo-live-search__empty { padding: .75rem 1rem; color: var(--color6); }
@media (prefers-reduced-motion: reduce) {
	.seo-live-search__item,
	.seo-live-search__all { transition: none; }
}

.widget .banner-info > h3 { font-size: 1.25rem; }

@media (prefers-reduced-motion: reduce) {
	nav > ul > li,
	nav > ul li > a,
	nav ul ul li a,
	.responsive-menu > ul > li a,
	form.searchform > input,
	form.searchform > button,
	.widget.v2 ul li a,
	.widget.v2 .recentpost-info > :is(h4, h5) a { transition: none; }
}

.post-detail-author .author-box {background-color: var(--color7); overflow: hidden;}
.post-detail-author .author-row {align-items: stretch;}
.post-detail-author .author-img {flex: 0 0 auto; width: 100%; height: 240px;}
.post-detail-author .author-img img {display: block; width: 100%; height: 100%; object-fit: cover;}
.post-detail-author .author-content {flex: 1 1 0; min-width: 0; display: flex; align-items: center;}
@media (min-width: 768px) {
	.post-detail-author .author-img {width: 220px; height: auto;}
}
.post-detail-author .author-info h3 {font-size: 1.75rem; color: var(--color11);}
.post-detail-author .author-meta a {color: var(--color6); font-size: 0.9375rem;}
.post-detail-author .author-meta a:hover {color: var(--color3);}
.post-detail-author .author-info p {color: var(--color6); line-height: 1.7; font-size: 0.875rem;}

.comment-list {list-style: none; margin: 0; padding: 0;}
.comment-list .children {list-style: none; margin: 0 0 0 3.125rem; padding: 0 0 0 1.5625rem; border-left: 1px solid var(--color5);}
.comment-item {list-style: none;}

.comment-box {padding: 1.25rem;}
.comment-avatar {width: 90px;}
.comment-avatar img {border-radius: 50%; width: 80px; height: 80px; object-fit: cover;}
.comment-content {padding: 0 0 0 1.25rem;}
.comment-head {border-bottom: 1px solid var(--color5); padding-bottom: 0.625rem; margin-bottom: 0.9375rem;}
.comment-meta .comment-author {font-size: 1.0625rem; color: var(--color11);}
.comment-meta .comment-date {font-size: 0.8125rem; color: var(--color6);}
.comment-reply a {font-size: 0.9375rem; font-weight: 600; color: var(--color6);}
.comment-reply a:hover {color: var(--color3);}
.comment-awaiting-moderation {color: var(--color9); font-style: italic;}
.comment-list-wrap {margin-bottom: 3.125rem;}

.comment-respond .comment-reply-title {font-size: 1.75rem; color: var(--color11);}
.no-comments {color: var(--color6);}

@media (max-width: 767px) {
	.comment-list .children {margin-left: 1.25rem; padding-left: 0.9375rem;}
	.comment-avatar {width: 70px;}
	.comment-avatar img {width: 60px; height: 60px;}
	.comment-content {padding-left: 0.625rem;}
}

.logo img { height: auto; }

:root {
	--fs-display: clamp(2.125rem, 1.4rem + 3vw, 3.5rem);
	--fs-h2: clamp(1.75rem, 1.3rem + 1.8vw, 2.5rem);
	--lh-heading: 1.2;
	--space-section: clamp(4rem, 2.5rem + 6vw, 7.5rem);
	--space-section-sm: clamp(3rem, 2rem + 4vw, 5rem);
	--space-hero: clamp(7rem, 4rem + 8vw, 11.875rem);
}

h1, h2, h3, h4 { line-height: var(--lh-heading); text-wrap: balance; }
p, li { text-wrap: pretty; }

.pg-title-inner > h1 { font-size: var(--fs-display); }
.sec-title > h2 { font-size: var(--fs-h2); }

section > div.pt-100, section > div.pt-110, section > div.pt-120 { padding-top: var(--space-section); }
section > div.pb-100, section > div.pb-110, section > div.pb-120 { padding-bottom: var(--space-section); }
section > div.pt-80 { padding-top: var(--space-section-sm); }
section > div.pb-80 { padding-bottom: var(--space-section-sm); }
.pg-title-wrap.pt-190 { padding-top: var(--space-hero); }
.pg-title-wrap.pb-80 { padding-bottom: var(--space-section-sm); }

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
.btn:focus-visible,
.page-link:focus-visible,
[tabindex]:focus-visible {
	outline: 2px solid var(--color3) !important;
	outline-offset: 2px !important;
	border-radius: 4px;
}
header.style1 a:focus-visible,
header.style1 button:focus-visible,
footer a:focus-visible,
.bg-color11 a:focus-visible,
.bottom-bar a:focus-visible { outline-color: var(--white) !important; }

.post-info > :is(h2, h3) a,
.portfl-info > h5 a,
.simple-link { transition: var(--transition2); }
.post-info > :is(h2, h3) a:hover,
.post-info > :is(h2, h3) a:focus-visible,
.simple-link:hover,
.simple-link:focus-visible { color: var(--color3); }
.portfl-info > h5 a:hover,
.portfl-info > h5 a:focus-visible { color: var(--white); text-decoration: underline; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
	.wow { visibility: visible !important; }
	.particles-js { display: none !important; }
}

body.page-template-page-conSEO .particles-js,
body.page-template-page-marketing .particles-js,
body.page-template-page-shopify .particles-js,
body.page-template-page-sitiWeb .particles-js,
body.page-template-page-wp .particles-js { display: none; }

.responsive-topbar { padding: 0; }
.responsive-topbar .logo { align-self: center; padding: .625rem 0; }

.responsive-topbar .res-bar-btn {
	aspect-ratio: 1 / 1;
	margin: 0;
}
.responsive-topbar .res-bar-btn:first-child { margin-left: calc(var(--bs-gutter-x, 1.5rem) / -2); }
.responsive-topbar .res-bar-btn:last-child { margin-right: calc(var(--bs-gutter-x, 1.5rem) / -2); }
.responsive-topbar .res-bar-btn > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	margin: 0;
	font-size: 2rem;
	color: var(--color1);
	transition: var(--transition2);
}
.responsive-topbar .res-bar-btn > a:hover,
.responsive-topbar .res-bar-btn > a:focus-visible { color: var(--color3); background: var(--color24); }

.seo-cta-bar { display: none; }
@media (max-width: 1210px) {
	.seo-cta-bar {
		display: flex;
		align-items: center;
		justify-content: center;
		position: fixed;
		left: 5.5rem;
		right: .75rem;
		bottom: .75rem;
		min-height: 3rem;
		padding: 0 1.25rem;
		border-radius: 50rem;
		background: var(--color8);
		color: var(--white);
		font-family: var(--Nunito-Sans);
		font-weight: 700;
		font-size: 1rem;
		box-shadow: 0 6px 16px rgba(0, 0, 0, .2);
		z-index: 9998;
		transform: translateY(calc(100% + 1.5rem));
		visibility: hidden;
		transition: transform .4s ease, visibility 0s linear .4s;
	}
	.seo-cta-bar.is-visible {
		transform: translateY(0);
		visibility: visible;
		transition: transform .4s ease, visibility 0s;
	}
	.seo-cta-bar:hover,
	.seo-cta-bar:focus-visible { color: var(--white); filter: brightness(1.1); }
	body.slidein .seo-cta-bar { display: none; }
}

.ham {
	--ham-w: 1.75rem;
	--ham-h: .2415rem;
	--ham-gap: .464rem;
	position: relative;
	display: block;
	width: var(--ham-w);
	height: var(--ham-w);
}
.ham > span {
	position: absolute;
	left: 0;
	top: calc(50% - var(--ham-h) / 2);
	width: var(--ham-w);
	height: var(--ham-h);
	border-radius: 50rem;
	background: currentColor;
	transform-origin: calc(var(--ham-w) / 2) 50%;
	transition: width .4s ease-in-out, transform .4s ease-in-out;
	animation: ham-draw .75s cubic-bezier(.25, .1, .25, 1) backwards;
}
.ham > span:nth-child(1) { transform: translateY(calc(var(--ham-gap) * -1)); }
.ham > span:nth-child(2) { animation-delay: .125s; }
.ham > span:nth-child(3) { transform: translateY(var(--ham-gap)); animation-delay: .29s; }

@keyframes ham-draw { from { width: 0; } }

body.slidein .res-menu-btn .ham > span:nth-child(1) { transform: rotate(45deg); }
body.slidein .res-menu-btn .ham > span:nth-child(2) { width: var(--ham-h); }
body.slidein .res-menu-btn .ham > span:nth-child(3) { transform: rotate(-45deg); }

body.slidein { overflow: hidden; }
body.slidein:before { display: none; }

.responsive-menu {
	display: flex;
	flex-direction: column;
	align-items: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	max-width: none;
	height: 100%;
	padding: 0;
	background: var(--white);
	opacity: 1;
	visibility: hidden;
	overflow-y: auto;
	z-index: 100000;
	clip-path: inset(0 100% 0 0);
	transition: clip-path .7s cubic-bezier(.77, 0, .175, 1), visibility 0s linear .7s;
}
body.slidein .responsive-menu {
	left: 0;
	visibility: visible;
	clip-path: inset(0 0 0 0);
	transition: clip-path .7s cubic-bezier(.77, 0, .175, 1), visibility 0s;
}

.responsive-menu .logo {
	align-self: flex-start;
	width: 100%;
	max-width: 100%;
	border-bottom: 0;
	text-align: left;
	padding: .625rem 1rem;
}
.responsive-menu .logo > a { padding: 0; }
.responsive-menu .logo img { width: 185px; max-width: 100%; height: auto; }

.res-close {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.75rem;
	height: 4.75rem;
	padding: 0;
	background: transparent;
	color: var(--color1);
	z-index: 1;
}
.ham-x { position: relative; display: block; width: 1.75rem; height: 1.75rem; }
.ham-x > span {
	position: absolute;
	left: 0;
	top: calc(50% - .12rem);
	width: 100%;
	height: .2415rem;
	border-radius: 50rem;
	background: currentColor;
	transition: transform .5s ease-in-out .35s;
}
.ham-x > span:first-child { transform: rotate(0deg); }
.ham-x > span:last-child { transform: rotate(0deg); }
body.slidein .ham-x > span:first-child { transform: rotate(45deg); }
body.slidein .ham-x > span:last-child { transform: rotate(-45deg); }

.responsive-menu > ul {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 1rem 1.5rem 4rem;
	text-align: center;
}
.responsive-menu > ul > li {
	width: auto;
	max-width: 100%;
	border-top: 0 !important;
	font-size: clamp(1.75rem, 8vw, 2.75rem);
	line-height: 1.15;
	opacity: 0;
	transform: translateY(1.5rem);
	transition: opacity .5s ease, transform .5s ease;
}
.responsive-menu > ul > li a { display: inline-block; padding: .4rem 0; }
.responsive-menu > ul li.menu-item-has-children > a::before {
	position: static;
	margin-right: .4em;
	font-size: .55em;
	vertical-align: middle;
}
.responsive-menu > ul ul { padding-left: 0; text-align: center; }
.responsive-menu > ul ul li { font-size: clamp(1.125rem, 4.5vw, 1.375rem); line-height: 1.4; border-top: 0 !important; }
.responsive-menu > ul ul li a { padding: .35rem 0; }
.responsive-menu > ul > li .thm-btn { font-size: 1.125rem; padding: .75rem 1.5rem; }

body.slidein .responsive-menu > ul > li { opacity: 1; transform: none; transition-delay: .85s; }
body.slidein .responsive-menu > ul > li:nth-child(1) { transition-delay: .3s; }
body.slidein .responsive-menu > ul > li:nth-child(2) { transition-delay: .36s; }
body.slidein .responsive-menu > ul > li:nth-child(3) { transition-delay: .42s; }
body.slidein .responsive-menu > ul > li:nth-child(4) { transition-delay: .48s; }
body.slidein .responsive-menu > ul > li:nth-child(5) { transition-delay: .54s; }
body.slidein .responsive-menu > ul > li:nth-child(6) { transition-delay: .6s; }
body.slidein .responsive-menu > ul > li:nth-child(7) { transition-delay: .66s; }
body.slidein .responsive-menu > ul > li:nth-child(8) { transition-delay: .72s; }
body.slidein .responsive-menu > ul > li:nth-child(9) { transition-delay: .78s; }

.sicon {
	--sicon-stroke: .17rem;
	position: relative;
	display: block;
	width: 2.5rem;
	height: 2.5rem;
}
.sicon > i {
	position: absolute;
	top: 20%;
	left: 20%;
	width: 35%;
	height: 35%;
	border: var(--sicon-stroke) solid currentColor;
	border-radius: 50%;
	box-sizing: content-box;
	transition: all .3s ease-in-out;
}
.sicon::before,
.sicon::after {
	content: '';
	position: absolute;
	right: 23.5%;
	height: var(--sicon-stroke);
	border-radius: 50rem;
	background: currentColor;
	transition: all .3s ease-in-out;
}
.sicon::before {
	top: 22.5%;
	width: 0;
	margin-top: calc(var(--sicon-stroke) / -2);
	transform: rotate(-45deg);
	transform-origin: right top;
}
.sicon::after {
	bottom: 22.5%;
	width: 30%;
	margin-top: calc(var(--sicon-stroke) / -2);
	transform: rotate(45deg);
	transform-origin: right bottom;
}
body.search-open .responsive-topbar .sicon::before,
body.search-open .responsive-topbar .sicon::after,
.header-search.active .sicon::before,
.header-search.active .sicon::after { width: 77.5%; }
body.search-open .responsive-topbar .sicon > i,
.header-search.active .sicon > i { width: 0; height: 0; border-color: transparent; }

.search-close-btn { display: flex; align-items: center; justify-content: center; }

.responsive-menu > ul { flex: 1 0 auto; justify-content: center; padding-bottom: 1.5rem; }
.responsive-menu > ul > li { text-transform: uppercase; }
.responsive-menu > ul ul li { text-transform: none; }
.res-menu-ctas {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .875rem;
	margin-top: auto;
	padding: 1.5rem 1.5rem 4rem;
	border-top: 1px solid var(--color7);
	max-width: 22rem;
}
.res-menu-ctas .thm-btn { width: 100%; font-size: 1.125rem; padding: .75rem 1.5rem; text-align: center; }
.res-menu-ctas .thm-btn:not(.brd-btn) { color: var(--white); }
.res-menu-ctas .thm-btn.brd-btn { border-color: var(--color8) !important; color: var(--color8); }
.res-menu-ctas .thm-btn.brd-btn:hover,
.res-menu-ctas .thm-btn.brd-btn:focus-visible { color: var(--white); }
.res-menu-ctas .thm-btn.brd-btn::before { background-color: var(--color8); }

@media (max-width: 1210px) {
	.responsive-header.res-stuck .responsive-topbar {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		background: var(--white);
		box-shadow: 0 2px 12px rgba(0, 0, 0, .12);
		z-index: 9997;
		animation: res-bar-in .3s ease;
	}
	body.admin-bar .responsive-header.res-stuck .responsive-topbar { top: 46px; }
	body.slidein .responsive-header.res-stuck .responsive-topbar { position: static; box-shadow: none; animation: none; }
}
@keyframes res-bar-in { from { transform: translateY(-100%); } to { transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
	.responsive-header.res-stuck .responsive-topbar { animation: none; }
}

.seo-toc {
	margin: 0 0 2rem;
	border: 1px solid var(--color5);
	border-radius: 10px;
	background: var(--color7);
}
.seo-toc > summary {
	cursor: pointer;
	padding: .875rem 1.25rem;
	font-family: var(--Open-Sans);
	font-weight: 700;
	color: var(--color1);
}
.seo-toc > summary:hover,
.seo-toc > summary:focus-visible { color: var(--color3); }
.seo-toc > summary:focus-visible { outline: 2px solid var(--color3); outline-offset: 2px; border-radius: 10px; }
.seo-toc nav { padding: 0 1.25rem 1rem; }
.seo-toc ol { margin: 0; padding-left: 1.25rem; }
.seo-toc ol ol { margin: .25rem 0 .5rem; list-style: lower-alpha; }
.seo-toc li { margin: .25rem 0; }
.seo-toc a { color: var(--color2); transition: var(--transition2); }
.seo-toc a:hover,
.seo-toc a:focus { color: var(--color3); }
.seo-toc-back { margin: .25rem 0 1rem; font-size: .9375rem; text-align: right; }
.seo-toc-back a { color: var(--color6); transition: var(--transition2); }
.seo-toc-back a:hover,
.seo-toc-back a:focus { color: var(--color3); }
.post-detail-desc :is(h2, h3, h4) { scroll-margin-top: 7rem; }
#sommario { scroll-margin-top: 7rem; }
