pageflow 12.1.0 → 12.2.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of pageflow might be problematic. Click here for more details.

Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +90 -171
  3. data/MIT-LICENSE +1 -1
  4. data/README.md +22 -2
  5. data/admins/pageflow/entry.rb +3 -1
  6. data/admins/pageflow/user.rb +9 -3
  7. data/app/assets/javascripts/pageflow/browser/agent.js +20 -9
  8. data/app/assets/javascripts/pageflow/browser/autoplay_support.js +3 -2
  9. data/app/assets/javascripts/pageflow/dist/react.js +6000 -4941
  10. data/app/assets/javascripts/pageflow/editor/initializers/setup_collections.js +0 -1
  11. data/app/assets/javascripts/pageflow/editor/views/page_preview_view.js +0 -5
  12. data/app/assets/javascripts/pageflow/links.js +0 -7
  13. data/app/assets/javascripts/pageflow/ready.js +2 -0
  14. data/app/assets/javascripts/pageflow/slideshow.js +1 -0
  15. data/app/assets/javascripts/pageflow/slideshow/hide_text_on_swipe.js +10 -5
  16. data/app/assets/javascripts/pageflow/slideshow/page_split_layout.js +74 -0
  17. data/app/assets/javascripts/pageflow/slideshow/page_widget.js +25 -1
  18. data/app/assets/javascripts/pageflow/slideshow/swipe_gesture.js +5 -3
  19. data/app/assets/javascripts/pageflow/ui.js +1 -0
  20. data/app/assets/javascripts/pageflow/ui/templates/inputs/text_area_input.jst.ejs +1 -1
  21. data/app/assets/javascripts/pageflow/ui/templates/inputs/text_input.jst.ejs +1 -1
  22. data/app/assets/javascripts/pageflow/ui/views/inputs/color_input_view.js +105 -0
  23. data/app/assets/javascripts/pageflow/visited.js +62 -34
  24. data/app/assets/javascripts/pageflow/widgets/overview.js +18 -5
  25. data/app/assets/stylesheets/pageflow/base.scss +0 -1
  26. data/app/assets/stylesheets/pageflow/entries.scss +11 -3
  27. data/app/assets/stylesheets/pageflow/mixins.scss +1 -0
  28. data/app/assets/stylesheets/pageflow/mixins/layout_direction.scss +72 -0
  29. data/app/assets/stylesheets/pageflow/mixins/shadow.scss +20 -0
  30. data/app/assets/stylesheets/pageflow/navigation_bar.scss +8 -2
  31. data/app/assets/stylesheets/pageflow/navigation_mobile.scss +1 -2
  32. data/app/assets/stylesheets/pageflow/overview.scss +10 -11
  33. data/app/assets/stylesheets/pageflow/page.scss +3 -37
  34. data/app/assets/stylesheets/pageflow/page_transitions/fade.scss +7 -3
  35. data/app/assets/stylesheets/pageflow/page_transitions/fade_to_black.scss +1 -10
  36. data/app/assets/stylesheets/pageflow/slideshow.scss +1 -2
  37. data/app/assets/stylesheets/pageflow/themes/default/anchors.scss +5 -0
  38. data/app/assets/stylesheets/pageflow/themes/default/base.scss +1 -0
  39. data/app/assets/stylesheets/pageflow/themes/default/loading_spinner.scss +9 -3
  40. data/app/assets/stylesheets/pageflow/themes/default/logo.scss +9 -3
  41. data/app/assets/stylesheets/pageflow/themes/default/logo/alignment.scss +2 -2
  42. data/app/assets/stylesheets/pageflow/themes/default/logo/variant/background_image.scss +52 -5
  43. data/app/assets/stylesheets/pageflow/themes/default/logo/variant/watermark.scss +6 -3
  44. data/app/assets/stylesheets/pageflow/{multimedia_alert.scss → themes/default/multimedia_alert.scss} +32 -11
  45. data/app/assets/stylesheets/pageflow/themes/default/overview.scss +7 -3
  46. data/app/assets/stylesheets/pageflow/themes/default/overview/icons/icon_font.scss +20 -4
  47. data/app/assets/stylesheets/pageflow/themes/default/page.scss +20 -53
  48. data/app/assets/stylesheets/pageflow/themes/default/page/line_lengths.scss +3 -8
  49. data/app/assets/stylesheets/pageflow/themes/default/page/paddings.scss +72 -0
  50. data/app/assets/stylesheets/pageflow/themes/default/page/scroller.scss +3 -0
  51. data/app/assets/stylesheets/pageflow/themes/default/page/shadow.scss +27 -0
  52. data/app/assets/stylesheets/pageflow/themes/default/player_controls/classic/control_bar.scss +1 -0
  53. data/app/assets/stylesheets/pageflow/themes/default/player_controls/slim/container.scss +1 -1
  54. data/app/assets/stylesheets/pageflow/ui.scss +2 -0
  55. data/app/assets/stylesheets/pageflow/ui/input/color_input.scss +25 -0
  56. data/app/controllers/pageflow/application_controller.rb +17 -3
  57. data/app/helpers/pageflow/overview_helper.rb +11 -0
  58. data/app/helpers/pageflow/text_direction_helper.rb +7 -0
  59. data/app/policies/pageflow/user_policy.rb +20 -0
  60. data/app/views/admin/accounts/_account_details.html.arb +5 -3
  61. data/app/views/admin/accounts/_theming_details.html.arb +5 -3
  62. data/app/views/admin/entries/_attributes_table.html.arb +3 -1
  63. data/app/views/components/pageflow/admin/extensible_attributes_table.rb +88 -0
  64. data/app/views/layouts/pageflow/application.html.erb +1 -1
  65. data/app/views/pageflow/entries/edit.html.erb +1 -1
  66. data/app/views/pageflow/entries/overview/_page.html.erb +3 -1
  67. data/app/views/pageflow/entries/show.html.erb +2 -1
  68. data/config/initializers/admin_attributes_table_rows.rb +3 -0
  69. data/config/locales/de.yml +1 -1
  70. data/lib/pageflow.rb +4 -2
  71. data/lib/pageflow/ability_mixin.rb +8 -0
  72. data/lib/pageflow/admin/attributes_table_rows.rb +47 -0
  73. data/lib/pageflow/configuration.rb +27 -3
  74. data/lib/pageflow/engine.rb +1 -0
  75. data/lib/pageflow/news_item_api.rb +18 -0
  76. data/lib/pageflow/version.rb +1 -1
  77. data/spec/factories/accounts.rb +7 -2
  78. data/spec/factories/entries.rb +7 -2
  79. data/vendor/assets/javascripts/iscroll.js +49 -34
  80. metadata +53 -12
@@ -63,7 +63,6 @@
63
63
 
64
64
  z-index: 2;
65
65
  overflow: hidden;
66
- @include transition(0.5s ease);
67
66
  }
68
67
 
69
68
  .page.hidden_by_overlay .content {
@@ -75,7 +74,7 @@
75
74
  position: absolute;
76
75
  top: 0;
77
76
  left: 0;
78
- width: 100%;
77
+ right: 0;
79
78
  bottom: 0;
80
79
  z-index: 1;
81
80
 
@@ -1,5 +1,10 @@
1
1
  %anchor {
2
2
  @include fa-caret-right-icon;
3
+
4
+ [dir=rtl] & {
5
+ @include fa-caret-left-icon;
6
+ }
7
+
3
8
  text-decoration: none;
4
9
  pointer-events: all;
5
10
  position: relative;
@@ -22,6 +22,7 @@
22
22
  @import "./indicators";
23
23
  @import "./navigation";
24
24
  @import "./mobile_navigation";
25
+ @import "./multimedia_alert";
25
26
  @import "./overview";
26
27
  @import "./player_controls";
27
28
  @import "./video_player";
@@ -40,6 +40,12 @@ $loading-spinner-glow-color: rgba(117, 149, 160, 0.8) !default;
40
40
  /// Apply opacity animation to glow or background image.
41
41
  $loading-spinner-animate-background: true !default;
42
42
 
43
+ /// Size of the actual glowing area
44
+ $loading-spinner-glow-size: 140px !default;
45
+
46
+ /// File extension of background and logo
47
+ $loading-spinner-image-file-extension: "png" !default;
48
+
43
49
  @if not $custom-loading-spinner {
44
50
  .loading_spinner {
45
51
  // scss-lint:disable ImportantRule
@@ -59,11 +65,11 @@ $loading-spinner-animate-background: true !default;
59
65
  content: "";
60
66
  @include radial-gradient(circle,
61
67
  $loading-spinner-glow-color 0%,
62
- $loading-spinner-background-color 140px);
68
+ $loading-spinner-background-color $loading-spinner-glow-size);
63
69
  background-size: 100% 100%;
64
70
  } @else if $loading-spinner-background == "custom" {
65
71
  content: "";
66
- background-image: image-url("pageflow/themes/#{$theme-name}/loading_spinner/background.png");
72
+ background-image: image-url("pageflow/themes/#{$theme-name}/loading_spinner/background.#{$loading-spinner-image-file-extension}");
67
73
 
68
74
  @if $loading-spinner-background-size == "logo" {
69
75
  background-size: $loading-spinner-logo-width $loading-spinner-logo-height;
@@ -110,7 +116,7 @@ $loading-spinner-animate-background: true !default;
110
116
  position: absolute;
111
117
 
112
118
  @if $loading-spinner-logo == "custom" {
113
- background-image: image-url("pageflow/themes/#{$theme-name}/loading_spinner/logo.png");
119
+ background-image: image-url("pageflow/themes/#{$theme-name}/loading_spinner/logo.#{$loading-spinner-image-file-extension}");
114
120
  } @else {
115
121
  background-image: image-url("pageflow/themes/default/loading_spinner/logo.png");
116
122
  }
@@ -15,7 +15,7 @@ $logo-variant: "first-page" !default;
15
15
  $logo-top: 30px !default;
16
16
 
17
17
  /// Height of the logo. (Non-watermark variants only)
18
- $logo-phone-top: nil !default;
18
+ $logo-phone-top: null !default;
19
19
 
20
20
  /// Width of the logo. (Watermark variant only)
21
21
  $logo-width: 100px !default;
@@ -35,13 +35,18 @@ $logo-height: 50px !default;
35
35
  /// Height of the logo. (Non-watermark variants only)
36
36
  $logo-mobile-height: 35px !default;
37
37
 
38
- /// Height of the logo in phone layout. (Watermark variant only)
39
- $logo-phone-height: 24px !default;
38
+ /// Height of the logo in phone layout. (Defaults to 24px for watermark variant)
39
+ $logo-phone-height: null !default;
40
+
41
+ /// File extension of logo_header and logo_header_invert image files
42
+ $logo-image-file-extension: "png" !default;
40
43
 
41
44
  @import "./logo/variant/background_image";
42
45
  @import "./logo/variant/watermark";
43
46
 
44
47
  @if $logo-variant == "watermark" {
48
+ $logo-phone-height: 24px !default;
49
+
45
50
  @include logo-variant-watermark(
46
51
  $top: $logo-top,
47
52
  $width: $logo-width,
@@ -57,6 +62,7 @@ $logo-phone-height: 24px !default;
57
62
  $width: $logo-relative-width,
58
63
  $height: $logo-height,
59
64
  $mobile-height: $logo-mobile-height,
65
+ $phone-height: $logo-phone-height,
60
66
  $phone-top: $logo-phone-top
61
67
  );
62
68
  }
@@ -15,9 +15,9 @@ $logo-right: 14% !default;
15
15
  @mixin logo-alignment {
16
16
  @include desktop {
17
17
  @if $logo-alignment == "left" {
18
- left: $logo-left;
18
+ @include position-start($logo-left);
19
19
  } @else {
20
- right: $logo-right;
20
+ @include position-end($logo-right);
21
21
  }
22
22
  }
23
23
 
@@ -6,6 +6,19 @@ $logo-background-image-variant-opacity: null !default;
6
6
  /// Opacity of the logo on the first page
7
7
  $logo-background-image-variant-first-page-opacity: null !default;
8
8
 
9
+ /// For some reason there has always been a default padding top for
10
+ /// logo in mobile layout.
11
+ $logo-background-image-variant-mobile-padding-top: 1% !default;
12
+
13
+ /// Display logo_banner.svg behind logo
14
+ $logo-background-image-variant-banner: false !default;
15
+
16
+ $logo-background-image-variant-banner-height: 100px !default;
17
+
18
+ $logo-background-image-variant-banner-mobile-height: null !default;
19
+
20
+ $logo-background-image-variant-banner-phone-height: null !default;
21
+
9
22
  @mixin logo-variant-background-image(
10
23
  $first-page-only,
11
24
  $top,
@@ -14,11 +27,12 @@ $logo-background-image-variant-first-page-opacity: null !default;
14
27
  $width,
15
28
  $height,
16
29
  $mobile-height,
30
+ $phone-height,
17
31
  $phone-top
18
32
  ) {
19
33
  $page-selector: if($first-page-only, ":first-child", "");
20
34
 
21
- .js .page#{$page-selector} {
35
+ .page#{$page-selector} {
22
36
  .content_and_background .scroller > div:after {
23
37
  content: "";
24
38
  position: absolute;
@@ -28,18 +42,26 @@ $logo-background-image-variant-first-page-opacity: null !default;
28
42
  max-width: $max-width;
29
43
  width: $width;
30
44
  height: $height;
31
- background-image: image-url("pageflow/themes/#{$theme-name}/logo_header.png");
45
+ background-image: image-url("pageflow/themes/#{$theme-name}/logo_header.#{$logo-image-file-extension}");
32
46
  background-repeat: no-repeat;
33
47
  background-size: contain;
34
- background-position: #{$logo-alignment} top;
48
+
49
+ @include dir-ltr {
50
+ background-position: #{$logo-alignment} top;
51
+ }
52
+
53
+ @include dir-rtl {
54
+ background-position: #{if($logo-alignment == "left", "right", "left")} top;
55
+ }
35
56
 
36
57
  @include mobile {
37
58
  background-position: left top;
38
- padding-top: 1%;
59
+ padding-top: $logo-background-image-variant-mobile-padding-top;
39
60
  height: $mobile-height;
40
61
  }
41
62
 
42
63
  @include phone {
64
+ height: $phone-height;
43
65
  top: $phone-top;
44
66
  }
45
67
 
@@ -47,7 +69,32 @@ $logo-background-image-variant-first-page-opacity: null !default;
47
69
  }
48
70
 
49
71
  &.invert .content_and_background .scroller > div:after {
50
- background-image: image-url("pageflow/themes/#{$theme-name}/logo_header_invert.png");
72
+ background-image: image-url("pageflow/themes/#{$theme-name}/logo_header_invert.#{$logo-image-file-extension}");
73
+ }
74
+
75
+ @if $logo-background-image-variant-banner {
76
+ .content_and_background .scroller > div:before {
77
+ content: "";
78
+ position: absolute;
79
+ top: 0;
80
+ left: 0;
81
+ z-index: 200;
82
+ width: 100%;
83
+ height: $logo-background-image-variant-banner-height;
84
+ padding-right: 100px;
85
+ background-image: image-url("pageflow/themes/#{$theme-name}/logo_banner.svg");
86
+ background-repeat: no-repeat;
87
+ background-size: 100% 100%;
88
+
89
+ @include mobile {
90
+ height: $logo-background-image-variant-banner-mobile-height;
91
+ }
92
+
93
+ @include phone {
94
+ height: $logo-background-image-variant-banner-phone-height;
95
+ }
96
+
97
+ }
51
98
  }
52
99
  }
53
100
 
@@ -12,6 +12,9 @@ $logo-watermark-variant-fade-in-near-top: "first-page" !default;
12
12
  /// is displayed while the header is active.
13
13
  $logo-watermark-variant-fade-in-with-header: false !default;
14
14
 
15
+ /// Set opacity value of watermark logos
16
+ $logo-watermark-variant-opacity: 0.3 !default;
17
+
15
18
  @mixin logo-variant-watermark(
16
19
  $top,
17
20
  $width,
@@ -30,7 +33,7 @@ $logo-watermark-variant-fade-in-with-header: false !default;
30
33
  z-index: 1;
31
34
 
32
35
  pointer-events: none;
33
- opacity: 0.3;
36
+ opacity: $logo-watermark-variant-opacity;
34
37
  @include transition(opacity 500ms);
35
38
 
36
39
  @include phone {
@@ -61,12 +64,12 @@ $logo-watermark-variant-fade-in-with-header: false !default;
61
64
 
62
65
  &:before {
63
66
  opacity: 1;
64
- background-image: image-url("pageflow/themes/#{$theme-name}/logo_header.png");
67
+ background-image: image-url("pageflow/themes/#{$theme-name}/logo_header.#{$logo-image-file-extension}");
65
68
  }
66
69
 
67
70
  &:after {
68
71
  opacity: 0;
69
- background-image: image-url("pageflow/themes/#{$theme-name}/logo_header_invert.png");
72
+ background-image: image-url("pageflow/themes/#{$theme-name}/logo_header_invert.#{$logo-image-file-extension}");
70
73
  }
71
74
  }
72
75
 
@@ -1,3 +1,9 @@
1
+ $multimedia-alert-typography: () !default;
2
+
3
+ $multimedia-alert-headline-typography: () !default;
4
+
5
+ $multimedia-alert-close-button-typography: () !default;
6
+
1
7
  .multimedia_alert {
2
8
  display: none;
3
9
  position: absolute;
@@ -11,7 +17,6 @@
11
17
  z-index: 90;
12
18
  color: white;
13
19
  text-align: center;
14
- font-family: "SourceSansPro";
15
20
  overflow: hidden;
16
21
 
17
22
  .multimedia_alert_box {
@@ -23,7 +28,13 @@
23
28
  width: 500px;
24
29
  height: 580px;
25
30
  max-width: 500px;
26
- font-size: 1.4em;
31
+ @include standard-typography(
32
+ $multimedia-alert-typography,
33
+ (
34
+ font-family: "SourceSansPro",
35
+ font-size: 1.4em
36
+ )
37
+ );
27
38
 
28
39
  @media (max-width: 500px) {
29
40
  margin-left: -155px;
@@ -33,22 +44,32 @@
33
44
  height: 350px;
34
45
  }
35
46
 
36
- .alert_headline, .close {
37
- font-family: "SourceSansProLight";
38
- text-transform: uppercase;
39
- font-weight: normal;
40
- }
41
-
42
47
  .alert_headline {
43
- font-size: 2.2em;
48
+ @include standard-typography(
49
+ $multimedia-alert-headline-typography,
50
+ (
51
+ font-family: "SourceSansProLight",
52
+ font-size: 2.2em,
53
+ text-transform: uppercase,
54
+ font-weight: normal
55
+ )
56
+ );
44
57
  }
45
58
  .close {
46
- font-size: 1.4em;
47
59
  border: 1px solid white;
48
60
  border-radius: 7px;
49
61
  padding: 16px 32px;
50
62
  color: white;
51
63
  text-decoration: none;
64
+ @include standard-typography(
65
+ $multimedia-alert-close-button-typography,
66
+ (
67
+ font-family: "SourceSansProLight",
68
+ font-size: 1.4em,
69
+ text-transform: uppercase,
70
+ font-weight: normal
71
+ )
72
+ );
52
73
 
53
74
  &:hover {
54
75
  text-decoration: underline;
@@ -149,4 +170,4 @@
149
170
  }
150
171
  }
151
172
  }
152
- }
173
+ }
@@ -35,9 +35,13 @@ $overview-icon-font-options: () !default;
35
35
 
36
36
  .close .label {
37
37
  position: absolute;
38
- margin-right: 130%;
39
- text-align: right;
38
+ @include margin-end(130%);
39
+ @include text-align-end;
40
40
  width: 500%;
41
- right: 0;
41
+ @include position-end(0);
42
+ }
43
+
44
+ .content {
45
+ @extend %pageflow_widget_margin_right !optional;
42
46
  }
43
47
  }
@@ -36,15 +36,31 @@
36
36
  }
37
37
 
38
38
  &.left {
39
- @include fa-angle-left-icon;
39
+ @include dir-ltr {
40
+ @include fa-angle-left-icon;
40
41
 
41
- &:before {
42
- margin-left: -2px;
42
+ &:before {
43
+ margin-left: -2px;
44
+ }
45
+ }
46
+
47
+ @include dir-rtl {
48
+ @include fa-angle-right-icon;
43
49
  }
44
50
  }
45
51
 
46
52
  &.right {
47
- @include fa-angle-right-icon;
53
+ @include dir-ltr {
54
+ @include fa-angle-right-icon;
55
+ }
56
+
57
+ @include dir-rtl {
58
+ @include fa-angle-left-icon;
59
+
60
+ &:before {
61
+ margin-left: -2px;
62
+ }
63
+ }
48
64
  }
49
65
  }
50
66
  }
@@ -5,18 +5,6 @@
5
5
  /// Base typography for page.
6
6
  $page-typography: () !default;
7
7
 
8
- /// Space for logo on first page.
9
- $page-scroller-first-page-padding-top: nil !default;
10
-
11
- /// Space for logo on first page in mobile layout.
12
- $page-scroller-first-page-mobile-padding-top: 110px !default;
13
-
14
- /// Space for logo on first page in mobile landscape layout.
15
- $page-scroller-first-page-mobile-landscape-padding-top: 100px !default;
16
-
17
- /// Space for logo on first page in phone layout.
18
- $page-scroller-first-page-phone-padding-top: nil !default;
19
-
20
8
  /// Typography for header.
21
9
  $page-header-typography: () !default;
22
10
 
@@ -55,6 +43,10 @@ $page-text-color: #fff !default;
55
43
  /// @group page-colors
56
44
  $page-inverted-text-color: #000 !default;
57
45
 
46
+ /// Color of title on inverted pages
47
+ /// @group page-colors
48
+ $page-inverted-title-color: null !default;
49
+
58
50
  /// Background-color of pages
59
51
  /// @group page-colors
60
52
  $page-background-color: #000 !default;
@@ -63,14 +55,6 @@ $page-background-color: #000 !default;
63
55
  /// @group page-colors
64
56
  $page-inverted-background-color: #fff !default;
65
57
 
66
- /// Color of the gradient
67
- /// @group page-colors
68
- $page-shadow-color: #000 !default;
69
-
70
- /// Color of the gradient on inverted pages
71
- /// @group page-colors
72
- $page-shadow-inverted-color: #fff !default;
73
-
74
58
  // Deprecated. Use typography variables above.
75
59
 
76
60
  $page-font-family: $standard-font !default;
@@ -100,6 +84,10 @@ $page-content-text-font-size: 1.2em !default;
100
84
  $page-content-text-line-height: 1.5em !default;
101
85
 
102
86
  @import "./page/anchors";
87
+ @import "./page/paddings";
88
+ @import "./page/scroller";
89
+ @import "./page/shadow";
90
+
103
91
  @import "./page/line_lengths";
104
92
 
105
93
  .page {
@@ -110,27 +98,24 @@ $page-content-text-line-height: 1.5em !default;
110
98
  font-size: $page-font-size
111
99
  )
112
100
  );
101
+
113
102
  color: $page-text-color;
114
103
  background-color: $page-background-color;
115
104
 
116
- .content {
117
- font-size: $page-content-font-size;
105
+ &.invert {
106
+ color: $page-inverted-text-color;
107
+ background-color: $page-inverted-background-color;
118
108
 
119
- @include phone {
120
- font-size: $page-content-phone-font-size;
109
+ h2 .title {
110
+ color: $page-inverted-title-color;
121
111
  }
122
112
  }
123
113
 
124
- .shadow {
125
- @include shadow($page-shadow-color);
126
- }
127
-
128
- &.invert {
129
- color: $page-inverted-text-color;
130
- background-color: $page-inverted-background-color;
114
+ .content {
115
+ font-size: $page-content-font-size;
131
116
 
132
- .shadow {
133
- @include shadow($page-shadow-inverted-color);
117
+ @include phone {
118
+ font-size: $page-content-phone-font-size;
134
119
  }
135
120
  }
136
121
 
@@ -168,7 +153,7 @@ $page-content-text-line-height: 1.5em !default;
168
153
  font-weight: $page-header-title-font-weight,
169
154
  line-height: $page-header-title-line-height,
170
155
  margin-top: $page-header-title-margin-top,
171
- margin-bottom: $page-header-title-margin-top,
156
+ margin-bottom: $page-header-title-margin-bottom,
172
157
  letter-spacing: 0
173
158
  )
174
159
  );
@@ -215,25 +200,7 @@ $page-content-text-line-height: 1.5em !default;
215
200
  }
216
201
  }
217
202
 
218
- .js .page:first-child {
219
- .scroller > div,
220
- .content_and_background > .page_header {
221
- padding-top: $page-scroller-first-page-padding-top;
222
-
223
- @include mobile {
224
- padding-top: $page-scroller-first-page-mobile-padding-top;
225
- width: 100%;
226
-
227
- @media (orientation: landscape) {
228
- padding-top: $page-scroller-first-page-mobile-landscape-padding-top;
229
- }
230
- }
231
-
232
- @include phone {
233
- padding-top: $page-scroller-first-page-phone-padding-top;
234
- }
235
- }
236
-
203
+ .page:first-child {
237
204
  h2 .title {
238
205
  @include typography(
239
206
  $page-header-first-page-title-typography,