        @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');

        :root {
            --tt-primary: #10b981; /* Premium Emerald */
            --tt-primary-hover: #059669;
            --tt-primary-light: #ecfdf5;
            --tt-text-dark: #0f172a; /* Slate 900 */
            --tt-text-muted: #64748b; /* Slate 500 */
            --tt-border-color: #f1f5f9; /* Slate 100 */
            --tt-shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px -1px rgba(0, 0, 0, 0.02);
            --tt-shadow-md: 0 10px 15px -3px rgba(15, 23, 42, 0.04), 0 4px 6px -2px rgba(15, 23, 42, 0.02);
            --tt-shadow-lg: 0 20px 25px -5px rgba(15, 23, 42, 0.06), 0 10px 10px -5px rgba(15, 23, 42, 0.04);
            --tt-radius: 20px;
        }

        body {
            background-color: #fafbfc;
            font-family: 'Inter', sans-serif;
            color: #334155;
            -webkit-font-smoothing: antialiased;
        }

        /* Container & Panels */
        .product-details-wrapper {
            background: #ffffff;
            border-radius: var(--tt-radius);
            padding: 36px;
            box-shadow: var(--tt-shadow-sm);
            margin-bottom: 24px;
            border: 1px solid #e2e8f0;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .product-details-wrapper:hover {
            box-shadow: var(--tt-shadow-md);
            border-color: #cbd5e1;
        }

        .product-details {
            gap: 0px !important;
        }

        /* Typography & Header */
        .pd-title {
            font-family: 'Outfit', sans-serif;
            font-size: 28px;
            font-weight: 700;
            color: var(--tt-text-dark);
            margin-bottom: 12px;
            line-height: 1.25;
            letter-spacing: -0.02em;
        }

        /* Ratings Area */
        .ratings-area {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 13.5px;
            margin-bottom: 20px;
            color: var(--tt-text-muted);
            font-weight: 500;
        }

        .ratings-area i {
            color: #f59e0b; /* Amber 500 */
        }

        .ratings-area span.text-muted {
            background: #f1f5f9;
            padding: 2px 10px;
            border-radius: 30px;
            font-size: 12px;
            color: #475569 !important;
            font-weight: 600;
        }

        /* Share Button */
        .share-btn {
            width: 38px;
            height: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            background: #f8fafc;
            color: #475569;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            border: 1px solid #e2e8f0;
        }

        .share-btn:hover {
            background: var(--tt-primary-light);
            color: var(--tt-primary);
            transform: scale(1.1) rotate(8deg);
            border-color: rgba(16, 185, 129, 0.2);
            box-shadow: 0 4px 12px rgba(16, 185, 129, 0.08);
        }

        /* Metadata & Badges */
        .text--base {
            color: var(--tt-primary) !important;
            font-weight: 600;
            text-decoration: none;
            transition: color 0.2s ease;
        }

        .text--base:hover {
            color: var(--tt-primary-hover) !important;
            text-decoration: underline;
        }

        #stockBadge {
            font-size: 12px;
            font-weight: 700;
            padding: 4px 12px;
            border-radius: 30px;
            background: #ecfdf5;
            color: #047857;
            display: inline-flex;
            align-items: center;
            border: 1px solid rgba(4, 120, 87, 0.15);
        }

        #stockBadge:empty {
            display: none;
        }

        /* Pricing Details */
        .pd-price-area {
            margin-bottom: 24px;
            border-bottom: 1px dashed #e2e8f0;
            padding-bottom: 24px;
        }

        .pd-price {
            font-size: 32px;
            color: var(--tt-primary);
            font-weight: 800;
            letter-spacing: -0.03em;
        }

        .pd-old-price {
            font-size: 20px;
            color: var(--tt-text-muted);
            text-decoration: line-through;
            margin-left: 12px;
            font-weight: 500;
        }

        .pd-discount {
            background: #fef2f2;
            color: #ef4444;
            padding: 4px 10px;
            border-radius: 30px;
            font-size: 12.5px;
            font-weight: 700;
            margin-left: 10px;
            border: 1px solid rgba(239, 68, 68, 0.12);
            display: inline-flex;
            align-items: center;
            transform: translateY(-2px);
        }

        /* Summary Quote Block */
        .product-summary.text-muted.fs-13.mb-4 {
            background: #f8fafc;
            border-left: 4px solid var(--tt-primary);
            border-radius: 12px;
            padding: 18px 24px;
            max-width: 100%;
            margin-top: 10px;
            color: #334155 !important;
            font-size: 14.5px !important;
            line-height: 1.6;
            border-top: 1px solid #f1f5f9;
            border-right: 1px solid #f1f5f9;
            border-bottom: 1px solid #f1f5f9;
        }

        /* Attributes Section */
        .product-attribute .attribute-name {
            font-size: 13.5px;
            font-weight: 700;
            color: var(--tt-text-dark);
            min-width: 90px;
            display: inline-block;
            text-transform: uppercase;
            letter-spacing: 0.05em;
        }

        .attribute-value-wrapper {
            display: flex;
            align-items: center;
            margin-bottom: 20px;
            flex-wrap: wrap;
            gap: 10px;
        }

        .attribute-value {
            border: 1.5px solid #e2e8f0;
            background: #ffffff;
            padding: 8px 18px;
            border-radius: 10px;
            font-size: 13.5px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
            min-width: 54px;
            text-align: center;
            color: #334155;
            user-select: none;
        }

        .attribute-value:hover {
            border-color: #cbd5e1;
            color: var(--tt-text-dark);
            transform: translateY(-2px);
            box-shadow: 0 4px 10px rgba(0,0,0,0.03);
        }

        .attribute-value.active {
            border-color: var(--tt-primary);
            color: var(--tt-primary);
            background: var(--tt-primary-light);
            box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
            transform: translateY(-1px);
        }

        /* Color Attribute Visual */
        .color-attribute {
            width: 22px;
            height: 22px;
            display: inline-block;
            border-radius: 50%;
            border: 2px solid transparent;
            box-shadow: 0 0 0 1px rgba(0,0,0,0.12);
            transition: all 0.25s ease;
        }

        .attribute-value:hover .color-attribute,
        .attribute-value.active .color-attribute {
            transform: scale(1.12);
        }

        .attribute-value.active .color-attribute {
            border-color: #ffffff;
            box-shadow: 0 0 0 2px var(--tt-primary);
        }

        /* Quantity Selector styling */
        .quantity-wrapper {
            border: 1.5px solid #e2e8f0;
            border-radius: 12px;
            display: inline-flex;
            align-items: center;
            overflow: hidden;
            background: #f8fafc;
            padding: 4px;
            box-shadow: inset 0 1px 2px rgba(0,0,0,0.02);
        }

        .quantity-wrapper input {
            border: none;
            background: transparent;
            text-align: center;
            width: 48px;
            font-weight: 700;
            color: var(--tt-text-dark);
            height: 32px;
            font-size: 15px;
        }

        .quantity-wrapper button {
            background: #ffffff;
            border: none;
            width: 32px;
            height: 32px;
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.2s ease;
            color: #475569;
            box-shadow: 0 1px 2px rgba(0,0,0,0.05);
        }

        .quantity-wrapper button:hover {
            background: var(--tt-primary-light);
            color: var(--tt-primary);
            transform: scale(1.05);
        }

        /* Product Action Buttons */
        .product-actions {
            display: flex;
            gap: 16px;
            margin-top: 30px;
        }

        .btn-buy-now,
        .btn-add-cart {
            flex: 1;
            padding: 14px 28px;
            border-radius: 12px;
            font-weight: 700;
            font-size: 15px;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            text-transform: none;
            letter-spacing: 0px;
            border: 1.5px solid transparent;
        }

        .btn-buy-now {
            background: #f1f5f9;
            color: var(--tt-text-dark);
            border-color: #cbd5e1;
        }

        .btn-buy-now:hover {
            background: var(--tt-text-dark);
            color: #ffffff;
            border-color: var(--tt-text-dark);
            transform: translateY(-2px);
            box-shadow: var(--tt-shadow-md);
        }

        .btn-add-cart {
            background: var(--tt-primary);
            color: #ffffff;
            border-color: var(--tt-primary);
        }

        .btn-add-cart:hover {
            background: var(--tt-primary-hover);
            border-color: var(--tt-primary-hover);
            transform: translateY(-2px);
            box-shadow: 0 8px 20px rgba(16, 185, 129, 0.25);
        }

        /* Delivery Options Sidebar card */
        .delivery-sidebar {
            background: #ffffff;
            border: 1px solid #e2e8f0;
            border-radius: var(--tt-radius);
            padding: 24px;
            box-shadow: var(--tt-shadow-sm);
        }

        .sidebar-block {
            margin-bottom: 24px;
        }

        .sidebar-title {
            font-size: 12px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.07em;
            color: var(--tt-text-muted);
            margin-bottom: 16px;
            display: flex;
            justify-content: space-between;
            border-bottom: 1px solid #f1f5f9;
            padding-bottom: 8px;
        }

        .sidebar-item {
            display: flex;
            margin-bottom: 14px;
            font-size: 13.5px;
            color: var(--tt-text-dark);
            align-items: flex-start;
            background: #f8fafc;
            padding: 12px;
            border-radius: 12px;
            border: 1px solid #f1f5f9;
            transition: all 0.2s ease;
        }

        .sidebar-item:hover {
            background: #f1f5f9;
            border-color: #cbd5e1;
        }

        .sidebar-item i {
            font-size: 20px;
            color: var(--tt-primary);
            margin-right: 12px;
            margin-top: 1px;
            min-width: 24px;
        }

        .sidebar-item-content {
            flex: 1;
            line-height: 1.45;
        }

        .sidebar-price {
            font-weight: 700;
            color: var(--tt-text-dark);
            font-size: 13.5px;
        }

        /* Related Products Section */
        .product-card {
            background: #ffffff;
            border-radius: 16px;
            overflow: hidden;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            border: 1px solid #e2e8f0;
            height: 100%;
            display: flex;
            flex-direction: column;
            box-shadow: var(--tt-shadow-sm);
        }

        .product-card:hover {
            transform: translateY(-6px);
            box-shadow: var(--tt-shadow-lg);
            border-color: var(--tt-primary);
        }

        .product-card-thumb {
            position: relative;
            padding-top: 100%;
            overflow: hidden;
            background-color: #f8fafc;
            border-bottom: 1px solid #f1f5f9;
        }

        .product-card-thumb img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: contain;
            padding: 12px;
            transition: transform 0.5s ease;
        }

        .product-card:hover .product-card-thumb img {
            transform: scale(1.06);
        }

        .product-card-content {
            padding: 18px;
            flex: 1;
            display: flex;
            flex-direction: column;
        }

        .product-card-title {
            font-size: 14px;
            font-weight: 600;
            margin-bottom: 8px;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            color: var(--tt-text-dark);
            line-height: 1.45;
        }

        .product-card-title a {
            color: var(--tt-text-dark);
            text-decoration: none;
            transition: color 0.2s ease;
        }

        .product-card-title a:hover {
            color: var(--tt-primary);
        }

        .product-card-price {
            font-size: 16px;
            font-weight: 700;
            color: var(--tt-primary);
            margin-top: auto;
        }

        /* Breadcrumbs modern look */
        .breadcrumb {
            background: #f8fafc;
            padding: 12px 20px;
            border-radius: 12px;
            margin-bottom: 28px;
            display: flex;
            flex-wrap: wrap;
            list-style: none;
            gap: 8px;
            font-size: 13px;
            border: 1px solid #e2e8f0;
            align-items: center;
        }

        .breadcrumb-item {
            display: flex;
            align-items: center;
            color: var(--tt-text-muted);
            font-weight: 500;
        }

        .breadcrumb-item a {
            color: var(--tt-text-muted);
            text-decoration: none;
            transition: color 0.2s ease;
        }

        .breadcrumb-item a:hover {
            color: var(--tt-primary);
        }

        .breadcrumb-item span {
            color: var(--tt-text-dark);
            font-weight: 600;
        }

        .breadcrumb-item + .breadcrumb-item::before {
            content: "\f105";
            font-family: "Line Awesome Free";
            font-weight: 900;
            padding-right: 8px;
            color: #cbd5e1;
            font-size: 11px;
        }

        /* Review & Ratings block styling */
        .rating-overview-box {
            background: #ffffff;
            border-radius: var(--tt-radius);
            padding: 36px;
            box-shadow: var(--tt-shadow-sm);
            border: 1px solid #e2e8f0;
        }

        .rating-score {
            font-size: 60px;
            font-weight: 800;
            color: var(--tt-text-dark);
            line-height: 1;
            font-family: 'Outfit', sans-serif;
        }

        .rating-bars .progress {
            height: 10px;
            margin-bottom: 0;
            background-color: #f1f5f9;
            border-radius: 30px;
            flex: 1;
            margin: 0 15px;
            overflow: hidden;
            box-shadow: inset 0 1px 1px rgba(0,0,0,0.02);
        }

        .rating-bars .progress-bar {
            background-color: #fbbf24; /* Amber 400 */
            border-radius: 30px;
        }

        .rating-row {
            display: flex;
            align-items: center;
            margin-bottom: 12px;
            font-size: 13.5px;
            color: var(--tt-text-muted);
            font-weight: 500;
        }

        /* Unique dynamic overview SEO contents */
        .product-seo-description {
            font-size: 14px;
            line-height: 1.65;
            color: #475569;
            margin-top: 24px;
            border-top: 1px dashed #e2e8f0;
            padding-top: 24px;
        }

        .product-seo-description h5 {
            color: var(--tt-text-dark);
            font-size: 16px;
            font-weight: 700;
            margin-bottom: 14px;
            font-family: 'Outfit', sans-serif;
        }

        .product-seo-description h6 {
            color: var(--tt-text-dark);
            font-size: 14px;
            font-weight: 700;
            margin-top: 20px;
            margin-bottom: 8px;
            font-family: 'Outfit', sans-serif;
        }

        .product-seo-description ul {
            padding-left: 20px;
        }

        .product-seo-description li {
            margin-bottom: 8px;
        }

        @media (max-width: 991px) {
            .product-details-wrapper {
                padding: 24px;
            }
            .pd-title {
                font-size: 22px;
            }
            .product-actions {
                flex-direction: column;
            }
        }
  