
body { background: #f7f7f7; color: #222222; }
#wrapper { background: #f7f7f7; padding-top: 1.5rem; }
.container { max-width: 1200px; }

#header { background: #ffffff; box-shadow: 0 2px 14px rgba(0,0,0,.08); position: relative; z-index: 20; }
#header .header-top { padding: 18px 0; }
#header .header-nav { border-bottom: 1px solid #eeeeee; background: #ffffff; }
#header .logo { max-height: 72px; }

#header .top-menu a, #header .menu a {
  font-weight: 600; text-transform: uppercase; font-size: 14px; letter-spacing: .02em; color: #222222;
}
#header .top-menu a:hover, #header .menu a:hover { color: #0b5ed7; text-decoration: none; }
#header .top-menu .sub-menu { border: 0; box-shadow: 0 8px 28px rgba(0,0,0,.12); border-radius: 10px; overflow: hidden; }

#search_widget form input {
  border-radius: 28px; border: 1px solid #dddddd; background: #fafafa; padding-left: 18px;
}
#search_widget form input:focus { border-color: #0b5ed7; background: #fff; outline: none; }

.products-section-title, .featured-products h2, .t24-hbs-section .products-section-title {
  font-size: 28px; font-weight: 800; color: #222222; margin-bottom: 30px; text-align: center; position: relative; letter-spacing: .02em;
}
.products-section-title::after, .featured-products h2::after, .t24-hbs-section .products-section-title::after {
  content: ''; display: block; width: 72px; height: 3px; background: #0b5ed7; margin: 12px auto 0; border-radius: 6px;
}

.product-miniature .thumbnail-container, .t24-hbs-product {
  background: #fff; border-radius: 16px; border: 1px solid #eeeeee; box-shadow: 0 4px 18px rgba(0,0,0,.06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; overflow: hidden;
}
.product-miniature .thumbnail-container:hover, .t24-hbs-product:hover { transform: translateY(-4px); box-shadow: 0 10px 28px rgba(0,0,0,.12); border-color: #e0e0e0; }

.product-miniature .product-title a, .t24-hbs-title a { color: #222222; font-weight: 600; }
.product-miniature .product-title a:hover, .t24-hbs-title a:hover { color: #0b5ed7; text-decoration: none; }
.product-miniature .product-price-and-shipping, .t24-hbs-price { color: #0b5ed7; font-weight: 800; font-size: 1.05rem; }

.product-flags li.product-flag { border-radius: 20px; font-weight: 700; padding: .35rem .7rem; }

.btn-primary, .product-add-to-cart .btn, .add-to-cart {
  background: #0b5ed7; border-color: #0b5ed7; border-radius: 30px; font-weight: 700; padding: 10px 22px; box-shadow: none;
}
.btn-primary:hover, .product-add-to-cart .btn:hover, .add-to-cart:hover {
  background: #084298; border-color: #084298;
}

.block-category {
  background: #fff; border-radius: 16px; border: 1px solid #eeeeee; padding: 1.5rem; box-shadow: 0 4px 18px rgba(0,0,0,.06);
}
.block-category h1 { font-weight: 800; }

#wrapper .breadcrumb { background: transparent; padding: 0 0 1rem; }
#wrapper .breadcrumb li a { color: #555; }
#wrapper .breadcrumb li a:hover { color: #0b5ed7; }

.modal-content { border-radius: 18px; border: 0; box-shadow: 0 12px 40px rgba(0,0,0,.18); }
.cart-preview.active { background: #0b5ed7; }

#footer { background: #202020; color: #fff; padding-top: 40px; margin-top: 2rem; }
#footer .footer-container { background: transparent; box-shadow: none; padding-top: 2rem; }
#footer a { color: #dddddd; }
#footer a:hover { color: #fff; text-decoration: none; }
#footer .h3, #footer .h4, #footer h3, #footer h4 { color: #fff; font-weight: 800; }

.t24-home-best-sellers { margin: 2rem 0; }
.t24-hbs-section { margin-bottom: 2.5rem; }
.t24-hbs-products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.t24-hbs-product { padding: 1rem; text-align: center; }
.t24-hbs-product img { max-width: 100%; height: auto; }
.t24-hbs-title { font-size: .95rem; line-height: 1.35; min-height: 2.5rem; margin: .75rem 0; }

@media (max-width: 991px) {
  #header .header-top { padding: 12px 0; }
  .products-section-title, .featured-products h2, .t24-hbs-section .products-section-title { font-size: 24px; }
  .t24-hbs-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  #wrapper { padding-top: 1rem; }
  .t24-hbs-products { grid-template-columns: repeat(1, minmax(0, 1fr)); }
}
/* =====================================
   COLORI TUTTOCAFFE24
   ===================================== */

/* Badge non disponibile */
.product-flags .out_of_stock {
    background: #E6CB9C !important;
    color: #2F1B14 !important;
}

/* Hover menu */
#header #top-menu .dropdown-item:hover,
#header #top-menu .dropdown-item:focus,
#header #top-menu li:hover > a {
    color: #76341C !important;
}

/* Prezzi */
.product-price,
.price,
.current-price-value,
.product-price-and-shipping .price,
.product-miniature .product-price-and-shipping,
.t24-hbs-price {
    color: #76341C !important;
    font-weight: 700;
}

/* Linea sotto i titoli */
.products-section-title::after,
.featured-products h2::after,
.t24-hbs-section .products-section-title::after {
    background: #76341C !important;
}

/* Sottocategorie */
#subcategories ul li h5 a,
#subcategories ul li h5 a.subcategory-name,
#subcategories .subcategory-name {
    color: #76341C !important;
}

#subcategories ul li h5 a:hover,
#subcategories ul li h5 a.subcategory-name:hover,
#subcategories .subcategory-name:hover {
    color: #E6CB9C !important;
    text-decoration: none !important;
}

/* =====================================
   FOOTER
   ===================================== */

/* Sfondo footer */
#footer,
#footer .footer-container,
.footer-container,
.footer-after,
#blockEmailSubscription_displayFooterBefore,
#blockEmailSubscription_displayFooterBefore .block_newsletter,
.block-copyright {
    background: #C9A66B !important;
}

/* Titoli footer */
#footer h3,
#footer h4,
#footer .h3,
#footer .h4,
#footer .block-contact-title {
    color: #76341C !important;
}

/* Testi footer */
#footer,
#footer p,
#footer li,
#footer span,
#footer .block-contact {
    color: #76341C !important;
}

/* Link footer */
#footer a {
    color: #76341C !important;
    font-weight: 500;
}

#footer a:hover {
    color: #E6CB9C !important;
    text-decoration: none;
}

/* Newsletter centrata */
#blockEmailSubscription_displayFooterBefore {
    max-width: 900px;
    margin: 0 auto 40px auto;
}

/* Footer a due colonne */
#footer .footer-container .row {
    justify-content: center;
}

#footer .links,
#footer .block-contact {
    flex: 0 0 320px;
    max-width: 320px;
    margin: 0 40px;
}

/* Nasconde colonne vuote */
#footer .footer-container .col-md-2:empty,
#footer .footer-container .col-md-3:empty,
#footer .footer-container .col-md-4:empty {
    display: none;
}

/* Centra footer */
#footer .footer-container {
    text-align: center;
}

#footer .links ul,
#footer .block-contact {
    text-align: left;
    display: inline-block;
}
