body {
    background: #ffffff;
}
a {
    color: #2e5778;
}
#appCapsule {
    padding-top: 36%;
    padding-left: 0px;
    padding-right: 0px;
    padding-bottom: 16%;
}
.appHeader {
    background-image: url(/themes/menu/assets/img/background-menu-morsi.png?v=2);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-y: -30px;
    padding-top: 25px;
    padding-bottom: 20%;
    background-color: unset;
}

.appHeader .pageTitle .logo {
    width: 120px;
    max-height: unset;
}

.appHeader .left .headerButton, .appHeader .right .headerButton {
    color: #ffffff;
}
.section p{
    text-align: center;
    color: #000000;
    font-weight: 500;
    font-size: 22px;

}
.accordion-body p{
    text-align: left;
    color: #000000;
    font-size: 16px;
    font-weight: normal;
}
.cat-main {
    width: 100%;
    height: 150px;
    display: flex;
    align-items: end;
    justify-content: left;
    padding-left: 10px;
    font-weight: bold;
    border-radius: 8px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.section .cat-main p {
    text-align: unset;
    color: white;
    max-width: 90%;
    line-height: 20px;
    font-size: 18px;
}

.accordion .accordion-header .accordion-button.collapsed.zero:after{
    display: none;
}
.accordion .accordion-header .accordion-button.zero {
    font-size: 13px;
    font-weight: normal;
}
.accordion-body strong{
    font-weight: bold;
    color: #000000;
}
.accordion .accordion-body {
    border-bottom: 1px solid #e1e1e1;
    padding-top: 20px;
}
.accordion .accordion-header .accordion-button.collapsed:before {
    left: 0px;
}
.carousel-slider .splide__pagination {
    bottom: 60px;
    position: relative;
}
.accordion .accordion-header .btn, .accordion .accordion-header .accordion-button {
    font-size: 22px;
    font-weight: bold;
}
.accordion-button:not(.collapsed) {
    font-weight: bold !important;
    color: #2e5677 !important;
}
.accordion .accordion-header .btn:after,
.accordion .accordion-header .accordion-button:after {
  opacity: 1;
  background: url("data:image/svg+xml,%0A%3Csvg width='10px' height='16px' viewBox='0 0 10 16' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='Listview' transform='translate(-112.000000, -120.000000)' stroke='%232c577a' stroke-width='2.178'%3E%3Cpolyline id='Path' points='114 122 120 128 114 134'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center !important;
}
.inset .accordion {
    border-radius: 6px;
    border: 1px solid #E1E1E1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    min-height: 60px;
}
.section-title {
    align-items: center;
    justify-content: center;
}
.carousel-slider .splide__list {
    padding-bottom: 30px !important;
}
.profileBox {
    background: #2e5778;
}
.image-listview > li a.item:after { display: none; }

/* Contenitore del carousel */
div#news-carousel-track {
    top: 26px;
}
.text-carousel {
  max-width: 540px;      /* regola come ti serve */
  margin: 0 auto;
  height: 80px;
}

/* Slide solo testo, centrato verticalmente e orizzontalmente */
.text-carousel .splide__slide {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: normal;
  color: #000;
}
.text-carousel .splide__slide a {
    color: #2e5778;
    font-weight: bold;
}

/* Frecce Splide */
.text-carousel .splide__arrow {
  background: transparent;
  border: none;
  box-shadow: none;
  width: 26px;
  height: 26px;
  opacity: 1;
}

.text-carousel .splide__arrow svg {
  width: 24px;
  height: 24px;
  fill: #0b3d59; /* colore frecce */
}

.text-carousel .splide__arrow--prev {
  left: 10px;
}

.text-carousel .splide__arrow--next {
  right: 10px;
}

/* Niente pallini di paginazione */
.text-carousel .splide__pagination {
  display: none;
}
#sidebarPanel, #sidebarAllergeni, #sidebarLegenda, #sidebarWifi {
    padding: 0;
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
}
#sidebarPanel .offcanvas-body, #sidebarAllergeni .offcanvas-body, #sidebarLegenda .offcanvas-body, #sidebarWifi .offcanvas-body{
    padding: 0 0 70px 0;
    margin-top: 150px;
}
.profileBox:before {
    background: unset;
}
.img-gradient {
    position: relative;
    overflow: hidden;
    border-radius: 16px;          /* arrotonda il contenitore */
    -webkit-box-shadow:-4px 5px 10px 0px #CACACA;
    -moz-box-shadow:-4px 5px 10px 0px #CACACA;
    -o-box-shadow:-4px 5px 10px 0px #CACACA;
    box-shadow:-4px 5px 10px 0px #CACACA;
}

.img-gradient img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 16px;          /* opzionale, ma aiuta con artefatti */
}

/* overlay nero dal basso verso l’alto */
.img-gradient::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%; /* regola l’altezza della sfumatura */
    background: linear-gradient(to top, rgba(0,0,0,0.6), rgba(0,0,0,0));
    pointer-events: none;
    border-radius: inherit;       /* fa seguire i bordi al gradient */
    
}

.modal.mer {
    background: linear-gradient(to bottom, #2e5778d2 0%, #ffffff 100%);
}
.modal.mer .modal-header {
    justify-content: flex-end;
    position: relative;
    top: 44px;
    z-index: 99999999;
}
.modal.mer .btn-close {
    box-sizing: content-box;
    color: #ffffff;
}
.modal.mer a.b-close {
    color: #ffffff;
    font-size: 22px;
    font-weight: 500;
}
.modal.mer .modal-dialog .modal-content .modal-body {
    margin-bottom: 0;
    padding: 0 10px;
}
.modal.mer .btn-text-primary {
    background: transparent;
    border-color: transparent;
    color:#000000 !important;
    transition: none;
    font-weight: bold;
    font-size: 20px;
}
.modal.mer .modal-title {
    margin-bottom: 0;
    line-height: 1.5;
    color: black;
    font-size: 28px;
}
.modal.mer  .modal-body{
    padding: 0 10px;
}

.modal.mer .title {
    color: white;
    font-weight: bold;
    padding: 10px;
}
.modal.mer .modal-content {
    background-color: unset;
    max-width: 100%;
    max-height: unset;
}
.modal.mer .modal-content .modal-footer {
    border-top: 0px;
    
}
.modal.mer .modal-content .btn-inline .btn{
    background: unset;
}

.modal.mer .imaged {
    -webkit-box-shadow:0px 0px 4px 1px #00000083;
    -moz-box-shadow:0px 0px 4px 1px #00000083;
    -o-box-shadow:0px 0px 4px 1px #00000083;
    box-shadow:0px 0px 4px 1px #00000083;
}

.btn-secondary {
    background: #2d5677 !important;
    border-color: #2d5677 !important;
    color: #ffffff !important;
}

.logo {
    filter: brightness(0) invert(1) !important;
}