body {
            font-family: sans-serif;
            margin: 0;
            background: #f7fafd;
        }
        .timeline-title {
            font-size: 3.5em;
            padding: 0.3em 0.7em;
            border-radius: 16px;
            margin: 0 auto 1.5em auto;
            box-shadow: 0 4px 24px rgba(25, 118, 210, 0.10);
            background: linear-gradient(90deg, #1976d2, #43e97b 40%, #38f9d7 60%, #1976d2 100%);
            background-size: 200% auto;
            color: #fff;
            background-clip: text;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            animation: shine 2.5s linear infinite;
            text-align: center;
            font-weight: bold;
            letter-spacing: 0.04em;
        }

        @keyframes shine {
            to {
                background-position: 200% center;
            }
        }

        .timeline {
            display: flex;
            flex-direction: row;
            gap: 3em;
            padding: 5.25em 1.5em 0 1.5em;
            overflow-x: auto;
            overflow-y: visible;
            border-bottom: 4.5px solid #1976d2;
            max-width: 100vw;
            box-sizing: border-box;
            scroll-snap-type: x mandatory;
        }
        .event {
            position: relative;
            width: 450px;         /* 1.5x original 300px */
            min-height: 270px;    /* 1.5x original 180px */
            max-width: 480px;     /* 1.5x original 320px */
            background: #fff;
            border-radius: 15px;  /* 1.5x original 10px */
            box-shadow: 0 3px 12px rgba(25, 118, 210, 0.08); /* 1.5x original */
            margin-bottom: 1.5em; /* 1.5x original 1em */
            padding: 5.25em 1.5em 2.25em 1.5em; /* 1.5x original 3.5em 1em 1.5em 1em */
            cursor: pointer;
            transition: background 0.2s, box-shadow 0.2s, transform 0.2s;
            opacity: 0;
            transform: translateY(45px); /* 1.5x original 30px */
            animation: fadeInUp 0.7s forwards;
            box-sizing: border-box;
            overflow: visible;
            border: 2.5px solid #38f9d7;
            scroll-snap-align: center;
            transition: transform 0.3s cubic-bezier(.4,2,.6,1), box-shadow 0.3s;
        }
        .event.visible {
            opacity: 1;
            transform: translateY(0);
        }
        .event:hover {
            background: #e3f2fd;
            box-shadow: 0 6px 24px rgba(25, 118, 210, 0.12); /* 1.5x original */
            transform: translateY(-7.5px) scale(1.03); /* 1.5x original -5px */
        }
        .event:focus, .event.visible {
            transform: scale(1.04) translateY(-8px);
            box-shadow: 0 8px 32px rgba(25, 118, 210, 0.18);
            z-index: 2;
            outline: none;
        }
        .event-marker {
            position: absolute;
            left: 50%;
            top: -2.25em;
            transform: translateX(-50%);
            width: 3.3em;
            height: 3.3em;
            background: #1976d2;
            border-radius: 50%;
            border: 4.5px solid #fff; /* 1.5x original 3px */
            box-shadow: 0 0 0 3px #1976d2; /* 1.5x original 2px */
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2.25em; /* 1.5x original 1.5em */
            color: #fff;
            z-index: 2;
        }
        .event-image {
            width: 96px;    /* was 72px */
            height: 96px;   /* was 72px */
            object-fit: cover;
            border-radius: 14px; /* slightly larger corners */
            margin-right: 1.2em;
            vertical-align: middle;
            box-shadow: 0 4px 16px rgba(25, 118, 210, 0.12);
        }
        .event-content {
            display: flex;
            align-items: center;
            margin-top: 2.25em; /* 1.5x original 1.5em */
        }
        .event-year {
            font-weight: bold;
            color: #1976d2;
            margin-bottom: 0.3em; /* 1.5x original 0.2em */
            margin-right: 1.5em;  /* 1.5x original 1em */
            min-width: 5.25em;    /* 1.5x original 3.5em */
            font-size: 1.5em;     /* 1.5x original 1em */
        }
        .event-title {
            font-size: 1.65em;    /* 1.5x original 1.1em */
            margin-bottom: 0.3em; /* 1.5x original 0.2em */
        }
        .event-details {
            display: none;
            margin-top: 0.75em;   /* 1.5x original 0.5em */
            color: #333;
            animation: fadeIn 0.3s;
            font-size: 1.05em;    /* 1.5x original 0.7em */
        }
        .event.open .event-details {
            display: block;
        }
        .expand-btn {
            background: #1976d2;
            color: #fff;
            border: none;
            border-radius: 6px;   /* 1.5x original 4px */
            padding: 0.75em 1.5em;/* 1.5x original 0.5em 1em */
            margin-bottom: 1.5em; /* 1.5x original 1em */
            cursor: pointer;
            font-size: 1.5em;     /* 1.5x original 1em */
            transition: background 0.2s;
        }
        .expand-btn:hover {
            background: #1251a3;
        }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(-15px);} /* 1.5x original -10px */
            to { opacity: 1; transform: translateY(0);}
        }
        @keyframes fadeInUp {
            from { opacity: 0; transform: translateY(45px);} /* 1.5x original 30px */
            to { opacity: 1; transform: translateY(0);}
        }
        @keyframes walk-arm-left {
            0% { transform: rotate(-20deg); }
            25% { transform: rotate(40deg); }
            50% { transform: rotate(-20deg); }
            75% { transform: rotate(40deg); }
            100% { transform: rotate(-20deg); }
        }
        @keyframes walk-arm-right {
            0% { transform: rotate(20deg); }
            25% { transform: rotate(-40deg); }
            50% { transform: rotate(20deg); }
            75% { transform: rotate(-40deg); }
            100% { transform: rotate(20deg); }
        }
        @keyframes walk-leg-left {
            0% { transform: rotate(20deg); }
            25% { transform: rotate(-30deg); }
            50% { transform: rotate(20deg); }
            75% { transform: rotate(-30deg); }
            100% { transform: rotate(20deg); }
        }
        @keyframes walk-leg-right {
            0% { transform: rotate(-20deg); }
            25% { transform: rotate(30deg); }
            50% { transform: rotate(-20deg); }
            75% { transform: rotate(30deg); }
            100% { transform: rotate(-20deg); }
        }
        @keyframes head-bob {
            0% { transform: translateY(0); }
            25% { transform: translateY(3px); }
            50% { transform: translateY(0); }
            75% { transform: translateY(-3px); }
            100% { transform: translateY(0); }
        }
        /* Scroll arrows */
        .scroll-arrow {
            background: #1976d2;
            color: #fff;
            border: none;
            border-radius: 50%;
            width: 64px;
            height: 64px;
            font-size: 2.5em;
            box-shadow: 0 4px 16px rgba(25, 118, 210, 0.18);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            margin: 0 1em;
            transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
            outline: none;
        }
        .scroll-arrow:hover, .scroll-arrow:focus {
            background: #1251a3;
            transform: scale(1.12);
            box-shadow: 0 8px 32px rgba(25, 118, 210, 0.28);
        }
        /* Hide scroll arrows by default */
        #scrollLeft, #scrollRight {
            display: none;
        }
        /* Show scroll arrows on larger screens */
        @media (min-width: 700px) {
            #scrollLeft, #scrollRight {
                display: inline;
            }
        }
        /* MOBILE STYLES */
        @media (max-width: 700px) {
            .timeline-title {
                font-size: 1.5em;
                padding: 0.4em 0.2em;
                border-radius: 10px;
                margin: 0.5em auto 1em auto;
                box-shadow: 0 1px 6px rgba(25, 118, 210, 0.10);
                background-size: 200% auto;
            }
            .timeline {
                flex-direction: column;
                gap: 0;
                border-bottom: none;
                border-left: 3px solid #1976d2;
                padding: 0 0.5em 0 1em;
                margin: 1em 0 1.5em 0;
                width: 100vw;
                max-width: 100vw;
                box-sizing: border-box;
                overflow-x: hidden;
                scroll-snap-type: y mandatory;
                overflow-y: auto;
                max-height: 100vh;
            }
            .event {
                width: 96vw;
                max-width: 96vw;
                margin: 1em auto 1.5em auto;
                padding: 1em 0.7em 1em 0.7em;
                border-radius: 14px;
                border-width: 2px;
                box-sizing: border-box;
                overflow: visible;
                scroll-snap-align: start;
            }
            .event-marker {
                width: 1.5em;
                height: 1.5em;
                font-size: 0.95em;
                left: -1.1em;
                top: 0.5em;
                border-width: 2px;
            }
            .event-content {
                margin-top: 0;
                margin-left: 2em;
                flex-direction: column;
                align-items: flex-start;
                gap: 0.5em;
            }
            .event-image {
                margin-bottom: 0.3em;
                width: 64px;    /* was 42px */
                height: 64px;   /* was 42px */
                border-radius: 10px;
            }
            .expand-btn {
                display: none !important;
            }
        }
        .back-to-top {
            display: none;
            position: fixed;
            right: 1.2em;
            bottom: 1.2em;
            z-index: 1000;
            background: #1976d2;
            color: #fff;
            border: none;
            border-radius: 2em;
            padding: 0.7em 1.4em;
            font-size: 1.2em;
            box-shadow: 0 2px 8px rgba(25, 118, 210, 0.18);
            cursor: pointer;
            transition: background 0.2s, transform 0.2s;
        }
        .back-to-top:hover {
            background: #1251a3;
            transform: scale(1.08);
        }
        @media (max-width: 700px) {
            .back-to-top {
                display: block;
            }
        }
        .timeline-header {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 1.2em;
            margin-top: 1em;
            margin-bottom: 1em;
            flex-wrap: wrap;
        }

        .intel-logo {
            height: 2.5em;
            width: auto;
            display: block;
            max-width: 120px;
        }

        @media (max-width: 700px) {
            .timeline-header {
                flex-direction: column;
                gap: 0.5em;
            }
            .intel-logo {
                height: 2em;
                max-width: 90px;
            }
            .timeline-title {
                font-size: 1.5em;
                padding: 0.4em 0.2em;
                border-radius: 10px;
                margin: 0.5em auto 1em auto;
                box-shadow: 0 1px 6px rgba(25, 118, 210, 0.10);
                background-size: 200% auto;
            }
        }
        body.rtl {
    direction: rtl;
}
body.rtl .timeline-header,
body.rtl .timeline,
body.rtl .event-content {
    flex-direction: row-reverse !important;
}
body.rtl .event-year {
    margin-right: 0;
    margin-left: 1.5em;
}

/* Show event details on hover for desktop */
@media (hover: hover) and (pointer: fine) {
  .event .event-details {
    display: none;
    opacity: 0;
    max-height: 0;
    transition: opacity 0.2s, max-height 0.2s;
  }
  .event:hover .event-details,
  .event:focus-within .event-details {
    display: block;
    opacity: 1;
    max-height: 300px;
    transition: opacity 0.2s, max-height 0.2s;
  }
}