From d3183da0b343006bde17d41e8df61066e8825aca Mon Sep 17 00:00:00 2001
From: Niels Groot Obbink
Date: Tue, 26 Mar 2019 15:34:56 +0100
Subject: [PATCH] Updated demo with new design
---
assets/css/color.css | 69 +++++++++++++++++
assets/css/color.css.map | 1 +
assets/css/color.scss | 47 ++++++++++++
assets/css/jquery.sectionmenu.css | 57 +++++---------
assets/css/jquery.sectionmenu.dark.css | 10 ++-
assets/css/kelson.css | 44 +++++++++++
assets/css/kelson.css.map | 1 +
assets/css/kelson.scss | 23 ++++++
assets/css/style.css | 97 ++++++++++++------------
assets/js/main.js | 14 ++++
assets/webfonts/kelson-bold.eot | Bin 0 -> 26864 bytes
assets/webfonts/kelson-bold.ttf | Bin 0 -> 80340 bytes
assets/webfonts/kelson-bold.woff | Bin 0 -> 36585 bytes
assets/webfonts/kelson-bold.woff2 | Bin 0 -> 26313 bytes
assets/webfonts/kelson-extra-bold.eot | Bin 0 -> 25998 bytes
assets/webfonts/kelson-extra-bold.ttf | Bin 0 -> 78668 bytes
assets/webfonts/kelson-extra-bold.woff | Bin 0 -> 35505 bytes
assets/webfonts/kelson-extra-bold.woff2 | Bin 0 -> 25653 bytes
assets/webfonts/kelson-light.eot | Bin 0 -> 31669 bytes
assets/webfonts/kelson-light.ttf | Bin 0 -> 96264 bytes
assets/webfonts/kelson-light.woff | Bin 0 -> 42437 bytes
assets/webfonts/kelson-light.woff2 | Bin 0 -> 30401 bytes
assets/webfonts/kelson-medium.eot | Bin 0 -> 27983 bytes
assets/webfonts/kelson-medium.ttf | Bin 0 -> 84424 bytes
assets/webfonts/kelson-medium.woff | Bin 0 -> 37822 bytes
assets/webfonts/kelson-medium.woff2 | Bin 0 -> 27331 bytes
assets/webfonts/kelson-thin.eot | Bin 0 -> 31808 bytes
assets/webfonts/kelson-thin.ttf | Bin 0 -> 98144 bytes
assets/webfonts/kelson-thin.woff | Bin 0 -> 42629 bytes
assets/webfonts/kelson-thin.woff2 | Bin 0 -> 30645 bytes
assets/webfonts/kelson.eot | Bin 0 -> 30130 bytes
assets/webfonts/kelson.ttf | Bin 0 -> 91204 bytes
assets/webfonts/kelson.woff | Bin 0 -> 40643 bytes
assets/webfonts/kelson.woff2 | Bin 0 -> 28938 bytes
index.html | 45 +++++------
35 files changed, 297 insertions(+), 111 deletions(-)
create mode 100644 assets/css/color.css
create mode 100644 assets/css/color.css.map
create mode 100644 assets/css/color.scss
create mode 100644 assets/css/kelson.css
create mode 100644 assets/css/kelson.css.map
create mode 100644 assets/css/kelson.scss
create mode 100644 assets/js/main.js
create mode 100644 assets/webfonts/kelson-bold.eot
create mode 100644 assets/webfonts/kelson-bold.ttf
create mode 100644 assets/webfonts/kelson-bold.woff
create mode 100644 assets/webfonts/kelson-bold.woff2
create mode 100644 assets/webfonts/kelson-extra-bold.eot
create mode 100644 assets/webfonts/kelson-extra-bold.ttf
create mode 100644 assets/webfonts/kelson-extra-bold.woff
create mode 100644 assets/webfonts/kelson-extra-bold.woff2
create mode 100644 assets/webfonts/kelson-light.eot
create mode 100644 assets/webfonts/kelson-light.ttf
create mode 100644 assets/webfonts/kelson-light.woff
create mode 100644 assets/webfonts/kelson-light.woff2
create mode 100644 assets/webfonts/kelson-medium.eot
create mode 100644 assets/webfonts/kelson-medium.ttf
create mode 100644 assets/webfonts/kelson-medium.woff
create mode 100644 assets/webfonts/kelson-medium.woff2
create mode 100644 assets/webfonts/kelson-thin.eot
create mode 100644 assets/webfonts/kelson-thin.ttf
create mode 100644 assets/webfonts/kelson-thin.woff
create mode 100644 assets/webfonts/kelson-thin.woff2
create mode 100644 assets/webfonts/kelson.eot
create mode 100644 assets/webfonts/kelson.ttf
create mode 100644 assets/webfonts/kelson.woff
create mode 100644 assets/webfonts/kelson.woff2
diff --git a/assets/css/color.css b/assets/css/color.css
new file mode 100644
index 0000000..454dfb3
--- /dev/null
+++ b/assets/css/color.css
@@ -0,0 +1,69 @@
+@keyframes color-background {
+ 0% {
+ background-color: #d65d5b;
+ }
+ 33.3333333333% {
+ background-color: #ed8745;
+ }
+ 66.6666666667% {
+ background-color: #7a576d;
+ }
+ 100% {
+ background-color: #d65d5b;
+ }
+}
+.color-background {
+ animation: color-background 15s linear infinite;
+}
+
+@keyframes color-border {
+ 0% {
+ border-color: #d65d5b;
+ }
+ 33.3333333333% {
+ border-color: #ed8745;
+ }
+ 66.6666666667% {
+ border-color: #7a576d;
+ }
+ 100% {
+ border-color: #d65d5b;
+ }
+}
+.color-border {
+ animation: color-border 15s linear infinite;
+}
+
+@keyframes color-text {
+ 0% {
+ color: #d65d5b;
+ }
+ 33.3333333333% {
+ color: #ed8745;
+ }
+ 66.6666666667% {
+ color: #7a576d;
+ }
+ 100% {
+ color: #d65d5b;
+ }
+}
+.color-text {
+ animation: color-text 15s linear infinite;
+}
+
+.color-overlay {
+ position: relative;
+}
+.color-overlay::before {
+ content: "";
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ opacity: 0.85;
+ animation: color-background 15s linear infinite;
+}
+
+/*# sourceMappingURL=color.css.map */
diff --git a/assets/css/color.css.map b/assets/css/color.css.map
new file mode 100644
index 0000000..daff02a
--- /dev/null
+++ b/assets/css/color.css.map
@@ -0,0 +1 @@
+{"version":3,"sourceRoot":"","sources":["color.scss"],"names":[],"mappings":"AAYC;EAIE;IACC,kBARK;;EAON;IACC,kBARK;;EAON;IACC,kBARK;;EAYP;IACC;;;AAIF;EACC;;;AAfD;EAIE;IACC,cARK;;EAON;IACC,cARK;;EAON;IACC,cARK;;EAYP;IACC;;;AAIF;EACC;;;AAfD;EAIE;IACC,OARK;;EAON;IACC,OARK;;EAON;IACC,OARK;;EAYP;IACC;;;AAIF;EACC;;;AAIF;EAEC;;AAEA;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA","file":"color.css"}
\ No newline at end of file
diff --git a/assets/css/color.scss b/assets/css/color.scss
new file mode 100644
index 0000000..7938971
--- /dev/null
+++ b/assets/css/color.scss
@@ -0,0 +1,47 @@
+// _color.scss
+
+$color-attributes: (
+ ('background', 'background-color'),
+ ('border', 'border-color'),
+ ('text', 'color'),
+);
+
+$color-animation: 15s linear infinite !default;
+$colors: #d65d5b, #ed8745, #7a576d !default;
+
+@each $color-attribute-name, $color-attribute in $color-attributes {
+ @keyframes color-#{$color-attribute-name} {
+ @each $color in $colors {
+ $i: index($colors, $color) - 1;
+
+ #{$i / length($colors) * 100%} {
+ #{$color-attribute}: $color;
+ }
+ }
+
+ 100% {
+ #{$color-attribute}: nth($colors, 1);
+ }
+ }
+
+ .color-#{$color-attribute-name} {
+ animation: color-#{$color-attribute-name} $color-animation;
+ }
+}
+
+.color-overlay
+{
+ position: relative;
+
+ &::before
+ {
+ content: "";
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ opacity: 0.85;
+ animation: color-background $color-animation;
+ }
+}
diff --git a/assets/css/jquery.sectionmenu.css b/assets/css/jquery.sectionmenu.css
index 418e64f..3ada740 100644
--- a/assets/css/jquery.sectionmenu.css
+++ b/assets/css/jquery.sectionmenu.css
@@ -1,71 +1,54 @@
.section-menu
{
- display: table;
position: fixed;
top: 0;
- right: 10px;
+ right: 0;
height: 100%;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
}
.section-menu ul
{
- display: table-cell;
- margin: 0;
- padding: 0;
+ padding-right: 25px;
list-style: none;
- vertical-align: middle;
-}
-
-.section-menu li
-{
- display: block;
}
.section-menu a
{
display: block;
position: relative;
- padding: 5px;
- height: 10px;
- width: 10px;
+ height: 25px;
color: white;
- line-height: 20px;
- text-align: right;
+ font-size: 12px;
white-space: nowrap;
- transition: all 0.5s ease;
+ transition: all 0.5s
}
-.section-menu a:before
+.section-menu a::after
{
content: "";
- display: block;
- position: relative;
- border-radius: 10px;
- width: 100%;
- height: 100%;
- background: rgba(255, 255, 255, 0.5);
- -webkit-transform: scale(0.4);
- -moz-transform: scale(0.4);
- -ms-transform: scale(0.4);
- transform: scale(0.4);
+ display: inline-block;
+ border-radius: 50%;
+ width: 8px;
+ height: 8px;
+ background-color: white;
+ box-shadow: 0 0 0 4px transparent;
transition: all 0.3s ease;
}
-.section-menu a:hover:before
+.section-menu a:hover::after
{
- background: white;
- -webkit-transform: scale(1);
- -moz-transform: scale(1);
- -ms-transform: scale(1);
- transform: scale(1);
+ background-color: transparent;
+ box-shadow: 0 0 0 4px white;
}
.section-menu a span
{
position: absolute;
- top: 0;
- right: 0;
- padding-right: 25px;
+ right: 25px;
+ text-align: right;
opacity: 0;
transition: all 0.3s ease;
}
diff --git a/assets/css/jquery.sectionmenu.dark.css b/assets/css/jquery.sectionmenu.dark.css
index 6c2fa47..8df5831 100644
--- a/assets/css/jquery.sectionmenu.dark.css
+++ b/assets/css/jquery.sectionmenu.dark.css
@@ -3,12 +3,14 @@
color: black;
}
-.section-menu a:before
+.section-menu a::after
{
- background: rgba(0, 0, 0, 0.5);
+ background-color: black;
+ box-shadow: 0 0 0 4px transparent;
}
-.section-menu a:hover:before
+.section-menu a:hover::after
{
- background: black;
+ background-color: transparent;
+ box-shadow: 0 0 0 4px black;
}
diff --git a/assets/css/kelson.css b/assets/css/kelson.css
new file mode 100644
index 0000000..994c5f4
--- /dev/null
+++ b/assets/css/kelson.css
@@ -0,0 +1,44 @@
+@font-face {
+ font-family: "Kelson";
+ font-style: normal;
+ font-weight: 100;
+ src: url("../webfonts/kelson-thin.eot");
+ src: url("../webfonts/kelson-thin.eot?iefix") format("eot"), url("../webfonts/kelson-thin.ttf") format("truetype"), url("../webfonts/kelson-thin.woff") format("woff"), url("../webfonts/kelson-thin.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Kelson";
+ font-style: normal;
+ font-weight: 300;
+ src: url("../webfonts/kelson-light.eot");
+ src: url("../webfonts/kelson-light.eot?iefix") format("eot"), url("../webfonts/kelson-light.ttf") format("truetype"), url("../webfonts/kelson-light.woff") format("woff"), url("../webfonts/kelson-light.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Kelson";
+ font-style: normal;
+ font-weight: 400;
+ src: url("../webfonts/kelson.eot");
+ src: url("../webfonts/kelson.eot?iefix") format("eot"), url("../webfonts/kelson.ttf") format("truetype"), url("../webfonts/kelson.woff") format("woff"), url("../webfonts/kelson.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Kelson";
+ font-style: normal;
+ font-weight: 500;
+ src: url("../webfonts/kelson-medium.eot");
+ src: url("../webfonts/kelson-medium.eot?iefix") format("eot"), url("../webfonts/kelson-medium.ttf") format("truetype"), url("../webfonts/kelson-medium.woff") format("woff"), url("../webfonts/kelson-medium.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Kelson";
+ font-style: normal;
+ font-weight: 700;
+ src: url("../webfonts/kelson-bold.eot");
+ src: url("../webfonts/kelson-bold.eot?iefix") format("eot"), url("../webfonts/kelson-bold.ttf") format("truetype"), url("../webfonts/kelson-bold.woff") format("woff"), url("../webfonts/kelson-bold.woff2") format("woff2");
+}
+@font-face {
+ font-family: "Kelson";
+ font-style: normal;
+ font-weight: 800;
+ src: url("../webfonts/kelson-extra-bold.eot");
+ src: url("../webfonts/kelson-extra-bold.eot?iefix") format("eot"), url("../webfonts/kelson-extra-bold.ttf") format("truetype"), url("../webfonts/kelson-extra-bold.woff") format("woff"), url("../webfonts/kelson-extra-bold.woff2") format("woff2");
+}
+
+/*# sourceMappingURL=kelson.css.map */
diff --git a/assets/css/kelson.css.map b/assets/css/kelson.css.map
new file mode 100644
index 0000000..7af0753
--- /dev/null
+++ b/assets/css/kelson.css.map
@@ -0,0 +1 @@
+{"version":3,"sourceRoot":"","sources":["kelson.scss"],"names":[],"mappings":"AAYC;EACA;EACA;EACA,aAbgB;EAchB;EACA;;AALA;EACA;EACA;EACA,aAbgB;EAchB;EACA;;AALA;EACA;EACA;EACA,aAbgB;EAchB;EACA;;AALA;EACA;EACA;EACA,aAbgB;EAchB;EACA;;AALA;EACA;EACA;EACA,aAbgB;EAchB;EACA;;AALA;EACA;EACA;EACA,aAbgB;EAchB;EACA","file":"kelson.css"}
\ No newline at end of file
diff --git a/assets/css/kelson.scss b/assets/css/kelson.scss
new file mode 100644
index 0000000..58468d2
--- /dev/null
+++ b/assets/css/kelson.scss
@@ -0,0 +1,23 @@
+// kelson.scss
+
+$kelson-weights: (
+ ('kelson-thin', 100),
+ ('kelson-light', 300),
+ ('kelson', 400),
+ ('kelson-medium', 500),
+ ('kelson-bold', 700),
+ ('kelson-extra-bold', 800)
+);
+
+@each $kelson-weight-key, $kelson-weight-value in $kelson-weights {
+ @font-face {
+ font-family: 'Kelson';
+ font-style: normal;
+ font-weight: $kelson-weight-value;
+ src: url('../webfonts/#{$kelson-weight-key}.eot');
+ src: url('../webfonts/#{$kelson-weight-key}.eot?iefix') format('eot'),
+ url('../webfonts/#{$kelson-weight-key}.ttf') format('truetype'),
+ url('../webfonts/#{$kelson-weight-key}.woff') format('woff'),
+ url('../webfonts/#{$kelson-weight-key}.woff2') format('woff2');
+ }
+}
\ No newline at end of file
diff --git a/assets/css/style.css b/assets/css/style.css
index b6d454b..aa2e6ec 100644
--- a/assets/css/style.css
+++ b/assets/css/style.css
@@ -1,3 +1,8 @@
+*, *::before, *::after
+{
+ box-sizing: border-box;
+}
+
html, body
{
margin: 0;
@@ -7,56 +12,43 @@ html, body
body
{
- background: rgb(22, 189, 222) url('../images/background.jpg') no-repeat fixed center center;
- background-size: cover;
- color: rgb(200,200,200);
- font-family: 'Raleway', sans-serif;
- font-size: 12px;
+ color: #dfdfdf;
+ font-family: 'Kelson', sans-serif;
+ font-size: 20px;
}
h1
{
+ font-size: 40px;
+ font-weight: 400;
color: white;
- font-weight: 300;
}
-h1 span
+p
{
- color: rgb(22, 189, 222);
+ line-height: 30px;
}
a
{
- transition: all 0.3s ease;
- color: rgb(22, 189, 222);
+ color: white;
text-decoration: none;
-}
-
-a:hover
-{
- color: rgb(59, 77, 86);
-}
-
-ul
-{
- list-style-type: square;
+ transition: all 0.3s ease;
}
.container
{
margin: 0 auto;
- padding: 10px 30px;
- min-width: 768px;
- max-width: 1024px;
+ padding: 15px;
}
-.container:before, .container:after
+.container::before, .container::after
{
content: " ";
display: table;
}
-.container:after
+.container::after
{
clear: both;
}
@@ -67,53 +59,62 @@ ul
top: 0;
width: 100%;
height: 60px;
- background: white;
- background: rgba(255, 255, 255, 0.8);
- color: rgb(59, 77, 86);
- line-height: 40px;
}
-#nav h1
+#nav .logo
{
- float: left;
- margin: 0;
- color: rgb(59, 77, 86);
+ display: inline-block;
+ width: 80px;
+}
+
+#nav .logo svg
+{
+ fill: white;
}
#nav ul
{
float: right;
margin: 0;
- padding: 0;
+ font-size: 14px;
+ font-weight: 500;
+ padding-top: 15px;
+ padding-right: 30px;
list-style: none;
}
#nav li
{
- float: left;
- margin-left: 30px;
- line-height: 50px;
+ margin-left: 25px;
}
-#nav a
+@media (min-width: 480px)
{
- color: #3b4d56;
+ #nav li
+ {
+ float: left;
+ line-height: 50px;
+ }
}
-#nav a:hover
+#nav a
{
- color: #16bdde;
+ color: #dfdfdf;
+ transition: color 0.3s ease;
}
-#page section
+#nav a:hover
{
- padding-top: 100px;
- padding-bottom: 400px;
- font-size: 20px;
- text-align: center;
+ color: white;
}
-#page p
+#page .container
{
- line-height: 30px;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ padding: 100px 15px;
+ width: 100%;
+ min-height: 100vh;
+ text-align: center;
}
diff --git a/assets/js/main.js b/assets/js/main.js
new file mode 100644
index 0000000..e586627
--- /dev/null
+++ b/assets/js/main.js
@@ -0,0 +1,14 @@
+(function ($) {
+ $(window).on('load', function() {
+ $('body').sectionMenu().fragmentScroll();
+ });
+
+ $(window).scroll(function () {
+ var rotateAmount = (($(window).scrollTop())/5) % 360;
+
+ $('.logo path:first-child').css("transform", "rotate("+rotateAmount+"deg)");
+ $('.logo path:first-child').css("transform-origin", "63% 59% 0px");
+ $('.logo path:nth-child(2)').css("transform", "rotate(-"+rotateAmount+"deg)");
+ $('.logo path:nth-child(2)').css("transform-origin", "20% 21% 0px");
+ });
+})(jQuery);
diff --git a/assets/webfonts/kelson-bold.eot b/assets/webfonts/kelson-bold.eot
new file mode 100644
index 0000000000000000000000000000000000000000..30f6dc1da71747ac769c6781014f0fc2e36a36fe
GIT binary patch
literal 26864
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