diff --git a/components/homepage/Marathons.vue b/components/homepage/Marathons.vue
index 644f0aa5..f5c58bc2 100644
--- a/components/homepage/Marathons.vue
+++ b/components/homepage/Marathons.vue
@@ -9,7 +9,7 @@
-
+
@@ -17,26 +17,26 @@
-
+
{{ marathon.name }}
-
-
+
+
-
-
+
+
{{ marathon.language.toLocaleUpperCase() }}
-
-
+
+
{{ $t(marathonsList.timeTranslationKey, { duration: $temporal.distance.format(marathon[marathonsList.timeTranslationValue]) }) }}
-
+
-
+
@@ -87,9 +87,10 @@ export default Vue.extend({
},
},
methods: {
- getRowParity(index: number): { 'is-dark': boolean } {
+ getRowParity(index: number): { 'is-even': boolean, 'is-odd': boolean } {
return {
- 'is-dark': index % 2 === 0,
+ 'is-even': index % 2 === 0,
+ 'is-odd': index % 2 === 1,
};
},
shouldRenderList(key: keyof FrontPageMarathons): boolean {
@@ -108,38 +109,29 @@ export default Vue.extend({
}
.marathons-list-container {
- width: 100%;
- display: grid;
grid-template-columns: repeat(4, auto);
grid-template-columns: auto min-content min-content auto;
- grid-auto-rows: auto;
-
- > * {
- // A lot of the notification styling is undesirable in this context
- padding: calc(var(--spacing) / 2);
- margin-block-end: 0;
- border-radius: 0;
- &.title {
- // Span from start to finish
- grid-column: 1 / -1;
- padding-inline-start: 0;
- }
+ > .title {
+ // Span from start to finish
+ grid-column: 1 / -1;
+ padding-inline-start: 0;
+ margin: 0;
+ }
- &.location {
- display: flex;
- justify-content: center;
- }
+ > .location {
+ display: flex;
+ justify-content: center;
+ }
- &.time {
- text-align: end;
- }
+ > .time {
+ text-align: end;
+ }
- &.spacer {
- // Span from start to finish
- grid-column: 1 / -1;
- height: var(--spacing);
- }
+ > .spacer {
+ // Span from start to finish
+ grid-column: 1 / -1;
+ height: calc(3 * var(--spacing) / 2);
}
}