/* v0.9.26 -- final public visual polish, loaded after the recovery stylesheet. */

/* The agenda starts as a soft, very rounded paper panel. */
#ajax-content-wrap .container.main-content [data-te-classic] .te-events,
#main [data-te-classic] .te-events,
[data-te-classic] .te-events {
  margin-top: 0 !important;
  padding: clamp(38px, 5vw, 78px) clamp(22px, 6.5vw, 104px) !important;
  border: 1px solid rgba(41, 96, 112, .13) !important;
  border-radius: clamp(52px, 7vw, 108px) !important;
  background: #fffaf0 !important;
  box-shadow: 0 20px 46px rgba(41, 96, 112, .07) !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-events .te-section-heading,
#main [data-te-classic] .te-events .te-section-heading,
[data-te-classic] .te-events .te-section-heading {
  align-items: flex-end !important;
  margin-bottom: clamp(28px, 4vw, 46px) !important;
  padding: 0 0 clamp(18px, 2vw, 28px) !important;
  border-bottom: 1px solid rgba(41, 96, 112, .17) !important;
}

/* Active filters are proper compact pills: label plus a circular remover. */
#ajax-content-wrap .container.main-content [data-te-classic] .te-active-filters,
#main [data-te-classic] .te-active-filters,
[data-te-classic] .te-active-filters {
  gap: 9px !important;
  margin: 13px 0 9px !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] button.te-active-filter,
#main [data-te-classic] button.te-active-filter,
[data-te-classic] button.te-active-filter {
  display: inline-grid !important;
  grid-template-columns: minmax(0, 1fr) 32px !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 4px 5px 4px 15px !important;
  border: 1px solid rgba(137, 88, 53, .31) !important;
  border-radius: 999px !important;
  background: #fffdf7 !important;
  color: #296070 !important;
  box-shadow: none !important;
  transform: none !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-active-filter-label,
#main [data-te-classic] .te-active-filter-label,
[data-te-classic] .te-active-filter-label {
  padding: 0 10px 0 0 !important;
  color: #296070 !important;
  font: 700 17px/1 "Dosis", Arial, sans-serif !important;
  letter-spacing: .09em !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-active-filter-close,
#main [data-te-classic] .te-active-filter-close,
[data-te-classic] .te-active-filter-close {
  display: grid !important;
  width: 32px !important;
  height: 32px !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #895835 !important;
  color: #fffaf0 !important;
  font: 800 24px/1 "Dosis", Arial, sans-serif !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] button.te-active-filter:hover,
#ajax-content-wrap .container.main-content [data-te-classic] button.te-active-filter:focus-visible,
#main [data-te-classic] button.te-active-filter:hover,
#main [data-te-classic] button.te-active-filter:focus-visible,
[data-te-classic] button.te-active-filter:hover,
[data-te-classic] button.te-active-filter:focus-visible {
  border-color: #895835 !important;
  box-shadow: 0 3px 10px rgba(137, 88, 53, .13) !important;
}

/* Detail tags stay recognisably interactive and resist generic theme button styles. */
#ajax-content-wrap .container.main-content [data-te-classic] .te-dialog-tags,
#main [data-te-classic] .te-dialog-tags,
[data-te-classic] .te-dialog-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin: 18px 0 0 !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-dialog-tags button,
#main [data-te-classic] .te-dialog-tags button,
[data-te-classic] .te-dialog-tags button {
  appearance: none !important;
  display: inline-flex !important;
  min-height: 30px !important;
  align-items: center !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  overflow: hidden !important;
  border: 1px solid rgba(41, 96, 112, .22) !important;
  border-radius: 999px !important;
  background: #fffdf7 !important;
  color: #296070 !important;
  font: 700 14px/1 "Dosis", Arial, sans-serif !important;
  letter-spacing: .065em !important;
  text-overflow: ellipsis !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  transform: none !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-dialog-tags button:hover,
#ajax-content-wrap .container.main-content [data-te-classic] .te-dialog-tags button:focus-visible,
#main [data-te-classic] .te-dialog-tags button:hover,
#main [data-te-classic] .te-dialog-tags button:focus-visible,
[data-te-classic] .te-dialog-tags button:hover,
[data-te-classic] .te-dialog-tags button:focus-visible {
  border-color: #296070 !important;
  background: #e5f0f0 !important;
  color: #1f4d5a !important;
}

/* The modal price uses exactly the quiet, terracotta card-price treatment. */
#ajax-content-wrap .container.main-content [data-te-classic] .te-dialog-facts .te-dialog-price,
#main [data-te-classic] .te-dialog-facts .te-dialog-price,
[data-te-classic] .te-dialog-facts .te-dialog-price {
  align-self: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #895835 !important;
  font: 700 18px/1.2 "Dosis", Arial, sans-serif !important;
  letter-spacing: 0 !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}

/* A deliberate placeholder when no approved poster is available. */
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 22px !important;
  padding: clamp(34px, 5vw, 76px) !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background:
    radial-gradient(circle at 18% 20%, rgba(244, 226, 184, .25) 0 5%, transparent 5.4%),
    radial-gradient(circle at 82% 74%, rgba(255, 250, 240, .12) 0 13%, transparent 13.5%),
    linear-gradient(145deg, #296070 0%, #1f4d5a 58%, #173d47 100%) !important;
}
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder::before,
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder::after {
  position: absolute !important;
  z-index: -1 !important;
  display: block !important;
  border: 2px solid rgba(244, 226, 184, .5) !important;
  border-radius: 52% 48% 46% 54% !important;
  content: "" !important;
}
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder::before {
  top: 12% !important;
  right: -12% !important;
  width: min(46vw, 360px) !important;
  aspect-ratio: 1 !important;
  transform: rotate(23deg) !important;
}
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder::after {
  bottom: 10% !important;
  left: -13% !important;
  width: min(33vw, 250px) !important;
  aspect-ratio: 1 !important;
  border-color: rgba(244, 226, 184, .3) !important;
  transform: rotate(-29deg) !important;
}
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder strong {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  max-width: 14ch !important;
  margin: 0 !important;
  color: #fffaf0 !important;
  font-family: "Barriecito", cursive !important;
  font-size: clamp(34px, 4.2vw, 64px) !important;
  font-weight: 400 !important;
  line-height: .98 !important;
  text-align: center !important;
  text-shadow: 0 3px 16px rgba(15, 47, 55, .25) !important;
}
dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder > span {
  position: relative !important;
  z-index: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 7px 14px !important;
  border: 1px solid rgba(255, 250, 240, .74) !important;
  border-radius: 999px !important;
  background: rgba(31, 77, 90, .32) !important;
  color: #fffaf0 !important;
  font: 700 15px/1 "Dosis", Arial, sans-serif !important;
  letter-spacing: .1em !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

/* Footer aligned to the inScialla "Spostarsi a Trapani" visual language. */
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer,
#main [data-te-classic] .te-classic-footer,
[data-te-classic] .te-classic-footer {
  display: flex !important;
  flex-direction: column !important;
  margin-top: clamp(54px, 8vw, 112px) !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fffdf7 !important;
  box-shadow: none !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-body,
#main [data-te-classic] .te-classic-footer-body,
[data-te-classic] .te-classic-footer-body {
  order: 1 !important;
  display: grid !important;
  justify-items: center !important;
  gap: 18px !important;
  padding: clamp(48px, 7vw, 94px) 24px clamp(34px, 5vw, 62px) !important;
  text-align: center !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-body > p,
#main [data-te-classic] .te-classic-footer-body > p,
[data-te-classic] .te-classic-footer-body > p {
  margin: 0 !important;
  color: #296070 !important;
  font: 500 clamp(20px, 2vw, 29px)/1.2 "Dosis", Arial, sans-serif !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-body > span,
#main [data-te-classic] .te-classic-footer-body > span,
[data-te-classic] .te-classic-footer-body > span {
  margin-top: 14px !important;
  color: #895835 !important;
  font: 800 clamp(16px, 1.7vw, 22px)/1 "Dosis", Arial, sans-serif !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-footer-brands,
#main [data-te-classic] .te-footer-brands,
[data-te-classic] .te-footer-brands {
  gap: clamp(14px, 2.2vw, 30px) !important;
  min-height: 0 !important;
  margin: 0 0 12px !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-footer-brand img.te-footer-logo,
#main [data-te-classic] .te-footer-brand img.te-footer-logo,
[data-te-classic] .te-footer-brand img.te-footer-logo {
  width: auto !important;
  height: clamp(82px, 10vw, 130px) !important;
  max-width: min(34vw, 235px) !important;
  object-fit: contain !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-footer-brands > i,
#main [data-te-classic] .te-footer-brands > i,
[data-te-classic] .te-footer-brands > i {
  color: #895835 !important;
  font-size: clamp(21px, 2.5vw, 31px) !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-body > p:last-child,
#main [data-te-classic] .te-classic-footer-body > p:last-child,
[data-te-classic] .te-classic-footer-body > p:last-child {
  max-width: 900px !important;
  margin-top: 6px !important;
  font-size: clamp(18px, 1.7vw, 25px) !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-body a,
#main [data-te-classic] .te-classic-footer-body a,
[data-te-classic] .te-classic-footer-body a {
  color: #895835 !important;
  font-weight: 800 !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 2px !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-notice,
#main [data-te-classic] .te-classic-footer-notice,
[data-te-classic] .te-classic-footer-notice {
  order: 2 !important;
  display: flex !important;
  justify-content: center !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  padding: 18px 26px 26px !important;
  background: transparent !important;
  color: #59727a !important;
  font: 500 14px/1.35 "Dosis", Arial, sans-serif !important;
  text-align: center !important;
}
#ajax-content-wrap .container.main-content [data-te-classic] .te-classic-footer-notice span,
#main [data-te-classic] .te-classic-footer-notice span,
[data-te-classic] .te-classic-footer-notice span {
  display: none !important;
}

@media (max-width: 620px) {
  #ajax-content-wrap .container.main-content [data-te-classic] .te-events,
  #main [data-te-classic] .te-events,
  [data-te-classic] .te-events {
    padding: 38px 18px !important;
    border-radius: 44px !important;
  }
  #ajax-content-wrap .container.main-content [data-te-classic] .te-active-filter-label,
  #main [data-te-classic] .te-active-filter-label,
  [data-te-classic] .te-active-filter-label {
    font-size: 15px !important;
  }
  dialog.te-classic-dialog .te-classic-dialog-poster.te-dialog-poster-placeholder {
    gap: 16px !important;
    padding: 28px !important;
  }
  #ajax-content-wrap .container.main-content [data-te-classic] .te-footer-brand img.te-footer-logo,
  #main [data-te-classic] .te-footer-brand img.te-footer-logo,
  [data-te-classic] .te-footer-brand img.te-footer-logo {
    height: 74px !important;
    max-width: 36vw !important;
  }
}