/* CUSTOM PRODUCT DETAILS CSS - THEME COMPATIBLE VERSION */
:root {
    --primary-orange: #fb7701;
    --border-color: #ffd8b5;
    --text-main: #222;
    --sale-red: #e43d33;
    --text-secondary: #666;
}

/* PRODUCT INFO CONTAINER */
.product-info {
    padding: 0 2px 0 30px !important;
    width: 100%;
}

/* PRODUCT TITLE */
.product-title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 10px 0;
    color: var(--text-main);
}

/* RATING ROW */
.rating-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.reviews-link {
    color: var(--text-secondary);
    text-decoration: none;
    font-size: 13px;
    border-bottom: 1px dashed transparent;
    transition: all 0.2s;
}

.reviews-link:hover {
    color: var(--primary-orange);
    border-bottom-color: var(--primary-orange);
}

.brand-link {
    font-weight: 700;
    color: var(--text-main);
    text-decoration: none;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.brand-link:hover {
    color: var(--primary-orange);
}

.divider {
    color: #ddd;
}

.sold-by b {
    color: var(--text-main);
    font-weight: 700;
    cursor: pointer;
}

.sold-by b:hover {
    color: var(--primary-orange);
    text-decoration: underline;
}

/* PRICE ROW */
.price-row {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 15px 0;
}

.current-price {
    font-size: 26px;
    font-weight: bold;
    color: var(--primary-orange);
}

.original-price {
    text-decoration: line-through;
    color: var(--text-secondary);
    font-size: 15px;
}

.discount-badge {
    background: #fff0f0;
    color: var(--sale-red);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: bold;
}

/* FLASH SALE */
.fomo-box {
    background: #fff5eb;
    padding: 12px 15px;
    border-bottom: 2px solid var(--border-color);
    margin: 0;
    border-radius: 0;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.fomo-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.fomo-timer {
    color: var(--primary-orange);
    font-weight: bold;
    font-size: 14px;
}

.claimed-container {
    display: flex;
    align-items: center;
    gap: 8px;
}

.claimed-text {
    font-size: 12px;
    color: #666;
}

.claimed-bar-bg {
    width: 100px;
    height: 8px;
    background: #e0e0e0;
    border-radius: 10px;
    overflow: hidden;
}

.claimed-bar-fill {
    height: 100%;
    background: var(--primary-orange);
}

/* SELECTION GROUP */
.selection-group {
    border: 2px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    margin-top: 5px;
}

/* OPTION SECTIONS */
.option-section {
    padding: 12px 15px;
    border-bottom: 1px solid #f3f3f3;
}

.option-section:last-child {
    border-bottom: none;
}

.option-title {
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 10px;
    display: block;
    color: var(--text-main);
}

/* QUANTITY CONTROLS */
.quantity-controls {
    display: flex;
    border: 1px solid #ddd;
    border-radius: 4px;
    width: fit-content;
    overflow: hidden;
}

.quantity-btn {
    padding: 5px 15px;
    border: none;
    background: #f9f9f9;
    cursor: pointer;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-main);
}

.quantity-btn:hover {
    background: #f0f0f0;
}

.quantity-input {
    width: 45px;
    text-align: center;
    border: none;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-main);
}

.quantity-input:focus {
    outline: none;
    border-color: var(--primary-orange);
}

/* ACTION BUTTONS */
.action-buttons {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    align-items: center;
}

.btn-add,
.btn-buy {
    height: 48px;
    border-radius: 8px;
    font-weight: bold;
    cursor: pointer;
    border: none;
    font-size: 16px;
    flex: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}

.btn-add {
    background: #fff;
    color: var(--primary-orange);
    border: 1.5px solid var(--primary-orange);
}

.btn-add:hover {
    background: #fff9f5;
    transform: translateY(-1px);
}

.btn-buy {
    background: var(--primary-orange);
    color: #fff;
}

.btn-buy:hover {
    background: #e56a00;
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(251, 119, 1, 0.2);
}

.btn-icon {
    width: 48px;
    height: 48px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    transition: all 0.2s ease;
}

.btn-icon:hover {
    border-color: var(--primary-orange);
    color: var(--primary-orange);
    background-color: #fff9f5;
}

/* SHIPPING INFO */
.shipping-info {
    font-size: 12px;
    color: green;
    margin-top: 12px;
    line-height: 1.5;
    padding: 12px;
    background: #f9f9f9;
    border-radius: 6px;
    border-left: 3px solid green;
}

/* PRODUCT DETAILS */
.product-details {
    margin-top: 15px;
    padding: 12px;
    background: #f9f9f9;
    border-radius: 6px;
    border: 1px solid #eee;
}

.detail-title {
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 8px;
    color: var(--text-main);
}

.detail-list {
    font-size: 12px;
    color: var(--text-secondary);
    line-height: 1.4;
    margin: 0;
    padding: 0;
}

.detail-list li {
    margin-bottom: 4px;
    list-style-type: none;
    position: relative;
    padding-left: 15px;
}

.detail-list li:before {
    content: "•";
    color: var(--primary-orange);
    font-weight: bold;
    position: absolute;
    left: 0;
}

/* PRODUCT OPTIONS STYLING */
.product-option-wrapper {
    margin-bottom: 15px;
    padding: 12px 15px 12px 20px;
}

.product-option-title {
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 10px;
    display: block;
    color: var(--text-main);
    padding-left: 5px;
}

.product-option-values {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-option-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    cursor: pointer;
    padding-left: 5px;
}

.product-option-item input[type="checkbox"],
.product-option-item input[type="radio"] {
    accent-color: var(--primary-orange);
    width: 18px;
    height: 18px;
}

.product-option-item label {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ==================================================================
   CRITICAL: THEME COLOR SWATCH STYLING (DON'T INTERFERE WITH THEME)
   ================================================================== */

/* Make the theme's color swatches show images properly */
.ps-variant.ps-variant--image .ps-variant__swatch {
    width: 40px !important;
    height: 40px !important;
    background-size: cover !important;
    background-position: center !important;
    cursor: pointer !important;
    border-radius: 4px !important;
    border: 2px solid #ddd !important;
    display: inline-block !important;
}

/* Hide the text label inside image swatches */
.ps-variant.ps-variant--image .ps-variant__swatch span {
    display: none !important;
}

/* Highlight the active/selected color swatch */
.ps-variant.ps-variant--image.active .ps-variant__swatch {
    border-color: var(--primary-orange) !important;
    box-shadow: 0 0 0 1px var(--primary-orange) !important;
}

/* Add hover effect for better UX */
.ps-variant.ps-variant--image .ps-variant__swatch:hover {
    border-color: #aaa !important;
    transform: scale(1.05);
    transition: all 0.2s ease;
}

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

@media (max-width: 768px) {
    .product-title {
        font-size: 22px;
    }

    .rating-row {
        flex-wrap: wrap;
        gap: 8px;
    }

    .current-price {
        font-size: 22px;
    }

    .fomo-inline {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .action-buttons {
        flex-wrap: wrap;
    }

    .btn-add,
    .btn-buy {
        flex: 1 1 100%;
    }

    .btn-icon {
        flex: 1;
    }

    /* MOBILE SPACING FIX */
    .ps-page--product .ps-container {
        width: 96% !important;
        max-width: 96% !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
        margin: 0 auto !important;
    }

    .ps-product--detail {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    .product-info {
        padding: 0 2px !important;
    }

    .selection-group {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
}

@media (max-width: 480px) {
    .product-title {
        font-size: 18px;
    }

    .action-buttons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .btn-add,
    .btn-buy {
        grid-column: span 2;
        width: 100%;
    }

    .btn-icon {
        grid-column: span 1;
        width: 100%;
    }

    .product-info {
        padding: 0 2px !important;
    }

    .selection-group {
        width: 100%;
    }
}

/* Make video containers match product image dimensions */
.bb-product-video {
    aspect-ratio: 1/1 !important;
    /* Make it square like images */
    height: auto !important;
    min-height: 400px;
    /* Adjust as needed */
}

/* Override the 16:9 padding for embedded videos */
.bb-product-video>div[style*="padding-bottom: 56.25%"] {
    padding-bottom: 100% !important;
    /* Make it square */
    height: 0;
    position: relative;
}

/* Ensure iframes/videos fill the square container */
.bb-product-video iframe,
.bb-product-video video {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    background: #000;
}

/* For direct video elements */
.bb-product-video .media-video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

/* TikTok/Twitter embeds - make them square */
.bb-product-video>div[style*="min-height: 400px"] {
    min-height: 400px !important;
    aspect-ratio: 1/1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* ===================================
   FOOTER STYLING - MODERN DESIGN
   =================================== */

/* App Download Banner - Vibrant Gradient */
footer .bg-orange-50 {
    background: linear-gradient(135deg, #ff00ff 0%, #a855f7 25%, #8b5cf6 50%, #3b82f6 75%, #00d9ff 100%) !important;
    padding: 40px 0 !important;
    border-radius: 20px;
    margin: 0 20px 30px 20px;
    box-shadow: 0 10px 30px rgba(168, 85, 247, 0.3);
}

footer .bg-orange-50 h3 {
    color: #ffffff !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    margin-bottom: 8px !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

footer .bg-orange-50 p {
    color: rgba(255, 255, 255, 0.95) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

/* App Store Buttons */
footer .bg-orange-50 a {
    background: rgba(0, 0, 0, 0.9) !important;
    border: none !important;
    padding: 12px 24px !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

footer .bg-orange-50 a:hover {
    background: rgba(0, 0, 0, 1) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4) !important;
}

/* Footer Main Section */
footer.bg-white {
    background: #f5f5f5 !important;
    border-top: none !important;
    padding-top: 40px !important;
}

/* Footer Columns */
footer h4 {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #1a1a1a !important;
    margin-bottom: 16px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

footer ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

footer ul li {
    margin-bottom: 10px !important;
}

footer .footer-link {
    color: #4b5563 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
}

footer .footer-link:hover {
    color: #f97316 !important;
    transform: translateX(3px) !important;
    text-decoration: none !important;
}

/* Social Icons */
footer .social-icon {
    width: 36px !important;
    height: 36px !important;
    background: #1a1a1a !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    transition: all 0.3s ease !important;
    font-size: 16px !important;
}

footer .social-icon:hover {
    background: #f97316 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.4) !important;
}

/* Newsletter Section */
footer .newsletter-form input[type="email"] {
    border: 1px solid #d1d5db !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    background: #ffffff !important;
    transition: all 0.3s ease !important;
}

footer .newsletter-form input[type="email"]:focus {
    border-color: #f97316 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.1) !important;
}

footer .newsletter-form button {
    background: #1a1a1a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 24px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

footer .newsletter-form button:hover {
    background: #f97316 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.4) !important;
}

/* Payment Methods Section */
footer .border-t {
    border-color: #e5e7eb !important;
    padding-top: 30px !important;
    margin-top: 40px !important;
}

footer .payment-icon {
    font-size: 32px !important;
    color: #6b7280 !important;
    transition: all 0.3s ease !important;
}

footer .payment-icon:hover {
    color: #1a1a1a !important;
    transform: scale(1.1) !important;
}

/* Copyright and Info Text */
footer .text-gray-600 {
    color: #6b7280 !important;
    font-size: 14px !important;
}

footer .text-gray-400 {
    color: #9ca3af !important;
    font-size: 12px !important;
    line-height: 1.6 !important;
}

/* Responsive Footer */
@media (max-width: 768px) {
    footer .bg-orange-50 {
        margin: 0 10px 20px 10px !important;
        padding: 30px 20px !important;
        border-radius: 15px !important;
    }

    footer .bg-orange-50 h3 {
        font-size: 24px !important;
    }

    footer .bg-orange-50 p {
        font-size: 14px !important;
    }

    footer .grid {
        gap: 30px !important;
    }
}

/* Footer Container Adjustments */
footer .container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Ensure proper spacing */
footer .py-12 {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
}

footer .py-8 {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
}

/* Hide category sub-links on tablet/mobile */
@media (max-width: 1024px) {
    .ps-product-list .ps-section__links {
        display: none !important;
    }
}

/* ===================================
   PRODUCT TABS - MODERN REDESIGN
   =================================== */

/* Tab Container */
.ps-product__content.ps-tab-root {
    margin-top: 40px !important;
    padding: 0 !important;
}

/* Tab List - Modern Pills Design */
.ps-tab-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 30px 0 !important;
    border-bottom: none !important;
    background: transparent !important;
}

/* Individual Tab Items */
.ps-tab-list li {
    margin: 0 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

/* Tab Links - Pill Style with Border */
.ps-tab-list li a {
    display: inline-block !important;
    padding: 12px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #4b5563 !important;
    text-decoration: none !important;
    background: #ffffff !important;
    border: 2px solid #e5e7eb !important;
    border-radius: 25px !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
}

/* Tab Hover State */
.ps-tab-list li a:hover {
    color: #000000 !important;
    border-color: #000000 !important;
    background: #f9fafb !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

/* Active Tab */
.ps-tab-list li.active a {
    color: #ffffff !important;
    background: linear-gradient(135deg, #000000 0%, #1a1a1a 100%) !important;
    border-color: #000000 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

/* Tab Content Area */
.ps-tabs {
    background: #ffffff !important;
    border: 2px solid #e5e7eb !important;
    border-radius: 16px !important;
    padding: 30px !important;
    min-height: 300px !important;
}

/* Individual Tab Panels */
.ps-tab {
    display: none !important;
}

.ps-tab.active {
    display: block !important;
    animation: fadeIn 0.3s ease-in !important;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Tab Content Styling */
.ps-document,
.tp-product-details-additional-info {
    line-height: 1.8 !important;
    color: #374151 !important;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .ps-tab-list {
        gap: 8px !important;
        margin-bottom: 20px !important;
    }

    .ps-tab-list li a {
        padding: 10px 18px !important;
        font-size: 13px !important;
        border-radius: 20px !important;
    }

    .ps-tabs {
        padding: 20px !important;
        border-radius: 12px !important;
    }
}

@media (max-width: 480px) {
    .ps-tab-list {
        gap: 6px !important;
    }

    .ps-tab-list li a {
        padding: 8px 14px !important;
        font-size: 12px !important;
    }

    .ps-tabs {
        padding: 15px !important;
    }
}

/* Reorder tabs via CSS (Store first) */
.ps-tab-list li:has(a[href="#tab-vendor"]) {
    order: -1 !important;
}

.ps-tab-list li:has(a[href="#tab-description"]) {
    order: 1 !important;
}

.ps-tab-list li:has(a[href="#tab-specification"]) {
    order: 2 !important;
}

.ps-tab-list li:has(a[href="#tab-reviews"]) {
    order: 3 !important;
}

.ps-tab-list li:has(a[href="#tab-faq"]) {
    order: 4 !important;
}


}

/* ===================================
   PRODUCT TABS - MODERN REDESIGN
   =================================== */

/* Tab Container */
.ps-product__content.ps-tab-root {
    margin-top: 40px !important;
    padding: 0 !important;
}

/* Tab List - Modern Pills Design */
.ps-tab-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 30px 0 !important;
    border-bottom: none !important;
    background: transparent !important;
}

/* Individual Tab Items */
.ps-tab-list li {
    margin: 0 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

/* Tab Links - Pill Style with Border */
.ps-tab-list li a {
    display: inline-block !important;
    padding: 12px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #4b5563 !important;
    text-decoration: none !important;
    background: #ffffff !important;
    border: 2px solid #e5e7eb !important;
    border-radius: 25px !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
}

/* Tab Hover State */
.ps-tab-list li a:hover {
    color: #000000 !important;
    border-color: #000000 !important;
    background: #f9fafb !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

/* Active Tab */
.ps-tab-list li.active a {
    color: #ffffff !important;
    background: linear-gradient(135deg, #000000 0%, #1a1a1a 100%) !important;
    border-color: #000000 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

/* Tab Content Area */
.ps-tabs {
    background: #ffffff !important;
    border: 2px solid #e5e7eb !important;
    border-radius: 16px !important;
    padding: 30px !important;
    min-height: 150px !important;
}

/* Individual Tab Panels */
.ps-tab {
    display: none !important;
}

.ps-tab.active {
    display: block !important;
    animation: fadeIn 0.3s ease-in !important;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Tab Content Styling */
.ps-document,
.tp-product-details-additional-info {
    line-height: 1.8 !important;
    color: #374151 !important;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .ps-tab-list {
        gap: 8px !important;
        margin-bottom: 20px !important;
    }

    .ps-tab-list li a {
        padding: 10px 18px !important;
        font-size: 13px !important;
        border-radius: 20px !important;
    }

    .ps-tabs {
        padding: 20px !important;
        border-radius: 12px !important;
        min-height: 100px !important;
    }
}

@media (max-width: 480px) {
    .ps-tab-list {
        gap: 6px !important;
    }

    .ps-tab-list li a {
        padding: 8px 14px !important;
        font-size: 12px !important;
    }

    .ps-tabs {
        padding: 15px !important;
        min-height: 80px !important;
    }
}

/* Reorder tabs via CSS (Store first) */
.ps-tab-list li:has(a[href="#tab-vendor"]) {
    order: -1 !important;
}

.ps-tab-list li:has(a[href="#tab-description"]) {
    order: 1 !important;
}

.ps-tab-list li:has(a[href="#tab-specification"]) {
    order: 2 !important;
}

.ps-tab-list li:has(a[href="#tab-reviews"]) {
    order: 3 !important;
}

.ps-tab-list li:has(a[href="#tab-faq"]) {
    order: 4 !important;
}

/ *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =           M O D E R N   H O M E P A G E   T H E M E   -   P R O D U C T   C A R D S           = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * /         / *   M o d e r n   P r o d u c t   C a r d   S t y l e s   * /     . p s - p r o d u c t    {
                 p o s i t i o n :    r e l a t i v e ;
                 p a d d i n g :    0    ! i m p o r t a n t ;
                 b o r d e r :    n o n e    ! i m p o r t a n t ;
                 b a c k g r o u n d :    # f f f f f f    ! i m p o r t a n t ;
                 b o r d e r - r a d i u s :    1 2 p x    ! i m p o r t a n t ;
                 b o x - s h a d o w :    0   4 p x   1 6 p x   r g b a ( 0 ,    0 ,    0 ,    0 . 0 8 )    ! i m p o r t a n t ;
                 t r a n s i t i o n :    a l l   0 . 3 s   c u b i c - b e z i e r ( 0 . 4 ,    0 ,    0 . 2 ,    1 )    ! i m p o r t a n t ;
                 o v e r f l o w :    h i d d e n    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   P r i c e   -   M o d e r n   S t y l i n g   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ p r i c e    {
                 f o n t - s i z e :    1 8 p x    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    7 0 0    ! i m p o r t a n t ;
                 m a r g i n - t o p :    8 p x    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t   . p s - p r o d u c t _ _ p r i c e . s a l e    {
                 c o l o r :    # F F 6 B 3 5    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t   . p s - p r o d u c t _ _ p r i c e . s a l e   d e l    {
                 f o n t - s i z e :    1 4 p x    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    4 0 0    ! i m p o r t a n t ;
                 m a r g i n - l e f t :    8 p x    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   T i t l e   -   B e t t e r   T y p o g r a p h y   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ t i t l e    {
                 p a d d i n g :    0   0   8 p x    ! i m p o r t a n t ;
                 f o n t - s i z e :    1 4 p x    ! i m p o r t a n t ;
                 l i n e - h e i g h t :    1 . 4 e m    ! i m p o r t a n t ;
                 c o l o r :    # 1 a 1 a 1 a    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    6 0 0    ! i m p o r t a n t ;
                 d i s p l a y :    - w e b k i t - b o x    ! i m p o r t a n t ;
                 - w e b k i t - l i n e - c l a m p :    2    ! i m p o r t a n t ;
                 - w e b k i t - b o x - o r i e n t :    v e r t i c a l    ! i m p o r t a n t ;
                 o v e r f l o w :    h i d d e n    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   B a d g e   -   M o d e r n   P i l l s   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ b a d g e    {
                 t o p :    1 2 p x    ! i m p o r t a n t ;
                 r i g h t :    1 2 p x    ! i m p o r t a n t ;
                 f o n t - s i z e :    1 2 p x    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    7 0 0    ! i m p o r t a n t ;
                 l i n e - h e i g h t :    1    ! i m p o r t a n t ;
                 p a d d i n g :    6 p x   1 2 p x    ! i m p o r t a n t ;
                 b o r d e r - r a d i u s :    2 0 p x    ! i m p o r t a n t ;
                 b a c k g r o u n d - c o l o r :    # F F 4 D 4 D    ! i m p o r t a n t ;
                 b o x - s h a d o w :    0   2 p x   8 p x   r g b a ( 2 5 5 ,    7 7 ,    7 7 ,    0 . 3 )    ! i m p o r t a n t ;
                 z - i n d e x :    2    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t   . p s - p r o d u c t _ _ b a d g e . o u t - s t o c k    {
                 b a c k g r o u n d - c o l o r :    # 0 0 0    ! i m p o r t a n t ;
                 b o x - s h a d o w :    0   2 p x   8 p x   r g b a ( 0 ,    0 ,    0 ,    0 . 3 )    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t   . p s - p r o d u c t _ _ b a d g e . h o t    {
                 b a c k g r o u n d - c o l o r :    # f f 8 c 4 6    ! i m p o r t a n t ;
                 b o x - s h a d o w :    0   2 p x   8 p x   r g b a ( 2 5 5 ,    1 4 0 ,    7 0 ,    0 . 3 )    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   T h u m b n a i l   -   R o u n d e d   C o r n e r s   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ t h u m b n a i l    {
                 b o r d e r - r a d i u s :    1 2 p x   1 2 p x   0   0    ! i m p o r t a n t ;
                 b a c k g r o u n d :    # f 8 f 8 f 8    ! i m p o r t a n t ;
                 o v e r f l o w :    h i d d e n    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t   . p s - p r o d u c t _ _ t h u m b n a i l   i m g    {
                 t r a n s i t i o n :    t r a n s f o r m   0 . 4 s   e a s e    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   C o n t a i n e r   -   B e t t e r   P a d d i n g   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ c o n t a i n e r    {
                 p a d d i n g :    1 5 p x   1 8 p x   1 8 p x    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   V e n d o r   -   S u b t l e   S t y l i n g   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ v e n d o r    {
                 f o n t - s i z e :    1 1 p x    ! i m p o r t a n t ;
                 c o l o r :    # 6 6 6    ! i m p o r t a n t ;
                 b o r d e r - b o t t o m :    1 p x   s o l i d   # f 0 f 0 f 0    ! i m p o r t a n t ;
                 l e t t e r - s p a c i n g :    0 . 5 p x    ! i m p o r t a n t ;
                 m a r g i n - b o t t o m :    1 0 p x    ! i m p o r t a n t ;
         
}

         / *   P r o d u c t   A c t i o n s   -   S m o o t h   T r a n s i t i o n s   * /     . p s - p r o d u c t   . p s - p r o d u c t _ _ a c t i o n s   l i   a    {
                 t r a n s i t i o n :    a l l   0 . 2 s   e a s e    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t   . p s - p r o d u c t _ _ a c t i o n s   l i   a : h o v e r    {
                 t r a n s f o r m :    s c a l e ( 1 . 1 )    ! i m p o r t a n t ;
         
}

         / *   H o v e r   E f f e c t s   -   L i f t   A n i m a t i o n   * /     . p s - p r o d u c t : h o v e r    {
                 t r a n s f o r m :    t r a n s l a t e Y ( - 8 p x )    ! i m p o r t a n t ;
                 b o x - s h a d o w :    0   1 2 p x   2 4 p x   r g b a ( 0 ,    0 ,    0 ,    0 . 1 2 )    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t : h o v e r   . p s - p r o d u c t _ _ t h u m b n a i l   i m g    {
                 t r a n s f o r m :    s c a l e ( 1 . 0 5 )    ! i m p o r t a n t ;
         
}

         / *   M o b i l e   R e s p o n s i v e   * /     @ m e d i a   ( m a x - w i d t h :   7 6 7 p x )    {
                 . p s - p r o d u c t    {
                             b o r d e r - r a d i u s :    8 p x    ! i m p o r t a n t ;
                     
    }

                     . p s - p r o d u c t   . p s - p r o d u c t _ _ t h u m b n a i l    {
                             b o r d e r - r a d i u s :    8 p x   8 p x   0   0    ! i m p o r t a n t ;
                     
    }

                     . p s - p r o d u c t   . p s - p r o d u c t _ _ c o n t a i n e r    {
                             p a d d i n g :    1 2 p x   1 4 p x   1 4 p x    ! i m p o r t a n t ;
                     
    }

                     . p s - p r o d u c t   . p s - p r o d u c t _ _ b a d g e    {
                             t o p :    8 p x    ! i m p o r t a n t ;
                             r i g h t :    8 p x    ! i m p o r t a n t ;
                             f o n t - s i z e :    1 1 p x    ! i m p o r t a n t ;
                             p a d d i n g :    4 p x   1 0 p x    ! i m p o r t a n t ;
                     
    }

         
}

         / *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =           M O D E R N   S E C T I O N   H E A D E R S   -   G R A D I E N T S           = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * /         / *   S e c t i o n   H e a d e r   -   V i b r a n t   G r a d i e n t   * /     . p s - p r o d u c t - l i s t   . p s - s e c t i o n _ _ h e a d e r    {
                 p a d d i n g :    2 0 p x   2 5 p x    ! i m p o r t a n t ;
                 b a c k g r o u n d :    l i n e a r - g r a d i e n t ( 1 3 5 d e g ,    # F F 6 B 3 5   0 % ,    # F 7 9 3 1 E   1 0 0 % )    ! i m p o r t a n t ;
                 b o r d e r - b o t t o m :    n o n e    ! i m p o r t a n t ;
                 b o r d e r - r a d i u s :    8 p x   8 p x   0   0    ! i m p o r t a n t ;
                 b o x - s h a d o w :    0   2 p x   8 p x   r g b a ( 2 5 5 ,    1 0 7 ,    5 3 ,    0 . 2 )    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t - l i s t   . p s - s e c t i o n _ _ h e a d e r   h 3    {
                 f o n t - s i z e :    2 4 p x    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    7 0 0    ! i m p o r t a n t ;
                 c o l o r :    # f f f f f f    ! i m p o r t a n t ;
                 t e x t - s h a d o w :    0   2 p x   4 p x   r g b a ( 0 ,    0 ,    0 ,    0 . 1 )    ! i m p o r t a n t ;
                 l e t t e r - s p a c i n g :    - 0 . 5 p x    ! i m p o r t a n t ;
         
}

         / *   S e c t i o n   L i n k s   -   W h i t e   T e x t   * /     . p s - p r o d u c t - l i s t   . p s - s e c t i o n _ _ l i n k s   l i   a    {
                 c o l o r :    r g b a ( 2 5 5 ,    2 5 5 ,    2 5 5 ,    0 . 9 )    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    5 0 0    ! i m p o r t a n t ;
                 t r a n s i t i o n :    a l l   0 . 2 s   e a s e    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t - l i s t   . p s - s e c t i o n _ _ l i n k s   l i   a : h o v e r    {
                 c o l o r :    # f f f f f f    ! i m p o r t a n t ;
                 t e x t - d e c o r a t i o n :    u n d e r l i n e    ! i m p o r t a n t ;
         
}

         / *   A l t e r n a t i v e   S e c t i o n   H e a d e r   S t y l e   * /     . p s - p r o d u c t - l i s t - - 2   . p s - s e c t i o n _ _ h e a d e r    {
                 b a c k g r o u n d :    l i n e a r - g r a d i e n t ( 1 3 5 d e g ,    # F F 6 B 3 5   0 % ,    # F 7 9 3 1 E   1 0 0 % )    ! i m p o r t a n t ;
                 b o r d e r - b o t t o m :    n o n e    ! i m p o r t a n t ;
         
}

         . p s - p r o d u c t - l i s t - - 2   . p s - s e c t i o n _ _ h e a d e r   h 3    {
                 f o n t - s i z e :    2 4 p x    ! i m p o r t a n t ;
                 f o n t - w e i g h t :    7 0 0    ! i m p o r t a n t ;
                 c o l o r :    # f f f f f f    ! i m p o r t a n t ;
                 t e x t - s h a d o w :    0   2 p x   4 p x   r g b a ( 0 ,    0 ,    0 ,    0 . 1 )    ! i m p o r t a n t ;
         
}

         / *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =           S P A C I N G   &   L A Y O U T   I M P R O V E M E N T S           = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * /         / *   B e t t e r   G r i d   S p a c i n g   o n   D e s k t o p   * /     @ m e d i a   ( m i n - w i d t h :   7 6 8 p x )    {
                 . p s - s h o p p i n g - p r o d u c t   . r o w    {
                             m a r g i n :    0   - 1 2 p x    ! i m p o r t a n t ;
                     
    }

                     . p s - s h o p p i n g - p r o d u c t   . r o w > *    {
                             p a d d i n g :    0   1 2 p x    ! i m p o r t a n t ;
                     
    }

                     . p s - s h o p p i n g - p r o d u c t   . p s - p r o d u c t    {
                             m a r g i n - b o t t o m :    2 4 p x    ! i m p o r t a n t ;
                     
    }

         
}

         / *   M o b i l e   G r i d   S p a c i n g   * /     @ m e d i a   ( m a x - w i d t h :   7 6 7 p x )    {
                 . p s - s h o p p i n g - p r o d u c t   . r o w    {
                             m a r g i n :    0   - 8 p x    ! i m p o r t a n t ;
                     
    }

                     . p s - s h o p p i n g - p r o d u c t   . r o w > *    {
                             p a d d i n g :    0   8 p x    ! i m p o r t a n t ;
                     
    }

                     . p s - s h o p p i n g - p r o d u c t   . p s - p r o d u c t    {
                             m a r g i n - b o t t o m :    1 6 p x    ! i m p o r t a n t ;
                     
    }

         
}

         / *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =           A D D I T I O N A L   P O L I S H           = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * /         / *   S m o o t h   S c r o l l i n g   * /     h t m l    {
                 s c r o l l - b e h a v i o r :    s m o o t h ;
         
}

         / *   F o c u s   S t a t e s   f o r   A c c e s s i b i l i t y   * /     . p s - p r o d u c t : f o c u s - w i t h i n    {
                 o u t l i n e :    2 p x   s o l i d   # F F 6 B 3 5 ;
                 o u t l i n e - o f f s e t :    2 p x ;
         
}

         / *   L o a d i n g   S t a t e s   * /     . p s - p r o d u c t . l o a d i n g    {
                 o p a c i t y :    0 . 6 ;
                 p o i n t e r - e v e n t s :    n o n e ;
         
}

     