/* ============================================
   POSITIVE COLORS - Product Page Custom Styles
   Theme override for PrestaShop 9 Classic
   Using !important to override compiled theme.css
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;600&display=swap');

:root {
    --pc-brand-dark: #40446a;
    --pc-brand-light: #bcc0db;
    --pc-brand-mid: #5c6094;
    --pc-brand-accent: #6c72a0;
    --pc-brand-pale: #e8eaf3;
    --pc-brand-hover: #353860;
    --pc-text-primary: #1a1d2e;
    --pc-text-secondary: #5a5d72;
    --pc-text-muted: #8b8ea0;
    --pc-bg-white: #ffffff;
    --pc-bg-soft: #f7f8fc;
    --pc-border: #e2e4ee;
    --pc-success: #2a9d6c;
    --pc-radius-sm: 6px;
    --pc-radius-md: 10px;
    --pc-radius-lg: 16px;
}

/* ============================================
   GALLERY - LEFT COLUMN
   ============================================ */

#content .images-container .product-cover {
    background: var(--pc-bg-soft) !important;
    border-radius: var(--pc-radius-lg) !important;
    border: 1px solid var(--pc-border) !important;
    overflow: hidden !important;
    position: relative !important;
}

#content .images-container .product-cover img {
    object-fit: contain !important;
    padding: 16px !important;
}

#content .images-container .product-cover .layer {
    background: rgba(64, 68, 106, 0.08) !important;
}

#content .images-container .product-cover .layer .zoom-in {
    color: var(--pc-brand-dark) !important;
}

#content .images-container .product-images {
    display: flex !important;
    gap: 10px !important;
    list-style: none !important;
    padding: 0 !important;
    margin-top: 14px !important;
}

#content .images-container .product-images li.thumb-container {
    margin-right: 0 !important;
}

#content .images-container .product-images .thumb {
    width: 72px !important;
    height: 72px !important;
    border-radius: var(--pc-radius-sm) !important;
    border: 2px solid var(--pc-border) !important;
    background: var(--pc-bg-soft) !important;
    cursor: pointer !important;
    transition: border-color 0.15s !important;
    object-fit: cover !important;
    padding: 4px !important;
}

#content .images-container .product-images .thumb:hover,
#content .images-container .product-images .thumb.selected,
#content .images-container .product-images .thumb.js-thumb-selected {
    border-color: var(--pc-brand-dark) !important;
}

body#product .scroll-box-arrows {
    display: none !important;
}

/* ============================================
   PRODUCT FLAGS / BADGES
   ============================================ */

#main .product-flags {
    display: flex !important;
    gap: 8px !important;
    margin-bottom: 16px !important;
    list-style: none !important;
    padding: 0 !important;
}

#main .product-flags li {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 5px 12px !important;
    border-radius: 100px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    font-family: 'DM Sans', sans-serif !important;
    letter-spacing: 0.02em !important;
    background: var(--pc-brand-pale) !important;
    color: var(--pc-brand-dark) !important;
    min-width: auto !important;
    min-height: auto !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
}

#main .product-flags li.discount {
    background: #ecfdf5 !important;
    color: #166534 !important;
}

#main .product-flags li.on-sale {
    background: #fff1f2 !important;
    color: #9f1239 !important;
}

#main .product-flags li.new {
    background: #ecfdf5 !important;
    color: #166534 !important;
}

/* ============================================
   TITLE
   ============================================ */

body#product #main h1.h1,
body#product #main h1 {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    color: var(--pc-text-primary) !important;
    margin-bottom: 10px !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
    text-transform: none !important;
}

/* ============================================
   SHORT DESCRIPTION
   ============================================ */

body#product .product-information > .product-description {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 15px !important;
    color: var(--pc-text-secondary) !important;
    margin-bottom: 28px !important;
    line-height: 1.6 !important;
}

/* ============================================
   PRICE DISPLAY
   ============================================ */

body#product .product-prices,
body#product .product-prices.js-product-prices {
    background: var(--pc-bg-soft) !important;
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    padding: 20px 24px !important;
    margin-bottom: 28px !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}

body#product .product-prices .product-price {
    margin: 0 !important;
    padding: 0 !important;
}

body#product .product-prices .current-price-value,
body#product .product-prices .current-price .current-price-value {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 36px !important;
    font-weight: 800 !important;
    color: var(--pc-brand-dark) !important;
    letter-spacing: -0.02em !important;
    line-height: 1 !important;
}

body#product .product-prices .product-discount .regular-price {
    font-size: 16px !important;
    color: var(--pc-text-muted) !important;
}

body#product .product-prices .discount {
    display: inline-block !important;
    padding: 2px 10px !important;
    border-radius: 100px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    background: #ecfdf5 !important;
    color: #166534 !important;
    margin-left: 8px !important;
    text-transform: none !important;
}

body#product .product-prices .tax-shipping-delivery-label {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    color: var(--pc-text-muted) !important;
    width: 100% !important;
}

body#product .product-prices .delivery-information {
    font-weight: 500 !important;
    color: var(--pc-text-secondary) !important;
}

/* ============================================
   VARIANT SELECTORS (Pills)
   ============================================ */

body#product .product-variants {
    margin-bottom: 24px !important;
}

body#product .product-variants .product-variants-item {
    margin-bottom: 20px !important;
}

body#product .product-variants .product-variants-item .control-label {
    display: block !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--pc-text-secondary) !important;
    margin-bottom: 8px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
}

body#product .product-variants-item select.form-control,
body#product .product-variants-item select.form-control-select {
    font-family: 'DM Sans', sans-serif !important;
    padding: 10px 18px !important;
    border: 2px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-sm) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--pc-text-secondary) !important;
    background: var(--pc-bg-white) !important;
    cursor: pointer !important;
    min-width: 200px !important;
    height: auto !important;
}

body#product .product-variants-item select.form-control:hover,
body#product .product-variants-item select.form-control:focus {
    border-color: var(--pc-brand-dark) !important;
    color: var(--pc-text-primary) !important;
    outline: none !important;
    box-shadow: none !important;
}

body#product .product-variants-item ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body#product .product-variants-item ul li {
    float: none !important;
    margin: 0 !important;
}

body#product .product-variants-item .input-radio {
    display: none !important;
}

body#product .product-variants-item .radio-label {
    display: inline-block !important;
    padding: 10px 18px !important;
    border: 2px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-sm) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--pc-text-secondary) !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    background: var(--pc-bg-white) !important;
    user-select: none !important;
}

body#product .product-variants-item .radio-label:hover {
    border-color: var(--pc-brand-light) !important;
    color: var(--pc-text-primary) !important;
    background: var(--pc-brand-pale) !important;
}

body#product .product-variants-item .input-radio:checked + .radio-label {
    border-color: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    background: var(--pc-brand-dark) !important;
    font-weight: 600 !important;
}

body#product .product-variants-item .input-color {
    display: none !important;
}

body#product .product-variants-item li .color {
    display: block !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: var(--pc-radius-sm) !important;
    border: 2px solid var(--pc-border) !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
}

body#product .product-variants-item li .color:hover,
body#product .product-variants-item .input-color:checked + .color {
    border-color: var(--pc-brand-dark) !important;
    box-shadow: 0 0 0 2px var(--pc-brand-pale) !important;
    transform: scale(1.1) !important;
}

/* ============================================
   ADD TO CART
   ============================================ */

body#product .product-add-to-cart {
    margin-bottom: 24px !important;
}

body#product .product-add-to-cart > .control-label {
    display: none !important;
}

body#product .product-add-to-cart .product-quantity {
    display: flex !important;
    gap: 12px !important;
    align-items: stretch !important;
}

body#product .product-add-to-cart .qty {
    display: flex !important;
    align-items: center !important;
    border: 2px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-sm) !important;
    overflow: hidden !important;
    background: var(--pc-bg-white) !important;
}

body#product .product-add-to-cart .qty input#quantity_wanted,
body#product .product-add-to-cart .qty input[name="qty"] {
    width: 56px !important;
    text-align: center !important;
    border: none !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--pc-text-primary) !important;
    outline: none !important;
    padding: 10px 4px !important;
    -moz-appearance: textfield !important;
    background: transparent !important;
    box-shadow: none !important;
    height: auto !important;
}

body#product .product-add-to-cart .add {
    flex: 1 !important;
}

body#product .product-add-to-cart .btn.add-to-cart,
body#product .product-add-to-cart button.add-to-cart {
    width: 100% !important;
    height: 48px !important;
    background: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    border: none !important;
    border-radius: var(--pc-radius-sm) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    padding: 0 24px !important;
    box-shadow: none !important;
}

body#product .product-add-to-cart .btn.add-to-cart:hover,
body#product .product-add-to-cart button.add-to-cart:hover {
    background: var(--pc-brand-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 16px rgba(64, 68, 106, 0.3) !important;
}

body#product .product-add-to-cart .btn.add-to-cart:disabled,
body#product .product-add-to-cart button.add-to-cart:disabled {
    background: var(--pc-border) !important;
    color: var(--pc-text-muted) !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
    transform: none !important;
}

body#product .product-add-to-cart .btn.add-to-cart i.material-icons {
    font-size: 20px !important;
}

body#product .product-availability .alert {
    border-radius: var(--pc-radius-sm) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 13px !important;
    padding: 10px 16px !important;
    margin-top: 12px !important;
}

/* ============================================
   TABS
   ============================================ */

body#product .product-information .tabs {
    margin-top: 48px !important;
    border-top: 1px solid var(--pc-border) !important;
    padding-top: 32px !important;
}

body#product .tabs .nav-tabs {
    border-bottom: 2px solid var(--pc-border) !important;
    margin-bottom: 24px !important;
}

body#product .tabs .nav-tabs .nav-link {
    padding: 12px 24px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--pc-text-muted) !important;
    background: none !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    margin-bottom: -2px !important;
    border-radius: 0 !important;
}

body#product .tabs .nav-tabs .nav-link:hover {
    color: var(--pc-text-primary) !important;
    background: none !important;
}

body#product .tabs .nav-tabs .nav-link.active {
    color: var(--pc-brand-dark) !important;
    border-bottom-color: var(--pc-brand-dark) !important;
    background: none !important;
}

body#product .tab-content {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    color: var(--pc-text-secondary) !important;
    line-height: 1.7 !important;
}

/* ============================================
   SPEC GRID
   ============================================ */

body#product .product-features .data-sheet {
    display: grid !important;
    grid-template-columns: 180px 1fr !important;
    gap: 0 !important;
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-sm) !important;
    overflow: hidden !important;
    margin-top: 12px !important;
}

body#product .product-features .data-sheet dt,
body#product .product-features .data-sheet dt.name {
    padding: 10px 16px !important;
    background: var(--pc-bg-soft) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    color: var(--pc-text-primary) !important;
    border-bottom: 1px solid var(--pc-border) !important;
    margin: 0 !important;
    float: none !important;
    width: auto !important;
}

body#product .product-features .data-sheet dd,
body#product .product-features .data-sheet dd.value {
    padding: 10px 16px !important;
    font-size: 13px !important;
    color: var(--pc-text-secondary) !important;
    border-bottom: 1px solid var(--pc-border) !important;
    margin: 0 !important;
    float: none !important;
    width: auto !important;
    background: var(--pc-bg-white) !important;
}

/* ============================================
   REASSURANCE & CUSTOMIZATION
   ============================================ */

body#product .blockreassurance_product {
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    overflow: hidden !important;
    margin-bottom: 28px !important;
}

body#product .product-customization {
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
    background: var(--pc-bg-soft) !important;
}

/* ============================================
   ACCESSORIES
   ============================================ */

body#product .product-accessories {
    margin-top: 48px !important;
    padding-top: 32px !important;
    border-top: 1px solid var(--pc-border) !important;
}

body#product .product-accessories > .h5 {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--pc-text-primary) !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */

/* ============================================
   PILLS (converted from select)
   ============================================ */

body#product .pc-pills-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

body#product .pc-pill {
    padding: 10px 18px !important;
    border: 2px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-sm) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--pc-text-secondary) !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    background: var(--pc-bg-white) !important;
    user-select: none !important;
    line-height: 1.4 !important;
}

body#product .pc-pill:hover {
    border-color: var(--pc-brand-light) !important;
    color: var(--pc-text-primary) !important;
    background: var(--pc-brand-pale) !important;
}

body#product .pc-pill.active {
    border-color: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    background: var(--pc-brand-dark) !important;
    font-weight: 600 !important;
}

/* ============================================
   PRICE TABLE
   ============================================ */

body#product .pc-price-table-wrapper {
    margin-bottom: 28px !important;
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    overflow: hidden !important;
}

body#product .pc-price-table-header {
    background: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    padding: 12px 20px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

body#product .pc-price-table-header svg {
    width: 16px !important;
    height: 16px !important;
    opacity: 0.7 !important;
}

body#product .pc-price-table {
    width: 100% !important;
    border-collapse: collapse !important;
}

body#product .pc-price-table th {
    background: var(--pc-bg-soft) !important;
    padding: 10px 16px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--pc-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    text-align: left !important;
    border-bottom: 1px solid var(--pc-border) !important;
}

body#product .pc-price-table th:last-child,
body#product .pc-price-table td:last-child {
    text-align: right !important;
}

body#product .pc-price-table td {
    padding: 12px 16px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    border-bottom: 1px solid #f0f1f6 !important;
    color: var(--pc-text-primary) !important;
}

body#product .pc-price-table tr:last-child td {
    border-bottom: none !important;
}

body#product .pc-price-table tbody tr {
    cursor: pointer !important;
    transition: background 0.1s !important;
}

body#product .pc-price-table tbody tr:hover {
    background: var(--pc-brand-pale) !important;
}

body#product .pc-price-table tbody tr.selected {
    background: var(--pc-brand-pale) !important;
}

body#product .pc-price-table tbody tr.selected td {
    font-weight: 600 !important;
    color: var(--pc-brand-dark) !important;
}

body#product .pc-price-table .pc-qty {
    font-weight: 600 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
}

body#product .pc-price-table .pc-price-cell strong {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    color: var(--pc-brand-dark) !important;
}

body#product .pc-price-table .pc-brutto {
    font-size: 12px !important;
    color: var(--pc-text-muted) !important;
    font-weight: 400 !important;
}

body#product .pc-price-table .pc-loading {
    color: var(--pc-text-muted) !important;
}

body#product .pc-price-table .pc-na {
    color: var(--pc-text-muted) !important;
}

/* ============================================
   FEATURES STRIP
   ============================================ */

body#product .pc-features-strip {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 1px !important;
    background: var(--pc-border) !important;
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    overflow: hidden !important;
    margin-top: 20px !important;
    margin-bottom: 28px !important;
}

body#product .pc-features-strip .pc-feature-item {
    background: var(--pc-bg-white) !important;
    padding: 16px !important;
    text-align: center !important;
    font-family: 'DM Sans', sans-serif !important;
}

body#product .pc-features-strip .pc-feature-item svg {
    width: 24px !important;
    height: 24px !important;
    color: var(--pc-brand-mid) !important;
    margin-bottom: 8px !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body#product .pc-features-strip .pc-feature-item .f-label {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--pc-text-primary) !important;
    display: block !important;
}

body#product .pc-features-strip .pc-feature-item .f-value {
    font-size: 11px !important;
    color: var(--pc-text-muted) !important;
    margin-top: 2px !important;
    display: block !important;
}

/* ============================================
   TABS UNDER GALLERY (left column)
   ============================================ */

body#product .pc-tabs-under-gallery {
    margin-top: 32px !important;
    border-top: 1px solid var(--pc-border) !important;
    padding-top: 24px !important;
}

body#product .pc-tabs-under-gallery .nav-tabs {
    border-bottom: 2px solid var(--pc-border) !important;
    margin-bottom: 20px !important;
}

body#product .pc-tabs-under-gallery .nav-link {
    padding: 10px 20px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--pc-text-muted) !important;
    background: none !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    margin-bottom: -2px !important;
    border-radius: 0 !important;
}

body#product .pc-tabs-under-gallery .nav-link:hover {
    color: var(--pc-text-primary) !important;
    background: none !important;
}

body#product .pc-tabs-under-gallery .nav-link.active {
    color: var(--pc-brand-dark) !important;
    border-bottom-color: var(--pc-brand-dark) !important;
    background: none !important;
}

body#product .pc-tabs-under-gallery .tab-content {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    color: var(--pc-text-secondary) !important;
    line-height: 1.7 !important;
}

body#product .pc-tabs-under-gallery .tab-content h3,
body#product .pc-tabs-under-gallery .tab-content .h6 {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--pc-text-primary) !important;
    margin-bottom: 12px !important;
}

/* Left column: no sticky so tabs are visible */
body#product #content {
    position: static !important;
}

/* ============================================
   CUSTOMIZATION (upload file, save)
   ============================================ */

body#product .product-customization {
    margin-bottom: 20px !important;
}

body#product .product-customization .card {
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    background: var(--pc-bg-soft) !important;
    box-shadow: none !important;
}

body#product .product-customization .card-header {
    background: var(--pc-bg-soft) !important;
    border-bottom: 1px solid var(--pc-border) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: var(--pc-text-secondary) !important;
}

body#product .product-customization label {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--pc-text-secondary) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

body#product .product-customization .custom-file,
body#product .product-customization .custom-file-label {
    border-radius: var(--pc-radius-sm) !important;
    border-color: var(--pc-border) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 13px !important;
}

/* All buttons in customization section */
body#product .product-customization .btn,
body#product .product-customization button {
    background: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    border: none !important;
    border-radius: var(--pc-radius-sm) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
}

body#product .product-customization .btn:hover,
body#product .product-customization button:hover {
    background: var(--pc-brand-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(64, 68, 106, 0.25) !important;
}

/* File input button specifically */
body#product .product-customization .custom-file-label::after,
body#product .product-customization input[type="file"] + span,
body#product .product-customization .js-file-input + span {
    background: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    border-radius: 0 var(--pc-radius-sm) var(--pc-radius-sm) 0 !important;
    border: none !important;
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 600 !important;
}

/* Save customization button */
body#product button[name="submitCustomizedData"],
body#product .product-customization button[type="submit"] {
    background: var(--pc-brand-dark) !important;
    color: var(--pc-bg-white) !important;
    border: none !important;
    border-radius: var(--pc-radius-sm) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 10px 24px !important;
    height: 44px !important;
    width: auto !important;
    min-width: 200px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

body#product button[name="submitCustomizedData"]:hover,
body#product .product-customization button[type="submit"]:hover {
    background: var(--pc-brand-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(64, 68, 106, 0.25) !important;
}

/* ============================================
   REASSURANCE BLOCK
   ============================================ */

body#product .blockreassurance_product {
    border: 1px solid var(--pc-border) !important;
    border-radius: var(--pc-radius-md) !important;
    overflow: hidden !important;
    margin-top: 20px !important;
}

body#product .blockreassurance_product .reassurance-item {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 13px !important;
    color: var(--pc-text-secondary) !important;
    border-color: var(--pc-border) !important;
}

/* ============================================
   GLOBAL COLOR OVERRIDE - kill #24b9d7 / #2fb5d2
   Replace PrestaShop default turquoise everywhere
   ============================================ */

a:hover,
.btn-primary,
.btn-primary:hover,
a.btn-primary,
a.btn-primary:hover {
    color: var(--pc-brand-dark) !important;
}

.btn-primary,
a.btn-primary {
    background-color: var(--pc-brand-dark) !important;
    border-color: var(--pc-brand-dark) !important;
    color: #fff !important;
}

.btn-primary:hover,
a.btn-primary:hover {
    background-color: var(--pc-brand-hover) !important;
    border-color: var(--pc-brand-hover) !important;
    color: #fff !important;
}

/* Links globally */
a {
    color: var(--pc-brand-mid) !important;
}

a:hover {
    color: var(--pc-brand-dark) !important;
}

/* Header links back to normal */
#header a {
    color: inherit !important;
}

#header a:hover {
    color: var(--pc-brand-dark) !important;
}

/* Footer links */
.footer-container a {
    color: var(--pc-brand-light) !important;
}

.footer-container a:hover {
    color: #fff !important;
}

/* Breadcrumb */
.breadcrumb a {
    color: var(--pc-brand-mid) !important;
}

/* Product page links override back */
body#product a {
    color: var(--pc-brand-mid) !important;
}

body#product .product-title a,
body#product h1 a {
    color: var(--pc-text-primary) !important;
}

/* Alert links */
.alert a {
    color: inherit !important;
    text-decoration: underline !important;
}

/* ============================================
   MAIN MENU - Multi-column dropdown
   ============================================ */

/* Dropdown sub-menu container — full width, no inline width */
#header .top-menu .sub-menu,
#_desktop_top_menu .top-menu .sub-menu {
    width: 100% !important;
    min-width: 700px !important;
    max-width: 900px !important;
    padding: 20px !important;
}

/* Override the popover wrapper too */
#header .top-menu .popover,
#_desktop_top_menu .top-menu .popover {
    max-width: 900px !important;
    min-width: 700px !important;
}

/* The UL that holds depth-1 items — COLUMNS */
#header .top-menu .sub-menu ul[data-depth="1"],
#_desktop_top_menu .top-menu .sub-menu ul[data-depth="1"] {
    column-count: 3 !important;
    column-gap: 10px !important;
    max-height: 70vh !important;
    overflow-y: auto !important;
    display: block !important;
    width: 100% !important;
}

/* Each li — NOT float, block for columns to work */
#header .top-menu .sub-menu ul[data-depth="1"] > li,
#_desktop_top_menu .top-menu .sub-menu ul[data-depth="1"] > li {
    float: none !important;
    display: block !important;
    break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
    margin: 0 !important;
    padding: 2px 0 !important;
}

/* Links in dropdown */
#header .top-menu .sub-menu a[data-depth="1"],
#_desktop_top_menu .top-menu .sub-menu a[data-depth="1"] {
    padding: 6px 10px !important;
    font-size: 14px !important;
    color: var(--pc-text-primary) !important;
    white-space: nowrap !important;
    display: block !important;
    border-radius: 4px !important;
    transition: background 0.15s !important;
}

#header .top-menu .sub-menu a[data-depth="1"]:hover,
#_desktop_top_menu .top-menu .sub-menu a[data-depth="1"]:hover {
    background: var(--pc-brand-pale) !important;
    color: var(--pc-brand-dark) !important;
    text-decoration: none !important;
}

/* Top menu bar link colors */
#header .top-menu a[data-depth="0"],
#_desktop_top_menu .top-menu a[data-depth="0"] {
    color: var(--pc-text-primary) !important;
}

#header .top-menu a[data-depth="0"]:hover,
#_desktop_top_menu .top-menu a[data-depth="0"]:hover {
    color: var(--pc-brand-dark) !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 768px) {
    body#product #main h1.h1,
    body#product #main h1 {
        font-size: 24px !important;
    }

    body#product .product-prices .current-price-value {
        font-size: 28px !important;
    }

    body#product .product-features .data-sheet {
        grid-template-columns: 140px 1fr !important;
    }

    body#product .pc-features-strip {
        grid-template-columns: 1fr !important;
    }

    body#product .pc-price-table-wrapper {
        overflow-x: auto !important;
    }
}

/* ============================================
   LISTING PRODUKTÓW - Obrazki 1:1 + Nazwy
   ============================================ */

/* Kwadratowy kontener obrazka */
.product-miniature .thumbnail-container .thumbnail-top {
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    display: block !important;
}

.product-miniature .thumbnail-container .thumbnail-top a.product-thumbnail {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.product-miniature .thumbnail-container .thumbnail-top a.product-thumbnail picture {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.product-miniature .thumbnail-container .thumbnail-top a.product-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* Nazwa produktu - 2 linie */
.product-miniature .product-description .product-title a {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    white-space: normal !important;
}

