/* Grouped layout (Grid Side-by-Side) - Specific to Timeline Post */
.elementor-timeline--layout-grouped .elementor-timeline__line {
    left: 50%;
}

.elementor-timeline--layout-grouped .elementor-timeline__items {
    display: block;
    width: 100%;
    position: relative;
}

.elementor-timeline__group-wrapper {
    width: 100%;
    position: relative;
}

.elementor-timeline--layout-grouped .elementor-timeline__group-header {
    grid-column: 1 / -1;
    position: relative;
    padding: 10px 20px;
    font-size: 1.25rem;
    color: #333;
    z-index: 1;
    text-align: center;
    background: rgb(234, 234, 234);
    width: max-content;
    min-width: 160px;
    margin: 20px auto;
    line-height: 1.35;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: background 0.3s ease;
    border-radius: 4px;
}

.elementor-timeline--layout-grouped .elementor-timeline__group-header:hover {
    background: #e0e0e0;
}

.elementor-timeline__group-toggle {
    transition: transform 0.3s ease;
}

.elementor-timeline__group-wrapper.is-collapsed .elementor-timeline__group-toggle {
    transform: rotate(-90deg);
}

.elementor-timeline__group-content {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* column-gap: 80px; */
    row-gap: 40px;
    transition: all 0.3s ease-in-out;
    overflow: hidden;
    max-height: 5000px; /* Large enough to fit content */
    opacity: 1;
}

.elementor-timeline__group-wrapper.is-collapsed .elementor-timeline__group-content {
    max-height: 0;
    opacity: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
    pointer-events: none;
}

.elementor-timeline--layout-grouped .elementor-timeline__item {
    margin-bottom: 0;
    /* Managed by grid row-gap */
    position: relative;
    width: 100%;
}

.elementor-timeline--layout-grouped .elementor-timeline__item--left {
    grid-column: 1;
    flex-direction: row;
}

.elementor-timeline--layout-grouped .elementor-timeline__item--right {
    grid-column: 2;
    flex-direction: row-reverse;
}

.elementor-timeline--layout-grouped .elementor-timeline__item--left .elementor-timeline__card {
    padding-right: 40px;
}

.elementor-timeline--layout-grouped .elementor-timeline__item--right .elementor-timeline__card {
    padding-left: 40px;
}

.elementor-timeline--layout-grouped .elementor-timeline__item--right .elementor-timeline__date-wrapper {
    padding-right: 40px;
}

.elementor-timeline--layout-grouped .elementor-timeline__card,
.elementor-timeline--layout-grouped .elementor-timeline__date-wrapper {
    width: 50%;
    box-sizing: border-box;
}

/* Adjust icon positions for grid */
.elementor-timeline--layout-grouped .elementor-timeline__item--left .elementor-timeline__icon-wrapper {
    top: 50%;
    left: auto;
    right: 0;
    transform: translate(50%, 0);
}

.elementor-timeline--layout-grouped .elementor-timeline__item--right .elementor-timeline__icon-wrapper {
    top: 50%;
    left: 0;
    transform: translate(-50%, 0);
}

/* Ensure card content layout within grid */
.elementor-timeline--layout-grouped .elementor-timeline__item .elementor-timeline__card,
.elementor-timeline--layout-grouped .elementor-timeline__item .elementor-timeline__date-wrapper {
    width: 100%;
}

/* Hide line and adjust icons on mobile for grouped */
@media (max-width: 767px) {
    .elementor-timeline__group-content {
        display: flex;
        flex-direction: column;
        row-gap: 30px;
    }

    .elementor-timeline--layout-grouped .elementor-timeline__card,
    .elementor-timeline--layout-grouped .elementor-timeline__date-wrapper {
        width: 100%;
        text-align: left;
        padding: 0;
    }

    .elementor-timeline--layout-grouped .elementor-timeline__item--left .elementor-timeline__card,
    .elementor-timeline--layout-grouped .elementor-timeline__item--right .elementor-timeline__card {
        text-align: left;
        padding: 0;
    }

    .elementor-timeline--layout-grouped .elementor-timeline__item--left .elementor-timeline__date-wrapper,
    .elementor-timeline--layout-grouped .elementor-timeline__item--right .elementor-timeline__date-wrapper {
        text-align: left;
        padding: 0;
        margin-bottom: 8px;
    }

    .elementor-timeline--layout-grouped .elementor-timeline__date-wrapper {
        order: -1;
    }
}

/* Pagination */
.elementor-timeline__pagination {
	text-align: center;
	margin-top: 20px;
}

.elementor-timeline__pagination .page-numbers {
	display: inline-block;
	padding: 5px 10px;
	margin: 0 2px;
	text-decoration: none;
	color: #818a91;
	transition: color 0.2s;
}

.elementor-timeline__pagination a.page-numbers:hover {
	color: #333;
}

.elementor-timeline__pagination .page-numbers.current {
	font-weight: 700;
	color: #333;
}

.elementor-timeline__pagination .page-numbers.dots {
	cursor: default;
}

/* Top Icon */
.elementor-timeline__top-icon-wrapper {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    line-height: 1;
}

.elementor-timeline__top-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.elementor-timeline__top-icon i {
    color: inherit;
    font-size: inherit;
}

.elementor-timeline__top-icon svg {
    fill: currentColor;
    width: 1em;
    height: 1em;
}

.elementor-timeline--layout-left .elementor-timeline__top-icon-wrapper {
    left: 20px;
}

.elementor-timeline--layout-right .elementor-timeline__top-icon-wrapper {
    left: auto;
    right: 20px;
}

@media (max-width: 767px) {
    .elementor-timeline--layout-alternate .elementor-timeline__top-icon-wrapper {
        left: 20px;
    }
}