@ilo-org/styles 1.5.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,39 +10,27 @@
10
10
  &__detail {
11
11
  --max-width: #{px-to-rem(343px)};
12
12
 
13
- border-bottom: px-to-rem(3px) solid $brand-ilo-grey-light;
14
- padding: spacing(8) 0;
13
+ border-bottom: px-to-rem(3px) solid var(--ilo-color-gray-light);
14
+ padding: spacing(8) spacing(4);
15
15
  position: relative;
16
16
 
17
- @include globaltransition(border);
18
-
19
- @include breakpoint("lg") {
20
- padding: spacing(8) 0;
21
- }
22
-
23
- @include breakpoint("md", true) {
24
- --max-width: 100%;
17
+ #{$self}--wrap {
18
+ display: flex;
19
+ flex-flow: column;
25
20
  }
26
21
 
27
- &:hover,
28
- &:focus,
29
- &:focus-within {
30
- @include card-drop-shadow;
31
- border-bottom: px-to-rem(3px) solid $brand-ilo-blue;
22
+ #{$self}--image--wrapper {
23
+ width: px-to-rem(100px);
24
+ height: auto;
25
+ margin-bottom: spacing(8);
32
26
 
33
- picture::before {
34
- opacity: 0.4;
35
- z-index: 2;
27
+ picture {
28
+ display: flex;
36
29
  }
37
30
 
38
- #{$self}--date-extra {
39
- &::before {
40
- @include dataurlicon("caret_right", $brand-ilo-blue);
41
-
42
- [dir="rtl"] & {
43
- @include dataurlicon("caret_left", $brand-ilo-blue);
44
- }
45
- }
31
+ img {
32
+ width: 100%;
33
+ height: 100%;
46
34
  }
47
35
  }
48
36
 
@@ -54,116 +42,90 @@
54
42
  padding: 0 0 spacing(2) 0;
55
43
  @include font-styles("headline-6");
56
44
  @include breakpoint("lg") {
57
- #{$self}__size__wide & {
58
- @include font-styles("headline-5");
59
- }
60
-
61
45
  #{$self}__size__wide & {
62
46
  @include font-styles("headline-6");
63
47
  }
64
48
  }
65
49
  }
66
50
 
67
- &#{$self}__size {
68
- &__wide,
69
- &__fluid {
70
- --max-width: #{px-to-rem(745px)};
71
-
72
- #{$self}--title {
73
- @include breakpoint("lg") {
74
- @include font-styles("headline-5");
75
- }
76
- }
51
+ #{$self}--intro {
52
+ margin-bottom: spacing(8);
53
+ }
77
54
 
78
- #{$self}--image--wrapper {
79
- @include breakpoint("lg") {
80
- flex: 0 0 px-to-rem(196px);
81
- }
82
- }
55
+ #{$self}--date {
56
+ font-size: var(--ilo-font-size-sm);
57
+ line-height: var(--ilo-line-height-xlg);
58
+ letter-spacing: var(--ilo-letter-spacing-md);
59
+ color: var(--ilo-color-gray-accessible);
60
+ }
83
61
 
84
- #{$self}--picture {
85
- @include breakpoint("lg") {
86
- width: px-to-rem(196px);
87
- }
88
- }
62
+ #{$self}--date-extra {
63
+ font-size: var(--ilo-font-size-md);
64
+ line-height: var(--ilo-line-height-2xlg);
65
+ letter-spacing: var(--ilo-letter-spacing-md);
66
+ color: var(--ilo-color-gray-charcoal);
67
+ gap: spacing(2);
68
+
69
+ // this makes sure the para will be indented
70
+ // if it has to wrap on two lines
71
+ margin-inline-start: px-to-rem(-4px);
72
+ padding-inline-start: px-to-rem(24px);
73
+ text-indent: px-to-rem(-24px);
74
+
75
+ .ilo--icon {
76
+ display: inline-block;
77
+ position: relative;
78
+ vertical-align: sub;
79
+ top: px-to-rem(1px);
89
80
  }
81
+ }
90
82
 
83
+ &#{$self}__size {
91
84
  &__narrow {
92
85
  --max-width: #{px-to-rem(343px)};
93
-
94
- @include breakpoint("md", true) {
95
- --max-width: 100%;
96
- }
97
86
  }
98
- }
99
87
 
100
- picture {
101
- display: flex;
102
- position: relative;
103
-
104
- &::before {
105
- background-color: $brand-ilo-blue;
106
- content: "";
107
- display: block;
108
- height: 100%;
109
- left: 0;
110
- opacity: 0;
111
- position: absolute;
112
- top: 0;
113
- width: 100%;
114
- z-index: -1;
115
- @include globaltransition("opacity");
116
- }
117
- }
88
+ &__wide,
89
+ &__fluid {
90
+ @include breakpoint("md") {
91
+ --max-width: #{px-to-rem(745px)};
92
+ padding: spacing(8) spacing(4) spacing(8) spacing(0);
93
+
94
+ #{$self}--image--wrapper {
95
+ flex: 1 0 18%;
96
+ height: 100%;
97
+ margin: 0;
98
+ }
118
99
 
119
- #{$self}--wrap {
120
- display: flex;
121
- }
100
+ #{$self}--picture {
101
+ height: auto;
102
+ }
122
103
 
123
- #{$self}--title {
124
- @include font-styles("headline-6");
125
- }
104
+ #{$self}--wrap {
105
+ flex-flow: row;
106
+ gap: spacing(4);
107
+ }
108
+ }
126
109
 
127
- #{$self}--image--wrapper {
128
- flex: 0 0 px-to-rem(77px);
129
- }
110
+ @include breakpoint("lg") {
111
+ padding: spacing(8) spacing(6) spacing(8) spacing(0);
130
112
 
131
- #{$self}--picture {
132
- object-fit: contain;
133
- width: px-to-rem(77px);
134
- }
113
+ #{$self}--wrap {
114
+ gap: spacing(6);
115
+ }
135
116
 
136
- #{$self}--content {
137
- padding: 0 spacing(6);
138
- }
117
+ #{$self}--image--wrapper {
118
+ flex: 1 0 27%;
119
+ }
120
+ }
139
121
 
140
- #{$self}--date-extra {
141
- @include font-styles("body-small");
142
- margin-bottom: 0;
143
- padding-inline-start: spacing(5);
144
- position: relative;
145
-
146
- &::before {
147
- background-repeat: no-repeat;
148
- content: "";
149
- display: inline-block;
150
- height: px-to-rem(24px);
151
- left: -8px;
152
- top: 0;
153
- position: absolute;
154
- width: px-to-rem(24px);
155
- @include dataurlicon("caret_right", $brand-ilo-black);
156
-
157
- [dir="rtl"] & {
158
- @include dataurlicon("caret_left", $brand-ilo-black);
159
- right: -8px;
122
+ #{$self}--title {
123
+ @include breakpoint("lg") {
124
+ @include font-styles("headline-5");
125
+ }
160
126
  }
161
127
  }
162
128
  }
163
-
164
- #{$self}--date {
165
- @include font-styles("body-small");
166
- }
167
129
  }
168
130
  }
169
131
  }
@@ -10,67 +10,44 @@
10
10
  &__feature {
11
11
  --max-width: #{px-to-rem(412px)};
12
12
 
13
- border-bottom: px-to-rem(3px) solid var(--ilo-color-gray-base);
14
13
  display: flex;
14
+ flex-flow: column;
15
15
  margin-top: 0;
16
16
  position: relative;
17
17
 
18
- &:hover,
19
- &:focus,
20
- &:focus-within {
21
- .ilo--link-list {
22
- &--label {
23
- color: var(--ilo-color-blue) !important;
24
- }
18
+ #{$self}--image--wrapper {
19
+ height: 0;
20
+ overflow: hidden;
21
+ padding-top: 56.25%;
22
+ width: 100%;
25
23
 
26
- &--icon {
27
- background-color: var(--ilo-color-blue);
28
- }
24
+ img {
25
+ position: absolute;
26
+ top: 50%;
27
+ left: 50%;
28
+ transform: translate(-50%, -50%);
29
+ height: auto;
30
+ width: 100%;
29
31
  }
30
32
  }
31
33
 
32
- &#{$self}__theme__dark {
33
- border-bottom: px-to-rem(3px) solid var(--ilo-color-red);
34
-
35
- .ilo--link-list {
36
- border-top: 2px solid var(--ilo-color-gray-light-semi-transparent);
37
- }
34
+ #{$self}--content {
35
+ display: flex;
36
+ flex: 1 1 auto;
37
+ flex-direction: column;
38
+ padding: spacing(6) spacing(6) spacing(2) spacing(6);
38
39
  }
39
40
 
40
- picture::before {
41
- @include globaltransition("opacity");
41
+ #{$self}--eyebrow {
42
+ margin-bottom: spacing(4);
42
43
  }
43
44
 
44
- &:hover,
45
- &:focus,
46
- &:focus-within {
47
- background-color: var(--ilo-color-white);
48
- border-bottom: px-to-rem(3px) solid var(--ilo-color-blue);
49
- @include card-drop-shadow;
50
-
51
- picture::before {
52
- opacity: 0.4;
53
- z-index: 1;
54
- @include globaltransition("opacity");
55
- }
56
-
57
- #{$self}--picture {
58
- filter: saturate(0);
59
- }
45
+ #{$self}--title {
46
+ margin-bottom: spacing(6);
60
47
  }
61
48
 
62
- .ilo--link-list {
63
- border-top: px-to-rem(2px) solid var(--ilo-color-gray-light);
64
- margin-left: px-to-rem(-24px);
65
- margin-right: px-to-rem(-24px);
66
- position: relative;
67
- z-index: 2;
68
-
69
- &--link,
70
- &--link:hover {
71
- border-bottom: none;
72
- padding-inline: spacing(6) spacing(2);
73
- }
49
+ #{$self}--date {
50
+ margin-bottom: spacing(8);
74
51
  }
75
52
 
76
53
  &#{$self}__size {
@@ -88,6 +65,10 @@
88
65
  #{$self}--image--wrapper {
89
66
  width: 100%;
90
67
  }
68
+
69
+ .ilo--link-list {
70
+ margin: 0 px-to-rem(-24px);
71
+ }
91
72
  }
92
73
 
93
74
  &__wide,
@@ -101,18 +82,22 @@
101
82
 
102
83
  #{$self}--content {
103
84
  display: flex;
104
- flex-direction: row;
105
85
  flex-wrap: wrap;
106
86
  position: relative;
107
87
  width: 50%;
108
88
  }
109
89
 
110
90
  #{$self}--image--wrapper {
91
+ padding: 0;
92
+ height: initial;
111
93
  width: 50%;
112
94
  }
113
95
 
114
- #{$self}--image {
96
+ img {
115
97
  object-fit: cover;
98
+ max-width: initial;
99
+ height: 100%;
100
+ width: 100%;
116
101
  }
117
102
 
118
103
  #{$self}--date {
@@ -129,8 +114,7 @@
129
114
  }
130
115
 
131
116
  .ilo--link-list {
132
- width: calc(100% + 48px);
133
- align-self: flex-end;
117
+ width: 100%;
134
118
  }
135
119
  }
136
120
  }
@@ -142,66 +126,40 @@
142
126
  width: 100%;
143
127
  }
144
128
 
145
- picture {
146
- display: flex;
147
- height: 100%;
148
- position: relative;
149
-
150
- &::before {
151
- background-color: var(--ilo-color-blue);
152
- content: "";
153
- display: block;
154
- height: 100%;
155
- left: 0;
156
- opacity: 0;
157
- position: absolute;
158
- top: 0;
159
- transition: opacity 150ms ease-in-out;
160
- width: 100%;
161
- z-index: -1;
162
- }
163
-
164
- img {
165
- object-fit: cover;
166
- }
167
- }
168
-
169
- #{$self}--content {
170
- display: flex;
171
- flex: 1 1 auto;
172
- flex-direction: column;
173
- padding: spacing(6) spacing(6) spacing(2) spacing(6);
129
+ #{$self}--title {
130
+ @include font-styles("headline-5");
131
+ font-family: var(--ilo-fonts-display);
132
+ font-weight: 700;
174
133
  }
175
134
 
135
+ // Not sure what's going on down here...
176
136
  &#{$self}__linklist {
177
137
  #{$self}--content {
178
138
  padding-bottom: 0;
179
139
  }
180
140
  }
181
141
 
182
- #{$self}--title {
183
- @include font-styles("headline-5");
184
- margin-bottom: spacing(6);
185
- font-family: var(--ilo-fonts-display);
186
- font-weight: 700;
187
- flex: 1;
188
- }
142
+ .ilo--link-list {
143
+ border-top: px-to-rem(2px) solid var(--ilo-color-gray-light);
189
144
 
190
- #{$self}--eyebrow {
191
- @include font-styles("body-eyebrow");
192
- @include textmargin(
193
- "margin-bottom",
194
- 10px,
195
- "body-eyebrow",
196
- "copy",
197
- "headline-5",
198
- "display"
199
- );
145
+ a {
146
+ border-bottom: none;
147
+ }
148
+
149
+ position: relative;
150
+ z-index: 2;
151
+
152
+ &--link,
153
+ &--link:hover {
154
+ padding-inline: spacing(6) spacing(2);
155
+ border-bottom: none;
156
+ }
200
157
  }
201
158
 
202
- #{$self}--date {
203
- margin-bottom: spacing(8);
204
- margin-top: auto;
159
+ &#{$self}__theme__dark {
160
+ .ilo--link-list {
161
+ border-top: 2px solid var(--ilo-color-gray-light-semi-transparent);
162
+ }
205
163
  }
206
164
  }
207
165
  }
@@ -12,9 +12,19 @@
12
12
  --narrow-spacing: #{spacing(6)};
13
13
  // Defaults to standard size
14
14
  --max-width: #{px-to-rem(536px)};
15
-
16
15
  padding: spacing(6);
17
16
 
17
+ // Unset properties we set in the card component
18
+ border: unset;
19
+ &:has(
20
+ .ilo--card--link:hover,
21
+ .ilo--card--link:focus,
22
+ .ilo--card--link:focus-within
23
+ ) {
24
+ border: unset;
25
+ filter: unset;
26
+ }
27
+
18
28
  #{$self}--image--wrapper {
19
29
  display: none;
20
30
  background-color: var(--ilo-color-blue-lighter);
@@ -120,7 +130,7 @@
120
130
  #{$self}--wrap {
121
131
  display: grid;
122
132
  grid-template-areas: "image content";
123
- grid-template-columns: 1fr 1fr;
133
+ grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
124
134
  gap: px-to-rem(32px);
125
135
  }
126
136