.elementor-kit-7{--e-global-color-primary:#1A1C1E;--e-global-color-secondary:#1A1C1E;--e-global-color-text:#414848;--e-global-color-accent:#053333;--e-global-color-f48590a:#053333;--e-global-color-c89cd91:#89F793;--e-global-color-563bc9d:#F3F3F6;--e-global-color-00712f0:#EEEEF0;--e-global-color-f5a11e0:#FFFFFF;--e-global-color-52fb6c8:#021E1D;--e-global-color-3793e79:#006E26;--e-global-color-8919cec:#FFFFFF0D;--e-global-color-44df972:#FFFFFFD1;--e-global-color-4a9cad7:#FFFFFF66;--e-global-color-42cb4c0:#1B4831;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-family:"Inter";--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-a0d66e7-font-family:"Inter";--e-global-typography-a0d66e7-font-size:12px;--e-global-typography-a0d66e7-font-weight:600;--e-global-typography-a0d66e7-text-transform:uppercase;--e-global-typography-a0d66e7-letter-spacing:2.4px;color:var( --e-global-color-text );font-family:"Inter", Sans-serif;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-f48590a );font-family:"Inter", Sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;color:var( --e-global-color-f5a11e0 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-f48590a );border-radius:3px 3px 3px 3px;padding:16px 32px 16px 32px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:var( --e-global-color-52fb6c8 );color:var( --e-global-color-f5a11e0 );}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 h1{font-family:"Plus Jakarta Sans", Sans-serif;font-size:72px;font-weight:800;line-height:1em;letter-spacing:-3.6px;}.elementor-kit-7 h2{font-size:36px;font-weight:700;line-height:1.1em;letter-spacing:-0.9px;}.elementor-kit-7 h3{font-size:28px;font-weight:700;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:85%;}.e-con{--container-max-width:85%;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}/* Start custom CSS *//* Drone Dynamics — stile per tabelle e figure nelle pagine servizio */
.elementor-widget-text-editor table{width:100%;border-collapse:separate;border-spacing:0;margin:26px 0;font-size:15px;line-height:1.55;background:#fff;border:1px solid rgba(5,51,52,.14);border-radius:12px;overflow:hidden}
.elementor-widget-text-editor table th{background:#053334;color:#fff;text-align:left;padding:12px 15px;font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.elementor-widget-text-editor table td{padding:12px 15px;border-top:1px solid rgba(5,51,52,.10);vertical-align:top}
.elementor-widget-text-editor table tr:nth-child(odd) td{background:#F4F7F6}
.elementor-widget-text-editor figure{margin:30px 0}
.elementor-widget-text-editor figure img{width:100%;height:auto;border-radius:14px;display:block}
.elementor-widget-text-editor figcaption{font-size:14px;line-height:1.5;color:rgba(26,28,30,.62);margin-top:10px}
.elementor-widget-text-editor ul,.elementor-widget-text-editor ol{padding-left:1.25em;margin:14px 0}
.elementor-widget-text-editor li{margin:7px 0}
@media (max-width:767px){.elementor-widget-text-editor table{display:block;overflow-x:auto;white-space:normal}}

/* DD single post */body.single-post .site-main{max-width:860px;margin:0 auto;padding:48px 24px 80px}body.single-post .page-header h1.entry-title{font-size:clamp(30px,3.6vw,46px);line-height:1.15;color:#053334;margin:10px 0 22px}body.single-post .page-content p,body.single-post .page-content li{font-size:17px;line-height:1.7;color:#33413f}body.single-post .page-content h2{font-size:27px;line-height:1.25;color:#053334;margin:40px 0 14px}body.single-post .page-content a{color:#0a6e63;text-decoration-color:#9dc5bf;text-underline-offset:3px}body.single-post .page-content figure{margin:30px 0}body.single-post .page-content img{border-radius:14px;max-width:100%;height:auto}body.single-post .page-content figcaption{font-size:13.5px;color:#68807d;margin-top:9px}body.single-post .page-content ul,body.single-post .page-content ol{padding-left:24px;margin:14px 0}body.single-post .page-content li{margin-bottom:9px}
/* DD footer: niente dropdown nel menu del footer */[data-elementor-type="footer"] .elementor-nav-menu .sub-menu,[data-elementor-type="footer"] .elementor-nav-menu--dropdown{display:none!important}[data-elementor-type="footer"] .elementor-nav-menu li.menu-item-has-children>a .sub-arrow,[data-elementor-type="footer"] .elementor-nav-menu .sub-arrow{display:none!important}[data-elementor-type="footer"] .elementor-nav-menu li.menu-item-has-children>a{padding-right:0!important}

/* 19/10/2026 · Titoli e margini */
/* Titolo principale: la spaziatura fissa di -3,6 px (pensata per 72 px) schiacciava le parole quando il titolo
   rimpicciolisce; in em resta proporzionata a ogni dimensione, e vale anche sulle impostazioni dei singoli widget. */
.elementor-kit-7 h1, .elementor .elementor-widget-heading h1.elementor-heading-title { letter-spacing: -0.025em !important; }
/* Margine minimo ai lati dei blocchi principali da tablet in su: sotto i 1420 px il contenuto partiva a 10 px dal bordo
   e il logo a 0. Restano i margini più grandi già impostati; il telefono non cambia. */
@media (min-width: 768px) {
  .e-con.e-parent {
    padding-left: max(var(--padding-left, 10px), clamp(16px, 3.5vw, 40px)) !important;
    padding-right: max(var(--padding-right, 10px), clamp(16px, 3.5vw, 40px)) !important;
  }
}

/* DD aspetto C 2026-10-27 · inizio */
/* Aspetto C del sito (tavole C-sito-home, C-sito-termografia, C-sito-viticoltura del 27/10/2026).
   Va in coda al CSS personalizzato del kit Elementor (post 7). Per toglierlo: cancellare tutto da questo
   commento fino a «DD aspetto C 2026-10-27 · fine».

   Perché i !important e i prefissi lunghi. Questo blocco finisce in post-7.css, che si carica PRIMA dei CSS
   delle pagine (post-126.css…) e degli stili scritti dentro i widget di testo (su termografia e viticoltura
   c'è uno stile «v5» con !important e selettori fino a 0,5,0; nella home ci sono colori in style="…").
   A parità di !important vince il selettore più specifico, quindi:
   - regole generali:      «:root body …»                (+0,1,1)
   - fasce, aperture, dd-…: «:root :is(#content, body) …» (+1,1,0: vale come un id anche dove #content manca)
   - colori dentro le fasce: la fascia dentro :where(), che non pesa, così le regole dd-… più precise vincono.
   Mai la parola s-e-l-e-c-t-o-r qui dentro: Elementor la sostituisce con la classe del kit. */
/* Versione 2 (27/10/2026, pomeriggio): le correzioni della revisione fatta sul sito vivo, segnate «v2» qui sotto.
   Velo al 58 % su termografia e viticoltura (variabile --dd-velo), bottoni della fascia finale delle News, titoli di
   archivi, ricerca, 404 e /grazie/ sul telefono e titoli degli elenchi, «Area riservata» solo nella testata, piè
   staccato 12 px anche in alto, schede e immagini di dd-viti-imgs, aria delle pagine v5 e della News, occhielli con la
   maiuscola, riga legale centrata sul telefono, banner iubenda. Poi, su richiesta di GF: voci della barra, tendina
   «Servizi» e bottone della testata a 15 px. */

/* ── 1. Carattere: Geist servito dal sito (file in /drone/wp-content/uploads/dd-fonts/) ─────────────── */
@font-face {
	font-family: 'Geist';
	src: url('/drone/wp-content/uploads/dd-fonts/geist-latin.woff2') format('woff2');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
		U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Geist';
	src: url('/drone/wp-content/uploads/dd-fonts/geist-latin-ext.woff2') format('woff2');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
		U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ── 2. Gettoni dello stile C e colori globali del kit ─────────────────────────────────────────────── */
:root {
	--dd-sans: 'Geist', 'Helvetica Neue', Arial, sans-serif;
	--dd-ink: #22211F;        /* testo e bottone principale */
	--dd-grigio: #F5F5F5;     /* fasce grigie e schede su bianco */
	--dd-grigio-piede: #F0F0F0;
	--dd-verde: #0E7A36;      /* l'unica azione colorata e i link evidenziati */
	--dd-ciano: #77EBEB;      /* solo su nero */
	--dd-barra: 80px;         /* 12 di aria + 56 di barra + 12 */
	--dd-aria: clamp(56px, 5.6vw, 80px);   /* aria sopra e sotto le sezioni (96-120 nelle pagine ritoccate, §7) */
	--dd-apertura-h: 680px;   /* altezza della foto d'apertura (home 720, telefono 600) */
	/* colori del contenuto: li cambiano le fasce nere e grigie e le aperture */
	--dd-titolo: #000000;
	--dd-testo: #22211F;
	--dd-forte: #000000;
	--dd-mut: #666666;        /* 5,7:1 su bianco */
	--dd-filo: #DDDDDD;
	--dd-scheda: #F5F5F5;
	--dd-link: #0E7A36;
}
.home { --dd-aria: clamp(72px, 8.4vw, 120px); --dd-apertura-h: 720px; }
/* le pagine ritoccate (e ogni fascia dichiarata) hanno il ritmo pieno delle tavole: 96 px, 72 sul telefono */
.elementor-568, .elementor-387, .e-con:is(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera) { --dd-aria: clamp(72px, 7.5vw, 96px); }
@media (max-width: 767px) { :root, .home { --dd-apertura-h: 600px; } }
/* I widget prendono i colori da queste variabili del kit: cambiarle porta in C anche le pagine non ritoccate
   (verde petrolio → nero caldo, grigi freddi → grigi neutri, verde scuro → verde DD). */
.elementor-kit-7 {
	--e-global-color-primary: #000000;
	--e-global-color-secondary: #22211F;
	--e-global-color-text: #22211F;
	--e-global-color-accent: #22211F;
	--e-global-color-f48590a: #22211F;
	--e-global-color-52fb6c8: #000000;
	--e-global-color-3793e79: #0E7A36;
	--e-global-color-c89cd91: #77EBEB;
	--e-global-color-563bc9d: #F5F5F5;
	--e-global-color-00712f0: #F0F0F0;
	--e-global-color-42cb4c0: #141414;
	--e-global-typography-primary-font-family: 'Geist';
	--e-global-typography-secondary-font-family: 'Geist';
	--e-global-typography-text-font-family: 'Geist';
	--e-global-typography-accent-font-family: 'Geist';
	--e-global-typography-a0d66e7-font-family: 'Geist';
	--e-global-typography-text-font-size: 16px;
	--e-global-typography-a0d66e7-font-size: 14px;
	--e-global-typography-a0d66e7-font-weight: 500;
	--e-global-typography-a0d66e7-text-transform: none;
	--e-global-typography-a0d66e7-letter-spacing: 0px;
	color: var(--dd-ink);
	background: #FFFFFF;
	font-family: var(--dd-sans);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/* un solo carattere ovunque (i widget scrivono «Plus Jakarta Sans» e «Inter» a mano nei loro CSS) */
:root body.elementor-kit-7,
:root body.elementor-kit-7 :is(h1, h2, h3, h4, h5, h6, p, a, li, dt, dd, td, th, label, span, strong, b, em, blockquote, figcaption, button, input, select, textarea, .elementor-heading-title, .elementor-button, .elementor-item, .elementor-sub-item, .elementor-widget-text-editor) {
	font-family: var(--dd-sans) !important;
}
/* v2 · il banner iubenda tiene il suo carattere: la regola qui sopra prendeva i suoi grassetti e la × (1,1,1 la batte) */
:root #iubenda-cs-banner :is(strong, b, em, span) { font-family: inherit !important; }
/* niente maiuscolo spaziato */
:root body.elementor-kit-7 :is(.elementor-button, .elementor-item, .elementor-sub-item, .elementor-heading-title, th, .elementor-post__read-more, .elementor-post__meta-data, .elementor-post-date) {
	text-transform: none !important;
}
:root body.elementor-kit-7 :is(.elementor-button, .elementor-item, .elementor-sub-item, th, .elementor-post__read-more, .elementor-post__meta-data) {
	letter-spacing: 0 !important;
}
/* niente ombre */
:root body.elementor-kit-7 .elementor :is(.e-con, .e-con-inner, .elementor-widget-container, .elementor-post, .elementor-button, img, .elementor-post__card) {
	box-shadow: none !important;
}

/* ── 3. Contenitori: contenuto largo 1180, margini 32 (16 sul telefono) ───────────────────────────── */
.elementor-kit-7 .e-con { --container-max-width: 1180px; }
@media (max-width: 1024px) { .elementor-kit-7 .e-con { --container-max-width: 100%; } }
@media (min-width: 768px) {
	:root body .elementor[data-elementor-type="wp-page"] > .e-con.e-parent {
		padding-left: clamp(24px, 3vw, 32px) !important;
		padding-right: clamp(24px, 3vw, 32px) !important;
	}
}
@media (max-width: 767px) {
	:root body .elementor[data-elementor-type="wp-page"] > .e-con.e-parent {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

/* ── 4. Titoli e testo (scala Skydio: pagina 72-96, sezione 48-56, scheda 20-22) ──────────────────── */
:root body .elementor :is(h1, h2, h3, h4).elementor-heading-title,
:root body .elementor .elementor-widget-text-editor :is(h2, h3, h4) {
	font-weight: 500 !important;
	letter-spacing: -0.02em !important;
}
:root body .elementor h1.elementor-heading-title {
	font-size: clamp(40px, 5.6vw, 72px) !important;
	line-height: 1.0 !important;
	letter-spacing: -0.028em !important;
}
:root body.home .elementor h1.elementor-heading-title { font-size: clamp(44px, 6.7vw, 96px) !important; letter-spacing: -0.021em !important; }
@media (max-width: 767px) { :root body:not(.home) .elementor h1.elementor-heading-title { font-size: 36px !important; line-height: 1.05 !important; } }
:root body .elementor h2.elementor-heading-title {
	font-size: clamp(32px, 3.4vw, 48px) !important;
	line-height: 1.1 !important;
}
:root body.home .elementor h2.elementor-heading-title { font-size: clamp(34px, 3.9vw, 56px) !important; }
:root body .elementor h3.elementor-heading-title { font-size: clamp(18px, 1.6vw, 22px) !important; line-height: 1.25 !important; letter-spacing: -0.01em !important; }
/* l'occhiello (span «FOTOVOLTAICO», «VITICOLTURA»): niente maiuscolo né verde, 14 px grigio */
:root body .elementor span.elementor-heading-title {
	font-size: 14px !important;
	line-height: 1.4 !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	color: var(--dd-mut) !important;
	display: inline-block; /* v2 · ::first-letter vale solo su blocchi e inline-block: su /contatti/ restava «drone dynamics» */
}
:root body .elementor span.elementor-heading-title::first-letter { text-transform: uppercase; } /* alcuni sono scritti in minuscolo */
/* v2 · l'occhiello di Contatti è il nome dell'azienda scritto «drone dynamics»: maiuscole su tutte e due le parole */
:root body .elementor-469 .elementor-element-0c3d8e4 span.elementor-heading-title { text-transform: capitalize !important; } /* !important: batte «niente maiuscolo spaziato» del §2 */
:root body .elementor .elementor-widget-text-editor { font-size: 16px; line-height: 1.6; }
:root body .elementor .elementor-widget-text-editor :is(strong, b) { font-weight: 500; }
:root body .elementor .elementor-widget-text-editor h3 { font-size: 20px; line-height: 1.3; }
/* link nel testo: verdi, senza sottolineatura (sottolineati al passaggio) */
:root body .elementor .elementor-widget-text-editor a:not(.elementor-button) { color: var(--dd-link); font-weight: 500; text-decoration: none; }
:root body .elementor .elementor-widget-text-editor a:not(.elementor-button):hover { text-decoration: underline; text-underline-offset: 3px; }

/* ── 5. Bottoni: raggio 4, alti 40 (48 sul telefono), 14 px, nero caldo pieno ─────────────────────── */
:root body .elementor .elementor-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 18px !important;
	border-radius: 4px !important;
	border: 1px solid var(--dd-ink) !important;
	background-color: var(--dd-ink) !important;
	color: #FFFFFF !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	font-weight: 500 !important;
	transition: background-color .15s, border-color .15s, color .15s;
}
:root body .elementor .elementor-button:hover,
:root body .elementor .elementor-button:focus-visible { background-color: #000000 !important; border-color: #000000 !important; }
:root body .elementor .elementor-button .elementor-button-text { color: inherit !important; }
@media (max-width: 767px) { :root body .elementor .elementor-button { min-height: 48px; font-size: 16px !important; } }
/* l'unica azione verde della pagina: classe «dd-azione» sul widget bottone (Avanzate › Classi CSS) */
:root :is(#content, body) .elementor .dd-azione .elementor-button { background-color: var(--dd-verde) !important; border-color: var(--dd-verde) !important; color: #FFFFFF !important; min-height: 44px; padding: 0 20px !important; font-size: 15px !important; }
:root :is(#content, body) .elementor .dd-azione .elementor-button:hover { background-color: #0A5E2A !important; border-color: #0A5E2A !important; }

/* ── 6. Testata: barra galleggiante traslucida col blur ────────────────────────────────────────────── */
/* Il contenitore della testata (modello 175) è «sticky» di Elementor: lo teniamo sempre fisso, staccato 12 px
   dai bordi, e nascondiamo il segnaposto che Elementor gli mette sotto. La prima sezione della pagina scorre
   sotto la barra: le aperture con foto la usano, le altre hanno 80 px in più in alto (§7). */
:root body .elementor-location-header .elementor-sticky__spacer { display: none !important; }
:root body .elementor-location-header > .e-con.e-parent {
	position: fixed !important;
	top: 12px !important;
	left: 12px !important;
	right: 12px !important;
	width: auto !important;
	/* v2 · centrata come la barra dell'app (GF, 27/10): larga quanto la colonna da 1180 più i 16 px di imbottitura,
	   così il logo sta in colonna coi titoli e il bottone finisce dove finisce il testo. Sotto i 1236 px resta a 12 px dai bordi. */
	max-width: 1212px !important;
	margin: 0 auto !important;
	z-index: 999;
	min-height: 56px;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 16px !important;
	--padding-right: 16px !important;
	padding: 0 16px !important;
	border-radius: 8px !important;
	background: rgba(245, 245, 245, 0.86) !important;
	-webkit-backdrop-filter: blur(16px) !important;
	backdrop-filter: blur(16px) !important;
	box-shadow: none !important;
}
:root body.admin-bar .elementor-location-header > .e-con.e-parent { top: 44px !important; }
@media (max-width: 782px) { :root body.admin-bar .elementor-location-header > .e-con.e-parent { top: 58px !important; } }
:root body .elementor-location-header > .e-con.e-parent > .e-con-inner {
	max-width: none !important;
	min-height: 56px;
	--justify-content: flex-start !important;
	justify-content: flex-start !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 32px !important;
	padding: 0 !important;
}
:root body .elementor-location-header .elementor-widget-image { flex: none !important; margin: 0 !important; }
:root body .elementor-location-header .elementor-widget-image img { display: block; height: 24px !important; width: auto !important; max-width: none !important; }
:root body .elementor-location-header .elementor-widget-nav-menu {
	flex: 1 1 auto !important;
	min-width: 0;
	margin: 0 !important;
	--e-nav-menu-horizontal-menu-item-margin: 12px !important;
}
:root body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu { justify-content: flex-start !important; width: 100%; }
:root body .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:first-child { margin-inline-start: 0 !important; }
:root body .elementor-location-header .elementor-nav-menu--main .elementor-item {
	font-size: 15px !important; /* v2 · 15 px su richiesta di GF (27/10): a 14, come la tavola, sembrava piccola */
	line-height: 20px !important;
	font-weight: 400 !important;
	color: var(--dd-ink) !important;
	fill: var(--dd-ink) !important;
	padding: 8px 0 !important;
}
:root body .elementor-location-header .elementor-nav-menu--main .elementor-item:hover { color: #000000 !important; }
:root body .elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #000000 !important; font-weight: 500 !important; }
:root body .elementor-location-header .elementor-nav-menu--main .elementor-item::before,
:root body .elementor-location-header .elementor-nav-menu--main .elementor-item::after { display: none !important; }
:root body .elementor-location-header .elementor-nav-menu .sub-arrow { padding: 0 0 0 4px !important; }
:root body .elementor-location-header .elementor-nav-menu .sub-arrow svg { width: 8px; height: 8px; fill: currentColor; }
/* tendina di «Servizi» */
:root body .elementor-location-header .elementor-nav-menu--main .sub-menu {
	background: #F5F5F5 !important;
	border-radius: 8px !important;
	padding: 8px !important;
	margin-top: 10px !important;
	border: 0 !important;
	box-shadow: none !important;
	min-width: 260px !important;
}
:root body .elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item {
	background: transparent !important;
	color: var(--dd-ink) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	padding: 10px 12px !important;
	border-radius: 4px !important;
	border: 0 !important;
}
:root body .elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover { background: #E8E8E8 !important; color: #000000 !important; }
/* voce di menu «Area riservata» (classe di menu «dd-area-riservata»): a destra, prima del bottone */
:root body .elementor-location-header .elementor-nav-menu--main li.dd-area-riservata { margin-inline-start: auto !important; }
/* bottone della testata */
:root body .elementor-location-header .elementor-widget-button { flex: none !important; margin: 0 !important; }
:root body .elementor-location-header .elementor-button { min-height: 36px !important; padding: 0 14px !important; font-size: 15px !important; }
/* tablet e telefono (Elementor mette l'hamburger sotto i 1025 px) */
:root body .elementor-location-header .elementor-menu-toggle {
	width: 44px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 4px !important;
	background: transparent !important;
	color: var(--dd-ink) !important;
	--nav-menu-icon-size: 22px !important;
}
:root body .elementor-location-header .elementor-menu-toggle svg { fill: var(--dd-ink) !important; width: 22px; height: 22px; }
:root body .elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
	position: absolute;
	left: 0 !important;
	right: 0 !important;
	width: auto !important;
	top: 100% !important;
	margin-top: 8px !important;
	background: #F5F5F5 !important; /* pieno: dentro la barra il blur non si somma e la foto trasparirebbe */
	border-radius: 8px !important;
	padding: 8px !important;
	box-shadow: none !important;
	max-height: calc(100vh - 100px);
	overflow-y: auto;
}
:root body .elementor-location-header .elementor-nav-menu--dropdown a {
	background: transparent !important;
	color: var(--dd-ink) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	justify-content: flex-start !important;
	text-align: left !important;
	min-height: 44px;
	padding: 12px 12px !important;
	border-radius: 4px !important;
}
:root body .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active { font-weight: 500 !important; color: #000000 !important; }
:root body .elementor-location-header .elementor-nav-menu--dropdown li:not(:last-child) { border-bottom: 1px solid #E2E2E2 !important; }
:root body .elementor-location-header .elementor-nav-menu--dropdown .sub-menu { background: transparent !important; padding-left: 12px !important; border: 0 !important; }
:root body .elementor-location-header .elementor-nav-menu--dropdown .sub-menu a { font-size: 15px !important; color: #3D3C39 !important; }
@media (max-width: 1024px) {
	:root body .elementor-location-header > .e-con.e-parent { --padding-left: 12px !important; --padding-right: 6px !important; padding: 0 6px 0 12px !important; }
	:root body .elementor-location-header > .e-con.e-parent > .e-con-inner { gap: 4px !important; }
	:root body .elementor-location-header .elementor-widget-nav-menu { order: 3; flex: none !important; position: static !important; }
	:root body .elementor-location-header .elementor-widget-button { order: 2; margin-left: auto !important; }
}
@media (max-width: 767px) {
	/* sul telefono la tavola tiene il bottone nella barra: lo rimostriamo (in Elementor è «nascosto su mobile») */
	:root body .elementor-location-header .elementor-widget-button.elementor-hidden-mobile { display: block !important; }
	:root body .elementor-location-header .elementor-button { min-height: 44px !important; font-size: 15px !important; }
	:root body .elementor-location-header .elementor-widget-image img { height: 22px !important; }
}

/* ── 7. Sezioni ────────────────────────────────────────────────────────────────────────────────────── */
/* ritmo: 96-120 px sopra e sotto (72 sul telefono); la prima sezione ha in più lo spazio della barra */
:root body .elementor[data-elementor-type="wp-page"] > .e-con.e-parent {
	padding-top: var(--dd-aria) !important;
	padding-bottom: var(--dd-aria) !important;
	min-height: 0 !important;
}
:root body .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
	padding-top: calc(var(--dd-barra) + var(--dd-aria) * 0.75) !important;
}
:root body:not(.elementor-page) #content.site-main { padding-top: calc(var(--dd-barra) + 40px) !important; }
/* le sezioni «a scheda bianca su binario» (stile v5 scritto dentro alcune pagine servizio): via bordo, ombra e
   raggio 20. Il fondo bianco della scheda resta bianco sul bianco della pagina: la scheda sparisce, resta la
   sezione. Sulle pagine senza v5 queste proprietà valgono già così e non cambia nulla. */
:root body .elementor[data-elementor-type="wp-page"] > .e-con.e-parent > .e-con-inner {
	border: 0 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
}
/* v2 · sulle pagine v5 (servizi 567, LiDAR 584, antincendio 570, edifici 767, aria 632, certificazioni 630, PA 649,
   News 692) la scheda invisibile ha già la sua imbottitura (clamp 24-40): la sezione mette solo il resto del ritmo,
   così fra due sezioni restano 2 × --dd-aria e non 240 px. Sulle sezioni grigie la scheda bianca resta incorniciata.
   Le sezioni con una classe di fascia o d'apertura (P2) hanno la scheda azzerata dal §7: lì non si sottrae niente. */
:root body:is(.page-id-567, .page-id-584, .page-id-570, .page-id-767, .page-id-632, .page-id-630, .page-id-649, .page-id-692) .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:not(:first-child):not(:last-child):not(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura) {
	padding-top: max(16px, calc(var(--dd-aria) - clamp(24px, 3vw, 40px))) !important;
	padding-bottom: max(16px, calc(var(--dd-aria) - clamp(24px, 3vw, 40px))) !important;
}
/* v2 · titoli di archivi, ricerca, 404 e pagine fatte col tema (come /grazie/, non Elementor): a 72 px «Tecnologie»
   usciva dallo schermo. Non .single: il titolo degli articoli sta nella stessa classe e resta a 30 px. */
@media (max-width: 767px) {
	:root body:is(.archive, .search, .error404, .blog, .page:not(.elementor-page)) .page-header h1.entry-title { font-size: 36px !important; line-height: 1.1 !important; letter-spacing: -0.02em !important; overflow-wrap: anywhere; }
	:root body:is(.archive, .search, .blog) .page-content .entry-title { font-size: 22px !important; line-height: 1.25 !important; }
}
/* v2 · negli elenchi di archivi e ricerca i titoli degli articoli: nero caldo a 500 invece del magenta del tema */
:root body:is(.archive, .search, .blog) .page-content .entry-title :is(a, a:visited) { color: var(--dd-ink) !important; font-weight: 500 !important; text-decoration: none; }
:root body:is(.archive, .search, .blog) .page-content .entry-title a:hover { color: #000000 !important; text-decoration: underline; text-underline-offset: 3px; }
/* Fasce a tutta larghezza: classi da mettere sui contenitori principali (Avanzate › Classi CSS) */
:root :is(#content, body) .elementor .e-con.dd-fascia { background: #FFFFFF !important; --dd-scheda: #F5F5F5; }
:root :is(#content, body) .elementor .e-con.dd-fascia-grigia { background: var(--dd-grigio) !important; --dd-scheda: #FFFFFF; }
:root :is(#content, body) .elementor .e-con.dd-fascia-nera {
	background: #000000 !important;
	--dd-titolo: #FFFFFF; --dd-testo: #B3B3B3; --dd-forte: #FFFFFF; --dd-mut: #B3B3B3; --dd-filo: #333333; --dd-scheda: #141414; --dd-link: #FFFFFF;
}
:root :is(#content, body) .elementor :is(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera) > .e-con-inner {
	background: transparent !important;
	padding: 0 !important;
}

/* ── 8. Apertura con foto: classe «dd-apertura» sul primo contenitore, foto come suo sfondo ─────────── */
:root :is(#content, body) .elementor .e-con.e-parent.dd-apertura {
	position: relative;
	min-height: var(--dd-apertura-h) !important;
	padding-top: calc(var(--dd-barra) + 56px) !important;
	padding-bottom: 72px !important;
	background-color: #000000 !important;
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	--flex-direction: column !important;
	--justify-content: flex-end !important;
	--align-items: flex-start !important;
	justify-content: flex-end !important;
	--dd-titolo: #FFFFFF; --dd-testo: #FFFFFF; --dd-forte: #FFFFFF; --dd-mut: rgba(255, 255, 255, 0.85); --dd-link: #FFFFFF;
}
:root :is(#content, body).home .elementor .e-con.e-parent.dd-apertura, :root .home #content .elementor .e-con.e-parent.dd-apertura { padding-bottom: 88px !important; }
/* il velo scuro pieno sopra la foto (non un gradiente): il ::before che Elementor usa per le sovrapposizioni */
:root :is(#content, body) .elementor .e-con.e-parent.dd-apertura::before {
	content: '' !important; display: block !important; position: absolute !important; inset: 0 !important;
	background: rgba(0, 0, 0, var(--dd-velo, 0.45)) !important; background-image: none !important;
	opacity: 1 !important; mix-blend-mode: normal !important; z-index: 0 !important; border-radius: 0 !important;
}
/* v2 · velo al 58 % su termografia 568 (tanto testo sopra un riquadro termico) e viticoltura 387 (testo sopra il drone
   chiaro). È una variabile letta dal velo: vale col ponte del §11 e varrà con la classe dd-apertura (P2), e non va
   tolta col ponte. Nella versione 1 era una seconda regola sul velo, scritta prima della generale con lo stesso peso:
   perdeva. */
:root :is(#content, body) :is(.elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) { --dd-velo: 0.58; }
:root :is(#content, body) .elementor .e-con.e-parent.dd-apertura > .e-con-inner {
	position: relative; z-index: 1;
	justify-content: flex-end !important; align-items: flex-start !important; flex-direction: column !important;
	background: transparent !important; padding: 0 !important;
}
:root :is(#content, body) .elementor .dd-apertura > .e-con-inner > .e-con { width: 100% !important; max-width: 1100px !important; --width: 100% !important; }

/* ── 9. Colori del contenuto dentro fasce e aperture ──────────────────────────────────────────────────
   Valgono solo dove una fascia è dichiarata (classe dd-… o ponte del §11): le pagine non ritoccate tengono
   i colori dei loro widget, che con le variabili del §2 sono già neutri. */
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-heading-title:not(span) { color: var(--dd-titolo) !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-heading-title a { color: inherit !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor { color: var(--dd-testo) !important; }
/* i colori scritti a mano in style="…" dentro i testi (pensati per il verde petrolio) seguono la fascia */
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor [style*="color"] { color: inherit !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor :is(strong, b, h2, h3, h4, dt) { color: var(--dd-forte) !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor a:not(.elementor-button) { color: var(--dd-link) !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor a :is(strong, b) { color: inherit !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-icon-list-text { color: var(--dd-forte) !important; }
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-icon-list-icon svg { fill: var(--dd-forte) !important; }
/* i grassetti scritti a mano (font-weight:700) tornano al 500 dello stile C */
:root :is(#content, body) :where(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor [style*="font-weight"] { font-weight: 500 !important; }
/* su nero e sulle foto i link sono bianchi e sottolineati (il verde su nero non arriva a 4,5:1) */
:root :is(#content, body) :where(.dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor a:not(.elementor-button)[href] { text-decoration-color: var(--dd-link-sotto, transparent); }
:root :is(#content, body) .elementor .e-con.dd-fascia-nera, :root :is(#content, body) .elementor .e-con.e-parent.dd-apertura { --dd-link-sotto: currentColor; }
:root :is(#content, body) :where(.dd-fascia-nera, .dd-apertura, .elementor-126 > .e-con.e-parent, .elementor-568 > .e-con.e-parent, .elementor-387 > .e-con.e-parent) .elementor-widget-text-editor a:not(.elementor-button) { text-decoration-line: underline; text-underline-offset: 4px; }
/* bottoni su nero: bianchi pieni */
:root :is(#content, body) .elementor .dd-fascia-nera .elementor-button { background-color: #FFFFFF !important; border-color: #FFFFFF !important; color: #000000 !important; }
:root :is(#content, body) .elementor .dd-fascia-nera .elementor-button:hover { background-color: #E8E8E8 !important; border-color: #E8E8E8 !important; }
/* gli occhielli ripetuti sopra ogni sezione («Fotovoltaico», «Viticoltura») si tolgono nelle fasce: basta il titolo */
:root :is(#content, body) .elementor :is(.dd-fascia, .dd-fascia-grigia, .dd-fascia-nera) .elementor-widget-heading:has(span.elementor-heading-title) { display: none !important; }
/* nell'apertura: sottotitolo 24 px, testo 18 px, occhiello bianco */
:root :is(#content, body) .elementor .dd-apertura h1.elementor-heading-title { max-width: 1000px; }
:root :is(#content, body) .elementor .dd-apertura :is(h2, h3, p).elementor-heading-title { font-size: 24px !important; line-height: 1.3 !important; font-weight: 500 !important; letter-spacing: 0 !important; max-width: 860px; }
:root :is(#content, body) .elementor .dd-apertura span.elementor-heading-title { color: #FFFFFF !important; }
:root :is(#content, body) .elementor .dd-apertura .elementor-widget-text-editor { font-size: 18px !important; line-height: 1.5 !important; max-width: 760px; }
:root :is(#content, body) .elementor .dd-apertura .elementor-widget-text-editor p { margin-bottom: 12px; }
/* bottoni sulla foto: il primo bianco pieno, i successivi a contorno bianco */
:root :is(#content, body) .elementor .dd-apertura .elementor-button { background-color: #FFFFFF !important; border-color: #FFFFFF !important; color: #000000 !important; }
:root :is(#content, body) .elementor .dd-apertura .elementor-button:hover { background-color: #E8E8E8 !important; border-color: #E8E8E8 !important; }
:root :is(#content, body) .elementor .dd-apertura .elementor-widget-button ~ .elementor-widget-button .elementor-button { background-color: transparent !important; color: #FFFFFF !important; border-color: #FFFFFF !important; }
:root :is(#content, body) .elementor .dd-apertura .elementor-widget-button ~ .elementor-widget-button .elementor-button:hover { background-color: rgba(255, 255, 255, 0.12) !important; }
@media (max-width: 767px) {
	:root :is(#content, body) .elementor .e-con.e-parent.dd-apertura { padding-bottom: 48px !important; }
	:root :is(#content, body) .elementor .dd-apertura :is(h2, h3, p).elementor-heading-title { font-size: 18px !important; }
	:root :is(#content, body) .elementor .dd-apertura .elementor-widget-text-editor { font-size: 16px !important; }
	:root :is(#content, body) .elementor .dd-apertura .e-con:has(> .elementor-widget-button) { flex-direction: column !important; align-items: stretch !important; width: 100%; gap: 10px !important; }
	:root :is(#content, body) .elementor .dd-apertura :is(.elementor-widget-button, .elementor-button) { width: 100% !important; }
}

/* ── 10. Contenuti fatti a mano nei widget di testo (classi dd-… già nelle pagine) ────────────────── */
/* tabelle: righe a filetto, intestazione grigia piccola, niente fondo petrolio, zebra né maiuscolo */
:root :is(#content, body) .elementor .elementor-widget-text-editor table {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	border-top: 1px solid var(--dd-filo) !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
}
:root :is(#content, body) .elementor .elementor-widget-text-editor table th {
	background: transparent !important;
	color: var(--dd-mut) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding: 12px 16px 12px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--dd-filo) !important;
	text-align: left !important;
}
:root :is(#content, body) .elementor .elementor-widget-text-editor table td {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid var(--dd-filo) !important;
	padding: 12px 16px 12px 0 !important;
	color: var(--dd-testo);
	text-align: left !important;
}
:root :is(#content, body) .elementor .elementor-widget-text-editor table td:first-child { color: var(--dd-forte) !important; font-weight: 500; }
:root :is(#content, body) .elementor :is(.elementor-widget-text-editor figure img, .elementor-widget-image img) { border-radius: 8px !important; }
/* home · servizi: schede grigie, testo sopra e foto sotto come nella tavola */
:root :is(#content, body) .elementor .dd-home-servizi .e-grid > .e-con {
	background: var(--dd-scheda) !important;
	border: 0 !important;
	border-radius: 8px !important;
	overflow: hidden;
}
:root :is(#content, body) .elementor .dd-home-servizi .e-grid > .e-con > .e-con:has(.elementor-widget-image) { order: 2; margin-top: auto; }
:root :is(#content, body) .elementor .dd-home-servizi .e-grid > .e-con > .e-con:not(:has(.elementor-widget-image)) { --padding-top: 20px; --padding-left: 20px; --padding-right: 20px; --padding-bottom: 20px; padding: 20px 20px 20px !important; gap: 8px; }
:root :is(#content, body) .elementor .dd-home-servizi .elementor-widget-image img { height: 200px !important; border-radius: 0 !important; }
:root :is(#content, body) .elementor .dd-home-servizi h3.elementor-heading-title { font-size: 20px !important; color: #000000 !important; }
:root :is(#content, body) .elementor .dd-home-servizi .elementor-widget-text-editor { font-size: 14px !important; color: #666666 !important; }
:root :is(#content, body) .elementor .dd-home-servizi .elementor-widget-text-editor a,
:root :is(#content, body) .elementor .dd-home-servizi .elementor-widget-text-editor a * { color: var(--dd-verde) !important; font-weight: 500 !important; }
:root :is(#content, body) .elementor .dd-home-servizi .e-grid > .e-con:last-child:not(:has(.elementor-widget-image)) {
	grid-column: 1 / -1;
	background: transparent !important;
	text-align: center;
	justify-content: center;
	align-items: center;
	padding-top: 24px !important;
}
:root :is(#content, body) .elementor .dd-home-servizi .e-grid > .e-con:last-child:not(:has(.elementor-widget-image)) .elementor-widget-text-editor { font-size: 16px !important; }
/* home · qualifiche (dd-cert): colonne a filetto, niente riquadri né puntini */
:root :is(#content, body) .elementor .dd-cert { gap: 32px !important; margin-top: 40px !important; }
:root :is(#content, body) .elementor .dd-cert .g { background: transparent !important; border: 0 !important; border-top: 1px solid var(--dd-filo) !important; border-radius: 0 !important; padding: 20px 0 0 !important; }
:root :is(#content, body) .elementor .dd-cert .g h3 { font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 500 !important; color: var(--dd-mut) !important; margin-bottom: 16px !important; }
:root :is(#content, body) .elementor .dd-cert .g li { padding-left: 0 !important; font-size: 18px !important; font-weight: 500; color: var(--dd-forte) !important; margin-bottom: 16px !important; }
:root :is(#content, body) .elementor .dd-cert .g li::before { display: none !important; }
:root :is(#content, body) .elementor .dd-cert .g li span { font-size: 13px !important; font-weight: 400; color: var(--dd-mut) !important; margin-top: 4px !important; }
:root :is(#content, body) .elementor .dd-cert-note { color: var(--dd-testo) !important; font-size: 16px !important; }
/* home · committenti (dd-settori): schede con foto, raggio 8, niente bordo */
:root :is(#content, body) .elementor .dd-settori { gap: 16px !important; margin-top: 40px !important; }
:root :is(#content, body) .elementor .dd-settori .s { background: var(--dd-scheda) !important; border: 0 !important; border-radius: 8px !important; }
:root :is(#content, body) .elementor .dd-settori .s img { height: 220px !important; border-radius: 0 !important; }
:root :is(#content, body) .elementor .dd-settori .s .b { padding: 20px 20px 24px !important; }
:root :is(#content, body) .elementor .dd-settori .s h3 { font-size: 20px !important; font-weight: 500 !important; color: #000000 !important; letter-spacing: -0.01em !important; }
:root :is(#content, body) .elementor .dd-settori .s p { font-size: 14px !important; color: #666666 !important; }
:root :is(#content, body) .elementor .dd-settori .s a { color: var(--dd-verde) !important; font-weight: 500 !important; }
/* home · quattro passaggi (dd-passi): colonne a filetto */
:root :is(#content, body) .elementor .dd-passi { grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)) !important; gap: 32px 24px !important; margin-top: 40px !important; }
:root :is(#content, body) .elementor .dd-passi .p { background: transparent !important; border: 0 !important; border-top: 1px solid var(--dd-filo) !important; border-radius: 0 !important; padding: 20px 0 0 !important; }
:root :is(#content, body) .elementor .dd-passi .p b { font-size: 20px !important; font-weight: 500 !important; color: var(--dd-forte) !important; letter-spacing: -0.01em; margin-bottom: 8px !important; }
:root :is(#content, body) .elementor .dd-passi .p span { font-size: 14px !important; line-height: 1.5 !important; color: var(--dd-mut) !important; }
:root :is(#content, body) .elementor .dd-passi { margin-bottom: 48px !important; }
/* home · cosa non facciamo (dd-limiti): niente barretta a sinistra, filetto in alto */
:root :is(#content, body) .elementor .dd-limiti { gap: 32px 24px !important; margin-top: 40px !important; }
:root :is(#content, body) .elementor .dd-limiti .l { border-left: 0 !important; border-top: 1px solid var(--dd-filo) !important; padding: 16px 0 0 !important; }
:root :is(#content, body) .elementor .dd-limiti .l b { font-size: 16px !important; font-weight: 500 !important; color: var(--dd-forte) !important; }
:root :is(#content, body) .elementor .dd-limiti .l span { font-size: 14px !important; color: var(--dd-mut) !important; }
/* viticoltura · casi (dd-viti-casi), sensori (dd-viti-sens), immagini (dd-viti-imgs) */
:root :is(#content, body) .elementor .dd-viti-casi { gap: 32px 24px !important; margin-top: 32px !important; }
:root :is(#content, body) .elementor .dd-viti-casi .c { background: transparent !important; border: 0 !important; border-top: 1px solid var(--dd-filo) !important; border-radius: 0 !important; padding: 16px 0 0 !important; }
:root :is(#content, body) .elementor .dd-viti-casi .c b { font-size: 16px !important; font-weight: 500 !important; color: var(--dd-forte) !important; }
:root :is(#content, body) .elementor .dd-viti-casi .c span { font-size: 14px !important; color: var(--dd-mut) !important; }
:root :is(#content, body) .elementor .dd-viti-sens { gap: 16px !important; }
:root :is(#content, body) .elementor .dd-viti-sens .s { background: #000000 !important; border-radius: 8px !important; padding: 28px !important; }
:root :is(#content, body) .elementor .dd-viti-sens .s h3 { font-size: 24px !important; font-weight: 500 !important; letter-spacing: -0.01em !important; color: #FFFFFF !important; }
:root :is(#content, body) .elementor .dd-viti-sens .s p { font-size: 15px !important; color: #B3B3B3 !important; }
:root :is(#content, body) .elementor .dd-viti-imgs { gap: 16px !important; }
:root :is(#content, body) .elementor .dd-viti-imgs > .e-con { background: var(--dd-scheda) !important; border: 0 !important; border-radius: 8px !important; padding: 16px !important; }
/* termografia · i loghi di chi firma */
:root :is(#content, body) .elementor .dd-firma-loghi .b { background: var(--dd-scheda) !important; border: 0 !important; border-radius: 8px !important; }
:root :is(#content, body) .elementor .dd-firma-loghi .t { color: var(--dd-testo) !important; }
:root :is(#content, body) .elementor .dd-firma-loghi .t b { color: var(--dd-forte) !important; font-weight: 500 !important; }
/* elenchi con icona (widget icon-list): voci a filetto */
:root :is(#content, body) .elementor .elementor-icon-list-items .elementor-icon-list-item { padding: 12px 0 !important; border-top: 1px solid var(--dd-filo); margin: 0 !important; }
:root :is(#content, body) .elementor .elementor-icon-list-items .elementor-icon-list-item:last-child { border-bottom: 1px solid var(--dd-filo); }
:root :is(#content, body) .elementor .elementor-icon-list-text { font-size: 16px !important; font-weight: 500 !important; }
/* articoli (widget posts): foto raggio 8 e testo sotto; niente scheda, ombra né sollevamento */
:root :is(#content, body) .elementor .elementor-post { background: transparent !important; border: 0 !important; border-radius: 0 !important; transform: none !important; }
:root :is(#content, body) .elementor .elementor-post__thumbnail__link { margin-bottom: 16px !important; }
:root :is(#content, body) .elementor .elementor-post__thumbnail { border-radius: 8px !important; overflow: hidden; }
:root :is(#content, body) .elementor .elementor-post__thumbnail img { border-radius: 8px !important; }
:root :is(#content, body) .elementor .elementor-post__text { padding: 0 !important; }
:root :is(#content, body) .elementor :is(.elementor-post__title, .elementor-post__title a) { font-size: 20px !important; line-height: 1.25 !important; font-weight: 500 !important; color: var(--dd-titolo) !important; letter-spacing: -0.01em; }
:root :is(#content, body) .elementor .elementor-post__meta-data { font-size: 13px !important; color: var(--dd-mut) !important; }
:root :is(#content, body) .elementor .elementor-post__excerpt p { font-size: 14px !important; color: var(--dd-mut) !important; }
:root :is(#content, body) .elementor .elementor-post__read-more { color: var(--dd-verde) !important; font-weight: 500 !important; font-size: 14px !important; }
/* v2 · fascia finale delle News (classe dd-cta-news già nei dati: foto con velo scuro): bottoni come nelle aperture,
   il primo bianco pieno e il secondo a contorno bianco. Col nero caldo del §5 sparivano sul fondo scuro. */
:root :is(#content, body) .elementor .dd-cta-news .elementor-button { background-color: #FFFFFF !important; border-color: #FFFFFF !important; color: #000000 !important; }
:root :is(#content, body) .elementor .dd-cta-news .elementor-button:hover { background-color: #E8E8E8 !important; border-color: #E8E8E8 !important; }
:root :is(#content, body) .elementor .dd-cta-news .elementor-widget-button ~ .elementor-widget-button .elementor-button { background-color: transparent !important; color: #FFFFFF !important; }
:root :is(#content, body) .elementor .dd-cta-news .elementor-widget-button ~ .elementor-widget-button .elementor-button:hover { background-color: rgba(255, 255, 255, 0.12) !important; }

/* ── 11. Ponte per le tre pagine ritoccate (finché nei dati Elementor non ci sono le classi) ─────────
   Assegna i ruoli delle classi dd-apertura / dd-fascia… / dd-azione ai contenitori veri, per id. Quando le
   classi sono nei dati (PIANO.md), questa parte si può togliere. Gli id restano finché il contenitore non viene
   cancellato; un contenitore duplicato ne ha uno nuovo e resta bianco e neutro.
   Home 126 · Termografia FV 568 · Viticoltura 387 (la viticoltura riusa gli id della home: sempre col numero
   della pagina davanti). */
/* aperture con foto (le foto sono già nella libreria del sito) */
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) {
	position: relative;
	min-height: var(--dd-apertura-h) !important;
	padding-top: calc(var(--dd-barra) + 56px) !important;
	padding-bottom: 72px !important;
	background-color: #000000 !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
	--flex-direction: column !important;
	--justify-content: flex-end !important;
	--align-items: flex-start !important;
	justify-content: flex-end !important;
	--dd-titolo: #FFFFFF; --dd-testo: #FFFFFF; --dd-forte: #FFFFFF; --dd-mut: rgba(255, 255, 255, 0.85); --dd-link: #FFFFFF; --dd-link-sotto: currentColor;
}
:root :is(#content, body) .elementor-126 > .elementor-element-766de8e { background-image: url('/drone/wp-content/uploads/2026/07/dji-matrice-400-in-volo-scaled.jpg') !important; background-position: 50% 55% !important; padding-bottom: 88px !important; }
:root :is(#content, body) .elementor-568 > .elementor-element-2a91302 { background-image: url('/drone/wp-content/uploads/2026/07/ispezione-termografica-fotovoltaico.jpg') !important; background-position: 50% 50% !important; }
:root :is(#content, body) .elementor-387 > .elementor-element-766de8e { background-image: url('/drone/wp-content/uploads/2026/04/img_0t0.jpg') !important; background-position: 50% 40% !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e)::before {
	content: '' !important; display: block !important; position: absolute !important; inset: 0 !important;
	background: rgba(0, 0, 0, var(--dd-velo, 0.45)) !important; background-image: none !important;
	opacity: 1 !important; mix-blend-mode: normal !important; z-index: 0 !important; border-radius: 0 !important;
}
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) > .e-con-inner {
	position: relative; z-index: 1;
	justify-content: flex-end !important; align-items: flex-start !important; flex-direction: column !important;
	background: transparent !important; padding: 0 !important;
}
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) > .e-con-inner > .e-con { width: 100% !important; max-width: 1100px !important; --width: 100% !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) h1.elementor-heading-title { max-width: 1000px; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) :is(h2, h3, p).elementor-heading-title { font-size: 24px !important; line-height: 1.3 !important; font-weight: 500 !important; letter-spacing: 0 !important; max-width: 860px; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) span.elementor-heading-title { color: #FFFFFF !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-widget-text-editor { font-size: 18px !important; line-height: 1.5 !important; max-width: 760px; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-widget-text-editor p { margin-bottom: 12px; }
:root :is(#content, body) .elementor-126 > .elementor-element-766de8e .dd-cred { font-size: 14px !important; color: rgba(255, 255, 255, 0.85) !important; margin-top: 8px !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-button { background-color: #FFFFFF !important; border-color: #FFFFFF !important; color: #000000 !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-button:hover { background-color: #E8E8E8 !important; border-color: #E8E8E8 !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-widget-button ~ .elementor-widget-button .elementor-button { background-color: transparent !important; color: #FFFFFF !important; }
:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-widget-button ~ .elementor-widget-button .elementor-button:hover { background-color: rgba(255, 255, 255, 0.12) !important; }
@media (max-width: 767px) {
	:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) { padding-bottom: 48px !important; }
	:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) :is(h2, h3, p).elementor-heading-title { font-size: 18px !important; }
	:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .elementor-widget-text-editor { font-size: 16px !important; }
	:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) .e-con:has(> .elementor-widget-button) { flex-direction: column !important; align-items: stretch !important; width: 100%; gap: 10px !important; }
	:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) :is(.elementor-widget-button, .elementor-button) { width: 100% !important; }
}
/* fasce bianche, grigie e nere, nell'ordine delle tavole */
:root :is(#content, body) :is(
	.elementor-126 > .elementor-element-b5de7fe, .elementor-126 > .elementor-element-c4196f9, .elementor-126 > .elementor-element-e9bec07,
	.elementor-568 > .elementor-element-9ea2515, .elementor-568 > .elementor-element-6eb93cc, .elementor-568 > .elementor-element-8c17ec1, .elementor-568 > .elementor-element-4e3b26c, .elementor-568 > .elementor-element-a0e2aad,
	.elementor-387 > .elementor-element-e8e2619, .elementor-387 > .elementor-element-c21bb66
) { background: #FFFFFF !important; --dd-scheda: #F5F5F5; }
:root :is(#content, body) :is(
	.elementor-126 > .elementor-element-191f691, .elementor-126 > .elementor-element-b7e296b,
	.elementor-568 > .elementor-element-e5bd9f2, .elementor-568 > .elementor-element-88ab05c, .elementor-568 > .elementor-element-49330d6, .elementor-568 > .elementor-element-9f55114,
	.elementor-387 > .elementor-element-a14a245
) { background: #F5F5F5 !important; --dd-scheda: #FFFFFF; }
:root :is(#content, body) :is(
	.elementor-126 > .elementor-element-fe68fc8, .elementor-126 > .elementor-element-9d526df,
	.elementor-568 > .elementor-element-5707e0a, .elementor-568 > .elementor-element-8bb5208,
	.elementor-387 > .elementor-element-38f44e5, .elementor-387 > .elementor-element-fe0dc60
) {
	background: #000000 !important;
	--dd-titolo: #FFFFFF; --dd-testo: #B3B3B3; --dd-forte: #FFFFFF; --dd-mut: #B3B3B3; --dd-filo: #333333; --dd-scheda: #141414; --dd-link: #FFFFFF; --dd-link-sotto: currentColor;
}
:root :is(#content, body) :is(.elementor-126 > .elementor-element-fe68fc8, .elementor-126 > .elementor-element-9d526df, .elementor-568 > .elementor-element-5707e0a, .elementor-568 > .elementor-element-8bb5208, .elementor-387 > .elementor-element-38f44e5, .elementor-387 > .elementor-element-fe0dc60) .elementor-button { background-color: #FFFFFF !important; border-color: #FFFFFF !important; color: #000000 !important; }
/* dentro le fasce del ponte niente scheda bianca su binario */
:root :is(#content, body) :is(.elementor-126, .elementor-568, .elementor-387) > .e-con.e-parent > .e-con-inner { background: transparent !important; padding: 0 !important; }
/* occhielli ripetuti: via, dopo l'apertura */
:root :is(#content, body) :is(.elementor-568, .elementor-387) > .e-con.e-parent:not(:first-child) .elementor-widget-heading:has(span.elementor-heading-title) { display: none !important; }
/* colonne di sola foto accanto a un testo lungo: in alto e ferme mentre il testo scorre (non sul telefono) */
@media (min-width: 1025px) {
	/* v2 · non le schede di dd-viti-imgs (mappa NDVI e foto del Mavic): devono restare alte uguali, una accanto all'altra */
	:root :is(#content, body) :is(.elementor-568, .elementor-387) > .e-con.e-parent .e-con.e-child:has(> .elementor-widget-image):not(:has(.elementor-widget-text-editor)):not(.dd-viti-imgs > .e-con) {
		align-self: flex-start !important;
		position: sticky;
		top: calc(var(--dd-barra) + 24px);
	}
}
/* sul telefono termografia e viticoltura vanno allineate a sinistra (Elementor le centrava): si legge meglio */
@media (max-width: 767px) {
	:root :is(#content, body) :is(.elementor-568, .elementor-387) > .e-con.e-parent :is(.elementor-widget-heading, .elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-widget-text-editor li),
	:root :is(#content, body) :is(.elementor-126 > .elementor-element-766de8e, .elementor-568 > .elementor-element-2a91302, .elementor-387 > .elementor-element-766de8e) :is(.elementor-widget-heading, .elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p) { text-align: left !important; }
	:root :is(#content, body) :is(.elementor-568, .elementor-387) > .e-con.e-parent .elementor-widget-button { text-align: left !important; }
	:root :is(#content, body) :is(.elementor-568, .elementor-387) > .e-con.e-parent .elementor-widget-text-editor :is(ul, ol) { padding-left: 1.1em !important; }
}
/* i loghi ITC e RINA hanno bisogno di fondo chiaro anche sul nero */
:root :is(#content, body) .elementor .dd-firma-loghi img { background: #FFFFFF; border-radius: 4px; padding: 6px; box-sizing: content-box; }
:root :is(#content, body) .elementor .dd-viti-imgs > .e-con { margin: 0 !important; align-self: stretch !important; }
/* v2 · le due immagini allineate in alto (il widget della foto ha 50 px di margine nei dati) */
:root :is(#content, body) .elementor .dd-viti-imgs > .e-con > .elementor-widget-image { margin: 0 !important; }
/* l'unica azione verde: «Richiedi un sopralluogo» in fondo alla home e alla termografia */
:root :is(#content, body) :is(.elementor-126 .elementor-element-1a6a18c, .elementor-568 .elementor-element-e01b63c) .elementor-button { background-color: var(--dd-verde) !important; border-color: var(--dd-verde) !important; color: #FFFFFF !important; min-height: 44px; padding: 0 20px !important; font-size: 15px !important; }
:root :is(#content, body) :is(.elementor-126 .elementor-element-1a6a18c, .elementor-568 .elementor-element-e01b63c) .elementor-button:hover { background-color: #0A5E2A !important; border-color: #0A5E2A !important; }

/* ── 12. Piè di pagina: contenitore grigio arrotondato staccato 12 px dai bordi ─────────────────────── */
:root body .elementor-location-footer > .e-con.e-parent {
	background: transparent !important;
	/* v2 · 12 px anche in alto, come il margine della tavola: sulla termografia il piè si incollava alla fascia grigia */
	--padding-top: 12px !important; --padding-bottom: 12px !important; --padding-left: 12px !important; --padding-right: 12px !important;
	padding: 12px !important;
	margin-top: 0 !important;
}
/* v2 · «Area riservata» solo nella testata: il piè (widget 2207625) usa lo stesso menu «main-menu» */
:root body .elementor-location-footer li.dd-area-riservata { display: none !important; }
:root body .elementor-location-footer > .e-con.e-parent > .e-con-inner {
	max-width: none !important;
	background: var(--dd-grigio-piede) !important;
	border-radius: 8px !important;
	padding: 48px max(24px, calc((100% - 1116px) / 2)) 24px !important;
}
:root body .elementor-location-footer .e-con-inner .e-con { background: transparent !important; }
:root body .elementor-location-footer .e-con.e-grid { --padding-top: 0px !important; --padding-left: 0px !important; --padding-right: 0px !important; --padding-bottom: 0px !important; padding: 0 !important; gap: 32px !important; }
:root body .elementor-location-footer .elementor-widget-image img { height: 28px !important; width: auto !important; }
:root body .elementor-location-footer .elementor-heading-title { font-size: 13px !important; line-height: 1.4 !important; font-weight: 500 !important; letter-spacing: 0 !important; color: #000000 !important; }
:root body .elementor-location-footer .elementor-heading-title::first-letter { text-transform: uppercase; }
:root body .elementor-location-footer .elementor-widget-text-editor,
:root body .elementor-location-footer .elementor-widget-text-editor :is(p, span) { font-size: 13px !important; line-height: 1.5 !important; color: #666666 !important; }
:root body .elementor-location-footer .elementor-widget-text-editor a { color: var(--dd-ink) !important; font-weight: 400 !important; }
:root body .elementor-location-footer .elementor-nav-menu .elementor-item {
	font-size: 13px !important;
	line-height: 1.4 !important;
	font-weight: 400 !important;
	color: var(--dd-ink) !important;
	padding: 4px 0 !important;
}
:root body .elementor-location-footer .elementor-nav-menu .elementor-item:hover { color: #000000 !important; text-decoration: underline; text-underline-offset: 3px; }
:root body .elementor-location-footer .elementor-nav-menu .elementor-item::before,
:root body .elementor-location-footer .elementor-nav-menu .elementor-item::after { display: none !important; }
:root body .elementor-location-footer .e-con-inner > .e-con:last-child {
	margin-top: 40px !important;
	padding: 20px 0 0 !important;
	border-top: 1px solid #DDDDDD !important;
}
:root body .elementor-location-footer .e-con-inner > .e-con:last-child .elementor-widget-text-editor,
:root body .elementor-location-footer .e-con-inner > .e-con:last-child .elementor-widget-text-editor :is(p, span) { font-size: 12px !important; text-align: left !important; }
@media (max-width: 767px) {
	:root body .elementor-location-footer > .e-con.e-parent > .e-con-inner { padding: 32px 20px 20px !important; }
	/* v2 · sul telefono il piè è tutto centrato: anche la riga legale */
	:root body .elementor-location-footer .e-con-inner > .e-con:last-child .elementor-widget-text-editor,
	:root body .elementor-location-footer .e-con-inner > .e-con:last-child .elementor-widget-text-editor :is(p, span) { text-align: center !important; }
}
/* DD aspetto C 2026-10-27 · fine *//* End custom CSS */