
            @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

            .tb-timeline-selector { position: relative; margin-bottom: 25px; }

            .tb-timeline-track {
                height: 1px; background-color: #eeeeee; width: 100%;
                position: absolute; top: 25px; left: 0; z-index: 1;
            }

            .tb-timeline-years {
                position: relative; z-index: 2; display: flex;
                justify-content: flex-start; 
                list-style: none; margin: 0; 
                padding: 20px 0 5px 0; overflow-x: auto;
                -webkit-overflow-scrolling: touch; scrollbar-width: none;
                scroll-behavior: smooth;
            }
            .tb-timeline-years::-webkit-scrollbar { display: none; }

            .tb-timeline-year-item {
                flex: 0 0 auto; text-align: center; cursor: pointer;
                padding: 0 25px; -webkit-tap-highlight-color: transparent; 
            }
            
            .tb-timeline-year-item:first-child { padding-left: 10px; }
            .tb-timeline-year-item:last-child { padding-right: 10px; }

            .tb-timeline-year-dot {
                width: 10px; height: 10px; background-color: #ffffff;
                border: 1px solid #dddddd; border-radius: 50%;
                margin: 0 auto 12px auto; box-sizing: border-box;
                transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.2s ease, background-color 0.2s ease;
            }

            .tb-timeline-year-text {
                font-size: 13px; font-weight: 500; color: #999999;
                letter-spacing: 0.05em; padding-bottom: 6px;
                border-bottom: 2px solid transparent; transition: color 0.2s ease;
                display: block;
            }

            .tb-timeline-year-item.active .tb-timeline-year-dot {
                background-color: #111111; border-color: #111111;
                box-shadow: 0 0 0 3px #ffffff, 0 0 0 4.5px #111111; 
                transform: scale(1.15);
            }
            .tb-timeline-year-item.active .tb-timeline-year-text {
                color: #111111; font-weight: 700; border-bottom: 2px solid #111111;
            }

            .tb-product-display {
                display: flex; flex-wrap: wrap; justify-content: center;
                gap: 30px; opacity: 0; transform: translateY(15px);
                transition: opacity 0.3s ease, transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
                margin-bottom: 0px; will-change: opacity, transform; 
            }
            .tb-product-display.active { opacity: 1; transform: translateY(0); }

            .tb-product-card {
                background: #ffffff; border-radius: 12px; padding: 25px 20px; 
                box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03); flex: 1;
                min-width: 280px; max-width: 400px; box-sizing: border-box;
                position: relative; transition: transform 0.3s ease, box-shadow 0.3s ease;
            }
            .tb-product-card:hover { transform: translateY(-6px); box-shadow: 0 25px 60px rgba(0, 0, 0, 0.06); }

            .tb-card-type-label {
                position: absolute; top: 15px; left: 20px;
                font-size: 10px; font-weight: 700; text-transform: uppercase;
                letter-spacing: 0.25em; color: #cccccc;
            }

            .tb-product-image-container {
                width: 100%; height: 260px; display: flex;
                align-items: center; justify-content: center; margin-bottom: 15px; 
                background-color: #fafafa; border-radius: 8px;
            }
            .tb-product-image { max-width: 85%; max-height: 85%; object-fit: contain; transition: transform 0.5s ease; }

            .tb-product-name {
                font-size: 15px; font-weight: 600; color: #111111;
                margin: 0 0 15px 0; line-height: 1.4; min-height: 42px; 
                text-align: center; letter-spacing: 0.01em;
            }

            .tb-product-btn {
                display: block; background-color: #111111; color: #ffffff;
                padding: 12px 0; border-radius: 4px; font-size: 12px;
                font-weight: 700; text-decoration: none; text-transform: uppercase;
                letter-spacing: 0.2em; text-align: center; transition: background-color 0.2s ease;
            }
            .tb-product-btn:hover { background-color: #333333; }

            @media (max-width: 768px) {
                .tb-product-image-container { height: 220px; }
                .tb-product-card { padding: 20px 15px; max-width: 100%; }
            }
        