/* Base del design — variabili, reset, utility.
   Lo stile dei blocchi (colori, testi, spazi, bordi, layout) NON sta qui: è nelle opzioni dei widget e nel Kit globale.
   Qui restano solo le basi comuni e poche utility `bee-…` da inserire nel campo «Classi CSS» di un widget. */

/* Variabili: replicano i colori del Kit (servono alle utility e ai widget custom). Adattare ai colori del cliente. */
:root{
  --bee-primary:#1d5c38;--bee-secondary:#a8c07a;--bee-text:#1c2b22;--bee-accent:#b6481f;
  --bee-line:#dcdad3;--bee-paper:#f8f5f0;--bee-card:#ffffff;--bee-muted:#5a635b;--bee-dark:#142e20;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body.bee{background-color:#fff;color:var(--bee-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;margin:0;overflow-x:hidden}
img{max-width:100%;height:auto}
p{margin:0 0 1em}

/* Neutralizza i valori predefiniti di Elementor / Hello */
body.bee :where(.elementor-widget:not(:last-child)){margin-block-end:0}
body.bee .e-con{--gap:0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
body.bee .elementor-widget-container{min-width:0}
body.bee .site-main,body.bee #content,body.bee .page-content{margin:0;padding:0;max-width:none}
body.bee .page-header{display:none}
body.bee .elementor-widget-heading .elementor-heading-title{margin:0;font-optical-sizing:auto}
body.bee .elementor-widget-heading .elementor-heading-title a,body.bee .elementor-widget-text-editor a{color:inherit}
body.bee .elementor-widget-text-editor p:last-child{margin-bottom:0}
body.bee .elementor-widget-heading p.elementor-heading-title,body.bee .elementor-widget-heading span.elementor-heading-title,body.bee .elementor-widget-heading div.elementor-heading-title{text-transform:none}
/* Loop Grid: le schede riempiono l'altezza e non sforano la colonna */
body.bee .elementor-loop-container{align-items:stretch}
body.bee .e-loop-item{height:100%;min-width:0}
body.bee .e-loop-item>.e-con{height:100%}
/* Senza immagine in evidenza Elementor mostra un segnaposto grigio */
body.bee img[src*="elementor/assets/images/placeholder"]{display:none}
/* Se un contenitore non deve poter scorrere da solo (es. mappe con tooltip) usare overflow:clip invece di hidden */

/* ---------- Utility (bee-…) ---------- */
/* Etichetta di sezione con trattino davanti: classe sul widget Editor di testo */
body.bee .bee-eyebrow{display:flex;align-items:center;gap:.6em}
body.bee .bee-eyebrow::before{content:"";width:18px;height:1.5px;background:currentColor;flex:none}
body.bee .bee-eyebrow p{margin:0}
/* Link con sottolineatura che si disegna al passaggio del mouse: classe sul widget Pulsante */
body.bee .bee-link .elementor-button{background-image:linear-gradient(var(--bee-secondary),var(--bee-secondary));background-size:0% 2px;background-position:0 100%;background-repeat:no-repeat;padding-bottom:2px;transition:background-size .3s ease}
body.bee .bee-link .elementor-button:hover{background-size:100% 2px}
/* Spinge un elemento in fondo a una card (colonna flex) */
body.bee .bee-push{margin-top:auto}
/* Modulo in riga (campo + pulsante, a capo sotto i 480px): classe sul widget Form */
body.bee .bee-inline-form .elementor-form-fields-wrapper{flex-wrap:nowrap;align-items:stretch;margin:0;gap:10px}
body.bee .bee-inline-form .elementor-field-group{padding:0}
body.bee .bee-inline-form .elementor-field-type-email{flex:1;min-width:0;width:auto}
body.bee .bee-inline-form .elementor-field-type-submit{width:auto;flex:none}
body.bee .bee-inline-form .elementor-button{height:100%}
@media(max-width:480px){body.bee .bee-inline-form .elementor-form-fields-wrapper{flex-wrap:wrap}body.bee .bee-inline-form .elementor-field-type-submit{width:100%}}
/* Aggiungere qui SOLO utility ripetute in più punti; i dettagli unici vanno nel «CSS personalizzato» dell'elemento. */

/* ---------- Header: trasparente → solido allo scorrimento (classe .bee-solid aggiunta da assets/js/bee.js) ---------- */
#siteHeader{transition:background .35s ease,box-shadow .35s ease}
#siteHeader .bee-logo-color{display:none}
#siteHeader.bee-solid{background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(20,46,32,.08);-webkit-backdrop-filter:saturate(140%) blur(8px);backdrop-filter:saturate(140%) blur(8px)}
#siteHeader.bee-solid .bee-logo-color{display:block}
#siteHeader.bee-solid .bee-logo-white{display:none}
#siteHeader.bee-solid .elementor-nav-menu--main .elementor-item{color:#1c2b22!important}
#siteHeader.bee-solid .elementor-menu-toggle{color:#1c2b22!important}
/* Tendina del menu: filetto verde e ombra morbida (non esistono come opzioni del widget) */
#siteHeader .elementor-nav-menu--main .sub-menu{border-top:3px solid #1d5c38;box-shadow:0 18px 44px rgba(15,46,30,.16)}
#siteHeader .elementor-nav-menu--dropdown{border-top:3px solid #1d5c38}
/* Social del footer: cerchio con bordo (opzioni native) — nessuna utility necessaria */
/* Voce «in evidenza» urgente (campo select del CPT In evidenza → classe sul contenitore) */
body.bee .bee-urgent .bee-strip-label{color:#e8743b}
/* Testo degli articoli (widget «Contenuto articolo»): link nei colori del brand */
body.bee .elementor-widget-theme-post-content a{color:var(--bee-primary);text-decoration:underline;text-underline-offset:2px}
body.bee .elementor-widget-theme-post-content a:hover{color:#15462a}
body.bee .elementor-widget-theme-post-content img{height:auto;margin:1em 0}
/* Header: ricerca e segnaposto lingua seguono i colori trasparente → solido */
#siteHeader .bee-lang span{opacity:.55}
#siteHeader .bee-lang span.on{opacity:1}
#siteHeader .bee-lang p{margin:0;white-space:nowrap}
#siteHeader .bee-lang a{color:inherit}
#siteHeader.bee-solid .bee-lang{color:#1c2b22}
#siteHeader.bee-solid .bee-lang .elementor-widget-container{color:#1c2b22}
#siteHeader.bee-solid .elementor-search-form__toggle{color:#1c2b22}
#siteHeader.bee-solid .elementor-search-form__toggle .e-font-icon-svg{fill:#1c2b22}
#siteHeader .elementor-search-form__toggle .e-font-icon-svg{fill:currentColor}
#siteHeader .elementor-search-form__toggle .e-font-icon-svg,#siteHeader .elementor-search-form__toggle svg{width:18px;height:18px}
/* Ricerca a schermo intero: testo, segnaposto e pulsante di chiusura leggibili sul fondo scuro */
.elementor-search-form--full-screen .elementor-search-form__input{color:#fff!important;caret-color:#a8c07a}
.elementor-search-form--full-screen .elementor-search-form__input::placeholder{color:rgba(255,255,255,.6)!important;opacity:1}
.elementor-search-form--full-screen .dialog-lightbox-close-button,.elementor-search-form--full-screen .dialog-close-button{color:#fff!important;font-size:30px;opacity:.9}
.elementor-search-form--full-screen .dialog-lightbox-close-button svg,.elementor-search-form--full-screen .dialog-lightbox-close-button i,.elementor-search-form--full-screen .dialog-close-button svg{fill:#fff!important;color:#fff!important}
.elementor-search-form--full-screen .dialog-lightbox-close-button:hover{color:#a8c07a!important;opacity:1}
/* Ricerca a tutto schermo: pulsante «Cerca» sotto il campo */
.elementor-search-form__container.elementor-search-form--full-screen{flex-wrap:wrap;align-content:center}
.elementor-search-form__container.elementor-search-form--full-screen .elementor-search-form__input{flex:1 1 100%}
.elementor-search-form__container .bee-search__go{order:3;flex:0 0 auto;margin:34px auto 0!important;padding:15px 44px!important;border:0!important;border-radius:3px!important;background:#a8c07a!important;color:#142e20!important;font-size:16px!important;font-weight:600!important;line-height:1!important;font-family:inherit;letter-spacing:.02em;cursor:pointer;transition:background .2s,color .2s}
.elementor-search-form__container .bee-search__go:hover,.elementor-search-form__container .bee-search__go:focus-visible{background:#fff!important;color:#142e20!important}

/* Pulsanti di condivisione: se Elementor non ha messo la classe della griglia («Colonne: Auto»), restano in fila come cerchi invece che a tutta larghezza */
.elementor-widget-share-buttons:not([class*="elementor-grid-"]) .elementor-grid{display:flex;flex-wrap:wrap;gap:var(--grid-row-gap,10px) var(--grid-column-gap,10px)}
.elementor-widget-share-buttons:not([class*="elementor-grid-"]) .elementor-grid-item{display:block;width:auto;margin:0}

/* Menu su telefono/tablet: la tendina si apre sotto l'header a tutta larghezza (senza «Larghezza piena» resta nel flusso e rompe l'header) */
@media (max-width:1080px){
	#siteHeader .e-con,#siteHeader .elementor-widget-nav-menu{position:static}
	#siteHeader .elementor-widget-nav-menu:not(.elementor-nav-menu--stretch) nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{position:absolute;top:100%;left:0;width:100%;z-index:9997;max-height:calc(100vh - 100%);overflow-y:auto;box-shadow:0 18px 30px rgba(8,26,16,.22)}
	#siteHeader .elementor-widget-nav-menu{order:3}
	#siteHeader .elementor-nav-menu--dropdown.elementor-nav-menu__container{margin-top:0!important}
}
@media (max-width:767px){
	#siteHeader .elementor-widget-image img{width:104px;height:auto}
}
