/**
 * NTLS Custom CSS for PrestaShop Classic Theme
 */

.product-thumbnail img {
    display: block;
    padding: 10px;
    transition: all 0.3s ease;
}

.product-thumbnail img:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.product-miniature {
    transition: all 0.3s ease;
}

.product-miniature:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}

.category-card .category-image img {
    padding: 8px;
    transition: all 0.3s ease;
}

.category-card .category-image img:hover {
    transform: scale(1.03);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
} 

.product-flags li.product-flag {
    font-size: 0.7rem;
    padding-top: 2px;
    padding-bottom: 2px;
}

.product-miniature .product-flags li.product-flag {
    border-radius: 12px;
    margin-left: 10px;
    min-height: auto;
}

.product-miniature .thumbnail-container {
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.block-categories {
  position: relative;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.block-categories::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 60px;
  height: 60px;
  background: linear-gradient(315deg, transparent 32px, #ffca9b 32px, #ffca9b 42px, transparent 42px),
              linear-gradient(315deg, transparent 10px, #ffca9b 10px, #ffca9b 18px, transparent 18px);
  border-bottom-right-radius: 8px;
  pointer-events: none;
  z-index: 2;
}

/* Product page */

.tabs {
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="search"] {
    border-radius: 8px;
}

.product-actions .add-to-cart {
    border-radius: 8px;
}

/* Checkout */

.card-block.checkout .btn-primary {
    border-radius: 8px;
}

.card-block.cart-detailed-subtotals+.cart-summary-totals .cart-total {
    border-top: 1px solid rgba(246, 135, 0, 0.761);
}

/* General */

body {
    /* font-family: 'Montserrat', 'Open Sans', sans-serif; */
    font-size: 0.9rem;
}

.card {
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.h1, .h2 {
    text-transform: none;
}

hr {
    border-top: 2px solid transparent;
    background-image: linear-gradient(to right, transparent, rgba(246, 135, 0, 0.761), transparent);
    height: 2px;
}

.separator {
    border: none;
    background-image: linear-gradient(to right, transparent, rgba(246, 135, 0, 0.761), transparent);
    height: 2px;
}

/* Top menu */

.top-menu .sub-menu {
    width: auto;
    min-width: auto;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.top-menu .sub-menu ul[data-depth="1"]>li {
    float: none;
}

.top-menu a.dropdown-submenu {
    text-transform: none;
    font-weight: inherit;
    position: relative;
    padding-left: 20px;
}

.top-menu a.dropdown-submenu::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background: radial-gradient(circle at 3px 3px, #ffca9b 0, #ffca9b 2px, transparent 2px),
                radial-gradient(circle at 9px 9px, #ffca9b 0, #ffca9b 2px, transparent 2px);
    background-size: 12px 12px;
    background-repeat: no-repeat;
}

#mobile_top_menu_wrapper .top-menu .sub-menu li>a {
    padding-left: 1.2rem;
}

/* Category page */

.block-category {
    min-height: auto;
}

.block-categories .category-sub-menu li {
    position: relative;
}

.block-categories .category-sub-menu li a {
    padding-left: 20px;
    position: relative;
}

.block-categories .category-sub-menu li a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background: radial-gradient(circle at 3px 3px, #ffca9b 0, #ffca9b 2px, transparent 2px),
                radial-gradient(circle at 9px 9px, #ffca9b 0, #ffca9b 2px, transparent 2px);
    background-size: 12px 12px;
    background-repeat: no-repeat;
}

/* Custom text block */
#custom-text {
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

#custom-text img {
    border-radius: 8px;
}

/* Header */
#header .header-nav .cart-preview.active {
    border-radius: 10px;
}
