initial
This commit is contained in:
commit
332776921f
85 changed files with 19231 additions and 0 deletions
176
assets/sass/layout/_banner.scss
Normal file
176
assets/sass/layout/_banner.scss
Normal file
|
@ -0,0 +1,176 @@
|
|||
///
|
||||
/// Prototype by Pixelarity
|
||||
/// pixelarity.com | hello@pixelarity.com
|
||||
/// License: pixelarity.com/license
|
||||
///
|
||||
|
||||
/* Banner */
|
||||
|
||||
#banner {
|
||||
$overlay: transparentize(_palette(accent2, bg), 0.8);
|
||||
|
||||
@include color-typography(accent2);
|
||||
@include color-button(accent2);
|
||||
@include padding(6em, 0, (4.5em, 0, 0, 0));
|
||||
@include vendor('display', 'flex');
|
||||
@include vendor('align-items', 'center');
|
||||
@include vendor('justify-content', 'center');
|
||||
@include vendor('background-image', (
|
||||
'linear-gradient(to top, #{$overlay}, #{$overlay})',
|
||||
'url("../../images/banner.jpg")',
|
||||
));
|
||||
background-attachment: fixed;
|
||||
background-position: center;
|
||||
background-size: cover;
|
||||
height: 75vh;
|
||||
min-height: 30em;
|
||||
position: relative;
|
||||
|
||||
&:after {
|
||||
@include vendor('pointer-events', 'none');
|
||||
@include vendor('transition', (
|
||||
'opacity 2s ease',
|
||||
'visibility 2s'
|
||||
));
|
||||
background-color: _palette(accent2, bg);
|
||||
content: '';
|
||||
height: 100%;
|
||||
left: 0;
|
||||
opacity: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
visibility: hidden;
|
||||
width: 100%;
|
||||
z-index: _misc(z-index-base) + 1;
|
||||
}
|
||||
|
||||
.inner {
|
||||
@include vendor('display', 'flex');
|
||||
@include vendor('align-items', 'center');
|
||||
max-width: _size(inner);
|
||||
|
||||
h2 {
|
||||
font-size: 2.75em;
|
||||
margin-bottom: 0;
|
||||
margin-top: -0.25em;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1.2em;
|
||||
margin: (_size(element-margin) * 0.35) 0 0 0;
|
||||
}
|
||||
|
||||
.content {
|
||||
@include vendor('transition', (
|
||||
'transform 1s ease-out',
|
||||
'opacity 1s ease-out'
|
||||
));
|
||||
@include vendor('transform', 'translateY(0)');
|
||||
opacity: 1;
|
||||
|
||||
> :last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.actions {
|
||||
@include vendor('transition', (
|
||||
'transform 1s ease-out',
|
||||
'opacity 1s ease-out'
|
||||
));
|
||||
@include vendor('transform', 'translateY(0)');
|
||||
opacity: 1;
|
||||
|
||||
border-left: solid 1px _palette(accent2, border);
|
||||
margin: 0 0 0 _size(section-spacing);
|
||||
min-width: 20em;
|
||||
padding: 1em 0 1em (_size(section-spacing) * 0.75);
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=large') {
|
||||
background-attachment: scroll;
|
||||
|
||||
.inner {
|
||||
max-width: 100%;
|
||||
padding: 0 (_size(section-spacing) * 0.75);
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=medium') {
|
||||
.inner {
|
||||
@include vendor('flex-direction', 'column');
|
||||
@include vendor('align-items', 'stretch');
|
||||
text-align: center;
|
||||
|
||||
.actions {
|
||||
border-left: 0;
|
||||
margin: (_size(section-spacing) * 0.75) 0 0 0;
|
||||
min-width: 0;
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
@include padding(5.5em, 0, (2em, 0, 0, 0));
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
|
||||
.inner {
|
||||
padding: 0 1.5em;
|
||||
|
||||
h2 {
|
||||
font-size: 1.75em;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
.actions {
|
||||
margin: _size(element-margin) 0 0 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=xsmall') {
|
||||
min-height: 75vh;
|
||||
|
||||
.inner {
|
||||
-ms-flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
body.is-preload & {
|
||||
&:after {
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.inner {
|
||||
.content {
|
||||
opacity: 0;
|
||||
@include vendor('transform', 'translateY(-1em)');
|
||||
}
|
||||
|
||||
.actions {
|
||||
opacity: 0;
|
||||
@include vendor('transform', 'translateY(1em)');
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=medium') {
|
||||
.inner {
|
||||
.content {
|
||||
@include vendor('transform', 'translateY(0)');
|
||||
}
|
||||
|
||||
.actions {
|
||||
@include vendor('transform', 'translateY(0)');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
161
assets/sass/layout/_footer.scss
Normal file
161
assets/sass/layout/_footer.scss
Normal file
|
@ -0,0 +1,161 @@
|
|||
///
|
||||
///KABI.tk
|
||||
///
|
||||
|
||||
/* Footer */
|
||||
|
||||
#footer {
|
||||
$overlay: transparentize(_palette(accent2, bg), 0.8);
|
||||
|
||||
@include color-typography(accent2);
|
||||
@include color-button(accent2);
|
||||
@include padding(7em, 0);
|
||||
@include vendor('background-image', (
|
||||
'linear-gradient(to top, #{$overlay}, #{$overlay})',
|
||||
'url("../../images/banner.jpg")',
|
||||
));
|
||||
background-attachment: fixed;
|
||||
background-position: center;
|
||||
background-size: cover;
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.contact {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
display: inline-block;
|
||||
padding: 0;
|
||||
|
||||
&:before {
|
||||
content: '\2022';
|
||||
margin: 0 0.75em;
|
||||
}
|
||||
|
||||
&:first-child {
|
||||
&:before {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.links {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
border-left: solid 1px;
|
||||
display: inline-block;
|
||||
line-height: 1;
|
||||
margin: 0 0 0 1.5em;
|
||||
padding: 0 0 0 1.5em;
|
||||
|
||||
&:first-child {
|
||||
border-left: 0;
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
a {
|
||||
font-size: 0.8em;
|
||||
letter-spacing: _font(kerning-alt);
|
||||
text-decoration: none;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> .inner {
|
||||
@include vendor('display', 'flex');
|
||||
@include vendor('flex-wrap', 'wrap');
|
||||
margin: 0 auto;
|
||||
width: _size(inner);
|
||||
|
||||
> * {
|
||||
font-size: 0.8em;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.icons {
|
||||
@include vendor('order', '2');
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.contact {
|
||||
@include vendor('order', '4');
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.links {
|
||||
@include vendor('order', '1');
|
||||
}
|
||||
|
||||
.copyright {
|
||||
@include vendor('order', '3');
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=xlarge') {
|
||||
@include padding(5em, 0);
|
||||
}
|
||||
|
||||
@include breakpoint('<=large') {
|
||||
background: _palette(accent2, bg);
|
||||
|
||||
> .inner {
|
||||
width: 100%;
|
||||
padding: 0 (_size(section-spacing) * 0.75);
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=medium') {
|
||||
> .inner {
|
||||
display: block;
|
||||
|
||||
> * {
|
||||
width: 100%;
|
||||
font-size: 1em;
|
||||
text-align: center !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
@include padding(3em, 0);
|
||||
|
||||
> .inner {
|
||||
width: 100%;
|
||||
padding: 0 1.5em;
|
||||
|
||||
> * {
|
||||
font-size: 0.8em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=xsmall') {
|
||||
.contact {
|
||||
list-style: none;
|
||||
|
||||
li {
|
||||
display: block;
|
||||
padding: 0;
|
||||
|
||||
&:before {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.links {
|
||||
li {
|
||||
margin: 0 0 0 0.75em;
|
||||
padding: 0 0 0 0.75em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
177
assets/sass/layout/_header.scss
Normal file
177
assets/sass/layout/_header.scss
Normal file
|
@ -0,0 +1,177 @@
|
|||
///
|
||||
/// Prototype by Pixelarity
|
||||
/// pixelarity.com | hello@pixelarity.com
|
||||
/// License: pixelarity.com/license
|
||||
///
|
||||
|
||||
/* Header */
|
||||
|
||||
body {
|
||||
padding-top: 3.125em;
|
||||
}
|
||||
|
||||
@include keyframes('reveal-header') {
|
||||
0% { top: -4em; opacity: 0; }
|
||||
100% { top: 0; opacity: 1; }
|
||||
}
|
||||
|
||||
#header {
|
||||
background-color: _palette(bg);
|
||||
border-bottom: solid 1px _palette(border);
|
||||
cursor: default;
|
||||
height: 3.25em;
|
||||
left: 0;
|
||||
line-height: 3.25em;
|
||||
position: fixed;
|
||||
text-align: right;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
z-index: _misc(z-index-base) + 1;
|
||||
|
||||
> h1 {
|
||||
color: _palette(fg-bold);
|
||||
display: inline-block;
|
||||
height: inherit;
|
||||
left: 1.25em;
|
||||
line-height: inherit;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
|
||||
a {
|
||||
font-size: 1.25em;
|
||||
}
|
||||
}
|
||||
|
||||
> a {
|
||||
@include vendor('transition', 'color #{_duration(transition)} ease-in-out');
|
||||
color: inherit;
|
||||
display: inline-block;
|
||||
font-size: 0.8em;
|
||||
letter-spacing: _font(kerning-alt);
|
||||
padding: 0 0.75em;
|
||||
text-decoration: none;
|
||||
text-transform: uppercase;
|
||||
|
||||
&[href="#menu"] {
|
||||
@include icon(false, solid);
|
||||
-webkit-tap-highlight-color: rgba(0,0,0,0);
|
||||
|
||||
&:before {
|
||||
content: '\f0c9';
|
||||
float: right;
|
||||
line-height: inherit;
|
||||
margin: 0 0 0 0.75em;
|
||||
}
|
||||
}
|
||||
|
||||
& + a[href="#menu"]:last-child {
|
||||
border-left: solid 1px _palette(border);
|
||||
padding-left: 2em;
|
||||
margin-left: 1em;
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
padding-right: 1.25em;
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
padding: 0 0.5em;
|
||||
|
||||
& + a[href="#menu"]:last-child {
|
||||
margin-left: 0.25em;
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
padding-right: 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
& + #banner {
|
||||
margin-top: -3.125em;
|
||||
}
|
||||
|
||||
&.reveal {
|
||||
@include vendor('animation', 'reveal-header 0.5s ease');
|
||||
}
|
||||
|
||||
&.alt {
|
||||
@include vendor('animation', 'none');
|
||||
background-color: transparent;
|
||||
box-shadow: 0 1px 0 0 _palette(accent2, border);
|
||||
color: _palette(accent2, fg);
|
||||
position: absolute;
|
||||
top: (_size(section-spacing) - 1em);
|
||||
left: _size(section-spacing);
|
||||
width: calc(100% - #{_size(section-spacing) * 2});
|
||||
|
||||
> h1 {
|
||||
color: _palette(accent2, fg-bold);
|
||||
left: 0;
|
||||
}
|
||||
|
||||
> a {
|
||||
& + a[href="#menu"]:last-child {
|
||||
border-left-color: _palette(accent2, border);
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
padding-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=large') {
|
||||
#header {
|
||||
&.alt {
|
||||
$section-spacing: _size(section-spacing) * 0.75;
|
||||
|
||||
top: ($section-spacing - 1em);
|
||||
left: $section-spacing;
|
||||
width: calc(100% - #{$section-spacing * 2});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=medium') {
|
||||
body {
|
||||
padding-top: 44px;
|
||||
}
|
||||
|
||||
#header {
|
||||
height: 44px;
|
||||
line-height: 44px;
|
||||
|
||||
> h1 {
|
||||
left: 1em;
|
||||
|
||||
a {
|
||||
font-size: 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
#header {
|
||||
&.alt {
|
||||
top: 0.25em;
|
||||
left: 1.5em;
|
||||
width: calc(100% - 3em);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=xsmall') {
|
||||
#header {
|
||||
min-width: 320px;
|
||||
|
||||
&.alt {
|
||||
min-width: 0;
|
||||
}
|
||||
}
|
||||
}
|
71
assets/sass/layout/_main.scss
Normal file
71
assets/sass/layout/_main.scss
Normal file
|
@ -0,0 +1,71 @@
|
|||
///
|
||||
/// KABI.tk
|
||||
///
|
||||
|
||||
/* Main */
|
||||
|
||||
#main {
|
||||
background: _palette(bg);
|
||||
border-bottom: solid 1px darken(_palette(bg-alt), 5);
|
||||
|
||||
> header {
|
||||
$overlay: transparentize(_palette(accent2, bg), 0.8);
|
||||
|
||||
@include color-typography(accent2);
|
||||
@include vendor('background-image', (
|
||||
'linear-gradient(to top, #{$overlay}, #{$overlay})',
|
||||
'url("../../images/banner.jpg")',
|
||||
));
|
||||
background-attachment: fixed;
|
||||
background-position: center;
|
||||
background-size: cover;
|
||||
padding: 7em 0;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
top: -7em;
|
||||
|
||||
h2 {
|
||||
font-size: 2.75em;
|
||||
line-height: 1.3;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: (_size(element-margin) * 0.5) 0 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=xlarge') {
|
||||
> header {
|
||||
top: -5em;
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=large') {
|
||||
> header {
|
||||
background-attachment: scroll;
|
||||
padding: 6em (_size(section-spacing) * 0.75);
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=medium') {
|
||||
> header {
|
||||
padding: 8em (_size(section-spacing) * 0.75);
|
||||
}
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
> header {
|
||||
padding: 5em 1.5em;
|
||||
top: -3em;
|
||||
|
||||
h2 {
|
||||
font-size: 1.75em;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
104
assets/sass/layout/_menu.scss
Normal file
104
assets/sass/layout/_menu.scss
Normal file
|
@ -0,0 +1,104 @@
|
|||
///
|
||||
/// KABI.tk
|
||||
///
|
||||
|
||||
/* Menu */
|
||||
|
||||
#menu {
|
||||
@include vendor('transform', 'translateX(20em)');
|
||||
@include vendor('transition', ('transform #{_duration(nav)} ease', 'box-shadow #{_duration(nav)} ease', 'visibility #{_duration(nav)}'));
|
||||
-webkit-overflow-scrolling: touch;
|
||||
background: _palette(bg);
|
||||
border-left: solid 1px _palette(border);
|
||||
box-shadow: none;
|
||||
height: 100%;
|
||||
max-width: 80%;
|
||||
overflow-y: auto;
|
||||
padding: 3em 2em;
|
||||
position: fixed;
|
||||
right: 0;
|
||||
top: 0;
|
||||
visibility: hidden;
|
||||
width: 20em;
|
||||
z-index: _misc(z-index-base) + 2;
|
||||
|
||||
> ul {
|
||||
margin: 0 0 (_size(element-margin) * 0.5) 0;
|
||||
|
||||
&.links {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
|
||||
> li {
|
||||
padding: 0;
|
||||
|
||||
> a:not(.button) {
|
||||
border: 0;
|
||||
border-top: solid 1px _palette(border);
|
||||
color: inherit;
|
||||
display: block;
|
||||
letter-spacing: _size(letter-spacing-alt);
|
||||
line-height: 3.5em;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
> .button {
|
||||
display: block;
|
||||
margin: 0.5em 0 0 0;
|
||||
}
|
||||
|
||||
&:first-child {
|
||||
> a:not(.button) {
|
||||
border-top: 0 !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.close {
|
||||
background-image: url('images/close.svg');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
background-position: top right;
|
||||
-webkit-tap-highlight-color: rgba(0,0,0,0);
|
||||
border: 0;
|
||||
color: _palette(fg-light);
|
||||
cursor: pointer;
|
||||
display: block;
|
||||
height: 3.5em;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
text-align: right;
|
||||
top: 0;
|
||||
vertical-align: middle;
|
||||
width: 6em;
|
||||
|
||||
&:before {
|
||||
font-size: 1.25em;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: _palette(fg-bold);
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
height: 4em;
|
||||
line-height: 4em;
|
||||
}
|
||||
}
|
||||
|
||||
&.visible {
|
||||
@include vendor('transform', 'translateX(0)');
|
||||
box-shadow: 0 0 2em 0 rgba(0,0,0,0.05);
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
@include breakpoint('<=small') {
|
||||
padding: 2.5em 1.75em;
|
||||
|
||||
.close {
|
||||
background-size: 50%;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue