/*
Theme Name:   InAgenda
Description:  Tema Child per il tema Hello Elementor, utilizzato per il sito web inagenda.it.
Author:       Dynamic Mind
Template:     hello-elementor
Version:      1.0.0
Text Domain:  hello-elementor-child
*/
/* ===== WPForms Register styling (InAgenda) ===== */
/* ===== WPForms Register styling (InAgenda) ===== */
/* Keep Elementor header always on top when sticky */
.elementor-location-header{
  position: relative;
  z-index: 999999;
}

/* we forced z-index also in sticky modality*/
.elementor-location-header .elementor-sticky--effects{
  z-index: 999999 !important;
}
/* WP Admin Bar sempre sopra a tutto */
#wpadminbar{
  position: fixed;
  z-index: 1000000 !important;
}

/* ===== WPForms Register styling (InAgenda) ===== */
:root{
  --dm-blue:#004887;
  --dm-gray-bg:#f4f6f9;
  --dm-gray-text:#6b7280;
  --dm-gray-border:#d1d5db;
}

/* ---------- Spacing ---------- */
.wpforms-form .wpforms-field{
  margin-bottom: 18px !important;
}
.wpforms-form .wpforms-field:last-child{
  margin-bottom: 0 !important;
}

/* ---------- Labels (blue + a bit detached) ---------- */
.wpforms-form .wpforms-field-label{
  display:block !important;
  color: var(--dm-blue) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  margin: 0 0 12px 0 !important; /* space between label and field */
}
.wpforms-form .wpforms-required-label{
  color: var(--dm-blue) !important;
}

/* ---------- Inputs base look ---------- */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form textarea,
.wpforms-form select{
  border: 1px solid var(--dm-border) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  outline: none !important;
  color: var(--dm-blue) !important;
}

/* Placeholder in blue */
.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder{
  color: var(--dm-blue) !important;
  opacity: .75 !important;
}
.wpforms-form input::-webkit-input-placeholder,
.wpforms-form textarea::-webkit-input-placeholder{
  color: var(--dm-blue) !important;
  opacity: .75 !important;
}
.wpforms-form input:-ms-input-placeholder,
.wpforms-form textarea:-ms-input-placeholder{
  color: var(--dm-blue) !important;
  opacity: .75 !important;
}

/* Kill theme hover glow */
.wpforms-form input[type="text"]:hover,
.wpforms-form input[type="email"]:hover,
.wpforms-form input[type="tel"]:hover,
.wpforms-form textarea:hover,
.wpforms-form select:hover{
  box-shadow:none !important;
}

/* Focus ring in blue (instead of theme grey) */
.wpforms-form input[type="text"]:focus,
.wpforms-form input[type="email"]:focus,
.wpforms-form input[type="tel"]:focus,
.wpforms-form textarea:focus,
.wpforms-form select:focus{
  border-color: var(--dm-blue) !important;
  box-shadow: 0 0 0 3px rgba(0,72,135,.15) !important;
  outline: none !important;
}

/* ---------- Icons system (add classes in WPForms: has-icon + icon-*) ---------- */
.wpforms-field.has-icon{
  position: relative !important;
}

.wpforms-field.has-icon input[type="text"],
.wpforms-field.has-icon input[type="email"],
.wpforms-field.has-icon input[type="tel"],
.wpforms-field.has-icon textarea,
.wpforms-field.has-icon select{
  padding-left: 50px !important; /* room for icon */
}

/* Icon container */
.wpforms-field.has-icon::before{
  content: "" !important;
  position: absolute !important;
  left: 16px !important;

  /* centered within the input area (label sits above) */
  top: 44px !important;
  transform: none !important;

  width: 18px !important;
  height: 18px !important;
  background-size: 18px 18px !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  pointer-events: none !important;
  z-index: 9999 !important;
}

/* Textarea icon aligned to textarea box */
.wpforms-field.has-icon.wpforms-field-textarea::before{
  top: 44px !important;
  transform: none !important;
}

/* Email */
.wpforms-field.has-icon.icon-email::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm0 4-8 5L4 8V6l8 5 8-5v2Z'/%3E%3C/svg%3E") !important;
}

/* User */
.wpforms-field.has-icon.icon-user::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4Zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4Z'/%3E%3C/svg%3E") !important;
}

/* Phone */
.wpforms-field.has-icon.icon-phone::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.07 21 3 13.93 3 5c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2Z'/%3E%3C/svg%3E") !important;
}

/* Pin */
.wpforms-field.has-icon.icon-pin::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E") !important;
}

/* Category dot */
.wpforms-field.has-icon.icon-dot::before{
  background-image: none !important;
  content: "" !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 50% !important;
  background: var(--dm-blue) !important;
  left: 19px !important;
}

/* Info circle */
.wpforms-field.has-icon.icon-info::before{
  background-image: none !important;
  content: "i" !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: var(--dm-blue) !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

/* ---------- Radio/Checkbox: remove bullets + blue text ---------- */
.wpforms-form .wpforms-field-radio ul,
.wpforms-form .wpforms-field-checkbox ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
.wpforms-form .wpforms-field-radio li,
.wpforms-form .wpforms-field-checkbox li{
  margin:0 !important;
  padding:0 !important;
}

.wpforms-form .wpforms-field-radio label,
.wpforms-form .wpforms-field-checkbox label{
  color: var(--dm-blue) !important;
}

/* ---------- Terms field cleanup ---------- */
.wpforms-form fieldset,
.wpforms-form legend{
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
}
.wpforms-field-checkbox input[type="checkbox"]{
  margin-right: 8px !important;
  transform: translateY(1px);
}

/* ---------- Links ---------- */
.wpforms-form a{
  color: var(--dm-blue) !important;
}

/* ---------- Button (outline blue, mockup) ---------- */
.wpforms-form .wpforms-submit-container button.wpforms-submit,
.wpforms-form .wpforms-submit-container input.wpforms-submit{
  background:#fff !important;
  color: var(--dm-blue) !important;
  border:1px solid var(--dm-blue) !important;
  border-radius:2px !important;
  padding:10px 18px !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
  letter-spacing:.2px !important;
  box-shadow:none !important;
  height:auto !important;
  line-height:normal !important;
}
.wpforms-form .wpforms-submit-container button.wpforms-submit:hover,
.wpforms-form .wpforms-submit-container input.wpforms-submit:hover{
  background:var(--dm-blue) !important;
  color:#FFF!important;
  border-color: var(--dm-blue) !important;
  box-shadow:none !important;
}
.wpforms-form .wpforms-submit-container{
  margin-top:16px !important;
}
/* =========================================================
   tec: set palette (removes purple coming from tec css vars)
   ========================================================= */

.tribe-events,
.tribe-common {
  --tec-color-accent-primary: #004887 !important;
  --tec-color-accent-primary-hover: #004887 !important;
  --tec-color-accent-primary-active: #004887 !important;
  --tec-color-link-primary: #004887 !important;
  --tec-color-icon-active: #004887 !important;

  --tec-color-background: #ffffff !important;
  --tec-color-text-primary: #111111 !important;
  --tec-color-text-secondary: #333333 !important;
}

/* =========================================================
   elementor kit: override purple styles inside tec area
   (beats .elementor-kit-xx button rules)
   ========================================================= */

[class*="elementor-kit-"] .tribe-events button,
[class*="elementor-kit-"] .tribe-common button,
[class*="elementor-kit-"] .tribe-events a.tribe-common-c-btn,
[class*="elementor-kit-"] .tribe-common a.tribe-common-c-btn,
[class*="elementor-kit-"] .tribe-events .tribe-common-c-btn,
[class*="elementor-kit-"] .tribe-common .tribe-common-c-btn {
  background-color: #fff !important;
  background-image: none !important;
  color: inherit !important;
  box-shadow: none !important;
  outline: none !important;
  text-transform: none !important;
}

/* =========================================================
   datepicker: white background + no purple flash
   ========================================================= */

.tribe-events .datepicker,
.tribe-common .datepicker,
.tribe-events .datepicker table,
.tribe-common .datepicker table,
.tribe-events .datepicker-days,
.tribe-common .datepicker-days {
  background: #fff !important;
}

.tribe-events .datepicker button,
.tribe-common .datepicker button,
.tribe-events .datepicker .day,
.tribe-common .datepicker .day,
.tribe-events .datepicker .prev,
.tribe-common .datepicker .prev,
.tribe-events .datepicker .next,
.tribe-common .datepicker .next,
.tribe-events .datepicker .datepicker-switch,
.tribe-common .datepicker .datepicker-switch {
  background: #fff !important;
  color: inherit !important;
  border-color: #ddd !important;
  text-transform: none !important;
  box-shadow: none !important;
}

.tribe-events .datepicker button:hover,
.tribe-common .datepicker button:hover {
  background: #f5f5f5 !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
}

/* top bar datepicker trigger */
.tribe-events button.tribe-events-c-top-bar__datepicker-button,
.tribe-common button.tribe-events-c-top-bar__datepicker-button {
  background: #fff !important;
}

/* remove purple bg on "oggi/ora" label */
.tribe-events .tribe-events-c-top-bar__datepicker-mobile,
.tribe-common .tribe-events-c-top-bar__datepicker-mobile,
.tribe-events .tribe-events-c-top-bar__datepicker-desktop,
.tribe-common .tribe-events-c-top-bar__datepicker-desktop {
  background: transparent !important;
}

/* =========================================================
   filter toggles: remove pill border-radius + blue label on hover/open
   ========================================================= */

.tribe-events .tribe-filter-bar-c-filter__toggle,
.tribe-common .tribe-filter-bar-c-filter__toggle,
.tribe-events .tribe-filter-bar-c-filter__toggle:hover,
.tribe-common .tribe-filter-bar-c-filter__toggle:hover,
.tribe-events .tribe-filter-bar-c-filter__toggle[aria-expanded="true"],
.tribe-common .tribe-filter-bar-c-filter__toggle[aria-expanded="true"] {
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.tribe-events .tribe-filter-bar-c-filter__toggle::before,
.tribe-common .tribe-filter-bar-c-filter__toggle::before,
.tribe-events .tribe-filter-bar-c-filter__toggle::after,
.tribe-common .tribe-filter-bar-c-filter__toggle::after,
.tribe-events .tribe-filter-bar-c-filter__toggle:hover::before,
.tribe-common .tribe-filter-bar-c-filter__toggle:hover::before,
.tribe-events .tribe-filter-bar-c-filter__toggle:hover::after,
.tribe-common .tribe-filter-bar-c-filter__toggle:hover::after,
.tribe-events .tribe-filter-bar-c-filter__toggle[aria-expanded="true"]::before,
.tribe-common .tribe-filter-bar-c-filter__toggle[aria-expanded="true"]::before,
.tribe-events .tribe-filter-bar-c-filter__toggle[aria-expanded="true"]::after,
.tribe-common .tribe-filter-bar-c-filter__toggle[aria-expanded="true"]::after {
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  border: none !important;
}

.tribe-events .tribe-filter-bar-c-filter__toggle:hover .tribe-filter-bar-c-filter__toggle-label,
.tribe-common .tribe-filter-bar-c-filter__toggle:hover .tribe-filter-bar-c-filter__toggle-label,
.tribe-events .tribe-filter-bar-c-filter__toggle[aria-expanded="true"] .tribe-filter-bar-c-filter__toggle-label,
.tribe-common .tribe-filter-bar-c-filter__toggle[aria-expanded="true"] .tribe-filter-bar-c-filter__toggle-label {
  color: #004887 !important;
}

/* =========================================================
   select2: remove rounding + remove focus rectangle + blue text on hover/selected
   ========================================================= */

.tribe-filter-bar .select2-selection__choice,
.tribe-filter-bar .select2-selection__choice__remove {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.tribe-filter-bar .select2-results__option--highlighted,
.tribe-filter-bar .select2-results__option--highlighted[aria-selected],
.tribe-filter-bar .select2-results__option:hover {
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #004887 !important;
}

.tribe-filter-bar .select2-results__option[aria-selected="true"],
.tribe-filter-bar .select2-results__option:active {
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #004887 !important;
}

.tribe-filter-bar .select2-results__option:focus,
.tribe-filter-bar .select2-results__option:focus-visible,
.tribe-filter-bar .select2-results__option:active {
  outline: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
}

/* remove button (x) in selected pill: blue ring + blue x */
.tribe-filter-bar .tribe-filter-bar-c-pill__remove-button,
.tribe-filter-bar .tribe-filter-bar-c-pill__remove-button:hover,
.tribe-filter-bar .tribe-filter-bar-c-pill__remove-button:focus,
.tribe-filter-bar .tribe-filter-bar-c-pill__remove-button:focus-visible {
  background: transparent !important;
  border: 2px solid #004887 !important;
  border-radius: 50% !important;
  outline: none !important;
  box-shadow: none !important;
}

.tribe-filter-bar .tribe-filter-bar-c-pill__remove-button-icon path,
.tribe-filter-bar .tribe-filter-bar-c-pill__remove-button path {
  stroke: #004887 !important;
}










/* =========================================================
   view selector: remove underline/indicator line
   ========================================================= */

.tribe-events .tribe-events-c-view-selector__list-item--active,
.tribe-common .tribe-events-c-view-selector__list-item--active,
.tribe-events .tribe-events-c-view-selector__list-item:hover,
.tribe-common .tribe-events-c-view-selector__list-item:hover {
  border-bottom: none !important;
}

.tribe-events .tribe-events-c-view-selector__list-item-link,
.tribe-common .tribe-events-c-view-selector__list-item-link,
.tribe-events .tribe-events-c-view-selector__list-item-link:hover,
.tribe-common .tribe-events-c-view-selector__list-item-link:hover {
  text-decoration: none !important;
  box-shadow: none !important;
}

.tribe-events .tribe-events-c-view-selector__list-item-link::after,
.tribe-common .tribe-events-c-view-selector__list-item-link::after,
.tribe-events .tribe-events-c-view-selector__list-item-link::before,
.tribe-common .tribe-events-c-view-selector__list-item-link::before,
.tribe-events .tribe-events-c-view-selector__list-item--active::after,
.tribe-common .tribe-events-c-view-selector__list-item--active::after,
.tribe-events .tribe-events-c-view-selector__list-item--active::before,
.tribe-common .tribe-events-c-view-selector__list-item--active::before {
  content: none !important;
  display: none !important;
}

/* =========================================================
   card viola: force white backgrounds on tec cards + remove purple bleed
   ========================================================= */

.tribe-events .tribe-events-calendar-list__event,
.tribe-events .tribe-events-calendar-list__event-wrapper,
.tribe-events .tribe-events-calendar-list__event-details,
.tribe-events .tribe-events-calendar-list__event-featured-image-wrapper,
.tribe-common .tribe-common-c-card,
.tribe-common .tribe-common-c-card__content,
.tribe-common .tribe-common-c-card__header,
.tribe-common .tribe-common-c-card__body {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

/* featured cards sometimes get colored bg */
.tribe-events .tribe-events-calendar-list__event--featured,
.tribe-events .tribe-common-c-card--featured,
.tribe-events .tribe-events-calendar-list__event--featured .tribe-common-c-card {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

/* search button cerca evento */ [class*="elementor-kit-"] .tribe-events .tribe-events-calendar-list__event .tribe-common-c-btn, [class*="elementor-kit-"] .tribe-common .tribe-common-c-btn, [class*="elementor-kit-"] .tribe-events .tribe-events-calendar-list__event a.tribe-common-c-btn, [class*="elementor-kit-"] .tribe-common a.tribe-common-c-btn{ background: #fff !important; color: #004887 !important; border-color: #004887 !important; }

/* hover: blue border + blue text */ [class*="elementor-kit-"] .tribe-events .tribe-events-calendar-list__event .tribe-common-c-btn:hover, [class*="elementor-kit-"] .tribe-common .tribe-common-c-btn:hover, [class*="elementor-kit-"] .tribe-events .tribe-events-calendar-list__event a.tribe-common-c-btn:hover, [class*="elementor-kit-"] .tribe-common a.tribe-common-c-btn:hover { background:#004887!important; color: #fff !important;  }




/* icons: avoid purple via fill/stroke */
.tribe-events svg path,
.tribe-common svg path {
  fill: currentColor !important;
  stroke: currentColor !important;
}
/* Tribe Filter Bar: reset/clear icon = white circle with blue border + blue X */
.tribe-filter-bar .tribe-filter-bar-c-clear-button__reset-icon{
  background: #fff !important;
  border: 1px solid #004887 !important;
  border-radius: 999px !important;
  padding: 2px !important;          /* keeps the stroke from touching the border */
  width: 18px !important;
  height: 18px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Make the X blue (SVG uses stroke) */
.tribe-filter-bar .tribe-filter-bar-c-clear-button__reset-icon path{
  stroke: #004887 !important;
}

/* Safety: if any part uses fill instead of stroke */
.tribe-filter-bar .tribe-filter-bar-c-clear-button__reset-icon svg,
.tribe-filter-bar .tribe-filter-bar-c-clear-button__reset-icon path{
  fill: none !important;
}

/*  "Iscriviti al calendario"  */

/* wrapper (the one that creates the inner frame) */
[class*="elementor-kit-"] .tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* inner button (default state) */
[class*="elementor-kit-"] .tribe-events button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear{
  background: #fff !important;
  border: 1px solid #004887 !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  box-shadow: none !important;
  outline: none !important;

  color: #004887 !important;         /* text color */
}

/* make sure ALL text inside stays readable */
[class*="elementor-kit-"] .tribe-events button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear *{
  color: inherit !important;
}

/* hover/focus: filled blue + white text */
[class*="elementor-kit-"] .tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:hover
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear,
[class*="elementor-kit-"] .tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:focus-within
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear{
  background: #004887 !important;
  border-color: #004887 !important;
  color: #fff !important;
}

/* keep children white on hover too */
[class*="elementor-kit-"] .tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:hover
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear *,
[class*="elementor-kit-"] .tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:focus-within
button.tribe-events-c-subscribe-dropdown__button-text.tribe-common-c-btn--clear *{
  color: #fff !important;
}

/* remove caret icon completely */
.tribe-events .tribe-events-c-subscribe-dropdown__button-icon,
.tribe-events .tribe-common-c-svgicon--caret-down{
  display: none !important;
}



/* Wrapper creates the inner rounded border -> normalize it */
.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border{
  background: #f4f6f9 !important;
  border: 1px solid #d1d5db !important;
  border-radius: 6px !important;
  padding: 0 !important;           /* removes the "inner frame" spacing */
  box-shadow: none !important;
}

/* Actual button inside wrapper */
.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border > button{
  background: transparent !important;
  border: 0 !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  color: #6b7280 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Hover/focus state (blue outline) */
.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border:hover,
.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border:focus-within{
  background: #fff !important;
  border-color: #004887 !important;
  box-shadow: 0 0 0 3px rgba(0,72,135,.12) !important;
}

.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border:hover > button,
.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border:focus-within > button{
  color: #004887 !important;
}

/* hide caret icon completely */
.tribe-events .tribe-events-c-subscribe-dropdown__button-icon,
.tribe-events .tribe-common-c-svgicon--caret-down{
  display: none !important;
}

/* keep button text centered after removing the icon */
.tribe-events .tribe-events-c-subscribe-dropdown__button.tribe-common-c-btn-border > button{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
 gap: 0 !important;
}
/* Base (neutral like other buttons) */
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new,
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new:visited{
  background: var(--dm-blue) !important;
  color: white !important;
  border: 1px solid var(--dm-gray-border) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  text-decoration: none !important;

  padding: 10px 14px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

/* Hover */
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new:hover{
  background: #fff !important;
  color: var(--dm-blue) !important;
  border-color: var(--dm-blue) !important;
  box-shadow: none !important;
}

/* Keyboard focus (same ring style) */
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new:focus,
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new:focus-visible{
  background: #fff !important;
  color: var(--dm-blue) !important;
  border-color: var(--dm-blue) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,72,135,.12) !important;
}

/* Remove any inner pseudo styles TEC may add */
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new::before,
.tribe-community-events-content a.tribe-button.tribe-button-primary.add-new::after{
  content: none !important;
}
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming:visited,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past:visited{
  background: var(--dm-gray-bg) !important;
  color: var(--dm-gray-text) !important;
  border: 1px solid var(--dm-gray-border) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  text-decoration: none !important;

  padding: 10px 14px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming:hover,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past:hover{
  background: #fff !important;
  color: var(--dm-blue) !important;
  border-color: var(--dm-blue) !important;
  box-shadow: none !important;
}

.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming:focus,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past:focus,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming:focus-visible,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past:focus-visible{
  background: #fff !important;
  color: var(--dm-blue) !important;
  border-color: var(--dm-blue) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,72,135,.12) !important;
}

/* remove possible extra pseudo styles */
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming::before,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-upcoming::after,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past::before,
.tribe-community-events-content a.tribe-button.tribe-button-small.tribe-past::after{
  content: none !important;
}

/* Target the 5 types you showed (a / button / label used as button) */
.tribe-button.tribe-button-secondary,
.tribe-button.tribe-button-primary,
.tribe-button.tribe-button-sm,
a.tribe-button,
button.tribe-button,
label.choose-file.tribe-button,
button#tribe-add-recurrence.tribe-button,
button#tribe-add-exclusion.button,
button.tribe-configure-virtual-button.button,
a.tribe-button.tribe-button-primary.add-new{
  background: #fff !important;
  background-image: none !important;
  color: var(--dm-blue) !important;
  border: 1px solid var(--dm-blue) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  text-decoration: none !important;

  padding: 10px 14px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: .2px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  outline: none !important;
}

/* Hover + focus = solid blue */
.tribe-button.tribe-button-secondary:hover,
.tribe-button.tribe-button-primary:hover,
.tribe-button.tribe-button-sm:hover,
a.tribe-button:hover,
button.tribe-button:hover,
label.choose-file.tribe-button:hover,
button#tribe-add-recurrence.tribe-button:hover,
button#tribe-add-exclusion.button:hover,
button.tribe-configure-virtual-button.button:hover,
a.tribe-button.tribe-button-primary.add-new:hover,
.tribe-button.tribe-button-secondary:focus,
.tribe-button.tribe-button-primary:focus,
.tribe-button.tribe-button-sm:focus,
a.tribe-button:focus,
button.tribe-button:focus,
label.choose-file.tribe-button:focus,
button#tribe-add-recurrence.tribe-button:focus,
button#tribe-add-exclusion.button:focus,
button.tribe-configure-virtual-button.button:focus,
a.tribe-button.tribe-button-primary.add-new:focus,
.tribe-button.tribe-button-secondary:focus-visible,
.tribe-button.tribe-button-primary:focus-visible,
.tribe-button.tribe-button-sm:focus-visible,
a.tribe-button:focus-visible,
button.tribe-button:focus-visible,
label.choose-file.tribe-button:focus-visible,
button#tribe-add-recurrence.tribe-button:focus-visible,
button#tribe-add-exclusion.button:focus-visible,
button.tribe-configure-virtual-button.button:focus-visible,
a.tribe-button.tribe-button-primary.add-new:focus-visible{
  background: var(--dm-blue) !important;
  color: #fff !important;
  border-color: var(--dm-blue) !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Remove the "inner frame" effect some wrappers add */
.tribe-common-c-btn-border{
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  border-radius: 4px !important;
}

/* If the button contains SVG icons, make them follow text color */
.tribe-button svg,
.tribe-button svg path,
button.tribe-button svg,
button.tribe-button svg path{
  fill: currentColor !important;
  stroke: currentColor !important;
}
/* ===== jQuery UI dialog buttons (Elimina / Annulla) ===== */
.ui-dialog .ui-dialog-buttonset .button.button-secondary,
.ui-dialog .ui-dialog-buttonset button.button.button-secondary{
  background:#fff !important;
  color:#004887 !important;
  border:1px solid #004887 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-transform:uppercase !important;
  font-weight:600 !important;
  letter-spacing:.2px !important;
  padding:10px 14px !important;
  line-height:1 !important;
}

/* "Elimina" stays red, but same shape/behaviour */
.ui-dialog .ui-dialog-buttonset .button.button-red,
.ui-dialog .ui-dialog-buttonset button.button.button-red{
  background:#fff !important;
  color:#dc2626 !important;
  border:1px solid #dc2626 !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-transform:uppercase !important;
  font-weight:600 !important;
  letter-spacing:.2px !important;
  padding:10px 14px !important;
  line-height:1 !important;
}

/* Hover/focus */
.ui-dialog .ui-dialog-buttonset .button.button-secondary:hover,
.ui-dialog .ui-dialog-buttonset .button.button-secondary:focus,
.ui-dialog .ui-dialog-buttonset .button.button-secondary:focus-visible,
.ui-dialog .ui-dialog-buttonset button.button.button-secondary:hover,
.ui-dialog .ui-dialog-buttonset button.button.button-secondary:focus,
.ui-dialog .ui-dialog-buttonset button.button.button-secondary:focus-visible{
  background:#004887 !important;
  color:#fff !important;
  border-color:#004887 !important;
  box-shadow:none !important;
  outline:none !important;
}

.ui-dialog .ui-dialog-buttonset .button.button-red:hover,
.ui-dialog .ui-dialog-buttonset .button.button-red:focus,
.ui-dialog .ui-dialog-buttonset .button.button-red:focus-visible,
.ui-dialog .ui-dialog-buttonset button.button.button-red:hover,
.ui-dialog .ui-dialog-buttonset button.button.button-red:focus,
.ui-dialog .ui-dialog-buttonset button.button.button-red:focus-visible{
  background:#dc2626 !important;
  color:#fff !important;
  border-color:#dc2626 !important;
  box-shadow:none !important;
  outline:none !important;
}

/* Hover/focus color = brand blue */
.tribe-events a:hover,
.tribe-common a:hover,
.tribe-events a:focus,
.tribe-common a:focus,
.tribe-events a:focus-visible,
.tribe-common a:focus-visible{
  color: #004887 !important;
}

/*  event title links hover blue non underline */
.tribe-events .tribe-events-calendar-list__event-title a {
  border-bottom: 0 !important;
  box-shadow: none !important;

}
.tribe-events .tribe-events-calendar-list__event-title a:hover,
.tribe-events .tribe-events-calendar-list__event-title a:focus,
.tribe-events .tribe-events-calendar-list__event-title a:focus-visible{
  color: #004887 !important;
	text-decoration: none !important;
}

/* Subscribe dropdown wrapper (the real "button frame")
   Class: .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button*/

/* DEFAULT: white bg, blue border, blue text */
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button{
  background: #fff !important;
  border: 1px solid #004887 !important;
  border-radius: 6px !important;
  padding: 0 !important;          /* removes inner border/frame effect */
  box-shadow: none !important;
}

/* the clickable button inside */
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button
button.tribe-events-c-subscribe-dropdown__button-text{
  background: transparent !important;
  border: 0 !important;
  color: #004887 !important;
  padding: 10px 14px !important;
  line-height: 1 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* HOVER/FOCUS: solid blue bg, white text */
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:hover,
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:focus-within{
  background: #004887 !important;
  border-color: #004887 !important;
  box-shadow: none !important;
}

.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:hover
button.tribe-events-c-subscribe-dropdown__button-text,
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button:focus-within
button.tribe-events-c-subscribe-dropdown__button-text{
  color: #fff !important;
}

/* icons (export + caret) follow current text color */
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button svg,
.tribe-events .tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button svg path{
  stroke: currentColor !important;
  fill: none !important;
}
/* venue link always brand blue */
.tribe-events .tribe-events-meta-list .tribe-venue a,
.tribe-events .tribe-events-meta-list .tribe-venue a:visited,
.tribe-events .tribe-events-meta-list .tribe-venue a:active,
.tribe-events .tribe-events-meta-list .tribe-venue a:hover,
.tribe-events .tribe-events-meta-list .tribe-venue a:focus,
.tribe-events .tribe-events-meta-list .tribe-venue a:focus-visible{
  color: #004887 !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Elementor Login: rimuove icone e spazio a sinistra, mantiene input bianchi */

/* Niente icone (background-image) */
html body .elementor-widget-login input[name="log"],
html body .elementor-widget-login input[name="pwd"]{
  background-image: none !important;
}

/* Niente spazio per icona */
html body .elementor-widget-login .elementor-field-textual{
  padding-left: 14px !important; 
}

/* Input bianchi (anche se tema mette gradient) */
html body .elementor-widget-login input[type="text"],
html body .elementor-widget-login input[type="password"],
html body .elementor-widget-login .elementor-field{
  background: #fff !important;
  background-image: none !important;
}

/* Chrome autofill: elimina azzurro/giallo */
html body .elementor-widget-login input[type="text"]:-webkit-autofill,
html body .elementor-widget-login input[type="password"]:-webkit-autofill{
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color: inherit !important;
  background: #fff !important;
}


/* Spazio tra "Hai perso la password?" e "Registrazione" */
.elementor-widget-login .elementor-lost-password{
  margin-right: 5px;
}
.elementor-widget-login .elementor-register{
  margin-left: 5px;
}
/* Hover blu su "Hai perso la password?" e "Registrazione" */
.elementor-widget-login .elementor-lost-password:hover,
.elementor-widget-login .elementor-register:hover{
  color: #004887 !important;
}


/* Box Tribe ACCEDI - bordo form login (bordo + ombra 0 0 20px 0 + radius 4) */
.tribe-community-events,
.tribe-community-events-content{
  border: 1px solid #fff !important;
  border-radius: 4px !important;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.0588235294) !important;
}
/* Bottone ACCEDI - form login (tribe community events) */ form#tribe_events_community_login input#wp-submit.button.button-primary{ border-radius: 4px !important; border: 2px solid var(--dm-blue, #004887) !important; background-color: #ffffff !important; color: var(--dm-blue, #004887) !important; font-weight: 700 !important; box-shadow: none !important; text-shadow: none !important; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }

/* Hover / Focus: pieno blu, testo bianco */ form#tribe_events_community_login input#wp-submit.button.button-primary:hover, form#tribe_events_community_login input#wp-submit.button.button-primary:focus, form#tribe_events_community_login input#wp-submit.button.button-primary:focus-visible{ background-color: var(--dm-blue, #004887) !important; color: #ffffff !important; border-color: var(--dm-blue, #004887) !important; outline: none !important; } 

/* Active (click) */ form#tribe_events_community_login input#wp-submit.button.button-primary:active{ background-color: var(--dm-blue, #004887) !important; color: #ffffff !important; border-color: var(--dm-blue, #004887) !important; }



/* Community Events login: label sopra + campi sotto + input bianchi */
html body form#tribe_events_community_login p.login-username label,
html body form#tribe_events_community_login p.login-password label{
  display: block !important;
  margin: 0 0 6px 0 !important;
}

html body form#tribe_events_community_login p.login-username input#user_login,
html body form#tribe_events_community_login p.login-password input#user_pass{
  display: block !important;
  width: 100% !important;
  background-color: #fff !important;
}

/* Fix Chrome autofill: rimuove lo sfondo colorato (giallo/azzurro) applicato automaticamente e forza il campo a restare bianco, mantenendo il colore testo normale */
html body form#tribe_events_community_login input#user_login:-webkit-autofill,
html body form#tribe_events_community_login input#user_pass:-webkit-autofill{
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color: inherit !important;
}
/* Tribe Community Events: link grigi normale, blu all’hover */
a.tribe-ce-lostpassword,
.tribe-ce-register a{
  color: #6b7280 !important; /* grigio */
}

a.tribe-ce-lostpassword:hover,
.tribe-ce-register a:hover{
  color: #004887 !important; /* blu */
}
/* Barretta tra "Registrati" e "Non ricordi la password?" (Tribe) */
a.tribe-ce-lostpassword::before{
  content: " | ";
  color: #6b7280;
  margin: 0 6px;
}
/* Bottone "Salva Evento" (Tribe Community Events) - stile standard DM */
input#post.tribe-button.submit.events-community-submit{
  border-radius: 4px !important;
  border: 2px solid var(--dm-blue, #004887) !important;

  background: #fff !important;
  background-image: none !important;

  color: var(--dm-blue, #004887) !important;
  font-weight: 700 !important;

  box-shadow: none !important;
  text-shadow: none !important;

  -webkit-appearance: none !important;
  appearance: none !important;

  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

/* Hover / Focus / Active */
input#post.tribe-button.submit.events-community-submit:hover,
input#post.tribe-button.submit.events-community-submit:focus,
input#post.tribe-button.submit.events-community-submit:focus-visible,
input#post.tribe-button.submit.events-community-submit:active{
  background: var(--dm-blue, #004887) !important;
  background-image: none !important;

  color: #fff !important;
  border-color: var(--dm-blue, #004887) !important;
  outline: none !important;
}
/* Box form Tribe: bordo + ombra (0 0 20px 0) stile Elementor */
#tribe-community-events{
  border: 1px solid #fff !important;
  border-radius: 4px !important;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.0588235294) !important;
}

/* wrapper del bottone */
li.wpuf-submit {
    list-style: none !important;
    margin: 18px 0 0 0 !important;
    padding: 0 !important;
}

/* bottone submit wp user frontend */
li.wpuf-submit input.wpuf-submit-button,
li.wpuf-submit input[type="submit"].wpuf-submit-button,
form li.wpuf-submit input[name="submit"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    background: #ffffff !important;
    background-image: none !important;
    color: #0a4f8f !important;
    border: 2px solid #0a4f8f !important;
    border-radius: 4px !important;
    padding: 14px 28px !important;
    min-height: 58px !important;
    line-height: 1 !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    cursor: pointer !important;
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    float: none !important;
    transition: all 0.2s ease !important;
}

/* hover */
li.wpuf-submit input.wpuf-submit-button:hover,
li.wpuf-submit input[type="submit"].wpuf-submit-button:hover,
form li.wpuf-submit input[name="submit"]:hover {
    background: #0a4f8f !important;
    background-image: none !important;
    color: #ffffff !important;
    border-color: #0a4f8f !important;
    box-shadow: none !important;
}

/* focus */
li.wpuf-submit input.wpuf-submit-button:focus,
li.wpuf-submit input[type="submit"].wpuf-submit-button:focus,
form li.wpuf-submit input[name="submit"]:focus {
    background: #0a4f8f !important;
    color: #ffffff !important;
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(10, 79, 143, 0.12) !important;
}

/* active */
li.wpuf-submit input.wpuf-submit-button:active,
li.wpuf-submit input[type="submit"].wpuf-submit-button:active,
form li.wpuf-submit input[name="submit"]:active {
    background: #0a4f8f !important;
    color: #ffffff !important;
    border-color: #0a4f8f !important;
    box-shadow: none !important;
}
/* nasconde l'asterisco dei campi obbligatori senza togliere la validazione */
.wpuf-form .wpuf-label .required,
ul.wpuf-form .wpuf-label .required {
    display: none !important;
}
/* campi email form 49731 + 49744 */
input#user_email_49731.textfield.wpuf_user_email_49731,
input#user_email_49744.textfield.wpuf_user_email_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 0 14px 0 42px !important;
    height: 38px !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5L4 8V6l8 5 8-5v2z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

input#user_email_49731.textfield.wpuf_user_email_49731::placeholder,
input#user_email_49744.textfield.wpuf_user_email_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

input#user_email_49731.textfield.wpuf_user_email_49731:hover,
input#user_email_49731.textfield.wpuf_user_email_49731:focus,
input#user_email_49744.textfield.wpuf_user_email_49744:hover,
input#user_email_49744.textfield.wpuf_user_email_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}


/* nome utente - entrambi i form */
input#user_nickname_49731.textfield.wpuf_user_nickname_49731,
input#user_nickname_49744.textfield.wpuf_user_nickname_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 0 14px 0 42px !important;
    height: 38px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M12 12a5 5 0 1 0-5-5 5 5 0 0 0 5 5zm0 2c-4.42 0-8 2-8 4.5V21h16v-2.5C20 16 16.42 14 12 14z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* placeholder blu */
input#user_nickname_49731.textfield.wpuf_user_nickname_49731::placeholder,
input#user_nickname_49744.textfield.wpuf_user_nickname_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

/* hover e focus blu */
input#user_nickname_49731.textfield.wpuf_user_nickname_49731:hover,
input#user_nickname_49731.textfield.wpuf_user_nickname_49731:focus,
input#user_nickname_49744.textfield.wpuf_user_nickname_49744:hover,
input#user_nickname_49744.textfield.wpuf_user_nickname_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* password e conferma password - entrambi i form */
input#password_49731_1.password.wpuf_password_49731,
input#password_49744_1.password.wpuf_password_49744,
input#password_49731_2.password.wpuf_password_49731,
input#password_49744_2.password.wpuf_password_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 0 42px 0 42px !important;
    height: 38px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M17 8h-1V6a4 4 0 0 0-8 0v2H7a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-9a2 2 0 0 0-2-2zm-6 8.73V17a1 1 0 1 0 2 0v-.27a2 2 0 1 0-2 0zM10 8V6a2 2 0 1 1 4 0v2z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* placeholder blu */
input#password_49731_1.password.wpuf_password_49731::placeholder,
input#password_49744_1.password.wpuf_password_49744::placeholder,
input#password_49731_2.password.wpuf_password_49731::placeholder,
input#password_49744_2.password.wpuf_password_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

/* hover e focus blu */
input#password_49731_1.password.wpuf_password_49731:hover,
input#password_49731_1.password.wpuf_password_49731:focus,
input#password_49744_1.password.wpuf_password_49744:hover,
input#password_49744_1.password.wpuf_password_49744:focus,
input#password_49731_2.password.wpuf_password_49731:hover,
input#password_49731_2.password.wpuf_password_49731:focus,
input#password_49744_2.password.wpuf_password_49744:hover,
input#password_49744_2.password.wpuf_password_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* nome e cognome - entrambi i form */
input#first_name_49731.textfield.wpuf_first_name_49731,
input#first_name_49744.textfield.wpuf_first_name_49744,
input#last_name_49731.textfield.wpuf_last_name_49731,
input#last_name_49744.textfield.wpuf_last_name_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 0 14px 0 42px !important;
    height: 38px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M12 12a5 5 0 1 0-5-5 5 5 0 0 0 5 5zm0 2c-4.42 0-8 2-8 4.5V21h16v-2.5C20 16 16.42 14 12 14z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* placeholder blu */
input#first_name_49731.textfield.wpuf_first_name_49731::placeholder,
input#first_name_49744.textfield.wpuf_first_name_49744::placeholder,
input#last_name_49731.textfield.wpuf_last_name_49731::placeholder,
input#last_name_49744.textfield.wpuf_last_name_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

/* hover e focus blu */
input#first_name_49731.textfield.wpuf_first_name_49731:hover,
input#first_name_49731.textfield.wpuf_first_name_49731:focus,
input#first_name_49744.textfield.wpuf_first_name_49744:hover,
input#first_name_49744.textfield.wpuf_first_name_49744:focus,
input#last_name_49731.textfield.wpuf_last_name_49731:hover,
input#last_name_49731.textfield.wpuf_last_name_49731:focus,
input#last_name_49744.textfield.wpuf_last_name_49744:hover,
input#last_name_49744.textfield.wpuf_last_name_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* telefono - entrambi i form */
input#user_phone_49731.textfield.wpuf_user_phone_49731,
input#user_phone_49744.textfield.wpuf_user_phone_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 0 14px 0 42px !important;
    height: 38px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1-.24 11.36 11.36 0 0 0 3.57.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1 11.36 11.36 0 0 0 .57 3.57 1 1 0 0 1-.25 1z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* placeholder blu */
input#user_phone_49731.textfield.wpuf_user_phone_49731::placeholder,
input#user_phone_49744.textfield.wpuf_user_phone_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

/* hover e focus blu */
input#user_phone_49731.textfield.wpuf_user_phone_49731:hover,
input#user_phone_49731.textfield.wpuf_user_phone_49731:focus,
input#user_phone_49744.textfield.wpuf_user_phone_49744:hover,
input#user_phone_49744.textfield.wpuf_user_phone_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* indirizzo - entrambi i form */
input#user_address_49731.textfield.wpuf_user_address_49731,
input#user_address_49744.textfield.wpuf_user_address_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 0 14px 0 42px !important;
    height: 38px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 10a3 3 0 1 1 3-3 3 3 0 0 1-3 3z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* placeholder blu */
input#user_address_49731.textfield.wpuf_user_address_49731::placeholder,
input#user_address_49744.textfield.wpuf_user_address_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

/* hover e focus blu */
input#user_address_49731.textfield.wpuf_user_address_49731:hover,
input#user_address_49731.textfield.wpuf_user_address_49731:focus,
input#user_address_49744.textfield.wpuf_user_address_49744:hover,
input#user_address_49744.textfield.wpuf_user_address_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* descrizione - entrambi i form */
textarea#user_description_49731.textareafield.wpuf_user_description_49731,
textarea#user_description_49744.textareafield.wpuf_user_description_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 16px 14px 16px 42px !important;
    min-height: 138px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    resize: vertical !important;
    background-repeat: no-repeat !important;
    background-position: 14px 18px !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M11 7h2v2h-2zm0 4h2v6h-2zm1-9a10 10 0 1 0 10 10A10 10 0 0 0 12 2z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* placeholder blu */
textarea#user_description_49731.textareafield.wpuf_user_description_49731::placeholder,
textarea#user_description_49744.textareafield.wpuf_user_description_49744::placeholder {
    color: #2b6dac !important;
    opacity: 1 !important;
}

/* hover e focus blu */
textarea#user_description_49731.textareafield.wpuf_user_description_49731:hover,
textarea#user_description_49731.textareafield.wpuf_user_description_49731:focus,
textarea#user_description_49744.textareafield.wpuf_user_description_49744:hover,
textarea#user_description_49744.textareafield.wpuf_user_description_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* province / luoghi */
select#user_area_49744.multiselect.wpuf-multiselect-field.wpuf_user_area_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 12px 14px 12px 42px !important;
    min-height: 96px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px 14px !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 10a3 3 0 1 1 3-3 3 3 0 0 1-3 3z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* opzioni */
select#user_area_49744.multiselect.wpuf-multiselect-field.wpuf_user_area_49744 option {
    color: #2b6dac !important;
    padding: 4px 0 !important;
}

/* hover e focus */
select#user_area_49744.multiselect.wpuf-multiselect-field.wpuf_user_area_49744:hover,
select#user_area_49744.multiselect.wpuf-multiselect-field.wpuf_user_area_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* categorie / eventi */
select#user_categories_49744.multiselect.wpuf-multiselect-field.wpuf_user_categories_49744 {
    border: 1px solid #d9d9d9 !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    padding: 12px 14px 12px 42px !important;
    min-height: 96px !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    background-repeat: no-repeat !important;
    background-position: 14px 14px !important;
    background-size: 16px 16px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230a4f8f'><path d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm4.5 11h-4v4h-2v-4h-4v-2h4V7h2v4h4z'/></svg>") !important;
    transition: border-color 0.2s ease !important;
}

/* opzioni */
select#user_categories_49744.multiselect.wpuf-multiselect-field.wpuf_user_categories_49744 option {
    color: #2b6dac !important;
    padding: 4px 0 !important;
}

/* hover e focus */
select#user_categories_49744.multiselect.wpuf-multiselect-field.wpuf_user_categories_49744:hover,
select#user_categories_49744.multiselect.wpuf-multiselect-field.wpuf_user_categories_49744:focus {
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: none !important;
}
/* wrapper del form profilo */
div[style*="border: 1px solid #E1E5E8"][style*="border-radius: 24px"] {
    border-style: solid !important;
    border-width: 1px !important;
    border-color: #ffffff !important;
    border-radius: 4px !important;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.0588235294) !important;
}
/* fix visualizzazione dopo login */
html body .elementor-332 .elementor-element.elementor-element-826d35f .elementor-widget-container .elementor-login__logged-in-message,
html body .elementor-332 .elementor-element.elementor-element-826d35f .elementor-widget-container .elementor-login__logged-in-message * {
  line-height: 24px !important;
  letter-spacing: 0 !important;
  height: auto !important;
  white-space: normal !important;
}
/* sposto occhio form dentro il campo */
img.wpuf-eye {
  right: 32px !important;
  left: auto !important;
}

/* stile form aggiornamento luogo per evento  */

.tribe-events-community-footer input.events-community-submit{
  background: #fff !important;
  color: var(--dm-blue) !important;
  border: 1px solid var(--dm-blue) !important;
  border-radius: 2px !important;
  padding: 10px 18px !important;
  font-weight: 400!important;
  text-transform: uppercase !important;
  letter-spacing: .2px !important;
  box-shadow: none !important;
  height: auto !important;
  line-height: normal !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.tribe-events-community-footer input.events-community-submit:hover{
  background: var(--dm-blue) !important;
  color: #fff !important;
  border-color: var(--dm-blue) !important;
  box-shadow: none !important;
}
/* Riga label + checkbox */
.tribe-community-events-content .venue{
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-bottom: 10px !important;
}

.tribe-community-events-content .venue label{
  display: inline-block !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

.tribe-community-events-content .venue input[type="checkbox"]{
  margin: 0 !important;
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto !important;
}

/* Respiro tra label e bottone */
.tribe-events-community-footer{
  margin-top: 20px !important;
}

.events-community-post-title label,
.events-community-post-content label{
  display: block !important;
  margin-bottom: 10px !important;
}

.events-community-post-title,
.events-community-post-content{
  margin-bottom: 24px !important;
}
/* Allinea meglio label + campo nelle righe Dettagli Luogo */
#event_tribe_venue .venue{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

/* label con larghezza fissa */
#event_tribe_venue .venue label{
  width: 110px !important;
  min-width: 110px !important;
  margin: 0 !important;
  display: inline-block !important;
}

/* input/select/textarea allineati */
#event_tribe_venue .venue input[type="text"],
#event_tribe_venue .venue select,
#event_tribe_venue .venue textarea{
  flex: 1 !important;
  width: auto !important;
  margin: 0 !important;
}

/* Rimuove outline e ombra nera al focus su tutti i campi della form */
.tribe-community-events-content input:focus,
.tribe-community-events-content textarea:focus,
.tribe-community-events-content select:focus {
  outline: none !important;
  box-shadow: none !important;
}




/* Stile del titolo h2 nell'header */
.my-events-header h2.my-events{
  font-size: 34px !important;
  color: var(--e-global-color-primary) !important;
}

/* Padding generale del contenitore principale */
.tribe-community-events-content{
  padding: 50px !important;
  box-sizing: border-box !important;
}

/* Rimuove il background alternato delle righe dispari nelle tabelle */
table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd) > th{
  background-color: transparent !important;
}

/* Reset totale sfondi nella tabella venue */
#event_tribe_venue table,
#event_tribe_venue table tbody,
#event_tribe_venue table tr,
#event_tribe_venue table td,
#event_tribe_venue table th,
#event_tribe_venue table tbody > tr:nth-child(odd) > td,
#event_tribe_venue table tbody > tr:nth-child(odd) > th,
#event_tribe_venue table tbody > tr:nth-child(even) > td,
#event_tribe_venue table tbody > tr:nth-child(even) > th,
#event_tribe_venue table tbody > tr:hover > td,
#event_tribe_venue table tbody > tr:hover > th,
#event_tribe_venue table tbody > tr:active > td,
#event_tribe_venue table tbody > tr:active > th,
#event_tribe_venue table tbody > tr:focus > td,
#event_tribe_venue table tbody > tr:focus > th,
#event_tribe_venue table tbody > tr td:active,
#event_tribe_venue table tbody > tr td:focus,
#event_tribe_venue table tbody > tr th:active,
#event_tribe_venue table tbody > tr th:focus,
#event_tribe_venue .saved-linked-post td,
#event_tribe_venue .saved-linked-post th,
#event_tribe_venue .linked-post td,
#event_tribe_venue .linked-post th{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Titolo principale della sezione "Aggiungi nuovo Evento" in grassetto */
.my-events-header h2.my-events{
  font-weight: 500 !important;
}
/* Bottone "Visualizza gli eventi inviati" con respiro */
.my-events-header a.tribe-button.tribe-button-secondary{
  margin-bottom:35px !important;
}
/* Testo del bottone footer tutto in maiuscolo */
button.elementor-button.elementor-size-sm{
  text-transform: uppercase !important;
}
/* Link azioni riga evento */
.row-actions .view a,
.row-actions .edit a{
  color: var(--e-global-color-primary) !important;
}

/* Cancella rossa */
.row-actions .delete a{
  color: red !important;
}

/* Link nei meta dettagli evento/organizzatore/luogo */
.tribe-events-meta-value a,
.tribe-organizer-url a,
.tribe-events-gmap,
.tribe-events-single-section a{
  color: var(--e-global-color-primary) !important;
}
/* Tag Select2: stato normale uguale a un bottone hover */
.select2-selection__choice{
  background: var(--e-global-color-primary) !important;
  color: #fff !important;
  border: 1px solid var(--e-global-color-primary) !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Mantiene lo stesso aspetto anche in hover/focus/click */
.select2-selection__choice:hover,
.select2-selection__choice:focus,
.select2-selection__choice:active{
  background: var(--e-global-color-primary) !important;
  color: #fff !important;
  border-color: var(--e-global-color-primary) !important;
  box-shadow: none !important;
  outline: none !important;
}
/* X di reset Select2 bianca */
.select2-selection__clear{
  color: #fff !important;
}
/* Celle delle sezioni evento/organizzatore/costo sempre bianche */
.tribe-section-content table td,
.tribe-section-content table th,
.tribe-section-content tbody tr td,
.tribe-section-content tbody tr th,
.tribe-section-content tbody tr:hover td,
.tribe-section-content tbody tr:hover th,
.tribe-section-content tbody tr:active td,
.tribe-section-content tbody tr:active th,
.tribe-section-content tbody tr:focus td,
.tribe-section-content tbody tr:focus th,
.tribe-section-content tbody tr td:focus,
.tribe-section-content tbody tr td:active {
  background: #fff !important;
  background-color: #fff !important;
}
/* Link di azione sempre nel blu principale in tutti gli stati */
a.edit-event,
p a[href*="/eventi/community/add/"]{
  color: var(--e-global-color-primary) !important;
}

/* Mantiene il blu anche in hover, focus, click e visitato */
a.edit-event:hover,
a.edit-event:focus,
a.edit-event:active,
a.edit-event:visited,
p a[href*="/eventi/community/add/"]:hover,
p a[href*="/eventi/community/add/"]:focus,
p a[href*="/eventi/community/add/"]:active,
p a[href*="/eventi/community/add/"]:visited{
  color: var(--e-global-color-primary) !important;
}
/* Select multipla WPUF: selezionato in blu e testo bianco */
select.wpuf-multiselect-field[multiple] option:checked,
select.wpuf-multiselect-field[multiple] option:hover,
select.wpuf-multiselect-field[multiple] option:focus,
select.wpuf-multiselect-field[multiple] option:active,
.wpuf-fields select[multiple] option:checked,
.wpuf-fields select[multiple] option:hover,
.wpuf-fields select[multiple] option:focus,
.wpuf-fields select[multiple] option:active{
  background: var(--e-global-color-primary) !important;
  background-color: var(--e-global-color-primary) !important;
  color: #fff !important;
}
/* Testo bianco nelle option selezionate e in hover del multiselect */
select.wpuf-multiselect-field[multiple] option:checked,
select.wpuf-multiselect-field[multiple] option:hover,
.wpuf-fields select[multiple] option:checked,
.wpuf-fields select[multiple] option:hover{
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
/* Rimuove i punti elenco dal form WPUF */
ul.wpuf-form.form-label-above{
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
/* Contenitore password */
.wpuf-fields .wpuf-fields-inline{
  position: relative !important;
}

/* Spazio per l'occhio */
.wpuf-fields .wpuf-fields-inline input.password{
  padding-right: 40px !important;
}

/* Posizione occhio */
.wpuf-fields .wpuf-fields-inline img.wpuf-eye{
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  cursor: pointer !important;
}
/* Link cambio fuso orario sempre nel blu principale */
a.tribe-change-timezone,
a.tribe-change-timezone:hover,
a.tribe-change-timezone:focus,
a.tribe-change-timezone:active,
a.tribe-change-timezone:visited{
  color: var(--e-global-color-primary) !important;
}

/* Opzioni dropdown Select2: hover, evidenziata e selezionata */
.select2-results__option{
  color: var(--e-global-color-primary) !important;
  background: #fff !important;
}

.select2-results__option--highlighted,
.select2-results__option--highlighted[aria-selected],
.select2-results__option[aria-selected="true"]{
  background: var(--e-global-color-primary) !important;
  color: #fff !important;
}
/* Campo ricerca Select2: bordo grigio anche quando è attivo/focus */
.select2-search__field,
.select2-search__field:hover,
.select2-search__field:focus,
.select2-search__field:active{
  border: 1px solid #d5d5d5 !important;
  outline: none !important;
  box-shadow: none !important;
}
/* Timepicker: voce selezionata sempre nel blu principale */
.ui-timepicker-am.ui-timepicker-selected,
.ui-timepicker-pm.ui-timepicker-selected,
li.ui-timepicker-selected{
  background: var(--e-global-color-primary) !important;
  color: #fff !important;
}
/* Testo help spostato più in basso */
.wpuf-fields .wpuf-help{
  display: block !important;
  margin-top: 16px !important;
  margin-bottom: 4px !important;
}
/* Helper sopra ai multiselect */
.wpuf-el.user_area .wpuf-fields,
.wpuf-el.user_categories .wpuf-fields{
  display: flex !important;
  flex-direction: column !important;
}

.wpuf-el.user_area .wpuf-fields .wpuf-help,
.wpuf-el.user_categories .wpuf-fields .wpuf-help{
  order: -1 !important;
  display: block !important;
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}
@media (max-width: 1024px){
  .col-adv{
    display: none !important;
  }
}
.segn-action {
    border-style: solid !important;
    border-width: 1px !important;
    border-color: #ffffff !important;
    border-radius: 4px !important;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.0588235294) !important;
}
/* ─────────────────────────
   SEZIONE FORM ELEMENTOR
───────────────────────── */

/* sfondo sezione */
.elementor-element.elementor-element-275887b {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

/* non tagliare l'ombra */
.elementor-element.elementor-element-275887b .elementor-container,
.elementor-element.elementor-element-275887b .elementor-column,
.elementor-element.elementor-element-275887b .elementor-widget-wrap {
    overflow: visible !important;
}

/* BOX BIANCO CON OMBRA */
.elementor-element.elementor-element-613223d > .elementor-widget-wrap {
    background: #ffffff;
    border-radius: 4px;
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.08),
        0 2px 10px rgba(0, 0, 0, 0.04);
    padding: 42px 56px !important;
}

/* ─────────────────────────
   TITOLO E SOTTOTITOLO
───────────────────────── */

.elementor-element.elementor-element-12a771a .elementor-heading-title {
    color: #004887 !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
}

.elementor-element.elementor-element-350196f,
.elementor-element.elementor-element-350196f p {
    color: #4c7dac !important;
    margin-bottom: 18px !important;
}

/* ─────────────────────────
   SHORTCODE / FORM
───────────────────────── */

.elementor-element.elementor-element-feeac5e .dm-contact-form {
    width: 100%;
}

/* grid */
.elementor-element.elementor-element-feeac5e .dm-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 16px;
    margin-bottom: 12px;
}

.elementor-element.elementor-element-feeac5e .dm-field,
.elementor-element.elementor-element-feeac5e .dm-field-full {
    width: 100%;
}

.elementor-element.elementor-element-feeac5e .dm-field-full {
    margin-bottom: 12px;
}

/* ─────────────────────────
   INPUT E TEXTAREA
───────────────────────── */

.elementor-element.elementor-element-feeac5e .dm-contact-form input[type="text"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[type="email"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[type="tel"],
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid #d8deea !important;
    border-radius: 2px !important;
    background-color: #ffffff !important;
    color: #1c5f9e !important;
    box-shadow: none !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-repeat: no-repeat !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

/* input */
.elementor-element.elementor-element-feeac5e .dm-contact-form input[type="text"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[type="email"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[type="tel"] {
    height: 42px !important;
    padding: 0 14px 0 44px !important;
    background-position: 16px center !important;
    background-size: 16px 16px !important;
}

/* textarea */
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea {
    min-height: 140px !important;
    padding: 16px 14px 16px 44px !important;
    background-position: 16px 16px !important;
    background-size: 16px 16px !important;
    resize: vertical !important;
}

/* placeholder */
.elementor-element.elementor-element-feeac5e .dm-contact-form input::placeholder,
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea::placeholder {
    color: #5f84ac !important;
    opacity: 1 !important;
}

/* hover / focus */
.elementor-element.elementor-element-feeac5e .dm-contact-form input:hover,
.elementor-element.elementor-element-feeac5e .dm-contact-form input:focus,
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea:hover,
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea:focus {
    border-color: #0a4f8f !important;
    box-shadow: 0 0 0 3px rgba(10, 79, 143, 0.08) !important;
    outline: none !important;
}

/* ─────────────────────────
   ICONE
───────────────────────── */

/* Email */
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="your-email"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 3.2-8 5.6-8-5.6V6l8 5.6L20 6v1.2z'/%3E%3C/svg%3E") !important;
}

/* Telefono */
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="your-phone"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="your-tel"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="phone"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="telefono"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M6.62 10.79a15.72 15.72 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24 11.36 11.36 0 0 0 3.58.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1C10.07 21 3 13.93 3 5a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.24.2 2.45.57 3.57a1 1 0 0 1-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E") !important;
}

/* Nome */
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="your-name"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="name"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="nome"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23004887'%3E%3Cpath d='M12 12a5 5 0 1 0-5-5 5 5 0 0 0 5 5zm0 2c-4.42 0-8 2.24-8 5v1h16v-1c0-2.76-3.58-5-8-5z'/%3E%3C/svg%3E") !important;
}

/* Oggetto: icona info come mockup */
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="your-subject"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="subject"],
.elementor-element.elementor-element-feeac5e .dm-contact-form input[name="oggetto"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23004887'/%3E%3Crect x='11' y='10' width='2' height='7' rx='1' fill='white'/%3E%3Ccircle cx='12' cy='7' r='1.2' fill='white'/%3E%3C/svg%3E") !important;
}

/* Testo: icona info come mockup */
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea[name="your-message"],
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea[name="message"],
.elementor-element.elementor-element-feeac5e .dm-contact-form textarea[name="messaggio"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23004887'/%3E%3Crect x='11' y='10' width='2' height='7' rx='1' fill='white'/%3E%3Ccircle cx='12' cy='7' r='1.2' fill='white'/%3E%3C/svg%3E") !important;
}

/* ─────────────────────────
   CONSENSO
───────────────────────── */

.elementor-element.elementor-element-feeac5e .dm-consent {
    margin: 18px 0 24px;
    font-size: 14px;
    color: #666666;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.elementor-element.elementor-element-feeac5e .dm-consent input[type="checkbox"] {
    width: 14px;
    height: 14px;
    accent-color: #004887;
}

.elementor-element.elementor-element-feeac5e .dm-consent a {
    color: #5a3ec8;
    text-decoration: none;
}

.elementor-element.elementor-element-feeac5e .dm-consent a:hover {
    text-decoration: underline;
}

/* ─────────────────────────
   BOTTONE
───────────────────────── */

.elementor-element.elementor-element-feeac5e .dm-submit .wpcf7-submit {
    background: transparent !important;
    border: 1.5px solid #004887 !important;
    color: #004887 !important;
    padding: 11px 30px !important;
    min-width: 98px;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    border-radius: 2px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: none !important;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease !important;
}

.elementor-element.elementor-element-feeac5e .dm-submit .wpcf7-submit:hover {
    background: #004887 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(0, 72, 135, 0.16) !important;
}

.elementor-element.elementor-element-feeac5e .dm-submit .wpcf7-submit:focus {
    background: #0a4f8f !important;
    color: #ffffff !important;
    border-color: #0a4f8f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(10, 79, 143, 0.12) !important;
}
.dm-consent br {
    display: none !important;
}
.dm-consent a {
    color: #004887 !important;
    text-decoration: none;
}

.dm-consent a:hover,
.dm-consent a:focus {
    color: #004887 !important;
    text-decoration: underline;
}
/* ─────────────────────────
   RESPONSIVE
───────────────────────── */

@media (max-width: 767px) {
    .elementor-element.elementor-element-613223d > .elementor-widget-wrap {
        padding: 24px 18px !important;
    }

    .elementor-element.elementor-element-feeac5e .dm-grid {
        grid-template-columns: 1fr;
    }
}


.card-segnala,
.card-iscriviti{
  position: relative;
  cursor: pointer;
}
.card-segnala a.card-overlay-link,
.card-iscriviti a.card-overlay-link{
  position: absolute;
  inset: 0;
  z-index: 5;
}
#menu-1-271d9cff > li > a.elementor-item,
#menu-1-2787906 > li > a.elementor-item{
  font-family: "Arial Black", "Montserrat", sans-serif !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.4px !important;
}

/* 
 * Contenitore generale della lista province.
 * Usiamo CSS Grid per disporre i bottoni in colonne.
 */
.inagenda-province-grid {
    /* Attiva la griglia */
    display: grid;

    /* Crea 2 colonne larghe almeno 240px */
    grid-template-columns: repeat(2, minmax(240px, 1fr));

    /* Spazio verticale e orizzontale tra i bottoni */
    gap: 18px 48px;

    /* Larghezza massima della griglia */
    max-width: 760px;

    /* Centra la griglia e aggiunge spazio sopra/sotto */
    margin: 40px auto 80px;
}

/* 
 * Stile base dei bottoni provincia.
 * :visited serve per evitare che i link già visitati cambino colore.
 */
.inagenda-provincia-btn,
.inagenda-provincia-btn:visited {
    /* Trasforma il link in blocco, così occupa tutta la cella */
    display: block;

    /* Fa occupare al bottone tutta la larghezza disponibile */
    width: 100%;

    /* Colore blu del bottone */
    background-color: #004887;

    /* Testo bianco, con !important per sovrascrivere Elementor/tema */
    color: #ffffff !important;

    /* Testo centrato */
    text-align: center;

    /* Spazio interno del bottone */
    padding: 14px 20px;

    /* Dimensione del testo */
    font-size: 16px;

    /* Testo in grassetto */
    font-weight: 700;

    /* Altezza riga leggibile */
    line-height: 1.2;

    /* Toglie la sottolineatura dei link */
    text-decoration: none !important;

    /* Angoli leggermente arrotondati */
    border-radius: 4px;

    /* Evita che padding e bordo allarghino il bottone oltre il 100% */
    box-sizing: border-box;
}

/* 
 * Stato hover/focus.
 * Si applica quando passi sopra col mouse o navighi da tastiera.
 */
.inagenda-provincia-btn:hover,
.inagenda-provincia-btn:focus {
    /* Blu leggermente più scuro */
    background-color: #003866;

    /* Mantiene il testo bianco */
    color: #ffffff !important;

    /* Evita sottolineatura anche in hover */
    text-decoration: none !important;
}

/* 
 * Versione mobile.
 * Sotto i 767px i bottoni diventano a una sola colonna.
 */
@media (max-width: 767px) {
    .inagenda-province-grid {
        /* Una colonna sola su mobile */
        grid-template-columns: 1fr;

        /* Occupa tutta la larghezza disponibile */
        max-width: 100%;

        /* Spazio più piccolo tra i bottoni */
        gap: 14px;

        /* Margini leggermente ridotti su mobile */
        margin: 30px auto 60px;
    }
}
body .select2-dropdown .select2-results__options li.select2-results__option.select2-results__option--highlighted {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
