.g44-timeline {
    position: relative;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
    --timeline-item-minwidth: 250px;
    --timeline-item-width: 22%;
    --timeline-item-maxwidth: 100%;
    --timeline-accent-color: var(--g44-primary-color);
    --timeline-icons-color: var(--g44-black-color);
}

.g44-timeline.vertical{
	min-height:100vh;
}

.g44-timeline>.t-line {
    position: absolute;
    top:0px;
    left: 50%;
    width: 1px;
    height: 100%;
    transform-origin: top center;
    /* height: 10vh; */
    /* min-height: 10vh; */
    background: var(--g44-darkgray-color);
}
.g44-timeline.vertical.right>.t-line {
    left: 0px;
}
.g44-timeline.vertical.right:has(.time-wrapper)>.t-line {
    left: 200px;
}
.g44-timeline.g44-dark>.t-line {
    background: var(--g44-gray-color);
}

.g44-timeline.vertical .t-container {
    padding: 10vh 0;
    margin: 0;
}

.g44-timeline .t-container .t-item {
    position: relative;
    width: 50%;
    padding: 1.1em 2em;
    margin: 1.5em 0px;
    box-sizing: border-box;
}
.g44-timeline.vertical.right .t-container .t-item {
    width: 100%;
}
.g44-timeline.vertical.right .t-container:has(.time-wrapper) .t-item {
    width: calc(100% - 200px);
}
.g44-timeline .t-container .t-item:nth-child(odd) {
    float: left;
    text-align: right;
    clear: both;
}
.g44-timeline.vertical.right .t-container .t-item:nth-child(odd),
.g44-timeline .t-container .t-item:nth-child(even) {
    float: right;
    text-align: left;
    clear: both;
}

.g44-timeline .t-content {
    padding-bottom: 0em;
}

.g44-timeline .timeline-icon{
	color: var(--timeline-icons-color);
	font-size: 70px;
	margin-top: -32px;
	margin-bottom: 10px;
	line-height: 0;
	display:inline-block;
}
.g44-timeline.horizontal .timeline-icon{
	font-size: 80px;
	margin-top: -10px;
}

.g44-timeline.horizontal .timeline-img{
	width: 80px;
	aspect-ratio: 1/1;
	margin-top:-10px;
	margin-bottom: 10px;
	display: block;
}

.g44-timeline .t-container .t-item>.t-point{
    position: absolute;
    width: 0.8em;
    height: 0.8em;
    top: 1.5em;
    background: var(--timeline-accent-color);
    border-radius: 50%;
    box-shadow: 0 0 1em 0.15em var(--timeline-accent-color);
}
.g44-timeline .t-container .t-item:nth-child(odd)>.t-point {
    right: calc(-0.4em - 0.5px);
}
.g44-timeline .t-container .t-item:nth-child(even)>.t-point,
.g44-timeline.vertical.right .t-container .t-item:nth-child(odd)>.t-point{
    left: calc(-0.4em + 0.5px);
}

.g44-timeline .t-container .t-item h3 {
    padding: 0;
    margin: 0 0 0.5em 0px;
    color: var(--timeline-accent-color);
    font-weight: bold;
    font-size: 1.3em;
}

.g44-timeline .t-container .t-item p:first-of-type {
    margin-top: 0px;
}
.g44-timeline .t-container .t-item p:last-of-type {
    margin-bottom: 0px;
}

.g44-timeline .t-container .t-item .time-wrapper {
    position: absolute;
    top: 0.75em;
    margin: 0;
    width:100%;
    padding: 0 2em;
    box-sizing:border-box;
    font-size: 1em;
}
.g44-timeline .t-container .t-item .time {
    display:inline-block;
    padding: 0.5em 1em;
    background: var(--timeline-accent-color);
    color: #fff;
    border-radius: 2em;
    box-shadow: 0 0 1em 0.15em var(--timeline-accent-color);
}
.g44-timeline.g44-dark .t-container .t-item .time {
    color: var(--g44-black-color);
}
.g44-timeline .t-container .t-item:nth-child(odd) .time-wrapper {
    right: -100%;
    text-align:left;
}
.g44-timeline .t-container .t-item:nth-child(even) .time-wrapper{
    left: -100%;
    text-align:right;
}

.g44-timeline.vertical.right .t-container .t-item:nth-child(even) .time-wrapper,
.g44-timeline.vertical.right .t-container .t-item:nth-child(odd) .time-wrapper{
    left: -200px;
    text-align:right;
    width: 200px;
}

.g44-timeline .t-container .t-item .time h4 {
    margin: 0;
    padding: 0;
    font-size: 1em;
}


/* HORIZONTAL */
.g44-timeline.horizontal>.t-line {
    position: absolute;
    top: 6em;
    left: 0;
    width: 100%;
    height: 1px;
    min-height: unset;
}

.g44-timeline.horizontal {
    opacity: 0;
}
.g44-timeline.horizontal:has(.flickity-enabled) {
    opacity: 1;
}

.g44-timeline.horizontal .t-container {
    box-sizing:border-box;
    display:none;
    width: 100%;
    overflow-y: scroll;
    outline: none;
}

.g44-timeline.horizontal .t-container.flickity-enabled  {
	display: block;
	overflow: hidden;
    padding-left: 3em;
    padding-right: 3em;
}
.g44-timeline button:disabled{
	opacity:0 !important;
}

.g44-timeline.horizontal .flickity-viewport {
    overflow: unset;
    padding-top: 7em;
}

.g44-timeline .flickity-prev-next-button,
.g44-timeline .flickity-prev-next-button:active{
	top: 4.6em;
	font-size: 1em;
	line-height: 1em;
	transform: none;
	border:1px solid var(--g44-darkgray-color);
	background: rgb(255 255 255);
	color:var(--g44-black-color);
	opacity:1;
}

.g44-timeline.g44-dark .flickity-prev-next-button,
.g44-timeline.g44-dark .flickity-prev-next-button:active{
	border:1px solid var(--g44-gray-color);
	background: var(--g44-primary-color);
	color:var(--g44-secondary-color-dark);
}

.g44-timeline.horizontal .t-container .t-item {
	min-width: var(--timeline-item-minwidth);
	max-width: var(--timeline-item-maxwidth);
	width: var(--timeline-item-width);
	height:auto !important;
	float: none;
	text-align: left;
	padding: 0 0;
	box-sizing:border-box;
	margin: 1em 2em;
}

.g44-timeline.horizontal .t-container .t-item>.t-point {
	top: -2.35em;
	left: 2em;
}

.g44-timeline.horizontal .t-container .t-item .time-wrapper {
	top: -6.5em;
	left: 0;
	right:unset;
	padding: 0 0;
	text-align:left;
}

.g44-timeline.horizontal .t-container:after {
    content: 'flickity';
    display: none;
}


@media(max-width:1000px) {
    .g44-timeline.vertical {
        width: 100%;
    }
}

@media(max-width:781px) {
    .g44-timeline.vertical {
        width: 100%;
        padding-bottom: 0;
    }

    .g44-timeline.vertical>.t-line,
	.g44-timeline.vertical.right:has(.time-wrapper)>.t-line{
        left: 1.5em;
        /* height: 40vh; */
    }

	.g44-timeline .t-container .t-item:not(:has(.time-wrapper)) {
		padding: 1.1em 1.5em;
	}

    .g44-timeline.vertical .t-container:has(.time-wrapper) .t-item:nth-child(odd),
    .g44-timeline.vertical .t-container:has(.time-wrapper) .t-item:nth-child(even),
	.g44-timeline.vertical.right .t-container:has(.time-wrapper) .t-item{
        width: 100%;
        text-align: left;
        padding-left: 3em;
        padding-bottom: 2em;
    }

    .g44-timeline.vertical .t-container .t-item:nth-child(odd)>.t-point,
    .g44-timeline.vertical .t-container:has(.time-wrapper) .t-item:nth-child(even)>.t-point,
	.g44-timeline .t-container:has(.time-wrapper) .t-item:nth-child(even)>.t-point,
	.g44-timeline.vertical.right .t-container:has(.time-wrapper) .t-item:nth-child(odd)>.t-point{
        top: -1.1em;
        left: calc(1.1em + 0.5px);
    }

	.g44-timeline.vertical .t-container .t-item:nth-child(odd):not(:has(.time-wrapper))>.t-point,
    .g44-timeline.vertical .t-container .t-item:nth-child(even):not(:has(.time-wrapper))>.t-point,
	.g44-timeline .t-container:has(.time-wrapper) .t-item:nth-child(even):not(:has(.time-wrapper))>.t-point,
	.g44-timeline.vertical.right .t-container:has(.time-wrapper) .t-item:nth-child(odd):not(:has(.time-wrapper))>.t-point{
        top: 3em;
    }

    .g44-timeline.vertical .t-container .t-item:nth-child(odd) .time-wrapper,
    .g44-timeline.vertical .t-container .t-item:nth-child(even) .time-wrapper,
	.g44-timeline.vertical.right .t-container .t-item:nth-child(even) .time-wrapper,
	.g44-timeline.vertical.right .t-container .t-item:nth-child(odd) .time-wrapper{
        top: -1.8em;
        left: 3em;
        right: inherit;
        padding:0;
        text-align:left;
        width: auto;
    }

	.g44-timeline.horizontal .t-container .t-item {
		min-width: unset;
		width:50%;
	}

	.g44-timeline .timeline-icon{
		font-size: 60px;
		margin-top: 3px;
	}
	
	.g44-timeline .timeline-img{
		width:70px;
		margin-top:5px;
	}
}

@media(max-width:600px) {
	.g44-timeline.horizontal .t-container .t-item {
		width:100%;
	}
}