:root {
  --white: #fff;
  --lightgrey: #ededed;
  --darkred: #ad2424;
  --midred: #e02312;
  --gold: #d5b557;
  --darkgrey: #5e5e5e;
  --black: #232323;
}
/* Coco Sharp — ExtraBold (peso 800) */
@font-face {
  font-family: "Coco Sharp";
  src: url("../fonts/Coco-Sharp-Extrabold.woff2") format("woff2"),
       url("../fonts/Coco-Sharp-Extrabold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/* Heading Pro — Bold (peso 700) */
@font-face {
  font-family: "Heading Pro";
  src: url("../fonts/Heading-Pro-Bold.woff2") format("woff2"),
       url("../fonts/Heading-Pro-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
.wp-block-button__link, .btn, .websoup-read-more-link, .nav-link, .dropdown-item {
  font-family: "Heading Pro", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
}
.dropdown-item {
  text-transform: uppercase;
}
/*  */
html {
  scroll-behavior: smooth;
}
body {
  font-family: "Helvetica Neue", Arial, sans-serif;
}
body.admin-bar .fixed-top {
  top: 32px;
}
article h1,
article h2,
article h3,
article h4 {
  margin-top: 1.4rem;
  margin-bottom: 0.7rem;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: "Coco Sharp", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: 800;
}
/* Helpers */
.alignleft {
  float: left;
  margin-right: 1.5rem;
}
.alignright {
  float: right;
  margin-left: 1.5rem;
}
.aligncenter {
  display: block;
  margin: 0 auto 1.5rem;
}
a,
.btn-link,
.page-link {
  color: var(--darkred);
}
a:hover,
a:focus,
.btn-link:hover,
.page-link:hover {
  color: var(--darkred);
}
.textwidget img,
article img {
  max-width: 100%;
  height: auto;
}
.bgcover {
  background-repeat: no-repeat;
  background-size: cover !important;
  background-position: center;
}
/* video embed */
.embed-youtube,
.embed-vimeo {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  clear: both;
}
.embed-youtube iframe,
.embed-vimeo iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
iframe,
object,
embed {
  max-width: 100%;
}
/* calendar */
.widget_calendar .widget-title,
.widget_websoupevents_calendar .widget-title {
  background-color: var(--darkred);
  color: #fff;
  padding: 0.2rem 0.6rem;
}
.widget_calendar caption {
  caption-side: top;
  text-align: center;
  font-weight: bold;
  color: var(--darkred);
  padding-top: 0.125rem;
}
.widget_calendar table {
  width: 100%;
  position: relative;
}
.widget_calendar tbody td,
.widget_calendar thead th {
  border-top: 1px solid #dee2e6;
  padding: 0.3rem;
}
.widget_calendar tfoot #prev {
  position: absolute;
  top: 0;
  left: 0;
}
.widget_calendar tfoot #next {
  position: absolute;
  top: 0;
  right: 0;
}
.widget_calendar tfoot .pad {
  display: none;
}
.widget_calendar thead th,
.widget_calendar tbody td {
  text-align: center;
}
.widget_calendar tbody a {
  background-color: var(--darkred);
  color: #fff;
  border-radius: 50%;
  display: inline-block;
  width: 1.688rem;
}
.widget_calendar tbody td a:hover {
  background-color: var(--darkred);
  text-decoration: none;
}
/* Article */
article header p {
  margin-bottom: 0.5rem;
}
/* Footer */
.preheader {
  color: var(--white);
  background-color: var(--darkred);
}
.preheader a {
  color: var(--white);
}
footer.footer {
  color: var(--white);
  background-color: var(--black);
}
footer.footer a {
  color: var(--white);
}
.colophon {
  background-color: var(--darkred);
}
/* Color validator fix */
#totop {
  width: 30px;
  height: 30px;
  text-align: center;
  background: var(--darkred);
  color: #ffffff;
  display: none;
  position: fixed;
  bottom: 60px;
  right: 20px;
  line-height: 30px;
  z-index: 900;
  box-sizing: content-box;
}
.gallery .gallery-icon {
  text-align: center;
}
div[class*="gallery-columns-"] {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}
.gallery > figure {
  display: inline-block;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.gallery-columns-1 > figure {
  width: 100%;
}
.gallery-columns-2 > figure {
  width: 50%;
}
.gallery-columns-3 > figure {
  width: 33.33%;
}
.gallery-columns-4 > figure {
  width: 25%;
}
.gallery-columns-5 > figure {
  width: 20%;
}
.gallery-columns-6 > figure {
  width: 16.66%;
}
.gallery-columns-7 > figure {
  width: 14.28%;
}
.gallery-columns-8 > figure {
  width: 12.5%;
}
.gallery-columns-9 > figure {
  width: 11.11%;
}
.admin-bar .navbar-main.fixed-top {
  top: 32px !important;
}
/**/
.bglightgrey {
  background-color: var(--lightgrey);
}
.bgwhite {
  background-color: var(--white);
}
.websoup-read-more-link,
.wp-block-button__link,
.btn {
  padding: 0.25rem 1rem;
  text-decoration: none;
  line-height: var(--bs-btn-line-height);
  border-width: 0;
  border-radius: 0;
}
.websoup-read-more-link {
  background-color: var(--darkred);
  color: var(--white) !important;
}
a.wp-block-button__link {
  background-color: var(--darkred);
  color: var(--white);
}
.websoup-read-more-link:hover,
.wp-block-button__link:hover {
  color: var(--white);
  background-color: var(--darkred);
}
.wpcf7-form-control-wrap {
  display: block;
}
.radioblock .wpcf7-list-item {
  display: block;
}
#gdpr-cookie-consent-bar,
#gdpr-cookie-consent-show-again {
  box-shadow: none !important;
}
.active > .dropdown-item,
.dropdown-item.active,
.dropdown-item:active {
  color: var(--black);
  background-color: var(--white);
}
.dropdown-item:focus, .dropdown-item:hover {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
/* Palette Gutenberg: colori personalizzati */
.has-white-color {
  color: var(--white) !important;
}
.has-white-background-color {
  background-color: var(--white) !important;
}

.has-lightgrey-color {
  color: var(--lightgrey) !important;
}
.has-lightgrey-background-color {
  background-color: var(--lightgrey) !important;
}

.has-darkred-color {
  color: var(--darkred) !important;
}
.has-darkred-background-color {
  background-color: var(--darkred) !important;
}

.has-midred-color {
  color: var(--midred) !important;
}
.has-midred-background-color {
  background-color: var(--midred) !important;
}

.has-gold-color {
  color: var(--gold) !important;
}
.has-gold-background-color {
  background-color: var(--gold) !important;
}

.has-darkgrey-color {
  color: var(--darkgrey) !important;
}
.has-darkgrey-background-color {
  background-color: var(--darkgrey) !important;
}

.has-black-color {
  color: var(--black) !important;
}
.has-black-background-color {
  background-color: var(--black) !important;
}
/**/
.maxwdt {
  max-width: 800px;
}
.underline {
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--white);
}
.underline-black {
  border-bottom-color: var(--black);
}
.bg-lightgrey {
  background-color: var(--lightgrey);
}
.c-accordion__item {
  border: 1px solid rgba(0, 0, 0, 0.175);
  margin-bottom: 1rem;
}
.c-accordion__title {
  font-size: 1rem;
  margin: 0;
  padding: 0.75rem 2.5rem 0.75rem 1rem;
}
.c-accordion__content {
  padding: 0.75rem 1rem;
}
.c-accordion__content > *:last-child {
  margin-bottom: 0;
}
.c-accordion__title::after {
  right: 1rem;
  color: var(--black);
}
/* Mobile breakpoints */
@media (max-width: 575.98px) {
}
@media (min-width: 576px) {
}
@media (max-width: 767.98px) {
}
@media (min-width: 768px) {
}
@media (max-width: 991.98px) {
}
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 1rem;
    padding-left: 1rem;
  }
  .carousel .wp-block-cover {
    min-height: 600px;
  }
}
@media (max-width: 1199.98px) {
}
@media (min-width: 1200px) {
}
