.timeline-container {
display: flex;
flex-direction: column;
} .timeline-nav {
width: 100%;
padding-bottom: var(--wp--preset--spacing--4);
}
.timeline-dates {
list-style: none;
margin: 0;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
gap: 0;
}
.timeline-date-item {
position: relative;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
align-items: center;
}
.timeline-date-item:not(:last-child) {
border-right: 2px solid var(--wp--preset--color--custom-beige-1);
}
.timeline-date-btn {
background: none;
border: none;
padding: 0 var(--wp--preset--spacing--1);
cursor: pointer;
font-family: var(--wp--preset--font-family--inter);
font-size: var(--wp--preset--font-size--3);
font-weight: 900;
color: var(--wp--preset--color--custom-blanc);
transition: all 0.3s ease;
position: relative;
white-space: nowrap;
}
.timeline-date-btn:hover,
.timeline-date-btn:focus {
outline: none;
color: var(--wp--preset--color--custom-bleu);
}
.timeline-date-item.active .timeline-date-btn {
color: var(--wp--preset--color--custom-bleu);
} .timeline-arrow {
position: absolute;
top: calc(100% + var(--wp--preset--spacing--1));
left: 50%;
transform: translateX(-50%) rotate(-90deg);
opacity: 0;
visibility: hidden;
transition: all 0.3s ease;
}
.timeline-date-item.active .timeline-arrow {
opacity: 1;
visibility: visible;
}
.timeline-arrow img {
width: 32px;
height: auto;
display: block;
} .timeline-content {
position: relative;
width: 100%;
}
.timeline-content-item {
position: absolute;
top: 0;
left: 0;
width: 100%;
opacity: 0;
visibility: hidden;
transition: all 0.4s ease;
transform: translateY(20px);
}
.timeline-content-item.active {
opacity: 1;
visibility: visible;
transform: translateY(0);
position: relative;
} .timeline-date-wrapper {
display: flex;
align-items: center;
justify-content: center;
gap: var(--wp--preset--spacing--4);
margin-bottom: var(--wp--preset--spacing--3);
}
.timeline-date-display {
font-family: var(--wp--preset--font-family--inter);
font-size: 180px;
font-weight: 700;
color: var(--wp--preset--color--custom-beige-1);
letter-spacing: -10px;
line-height: 1;
word-break: keep-all;
text-align: center;
} .timeline-nav-btn {
background: none;
border: none;
cursor: pointer;
padding: var(--wp--preset--spacing--1);
border-radius: 50%;
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
background-color: var(--wp--preset--color--custom-blanc);
}
.timeline-nav-btn:hover {
background-color: var(--wp--preset--color--custom-bleu);
transform: scale(1.1);
}
.timeline-nav-btn:disabled {
opacity: 0.3;
cursor: not-allowed;
transform: none;
}
.timeline-nav-btn:disabled:hover {
background-color: var(--wp--preset--color--custom-blanc);
transform: none;
}
.timeline-nav-arrow {
width: 20px;
height: 20px;
object-fit: contain;
display: block;
transition: all 0.3s ease;
}
.timeline-nav-prev .timeline-nav-arrow {
transform: rotate(180deg);
}
.timeline-text {
font-family: var(--wp--preset--font-family--inter);
font-size: var(--wp--preset--font-size--3);
font-weight: 900;
text-align: center;
color: var(--wp--preset--color--custom-bleu);
}
.timeline-text p {
line-height: 1.5
}
.timeline-bg-left {
position: relative;
z-index: 2;
}
.timeline-bg-left::before {
content: '';
position: absolute;
top: 0;
right: -8rem;
width: calc(50vw + 8rem);
height: 100%;
background-color: var(--wp--preset--color--custom-beige-1);
border-top-right-radius: 50px;
border-bottom-right-radius: 50px;
}
.timeline-bg-right {
position: relative;
z-index: 3;
}
.timeline-bg-right::before {
content: '';
position: absolute;
top: 0;
left: -8rem;  
width: calc(50vw + 8rem);
height: 100%;
background-color: var(--wp--preset--color--custom-noir);
border-top-left-radius: 50px;
border-bottom-left-radius: 50px;
} @media (max-width: 768px) {
.timeline-date-wrapper {
gap: var(--wp--preset--spacing--2);
margin-bottom: var(--wp--preset--spacing--2);
}
.timeline-date-display {
font-size: 72px;
letter-spacing: -4px;
}
.timeline-text {
font-size: var(--wp--preset--font-size--2);
}
.timeline-arrow {
display: none;
}
.timeline-nav-btn {
width: 36px;
height: 36px;
padding: var(--wp--preset--spacing--0);
}
.timeline-nav-arrow {
width: 16px;
height: 16px;
}
.timeline-nav {
padding-bottom: var(--wp--preset--spacing--3);
}
.timeline-dates {
justify-content: center;
gap: 1rem 0;
flex-flow: row wrap;
}
.timeline-date-item {
scroll-snap-align: center;
min-width: max-content;
}
.timeline-date-item:not(:last-child) {
border-right-width: 1px;
}
.timeline-bg-left::before {
right: 0;
width: 100vw;
border-top-right-radius: 24px;
border-bottom-right-radius: 24px;
}
.timeline-bg-right::before {
left: 0;
width: 100vw;
border-top-left-radius: 24px;
border-bottom-left-radius: 24px;
}
}