govuk_publishing_components 33.1.0 → 34.1.0

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.
Files changed (117) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/config/govuk_publishing_components_manifest.js +0 -1
  3. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-core.js +16 -27
  4. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-event-tracker.js +2 -0
  5. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-page-views.js +4 -4
  6. data/app/assets/javascripts/govuk_publishing_components/components/layout-super-navigation-header.js +12 -69
  7. data/app/assets/javascripts/govuk_publishing_components/components/step-by-step-nav.js +14 -13
  8. data/app/assets/stylesheets/govuk_publishing_components/components/_accordion.scss +28 -0
  9. data/app/assets/stylesheets/govuk_publishing_components/components/_button.scss +11 -0
  10. data/app/assets/stylesheets/govuk_publishing_components/components/_cards.scss +19 -0
  11. data/app/assets/stylesheets/govuk_publishing_components/components/_contents-list.scss +20 -0
  12. data/app/assets/stylesheets/govuk_publishing_components/components/_cookie-banner.scss +6 -0
  13. data/app/assets/stylesheets/govuk_publishing_components/components/_emergency-banner.scss +6 -0
  14. data/app/assets/stylesheets/govuk_publishing_components/components/_govspeak-html-publication.scss +8 -0
  15. data/app/assets/stylesheets/govuk_publishing_components/components/_govspeak.scss +83 -0
  16. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-super-navigation-header.scss +253 -412
  17. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav-header.scss +15 -0
  18. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav.scss +6 -0
  19. data/app/assets/stylesheets/govuk_publishing_components/components/_textarea.scss +16 -0
  20. data/app/assets/stylesheets/govuk_publishing_components/components/_title.scss +10 -0
  21. data/app/assets/stylesheets/govuk_publishing_components/components/helpers/_contents-list-helper.scss +0 -1
  22. data/app/controllers/govuk_publishing_components/component_guide_controller.rb +6 -9
  23. data/app/views/govuk_publishing_components/component_guide/_application_stylesheet.html.erb +0 -3
  24. data/app/views/govuk_publishing_components/component_guide/index.html.erb +0 -7
  25. data/app/views/govuk_publishing_components/components/_label.html.erb +3 -2
  26. data/app/views/govuk_publishing_components/components/_layout_for_admin.html.erb +1 -2
  27. data/app/views/govuk_publishing_components/components/_layout_for_public.html.erb +0 -1
  28. data/app/views/govuk_publishing_components/components/_layout_super_navigation_header.html.erb +94 -143
  29. data/app/views/govuk_publishing_components/components/docs/label.yml +6 -0
  30. data/app/views/layouts/govuk_publishing_components/application.html.erb +1 -2
  31. data/config/locales/ar.yml +4 -8
  32. data/config/locales/az.yml +5 -8
  33. data/config/locales/be.yml +4 -8
  34. data/config/locales/bg.yml +4 -8
  35. data/config/locales/bn.yml +4 -8
  36. data/config/locales/cs.yml +4 -8
  37. data/config/locales/cy.yml +4 -8
  38. data/config/locales/da.yml +4 -8
  39. data/config/locales/de.yml +4 -8
  40. data/config/locales/dr.yml +4 -8
  41. data/config/locales/el.yml +4 -8
  42. data/config/locales/en.yml +6 -17
  43. data/config/locales/es-419.yml +4 -8
  44. data/config/locales/es.yml +4 -8
  45. data/config/locales/et.yml +4 -8
  46. data/config/locales/fa.yml +5 -8
  47. data/config/locales/fi.yml +4 -8
  48. data/config/locales/fr.yml +4 -8
  49. data/config/locales/gd.yml +4 -8
  50. data/config/locales/gu.yml +4 -8
  51. data/config/locales/he.yml +4 -8
  52. data/config/locales/hi.yml +4 -8
  53. data/config/locales/hr.yml +4 -8
  54. data/config/locales/hu.yml +4 -8
  55. data/config/locales/hy.yml +4 -8
  56. data/config/locales/id.yml +4 -8
  57. data/config/locales/is.yml +4 -8
  58. data/config/locales/it.yml +4 -8
  59. data/config/locales/ja.yml +4 -8
  60. data/config/locales/ka.yml +4 -8
  61. data/config/locales/kk.yml +4 -8
  62. data/config/locales/ko.yml +4 -8
  63. data/config/locales/lt.yml +4 -8
  64. data/config/locales/lv.yml +4 -8
  65. data/config/locales/ms.yml +4 -8
  66. data/config/locales/mt.yml +4 -8
  67. data/config/locales/nl.yml +4 -8
  68. data/config/locales/no.yml +4 -8
  69. data/config/locales/pa-pk.yml +4 -8
  70. data/config/locales/pa.yml +4 -8
  71. data/config/locales/pl.yml +4 -8
  72. data/config/locales/ps.yml +4 -8
  73. data/config/locales/pt.yml +4 -8
  74. data/config/locales/ro.yml +4 -8
  75. data/config/locales/ru.yml +4 -8
  76. data/config/locales/si.yml +4 -8
  77. data/config/locales/sk.yml +4 -8
  78. data/config/locales/sl.yml +4 -8
  79. data/config/locales/so.yml +4 -8
  80. data/config/locales/sq.yml +4 -8
  81. data/config/locales/sr.yml +4 -8
  82. data/config/locales/sv.yml +4 -8
  83. data/config/locales/sw.yml +4 -8
  84. data/config/locales/ta.yml +4 -8
  85. data/config/locales/th.yml +4 -8
  86. data/config/locales/tk.yml +4 -8
  87. data/config/locales/tr.yml +4 -8
  88. data/config/locales/uk.yml +4 -8
  89. data/config/locales/ur.yml +4 -8
  90. data/config/locales/uz.yml +4 -8
  91. data/config/locales/vi.yml +4 -8
  92. data/config/locales/zh-hk.yml +4 -8
  93. data/config/locales/zh-tw.yml +4 -8
  94. data/config/locales/zh.yml +4 -8
  95. data/lib/govuk_publishing_components/config.rb +0 -3
  96. data/lib/govuk_publishing_components/version.rb +1 -1
  97. data/node_modules/axe-core/axe.d.ts +75 -24
  98. data/node_modules/axe-core/axe.js +4765 -4555
  99. data/node_modules/axe-core/axe.min.js +2 -2
  100. data/node_modules/axe-core/package.json +2 -2
  101. data/node_modules/axe-core/sri-history.json +4 -0
  102. metadata +2 -17
  103. data/app/assets/stylesheets/component_guide/print.scss +0 -1
  104. data/app/assets/stylesheets/govuk_publishing_components/_all_components_print.scss +0 -18
  105. data/app/assets/stylesheets/govuk_publishing_components/components/print/_accordion.scss +0 -28
  106. data/app/assets/stylesheets/govuk_publishing_components/components/print/_button.scss +0 -8
  107. data/app/assets/stylesheets/govuk_publishing_components/components/print/_cards.scss +0 -4
  108. data/app/assets/stylesheets/govuk_publishing_components/components/print/_contents-list.scss +0 -19
  109. data/app/assets/stylesheets/govuk_publishing_components/components/print/_emergency-banner.scss +0 -3
  110. data/app/assets/stylesheets/govuk_publishing_components/components/print/_govspeak-html-publication.scss +0 -5
  111. data/app/assets/stylesheets/govuk_publishing_components/components/print/_govspeak.scss +0 -80
  112. data/app/assets/stylesheets/govuk_publishing_components/components/print/_layout-super-navigation-header.scss +0 -3
  113. data/app/assets/stylesheets/govuk_publishing_components/components/print/_organisation-logo.scss +0 -7
  114. data/app/assets/stylesheets/govuk_publishing_components/components/print/_step-by-step-nav-header.scss +0 -7
  115. data/app/assets/stylesheets/govuk_publishing_components/components/print/_step-by-step-nav.scss +0 -116
  116. data/app/assets/stylesheets/govuk_publishing_components/components/print/_textarea.scss +0 -13
  117. data/app/assets/stylesheets/govuk_publishing_components/components/print/_title.scss +0 -7
@@ -8,9 +8,9 @@ $search-width-or-height: $black-bar-height;
8
8
  $pseudo-underline-height: 3px;
9
9
  $button-pipe-colour: darken(govuk-colour("mid-grey"), 20%);
10
10
 
11
- $after-link-padding: govuk-spacing(6);
12
- $after-button-padding-right: govuk-spacing(6);
13
- $after-button-padding-left: govuk-spacing(5);
11
+ $after-link-padding: govuk-spacing(4);
12
+ $after-button-padding-right: govuk-spacing(4);
13
+ $after-button-padding-left: govuk-spacing(4);
14
14
 
15
15
  @mixin chevron($colour, $update: false) {
16
16
  @if $update == true {
@@ -46,6 +46,7 @@ $after-button-padding-left: govuk-spacing(5);
46
46
  left: $left;
47
47
  position: absolute;
48
48
  right: $right;
49
+ bottom: 0;
49
50
  top: auto;
50
51
  @if $width {
51
52
  width: $width;
@@ -97,21 +98,19 @@ $after-button-padding-left: govuk-spacing(5);
97
98
  }
98
99
 
99
100
  .gem-c-layout-super-navigation-header__header-logo {
101
+ display: inline-block;
100
102
  height: govuk-spacing(6);
101
103
  padding-bottom: govuk-spacing(2);
102
104
  padding-top: govuk-spacing(2);
103
-
104
- @include govuk-media-query($from: "desktop") {
105
- display: block;
106
- float: left;
107
- }
108
105
  }
109
106
 
110
107
  .gem-c-layout-super-navigation-header__content {
111
- @include govuk-media-query($from: "desktop") {
112
- display: block;
113
- float: right;
108
+ @include govuk-media-query($until: "tablet") {
109
+ margin-right: govuk-spacing(-3);
114
110
  }
111
+
112
+ display: inline-block;
113
+ float: right;
115
114
  }
116
115
 
117
116
  .gem-c-layout-super-navigation-header__navigation-toggle-wrapper {
@@ -121,53 +120,14 @@ $after-button-padding-left: govuk-spacing(5);
121
120
  // Top level navigation and search.
122
121
  .gem-c-layout-super-navigation-header__navigation-items,
123
122
  .gem-c-layout-super-navigation-header__search-items {
124
- background: govuk-colour("light-grey");
125
123
  display: block;
124
+ float: left;
126
125
  list-style: none;
127
- margin: 0 (0 - govuk-spacing(3));
128
126
  padding: 0;
129
-
130
- @include govuk-media-query($from: "tablet") {
131
- margin: 0 (0 - govuk-spacing(6));
132
- }
133
-
134
- @include govuk-media-query($from: "desktop") {
135
- background: none;
136
- float: left;
137
- padding: 0;
138
- margin: 0;
139
- }
140
- }
141
-
142
- .gem-c-layout-super-navigation-header__navigation-items {
143
- @include govuk-media-query($from: "desktop") {
144
- display: inline-block;
145
- }
146
- }
147
-
148
- .gem-c-layout-super-navigation-header__navigation-item,
149
- .gem-c-layout-super-navigation-header__search-item {
150
- display: block;
151
127
  margin: 0;
152
- padding: govuk-spacing(2) govuk-spacing(3);
153
- position: relative;
154
-
155
- @include govuk-media-query($from: "tablet") {
156
- margin: 0 govuk-spacing(6);
157
- padding: govuk-spacing(2) 0;
158
- }
159
-
160
- @include govuk-media-query($from: "desktop") {
161
- background: govuk-colour("black");
162
- display: block;
163
- float: left;
164
- margin: 0;
165
- padding: 0;
166
- position: static;
167
- }
168
128
  }
169
129
 
170
- .gem-c-layout-super-navigation-header__navigation-item {
130
+ .gem-c-layout-super-navigation-header__navigation-items {
171
131
  border-bottom: 1px solid $govuk-border-colour;
172
132
 
173
133
  .js-module-initialised & {
@@ -182,20 +142,22 @@ $after-button-padding-left: govuk-spacing(5);
182
142
 
183
143
  &:first-of-type {
184
144
  margin-right: -1px;
185
-
186
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner,
187
- .gem-c-layout-super-navigation-header__navigation-item-link-inner {
188
- border-left: 1px solid $button-pipe-colour;
189
- border-right: 1px solid $button-pipe-colour;
190
- }
191
145
  }
192
146
  }
193
147
  }
194
148
 
149
+ .gem-c-layout-super-navigation-header__navigation-item,
150
+ .gem-c-layout-super-navigation-header__search-item {
151
+ background: govuk-colour("black");
152
+ display: block;
153
+ float: left;
154
+ margin: 0;
155
+ padding: 0;
156
+ }
157
+
195
158
  // Top level navigation links and search link.
196
159
  .gem-c-layout-super-navigation-header__navigation-item-link,
197
- .gem-c-layout-super-navigation-header__search-item-link,
198
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button {
160
+ .gem-c-layout-super-navigation-header__search-item-link {
199
161
  @include govuk-link-common;
200
162
  @include govuk-link-style-no-visited-state;
201
163
 
@@ -204,6 +166,7 @@ $after-button-padding-left: govuk-spacing(5);
204
166
  font-size: govuk-px-to-rem(19px);
205
167
  font-weight: bold;
206
168
  margin: govuk-spacing(3) 0;
169
+ position: relative;
207
170
 
208
171
  @include govuk-media-query($from: "desktop") {
209
172
  display: block;
@@ -228,6 +191,10 @@ $after-button-padding-left: govuk-spacing(5);
228
191
  box-shadow: none;
229
192
  color: $govuk-link-colour;
230
193
 
194
+ .gem-c-layout-super-navigation-header__navigation-item-link-inner {
195
+ border-color: $button-pipe-colour;
196
+ }
197
+
231
198
  &:hover {
232
199
  @include govuk-link-decoration;
233
200
  @include govuk-link-hover-decoration;
@@ -237,94 +204,82 @@ $after-button-padding-left: govuk-spacing(5);
237
204
 
238
205
  &:after {
239
206
  @include make-selectable-area-bigger;
207
+ @include pseudo-underline($left: $after-link-padding, $right: $after-link-padding, $width: calc(100% - $after-button-padding-right));
240
208
  }
241
209
 
242
- @include govuk-media-query($from: "desktop") {
243
- // stylelint-disable max-nesting-depth
244
- float: left;
245
- font-size: 16px;
246
- font-size: govuk-px-to-rem(16px);
247
- height: govuk-spacing(4);
248
- position: relative;
210
+ // stylelint-disable max-nesting-depth
211
+ float: left;
212
+ font-size: 16px;
213
+ font-size: govuk-px-to-rem(16px);
214
+ height: govuk-spacing(4);
249
215
 
250
- &:before {
251
- @include chevron(govuk-colour("white"), true);
252
- }
216
+ &:before {
217
+ @include chevron(govuk-colour("white"), true);
218
+ }
253
219
 
254
- &:hover {
255
- color: govuk-colour("mid-grey");
220
+ &:hover {
221
+ color: govuk-colour("mid-grey");
256
222
 
257
- &:after {
258
- background: govuk-colour("mid-grey");
259
- }
223
+ &:after {
224
+ background: govuk-colour("mid-grey");
260
225
  }
226
+ }
261
227
 
262
- &:focus:not(:focus-visible) {
263
- .gem-c-layout-super-navigation-header__navigation-item-link-inner {
264
- border-color: $button-pipe-colour;
265
- }
228
+ @include focus-and-focus-visible {
229
+ .gem-c-layout-super-navigation-header__navigation-item-link-inner {
230
+ border-color: $govuk-focus-colour;
231
+ background: $govuk-focus-colour;
266
232
  }
267
233
 
268
- @include focus-and-focus-visible {
269
- .gem-c-layout-super-navigation-header__navigation-item-link-inner {
270
- border-color: $govuk-focus-colour;
271
- }
272
-
273
- &,
274
- &:hover {
275
- box-shadow: none;
276
- color: $govuk-focus-text-colour;
234
+ &,
235
+ &:hover {
236
+ box-shadow: none;
237
+ color: $govuk-focus-text-colour;
277
238
 
278
- &:after {
279
- background: $govuk-focus-text-colour;
280
- }
239
+ &:after {
240
+ background: $govuk-focus-text-colour;
281
241
  }
282
242
  }
243
+ }
283
244
 
284
- @include focus-not-focus-visible {
285
- &,
286
- &:hover {
287
- text-decoration: none;
288
- }
289
-
290
- & {
291
- color: govuk-colour("white");
292
- }
245
+ @include focus-not-focus-visible {
246
+ &,
247
+ &:hover {
248
+ text-decoration: none;
249
+ }
293
250
 
294
- &:hover {
295
- color: govuk-colour("mid-grey");
251
+ & {
252
+ color: govuk-colour("white");
253
+ }
296
254
 
297
- &:after {
298
- background: govuk-colour("mid-grey");
299
- }
300
- }
255
+ &:hover {
256
+ color: govuk-colour("mid-grey");
301
257
 
302
258
  &:after {
303
- background: none;
259
+ background: govuk-colour("mid-grey");
304
260
  }
305
261
  }
306
262
 
307
263
  &:after {
308
- @include pseudo-underline($left: $after-link-padding, $right: $after-link-padding, $width: calc(100% - $after-link-padding));
264
+ background: none;
309
265
  }
266
+ }
310
267
 
311
- .js-module-initialised & {
312
- // If js is initialised, we are hiding the links and
313
- // making the buttons visible instead. This means we have
314
- // to remove the padding added to make the links vertically
315
- // aligned, as the buttons are styled vertically aligned by
316
- // default.
268
+ .js-module-initialised & {
269
+ // If js is initialised, we are hiding the links and
270
+ // making the buttons visible instead. This means we have
271
+ // to remove the padding added to make the links vertically
272
+ // aligned, as the buttons are styled vertically aligned by
273
+ // default.
317
274
 
318
- padding: 0;
319
- margin: 0;
275
+ padding: 0;
276
+ margin: 0;
320
277
 
321
- &:after {
322
- @include pseudo-underline($left: $after-button-padding-left, $right: $after-button-padding-right, $width: calc(100% - $after-button-padding-left));
323
- }
278
+ &:after {
279
+ @include pseudo-underline($left: $after-button-padding-left, $right: $after-button-padding-right, $width: 100%);
324
280
  }
325
-
326
- // stylelint-enable max-nesting-depth
327
281
  }
282
+ // stylelint-enable max-nesting-depth
328
283
  }
329
284
 
330
285
  &:after {
@@ -332,239 +287,79 @@ $after-button-padding-left: govuk-spacing(5);
332
287
  }
333
288
  }
334
289
 
335
- .gem-c-layout-super-navigation-header__navigation-item-link,
336
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button {
290
+ .gem-c-layout-super-navigation-header__navigation-item-link {
337
291
  @include govuk-media-query($from: "desktop") {
338
292
  padding: govuk-spacing(3) 0;
339
293
  }
340
- }
341
294
 
342
- .gem-c-layout-super-navigation-header__navigation-item-link {
343
295
  .js-module-initialised & {
344
296
  margin-left: govuk-spacing(4);
345
297
  @include govuk-link-style-no-underline;
346
298
  }
347
299
  }
348
300
 
349
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button {
350
- background: none;
351
- border: 0;
352
- color: $govuk-link-colour;
353
- cursor: pointer;
354
- padding: 0;
301
+ .gem-c-layout-super-navigation-header__navigation-item-link-inner {
302
+ background-color: govuk-colour("black");
303
+ border-left: 1px solid $button-pipe-colour;
304
+ padding: govuk-spacing(1) $after-link-padding;
305
+ }
355
306
 
356
- @include focus-not-focus-visible {
357
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
358
- &:before {
359
- @include chevron($govuk-link-colour);
360
- }
361
- }
307
+ // Search link and dropdown.
308
+ .gem-c-layout-super-navigation-header__search-item-link {
309
+ padding: govuk-spacing(3);
310
+
311
+ @include govuk-media-query($until: "desktop") {
312
+ margin: 0;
362
313
  }
363
314
 
364
- @include focus-not-focus-visible {
315
+ &:link,
316
+ &:visited {
317
+ background: $govuk-brand-colour;
318
+
365
319
  &:hover {
366
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
367
- &:before {
368
- @include chevron($govuk-link-hover-colour, true);
369
- }
320
+ background: govuk-colour("black");
321
+
322
+ &:before {
323
+ left: 0;
324
+ right: 0;
370
325
  }
371
326
  }
372
- }
373
327
 
374
- &:focus {
375
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
328
+ &:focus {
329
+ background: $govuk-focus-colour;
330
+
376
331
  &:before {
377
- @include chevron($govuk-focus-text-colour, true);
332
+ content: none;
378
333
  }
379
334
  }
380
- }
381
335
 
382
- @include govuk-media-query($from: "desktop") {
383
336
  &:after {
384
- @include pseudo-underline($left: govuk-spacing(5), $right: govuk-spacing(6));
337
+ left: 0;
338
+ right: 0;
339
+ width: 100%;
385
340
  }
386
341
 
387
342
  @include focus-not-focus-visible {
388
- color: govuk-colour("white");
389
- float: left;
390
- font-size: 16px;
391
- font-size: govuk-px-to-rem(16px);
392
- height: $black-bar-height;
393
- position: relative;
394
- text-decoration: none;
343
+ background: $govuk-link-colour;
395
344
 
396
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
397
- border-color: $button-pipe-colour;
398
-
399
- &:before {
400
- @include chevron(govuk-colour("white"), true);
401
- }
402
- }
403
- }
404
- @include focus-not-focus-visible {
405
345
  &:hover {
406
- color: govuk-colour("mid-grey");
407
- text-decoration: none;
408
-
409
- &:after {
410
- background: govuk-colour("mid-grey");
411
- }
412
-
413
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
414
- &:before {
415
- @include chevron(govuk-colour("mid-grey"), true);
416
- }
417
- }
346
+ background: govuk-colour("black");
418
347
  }
419
348
  }
420
349
 
421
350
  @include focus-and-focus-visible {
422
- color: $govuk-focus-text-colour;
423
-
424
- &:after {
425
- background: $govuk-focus-text-colour;
426
- }
427
-
428
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
429
- border-color: $govuk-focus-colour;
430
-
431
- &:before {
432
- @include chevron($govuk-focus-text-colour, true);
433
- }
434
- }
435
- }
436
- }
437
-
438
- &.gem-c-layout-super-navigation-header__open-button {
439
- @include focus-not-focus-visible {
440
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
441
- &:before {
442
- @include prefixed-transform($rotate: 225deg, $translateY: 1px);
443
- }
444
- }
445
- }
446
-
447
- @include govuk-media-query($from: "desktop") {
448
- @include focus-not-focus-visible {
449
- background: govuk-colour("light-grey");
450
- color: $govuk-link-colour;
451
-
452
- // stylelint-disable max-nesting-depth
453
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
454
- border-color: govuk-colour("light-grey");
455
-
456
- &:before {
457
- @include chevron($govuk-link-colour, true);
458
- }
459
- }
460
-
461
- &:after {
462
- background-color: $govuk-link-colour;
463
- }
464
- }
465
-
466
- @include focus-and-focus-visible {
467
- background-color: $govuk-focus-colour;
468
- color: $govuk-focus-text-colour;
469
-
470
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
471
- border-color: $govuk-focus-colour;
472
-
473
- &:before {
474
- @include chevron($govuk-focus-text-colour, true);
475
- }
476
- }
477
-
478
- &:after {
479
- background: $govuk-focus-text-colour;
480
- }
481
- }
482
- }
483
- }
484
- // stylelint-enable max-nesting-depth
485
-
486
- .js-module-initialised & {
487
- @include govuk-link-style-no-underline;
488
- }
489
- }
490
-
491
- .gem-c-layout-super-navigation-header__navigation-item-link-inner {
492
- @include govuk-media-query($from: "desktop") {
493
- // links have different left padding to the button as
494
- // they do not have the 5px wide caret pseudo element
495
- padding: govuk-spacing(1) $after-link-padding;
496
- }
497
- }
498
-
499
- .gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner {
500
- @include govuk-media-query($from: "desktop") {
501
- display: inline-block;
502
- padding: govuk-spacing(1) $after-button-padding-right govuk-spacing(1) $after-button-padding-left;
503
- }
504
- }
505
-
506
- // Search link and dropdown.
507
- .gem-c-layout-super-navigation-header__search-item-link {
508
- @include govuk-media-query($from: "desktop") {
509
- padding: govuk-spacing(3);
510
- }
511
-
512
- &:link,
513
- &:visited {
514
- @include govuk-media-query($from: "desktop") {
515
- background: $govuk-brand-colour;
516
-
517
351
  &:hover {
518
- background: govuk-colour("black");
519
-
520
- &:before {
521
- left: 0;
522
- right: 0;
523
- }
524
- }
525
-
526
- &:focus {
527
352
  background: $govuk-focus-colour;
528
-
529
- &:before {
530
- content: none;
531
- }
532
- }
533
-
534
- &:after {
535
- left: 0;
536
- right: 0;
537
- width: 100%;
538
353
  }
539
354
 
540
- @include focus-not-focus-visible {
541
- background: $govuk-link-colour;
542
-
543
- &:hover {
544
- background: govuk-colour("black");
545
- }
546
- }
547
-
548
- @include focus-and-focus-visible {
549
- &:hover {
550
- background: $govuk-focus-colour;
551
- }
552
-
553
- &:after,
554
- &:hover:after {
555
- background: $govuk-focus-colour;
556
- }
355
+ &:after,
356
+ &:hover:after {
357
+ background: $govuk-focus-colour;
557
358
  }
558
359
  }
559
360
  }
560
361
  }
561
362
 
562
- .gem-c-layout-super-navigation-header__search-item-link-text {
563
- @include govuk-media-query($from: "desktop") {
564
- @include govuk-visually-hidden;
565
- }
566
- }
567
-
568
363
  .gem-c-layout-super-navigation-header__search-item-link-icon,
569
364
  .gem-c-layout-super-navigation-header__search-toggle-button-link-icon {
570
365
  height: $icon-size;
@@ -572,12 +367,6 @@ $after-button-padding-left: govuk-spacing(5);
572
367
  width: $icon-size;
573
368
  }
574
369
 
575
- .gem-c-layout-super-navigation-header__search-item-link-icon {
576
- @include govuk-media-query($until: "desktop") {
577
- @include govuk-visually-hidden;
578
- }
579
- }
580
-
581
370
  // Search and popular content dropdown.
582
371
  .gem-c-layout-super-navigation-header__search-and-popular {
583
372
  display: none;
@@ -595,6 +384,24 @@ $after-button-padding-left: govuk-spacing(5);
595
384
  @include govuk-link-style-no-visited-state;
596
385
  @include govuk-link-style-no-underline;
597
386
 
387
+ &:after {
388
+ @include pseudo-underline($left: $after-button-padding-left, $right: $after-button-padding-right);
389
+ }
390
+
391
+ &:hover {
392
+ color: govuk-colour("mid-grey");
393
+
394
+ &:after {
395
+ background: govuk-colour("mid-grey");
396
+ }
397
+
398
+ .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
399
+ &:before {
400
+ border-color: govuk-colour("mid-grey");
401
+ }
402
+ }
403
+ }
404
+
598
405
  font-size: 16px;
599
406
  font-size: govuk-px-to-rem(16px);
600
407
  font-weight: 700;
@@ -605,24 +412,56 @@ $after-button-padding-left: govuk-spacing(5);
605
412
  cursor: pointer;
606
413
  height: $black-bar-height;
607
414
  padding: 0;
608
- margin: 0;
609
- position: absolute;
610
- right: (($search-width-or-height - govuk-spacing(3)) - 1px); // width of the search button (50px) - 15px - 1px to create an overlap between buttons and stop the border appearing to hang off the buttons when they're focused/open
611
- top: 0;
612
- z-index: 10;
415
+ position: relative;
416
+ margin: 0 -3px 0 0; // overlap with the search button to hide right border on mobile
417
+ vertical-align: top;
418
+
419
+ @include govuk-media-query($from: "desktop") {
420
+ background: govuk-colour("black");
421
+ display: block;
422
+ float: left;
423
+ margin: 0;
424
+ padding: 0;
425
+ position: relative;
426
+ right: 0;
427
+ }
428
+
429
+ &:focus-visible {
430
+ &:hover {
431
+ .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
432
+ color: govuk-colour("black");
433
+
434
+ &:after {
435
+ background: govuk-colour("black");
436
+ }
437
+
438
+ &:before {
439
+ @include chevron(govuk-colour("black"), true);
440
+ }
441
+ }
442
+ }
443
+ }
613
444
 
614
445
  @include focus-and-focus-visible {
615
446
  @include govuk-focused-text;
447
+
616
448
  box-shadow: none;
617
449
 
450
+ &:hover {
451
+ &:after {
452
+ background-color: govuk-colour("black");
453
+ }
454
+ }
455
+
456
+ &:after {
457
+ background-color: govuk-colour("black");
458
+ }
459
+
618
460
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
619
461
  border-color: $govuk-focus-colour;
620
- color: govuk-colour("black");
621
462
 
622
- @include govuk-media-query($from: 360px) {
623
- &:before {
624
- @include chevron(govuk-colour("black"), true);
625
- }
463
+ &:before {
464
+ @include chevron(govuk-colour("black"), true);
626
465
  }
627
466
  }
628
467
  }
@@ -632,10 +471,24 @@ $after-button-padding-left: govuk-spacing(5);
632
471
  @include focus-not-focus-visible {
633
472
  background: none;
634
473
  box-shadow: none;
474
+ color: govuk-colour("white");
475
+
476
+ &:hover {
477
+ .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
478
+ &:before {
479
+ @include chevron(govuk-colour("mid-grey"), true);
480
+ }
481
+
482
+ color: govuk-colour("mid-grey");
483
+ }
484
+
485
+ &:after {
486
+ background: govuk-colour("mid-grey");
487
+ }
488
+ }
635
489
 
636
490
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
637
491
  border-color: $button-pipe-colour;
638
- color: govuk-colour("white");
639
492
 
640
493
  @include govuk-media-query($from: 360px) {
641
494
  &:before {
@@ -653,7 +506,7 @@ $after-button-padding-left: govuk-spacing(5);
653
506
  box-shadow: none;
654
507
 
655
508
  &:after {
656
- background-color: $govuk-focus-colour;
509
+ background-color: govuk-colour("black");
657
510
  }
658
511
 
659
512
  .gem-c-layout-super-navigation-header__navigation-top-toggle-button-inner {
@@ -697,7 +550,11 @@ $after-button-padding-left: govuk-spacing(5);
697
550
  border-left: 1px solid govuk-colour("white");
698
551
  border-right: 1px solid govuk-colour("white");
699
552
  margin: 0;
700
- padding: govuk-spacing(2) govuk-spacing(4);
553
+ padding: govuk-spacing(1) govuk-spacing(4);
554
+
555
+ @include govuk-media-query($from: "desktop") {
556
+ border-right: 0;
557
+ }
701
558
 
702
559
  @include govuk-media-query($from: 360px) {
703
560
  &:before {
@@ -715,9 +572,7 @@ $after-button-padding-left: govuk-spacing(5);
715
572
  cursor: pointer;
716
573
  height: $search-width-or-height;
717
574
  padding: govuk-spacing(3);
718
- position: absolute;
719
- right: (0 - govuk-spacing(3));
720
- top: 0;
575
+ position: relative;
721
576
  width: $search-width-or-height;
722
577
 
723
578
  @include focus-and-focus-visible {
@@ -735,6 +590,8 @@ $after-button-padding-left: govuk-spacing(5);
735
590
  }
736
591
 
737
592
  @include govuk-media-query($from: "desktop") {
593
+ border: 0;
594
+ margin: 0;
738
595
  right: 0;
739
596
 
740
597
  @include focus-not-focus-visible {
@@ -776,6 +633,7 @@ $after-button-padding-left: govuk-spacing(5);
776
633
  background: govuk-colour("light-grey");
777
634
  border-bottom-color: govuk-colour("light-grey");
778
635
  color: govuk-colour("light-grey");
636
+ outline: 1px solid govuk-colour("light-grey"); // overlap the border of the nav menu so it won't appear when menu open
779
637
  }
780
638
  }
781
639
  }
@@ -802,11 +660,21 @@ $after-button-padding-left: govuk-spacing(5);
802
660
  // Dropdown menu.
803
661
  .gem-c-layout-super-navigation-header__navigation-dropdown-menu {
804
662
  background: govuk-colour("light-grey");
663
+ border-bottom: 1px govuk-colour("mid-grey") solid;
664
+ top: govuk-spacing(8);
665
+ left: govuk-spacing(-3);
666
+ padding: 0 govuk-spacing(3);
667
+ position: absolute;
668
+ right: govuk-spacing(-3);
669
+
670
+ @include govuk-media-query($from: "tablet") {
671
+ padding: 0 govuk-spacing(6);
672
+ left: govuk-spacing(-6);
673
+ right: govuk-spacing(-6);
674
+ }
805
675
 
806
676
  @include govuk-media-query($from: "desktop") {
807
- border-bottom: 1px govuk-colour("mid-grey") solid;
808
677
  left: 0;
809
- position: absolute;
810
678
  right: 0;
811
679
  }
812
680
  }
@@ -824,23 +692,27 @@ $after-button-padding-left: govuk-spacing(5);
824
692
  // Dropdown menu items.
825
693
  .gem-c-layout-super-navigation-header__dropdown-list-item {
826
694
  box-sizing: border-box;
827
- padding: 0 0 govuk-spacing(4) 0;
695
+ padding: 0 0 govuk-spacing(5) 0;
828
696
  position: relative;
697
+ @include govuk-media-query($from: "desktop") {
698
+ padding: 0 0 govuk-spacing(4) 0;
699
+ }
829
700
  }
830
701
 
831
702
  // Navigation menu items.
832
703
  .gem-c-layout-super-navigation-header__navigation-second-items {
704
+
833
705
  list-style: none;
834
706
  margin: 0;
835
- padding: govuk-spacing(6) govuk-spacing(4);
707
+ padding: govuk-spacing(3) govuk-spacing(5) govuk-spacing(5) 0;
836
708
 
837
709
  & > li {
838
710
  margin: 0;
839
711
  }
840
712
 
841
713
  @include govuk-media-query($from: "desktop") {
842
- margin: 0 (0 - govuk-spacing(3));
843
- padding: govuk-spacing(7) 0 govuk-spacing(8) 0;
714
+ margin: 0 (0 - govuk-spacing(3)) govuk-spacing(9);
715
+ padding: govuk-spacing(2) 0 0 0;
844
716
 
845
717
  & > li {
846
718
  margin: 0 govuk-spacing(3);
@@ -848,21 +720,21 @@ $after-button-padding-left: govuk-spacing(5);
848
720
  }
849
721
  }
850
722
 
851
- .gem-c-layout-super-navigation-header__navigation-second-items--topics {
852
- @include govuk-media-query($from: "desktop") {
853
- @include columns($items: 17, $columns: 2, $selector: "li", $flow: column);
723
+ .gem-c-layout-super-navigation-header__column--government-activity {
724
+ position: relative;
725
+
726
+ @include govuk-media-query($until: "desktop") {
727
+ margin-top: govuk-spacing(6);
854
728
  }
855
729
  }
856
730
 
857
- .gem-c-layout-super-navigation-header__navigation-second-items--government-activity {
858
- @include govuk-media-query($from: "desktop") {
859
- @include columns($items: 6, $columns: 2, $selector: "li", $flow: column);
860
- padding-bottom: 0;
731
+ .gem-c-layout-super-navigation-header__navigation-second-items--topics {
732
+ @include govuk-media-query($until: "desktop") {
733
+ border-bottom: 1px solid govuk-colour("mid-grey");
734
+ }
861
735
 
862
- & > li {
863
- box-sizing: border-box;
864
- padding-bottom: govuk-spacing(4);
865
- }
736
+ @include govuk-media-query($from: "desktop") {
737
+ @include columns($items: 17, $columns: 2, $selector: "li", $flow: column);
866
738
  }
867
739
  }
868
740
 
@@ -870,10 +742,6 @@ $after-button-padding-left: govuk-spacing(5);
870
742
  font-size: 16px;
871
743
  font-size: govuk-px-to-rem(16px);
872
744
 
873
- &:after {
874
- @include make-selectable-area-bigger;
875
- }
876
-
877
745
  @include govuk-media-query($from: "desktop") {
878
746
  font-weight: bold;
879
747
  padding: 0;
@@ -888,52 +756,10 @@ $after-button-padding-left: govuk-spacing(5);
888
756
  font-size: 16px;
889
757
  font-size: govuk-px-to-rem(16px);
890
758
  font-weight: bold;
891
- }
892
-
893
- // Dropdown menu footer links.
894
- .gem-c-layout-super-navigation-header__navigation-second-footer-break {
895
- @include govuk-media-query($until: "desktop") {
896
- display: none;
897
- }
898
- }
899
-
900
- .gem-c-layout-super-navigation-header__navigation-second-footer-list {
901
- list-style: none;
902
- padding: 0 0 govuk-spacing(8) govuk-spacing(4);
903
-
904
- @include govuk-media-query($from: "desktop") {
905
- @include columns($items: 2, $columns: 2, $selector: "li");
906
- margin: 0 (0 - govuk-spacing(3));
907
- padding: govuk-spacing(6) 0 govuk-spacing(7) 0;
908
- }
909
- }
910
-
911
- .gem-c-layout-super-navigation-header__navigation-second-footer-item {
912
- padding: govuk-spacing(2) 0;
913
- position: relative;
914
-
915
- @include govuk-media-query($from: "desktop") {
916
- padding: 0 govuk-spacing(3);
917
- }
918
- }
919
-
920
- .gem-c-layout-super-navigation-header__navigation-second-footer-link {
921
- display: inline-block;
922
- font-size: 16px;
923
- font-size: govuk-px-to-rem(16px);
924
- margin: govuk-spacing(1) 0;
925
759
 
926
760
  &:after {
927
761
  @include make-selectable-area-bigger;
928
- }
929
-
930
- @include govuk-media-query($from: "desktop") {
931
- display: inline;
932
- padding: 0;
933
-
934
- &:after {
935
- content: none;
936
- }
762
+ height: calc(100% - 20px);
937
763
  }
938
764
  }
939
765
 
@@ -947,21 +773,22 @@ $after-button-padding-left: govuk-spacing(5);
947
773
 
948
774
  // Search dropdown.
949
775
  .gem-c-layout-super-navigation-header__search-items {
950
- background: govuk-colour("light-grey");
951
- margin: 0 (0 - govuk-spacing(3));
776
+ .js-module-initialised & {
777
+ margin: 0 (0 - govuk-spacing(3));
778
+ position: absolute;
952
779
 
953
- @include govuk-media-query($from: "tablet") {
954
- margin: 0 (0 - govuk-spacing(6));
780
+ @include govuk-media-query($from: "tablet") {
781
+ margin: 0 (0 - govuk-spacing(6));
782
+ }
955
783
  }
956
784
 
785
+ background: govuk-colour("light-grey");
786
+ left: 0;
787
+ right: 0;
788
+ z-index: 999;
789
+
957
790
  @include govuk-media-query($from: "desktop") {
958
791
  margin: 0;
959
-
960
- .js-module-initialised & {
961
- left: 0;
962
- position: absolute;
963
- right: 0;
964
- }
965
792
  }
966
793
  }
967
794
 
@@ -992,10 +819,24 @@ $after-button-padding-left: govuk-spacing(5);
992
819
  }
993
820
  }
994
821
 
995
- // To be used with .govuk-width-container - we only need the margins from
996
- // desktop onwards.
997
822
  .gem-c-layout-super-navigation-header__width-container {
998
823
  @include govuk-media-query($until: "desktop") {
999
824
  margin: 0;
825
+ margin-top: govuk-spacing(6);
826
+ }
827
+
828
+ @include govuk-media-query($from: "desktop") {
829
+ margin: govuk-spacing(5) auto 0;
830
+ max-width: 960px;
831
+ }
832
+ }
833
+
834
+ .gem-c-layout-super-navigation-header__column-header {
835
+ font-size: 24px;
836
+ }
837
+
838
+ @include govuk-media-query($media-type: print) {
839
+ .gem-c-layout-super-navigation-header__content {
840
+ display: none;
1000
841
  }
1001
842
  }