/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 22 2026 | 12:52:31 */
:root {
	--bg: #F4F6F8;
	--bg-dark: #EEF1F4;
	--primary: #1F3A5F;
	--font: #1E1E1E;
	--active-map: #7DBFA1;
	--green: #4CAF50;
	--border: 1px solid #D9DDE3;
	--yellow: #FFDC00;
	--grey: #D9DDE3;
	--icon: #5F6C7B;
	--off: #BFC7D1;
	--map: #7DBFA1;
	--logo: #4A6FA5;
	--shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	--radius: 12px;
	--trans: all 0.2s ease;
}

svg .regione {
	fill: #EEECEC;
	transition: var(--trans);
}

svg .regione:hover {
	fill: var(--primary);
}

svg .regione.emilia-romagna,
svg .regione.lazio {
	fill: var(--active-map)
}

.grecaptcha-badge {
	display: none;
	visibility: hidden;
}

/********************
SHORTCUTS
********************/
.flex {display: flex;}
.vertical {align-items: center;}
.baseline {align-items: baseline;}
.horizontal {justify-content: center;}
.column {flex-direction: column;}
.wrap {flex-wrap: wrap;}
.relative {position: relative;}

.bg-no {background-color: transparent !important;}
.bg-white {background: #fff;}
.bg-primary {background-color: var(--primary);}

.full-width-btn {width: 100%;}

.c-gap-5 {column-gap: 5px;}
.c-gap-10 {column-gap: 10px;}
.c-gap-20 {column-gap: 20px;}
.c-gap-40 {column-gap: 40px;}
.r-gap-10 {row-gap: 10px;}
.r-gap-20 {row-gap: 20px;}
.gap-5 {gap: 5px;}

.pb-0 {padding-bottom: 0;}
.pb-10 {padding-bottom: 10px;}
.pb-20 {padding-bottom: 20px;}
.pt-20 {padding-top: 20px;}

.uk-section-default {background-color: var(--bg);}
.uk-section-default.bg-dark {background-color: var(--bg-dark);}

.left {text-align: left !important;}

.fix-p {margin-top: -10px !important;}

/********************
GENERAL
********************/
a {
	position: relative;
	transition: var(--trans);
	text-decoration: none;
}

.h1,
h1,
.h2,
h2,
h3,
h4,
h5,
p,
ul,
li,
a {
	padding: 0;
	margin: 0;
}

.uk-button {
	padding: 0 20px;
	border-radius: 10px;
	border: 1px solid var(--primary);
	font-size: 16px;
	font-weight: 800;
	text-align: center;
	letter-spacing: 0;
	transition: var(--trans);
}

.uk-button:active {
	top: 2px;
}

.uk-button.uk-button-primary {
	background-color: var(--primary);
}

.uk-button.uk-button-primary:hover {
	background-color: transparent;
	color: var(--primary);
}

html {
  scroll-behavior: smooth;
}

/********************
TYPOGRAPHY
********************/
.h1,
h1,
.h2,
h2,
h3,
h4,
h5 {
	font-family: 'Roboto Condensed';
	font-weight: 800;
	color: var(--primary);
	line-height: 110%;
	text-transform: uppercase;
	padding-bottom: 20px;
	letter-spacing: 0;
}

h1,
.h1 {
	font-size: 46px;
}

.h1 > span,
h1 > span {
	color: var(--logo);
	font-size: 46px;
	font-family: 'Roboto Condensed';
	font-weight: 800;
	text-transform: uppercase;
}

h2,
.h2 {
	font-size: 32px;
}

.h2 > span,
h2 > span {
	color: var(--logo);
	font-size: 32px;
	font-family: 'Roboto Condensed';
	font-weight: 800;
	text-transform: uppercase;	
}

h3 {
	font-size: 26px;
}

h4 {
	font-size: 21px;
}

h5 {
	font-size: 16px;
}

p,
li,
span {
	font-family: 'Roboto';
	font-size: 16px;
	color: var(--font);
	font-weight: 300;
	line-height: 110%;
}

.city-page .small {
	margin-bottom: 10px;
}

.small {
	font-size: 12px;
}

.link {
	text-decoration: underline;
	color: var(--icon);
}

.brand {
	color: var(--logo);
	font-family: 'Roboto Condensed';
	font-weight: 800;
	text-transform: uppercase;		
}

.pa-loader {
	display:flex;
	align-items:center;
	gap:10px;
	padding:16px;
	position: absolute;
    top: -58px;
}

.pa-spinner{
  width:18px;
  height:18px;
  border:2px solid rgba(0,0,0,.15);
  border-top-color: rgba(0,0,0,.6);
  border-radius:50%;
  animation: paSpin .8s linear infinite;
}

@keyframes paSpin{
  to { transform: rotate(360deg); }
}

.legal__wrapper ul {
	margin-left: 20px;
	margin-top: 10px;
	margin-bottom: 20px;
}

.legal__wrapper li {
	line-height: 20px;
}

.legal__wrapper li a,
.legal__wrapper p a {
	text-decoration: underline;
}

.divider .uk-panel {
	border-top: 1px solid var(--grey);
	padding-top: 20px;	
}

/********************
ELEMENTS
********************/
.ups__wrapper li.el-item {
	margin-top: 0;
	font-size: 10px;
	flex: 1;
}

.insurance__wrapper .el-item {
	background-color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	border: 1px solid var(--border);
	padding: 20px;
	row-gap: 20px;
}
.insurance__wrapper .el-item p {
	text-align: center;
}

.insurance__wrapper .el-item .el-content,
.insurance__wrapper .el-item .el-title {
	margin-top: 0 !important;
	padding-bottom: 0;
}

.step__wrapper .el-content {
	display: flex;
	column-gap: 10px;
}

.step__wrapper .el-item:not(:first-child) {
	margin-top: 20px;
}

.step__wrapper .el-content span {
	height: 50px;
	width: 50px;
	border-radius: 50%;
	background-color: var(--primary);
	font-size: 26px;
	font-weight: 900;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	flex-shrink: 0;
}

.step__wrapper .el-item:not(:last-child) .el-content span::before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -60px;
	transform: translateX(-50%);
	width: 1px;
	height: 70px;
	background-color: var(--primary);
}

.step__wrapper .el-content h4 {
	padding-bottom: 5px;
}

.card__wrapper {
	position: relative;
}

.card__wrapper .el-item {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	border-radius: var(--radius);
	border: var(--border);
	box-shadow: var(--shadow);
	padding: 20px;
}

.card__wrapper .el-item > div.uk-margin-top.uk-display-block > a,
.card__wrapper .el-item > div.uk-margin-top.uk-display-block {
	width: 100%;
}

.card__wrapper .label-term,
.card__wrapper .mansioni-label,
.card__wrapper .fs-grid-fieldset-4 > .uk-panel,
.card__wrapper .fs-grid-fieldset-3 .fs-grid-text,
.card__wrapper .label-ambiente {
	display: flex;
	align-items: center;
	column-gap: 5px;
}

.card__wrapper .pa-profile-image {
	height: 250px;
	width: 100%;
}

.card__wrapper .mansioni-label > span {
	color: var(--icon);
}

.card__wrapper .mansioni-label:has(.active) > span {
	color: var(--font);
}

.card__wrapper .fs-grid-fieldset-3 {
	margin-top: 20px;
}

.card__wrapper .fs-grid-fieldset-3 .fs-grid-text {
	font-size: 0;
	margin-top: 10px;
}

.card__wrapper .label-term,
.card__wrapper .label-ambiente {
	border: var(--border);
	padding: 5px 10px;
	border-radius: 5px;
}

.card__wrapper .pa-ambienti .label-ambiente:first-child,
.card__wrapper .pa-collaborazione .label-term {
	flex: none;
}

/*.card__wrapper .label-ambiente,*/
.card__wrapper .label-ambiente .label-term {
	flex: 1 0 15%;
}

.card__wrapper .pa-card__section svg {
	min-width: 10px;
}

.card__wrapper .label-term p,
.card__wrapper .label-ambiente p {
	font-size: 12px;
}

.card__wrapper .fs-grid-fieldset-4 > .uk-panel {
	column-gap: 20px;
}

.card__wrapper .el-item > div:first-child {
	width: 100%;
	display: flex;
	justify-content: center;
	background-color: var(--bg);
	padding: 20px 0;
}

.card__wrapper .el-item .el-content,
.card__wrapper .el-title {
	width: 100%;
	text-align: left;
	padding-bottom: 0;
}

.card__wrapper .el-item .el-content {
	font-family: 'Roboto';
}

.card__wrapper .pa-collaborazione,
.card__wrapper .pa-ambienti {
	column-gap: 5px;
}

.card__wrapper .pa-card__section:first-child {
	margin-bottom: 20px;
}

.card__wrapper .pa-card__section .pa-card__label {
	margin-bottom: 5px;
	flex: none;
}

.tariffa {
	font-size: 21px;
	font-weight: 900;
}

.tariffa-small {
	font-size: 12px;
	font-weight: 300;
	color: var(--icon);
}

.tooltip-prezzo {
	position: relative;
	transition: var(--trans);
	margin-left: 30px;
	top: -2px;
	cursor: pointer;
}

.card__wrapper .svg-circle {
	height: 20px;
	width: 20px;
	border-radius: 50%;
	border: var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
}

.card__wrapper .el-meta {
	width: 100%;
}

.card__wrapper .el-meta h3 {
	padding-bottom: 0;
}

.card__wrapper .fs-grid-fieldset-1 {
	margin-bottom: 5px;
}

.card__wrapper .svg-circle.active {
	border-color: var(--green);
}

.tooltip-prezzo::before {
	content: 'L’importo visualizzato non costituisce un’offerta vincolante. Prezzo, durata e condizioni del servizio sono stabiliti esclusivamente tra cliente e collaboratore.';
	position: absolute;
	bottom: 25px;
	width: 200px;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	background-color: var(--primary);
	font-size: 12px;
	line-height: 14px;
	cursor: pointer;
	padding: 10px;
	border-radius: var(--radius);
	opacity: 0;
	visibility: hidden;
}

.tooltip-prezzo::after {
	content: '';
	position: absolute;
	height: 20px;
	width: 20px;
	background-color: var(--primary);
    bottom: 10px;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
	/*transition: var(--trans);*/
	opacity: 0;
	visibility: hidden;
}

.tooltip-prezzo path {
	transition: var(--trans);
}
.tooltip-prezzo:hover path {
	fill: var(--icon);
}

.tooltip-prezzo:hover::before,
.tooltip-prezzo:hover::after {
	opacity: 1;
	visibility: visible;
}

.card__wrapper .indicators {
	color: var(--icon);
}

.catergoria__wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 20px;
}

.catergoria__wrapper .el-item {
	margin-top: 0 !important;
	background-color: #fff;
	border-radius: var(--radius);
	border: var(--border);
	box-shadow: var(--shadow);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px;
	flex: 1;
	transition: var(--trans);
}

.catergoria__wrapper .categoria-label {
	width: 100%;
}

.catergoria__wrapper .uk-link-toggle {
	text-align: center;
}

.catergoria__wrapper .categoria-label .uk-grid {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	row-gap: 10px;
}

.catergoria__wrapper .el-item:hover * {
	text-decoration: none;
}

.catergoria__wrapper .el-item:hover {
	transform: translateY(-5px);
	background-color: var(--bg);
}

.accordion__wrapper .el-item {
	background-color: #fff;
	padding: 20px;
	border-radius: var(--radius);
	border: var(--border);
}

.accordion__wrapper h4 {
	padding-bottom: 0;
}

.accordion__wrapper .el-content {
	padding-top: 20px;
	border-top: 1px solid var(--grey);
	max-width: calc(100% - 40px);
}

.accordion__wrapper .uk-accordion-title {
	align-items: baseline;
}

.accordion__wrapper .uk-accordion-icon {
	height: 30px;
	width: 30px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	font-weight: 900;
	border: var(--border);
}

.accordion__wrapper .uk-accordion-icon rect {
	fill: var(--primary) !important;
}

.accordion__wrapper .uk-accordion-icon .line-1 {
	height: 3px;
	y: 5px;
}
.accordion__wrapper .uk-accordion-icon .line-2 {
	width: 3px;
	x: 5px;
}

.accordion__wrapper .el-item:not(.uk-open) .uk-accordion-icon {
	background-color: #F4F6F8;
	border-color: var(--primary);
}

.accordion__wrapper .el-item:not(:first-child) {
	margin-top: 10px;
}

.regions__wrapper h4 {
	padding-bottom: 0;
}

.regions__wrapper .uk-list .uk-link-toggle {
	display: inline-block;
}

.regions__wrapper .uk-list .uk-link-toggle:active {
	top: 2px;
}

.regions__wrapper .uk-list .uk-link-toggle span {
	color: var(--font);
	transition: var(--trans);
}

.regions__wrapper .uk-list .uk-link-toggle:hover span {
	text-decoration: none;
	padding-left: 3px;
	color: var(--icon);
}

.advantages__wrapper {
	margin-left: 0;
}

.regions__wrapper .uk-list {
	display: none;
	break-inside: avoid;
}

.regions__wrapper .uk-list:not(:last-child) {
	margin-bottom: 20px;
}

.regions__wrapper ul:has(.city-items) {
	display: block;
}

.regions__wrapper .uk-container > div:last-child > div {
	columns: 3;
	column-gap: 40px;
}

.advantages {
	border: var(--border);
	border-radius: var(--radius);
	width: 45%;
	padding: 20px;
}

.advantages h4 {
	padding-bottom: 0;
}

.uk-grid .advantages:last-child {
	margin-left: 40px;
}

.single-pulizie p strong {
	font-weight: 800;
    color: var(--logo);
}

/********************
FILTER
********************/
#filters {
	position: sticky;
	top: 10px;
}
.filter__wrapper {
	background-color: #fff;
	border-radius: var(--radius);
	border: var(--border);
	box-shadow: var(--shadow);
	padding: 20px;
}

.filter__wrapper.default {
	background-color: unset;
	border-radius: unset;
	border: unset;
	box-shadow: unset;
	padding: unset;
}

.filter-group {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.filter-group:not(:last-child) {
	padding-bottom: 20px;
}

.profile-option .pa-card__label {
	font-family: "Roboto";
	color: var(--font);
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: 300;
}

.profile-option .pa-ambienti {
	column-gap: 5px;
}

.profile-option .pa-ambienti {
	margin-bottom: 20px;
}

.profile-option .label-term,
.profile-option .label-ambiente {
	background-color: #fff;
}

.profile-option .label-term,
.profile-option .label-ambiente,
.filter-option {
	height: 25px;
	display: flex;
	align-items: center;
	padding: 0 10px;
	column-gap: 5px;
	border-radius: 5px;
	border: var(--border);
	transition: var(--trans);
	cursor: pointer;
	position: relative;
}

.filter-option:active {
	top: 2px;
}

.filter-option:hover,
.filter-option.active {
	background-color: var(--primary);
	color: #fff;
}

.filter-option:hover span,
.filter-option.active span {
	color: #fff;
}

.filter-option:hover path,
.filter-option.active path {
	fill: #fff;
}

.filter-option,
.filter-option * {
	font-size: 10px;
}

.filter-group[data-filter="orario"] .filter-option,
.filter-group[data-filter="mansioni"] .filter-option,
.filter-group[data-filter="ambiente"] .filter-option {
	flex: 1 0 25%;
}

.filter-option svg {
	flex-shrink: 0;
}

.filter-title {
	font-weight: 800;
	color: var(--primary);
	padding-bottom: 10px;
}

.reset {
	column-gap: 10px;
	cursor: pointer;
	transition: var(--trans);
}

.reset svg {
	transition: var(--trans);
}

.reset:hover svg {
	transform: rotate(-270deg);
	transform-origin: center center;
}

.reset h5 {
	padding-bottom: 0;
}

#filters .location-input {
	margin-bottom: 20px;
	display: flex;
    align-items: center;
    justify-content: center;
	height: 40px;
	border-radius: 13px;
	border: 1px solid var(--primary);
	position: relative;
}

#filters .location-input input {
	width: 100%;
	border: none;
	height: calc(100% - 6px);
	border-radius: var(--radius) 0 0 var(--radius);
	padding-left: 10px;
}

#filters .location-input input:focus-visible {
	outline: none;
}

#filters .location-input input::placeholder {
	color: var(--icon);
	font-weight: 300;
	font-family: "Roboto";
	font-size: 11px;
}

#filters .location-input button {
	height: 100%;
	border-radius: 0 var(--radius) var(--radius) 0;
	border: none;
	width: 100%;
	max-width: 100px;
	background-color: var(--primary);
	color: #fff;
	font-size: 16px;
	text-transform: uppercase;
	font-family: "Roboto Condensed";
	cursor: pointer;
	transition: var(--trans);
	position: relative;
}

#filters .location-input button:hover {
	background-color: var(--icon);
}

#filters .location-input .close {
	position: absolute;
	bottom: 50%;
	transform: translateY(50%);
	right: 110px;
	height: 15px;
	width: 15px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: var(--border);
	cursor: pointer;
	transition: var(--trans);
	opacity: 0;
	visibility: hidden;
}

#filters .location-input .close:hover {
	background-color: var(--bg);
}

#location-suggest {
	position: absolute;
    top: 80px;
    left: 20px;
    right: 120px;
    background-color: white;
	border-left: 1px solid var(--primary);
	border-right: 1px solid var(--primary);
	border-bottom: 1px solid var(--primary);
}

#location-suggest .suggest__item {
	font-family: "Roboto";
	font-size: 14px;
	color: var(--icon);
	padding-left: 10px;
	transition: var(--trans);
	cursor: pointer;
}

#location-suggest .suggest__item:hover {
	background-color: var(--bg);
}

/********************
RESULTS
********************/
#results-count {
	font-weight: 900;
}

#results {
	font-family: "Roboto";
}

#results .pa-card {
	display: flex;
	align-items: stretch;
	background-color: #fff;
	border-radius: var(--radius);
	border: var(--border);
	box-shadow: var(--shadow);
	padding: 20px;
}

#results .pa-card > div {
	flex: 1 0 45%;
}

#results .pa-grid {
	display: flex;
	flex-direction: column;
	row-gap: 10px;
}

#results .pa-collaborazione,
#results .pa-ambienti,
#results .mansioni-row {
	column-gap: 10px;
	margin-top: 5px;
}

#results .pa-card__title {
	padding-bottom: 10px;
}

#results .pa-card__section {
	padding-bottom: 10px;
}

#results .pa-card__price {
	padding-bottom: 0;
    margin-top: -10px;
}

#results .pa-card__price * {
	color: var(--font);
}

#results .pa-card__btn {
	width: 100%;
	line-height: 31px;
}

#results .search-content {
	padding-left: 10px;
}

#results .pa-card__meta {
	line-height: 100%;
}

#results .pa-card__meta span {
	color: var(--icon);
}

#results .pa-card__label {
	font-weight: 300;
	color: var(--font);
}

#results .pa-card__img {
	height: 100%;
	width: 100%;
	max-height: 320px;
}

#results .pa-empty {
	align-items: baseline;
}

/* NEW */
#results .pa-card .is-active span {
	color: red;
}

.filter-group[data-filter="disponibilita"] .filter-option {
	flex: 1 0 5%;
}

#results .day-block {
	flex: 1 0 10%;
	background-color: var(--bg);
}

.filter-group[data-filter="disponibilita"] .filter-option,
#results .day-block {
	align-items: center;
	border: var(--border);
	border-radius: 5px;
	row-gap: 3px;
	padding-top: 5px;
	padding-bottom: 5px;
}

#results .day-block span {
	font-size: 12px;
	font-weight: 400;
	color: #D9DDE3;
}

#results .day-block.is-active {
	background-color: var(--primary);
}

#results .day-block.is-active span {
	color: #fff;
}

#location-results.card__wrapper .pa-card__section:first-child {
	margin-bottom: 0;
}

#results .pa-empty {
    padding: 20px;
    background-color: #fff;
    border-radius: var(--radius);	
}
#results .pa-empty p {
    font-size: 16px;
    text-align: center;
    display: block;
    color: var(--font);
    font-weight: 600;
    font-family: "Roboto Condensed";
}

/********************
PAGINA PROFILO
********************/
#scheda .location__wrapper .el-item {
	margin-top: 0;
}

#scheda h4,
#scheda h1 {
	padding-bottom: 0 !important;
}

#scheda .age-item svg {
	position: relative;
	top: -2px;
}

#scheda .small-title {
	margin-bottom: 0 !important;
}

#scheda .small-desc {
	margin-top: 5px !important;
}

#scheda h2 {
	padding-bottom: 0;
}

#scheda .label-ambiente,
#scheda .label-term {
	cursor: default;
}

.contact__wrapper .el-item {
	flex: 1 0 40%;
}

.contact__wrapper .uk-button.uk-button-primary {
	background-color: var(--primary);
}

.contact__wrapper .uk-button {
	width: 100%;
	background-color: #ffF;
}

.contact__wrapper .uk-button.uk-button-primary span {
	color: #fff;
}

.contact__wrapper .uk-button span {
	font-size: 16px;
    font-weight: 800;
    text-align: center;
    letter-spacing: 0;
	color: var(--primary);
	transition: var(--trans);
}

.contact__wrapper .uk-button:hover span {
	text-decoration: none;
}

.contact__wrapper .el-item:not(:first-child) {
	margin-top: 0;
}

.contact__wrapper .uk-button.uk-button-primary:hover {
	background-color: var(--icon);
}

.contact__wrapper .uk-button:hover {
	background-color: var(--bg);
}

.share__wrapper .el-item {
	margin-top: 0;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	border: var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	position: relative;
}

.share__wrapper .el-item:active {
	top: 2px;
}

.share__wrapper .link-share {
	position: relative;
}

.share__wrapper .el-item #copy-feedback {
	position: absolute;
	bottom: -25px;
	left: 50%;
	transform: translateX(-50%);+
	font-family: "Roboto";
	font-size: 12px;
	font-weight: 300;
}

.share__wrapper .el-item,
.share__wrapper .el-item * {
	transition: var(--trans);
}

.share__wrapper .el-item button {
	background-color: unset;
	border: none;
	cursor: pointer;
}

.share__wrapper .el-item:hover {
	background-color: var(--primary);
}

.share__wrapper .el-item:hover svg path {
	fill: #fff;
}

.related-section {
	display: none;
}
.related-section:has(.card__wrapper) {
	display: block !important;
}

.pa-check p.small {
	padding-top: 0 !important;
}

/********************
CONTACTFORM
********************/
#contatta form h5 {
	padding-bottom: 5px;
}

#contatta .form-row {
	margin-bottom: 10px;
	position: relative;
}

#contatta .form-row span {
	display: flex;
	flex-direction: column;
}

#contatta .input,
#contatta .textarea {
	border-radius: 5px;
	border: var(--border);
	padding-left: 10px;
	width: 100%;
	font-family: "Roboto";
    color: var(--font);
    font-size: 14px;
	width: calc(100% - 15px);
}

#contatta .input:focus-visible,
#contatta .textarea:focus-visible {
	outline: none;
}

#contatta .input::placeholder,
#contatta .textarea::placeholder {
	color: var(--icon);
	font-weight: 300;
	font-family: "Roboto";
	
}

#contatta .input {
	height: 40px;
}

#contatta .textarea {
	resize: vertical;
	padding-top: 10px;
}

#contatta .wpcf7-form-control-wrap .wpcf7-list-item > label {
	display: flex;
	align-items: center;
	column-gap: 5px;
}

#contatta .wpcf7-form-control-wrap .wpcf7-list-item {
	margin-left: 0;
	margin-bottom: 10px;
}

#contatta .wpcf7-form-control-wrap .wpcf7-list-item > label > span {
	font-family: "Roboto";
    color: var(--font);
	font-weight: 300;
    font-size: 12px;
}

#contatta .legal-box {
	flex-shrink: 0;
}

#contatta .wpcf7-list-item-label a {
	text-decoration: underline;
}

#contatta .wpcf7-not-valid-tip {
	font-size: 12px;
    color: red;
    position: absolute;
	bottom: -15px;
	left: 3px;
}

#contatta .form-row:has(.wpcf7-not-valid-tip) {
	padding: 20px 5px;
    border-radius: var(--radius);
    border: 1px solid red;
    background-color: #ff000026;
}

#contatta .uk-button-primary {
	width: 100%;
}

#contatta p:has(.uk-button-primary[disabled=""]) {
	position: relative;
}

#contatta .uk-button-primary[disabled=""] {
	background-color: var(--grey);
}

#contatta p:has(.uk-button-primary[disabled=""])::before {
	content: "Conferma di aver letto l'informativa sulla privacy per poter inviare la richiesta";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%);
	background-color: var(--primary);
	color: #fff;
	font-size: 12px;
    line-height: 14px;
    padding: 10px;
    border-radius: var(--radius);
	opacity: 0;
	visibility: hidden;
	transition: var(--trans);
	z-index: 2;
}

#contatta p:has(.uk-button-primary[disabled=""]):hover::before {
	opacity: 1;
	visibility: visible;
}

#contatta .wpcf7-response-output {
	padding: 20px 20px 20px 70px;
	border-radius: var(--radius);
    font-weight: 600;
	border: none;
	margin: 20px 0 0 0;
	font-family: "Roboto";
	position: relative;
	font-size: 16px;
	line-height: 110%;
}

#contatta .wpcf7-response-output::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
	height: 30px;
	width: 30px;
	background-repeat: no-repeat;
	background-size: contain;
}

#contatta form.invalid .wpcf7-response-output {
	background-color: var(--yellow);
	color: var(--font);
}

#contatta form.sent .wpcf7-response-output {
	background-color: var(--green);
	color: #fff;
}

#contatta form.sent .wpcf7-response-output::before {
	background-image: url('/wp-content/uploads/2026/02/icona-check-bianco.png');
}

#contatta form.invalid .wpcf7-response-output::before {
	background-image: url('/wp-content/uploads/2026/02/icona-alert.png')
}

/********************
HEADER
********************/
.uk-navbar-container {
	background-color: var(--bg) !important;
}

nav.uk-navbar {
	background-color: #fff;
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 10px;
	border-radius: var(--radius);
	border: 1px solid var(--primary);
}

.uk-navbar .uk-navbar-nav>li>a {
	font-family: "Roboto Condensed";
	font-weight: 800;
	color: var(--icon);
	text-transform: uppercase;
	font-size: 16px;
	letter-spacing: 0;
	position: relative;
	transition: var(--trans);
}

.uk-navbar .uk-navbar-nav>li>a:active {
	top: 2px;
}


.uk-navbar .uk-navbar-nav>li>a:hover {
	color: var(--grey) !important;
}

.uk-navbar .uk-navbar-nav>li.uk-active>a {
	color: var(--primary);
	font-weight: 900;
}

.uk-navbar .uk-navbar-nav>li.uk-active>a::before {
	content: '';
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	height: 2px;
	background-color: var(--primary);
}

.uk-navbar .uk-navbar-right li:first-child,
.uk-navbar .uk-navbar-right li:last-child {
	display: flex;
	align-items: center;
}

#custom_html-2 .textwidget {
	align-items: center;
	justify-content: center;
}

#custom_html-2 .profile-link {
	display: block;	
}

#custom_html-2 .profile-link,
.uk-navbar .uk-navbar-right li:first-child a {
	min-height: 40px;
	height: 45px;
	width: 45px;
	font-size: 0;
	border-radius: 50%;
	border: var(--border);
	background-image: url('/wp-content/uploads/2026/01/icona-profilo.png');
	background-size: 20px 24px;
	background-position: center center;
	background-repeat: no-repeat;
}


#custom_html-2:hover .profile-link,
.uk-navbar .uk-navbar-right li:first-child a:hover {
	background-color: var(--primary);
	background-image: url('/wp-content/uploads/2026/01/icona-profilo-bianca.png');
}

.uk-navbar .uk-navbar-right li:last-child a {
	min-height: 30px;
	max-height: 30px;
	background-color: var(--primary);
	color: #fff;
	padding: 20px;
	border-radius: var(--radius);
	border: 1px solid var(--primary);
}

.uk-navbar .uk-navbar-right li:last-child a:hover {
	color: #fff !important;
	background-color: var(--icon);
}

#custom_html-2,
body.logged-in #custom_html-3,
body.logged-in .footer__wrapper .uk-button,
.uk-navbar .uk-navbar-right li:first-child a::before,
.uk-navbar .uk-navbar-right li:last-child a::before,
body:not(.logged-in) .uk-navbar-right li:nth-child(1),
body:not(.logged-in) .uk-navbar-right li:nth-child(3),
body.logged-in .uk-navbar-right li:nth-child(2),
body.logged-in .uk-navbar-right li:nth-child(3),
body.logged-in .uk-navbar-right li:nth-child(4) {
	display: none;
}

body.logged-in #custom_html-2 {
	display: flex;
}

#custom_html-3 .uk-button {
	padding: 0 10px;
	font-size: 12px;
	line-height: 35px;
}

#tm-dialog-mobile::before {
	background-color: #00000094;
}

#tm-dialog-mobile .uk-offcanvas-bar {
	background-color: var(--bg-dark);
}

#tm-dialog-mobile .uk-logo img {
	display: block;
	margin: 0 auto;
}

#tm-dialog-mobile .uk-first-column:first-child .uk-panel {
	padding-bottom: 20px;
	border-bottom: 1px solid var(--grey);
}

#tm-dialog-mobile .uk-offcanvas-bar a {
	color: var(--icon);
	font-family: "Roboto Condensed";
	letter-spacing: 0;
	font-weight: 700;
	font-size: 14px;
	display: block;
	text-align: right;
	text-transform: uppercase;
}

#tm-dialog-mobile .uk-offcanvas-bar svg line {
	stroke: var(--primary);
}

/********************
FOOTER
********************/
.footer__wrapper {
	padding-top: 20px;
	padding-bottom: 10px;
}

.footer__wrapper .uk-container {
	padding: 20px;
	border-radius: var(--radius);
	background-color: var(--primary)
}

.footer__wrapper .uk-container * {
	color: #fff;
}

.footer__wrapper .uk-container > div:first-child {
	padding-left: 0;
}

.footer__wrapper .uk-button-secondary {
	width: 100%;
	background-color: var(--font);
	border-color: var(--icon);
}

.footer__wrapper .uk-button-secondary:hover {
	background-color: var(--icon);
}

.footer__wrapper .uk-list {
	margin-top: -20px;
	margin-left: 5px;
}

.footer__wrapper .hr {
	border-top: 1px solid var(--icon);
}

.footer__wrapper .hr p {
	color: var(--icon);
	margin-top: 20px; 
}

.footer__wrapper .uk-container .uk-grid:last-child {
	margin-top: 20px;
}

.footer__wrapper .uk-list .el-item a {
	transition: var(--trans);
	position: relative;
}

.footer__wrapper .uk-list .el-item a:hover {
	color: var(--grey);
}

.footer__wrapper .uk-list .el-item a::before {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 0;
	height: 1px;
	background-color: #fff;
	width: 0;
	transition: var(--trans);
}

.footer__wrapper .uk-list .el-item a:hover::before {
	width: 100%;
}

.footer__wrapper .uk-list .el-item a:hover {
	text-decoration: none;
}

/********************
BLOG
********************/
html.js-wrapping .articles__wrapper .el-item {
  visibility: hidden;
}
html.js-wrapping .articles__wrapper .el-item.js-ready {
  visibility: visible;
}

.articles__wrapper .el-item {
	display: flex;
	column-gap: 40px;
	background-color: #fff;
	padding: 20px;
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	border: var(--border);
}

.articles__wrapper .blog-teaser {
	display: flex;
	flex-direction: column;
	width: 50%;
}

.articles__wrapper .blog-teaser h3 {
	padding-bottom: 0;
	margin-top: 0 !important;
}

.articles__wrapper .blog-teaser .el-link {
	width: 100%;
}

.articles__wrapper .blog-teaser .el-content {
	margin-top: 10px !important;
}

.post__wrapper .post_img img,
.articles__wrapper .el-item img {
	aspect-ratio: 16/9;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.articles__wrapper .el-item img {
	width: 50%;
}

.articles__wrapper .el-meta {
	margin-top: 10px !important;
}

.related-posts .el-meta .small,
.articles__wrapper .el-meta .small {
	letter-spacing: 0;
	text-transform: none;
	color: var(--light);
}

.related-posts .el-item,
.inedice__wrapper,
.search-blog {
	padding: 20px;
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	border: var(--border);
}

.post-content h2,
.post-content h3 {
	padding-top: 30px;
	padding-bottom: 5px;	
}

.post-content p {
	padding-top: 10px;
}

.post-content ul,
.post-content ol {
	padding-top: 10px;
	padding-bottom: 10px;
	margin-left: 20px;
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 0;
}

.post-content strong {
	font-weight: 800;
	color: var(--logo);
}

#post-summary li:not(:last-child) {
	padding-bottom: 5px;
}

#post-summary ol {
	margin-bottom: 0;
}

#post-summary li,
#post-summary li a {
	transition: var(--trans);
	position: relative;
}

#post-summary li:hover,
#post-summary li a:hover {
	text-decoration: none;
	color: var(--grey);
}

#post-summary li a:active {
	top: 2px;
}

.related-posts .el-item {
	background-color: #fff;
}

.related-posts .el-item .el-link {
	width: 100%;
}

.related-posts .el-title {
	padding-bottom: 0;
}

.related-posts .el-content,
.related-posts .el-meta {
	margin-top: 10px !important;
}

/********************
MOBILE
********************/
@media only screen and (max-width: 960px) {
	#filters .location-input input::placeholder {
		font-size: 10px;
	}
	.articles__wrapper .el-item {
		flex-direction: column;
	}
	.post__wrapper h1 {
		font-size: 24px;
	}
	.articles__wrapper .blog-teaser .el-title {
		padding-top: 20px;
	}
	.articles__wrapper .el-item img,
	.articles__wrapper .blog-teaser,
	.advantages {
		width: 100%;
	}
	.uk-grid .advantages:last-child {
		margin-left: 0;
	}
	.regions__wrapper .uk-container > div:last-child > div {
		columns: 2;
	}
	.footer__wrapper .uk-container {
		margin-left: 10px;
		margin-right: 10px;
	}
	.ups__wrapper,
	.catergoria__wrapper {
		flex-wrap: wrap;
		column-gap: 10px;
		row-gap: 10px;
	}
	.ups__wrapper .el-item,
	.catergoria__wrapper .el-item {
		flex: 1 0 40% !important;
	}
	.card__wrapper .label-term p,
	.card__wrapper .label-ambiente p {
		font-size: 11px;
	}
	h1,
	.h1
	.h1 > span,
	h1 > span {
		font-size: 36px;
	}
	
	h2,
	.h2 {
		font-size: 24px;
	}
	
	.ups__wrapper .el-content {
		font-size: 15px;
		line-height: 18px;
	}
	.usp__wrapper .el-image {
		flex-shrink: 0;
	}
}