/* =========================================================================
   WWF Trentino Alto Adige - strato grafico comune (sopra Divi)
   -------------------------------------------------------------------------
   Identita': fondo scuro, bianco e nero del panda, un solo colore d'accento
   (verde bosco) per le azioni. Carattere Raleway, come da impostazioni Divi.

   Classi per i moduli Codice/Testo (home e pagine):
     .wt-occhiello        riga piccola maiuscola sopra un titolo
     .wt-titolo           titolo di sezione della home
     .wt-schede           griglia di schede con foto (.wt-scheda dentro)
     .wt-numeri           fascia di numeri in evidenza (.wt-numero dentro)
     .wt-azioni           tre riquadri "partecipa" (.wt-azione dentro)
     .wt-eventi           elenco prodotto da [wwftaa_eventi]
     .wt-pulsante / .wt-pulsante.secondario
     .wt-riquadro         scatola in evidenza (IBAN, avvisi)
     .wt-documenti        elenco di file scaricabili
   ========================================================================= */

:root {
  /* Tema scuro: quello di sempre. Il chiaro ridefinisce le stesse variabili piu' sotto;
     tutto il foglio parla solo per variabili, cosi' un tema si cambia in un punto solo. */
  --wt-fondo: #0f0f0f;             /* fondo delle pagine */
  --wt-fondo-forte: #000;          /* body e footer */
  --wt-superficie: #1b1b1b;        /* schede, fisarmoniche, riquadri */
  --wt-superficie-alta: #262624;   /* fumetti dei grafici */
  --wt-bordo: rgba(255, 255, 255, .16);
  --wt-bordo-forte: rgba(255, 255, 255, .4);   /* passaggio del mouse, pulsante secondario */
  --wt-griglia: rgba(255, 255, 255, .1);       /* righe dell'asse nei grafici */
  --wt-testo: #f3f3f1;
  --wt-forte: #fff;                /* titoli e testo in risalto sul fondo della pagina */
  --wt-tenue: #b9b9b4;
  --wt-inverso: #111;              /* testo sopra --wt-forte: linguette e filtri attivi */
  --wt-velo: rgba(0, 0, 0, .28);   /* fondo appena accennato sopra la pagina */
  --wt-accento-tenue: #8fd0a6;     /* verde chiaro: occhielli piccoli sul fondo scuro */
  --wt-accento: #3f9f63;        /* verde: linee, occhielli, marcatori su fondo scuro */
  --wt-accento-pieno: #2a7d4b;  /* verde piu' scuro: fondo dei pulsanti, testo bianco leggibile */
  --wt-accento-scuro: #216a3e;  /* passaggio del mouse, accento su fondo chiaro */
  --wt-raggio: 6px;
}

/* Tema chiaro: stesse variabili, valori ribaltati. L'accento scende di tono perche' il verde
   chiaro su bianco non arriva al contrasto richiesto. */
html[data-wt-tema="chiaro"] {
  --wt-fondo: #fff;
  --wt-fondo-forte: #f1f1ec;
  --wt-superficie: #f6f6f2;
  --wt-superficie-alta: #fff;
  --wt-bordo: rgba(0, 0, 0, .15);
  --wt-bordo-forte: rgba(0, 0, 0, .42);
  --wt-griglia: rgba(0, 0, 0, .12);
  --wt-testo: #24241f;
  --wt-forte: #111;
  --wt-tenue: #5e5e57;
  --wt-inverso: #fff;
  --wt-accento: #216a3e;
  --wt-accento-pieno: #2a7d4b;
  --wt-accento-scuro: #17502f;
  --wt-velo: rgba(0, 0, 0, .05);
  --wt-accento-tenue: #216a3e;
}

html { scroll-behavior: smooth; }
/* Raleway ha per difetto le cifre "vecchio stile" (3, 4, 5, 7, 9 scendono sotto la riga): nei titoletti
   in maiuscolo e nei numeri sembrano un altro carattere. Cifre allineate ovunque. */
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1; }
h1, h2, h3, h4, h5, h6, button, input, select, textarea { font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1; }
::selection { background: var(--wt-accento-pieno); color: #fff; }

/* Fondo scuro anche dietro le sezioni: niente lampo bianco al caricamento
   e niente stacco fra l'ultima sezione e il footer. */
#page-container, #main-content, #et-main-area { background: var(--wt-fondo); }

:focus-visible { outline: 3px solid var(--wt-accento); outline-offset: 2px; }

/* ------------------------------------------------------------------ testata */
#main-header { box-shadow: 0 1px 0 rgba(0, 0, 0, .08) !important; }
#main-header.et-fixed-header { box-shadow: 0 2px 18px rgba(0, 0, 0, .12) !important; }

#top-menu > li > a {
  font-weight: 500; letter-spacing: .06em; font-size: 14px;
  color: #222 !important; opacity: 1 !important; position: relative;
}
#top-menu > li > a::before {
  content: ""; position: absolute; left: 0; right: 0; bottom: 22px; height: 2px;
  background: var(--wt-accento-pieno); transform: scaleX(0); transform-origin: left;
  transition: transform .25s ease;
}
#top-menu > li.menu-item-has-children > a::before { right: 18px; }
#top-menu > li > a:hover::before,
#top-menu > li.current-menu-item > a::before,
#top-menu > li.current-menu-ancestor > a::before { transform: scaleX(1); }
.et-fixed-header #top-menu > li > a::before { bottom: 12px; }

#top-menu li ul.sub-menu {
  min-width: 320px; padding: 8px 0; border-top: 3px solid var(--wt-accento);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .18); border-radius: 0 0 var(--wt-raggio) var(--wt-raggio);
}
#top-menu li ul.sub-menu li { padding: 0; display: block; line-height: 1.35; }
#top-menu li ul.sub-menu li + li { border-top: 1px solid #efefec; }
#top-menu li ul.sub-menu li a {
  width: 100%; padding: 13px 24px; white-space: normal; font-size: 15px; line-height: 1.35; font-weight: 500;
  letter-spacing: .01em; text-transform: none; color: #222; opacity: 1;
}
#top-menu li ul.sub-menu li a:hover { background: #f4f4f2; color: #000; opacity: 1; }
#top-menu li ul.sub-menu li.current-menu-item > a { color: var(--wt-accento-scuro); }

/* la voce "Dona ora" del menu come pulsante */
#top-menu > li.wt-menu-dona > a {
  background: var(--wt-accento-pieno); color: #fff !important; padding: 10px 18px !important;
  border-radius: 999px; font-weight: 700; margin-top: -10px;
}
#top-menu > li.wt-menu-dona > a::before { display: none; }
#top-menu > li.wt-menu-dona > a:hover { background: var(--wt-accento-scuro); }

/* menu su telefono */
.mobile_menu_bar::before { color: #111 !important; }
.et_mobile_menu { border-top-color: var(--wt-accento); padding: 10px 5%; }
.et_mobile_menu li a { text-transform: none; font-weight: 500; border-bottom-color: #eee; }
.et_mobile_menu > li > a { text-transform: uppercase; letter-spacing: .05em; font-size: 13px; color: #777; background: none !important; }
.et_mobile_menu li.wt-menu-dona a { color: var(--wt-accento-scuro); font-weight: 700; }

/* --------------------------------------------------- fascia foto in testa
   La prima riga di ogni pagina interna: tre foto affiancate. Con proporzioni
   diverse lasciavano un buco nero sotto la piu' bassa: altezza comune e
   ritaglio al centro. */
#main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child { overflow: hidden; }
#main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child .et_pb_image,
#main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child .et_pb_image_wrap { display: block; width: 100%; margin: 0; }
#main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child .et_pb_image img {
  width: 100%; height: clamp(180px, 34vh, 400px); object-fit: cover; display: block;
}
/* stessa cosa per la fascia delle pagine Eventi (HTML prima del contenuto) */
.wwftaa-fascia img { height: clamp(180px, 34vh, 400px); object-fit: cover; }

@media (max-width: 980px) {
  /* su telefono una foto sola: tre impilate occupavano due schermate */
  #main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child > .et_pb_column:not(:first-child) { display: none; }
  #main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child > .et_pb_column { margin-bottom: 0; }
}

/* briciole sotto la fascia */
#main-content .et_pb_text .fa-home { opacity: .7; margin-right: 4px; }
#main-content .et_pb_row[class*="et_pb_row_1"] .et_pb_text p:has(.fa-home),
#main-content .et_pb_text p:has(> .fa-home) {
  text-transform: uppercase; letter-spacing: .12em; font-size: 12px; color: var(--wt-tenue);
}
#main-content .et_pb_text p:has(> .fa-home) strong { color: inherit; font-weight: 700; }
#main-content .et_pb_row:has(p > .fa-home) { border-color: var(--wt-bordo) !important; }

/* ------------------------------------------------------------- tipografia */
#main-content .et_pb_text h1 {
  font-size: clamp(36px, 5.2vw, 64px) !important; line-height: 1.06; font-weight: 600;
  letter-spacing: -.015em; padding-bottom: 0; text-wrap: balance;
}
#main-content .et_pb_text h2 {
  font-size: clamp(24px, 2.6vw, 31px) !important; line-height: 1.2; font-weight: 600;
  margin: 1.7em 0 .55em; padding: 0; text-wrap: balance;
}
#main-content .et_pb_text h2:first-child { margin-top: 0; }
#main-content .et_pb_text h3 { font-size: 21px; line-height: 1.3; font-weight: 600; margin: 1.4em 0 .4em; padding: 0; }
#main-content .et_pb_text h2::after {
  content: ""; display: block; width: 44px; height: 3px; margin-top: 12px; background: var(--wt-accento-pieno);
}
#main-content .et_pb_text p.lead,
#main-content .et_pb_text .lead {
  font-size: clamp(19px, 2vw, 24px); line-height: 1.45; color: var(--wt-tenue); font-weight: 400; max-width: 46em;
}
/* righe leggibili: il testo corrente non supera le 80 battute circa */
#main-content .et_pb_text_inner > p,
#main-content .et_pb_text_inner > ul,
#main-content .et_pb_text_inner > ol { max-width: 50em; }
#main-content .et_pb_text ul { padding-left: 1.2em; }
#main-content .et_pb_text ul li { margin-bottom: .45em; }
#main-content .et_pb_text ul li::marker { color: var(--wt-accento); }
#main-content .et_pb_text p { padding-bottom: 1.1em; }

/* link nel testo su fondo scuro: sottolineatura arancione, non il blu Divi */
/* stesso trattamento ai link di ogni altro modulo: senza questo cadono sull'azzurro di Divi */
#main-content .et_pb_module a:not(.wt-pulsante):not(.et_pb_button):not([class*="wt-"]):not(.et_pb_more_button) {
  color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento);
  text-decoration-thickness: 2px; text-underline-offset: 3px;
}
#main-content .et_pb_section .et_pb_text a:not(.wt-pulsante):not(.et_pb_button) {
  color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento);
  text-decoration-thickness: 2px; text-underline-offset: 3px; transition: color .2s;
}
#main-content .et_pb_section .et_pb_text a:not(.wt-pulsante):not(.et_pb_button):hover { color: var(--wt-accento); }

/* ---------------------------------------------------------------- pulsanti */
html body #page-container .et_pb_section .et_pb_button,
.wt-pulsante,
.wpcf7 input[type="submit"] {
  display: inline-block; background: var(--wt-accento-pieno); color: #fff !important; border: 2px solid var(--wt-accento-pieno) !important;
  border-radius: 999px !important; padding: .62em 1.5em !important; font-size: 16px !important; font-weight: 700 !important;
  line-height: 1.4 !important; letter-spacing: .01em; text-decoration: none !important; cursor: pointer;
  transition: background .2s, border-color .2s, transform .2s;
}
html body #page-container .et_pb_section .et_pb_button:hover,
.wt-pulsante:hover,
.wpcf7 input[type="submit"]:hover {
  background: var(--wt-accento-scuro); border-color: var(--wt-accento-scuro) !important;
  padding: .62em 1.5em !important; transform: translateY(-1px);
}
html body #page-container .et_pb_section .et_pb_button::after { display: none !important; }

/* due pulsanti nella stessa colonna: affiancati, il secondo in versione chiara */
.et_pb_column > .et_pb_button_module_wrapper { display: inline-block; margin: 0 12px 12px 0 !important; }
html body #page-container .et_pb_column > .et_pb_button_module_wrapper ~ .et_pb_button_module_wrapper .et_pb_button,
.wt-pulsante.secondario {
  background: transparent; border-color: var(--wt-bordo-forte) !important; color: var(--wt-forte) !important;
}
html body #page-container .et_pb_column > .et_pb_button_module_wrapper ~ .et_pb_button_module_wrapper .et_pb_button:hover,
.wt-pulsante.secondario:hover { background: var(--wt-forte); border-color: var(--wt-forte) !important; color: var(--wt-inverso) !important; }

/* ------------------------------------------------------- gallerie e immagini */
#main-content .et_pb_gallery_item .et_pb_gallery_image { border-radius: var(--wt-raggio); overflow: hidden; }
#main-content .et_pb_gallery_item img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; transition: transform .5s ease; }
#main-content .et_pb_gallery_item:hover img { transform: scale(1.05); }
#main-content .et_pb_gallery_item .et_pb_gallery_title { font-size: 16px; font-weight: 600; margin-top: 12px; line-height: 1.3; }
#main-content .et_pb_gallery_item .et_pb_gallery_caption { color: var(--wt-tenue) !important; font-size: 13px; line-height: 1.5; }
#main-content .et_pb_text img { border-radius: var(--wt-raggio); }

/* persone (consiglio direttivo) */
#main-content .et_pb_team_member_image img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }
#main-content .et_pb_team_member .et_pb_member_position { color: var(--wt-tenue); }

/* ----------------------------------------------------- fisarmoniche / toggle */
#main-content .et_pb_toggle {
  background: var(--wt-superficie) !important; border: 1px solid var(--wt-bordo) !important;
  border-radius: var(--wt-raggio); margin-bottom: 10px !important; padding: 18px 22px; transition: border-color .2s;
}
#main-content .et_pb_toggle:hover { border-color: var(--wt-bordo-forte) !important; }
#main-content .et_pb_toggle .et_pb_toggle_title { color: var(--wt-forte) !important; font-weight: 600; font-size: 17px; line-height: 1.35; }
#main-content .et_pb_toggle .et_pb_toggle_title::before { color: var(--wt-accento) !important; }
#main-content .et_pb_toggle .et_pb_toggle_content { color: var(--wt-testo) !important; font-size: 16px; line-height: 1.7; }
#main-content .et_pb_toggle .et_pb_toggle_content a { color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento); text-underline-offset: 3px; }

/* ------------------------------------------------------------------ moduli */
#main-content .wpcf7 input[type="text"], #main-content .wpcf7 input[type="email"], #main-content .wpcf7 input[type="tel"],
#main-content .wpcf7 input[type="date"], #main-content .wpcf7 input[type="number"], #main-content .wpcf7 select, #main-content .wpcf7 textarea,
#main-content .et_pb_contact_form .input, #main-content .et_pb_newsletter_form .input {
  width: 100%; background: #fff !important; color: #111 !important; border: 2px solid var(--wt-bordo) !important;
  border-radius: var(--wt-raggio) !important; padding: 13px 15px !important; font-size: 16px !important; font-family: inherit;
}
#main-content .wpcf7 input:focus, #main-content .wpcf7 select:focus, #main-content .wpcf7 textarea:focus,
#main-content .et_pb_contact_form .input:focus, #main-content .et_pb_newsletter_form .input:focus {
  border-color: var(--wt-accento) !important; outline: none;
}
#main-content .wpcf7 label { font-weight: 600; font-size: 15px; }
#main-content .wpcf7-not-valid-tip { color: #ffb38a; font-size: 14px; }
#main-content .wpcf7 form .wpcf7-response-output { border-radius: var(--wt-raggio); padding: 12px 16px; margin: 1.5em 0 0; }

/* ---------------------------------------------------------------- newsletter */
#main-content .et_pb_newsletter .et_pb_newsletter_button { width: auto !important; }
#main-content .et_pb_newsletter_description h2 { text-wrap: balance; }

/* ============================================================ blocchi .wt- */
.wt-occhiello {
  display: block; text-transform: uppercase; letter-spacing: .16em; font-size: 12.5px; font-weight: 700;
  color: var(--wt-accento); margin: 0 0 12px; padding: 0 !important;
}
#main-content .et_pb_text h2.wt-titolo, .wt-titolo {
  font-size: clamp(30px, 3.6vw, 46px) !important; line-height: 1.1; font-weight: 600; letter-spacing: -.01em;
  color: var(--wt-forte); margin: 0 0 .5em; padding: 0; text-wrap: balance;
}
#main-content .et_pb_text h2.wt-titolo::after { display: none; }
.wt-sommario { font-size: clamp(17px, 1.5vw, 20px); line-height: 1.6; color: var(--wt-tenue); max-width: 44em; }

/* schede con foto */
.wt-schede { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin: 0; padding: 0; list-style: none; }
.wt-schede.tre { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.wt-scheda {
  --wt-forte: #fff; --wt-tenue: rgba(255, 255, 255, .82); --wt-accento: #3f9f63;   /* la foto sotto resta scura anche col tema chiaro */
  position: relative; display: flex; align-items: flex-end; min-height: 340px; overflow: hidden;
  border-radius: var(--wt-raggio); background: #222; color: #fff !important; text-decoration: none !important; isolation: isolate;
}
.wt-scheda img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2;
  transition: transform .7s cubic-bezier(.2, .7, .2, 1); border-radius: 0 !important;
}
.wt-scheda::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(to top, rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, .45) 45%, rgba(0, 0, 0, .05) 75%);
  transition: opacity .3s;
}
.wt-scheda:hover img, .wt-scheda:focus-visible img { transform: scale(1.06); }
.wt-scheda-testo { padding: 22px 22px 20px; }
.wt-scheda-testo b { display: block; font-size: 21px; line-height: 1.2; font-weight: 600; }
.wt-scheda-testo span { display: block; margin-top: 7px; font-size: 14.5px; line-height: 1.5; color: rgba(255, 255, 255, .82); }
.wt-scheda-testo i {
  display: inline-block; margin-top: 12px; font-style: normal; font-size: 13px; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: var(--wt-accento);
}
.wt-scheda-testo i::after { content: " \2192"; transition: margin .2s; }
.wt-scheda:hover .wt-scheda-testo i::after { margin-left: 5px; }

/* numeri */
.wt-numeri { display: grid; gap: 0; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); border-top: 1px solid var(--wt-bordo); border-bottom: 1px solid var(--wt-bordo); }
.wt-numero { padding: 30px 24px 28px; border-left: 1px solid var(--wt-bordo); }
.wt-numero:first-child { border-left: 0; padding-left: 0; }
.wt-numero b { display: block; font-size: clamp(34px, 3.8vw, 50px); line-height: 1; font-weight: 600; color: var(--wt-forte); letter-spacing: -.02em; font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1; }
.wt-numero span { display: block; margin-top: 10px; font-size: 14.5px; line-height: 1.45; color: var(--wt-tenue); }
@media (max-width: 640px) {
  .wt-numeri { grid-template-columns: 1fr 1fr; }
  .wt-numero { padding: 22px 14px; }
  .wt-numero:nth-child(odd) { border-left: 0; padding-left: 0; }
  .wt-numero:nth-child(n+3) { border-top: 1px solid var(--wt-bordo); }
}

/* azioni "partecipa" */
.wt-azioni { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.wt-azione {
  display: flex; flex-direction: column; padding: 30px 28px; background: var(--wt-superficie); border: 1px solid var(--wt-bordo);
  border-radius: var(--wt-raggio); color: var(--wt-forte) !important; text-decoration: none !important; transition: border-color .2s, transform .2s, background .2s;
}
.wt-azione:hover { border-color: var(--wt-accento); transform: translateY(-3px); }
.wt-azione b { font-size: 23px; font-weight: 600; line-height: 1.2; }
.wt-azione span { margin: 10px 0 22px; font-size: 15.5px; line-height: 1.6; color: var(--wt-tenue); flex: 1; }
.wt-azione i { font-style: normal; font-weight: 700; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--wt-accento); }
.wt-azione i::after { content: " \2192"; }
.wt-azione.evidenza { background: var(--wt-accento-pieno); border-color: var(--wt-accento-pieno); }
.wt-azione.evidenza span { color: rgba(255, 255, 255, .92); }
.wt-azione.evidenza i { color: #fff; }
.wt-azione.evidenza:hover { background: var(--wt-accento-scuro); }

/* eventi e comunicati in home */
.wt-eventi { list-style: none !important; margin: 0; padding: 0 !important; }
.wt-eventi li { margin: 0 !important; border-bottom: 1px solid var(--wt-bordo); }
.wt-eventi li a { display: flex; gap: 18px; align-items: center; padding: 16px 0; text-decoration: none !important; color: var(--wt-forte); }
.wt-eventi-data {
  flex: 0 0 74px; text-align: center; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--wt-tenue);
  border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); padding: 9px 4px 8px; line-height: 1.3;
}
.wt-eventi-data b { display: block; font-size: 27px; line-height: 1; color: var(--wt-forte); font-weight: 600; letter-spacing: 0; margin-bottom: 3px; }
.wt-eventi-testo strong { display: block; font-size: 18px; line-height: 1.3; font-weight: 600; }
.wt-eventi-testo em { display: block; font-style: normal; font-size: 14px; color: var(--wt-tenue); margin-top: 3px; }
.wt-eventi li a:hover strong { color: var(--wt-accento); }
.wt-vuoto { color: var(--wt-tenue); }

#main-content .wwftaa-com li { border-bottom-color: var(--wt-bordo); }
#main-content .wwftaa-com li a { text-decoration: none !important; color: var(--wt-forte); line-height: 1.35; display: inline-block; }
#main-content .wwftaa-com li a:hover { color: var(--wt-accento); }
#main-content .wwftaa-com-data { color: var(--wt-tenue); opacity: 1; letter-spacing: .04em; }

/* riquadro in evidenza */
.wt-riquadro {
  background: var(--wt-superficie); border: 1px solid var(--wt-bordo); border-left: 4px solid var(--wt-accento);
  border-radius: var(--wt-raggio); padding: 24px 26px; margin: 0 0 1.4em; max-width: 50em;
}
.wt-riquadro p:last-child { padding-bottom: 0 !important; }
.wt-riquadro code, .wt-iban { font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace; font-size: 1.05em; letter-spacing: .04em; color: var(--wt-forte); background: none; padding: 0; word-break: break-word; }

/* elenco di documenti scaricabili */
.wt-documenti { list-style: none !important; margin: 0 0 1.5em; padding: 0 !important; max-width: 50em; }
.wt-documenti li { margin: 0 !important; border-bottom: 1px solid var(--wt-bordo); }
.wt-documenti li a { display: flex; align-items: baseline; gap: 14px; padding: 15px 2px; text-decoration: none !important; color: var(--wt-forte); font-weight: 600; }
.wt-documenti li a::before { content: attr(data-formato); flex: none; font-size: 11px; font-weight: 700; letter-spacing: .08em; color: var(--wt-accento); border: 1px solid var(--wt-accento); border-radius: 3px; padding: 2px 6px; }
.wt-documenti li a small { margin-left: auto; font-weight: 400; color: var(--wt-tenue); font-size: 13px; white-space: nowrap; }
.wt-documenti li a:hover { color: var(--wt-accento); }

/* ------------------------------------------------------ copertina della home */
.home .et_pb_fullwidth_header { padding: 0; --wt-forte: #fff; --wt-tenue: rgba(255, 255, 255, .92); --wt-bordo-forte: rgba(255, 255, 255, .7); }
.home .et_pb_fullwidth_header .et_pb_fullwidth_header_container { width: 88%; max-width: 1280px; align-items: flex-end; padding-bottom: clamp(60px, 11vh, 130px); }
.home .et_pb_fullwidth_header .header-content { width: 100%; max-width: 780px; margin: 0; padding: 0; text-align: left; }
.home .et_pb_fullwidth_header .header-content h1 {
  font-size: clamp(38px, 5.6vw, 76px) !important; line-height: 1.02; font-weight: 600; letter-spacing: -.02em; color: #fff;
  padding-bottom: 0; text-wrap: balance; text-shadow: 0 2px 30px rgba(0, 0, 0, .35);
}
.home .et_pb_fullwidth_header .et_pb_fullwidth_header_subhead {
  display: block; margin-top: 20px; font-size: clamp(17px, 1.6vw, 21px); line-height: 1.55; color: rgba(255, 255, 255, .92);
  max-width: 36em; text-shadow: 0 1px 14px rgba(0, 0, 0, .5);
}
.home .et_pb_fullwidth_header .et_pb_button { margin: 28px 12px 0 0 !important; }
.home .et_pb_fullwidth_header .et_pb_button_two { background: rgba(0, 0, 0, .25) !important; border-color: rgba(255, 255, 255, .7) !important; color: #fff !important; backdrop-filter: blur(4px); }
.home .et_pb_fullwidth_header .et_pb_button_two:hover { background: #fff !important; border-color: #fff !important; color: #111 !important; }
.home .et_pb_fullwidth_header .et_pb_fullwidth_header_scroll a .et-pb-icon { color: #fff; opacity: .85; font-size: 38px; }

/* ------------------------------------------------------------------- footer */
.wt-footer { font-size: 14.5px; line-height: 1.75; color: var(--wt-tenue); }
.wt-footer-griglia { display: grid; gap: 34px 40px; grid-template-columns: 1.4fr 1fr 1.3fr 1fr; }
.wt-footer h3 { font-size: 12.5px; line-height: 1.5; letter-spacing: .16em; text-transform: uppercase; color: var(--wt-forte); font-weight: 700; margin: 0 0 14px; padding: 0; }
.wt-footer p { padding-bottom: .8em !important; margin: 0; }
.wt-footer ul { list-style: none !important; margin: 0; padding: 0 !important; }
.wt-footer li { margin: 0 0 6px !important; }
.wt-footer a { color: var(--wt-tenue) !important; text-decoration: none !important; transition: color .2s; }
.wt-footer a:hover { color: var(--wt-forte) !important; text-decoration: underline !important; text-decoration-color: var(--wt-accento) !important; }
.wt-footer strong { color: var(--wt-forte); }
.wt-footer-social a { display: inline-flex; align-items: center; gap: 8px; }
.wt-footer-social .fa { font-size: 18px; color: var(--wt-forte); width: 20px; }
.wt-footer-chiusura { margin-top: 38px; padding-top: 20px; border-top: 1px solid var(--wt-bordo); font-size: 13px; display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; }
@media (max-width: 980px) { .wt-footer-griglia { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .wt-footer-griglia { grid-template-columns: 1fr; } }

/* la barra grigia vuota di Divi sotto il footer */
#main-footer { background: var(--wt-fondo-forte); }
#footer-bottom { display: none; }

/* --------------------------------------------------------- eventi (calendario) */
.tribe-events .tribe-events-c-subscribe-dropdown__button,
.tribe-common .tribe-common-c-btn { border-radius: 999px !important; }
.tribe-common .tribe-common-c-btn, .tribe-common a.tribe-common-c-btn { background-color: var(--wt-accento) !important; }
.tribe-common .tribe-common-c-btn:hover { background-color: var(--wt-accento-scuro) !important; }
.tribe-events .datepicker .day.active, .tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum { color: var(--wt-accento-scuro); }

/* ------------------------------------------------------------------- varie */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
  .et_pb_module.et-waypoint, .et_animated { opacity: 1 !important; transform: none !important; }
}
@media (max-width: 767px) {
  #main-content .et_pb_row { width: 88%; }
  .wt-scheda { min-height: 260px; }
}

/* velo sulla foto di copertina: scuro in basso, dove sta il testo */
.home .et_pb_fullwidth_header::before {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(to top, rgba(10, 10, 10, .88) 0%, rgba(10, 10, 10, .35) 45%, rgba(10, 10, 10, .08) 75%);
}
.home .et_pb_fullwidth_header .et_pb_fullwidth_header_container,
.home .et_pb_fullwidth_header .et_pb_fullwidth_header_scroll { position: relative; z-index: 2; }

/* cinque schede: due grandi sopra, tre sotto (mai una scheda orfana) */
@media (min-width: 900px) {
  .wt-schede.cinque { grid-template-columns: repeat(6, 1fr); }
  .wt-schede.cinque > * { grid-column: span 2; }
  .wt-schede.cinque > :nth-child(-n+2) { grid-column: span 3; min-height: 420px; }
  .wt-schede.cinque > :nth-child(-n+2) b { font-size: 27px; }
}

/* il modulo Codice di Divi trasforma gli a capo in <br>: dentro le griglie non devono contare */
.wt-azioni > br, .wt-schede > br, .wt-numeri > br, .wt-footer-griglia > br { display: none; }
#main-content .wwftaa-com, #main-content .wwftaa-com li { list-style: none !important; padding-left: 0 !important; }

/* Divi da' alle sezioni un fondo bianco finche' non arriva il suo CSS differito:
   il fondo di partenza e' quello scuro del sito (il colore scelto nel modulo vince comunque). */
#main-content .et_pb_section { background-color: var(--wt-fondo); }
body { background: var(--wt-fondo-forte); }

/* moduli Contact Form 7 su fondo scuro */
#main-content .wpcf7 { max-width: 760px; color: var(--wt-testo); }
#main-content .wpcf7 h3 { color: var(--wt-forte); font-size: 21px; font-weight: 600; margin: 1.8em 0 .7em; padding: 0 0 10px; border-bottom: 1px solid var(--wt-bordo); }
#main-content .wpcf7 p { padding-bottom: 1em; }
#main-content .wpcf7 label { color: var(--wt-forte); display: inline-block; margin-bottom: 5px; }
#main-content .wpcf7 .wwf-intro { color: var(--wt-tenue); font-size: 15.5px; line-height: 1.6; }
#main-content .wpcf7 .wpcf7-list-item { display: block; margin: 0 0 6px; }
#main-content .wpcf7 .wpcf7-list-item label { font-weight: 400; color: var(--wt-testo); cursor: pointer; }
#main-content .wpcf7 input[type="checkbox"], #main-content .wpcf7 input[type="radio"] { accent-color: var(--wt-accento); width: 17px; height: 17px; margin-right: 8px; vertical-align: -3px; }
#main-content .wpcf7 a { color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento); text-underline-offset: 3px; }
#main-content .et_pb_text ol { padding-left: 1.4em; list-style-position: outside; max-width: 50em; }
#main-content .et_pb_text ol li { margin-bottom: .45em; padding-left: .3em; }
#main-content .et_pb_text ol li::marker { color: var(--wt-accento); font-weight: 700; }

/* colori di base: le pagine non portano piu' colori propri, quindi testo e titoli di ogni
   modulo Divi (testo, galleria, modulo contatti, persone...) li decide il tema */
#main-content .et_pb_module, #main-content .et_pb_text, #main-content .et_pb_team_member_description { color: var(--wt-testo); }
#main-content .et_pb_module h1, #main-content .et_pb_module h2, #main-content .et_pb_module h3,
#main-content .et_pb_module h4, #main-content .et_pb_module h5, #main-content .et_pb_module h6 { color: var(--wt-forte); }

/* calendario eventi (The Events Calendar) in versione scura, tramite le sue variabili */
.tribe-common, .tribe-events, #tribe-events-pg-template, .tribe-events-single {
  --tec-color-text-primary: var(--wt-testo); --tec-color-text-secondary: var(--wt-tenue); --tec-color-text-disabled: var(--wt-tenue);
  --tec-color-text-events-title: var(--wt-forte); --tec-color-text-event-title: var(--wt-forte); --tec-color-text-event-date: var(--wt-tenue);
  --tec-color-text-secondary-event-date: var(--wt-tenue); --tec-color-text-events-title-day: var(--wt-forte); --tec-color-text-day-of-week-month: var(--wt-tenue);
  --tec-color-icon-primary: var(--wt-tenue); --tec-color-icon-active: var(--wt-forte); --tec-color-icon-events-bar: #555; --tec-color-icon-events-bar-hover: #111;
  --tec-color-accent-primary: #2a7d4b; --tec-color-accent-primary-hover: #216a3e; --tec-color-link-accent: #2a7d4b; --tec-color-link-accent-hover: #3f9f63;
  --tec-color-background: var(--wt-fondo); --tec-color-background-events: transparent; --tec-color-background-secondary: var(--wt-superficie);
  --tec-color-background-view-selector: #fff;
  --tec-color-border-default: rgba(255, 255, 255, .16); --tec-color-border-secondary: rgba(255, 255, 255, .12);
  --tec-color-border-active-month-grid-hover: #2a7d4b;
}
/* la barra di ricerca resta chiara: dentro, testo scuro */
.tribe-events .tribe-events-c-events-bar, .tribe-events .tribe-events-c-view-selector__content, .tribe-events .datepicker {
  --tec-color-text-primary: #141827; --tec-color-text-secondary: #5d5d5d; --tec-color-icon-primary: #5d5d5d; color: #141827;
}
.tribe-events .tribe-events-c-events-bar { border-radius: var(--wt-raggio); }
.tribe-events .tribe-events-c-subscribe-dropdown__button { background: transparent !important; color: var(--wt-forte) !important; border-color: var(--wt-bordo-forte) !important; }
.tribe-events .tribe-events-c-subscribe-dropdown__content { background: var(--wt-superficie); }
#tribe-events-pg-template, .tribe-events-pg-template { background: var(--wt-fondo); color: var(--wt-testo); }
.tribe-events-single .tribe-events-single-event-title, .tribe-events-single h2, .tribe-events-single h3 { color: var(--wt-forte); }
.tribe-events-single .tribe-events-content, .tribe-events-single .tribe-events-content p, .tribe-events-single dd, .tribe-events-single dt,
.tribe-events-single .tribe-events-schedule h2, .tribe-events-single .tribe-events-back a { color: var(--wt-testo); }
.tribe-events-single .tribe-events-content a, .tribe-events-single dd a { color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento); text-underline-offset: 3px; }
.tribe-events-single .tribe-events-event-meta { background: var(--wt-superficie); border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); color: var(--wt-testo); }
.tribe-events-single .tribe-events-event-image img { border-radius: var(--wt-raggio); }

@media (max-width: 980px) {
  #main-content .et_pb_section:first-child > .et_pb_row.et_pb_gutters1:first-child .et_pb_image img { height: 30vh; }
}
.tribe-common, .tribe-events, .tribe-events-single { --tec-font-family-sans-serif: "Raleway", Helvetica, Arial, sans-serif; font-family: "Raleway", Helvetica, Arial, sans-serif; }
#top-menu > li > a { text-transform: uppercase; }
.wt-footer-esterno { clear: both; background: var(--wt-fondo-forte); padding: 56px 0 40px; }
.wt-footer-esterno > .wt-footer { width: 80%; max-width: 1080px; margin: 0 auto; }
.wt-footer-esterno br { display: none; }

/* newsletter: campi su una riga, domanda antispam compresa */
.wt-nl { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.wt-nl p { padding: 0 !important; margin: 0; }
.wt-nl p:nth-child(3) { grid-column: 1 / -1; }
.wt-nl .wpcf7-quiz-label { display: block; font-size: 13px; color: var(--wt-tenue); margin-bottom: 4px; }
.wt-nl p:nth-child(5) { align-self: end; }
.wt-nl input[type="submit"] { width: 100%; }
#main-content .wpcf7 .wt-nl-consenso { font-size: 13.5px; color: var(--wt-tenue); padding: 12px 0 0; }
#main-content .wpcf7 .wt-nl-consenso .wpcf7-list-item { margin: 0; }
@media (max-width: 560px) { .wt-nl { grid-template-columns: 1fr; } }
#newsletter .et_pb_code { padding: 34px 38px; }
@media (max-width: 767px) { #newsletter .et_pb_code { padding: 26px 22px; } }
#main-content .et_pb_toggle .et_pb_toggle_content h2, #main-content .et_pb_toggle .et_pb_toggle_content h3,
#main-content .et_pb_toggle .et_pb_toggle_content h4, #main-content .et_pb_toggle .et_pb_toggle_content h5 { color: var(--wt-forte); font-size: 18px; font-weight: 600; margin: 1.2em 0 .4em; padding: 0; }
#main-content .et_pb_row:has(.wt-documenti), #main-content .et_pb_row:has(.wt-riquadro) { padding-top: 0; }
.wt-credito { position: absolute; top: 10px; right: 12px; font-size: 11px; letter-spacing: .04em; color: rgba(255, 255, 255, .8); text-shadow: 0 1px 4px rgba(0, 0, 0, .8); opacity: 0; transition: opacity .3s; }
.wt-scheda:hover .wt-credito, .wt-scheda:focus-visible .wt-credito { opacity: 1; }
@media (hover: none) { .wt-credito { opacity: .85; } }

/* ------------------------------------------------ modulo socio guidato (.wt-ms) */
.wt-ms { max-width: 820px; color: var(--wt-testo); }
.wt-ms-linguette { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.wt-ms-linguette button { font: inherit; font-weight: 700; font-size: 15px; cursor: pointer; padding: 11px 20px; border-radius: 999px; border: 2px solid var(--wt-bordo); background: transparent; color: var(--wt-tenue); transition: all .2s; }
.wt-ms-linguette button[aria-selected="true"] { background: var(--wt-forte); border-color: var(--wt-forte); color: var(--wt-inverso); }
.wt-ms fieldset { border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); background: var(--wt-superficie); padding: 22px 24px 20px; margin: 0 0 16px; min-width: 0; }
.wt-ms legend { float: left; width: 100%; padding: 0; margin: 0 0 16px; font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--wt-accento); }
.wt-ms legend + * { clear: both; }
.wt-ms-griglia { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px 16px; }
.wt-ms-famigliare { padding-top: 14px; margin-top: 14px; border-top: 1px dashed var(--wt-bordo); align-items: end; }
.wt-ms-campo { display: block; }
.wt-ms-campo > span { display: block; font-size: 14px; font-weight: 600; color: var(--wt-forte); margin-bottom: 5px; }
.wt-ms-campo input { width: 100%; background: #fff; color: #111; border: 2px solid transparent; border-radius: var(--wt-raggio); padding: 11px 13px; font: inherit; font-size: 16px; }
.wt-ms-campo input:focus { border-color: var(--wt-accento); outline: none; }
.wt-ms-campo small { display: block; margin-top: 4px; font-size: 12.5px; line-height: 1.4; color: var(--wt-tenue); }
.wt-ms-scelte { display: grid; gap: 8px; margin: 0 0 6px; }
.wt-ms-griglia + .wt-ms-scelte { grid-auto-flow: column; justify-content: start; gap: 22px; margin-top: 14px; }
.wt-ms-scelte label, .wt-ms-consenso { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; font-size: 15.5px; line-height: 1.5; }
.wt-ms-scelte input, .wt-ms-consenso input { accent-color: var(--wt-accento); width: 18px; height: 18px; margin-top: 3px; flex: none; }
.wt-ms-scelte em { font-style: normal; color: var(--wt-tenue); font-size: 14px; }
.wt-ms-consenso { margin-top: 14px; }
.wt-ms-se { margin-top: 14px; }
.wt-ms fieldset.wt-ms-se { margin-top: 0; }
.wt-ms [hidden] { display: none !important; }
.wt-ms-nota { font-size: 13.5px; line-height: 1.55; color: var(--wt-tenue); margin: 12px 0 0; padding: 0 !important; }
.wt-ms-nota b { color: var(--wt-forte); }
.wt-ms-finale { border-color: var(--wt-accento) !important; }
.wt-ms-finale ol { margin: 14px 0 0; padding-left: 1.3em; font-size: 15.5px; line-height: 1.6; list-style: decimal outside; }
.wt-ms-finale ol li { margin-bottom: 5px; }
.wt-ms-finale button.wt-pulsante { font-family: inherit; }
.wt-ms-esito { font-size: 14.5px; color: var(--wt-tenue); margin-left: 8px; }
.wt-ms a { color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento); text-underline-offset: 3px; }

/* ------------------------------------------------ comunicato stampa singolo */
.single-wwftaa_comunicato #main-content .container { width: 88%; max-width: 780px; padding-top: 70px !important; padding-bottom: 70px; }
.single-wwftaa_comunicato #main-content .container::before { display: none; }
.single-wwftaa_comunicato #left-area { width: 100%; float: none; padding: 0 !important; }
.single-wwftaa_comunicato #sidebar, .single-wwftaa_comunicato .post-meta, .single-wwftaa_comunicato #comment-wrap { display: none; }
.single-wwftaa_comunicato .et_post_meta_wrapper { display: flex; flex-direction: column; }
.single-wwftaa_comunicato .entry-title {
  color: var(--wt-forte); font-size: clamp(30px, 4.2vw, 48px); line-height: 1.12; font-weight: 600; letter-spacing: -.01em; padding: 0 0 8px; text-wrap: balance;
}
.single-wwftaa_comunicato .entry-content { color: var(--wt-testo); font-size: 18px; line-height: 1.75; padding-top: 0; }
.single-wwftaa_comunicato .entry-content p { padding-bottom: 1.25em; }
.single-wwftaa_comunicato .entry-content a { color: var(--wt-forte); text-decoration: underline; text-decoration-color: var(--wt-accento); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.single-wwftaa_comunicato .entry-content h2, .single-wwftaa_comunicato .entry-content h3 { color: var(--wt-forte); font-weight: 600; line-height: 1.25; margin: 1.4em 0 .5em; padding: 0; }
.single-wwftaa_comunicato .entry-content ul, .single-wwftaa_comunicato .entry-content ol { padding: 0 0 1.25em 1.3em; }
.single-wwftaa_comunicato .entry-content li::marker { color: var(--wt-accento); }
.single-wwftaa_comunicato .entry-content blockquote { border-left: 3px solid var(--wt-accento); margin: 0 0 1.25em; padding-left: 22px; color: var(--wt-forte); font-style: italic; }
.wt-cs-testa { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; padding: 14px 0 26px !important; margin-bottom: 30px; border-bottom: 1px solid var(--wt-bordo); }
.wt-cs-testa .wt-occhiello { margin: 0; }
.wt-cs-testa time { font-size: 15px; color: var(--wt-tenue); letter-spacing: .02em; }
.wt-cs-coda { margin-top: 26px; padding-top: 30px; border-top: 1px solid var(--wt-bordo); font-size: 16px; }
.wt-cs-coda p { padding-bottom: 14px !important; }
.wt-cs-coda .wt-pulsante { text-decoration: none !important; }
.wt-cs-coda .wt-pulsante::before { content: "\2193\00a0\00a0"; }
.wt-cs-coda small { margin-left: 14px; color: var(--wt-tenue); font-size: 13.5px; }
.wt-cs-coda .wwftaa-com-ref { color: var(--wt-tenue); }
.wt-cs-coda .wwftaa-com-ref strong { color: var(--wt-forte); }
a.wt-cs-indietro { text-decoration: none !important; font-weight: 700; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--wt-accento) !important; }
a.wt-cs-indietro::before { content: "\2190\00a0"; }

/* sezione Documenti composta da [wwftaa_documenti] */
.wt-doc-sezione { margin-bottom: 46px; max-width: 50em; }
.wt-doc-sezione h2 { color: var(--wt-forte); font-size: clamp(24px, 2.6vw, 31px); line-height: 1.2; font-weight: 600; margin: 0 0 .55em; padding: 0; }
.wt-doc-sezione h2::after { content: ""; display: block; width: 44px; height: 3px; margin-top: 12px; background: var(--wt-accento); }
.wt-doc-sezione > p { color: var(--wt-testo); font-size: 17px; line-height: 1.7; padding-bottom: .6em; }

/* ------------------------------------------------------- testata delle pagine
   Titolo e sommario stanno in due righe Divi distinte: fra l'uno e l'altro si sommerebbero
   due padding di riga (29 + 29 px) e la testata si slegherebbe. Vale solo per le righe che
   contengono quel solo modulo: altrove (Valtrigona, Domande frequenti) il titolo divide la riga. */
/* riga del solo titolo: nessun altro modulo, ne' accanto ne' sotto (a Valtrigona il titolo divide la riga con le foto) */
#main-content .et_pb_row:has(.et_pb_text_inner > h1):not(:has(.et_pb_module ~ .et_pb_module)):not(:has(.et_pb_column:nth-child(n+2) .et_pb_module)) { padding-top: 16px; padding-bottom: 0; }
#main-content .et_pb_row:has(> .et_pb_column:first-child > .et_pb_module:first-child .et_pb_text_inner > p.lead) { padding-top: 12px; }
/* lo stacco prima del corpo si accorcia solo se la riga porta il sommario e basta (nelle FAQ porta anche le domande) */
#main-content .et_pb_row:has(> .et_pb_column:only-child > .et_pb_module:only-child .et_pb_text_inner > p.lead) { padding-bottom: 20px; }

/* -------------------------------------------- pagine a due colonne (wt-due-colonne)
   A destra una colonna di servizio fatta di schede, che resta in vista mentre si scorre. */
@media (min-width: 981px) {
  #main-content .et_pb_row.wt-due-colonne { display: flex; align-items: flex-start; gap: 5%; }
  #main-content .et_pb_row.wt-due-colonne > .et_pb_column { float: none; margin-right: 0 !important; }
  #main-content .et_pb_row.wt-due-colonne > .et_pb_column:first-child { flex: 1 1 0; min-width: 0; width: auto !important; }
  #main-content .et_pb_row.wt-due-colonne > .wt-colonna-fissa { flex: 0 0 34%; width: 34% !important; position: sticky; top: 110px; max-height: calc(100vh - 130px); overflow-y: auto; scrollbar-width: thin; }
}
#main-content .wt-colonna-fissa > .et_pb_module { margin-bottom: 14px !important; }
#main-content .wt-colonna-fissa > .et_pb_text {
  background: var(--wt-superficie); border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); padding: 20px 22px 16px;
  font-size: 15px !important; line-height: 1.6 !important;
}
#main-content .wt-colonna-fissa > .et_pb_text:has(> .et_pb_text_inner > h2:only-child) { background: none; border: 0; padding: 0; margin-bottom: 8px !important; }
#main-content .wt-colonna-fissa .et_pb_text h2 { font-size: 13px !important; letter-spacing: .14em; text-transform: uppercase; color: var(--wt-accento); margin: 0 0 12px; }
#main-content .wt-colonna-fissa .et_pb_text h2::after { display: none; }
#main-content .wt-colonna-fissa .et_pb_text p:last-child { padding-bottom: 0; }
#main-content .wt-colonna-fissa .et_pb_text ul { padding-left: 1.1em; padding-bottom: 0; }
/* Ogni scheda con un titolo si apre e si chiude come le fisarmoniche delle pagine (Valtrigona):
   stesso fondo, stessa freccia ETmodules. Il markup lo costruisce wwftaa-grafica.php. */
#main-content .wt-colonna-fissa .wt-piega > summary { display: block; position: relative; padding-right: 26px; cursor: pointer; list-style: none; }
#main-content .wt-colonna-fissa .wt-piega > summary::-webkit-details-marker { display: none; }
#main-content .wt-colonna-fissa .wt-piega > summary h2 { margin: 0 !important; transition: color .2s; }
#main-content .wt-colonna-fissa .wt-piega > summary:hover h2 { color: var(--wt-forte); }
#main-content .wt-colonna-fissa .wt-piega > summary::after { content: "\e050"; font-family: ETmodules; font-size: 15px; color: var(--wt-accento); position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
#main-content .wt-colonna-fissa .wt-piega[open] > summary::after { content: "\e04f"; }
#main-content .wt-colonna-fissa .wt-piega[open] > summary { margin-bottom: 12px; }
#main-content .wt-colonna-fissa .wt-piega[open] > .wt-piega-corpo { animation: wt-piega .25s ease; }
@keyframes wt-piega { from { opacity: 0; transform: translateY(-4px); } }
#main-content .wt-colonna-fissa > .et_pb_text:has(> .et_pb_text_inner > .wt-piega:not([open])) { padding-bottom: 20px; }
#main-content .wt-colonna-fissa .wt-riquadro { margin: 0; padding: 20px 22px; }
#main-content .wt-colonna-fissa .wt-iban { font-size: 15.5px; }
#main-content .wt-colonna-fissa .et_pb_code { margin-bottom: 14px !important; }
.wt-due-colonne .wt-ms, .wt-due-colonne .wt-doc-sezione { max-width: none; }
.wt-ms legend small { display: block; margin-top: 6px; font-size: 13.5px; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--wt-tenue); line-height: 1.45; }
.wt-ms-facoltativo .wt-ms-campo > span { color: var(--wt-tenue); }

/* ---------------------------------------------- banner dei loghi (Collaborazioni)
   I marchi nascono per il fondo chiaro: fascia bianca, tessere uguali, logo contenuto. */
/* tessere a larghezza fissa per riga (7, 4 o 2): l'ultima riga, se incompleta, resta centrata */
.wt-loghi { display: flex; flex-wrap: wrap; justify-content: center; background: #fff; border-radius: var(--wt-raggio); overflow: hidden; margin: 6px 0 20px; }
.wt-logo { flex: 0 0 14.2857%; display: flex; align-items: center; justify-content: center; height: 128px; padding: 22px 26px; background: #fff; box-shadow: 0 0 0 .5px #e2e2de; transition: background .2s; }
.wt-logo img { max-width: 100%; max-height: 84px; width: auto; height: auto; object-fit: contain; border-radius: 0 !important; filter: grayscale(1); opacity: .8; transition: filter .25s, opacity .25s, transform .25s; }
.wt-logo:hover img, .wt-logo:focus-visible img { filter: none; opacity: 1; transform: scale(1.05); }
/* logo in negativo (Trentino Volley): tessera grigia, colori e blu societario solo al passaggio */
.wt-logo.scuro { background: #8c8c8c; }
.wt-logo.scuro img { max-height: 70px; opacity: .95; }
.wt-logo.scuro:hover, .wt-logo.scuro:focus-visible { background: #15233f; }
@media (hover: none) { .wt-logo img { filter: none; opacity: 1; } .wt-logo.scuro { background: #15233f; } }
@media (max-width: 1100px) { .wt-logo { flex-basis: 25%; } }
@media (max-width: 560px) { .wt-logo { flex-basis: 50%; height: 104px; padding: 16px; } }

/* banner cookie: stessi colori del sito */
.cky-btn.cky-btn-accept { background: var(--wt-accento-pieno) !important; border-color: var(--wt-accento-pieno) !important; }
.cky-btn.cky-btn-reject, .cky-btn.cky-btn-customize, .cky-btn.cky-btn-preferences { color: var(--wt-accento-scuro) !important; border-color: var(--wt-accento-scuro) !important; }

/* comunicati divisi per anno */
#main-content .wwftaa-com-anno { color: var(--wt-forte); font-size: clamp(24px, 2.6vw, 31px); font-weight: 600; line-height: 1.2; margin: 1.8em 0 .3em; padding: 0; display: flex; align-items: baseline; gap: 14px; }
#main-content .wwftaa-com-anno:first-child { margin-top: 0; }
#main-content .wwftaa-com-anno small { font-size: 14px; font-weight: 400; color: var(--wt-tenue); }
.wwftaa-com-indice { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 34px; padding: 0 !important; list-style: none !important; }
.wwftaa-com-indice li { margin: 0 !important; }
.wwftaa-com-indice a { display: block; padding: 6px 15px; border: 1px solid var(--wt-bordo); border-radius: 999px; font-size: 14px; font-weight: 600; color: var(--wt-forte) !important; text-decoration: none !important; transition: all .2s; }
.wwftaa-com-indice a:hover { background: var(--wt-forte); border-color: var(--wt-forte); color: var(--wt-inverso) !important; }
.wt-colonna-fissa .wt-nl { grid-template-columns: 1fr; }
.wt-colonna-fissa .wt-nl p:nth-child(3) { grid-column: auto; }
#main-content .et_pb_team_member_description a { color: var(--wt-testo); text-decoration: underline; text-decoration-color: var(--wt-accento); text-underline-offset: 3px; overflow-wrap: anywhere; font-size: 14px; }
#main-content .et_pb_team_member_description a:hover { color: var(--wt-accento); }
/* ritratti: in bianco e nero, a colori al passaggio (dove la foto originale e' a colori) */
#main-content .et_pb_team_member_image img { filter: grayscale(1); transition: filter .35s ease, transform .35s ease; }
#main-content .et_pb_team_member:hover .et_pb_team_member_image img { filter: none; transform: scale(1.03); }
@media (hover: none) { #main-content .et_pb_team_member_image img { filter: none; } }

.wt-documenti li a:not([data-formato])::before { content: "PDF"; }
.wt-documenti li a > span { flex: 1; min-width: 0; }
.wt-documenti li a em { display: block; font-style: normal; font-weight: 400; font-size: 14.5px; line-height: 1.5; color: var(--wt-tenue); margin-top: 3px; }
.wt-documenti li a::before { min-width: 38px; text-align: center; }

/* menu su telefono: sezioni chiuse, si aprono al tocco */
#main-header .et_mobile_menu li.menu-item-has-children > ul.sub-menu { display: none !important; padding-left: 0; }
#main-header .et_mobile_menu li.menu-item-has-children.wt-aperto > ul.sub-menu { display: block !important; }
.et_mobile_menu li.menu-item-has-children > a { position: relative; padding-right: 40px; font-weight: 700; color: #222 !important; }
.et_mobile_menu li.menu-item-has-children > a::after {
  content: ""; position: absolute; right: 8%; top: 50%; width: 8px; height: 8px; margin-top: -7px;
  border-right: 2px solid var(--wt-accento-pieno); border-bottom: 2px solid var(--wt-accento-pieno); transform: rotate(45deg); transition: transform .25s;
}
.et_mobile_menu li.menu-item-has-children.wt-aperto > a::after { transform: rotate(-135deg); margin-top: -2px; }
.et_mobile_menu li.menu-item-has-children > ul.sub-menu > li > a { padding-left: 9%; font-size: 15px; }
.et_mobile_menu > li > a { font-size: 14px; }
.et_mobile_menu { max-height: calc(100vh - 90px); overflow-y: auto; }

/* cartina delle Oasi */
.wt-mappa { margin: 0 0 10px; }
.wt-mappa-tela { width: 100%; border-radius: var(--wt-raggio); overflow: hidden; background: var(--wt-superficie); z-index: 0; }
.wt-mappa figcaption { margin-top: 8px; font-size: 13px; color: var(--wt-tenue); }
.wt-mappa .leaflet-container { font-family: inherit; }
.wt-mappa .leaflet-container a { color: #216a3e !important; text-decoration: none !important; }
.wt-mappa .leaflet-control-layers label { color: #222; font-size: 13px; margin: 2px 0; }
@media (max-width: 767px) { .wt-mappa-tela { height: 340px !important; } }

/* ------------------------------------------------ tappe del sentiero natura
   Schede lette dal telefono lungo il percorso: fondo chiaro, testo grande, contrasto alto. */
#main-content .wt-tappa, #main-content .wt-tappa .et_pb_text, #main-content .wt-tappa .et_pb_text p, #main-content .wt-tappa .et_pb_text li { color: #1c1c1a !important; }
#main-content .wt-tappa .et_pb_row { max-width: 760px; }
#main-content .wt-tappa .et_pb_text { font-size: 18px; line-height: 1.75; }
#main-content .wt-tappa h1 { color: #111; font-size: clamp(30px, 6vw, 46px); line-height: 1.1; font-weight: 600; letter-spacing: -.01em; padding: 0 0 18px; text-wrap: balance; }
#main-content .wt-tappa .et_pb_text h2, #main-content .wt-tappa .et_pb_text h3, #main-content .wt-tappa .et_pb_text h4 { color: #111 !important; font-size: 22px !important; margin: 1.5em 0 .4em; }
#main-content .wt-tappa .et_pb_text h2::after { display: none; }
#main-content .wt-tappa .et_pb_text a { color: var(--wt-accento-scuro) !important; }
#main-content .wt-tappa .et_pb_text strong { color: #000; }
.wt-tappa-briciole { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: #6b6b66; padding: 0 0 22px !important; }
.wt-tappa-briciole a { color: var(--wt-accento-scuro); text-decoration: none; font-weight: 700; }
.wt-tappa-etichetta { display: inline-block; background: var(--wt-accento-pieno); color: #fff; font-weight: 700; font-size: 14px; letter-spacing: .1em; text-transform: uppercase; padding: 5px 14px !important; border-radius: 999px; margin-bottom: 14px; }
.wt-tappa-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 34px; padding-top: 26px; border-top: 1px solid #deded8; }
.wt-tappa-nav a { display: block; padding: 14px 16px; border: 1px solid #d2d2cb; border-radius: var(--wt-raggio); color: #111; font-weight: 600; font-size: 15.5px; line-height: 1.3; text-decoration: none; transition: border-color .2s, background .2s; }
.wt-tappa-nav a:hover { border-color: var(--wt-accento-pieno); background: #f3f7f4; }
.wt-tappa-nav a small { display: block; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wt-accento-scuro); margin-bottom: 4px; }
.wt-tappa-nav a.succ { text-align: right; }
.wt-tappa-tutte { text-align: center; padding: 20px 0 0 !important; font-size: 15px; }
.wt-tappa-tutte a { color: var(--wt-accento-scuro); font-weight: 700; }
@media (max-width: 767px) { #main-content .wt-tappa .et_pb_row { width: 90%; } #main-content .wt-tappa .et_pb_text { font-size: 17.5px; } }

/* indice delle tappe nella pagina dell'Oasi (sezione verde scuro) */
.wt-tappe-titolo { color: var(--wt-forte); font-size: clamp(24px, 2.6vw, 31px); font-weight: 600; margin: 0 0 8px; padding: 0; }
.wt-tappe-sommario { color: var(--wt-tenue); font-size: 16px; line-height: 1.6; padding: 0 0 18px !important; }
.wt-tappe { list-style: none !important; margin: 0; padding: 0 !important; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
@media (max-width: 980px) { .wt-tappe { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .wt-tappe { grid-template-columns: 1fr; } }
.wt-tappe li { margin: 0 !important; }
.wt-tappe a { display: flex; flex-direction: column; gap: 4px; height: 100%; padding: 16px 18px; background: var(--wt-velo); border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); color: var(--wt-forte) !important; text-decoration: none !important; transition: border-color .2s, transform .2s; }
.wt-tappe a:hover { border-color: var(--wt-accento); transform: translateY(-2px); }
.wt-tappe a b { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--wt-accento-tenue); }
.wt-tappe a span { font-size: 16.5px; font-weight: 600; line-height: 1.3; }

/* ---------------------------------------------------------------- grafici
   Terna categorica verificata (daltonismo e contrasto) sul fondo #0f0f0f. Una sola serie usa la prima tinta. */
:root { --wt-serie-1: #3987e5; --wt-serie-2: #d95926; --wt-serie-3: #199e70; }
.wt-grafico { margin: 0 0 46px; max-width: 780px; }
/* due grafici uno dopo l'altro nello stesso modulo stanno fianco a fianco finche' c'e' spazio:
   il disegno si rifa' sulla larghezza vera della colonna (grafici.js), non si rimpicciolisce. */
@media (min-width: 981px) {
  :is(.et_pb_code_inner, .et_pb_text_inner):has(> .wt-grafico + .wt-grafico) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 44px; align-items: start; }
  :is(.et_pb_code_inner, .et_pb_text_inner):has(> .wt-grafico + .wt-grafico) > .wt-grafico { max-width: none; }
}
.wt-grafico figcaption strong { display: block; font-size: 21px; line-height: 1.25; font-weight: 600; color: var(--wt-forte); }
.wt-grafico figcaption span { display: block; margin-top: 5px; font-size: 14.5px; color: var(--wt-tenue); }
.wt-grafico-tela { position: relative; margin-top: 18px; }
.wt-grafico-tela svg { display: block; width: 100%; height: auto; overflow: visible; }
.wt-g-etichetta, .wt-g-valore { font-size: 13.5px; fill: var(--wt-testo); }
.wt-g-valore { font-weight: 600; font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1; }
.wt-g-asse { font-size: 12px; fill: var(--wt-tenue); font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1; }
.wt-g-griglia { stroke: var(--wt-griglia); stroke-width: 1; }
.wt-g-mirino { stroke: var(--wt-bordo-forte); stroke-width: 1; }
.wt-g-punto { stroke: var(--wt-fondo); stroke-width: 2; }
.wt-grafico-legenda { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-bottom: 10px; font-size: 13.5px; color: var(--wt-testo); }
.wt-grafico-legenda i, .wt-grafico-fumetto i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 7px; }
.wt-grafico-fumetto { position: absolute; z-index: 5; pointer-events: none; background: var(--wt-superficie-alta); border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); padding: 9px 12px; font-size: 13.5px; line-height: 1.5; color: var(--wt-testo); white-space: nowrap; box-shadow: 0 8px 24px rgba(0, 0, 0, .5); }
.wt-grafico-fumetto b { display: block; color: var(--wt-forte); }
.wt-grafico-fumetto span { display: block; }
.wt-grafico-fonte { margin: 12px 0 0; padding: 0 !important; font-size: 12.5px; line-height: 1.5; color: var(--wt-tenue); }
.wt-grafico-tabella { margin-top: 12px; font-size: 13.5px; }
.wt-grafico-tabella summary { cursor: pointer; color: var(--wt-tenue); font-weight: 600; }
.wt-grafico-tabella summary:hover { color: var(--wt-forte); }
.wt-grafico-tabella div { max-height: 320px; overflow: auto; margin-top: 10px; border: 1px solid var(--wt-bordo); border-radius: var(--wt-raggio); }
.wt-grafico-tabella table { width: 100%; border-collapse: collapse; margin: 0; border: 0; }
#main-content .wt-grafico-tabella th, #main-content .wt-grafico-tabella td { padding: 6px 12px !important; border: 0 !important; border-bottom: 1px solid var(--wt-bordo) !important; color: var(--wt-testo) !important; text-align: right; font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "lnum" 1, "tnum" 1; }
.wt-grafico-tabella th:first-child { text-align: left; font-weight: 600; }
.wt-grafico-tabella thead th { position: sticky; top: 0; background: var(--wt-superficie); color: var(--wt-forte); }
.wt-punti-filtri { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.wt-punti-filtri button { font: inherit; font-size: 13.5px; font-weight: 600; cursor: pointer; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--wt-bordo); background: transparent; color: var(--wt-testo); }
.wt-punti-filtri button[aria-pressed="true"] { background: var(--wt-forte); border-color: var(--wt-forte); color: var(--wt-inverso); }

/* ==================================================== tema chiaro e tema scuro
   Le pagine non portano piu' colori propri (li ha tolti `tema-colori.php`): fondo,
   testo e titoli vengono tutti da qui, percio' cambiare tema e' cambiare le variabili.
   Restano fuori dal tema, per scelta: le fasce di foto, i pulsanti verdi, il banner dei
   marchi e le pagine-tappa del sentiero, che sono chiare anche di notte. */
#main-content .et_pb_section:has(.wt-footer) { background-color: var(--wt-fondo-forte); }
#main-content .wt-fascia { background-color: var(--wt-superficie); }
#main-content .et_pb_text ul li, #main-content .et_pb_text ol li, #main-content .et_pb_text_inner { color: inherit; }
#main-content .et_pb_toggle h1, #main-content .et_pb_toggle h2, #main-content .et_pb_toggle h3 { color: var(--wt-forte); }

/* l'interruttore, ultima voce del menu (anche in quello del telefono) */
.wt-menu-tema { display: flex; align-items: center; }
#top-menu li.wt-menu-tema { padding-right: 0; }
.wt-tema-bottone {
  display: inline-flex; align-items: center; gap: 7px; font: inherit; font-size: 13px; font-weight: 600;
  letter-spacing: .04em; text-transform: uppercase; color: #222; background: transparent; cursor: pointer;
  border: 1px solid rgba(0, 0, 0, .2); border-radius: 999px; padding: 6px 13px; transition: border-color .2s, background .2s;
}
.wt-tema-bottone:hover { border-color: var(--wt-accento-pieno); background: rgba(0, 0, 0, .04); }
.wt-tema-bottone svg { width: 15px; height: 15px; display: block; }
.wt-tema-bottone .wt-tema-sole { display: none; }
html[data-wt-tema="chiaro"] .wt-tema-bottone .wt-tema-sole { display: block; }
html[data-wt-tema="chiaro"] .wt-tema-bottone .wt-tema-luna { display: none; }
.et_mobile_menu li.wt-menu-tema { padding: 12px 5%; }
.et_mobile_menu li.wt-menu-tema .wt-tema-bottone { font-size: 14px; }

/* ritocchi del solo tema chiaro */
html[data-wt-tema="chiaro"] .wt-loghi { border: 1px solid var(--wt-bordo); }
html[data-wt-tema="chiaro"] .wt-logo { box-shadow: 0 0 0 .5px #e2e2de; }
html[data-wt-tema="chiaro"] #main-content .wpcf7 input[type="text"], html[data-wt-tema="chiaro"] #main-content .wpcf7 input[type="email"],
html[data-wt-tema="chiaro"] #main-content .wpcf7 input[type="tel"], html[data-wt-tema="chiaro"] #main-content .wpcf7 input[type="date"],
html[data-wt-tema="chiaro"] #main-content .wpcf7 input[type="number"], html[data-wt-tema="chiaro"] #main-content .wpcf7 select,
html[data-wt-tema="chiaro"] #main-content .wpcf7 textarea, html[data-wt-tema="chiaro"] .wt-ms-campo input { background: #fff; border-color: var(--wt-bordo) !important; }
html[data-wt-tema="chiaro"] .wt-grafico-fumetto { box-shadow: 0 8px 24px rgba(0, 0, 0, .18); border-color: var(--wt-bordo); }
html[data-wt-tema="chiaro"] #main-content .et_pb_section.wt-tappa { background-color: #fff; }
/* i grafici in chiaro: la prima tinta della terna regge il contrasto, le altre due si scuriscono */
html[data-wt-tema="chiaro"] { --wt-serie-1: #1f6fd0; --wt-serie-2: #c04715; --wt-serie-3: #14795a; }
html[data-wt-tema="chiaro"] .wt-mappa-tela { background: #e9e9e4; }
