
        @keyframes modalSlideIn {
            from {
                opacity: 0;
                transform: translateY(-20px) scale(0.95);
            }
            to {
                opacity: 1;
                transform: translateY(0) scale(1);
            }
        }
        
        @keyframes slideInRight {
            from {
                opacity: 0;
                transform: translateX(100px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }
        
        @keyframes slideOut {
            from {
                opacity: 1;
                transform: translateX(0);
            }
            to {
                opacity: 0;
                transform: translateX(100px);
            }
        }
        
        @keyframes cartPulse {
            0%, 100% {
                box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
            }
            50% {
                box-shadow: 0 4px 25px rgba(102, 126, 234, 0.6), 0 0 20px rgba(102, 126, 234, 0.4);
            }
        }
        
        @keyframes cartShake {
            0%, 100% { transform: translateX(0) scale(1); }
            10%, 30%, 50%, 70%, 90% { transform: translateX(-5px) scale(1.1); }
            20%, 40%, 60%, 80% { transform: translateX(5px) scale(1.1); }
        }
        
        .floating-cart.has-items {
            animation: cartPulse 2s ease-in-out infinite;
        }
        
        .floating-cart.shake {
            animation: cartShake 0.6s ease-in-out;
        }
        
        .primary-offer-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(16, 185, 129, 0.6) !important;
        }
        
        .primary-offer-btn:active {
            transform: translateY(0);
        }
        
        /* Responsive styles for special offer modal */
        @media (max-width: 768px) {
            #specialOfferModal {
                padding: 15px !important;
            }
            
            .special-offer-content {
                width: 96% !important;
                max-width: 400px !important;
                border-radius: 18px !important;
            }
            
            /* Header section responsive */
            .special-offer-content > div:nth-child(2) {
                padding: 25px 20px 20px !important;
            }
            
            .special-offer-content > div:nth-child(2) h2 {
                font-size: 1.6em !important;
            }
            
            .special-offer-content > div:nth-child(2) p {
                font-size: 1.1em !important;
            }
            
            .special-offer-content > div:nth-child(2) div:first-child {
                font-size: 40px !important;
            }
            
            /* Main content responsive */
            .special-offer-content > div:nth-child(3) {
                padding: 20px 20px !important;
            }
            
            .special-offer-content > div:nth-child(3) h3 {
                font-size: 1.3em !important;
            }
            
            .special-offer-content > div:nth-child(3) p {
                font-size: 1em !important;
            }
            
            /* Feature boxes responsive */
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div {
                padding: 10px !important;
                margin-bottom: 12px !important;
                flex-direction: column !important;
                text-align: center !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div > div:first-child {
                font-size: 20px !important;
                margin-right: 0 !important;
                margin-bottom: 8px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div strong {
                font-size: 14px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div > div:last-child > div {
                font-size: 12px !important;
            }
            
            /* Urgency section responsive */
            .special-offer-content > div:nth-child(3) > div:nth-child(3) {
                padding: 12px !important;
                flex-direction: column !important;
                gap: 6px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(3) strong {
                font-size: 14px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(3) p {
                font-size: 13px !important;
            }
            
            /* Social proof responsive */
            .special-offer-content > div:nth-child(3) > div:nth-child(4) span {
                font-size: 12px !important;
            }
            
                         /* Pricing examples responsive */
             .special-offer-content #pricingExamples {
                 grid-template-columns: repeat(2, 1fr) !important;
                 gap: 6px !important;
             }
             
             .special-offer-content .pricing-card {
                 padding: 8px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child {
                 font-size: 10px !important;
                 margin-bottom: 3px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child span:first-child {
                 font-size: 12px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(2) span {
                 font-size: 9px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(3) {
                 font-size: 12px !important;
                 margin-bottom: 3px !important;
             }
             
             .special-offer-content .pricing-card > div:last-child {
                 font-size: 8px !important;
                 padding: 1px 3px !important;
             }
             
             /* Action buttons responsive */
             .special-offer-content > div:last-child {
                 padding: 0 20px 20px !important;
             }
             
             .primary-offer-btn {
                 padding: 15px !important;
                 font-size: 15px !important;
             }
             
             .special-offer-content > div:last-child button:last-child {
                 padding: 12px !important;
                 font-size: 14px !important;
             }
        }
        
        @media (max-width: 480px) {
            #specialOfferModal {
                padding: 10px !important;
            }
            
            .special-offer-content {
                width: 98% !important;
                max-width: 350px !important;
                border-radius: 16px !important;
            }
            
            /* Close button responsive */
            .special-offer-content > div:first-child {
                width: 28px !important;
                height: 28px !important;
                font-size: 24px !important;
                top: 12px !important;
                right: 15px !important;
            }
            
            /* Header section mobile */
            .special-offer-content > div:nth-child(2) {
                padding: 20px 15px 15px !important;
            }
            
            .special-offer-content > div:nth-child(2) h2 {
                font-size: 1.4em !important;
                margin-bottom: 6px !important;
            }
            
            .special-offer-content > div:nth-child(2) p {
                font-size: 1em !important;
            }
            
            .special-offer-content > div:nth-child(2) div:first-child {
                font-size: 36px !important;
                margin-bottom: 6px !important;
            }
            
            /* Main content mobile */
            .special-offer-content > div:nth-child(3) {
                padding: 15px 15px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:first-child {
                padding: 15px !important;
                margin-bottom: 15px !important;
            }
            
            .special-offer-content > div:nth-child(3) h3 {
                font-size: 1.2em !important;
                margin-bottom: 8px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:first-child p {
                font-size: 0.95em !important;
            }
            
            /* Feature boxes mobile */
            .special-offer-content > div:nth-child(3) > div:nth-child(2) {
                margin: 15px 0 !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div {
                padding: 8px !important;
                margin-bottom: 8px !important;
                border-radius: 8px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div > div:first-child {
                font-size: 18px !important;
                margin-bottom: 6px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div strong {
                font-size: 13px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(2) > div > div:last-child > div {
                font-size: 11px !important;
                margin-top: 1px !important;
            }
            
            /* Urgency section mobile */
            .special-offer-content > div:nth-child(3) > div:nth-child(3) {
                padding: 10px !important;
                margin: 15px 0 !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(3) > div:first-child span:first-child {
                font-size: 18px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(3) strong {
                font-size: 13px !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(3) p {
                font-size: 12px !important;
                margin-top: 0 !important;
            }
            
            /* Social proof mobile */
            .special-offer-content > div:nth-child(3) > div:nth-child(4) {
                padding: 8px !important;
                margin: 15px 0 !important;
            }
            
            .special-offer-content > div:nth-child(3) > div:nth-child(4) span {
                font-size: 11px !important;
            }
            
                         /* Pricing examples mobile */
             .special-offer-content #pricingExamples {
                 grid-template-columns: repeat(2, 1fr) !important;
                 gap: 4px !important;
             }
             
             .special-offer-content .pricing-card {
                 padding: 6px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child {
                 font-size: 9px !important;
                 margin-bottom: 2px !important;
                 gap: 2px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child span:first-child {
                 font-size: 10px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(2) span {
                 font-size: 8px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(3) {
                 font-size: 11px !important;
                 margin-bottom: 2px !important;
             }
             
             .special-offer-content .pricing-card > div:last-child {
                 font-size: 7px !important;
                 padding: 1px 2px !important;
             }
             
             /* Action buttons mobile */
             .special-offer-content > div:last-child {
                 padding: 0 15px 15px !important;
             }
             
             .primary-offer-btn {
                 padding: 12px !important;
                 font-size: 14px !important;
                 letter-spacing: 0.3px !important;
                 margin-bottom: 8px !important;
             }
             
             .special-offer-content > div:last-child button:last-child {
                 padding: 10px !important;
                 font-size: 13px !important;
                 line-height: 1.3 !important;
             }
        }
        
                 @media (max-width: 360px) {
             .special-offer-content {
                 width: 100% !important;
                 max-width: 320px !important;
             }
        }

        /* Thanks Discount Banner Responsive Styles */
        @media (max-width: 768px) {
            #thanksDiscountBanner {
                padding: 15px !important;
            }
            
            #thanksDiscountBanner > div {
                flex-direction: column !important;
                gap: 10px !important;
            }
            
            #thanksDiscountBanner > div > div:first-child {
                font-size: 24px !important;
            }
            
            #thanksDiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 20px !important;
            }
            
            #thanksDiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 14px !important;
            }
            
            #thanksMenuDiscount {
                padding: 10px !important;
                font-size: 14px !important;
            }

            /* Digital10 Discount Banner Responsive Styles */
            #digital10DiscountBanner {
                padding: 15px !important;
            }
            
            #digital10DiscountBanner > div {
                flex-direction: column !important;
                gap: 10px !important;
            }
            
            #digital10DiscountBanner > div > div:first-child {
                font-size: 24px !important;
            }
            
            #digital10DiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 20px !important;
            }
            
            #digital10DiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 14px !important;
            }
            
            #digital10MenuDiscount {
                padding: 10px !important;
                font-size: 14px !important;
            }

            /* Credit10 Discount Banner Responsive Styles */
            #credit10DiscountBanner {
                padding: 15px !important;
            }
            
            #credit10DiscountBanner > div {
                flex-direction: column !important;
                gap: 10px !important;
            }
            
            #credit10DiscountBanner > div > div:first-child {
                font-size: 24px !important;
            }
            
            #credit10DiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 20px !important;
            }
            
            #credit10DiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 14px !important;
            }
            
            #credit10MenuDiscount {
                padding: 10px !important;
                font-size: 14px !important;
            }

            /* Welcome Discount Banner Responsive Styles */
            #welcomeDiscountBanner {
                padding: 15px !important;
            }
            
            #welcomeDiscountBanner > div {
                flex-direction: column !important;
                gap: 10px !important;
            }
            
            #welcomeDiscountBanner > div > div:first-child {
                font-size: 24px !important;
            }
            
            #welcomeDiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 20px !important;
            }
            
            #welcomeDiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 14px !important;
            }
        }

        @media (max-width: 480px) {
            #thanksDiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 18px !important;
                margin-bottom: 3px !important;
            }
            
            #thanksDiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 12px !important;
            }
            
            #thanksMenuDiscount {
                font-size: 12px !important;
                padding: 8px !important;
            }

            #digital10DiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 18px !important;
                margin-bottom: 3px !important;
            }
            
            #digital10DiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 12px !important;
            }
            
            #digital10MenuDiscount {
                font-size: 12px !important;
                padding: 8px !important;
            }

            #credit10DiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 18px !important;
                margin-bottom: 3px !important;
            }
            
            #credit10DiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 12px !important;
            }
            
            #credit10MenuDiscount {
                font-size: 12px !important;
                padding: 8px !important;
            }

            #welcomeDiscountBanner > div > div:nth-child(2) > div:first-child {
                font-size: 18px !important;
                margin-bottom: 3px !important;
            }
            
            #welcomeDiscountBanner > div > div:nth-child(2) > div:last-child {
                font-size: 12px !important;
            }
        }
             
             .special-offer-content > div:nth-child(2) h2 {
                 font-size: 1.3em !important;
             }
             
             .special-offer-content > div:nth-child(3) h3 {
                 font-size: 1.1em !important;
             }
             
             /* Pricing examples extra small */
             .special-offer-content #pricingExamples {
                 gap: 3px !important;
             }
             
             .special-offer-content .pricing-card {
                 padding: 4px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child {
                 font-size: 8px !important;
                 margin-bottom: 1px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child span:first-child {
                 font-size: 9px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(2) span {
                 font-size: 7px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(3) {
                 font-size: 10px !important;
                 margin-bottom: 1px !important;
             }
             
             .special-offer-content .pricing-card > div:last-child {
                 font-size: 6px !important;
                 padding: 1px !important;
             }
             
             .primary-offer-btn {
                 font-size: 13px !important;
                 padding: 10px !important;
             }
             
             .special-offer-content > div:last-child button:last-child {
                 font-size: 12px !important;
             }
         }
        
                 /* Pricing card hover effects */
         .pricing-card:hover {
             transform: translateY(-1px) !important;
             box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
             background: #f1f5f9 !important;
         }
         
         /* Desktop pricing section styling */
         @media (min-width: 769px) {
             .special-offer-content #pricingExamples {
                 grid-template-columns: repeat(4, 1fr) !important;
                 gap: 10px !important;
             }
             
             .special-offer-content .pricing-card {
                 padding: 12px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child {
                 font-size: 11px !important;
                 margin-bottom: 6px !important;
             }
             
             .special-offer-content .pricing-card > div:first-child span:first-child {
                 font-size: 14px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(2) span {
                 font-size: 10px !important;
             }
             
             .special-offer-content .pricing-card > div:nth-child(3) {
                 font-size: 13px !important;
                 margin-bottom: 6px !important;
             }
             
             .special-offer-content .pricing-card > div:last-child {
                 font-size: 9px !important;
                 padding: 3px 6px !important;
             }
         }
         
         /* Hide scrollbars for pricing examples */
         #pricingExamples::-webkit-scrollbar {
             display: none;
         }
         
         /* Landscape orientation adjustments */
         @media (max-height: 600px) and (orientation: landscape) {
             .special-offer-content {
                 max-height: 90vh !important;
                 overflow-y: auto !important;
             }
             
             .special-offer-content > div:nth-child(2) {
                 padding: 15px 20px 10px !important;
             }
             
             .special-offer-content > div:nth-child(2) div:first-child {
                 font-size: 32px !important;
                 margin-bottom: 4px !important;
             }
             
             .special-offer-content > div:nth-child(3) {
                 padding: 15px 20px !important;
             }
             
             .special-offer-content > div:last-child {
                 padding: 0 20px 15px !important;
             }
         }

    .timeline-header {
      text-align: center;
      margin-bottom: 25px;
      padding: 25px 20px;
      background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
      border-radius: 12px;
      box-shadow: 0 2px 10px rgba(0,0,0,0.05);
      border: 1px solid rgba(255,255,255,0.8);
    }
    
    .timeline-title {
      font-size: 24px;
      font-weight: 700;
      color: #1a202c;
      margin: 0 0 10px 0;
      letter-spacing: 0.5px;
      text-shadow: 0 1px 2px rgba(0,0,0,0.1);
    }
    
    .timeline-subtitle {
      font-size: 16px;
      color: #4a5568;
      margin: 0;
      font-weight: 500;
      text-shadow: 0 1px 1px rgba(0,0,0,0.1);
    }
         
    .progress-container {
      margin: 20px 10px 15px;
      padding: 20px;
      background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
      border-radius: 12px;
      box-shadow: 0 2px 15px rgba(0,0,0,0.05);
      border: 1px solid rgba(255,255,255,0.8);
    }
    
    .progress-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 12px;
      flex-wrap: wrap;
      gap: 8px;
    }
    
    .progress-text {
      font-size: 14px;
      font-weight: 600;
      color: #495057;
    }
    
    .progress-percentage {
      font-size: 16px;
      font-weight: 700;
      color: #28a745;
      background: rgba(40, 167, 69, 0.1);
      padding: 4px 12px;
      border-radius: 20px;
      border: 1px solid rgba(40, 167, 69, 0.2);
    }
    
    .progress-bar {
      width: 100%;
      height: 12px;
      background: linear-gradient(90deg, #e9ecef 0%, #dee2e6 100%);
      border-radius: 10px;
      overflow: hidden;
      box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
    }
    
    .progress-fill {
      height: 100%;
      background: linear-gradient(90deg, #28a745 0%, #20c997 50%, #17a2b8 100%);
      border-radius: 10px;
      transition: width 1s ease-in-out;
      box-shadow: 0 0 10px rgba(40, 167, 69, 0.3);
      animation: progressGlow 2s ease-in-out infinite alternate;
    }
    
    @keyframes progressGlow {
      0% { box-shadow: 0 0 10px rgba(40, 167, 69, 0.3); }
      100% { box-shadow: 0 0 15px rgba(40, 167, 69, 0.5); }
    }

    .timeline-wrapper {
      padding: 25px 15px;
      background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
      border-radius: 15px;
      margin: 20px 10px;
      box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    }
    
    .timeline {
      color: #2c3e50;
      display: flex;
      flex-direction: column;
      gap: 25px;
      max-width: 700px;
      margin: 0 auto;
      position: relative;
    }
    
    /* Add connecting line between steps */
    .timeline::before {
      content: '';
      position: absolute;
      left: 50%;
      top: 60px;
      bottom: 60px;
      width: 3px;
      background: linear-gradient(to bottom, #28a745, #6c757d);
      transform: translateX(-50%);
      z-index: 1;
    }
    
    .timeline-wrapper .step {
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 25px 20px;
      border-radius: 15px;
      background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
      box-shadow: 0 8px 25px rgba(0,0,0,0.1);
      position: relative;
      text-align: center;
      border: 1px solid rgba(255,255,255,0.8);
      z-index: 2;
      transition: all 0.3s ease;
    }
    
    .timeline-wrapper .step:hover {
      transform: translateY(-3px);
      box-shadow: 0 12px 35px rgba(0,0,0,0.15);
    }
    
    .timeline-wrapper .step.completed {
      background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
      border-color: #28a745;
    }
    
    .timeline-wrapper .step.active {
      background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
      border-color: #28a745;
      box-shadow: 0 8px 25px rgba(40, 167, 69, 0.2);
    }
    
    .timeline-wrapper .icon {
      width: 50px;
      height: 50px;
      border-radius: 50%;
      border: 3px solid #e9ecef;
      margin-bottom: 15px;
      background: white;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      font-weight: bold;
      position: relative;
      z-index: 3;
      transition: all 0.3s ease;
    }
    
    .timeline-wrapper .icon.done {
      background: linear-gradient(135deg, #28a745 0%, #20c997 100%) !important;
      border-color: #28a745 !important;
      color: white !important;
      font-weight: bold !important;
      box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3);
    }
    
    .timeline-wrapper .icon.active {
      background: white !important;
      border: 3px solid #28a745 !important;
      animation: pulse 2s infinite;
      color: #28a745 !important;
      font-weight: bold !important;
      box-shadow: 0 4px 15px rgba(40, 167, 69, 0.2);
    }
    
    .timeline-wrapper .icon.future {
      background: white !important;
      border: 3px dashed #ced4da !important;
      color: #6c757d !important;
      opacity: 0.7;
    }
    
    @keyframes pulse {
      0% { 
        box-shadow: 0 4px 15px rgba(40, 167, 69, 0.2), 0 0 0 0 rgba(40, 167, 69, 0.4); 
      }
      50% { 
        box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3), 0 0 0 10px rgba(40, 167, 69, 0.1); 
      }
      100% { 
        box-shadow: 0 4px 15px rgba(40, 167, 69, 0.2), 0 0 0 0 rgba(40, 167, 69, 0); 
      }
    }
    
    .timeline-wrapper .step strong {
      font-size: 18px;
      font-weight: 700;
      color: #2c3e50;
      margin-bottom: 12px;
      letter-spacing: 0.5px;
    }
    
    .timeline-wrapper .desc {
      font-size: 15px;
      margin: 12px 0;
      line-height: 1.6;
      color: #495057;
      max-width: 400px;
    }
    
    .timeline-wrapper .step img {
      max-width: 100%;
      height: auto;
      border-radius: 10px;
      margin-top: 15px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    }
    
    .timeline-wrapper .mobile-note {
      font-size: 14px;
      color: #6c757d;
      text-align: center;
      margin: 30px auto;
      padding: 15px 20px;
      background: rgba(255,255,255,0.8);
      border-radius: 10px;
      border-left: 4px solid #28a745;
    }
    
         /* Mobile specific enhancements */
     @media (max-width: 768px) {
       .timeline-header {
         margin-bottom: 20px;
         padding: 20px 15px;
         border-radius: 10px;
       }
       
       .timeline-title {
         font-size: 20px;
         margin-bottom: 8px;
       }
       
       .timeline-subtitle {
         font-size: 14px;
       }
       
       .progress-container {
         margin: 15px 5px 12px;
         padding: 15px;
         border-radius: 10px;
       }
       
       .progress-header {
         margin-bottom: 10px;
         gap: 6px;
       }
       
       .progress-text {
         font-size: 13px;
       }
       
       .progress-percentage {
         font-size: 14px;
         padding: 3px 10px;
       }
       
       .progress-bar {
         height: 10px;
       }
       
       .timeline-wrapper {
         padding: 20px 10px;
         margin: 15px 5px;
         border-radius: 12px;
       }
      
      .timeline {
        gap: 20px;
      }
      
      .timeline::before {
        width: 2px;
        top: 50px;
        bottom: 50px;
      }
      
      .timeline-wrapper .step {
        padding: 20px 15px;
        border-radius: 12px;
        margin: 0 5px;
      }
      
      .timeline-wrapper .icon {
        width: 45px;
        height: 45px;
        font-size: 18px;
        margin-bottom: 12px;
      }
      
      .timeline-wrapper .step strong {
        font-size: 16px;
        margin-bottom: 10px;
      }
      
      .timeline-wrapper .desc {
        font-size: 14px;
        margin: 10px 0;
        line-height: 1.5;
      }
      
      .timeline-wrapper .mobile-note {
        font-size: 13px;
        margin: 25px auto;
        padding: 12px 15px;
      }
    }
    
         @media (max-width: 480px) {
       .timeline-header {
         margin-bottom: 15px;
         padding: 18px 12px;
         border-radius: 8px;
       }
       
       .timeline-title {
         font-size: 18px;
         margin-bottom: 6px;
       }
       
       .timeline-subtitle {
         font-size: 13px;
       }
       
       .progress-container {
         margin: 12px 3px 10px;
         padding: 12px;
         border-radius: 8px;
       }
       
       .progress-header {
         flex-direction: column;
         align-items: flex-start;
         gap: 8px;
         margin-bottom: 10px;
       }
       
       .progress-text {
         font-size: 12px;
       }
       
       .progress-percentage {
         font-size: 13px;
         padding: 2px 8px;
         align-self: flex-end;
       }
       
       .progress-bar {
         height: 8px;
       }
       
       .timeline-wrapper {
         padding: 15px 8px;
         margin: 10px 3px;
       }
      
      .timeline {
        gap: 18px;
      }
      
      .timeline-wrapper .step {
        padding: 18px 12px;
        border-radius: 10px;
      }
      
      .timeline-wrapper .icon {
        width: 40px;
        height: 40px;
        font-size: 16px;
        margin-bottom: 10px;
      }
      
      .timeline-wrapper .step strong {
        font-size: 15px;
        margin-bottom: 8px;
      }
      
      .timeline-wrapper .desc {
        font-size: 13px;
        margin: 8px 0;
        line-height: 1.4;
      }
      
      .timeline-wrapper .mobile-note {
        font-size: 12px;
        margin: 20px auto;
        padding: 10px 12px;
      }
    }

    