/* ================================================================
   SPESAMITU — REBRANDING OVERRIDES
   MODIFICA MANUALE COLORE TITOLI:
   cambia SOLO il valore di --spesamitu-title-color qui sotto.
   Esempio: #050505, #ff66ba, #009742, #18532c, #fcea38
   ================================================================ */
:root {
  --spesamitu-title-color: #050505;
  --spesamitu-pink: #ff66ba;
  --spesamitu-green: #009742;
  --spesamitu-dark-green: #18532c;
  --spesamitu-yellow: #fcea38;
  --spesamitu-black: #050505;
  --spesamitu-white: #ffffff;
}

@font-face {
  font-family: "Cascadia Mono";
  src: url("../../fonts/CascadiaMono-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Cascadia Mono";
  src: url("../../fonts/CascadiaMono-SemiBold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "Cascadia Mono";
  src: url("../../fonts/CascadiaMono-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

body.spesamitu-page {
  font-family: "Cascadia Mono", monospace !important;
  color: var(--spesamitu-black);
  background: var(--spesamitu-white);
}
body.spesamitu-page .display-1,
body.spesamitu-page .display-2,
body.spesamitu-page .display-3,
body.spesamitu-page .display-4,
body.spesamitu-page .display-5,
body.spesamitu-page .display-6,
body.spesamitu-page .display-7,
body.spesamitu-page .mbr-fonts-style:not(.mbr-iconfont),
body.spesamitu-page .form-control,
body.spesamitu-page .btn,
body.spesamitu-page .nav-link,
body.spesamitu-page .dropdown-item,
body.spesamitu-page h1,
body.spesamitu-page h2,
body.spesamitu-page h3,
body.spesamitu-page h4,
body.spesamitu-page h5,
body.spesamitu-page h6,
body.spesamitu-page p,
body.spesamitu-page li,
body.spesamitu-page label,
body.spesamitu-page strong,
body.spesamitu-page b {
  font-family: "Cascadia Mono", monospace !important;
}
body.spesamitu-page strong,
body.spesamitu-page b {
  font-weight: 700 !important;
}

/* Global title color switch. Specific white/green sections below intentionally override it. */
body.spesamitu-page h1,
body.spesamitu-page h2,
body.spesamitu-page h3,
body.spesamitu-page h4,
body.spesamitu-page h5,
body.spesamitu-page h6,
body.spesamitu-page .mbr-section-title,
body.spesamitu-page .card-title {
  color: var(--spesamitu-title-color) !important;
}
body.spesamitu-page p,
body.spesamitu-page .mbr-text,
body.spesamitu-page .card-text,
body.spesamitu-page .card-subtitle,
body.spesamitu-page .user_text,
body.spesamitu-page .user_name,
body.spesamitu-page .user_desk {
  color: var(--spesamitu-black) !important;
}

/* =========================== NAVBAR ============================ */
body.spesamitu-page .navbar,
body.spesamitu-page .navbar-collapse {
  background-color: var(--spesamitu-white) !important;
}
body.spesamitu-page .navbar .nav-link,
body.spesamitu-page .navbar .nav-link:visited,
body.spesamitu-page .navbar .nav-link .mbr-iconfont,
body.spesamitu-page .navbar .icons-menu .mbr-iconfont {
  color: var(--spesamitu-black) !important;
  fill: var(--spesamitu-black) !important;
}
body.spesamitu-page .navbar .nav-link:hover,
body.spesamitu-page .navbar .nav-link:hover .mbr-iconfont,
body.spesamitu-page .navbar .iconfont-wrapper:hover .mbr-iconfont {
  color: var(--spesamitu-pink) !important;
  fill: var(--spesamitu-pink) !important;
}
body.spesamitu-page .navbar .dropdown-menu .dropdown-item,
body.spesamitu-page .navbar .dropdown-menu .dropdown-item:visited {
  color: var(--spesamitu-black) !important;
  background-color: var(--spesamitu-white) !important;
}
body.spesamitu-page .navbar .dropdown-menu .dropdown-item:hover,
body.spesamitu-page .navbar .dropdown-menu .dropdown-item:focus-visible,
body.spesamitu-page .navbar .dropdown-menu .dropdown-item:active {
  color: var(--spesamitu-pink) !important;
  background-color: var(--spesamitu-dark-green) !important;
}
body.spesamitu-page .navbar .navbar-toggler .hamburger span {
  background-color: var(--spesamitu-black) !important;
}
body.spesamitu-page .navbar .navbar-brand img {
  max-height: 3rem;
  width: auto;
  height: 3rem !important;
  object-fit: contain;
}

/* ============================ CTA ============================== */
body.spesamitu-page a.btn,
body.spesamitu-page button.btn,
body.spesamitu-page .btn-primary,
body.spesamitu-page .btn-secondary,
body.spesamitu-page .btn-warning,
body.spesamitu-page .btn-success,
body.spesamitu-page .btn-info,
body.spesamitu-page .mbr-section-btn .btn {
  background-color: var(--spesamitu-pink) !important;
  border: 2px solid var(--spesamitu-pink) !important;
  color: var(--spesamitu-white) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
body.spesamitu-page a.btn:hover,
body.spesamitu-page a.btn:focus,
body.spesamitu-page button.btn:hover,
body.spesamitu-page .btn-primary:hover,
body.spesamitu-page .btn-secondary:hover,
body.spesamitu-page .btn-warning:hover,
body.spesamitu-page .btn-success:hover,
body.spesamitu-page .btn-info:hover,
body.spesamitu-page .mbr-section-btn .btn:hover {
  background-color: var(--spesamitu-dark-green) !important;
  border-color: var(--spesamitu-dark-green) !important;
  color: var(--spesamitu-white) !important;
}


/* PATTERN: immagine originale a piena opacità, senza parallax o velature. */
body.spesamitu-page .spesamitu-pattern-hero {
  background-image: var(--spesamitu-pattern) !important;
  background-color: #fcea38 !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}
body.spesamitu-page .spesamitu-pattern-home { --spesamitu-pattern: url("../../images/pattern_home.png"); }
body.spesamitu-page .spesamitu-pattern-ordinaora { --spesamitu-pattern: url("../../images/pattern_ordinaora.png"); }
body.spesamitu-page .spesamitu-pattern-categoria { --spesamitu-pattern: url("../../images/pattern_categoria.png"); }
body.spesamitu-page .spesamitu-pattern-grazie { --spesamitu-pattern: url("../../images/pattern_grazie.png"); }
body.spesamitu-page .spesamitu-pattern-collabora { --spesamitu-pattern: url("../../images/pattern_collabora.png"); }
body.spesamitu-page .spesamitu-pattern-hero::before,
body.spesamitu-page .spesamitu-pattern-hero::after { content: none !important; }
body.spesamitu-page .spesamitu-pattern-hero .mbr-overlay { display: none !important; }
body.spesamitu-page .spesamitu-pattern-hero :is(h1,h2,h3,h4,h5,h6,p),
body.spesamitu-page .spesamitu-pattern-hero :is(h1,h2,h3,h4,h5,h6,p) * {
  color: #050505 !important;
  -webkit-text-stroke: 2px #fcea38;
  paint-order: stroke fill;
  text-shadow: none !important;
}
/* SEZIONI E CARD: lo sfondo esterno dei blocchi tariffa resta bianco. */
body.spesamitu-page .spesamitu-home-pink { background-color: #ff66ba !important; }
body.spesamitu-page .spesamitu-home-dark,
body.spesamitu-page .spesamitu-collabora-dark { background-color: #18532c !important; }
body.spesamitu-page .spesamitu-home-lightgreen,
body.spesamitu-page .spesamitu-collabora-lightgreen,
body.spesamitu-page .spesamitu-fai-ordine,
body.spesamitu-page section.features12 { background-color: #009742 !important; }
body.spesamitu-page .spesamitu-collabora-white,
body.spesamitu-page section.spesamitu-25-articoli,
body.spesamitu-page section.spesamitu-services-vari { background: #ffffff !important; }
body.spesamitu-page .spesamitu-25-articoli .card-wrapper { background: #ff66ba !important; }
body.spesamitu-page .spesamitu-services-vari .card-wrapper,
body.spesamitu-page .slider4 .slide-content { background: #fcea38 !important; }
body.spesamitu-page .features12 .icon-box { background-color: #fcea38 !important; }
body.spesamitu-page .features12 .icon-box .mbr-iconfont,
body.spesamitu-page .features12 .icon-box .mbr-iconfont::before { color: #18532c !important; }
/* Descrizioni visibili nei pannelli bianchi di Home e Collabora. */
body.spesamitu-page #features16-4 .content-wrapper,
body.spesamitu-page #features16-2g .content-wrapper { background: #ffffff !important; }
body.spesamitu-page #features16-4 .text-wrapper p,
body.spesamitu-page #features16-4 .text-wrapper p *,
body.spesamitu-page #features16-2g .text-wrapper p,
body.spesamitu-page #features16-2g .text-wrapper p * {
  color: #050505 !important; visibility: visible !important; opacity: 1 !important;
}
body.spesamitu-page.spesamitu-page-home #features13-1n .mbr-section-title,
body.spesamitu-page.spesamitu-page-home #features13-1n .card-title { text-align: center !important; }
/* CTA dei menù: anche i controlli GloriaFood usano la palette condivisa. */
body.spesamitu-page .glf-button {
  display: inline-block !important;
  font-family: "Cascadia Mono", monospace !important;
  background: #ff66ba !important; border: 2px solid #ff66ba !important;
  color: #ffffff !important; border-radius: 999px !important;
  padding: .75rem 1.5rem !important; font-weight: 700 !important;
  font-size: 1rem !important; line-height: 1.4 !important;
  text-align: center; text-decoration: none !important; white-space: normal !important;
  max-width: 100%; cursor: pointer; box-shadow: none !important;
  transition: background-color .2s ease, border-color .2s ease;
}
body.spesamitu-page .glf-button:hover,
body.spesamitu-page .glf-button:focus-visible {
  background: #18532c !important; border-color: #18532c !important; color: #ffffff !important;
}
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn {
  background: #009742 !important; border-color: #009742 !important; color: #ffffff !important;
}
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn:hover,
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn:focus-visible {
  background: #18532c !important; border-color: #18532c !important; color: #ffffff !important;
}

/* ========================== REVIEWS ============================= */
body.spesamitu-page .people5,
body.spesamitu-page .spesamitu-review-section {
  background-color: var(--spesamitu-yellow) !important;
  padding-top: 4rem !important;
  padding-bottom: 5rem !important;
  overflow: hidden !important;
}
body.spesamitu-page .people5 .embla { position: relative; }
body.spesamitu-page .people5 .embla__button {
  z-index: 5 !important;
}
body.spesamitu-page .people5 .embla__button--prev { left: 1rem !important; margin-left: 0 !important; }
body.spesamitu-page .people5 .embla__button--next { right: 1rem !important; margin-right: 0 !important; }

/* =========================== PARTNERS =========================== */
body.spesamitu-page .spesamitu-partner-section,
body.spesamitu-page #clients1-27 {
  background-color: var(--spesamitu-white) !important;
  padding-top: 5rem !important;
  padding-bottom: 4rem !important;
  margin-top: 4rem !important;
  overflow: hidden !important;
}
body.spesamitu-page .spesamitu-partners-viewport {
  width: 100%;
  overflow: hidden;
  padding: 1.2rem 0 0.8rem;
}
body.spesamitu-page .spesamitu-partner-track {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 24px;
  width: max-content;
  will-change: transform;
  animation: spesamituPartnerMarquee 34s linear infinite;
}
body.spesamitu-page .spesamitu-partner-card {
  flex: 0 0 clamp(180px, 18vw, 245px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.7rem 0;
}
body.spesamitu-page .spesamitu-partner-card img {
  display: block;
  width: 100%;
  max-width: 215px;
  height: auto;
  max-height: 90px;
  object-fit: contain;
  opacity: 1;
}
@keyframes spesamituPartnerMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 12px)); }
}
@media (prefers-reduced-motion: reduce) {
  body.spesamitu-page .spesamitu-partner-track { animation: none !important; }
}

/* ======================= FOOTER SPACING ========================= */
body.spesamitu-page section.image3 {
  margin-top: 4rem !important;
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}
body.spesamitu-page section.image3 img {
  max-width: none !important;
  width: 100% !important;
  height: auto !important;
  display: block;
  margin: 0 auto;
}
body.spesamitu-page section.footer7 {
  margin-top: 1rem !important;
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
  background: var(--spesamitu-white) !important;
}
body.spesamitu-page section.footer7 p,
body.spesamitu-page section.footer7 strong { color: var(--spesamitu-black) !important; }

/* ============================ MOBILE ============================ */
@media (max-width: 768px) {
  body.spesamitu-page .navbar .navbar-brand img {
    height: 2.7rem !important;
  }
  
  body.spesamitu-page .people5,
  body.spesamitu-page .spesamitu-review-section {
    padding-top: 3rem !important;
    padding-bottom: 5rem !important;
    min-height: 560px;
  }
  body.spesamitu-page .people5 .embla__button {
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    height: 44px !important;
    margin-top: 0 !important;
  }
  body.spesamitu-page .spesamitu-partner-section,
  body.spesamitu-page #clients1-27 {
    padding-top: 4rem !important;
    padding-bottom: 3.5rem !important;
    margin-top: 4rem !important;
  }
  body.spesamitu-page .spesamitu-partner-track {
    gap: 18px;
    animation-duration: 24s;
  }
  body.spesamitu-page .spesamitu-partner-card {
    flex-basis: clamp(145px, 43vw, 190px);
  }
  body.spesamitu-page .spesamitu-partner-card img {
    max-width: 175px;
    max-height: 75px;
  }
  body.spesamitu-page section.image3 {
    margin-top: 3rem !important;
  }
}


/* Colori applicati soltanto ai titoli scelti. */
body.spesamitu-page .spesamitu-title-pink,
body.spesamitu-page .spesamitu-title-pink * { color: #ff66ba !important; }
body.spesamitu-page .spesamitu-title-green,
body.spesamitu-page .spesamitu-title-green * { color: #009742 !important; }
body.spesamitu-page .spesamitu-title-yellow,
body.spesamitu-page .spesamitu-title-yellow * { color: #fcea38 !important; }
/* SVG con dimensioni esterne coerenti col viewBox ritagliato. */
body.spesamitu-page img.spesamitu-feature-icon {
  display: block !important; width: auto !important; height: 110px !important;
  max-width: 100% !important; max-height: none !important;
  object-fit: contain; margin: 0 auto !important;
}
body.spesamitu-page .iconfont-wrapper:has(.spesamitu-feature-icon) {
  display: flex !important; align-items: center; justify-content: center;
  height: auto !important; min-height: 130px; margin-bottom: 1.5rem;
}
body.spesamitu-page section.image3 img { width: 100% !important; max-width: none !important; }
@media(max-width: 768px) {
  body.spesamitu-page img.spesamitu-feature-icon { height: 100px !important; }
  body.spesamitu-page .spesamitu-pattern-hero :is(h1,h2,h3,h4,h5,h6,p),
  body.spesamitu-page .spesamitu-pattern-hero :is(h1,h2,h3,h4,h5,h6,p) * { -webkit-text-stroke-width: 1.5px; }
}

/* RIFINITURE V3: CTA, gerarchia delle card e titoli responsive. */
body.spesamitu-page .btn,
body.spesamitu-page .btn *,
body.spesamitu-page .glf-button,
body.spesamitu-page .glf-button * { font-weight: 700 !important; }
body.spesamitu-page .spesamitu-phone-line { display: inline; }
body.spesamitu-page #header8-15 .mbr-section-title,
body.spesamitu-page #header8-15 .mbr-text { text-align: center !important; }
body.spesamitu-page #header8-15 .mbr-section-title { margin-bottom: 2.5rem !important; }
body.spesamitu-page #header8-15 .mbr-text { margin-top: 0 !important; }
/* Hero Home e Collabora: testo e contenitore crescono insieme. */
body.spesamitu-page.spesamitu-page-home #header14-2 .btn,
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn {
  font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
  padding: 1rem 2.25rem !important; line-height: 1.25 !important;
}
/* Ordinaora: elenco nero e CTA più leggibili, soprattutto su desktop. */
body.spesamitu-page.spesamitu-page-ordinaora .slider4 .item-content,
body.spesamitu-page.spesamitu-page-ordinaora .slider4 .item-content * { color: #050505 !important; }
body.spesamitu-page.spesamitu-page-ordinaora .slider4 .glf-button { font-size: 1.125rem !important; }
@media(min-width: 992px) {
  body.spesamitu-page.spesamitu-page-ordinaora .slider4 .glf-button {
    font-size: 1.25rem !important; padding: 1rem 2rem !important;
  }
}
/* Categorie: descrizione subordinata al nome dell'attività. */
body.spesamitu-page[class*="spesamitu-page-categoria"] .slider4 .item-title {
  font-size: 1.25rem !important; font-weight: 700 !important; line-height: 1.35 !important;
}
body.spesamitu-page[class*="spesamitu-page-categoria"] .slider4 .item-subtitle {
  font-size: 1rem !important; font-weight: 400 !important; line-height: 1.45 !important;
}
/* CTA tariffa/servizi: la larghezza segue il testo come per l'altro Ordina da qui. */
body.spesamitu-page .spesamitu-25-articoli .mbr-section-btn .btn,
body.spesamitu-page .spesamitu-services-vari .mbr-section-btn .btn {
  width: auto !important; min-width: 0 !important;
  max-width: calc(100% - 1.2rem) !important;
  padding: .6rem 1.2rem !important; display: inline-flex !important;
}
body.spesamitu-page.spesamitu-page-cerca #form5-21 .btn,
body.spesamitu-page.spesamitu-page-listaspesa #form5-21 .btn {
  padding: .75rem 1.5rem !important; width: auto !important;
  max-width: calc(100% - 1.2rem) !important;
}
/* Solo Cerca: Tariffa rosa e 25 Articoli Spesa giallo. */
body.spesamitu-page.spesamitu-page-cerca .spesamitu-services-vari .card-wrapper { background: #ff66ba !important; }
body.spesamitu-page.spesamitu-page-cerca .spesamitu-25-articoli .card-wrapper { background: #fcea38 !important; }
@media(max-width: 767.98px) {
  body.spesamitu-page .spesamitu-phone-line { display: block; white-space: nowrap; }
  body.spesamitu-page .features12 .card-title { text-align: center !important; }
  body.spesamitu-page.spesamitu-page-home #info1-c .mbr-section-title {
    text-align: center !important; font-size: clamp(1.8rem, 8vw, 2.6rem) !important;
  }
  body.spesamitu-page #header8-15 .mbr-section-title { margin-bottom: 2rem !important; }
  body.spesamitu-page.spesamitu-page-home #header14-2 .btn,
  body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn { padding: .9rem 1.75rem !important; }
}

body.spesamitu-page.spesamitu-page-ordinaora .slider4 .mbr-section-title,
body.spesamitu-page[class*="spesamitu-page-categoria"] .slider4 .mbr-section-title {
  font-size: 3.2rem !important; font-weight: 700 !important; line-height: 1.2 !important;
}
@media(max-width:767.98px){
  body.spesamitu-page.spesamitu-page-home #features16-4 .text-wrapper,
  body.spesamitu-page.spesamitu-page-home #features16-4 .text-wrapper h6,
  body.spesamitu-page.spesamitu-page-home #features16-4 .text-wrapper p,
  body.spesamitu-page.spesamitu-page-home #features16-4 .mbr-section-btn { text-align: center !important; }
  body.spesamitu-page.spesamitu-page-ordinaora .slider4 .mbr-section-title,
  body.spesamitu-page[class*="spesamitu-page-categoria"] .slider4 .mbr-section-title {
    font-size: clamp(1.8rem,8vw,2.6rem) !important;
  }
}

/* V4 — gerarchia tipografica. Le descrizioni delle card e delle istruzioni
   sono contenuto, anche quando il template usa un tag h5/h6. */
body.spesamitu-page :is(h1,h2,h3,h4,h5,h6):not(.item-subtitle):not(.icon-text),
body.spesamitu-page .mbr-section-title,
body.spesamitu-page .card-title,
body.spesamitu-page .icon-title,
body.spesamitu-page .item-title,
body.spesamitu-page .navbar .nav-link,
body.spesamitu-page .navbar .dropdown-item { font-weight: 700 !important; }
body.spesamitu-page .people5 .user_name,
body.spesamitu-page .people5 .user_name * { font-weight: 700 !important; }
body.spesamitu-page .people5 .user_desk,
body.spesamitu-page .people5 .user_desk * { font-weight: 600 !important; }
body.spesamitu-page .features9 .price,
body.spesamitu-page .features9 .price * {
  font-size: clamp(1.25rem, 1.67vw, 1.6rem) !important;
  font-weight: 700 !important; line-height: 1.2 !important;
}
/* Il testo cresce visivamente del 10%; l'ingombro e il padding del CTA
   restano quelli della V3, inclusi i controlli collegati a GloriaFood. */
body.spesamitu-page .glf-button .spesamitu-cta-label {
  display: inline-block; transform: scale(1.10); transform-origin: center;
  font-size: inherit !important; line-height: inherit !important;
}
body.spesamitu-page #header8-15 .mbr-section-title { margin-bottom: 4rem !important; }
body.spesamitu-page.spesamitu-page-collabora #header14-2e .mbr-text { font-weight: 700 !important; }
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn {
  font-size: clamp(1.25rem, 1.6vw, 1.5rem) !important;
  padding: .8rem 1.75rem !important;
}
@media(min-width: 992px) {
  body.spesamitu-page.spesamitu-page-ordinaora .slider4 .item-content li,
  body.spesamitu-page.spesamitu-page-ordinaora .slider4 .item-content li * { font-size: 1.375rem !important; }
  body.spesamitu-page[class*="spesamitu-page-categoria"] .slider4 .item-title { font-size: 1.375rem !important; }
  body.spesamitu-page.spesamitu-page-listaspesa #form5-21 .mbr-section-title,
  body.spesamitu-page.spesamitu-page-cerca #form5-21 .mbr-section-title { font-size: 3.2rem !important; }
}
@media(max-width: 767.98px) {
  body.spesamitu-page.spesamitu-page-home #features13-1n .card-title,
  body.spesamitu-page.spesamitu-page-home #features23-b .mbr-section-title {
    font-size: clamp(1.9rem, 8.5vw, 2.7rem) !important;
  }
  body.spesamitu-page #header8-15 .mbr-section-title { margin-bottom: 3rem !important; }
}

/* V5 — proporzioni e spazi. Il tema originale imposta gli span a 400:
   gli span nei titoli devono invece ereditare il peso del titolo. */
body.spesamitu-page :is(.mbr-section-title,.card-title,.icon-title,.item-title) :is(span,strong,b),
body.spesamitu-page .spesamitu-phone-line { font-weight: 700 !important; }
body.spesamitu-page .people5 .user_name { font-size: 1.3rem !important; line-height: 1.35 !important; }
/* Il blocco Partner ha identico respiro esterno sopra e sotto. */
body.spesamitu-page #clients1-27.spesamitu-partner-section {
  margin-top: 0 !important; margin-bottom: 0 !important;
  padding-top: 3.5rem !important; padding-bottom: 3.5rem !important;
}
body.spesamitu-page #clients1-27 .mbr-section-head { margin: 0 0 1.75rem !important; }
body.spesamitu-page #clients1-27 .mbr-section-title { margin-bottom: 0 !important; }
body.spesamitu-page #clients1-27 .spesamitu-partners-viewport { padding-top: 0; padding-bottom: 0; }
/* Spazio uguale prima del logo e fra logo e copyright. */
body.spesamitu-page section.image3 {
  margin-top: 0 !important; margin-bottom: 0 !important;
  padding-top: 2.5rem !important; padding-bottom: 2.5rem !important;
}
body.spesamitu-page section.image3 .image-wrapper { margin: 0 !important; }
body.spesamitu-page section.image3 + section.footer7 { margin-top: 0 !important; padding-top: 0 !important; }
/* Le tre intestazioni delle icone sono più grandi del corpo di testo. */
body.spesamitu-page .features1 h5.card-title { font-size: 1.35rem !important; line-height: 1.3 !important; }
/* Etichette delle tariffe leggermente più piccole. */
body.spesamitu-page .features9 h4.card-title { font-size: 1.8rem !important; line-height: 1.3 !important; }
/* CTA tariffa centrati, senza estenderli per tutta la pagina. */
body.spesamitu-page .features9 .mbr-section-btn {
  display: flex !important; align-items: center; justify-content: center !important;
  text-align: center !important;
}
body.spesamitu-page.spesamitu-page-listaspesa .spesamitu-services-vari .mbr-section-btn .btn,
body.spesamitu-page.spesamitu-page-cerca .spesamitu-25-articoli .mbr-section-btn .btn {
  font-size: 1.2rem !important; padding: .7rem 1.4rem !important;
}
/* Hero: CTA più raccolti e staccati dal testo. */
body.spesamitu-page.spesamitu-page-home #header14-2 .btn,
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn {
  font-size: 1.125rem !important; padding: .65rem 1.4rem !important;
}
@media(min-width:992px) {
  body.spesamitu-page.spesamitu-page-home #header14-2 .mbr-section-title,
  body.spesamitu-page.spesamitu-page-collabora #header14-2e .mbr-section-title { font-size: 3.2rem !important; }
  body.spesamitu-page.spesamitu-page-home #header14-2 .mbr-section-btn,
  body.spesamitu-page.spesamitu-page-collabora #header14-2e .mbr-section-btn { margin-top: 2rem !important; }
  body.spesamitu-page.spesamitu-page-home #form2-8 .mbr-section-title {
    font-size: clamp(1.7rem, 2.9vw, 2.7rem) !important; white-space: nowrap;
  }
}
@media(max-width:767.98px) {
  body.spesamitu-page .people5 .user_name { font-size: 1.25rem !important; }
  body.spesamitu-page #clients1-27.spesamitu-partner-section { padding-top: 2.5rem !important; padding-bottom: 2.5rem !important; }
  body.spesamitu-page #clients1-27 .mbr-section-head { margin-bottom: 1.5rem !important; }
  body.spesamitu-page section.image3 { padding-top: 2rem !important; padding-bottom: 2rem !important; }
  body.spesamitu-page .features1 h5.card-title { font-size: 1.25rem !important; }
  body.spesamitu-page .features9 h4.card-title { font-size: 1.35rem !important; }
  body.spesamitu-page #header8-15 .mbr-section-title { margin-bottom: 4rem !important; }
  body.spesamitu-page.spesamitu-page-home #info1-c .mbr-section-title,
  body.spesamitu-page.spesamitu-page-collabora #header14-2e .mbr-section-title { font-size: clamp(2rem,8.8vw,2.85rem) !important; }
}
body.spesamitu-page #features10-19 h3.spesamitu-heading-up.mbr-fonts-style,
body.spesamitu-page #features13-18 h4.spesamitu-heading-up.mbr-fonts-style,
body.spesamitu-page #info1-1a h3.spesamitu-heading-up.mbr-fonts-style,
body.spesamitu-page #people5-u h3.spesamitu-heading-up.mbr-fonts-style { font-size: 3.2rem !important; line-height: 1.3 !important; }
@media(max-width:767.98px){
body.spesamitu-page #features10-19 h3.spesamitu-heading-up.mbr-fonts-style,
body.spesamitu-page #features13-18 h4.spesamitu-heading-up.mbr-fonts-style,
body.spesamitu-page #info1-1a h3.spesamitu-heading-up.mbr-fonts-style,
body.spesamitu-page #people5-u h3.spesamitu-heading-up.mbr-fonts-style { font-size: clamp(2rem,8.8vw,2.85rem) !important; }
}
body.spesamitu-page #slider4-10 h3.mbr-section-title { font-size: 3.4rem !important; }
@media(max-width:767.98px){body.spesamitu-page #slider4-10 h3.mbr-section-title { font-size: clamp(2rem,8.8vw,2.85rem) !important; }}

/* V6 — stesso ingombro per i due CTA dei pattern, indipendente dal testo. */
body.spesamitu-page.spesamitu-page-home #header14-2 .btn,
body.spesamitu-page.spesamitu-page-collabora #header14-2e .btn {
  box-sizing: border-box !important; width: 12rem !important;
  height: 3rem !important; min-height: 3rem !important;
  padding: .65rem 1rem !important; max-width: calc(100% - 1.2rem);
}
/* Il CTA è ora un figlio diretto del container, non di una row Bootstrap. */
body.spesamitu-page .features9 > .container > .spesamitu-order-cta {
  display: flex !important; justify-content: center !important;
  align-items: center !important; width: 100% !important;
  margin: 2.5rem 0 0 !important; padding: 0 !important;
}
body.spesamitu-page .features9 .spesamitu-order-cta > .btn {
  flex: 0 0 auto !important; width: auto !important;
  margin-left: 0 !important; margin-right: 0 !important;
}
body.spesamitu-page .spesamitu-fixed-title-line {
  display: block; font-weight: inherit !important; line-height: inherit !important;
}
body.spesamitu-page .spesamitu-phone-line { line-height: inherit !important; }

@media(min-width:992px){
body.spesamitu-page #features13-18 h4.card-title.spesamitu-order-title { white-space: nowrap !important; font-size: clamp(1.7rem,3.1vw,3rem) !important; }
body.spesamitu-page #features13-18 h4.card-title.spesamitu-order-title .spesamitu-phone-line { display: inline !important; }
}
@media(max-width:767.98px){
body.spesamitu-page #features13-18 h4.card-title.spesamitu-order-title { font-size: clamp(2rem,8.8vw,2.85rem) !important;
 line-height: 1.3 !important; letter-spacing: normal !important; text-align: center !important; }
body.spesamitu-page #features13-18 h4.card-title.spesamitu-order-title strong, body.spesamitu-page #features13-18 h4.card-title.spesamitu-order-title span { font-size: inherit !important; line-height: inherit !important; letter-spacing: inherit !important; }
}
