/* =====================================================================
   Pagine: Contatti, Chi siamo, I nostri servizi
   ===================================================================== */
body.nc-page { --a: #a67c2e; --ad: #876322; --ink: #2b2f3a; --mut: #5b6270; }

/* ---------- Banner con il titolo ---------- */
body.nc-page .elementor-element-8aad08c,
body.nc-page .elementor-element-746ee65 { min-height: 300px; }
body.nc-page .elementor-element-59b7d81 .elementor-heading-title,
body.nc-page .elementor-element-5bd5daf .elementor-heading-title {
	font-size: 46px; font-weight: 700; letter-spacing: .02em; color: #fff;
	text-shadow: 0 2px 16px rgba(0, 0, 0, .5);
}
body.nc-page .elementor-element-59b7d81 .elementor-heading-title::after,
body.nc-page .elementor-element-5bd5daf .elementor-heading-title::after {
	content: ""; display: block; width: 64px; height: 4px; border-radius: 4px; background: var(--a); margin: 14px auto 0;
}

/* ---------- Titoli con barra: oro invece di azzurro ---------- */
body.nc-page .elementor-element-18a44c0, body.nc-page .elementor-element-e2ffd7a,
body.nc-page .elementor-element-c3c1609, body.nc-page .elementor-element-4c7b486,
body.nc-page .elementor-element-a7fe9eb, body.nc-page .elementor-element-6ed9d33 { border-left-color: var(--a) !important; border-left-width: 5px !important; }
body.nc-page .elementor-heading-title { color: var(--ink); }
body.nc-page .elementor-element-59b7d81 .elementor-heading-title,
body.nc-page .elementor-element-5bd5daf .elementor-heading-title { color: #fff; }

/* ---------- Modulo di contatto (come nella home) ---------- */
body.nc-page .houzez-ele-form-js .elementor-field-textual,
body.nc-page .houzez-ele-form-js .form-control {
	background-color: #f5f6f8 !important; border: 1px solid #cfd3da !important; border-radius: 12px !important;
	height: 50px; color: var(--ink) !important; font-size: 15px; padding: 0 16px; box-shadow: none;
}
body.nc-page .houzez-ele-form-js textarea.form-control { height: auto; min-height: 120px; padding: 12px 16px; }
body.nc-page .houzez-ele-form-js .form-control::placeholder { color: #7a818e; opacity: 1; }
body.nc-page .houzez-ele-form-js .form-control:focus { background-color: #fff !important; border-color: var(--a) !important; box-shadow: 0 0 0 3px rgba(166, 124, 46, .18); outline: 0; }
body.nc-page .houzez-ele-form-js .elementor-field-group { margin-bottom: 12px; }
body.nc-page .houzez-ele-form-js a { color: var(--ad); }
body.nc-page .houzez-ele-form-js .elementor-button,
body.nc-page .houzez-ele-form-js .houzez-submit-button {
	width: 100%; height: 52px; border-radius: 12px !important; background-color: var(--a) !important; color: #fff !important;
	font-size: 15px; font-weight: 700; letter-spacing: .06em; border: 0;
}
body.nc-page .houzez-ele-form-js .elementor-button:hover { background-color: var(--ad) !important; }

/* ---------- CONTATTI: due schede (una per agenzia) ---------- */
body.page-id-19688 .elementor-element-4668ce3 { padding: 56px 0 80px; }
body.page-id-19688 .elementor-element-4668ce3 > .elementor-container { max-width: 1160px; align-items: stretch; }
body.page-id-19688 .elementor-element-898f72d > .elementor-widget-wrap,
body.page-id-19688 .elementor-element-69affc7 > .elementor-widget-wrap {
	background: #fff; border-radius: 24px; box-shadow: 0 8px 34px rgba(20, 22, 28, .09);
	padding: 34px 32px !important; margin: 0 14px; height: calc(100% - 0px);
}
body.page-id-19688 .elementor-element-18a44c0 .elementor-heading-title,
body.page-id-19688 .elementor-element-e2ffd7a .elementor-heading-title { font-size: 30px; line-height: 1.2; }
body.page-id-19688 .elementor-element-b9e50ba p, body.page-id-19688 .elementor-element-16f0e2e p { font-size: 16px; line-height: 2; color: var(--mut); margin: 0; }
body.page-id-19688 .elementor-element-b9e50ba p:empty, body.page-id-19688 .elementor-element-16f0e2e p:empty { display: none; }
body.page-id-19688 .elementor-element-b9e50ba strong, body.page-id-19688 .elementor-element-16f0e2e strong { color: var(--ink); }
body.page-id-19688 .elementor-element-b9e50ba a, body.page-id-19688 .elementor-element-16f0e2e a { color: var(--ad); text-decoration: none; }
body.page-id-19688 .elementor-element-b9e50ba a:hover, body.page-id-19688 .elementor-element-16f0e2e a:hover { text-decoration: underline; }
body.page-id-19688 .elementor-element-4668ce3 img.emoji { height: 1.1em; width: 1.1em; margin: 0 6px 0 0; vertical-align: -3px; }
body.page-id-19688 .elementor-element-a929676 iframe, body.page-id-19688 .elementor-element-00ac5c5 iframe { width: 100% !important; height: 240px; border: 0; border-radius: 16px; display: block; margin: 12px 0 4px; }
body.page-id-19688 .elementor-element-4f8b2fa .elementor-spacer-inner, body.page-id-19688 .elementor-element-1c122c0 .elementor-spacer-inner { height: 14px !important; }
body.page-id-19688 .elementor-element-9505a70 p { font-size: 16px; line-height: 1.75; color: var(--mut); margin: 0 0 12px; }
body.page-id-19688 .elementor-element-59766ce { margin-top: 6px; }

/* ---------- CHI SIAMO ---------- */
body.page-id-19686 .elementor-element-ca6587a, body.page-id-19686 .elementor-element-215e869 { padding: 64px 0; }
body.page-id-19686 .elementor-widget-image img { border-radius: 24px; box-shadow: 0 12px 38px rgba(20, 22, 28, .18); }
body.page-id-19686 .elementor-element-969f42f, body.page-id-19686 .elementor-element-969f42f p,
body.page-id-19686 .elementor-element-aa2b3a9, body.page-id-19686 .elementor-element-aa2b3a9 p,
body.page-id-19686 .elementor-element-0ea59b5, body.page-id-19686 .elementor-element-0ea59b5 p { font-size: 16.5px; line-height: 1.8; color: var(--mut); }
body.page-id-19686 .elementor-element-c3c1609 .elementor-heading-title,
body.page-id-19686 .elementor-element-a7fe9eb .elementor-heading-title { font-size: 32px; line-height: 1.2; }
/* scheda con il modulo di valutazione */
body.page-id-19686 .elementor-element-854c22f {
	background: #fff !important; border-radius: 24px; box-shadow: 0 8px 36px rgba(20, 22, 28, .1);
	max-width: 1100px; margin: 0 auto; overflow: hidden;
}
body.page-id-19686 .elementor-element-854c22f > .elementor-background-overlay { display: none; }
body.page-id-19686 .elementor-element-854c22f > .elementor-container { padding: 36px 24px; align-items: center; }
body.page-id-19686 .elementor-element-4037127 { padding-bottom: 70px; }

/* ---------- I NOSTRI SERVIZI: schede ---------- */
body.page-id-20125 { background: #f6f7f9; }
body.nc-page .nc-svc-grid {
	display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 1100px; margin: 50px auto 30px; padding: 0 20px;
}
body.nc-page .nc-svc {
	background: #fff; border-radius: 22px; box-shadow: 0 6px 28px rgba(20, 22, 28, .08); padding: 30px 32px 26px;
}
body.nc-page .nc-svc-3, body.nc-page .nc-svc-4 { grid-column: 1 / -1; }
body.nc-page .nc-svc-3 { background: #fbf6ea; border-left: 6px solid var(--a); }
body.nc-page .nc-svc h3 { display: flex; align-items: center; gap: 14px; margin: 0 0 12px; font-size: 22px; font-weight: 700; line-height: 1.25; color: var(--ink); }
body.nc-page .nc-svc-ico { flex: none; width: 54px; height: 54px; border-radius: 50%; background: #f6efe0; display: inline-flex; align-items: center; justify-content: center; }
body.nc-page .nc-svc-ico img.emoji { width: 28px !important; height: 28px !important; margin: 0 !important; }
body.nc-page .nc-svc p { font-size: 15.5px; line-height: 1.7; color: var(--mut); margin: 0 0 10px; }
body.nc-page .nc-svc ul, body.nc-page .nc-svc ol { list-style: none; margin: 14px 0 0; padding: 0; counter-reset: nc; }
body.nc-page .nc-svc li {
	position: relative; padding: 10px 0 10px 34px; font-size: 15px; line-height: 1.6; color: var(--mut);
	border-bottom: 1px solid #f0f1f3; counter-increment: nc;
}
body.nc-page .nc-svc-3 li { border-bottom-color: #efe5cc; }
body.nc-page .nc-svc li:last-child { border-bottom: 0; }
body.nc-page .nc-svc li strong { color: var(--ink); }
body.nc-page .nc-svc ul li::before {
	content: ""; position: absolute; left: 0; top: 13px; width: 20px; height: 20px; border-radius: 50%;
	background: var(--a) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 12px no-repeat;
}
body.nc-page .nc-svc ol li::before {
	content: counter(nc); position: absolute; left: 0; top: 11px; width: 22px; height: 22px; border-radius: 50%;
	background: var(--a); color: #fff; font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center;
}
body.nc-page .nc-svc blockquote { margin: 16px 0 0; padding: 14px 18px; background: #fff; border-left: 4px solid var(--a); border-radius: 10px; font-size: 15px; line-height: 1.6; color: var(--ink); }
body.nc-page .nc-svc blockquote p { margin: 0; color: var(--ink); }
body.nc-page .nc-svc-4 h3 { font-size: 24px; }

/* modulo "Contatta le nostre Agenzie" */
body.page-id-20125 .elementor-element-719e75f { max-width: 760px; margin: 30px auto 0; padding: 0 20px; }
body.page-id-20125 .elementor-element-6ed9d33 .elementor-heading-title { font-size: 30px; }
body.page-id-20125 .elementor-element-87f8392 { max-width: 760px; margin: 14px auto 70px; padding: 30px 30px 14px; background: #fff; border-radius: 24px; box-shadow: 0 8px 34px rgba(20, 22, 28, .09); }

@media (max-width: 900px) {
	body.nc-page .nc-svc-grid { grid-template-columns: 1fr; margin-top: 30px; }
	body.nc-page .nc-svc { padding: 24px 20px; }
	body.nc-page .nc-svc h3 { font-size: 19px; }
	body.nc-page .elementor-element-59b7d81 .elementor-heading-title,
	body.nc-page .elementor-element-5bd5daf .elementor-heading-title { font-size: 34px; }
	body.page-id-19688 .elementor-element-898f72d > .elementor-widget-wrap,
	body.page-id-19688 .elementor-element-69affc7 > .elementor-widget-wrap { margin: 0 0 20px; padding: 26px 20px !important; }
	body.page-id-19688 .elementor-element-4668ce3 { padding: 30px 14px 50px; }
	body.page-id-19686 .elementor-element-ca6587a, body.page-id-19686 .elementor-element-215e869 { padding: 36px 0; }
	body.page-id-20125 .elementor-element-87f8392 { margin: 14px 14px 50px; padding: 22px 18px 8px; }
}

body.nc-page .nc-svc-ico { font-size: 26px; line-height: 1; }

@media (max-width: 900px) {
	body.page-id-19688 .elementor-element-4668ce3 > .elementor-container { padding: 0 14px; }
}

/* ---------- CONTATTI: nuova disposizione (2 schede + scheda larga) ---------- */
body.page-id-19688 .nc-ct { width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 28px; max-width: 1160px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
body.page-id-19688 .nc-ct-card {
	background: #fff; border-radius: 24px; box-shadow: 0 8px 34px rgba(20, 22, 28, .09); padding: 34px 32px 30px; min-width: 0;
}
/* schede delle agenzie: contenuto centrato */
body.page-id-19688 .nc-ct-agency { text-align: center; }
body.page-id-19688 .nc-ct-agency .elementor-element-18a44c0,
body.page-id-19688 .nc-ct-agency .elementor-element-e2ffd7a { border-left: 0 !important; padding-left: 0 !important; margin-bottom: 18px; }
body.page-id-19688 .nc-ct-agency .elementor-heading-title { text-align: center; font-size: 30px; line-height: 1.2; }
body.page-id-19688 .nc-ct-agency .elementor-heading-title::after { content: ""; display: block; width: 56px; height: 4px; border-radius: 4px; background: var(--a); margin: 12px auto 0; }
body.page-id-19688 .nc-ct-agency .elementor-widget-text-editor p { text-align: center; margin: 0; }
body.page-id-19688 .nc-ct-agency .elementor-widget-html { margin-top: 20px; }
body.page-id-19688 .nc-ct-agency iframe { width: 100% !important; height: 250px; border: 0; border-radius: 16px; display: block; margin: 0 auto; }
/* scheda larga: testo a sinistra, modulo a destra */
body.page-id-19688 .nc-ct-wide { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1.25fr; gap: 40px; align-items: center; padding: 38px 36px; }
body.page-id-19688 .nc-ct-left p { font-size: 17px; line-height: 1.8; color: var(--mut); margin: 0 0 14px; }
body.page-id-19688 .nc-ct-left p:first-child { font-size: 20px; line-height: 1.6; color: var(--ink); }
body.page-id-19688 .nc-ct-left strong { color: var(--ink); }
body.page-id-19688 .nc-ct-right { min-width: 0; }

@media (max-width: 900px) {
	body.page-id-19688 .nc-ct { grid-template-columns: 1fr; gap: 20px; padding: 0 14px; }
	body.page-id-19688 .nc-ct-card { padding: 26px 20px; }
	body.page-id-19688 .nc-ct-wide { grid-template-columns: 1fr; gap: 22px; padding: 26px 20px; }
}

/* I widget spostati nelle schede occupano tutta la larghezza */
body.page-id-19688 .nc-ct .elementor-element { width: 100% !important; max-width: 100% !important; margin-left: 0; margin-right: 0; }
body.page-id-19688 .nc-ct-agency .elementor-widget-html { margin-top: 20px; }

/* Mappe sempre alla stessa altezza nelle due schede (anche se un indirizzo va a capo) */
body.page-id-19688 .nc-ct-agency { display: flex; flex-direction: column; }
body.page-id-19688 .nc-ct-agency .elementor-widget-html { margin-top: auto; padding-top: 20px; }


/* ---------- Modulo "Valutazione gratuita" dentro la scheda ---------- */
body.nc-page .nc-val { margin: 26px 0 4px; padding: 26px 24px 22px; background: #fff; border-radius: 16px; box-shadow: 0 4px 20px rgba(20, 22, 28, .07); }
body.nc-page .nc-val h4 { margin: 0 0 16px; font-size: 20px; font-weight: 700; color: var(--ink); }
body.nc-page .nc-val label { display: block; margin: 0 0 14px; font-size: 14px; font-weight: 600; color: var(--ink); }
body.nc-page .nc-val-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
body.nc-page .nc-val input[type=text], body.nc-page .nc-val input[type=email], body.nc-page .nc-val select, body.nc-page .nc-val textarea {
	display: block; width: 100%; margin-top: 6px; padding: 12px 14px; border: 1px solid #dfe2e7; border-radius: 12px; background: #f6f7f9;
	font: inherit; font-size: 15px; font-weight: 400; color: var(--ink); box-sizing: border-box;
}
body.nc-page .nc-val select { height: 48px; padding-top: 0; padding-bottom: 0; }
body.nc-page .nc-val textarea { resize: vertical; min-height: 110px; }
body.nc-page .nc-val input:focus, body.nc-page .nc-val select:focus, body.nc-page .nc-val textarea:focus { outline: 0; border-color: var(--a); background: #fff; box-shadow: 0 0 0 3px rgba(168, 125, 46, .18); }
body.nc-page .nc-val .nc-val-priv { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; font-size: 13.5px; color: var(--mut); }
body.nc-page .nc-val .nc-val-priv input { margin-top: 3px; flex: none; width: 18px; height: 18px; }
body.nc-page .nc-val .nc-val-priv a { color: var(--ad); }
body.nc-page .nc-val button[type=submit] { width: 100%; height: 50px; border: 0; border-radius: 12px; background: var(--a); color: #fff; font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; }
body.nc-page .nc-val button[type=submit]:hover { background: var(--ad); }
body.nc-page .nc-val-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
body.nc-page .nc-val-msg { margin: 0 0 16px; padding: 12px 16px; border-radius: 10px; font-size: 15px; }
body.nc-page .nc-val-msg.is-ok { background: #e8f6ec; color: #17612f; }
body.nc-page .nc-val-msg.is-err { background: #fdeceb; color: #9a2a22; }
@media (max-width: 700px) { body.nc-page .nc-val-row { grid-template-columns: 1fr; } body.nc-page .nc-val { padding: 20px 16px 16px; } }
/* titolo e vecchio modulo "Contatta le nostre Agenzie": rimossi */
body.page-id-20125 .elementor-element-719e75f, body.page-id-20125 .elementor-element-87f8392 { display: none !important; }