forked from Git/hugo-story
		
	First Commit - Hugo Story
This commit is contained in:
		
							
								
								
									
										102
									
								
								assets/sass/components/_actions.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								assets/sass/components/_actions.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,102 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Actions */
 | 
			
		||||
 | 
			
		||||
	ul.actions {
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		cursor: default;
 | 
			
		||||
		list-style: none;
 | 
			
		||||
		margin-left: (_size(element-margin) * -0.5);
 | 
			
		||||
		padding-left: 0;
 | 
			
		||||
 | 
			
		||||
		li {
 | 
			
		||||
			padding: 0 0 0 (_size(element-margin) * 0.5);
 | 
			
		||||
			vertical-align: middle;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.special {
 | 
			
		||||
			@include vendor('justify-content', 'center');
 | 
			
		||||
			width: 100%;
 | 
			
		||||
			margin-left: 0;
 | 
			
		||||
 | 
			
		||||
			li {
 | 
			
		||||
				&:first-child {
 | 
			
		||||
					padding-left: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.stacked {
 | 
			
		||||
			@include vendor('flex-direction', 'column');
 | 
			
		||||
			margin-left: 0;
 | 
			
		||||
 | 
			
		||||
			li {
 | 
			
		||||
				padding: (_size(element-margin) * 0.65) 0 0 0;
 | 
			
		||||
 | 
			
		||||
				&:first-child {
 | 
			
		||||
					padding-top: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.fit {
 | 
			
		||||
			width: calc(100% + #{_size(element-margin) * 0.5});
 | 
			
		||||
 | 
			
		||||
			li {
 | 
			
		||||
				@include vendor('flex-grow', '1');
 | 
			
		||||
				@include vendor('flex-shrink', '1');
 | 
			
		||||
				width: 100%;
 | 
			
		||||
 | 
			
		||||
				> * {
 | 
			
		||||
					width: 100%;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.stacked {
 | 
			
		||||
				width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xsmall') {
 | 
			
		||||
			&:not(.fixed) {
 | 
			
		||||
				@include vendor('flex-direction', 'column');
 | 
			
		||||
				margin-left: 0;
 | 
			
		||||
				width: 100% !important;
 | 
			
		||||
 | 
			
		||||
				li {
 | 
			
		||||
					@include vendor('flex-grow', '1');
 | 
			
		||||
					@include vendor('flex-shrink', '1');
 | 
			
		||||
					padding: (_size(element-margin) * 0.5) 0 0 0;
 | 
			
		||||
					text-align: center;
 | 
			
		||||
					width: 100%;
 | 
			
		||||
 | 
			
		||||
					> * {
 | 
			
		||||
						width: 100%;
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&:first-child {
 | 
			
		||||
						padding-top: 0;
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					input[type="submit"],
 | 
			
		||||
					input[type="reset"],
 | 
			
		||||
					input[type="button"],
 | 
			
		||||
					button,
 | 
			
		||||
					.button {
 | 
			
		||||
						width: 100%;
 | 
			
		||||
 | 
			
		||||
						&.icon {
 | 
			
		||||
							&:before {
 | 
			
		||||
								margin-left: -0.5rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
							
								
								
									
										991
									
								
								assets/sass/components/_banner.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										991
									
								
								assets/sass/components/_banner.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,991 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Banner (transitions) */
 | 
			
		||||
 | 
			
		||||
	.banner {
 | 
			
		||||
 | 
			
		||||
		// Mixin.
 | 
			
		||||
			@mixin transition-banner($event) {
 | 
			
		||||
				$x: null;
 | 
			
		||||
				$y: null;
 | 
			
		||||
 | 
			
		||||
				@if ($event == 'load') {
 | 
			
		||||
					$x: 'body.is-preload &';
 | 
			
		||||
					$y: _duration(on-load);
 | 
			
		||||
				}
 | 
			
		||||
				@else if ($event == 'scroll') {
 | 
			
		||||
					$x: '&.is-inactive';
 | 
			
		||||
					$y: _duration(on-scroll);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				// Content.
 | 
			
		||||
					&.on#{$event}-content-fade-up {
 | 
			
		||||
						.content {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.content {
 | 
			
		||||
								@include vendor('transform', 'translateY(1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-content-fade-down {
 | 
			
		||||
						.content {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.content {
 | 
			
		||||
								@include vendor('transform', 'translateY(-1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-content-fade-left {
 | 
			
		||||
						.content {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.content {
 | 
			
		||||
								@include vendor('transform', 'translateX(1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-content-fade-right {
 | 
			
		||||
						.content {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.content {
 | 
			
		||||
								@include vendor('transform', 'translateX(-1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-content-fade-in {
 | 
			
		||||
						.content {
 | 
			
		||||
							@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.content {
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
				// Image.
 | 
			
		||||
					&.on#{$event}-image-fade-up {
 | 
			
		||||
						.image {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
 | 
			
		||||
							img {
 | 
			
		||||
								@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
								@include vendor('transition-delay', '#{$y * 0.75}');
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.image {
 | 
			
		||||
								@include vendor('transform', 'translateY(1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
 | 
			
		||||
								img {
 | 
			
		||||
									opacity: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-image-fade-down {
 | 
			
		||||
						.image {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
 | 
			
		||||
							img {
 | 
			
		||||
								@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
								@include vendor('transition-delay', '#{$y * 0.75}');
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.image {
 | 
			
		||||
								@include vendor('transform', 'translateY(-1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
 | 
			
		||||
								img {
 | 
			
		||||
									opacity: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-image-fade-left {
 | 
			
		||||
						.image {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
 | 
			
		||||
							img {
 | 
			
		||||
								@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
								@include vendor('transition-delay', '#{$y * 0.75}');
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.image {
 | 
			
		||||
								@include vendor('transform', 'translateX(1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
 | 
			
		||||
								img {
 | 
			
		||||
									opacity: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-image-fade-right {
 | 
			
		||||
						.image {
 | 
			
		||||
							@include vendor('transition', (
 | 
			
		||||
								'opacity #{$y} ease-in-out',
 | 
			
		||||
								'transform #{$y} ease-in-out'
 | 
			
		||||
							));
 | 
			
		||||
 | 
			
		||||
							img {
 | 
			
		||||
								@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
								@include vendor('transition-delay', '#{$y * 0.75}');
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.image {
 | 
			
		||||
								@include vendor('transform', 'translateX(-1rem)');
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
 | 
			
		||||
								img {
 | 
			
		||||
									opacity: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.on#{$event}-image-fade-in {
 | 
			
		||||
						.image {
 | 
			
		||||
							img {
 | 
			
		||||
								@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						#{$x} {
 | 
			
		||||
							.image {
 | 
			
		||||
								img {
 | 
			
		||||
									opacity: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		// On Load.
 | 
			
		||||
			@include transition-banner('load');
 | 
			
		||||
 | 
			
		||||
		// On Scroll.
 | 
			
		||||
			@include transition-banner('scroll');
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Banner (style1) */
 | 
			
		||||
 | 
			
		||||
	.banner.style1 {
 | 
			
		||||
		@include vendor('align-items', 'stretch');
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-direction', 'row');
 | 
			
		||||
		@include vendor('justify-content', 'flex-end');
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: left;
 | 
			
		||||
		overflow-x: hidden;
 | 
			
		||||
 | 
			
		||||
		.content {
 | 
			
		||||
			@include padding(_size(padding, default), _size(padding, default));
 | 
			
		||||
			@include vendor('align-self', 'center');
 | 
			
		||||
			@include vendor('flex-grow', '1');
 | 
			
		||||
			@include vendor('flex-shrink', '1');
 | 
			
		||||
			width: 50%;
 | 
			
		||||
			max-width: (_size(inner) * 0.75);
 | 
			
		||||
			margin: 0 auto;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.image {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			border-radius: 0;
 | 
			
		||||
			width: 50%;
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				@include vendor('object-fit', 'cover');
 | 
			
		||||
				@include vendor('object-position', 'center');
 | 
			
		||||
				display: block;
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 0;
 | 
			
		||||
				left: 0;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				height: 100%;
 | 
			
		||||
				border-radius: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, xlarge), _size(padding, xlarge));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, large), _size(padding, large));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, medium) * 1.25, _size(padding, medium));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, small) * 1.25, _size(padding, small));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include orientation(portrait) {
 | 
			
		||||
			@include vendor('flex-direction', 'column-reverse');
 | 
			
		||||
			text-align: center;
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				@include vendor('display', 'flex');
 | 
			
		||||
				@include vendor('flex-direction', 'column');
 | 
			
		||||
				@include vendor('justify-content', 'center');
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				max-width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				max-width: 100%;
 | 
			
		||||
				height: 45vh;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				&.fullscreen {
 | 
			
		||||
					min-height: 100vh;
 | 
			
		||||
 | 
			
		||||
					@include orientation(portrait) {
 | 
			
		||||
						.content {
 | 
			
		||||
							min-height: 50vh;
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						.image {
 | 
			
		||||
							height: 50vh;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Orientation.
 | 
			
		||||
				&.orient-left {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.orient-right {
 | 
			
		||||
					@include vendor('flex-direction', 'row-reverse');
 | 
			
		||||
 | 
			
		||||
					@include orientation(portrait) {
 | 
			
		||||
						@include vendor('flex-direction', 'column-reverse');
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Content Alignment.
 | 
			
		||||
				&.content-align-left {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-center {
 | 
			
		||||
					text-align: center;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-right {
 | 
			
		||||
					text-align: right;
 | 
			
		||||
 | 
			
		||||
					@include orientation(portrait) {
 | 
			
		||||
						text-align: center;
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Image Position.
 | 
			
		||||
				&.image-position-left {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'left');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-center {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							// ...
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-right {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'right');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Banner (style2) */
 | 
			
		||||
 | 
			
		||||
	.banner.style2 {
 | 
			
		||||
		@include padding(_size(padding, default) * 0.75, _size(padding, default) * 0.75);
 | 
			
		||||
		@include vendor('align-items', 'center');
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		background-color: inherit;
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: center;
 | 
			
		||||
		overflow-x: hidden;
 | 
			
		||||
 | 
			
		||||
		.content {
 | 
			
		||||
			@include padding(_size(padding, default) * 0.75, _size(padding, default) * 0.75);
 | 
			
		||||
			position: relative;
 | 
			
		||||
			width: (_size(inner) * 0.625);
 | 
			
		||||
			max-width: 100%;
 | 
			
		||||
			background-color: inherit;
 | 
			
		||||
			border-radius: _size(border-radius-alt);
 | 
			
		||||
			margin-bottom: _size(element-margin);
 | 
			
		||||
			z-index: 1;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.image {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			position: absolute;
 | 
			
		||||
			width: 100%;
 | 
			
		||||
			height: 100%;
 | 
			
		||||
			top: 0;
 | 
			
		||||
			left: 0;
 | 
			
		||||
			border-radius: 0;
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				@include vendor('object-fit', 'cover');
 | 
			
		||||
				@include vendor('object-position', 'center');
 | 
			
		||||
				display: block;
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 0;
 | 
			
		||||
				left: 0;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				height: 100%;
 | 
			
		||||
				border-radius: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			@include padding(_size(padding, xlarge) * 0.75, _size(padding, xlarge) * 0.75);
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, xlarge) * 0.75, _size(padding, xlarge) * 0.75);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			@include padding(_size(padding, large), _size(padding, large) * 0.75);
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, large), _size(padding, large) * 0.75);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			@include padding(_size(padding, medium), _size(padding, medium));
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, medium) * 1.25, _size(padding, medium) * 0.75);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			@include padding(_size(padding, small), _size(padding, small));
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				@include padding(_size(padding, small) * 1.25, _size(padding, small) * 0.75);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				&.fullscreen {
 | 
			
		||||
					min-height: 100vh;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Orientation.
 | 
			
		||||
				&.orient-left {
 | 
			
		||||
					@include vendor('justify-content', 'flex-start');
 | 
			
		||||
					padding-left: 0;
 | 
			
		||||
 | 
			
		||||
					.content {
 | 
			
		||||
						border-top-left-radius: 0;
 | 
			
		||||
						border-bottom-left-radius: 0;
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.orient-center {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.orient-right {
 | 
			
		||||
					@include vendor('justify-content', 'flex-end');
 | 
			
		||||
					padding-right: 0;
 | 
			
		||||
 | 
			
		||||
					.content {
 | 
			
		||||
						border-top-right-radius: 0;
 | 
			
		||||
						border-bottom-right-radius: 0;
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Content Alignment.
 | 
			
		||||
				&.content-align-left {
 | 
			
		||||
					text-align: left;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-center {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-right {
 | 
			
		||||
					text-align: right;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Image Position.
 | 
			
		||||
				&.image-position-left {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'left');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-center {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							// ...
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-right {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'right');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Banner (style3) */
 | 
			
		||||
 | 
			
		||||
	.banner.style3 {
 | 
			
		||||
		$image-size: 21rem;
 | 
			
		||||
		$content-size: (_size(inner) * 0.875) - $image-size - (_size(element-margin) * 1.75);
 | 
			
		||||
 | 
			
		||||
		@include padding(_size(padding, default), _size(padding, default));
 | 
			
		||||
		@include vendor('align-items', 'center');
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-direction', 'row-reverse');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: left;
 | 
			
		||||
		overflow-x: hidden;
 | 
			
		||||
 | 
			
		||||
		.content {
 | 
			
		||||
			width: $content-size;
 | 
			
		||||
			max-width: 100%;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.image {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			width: $image-size;
 | 
			
		||||
			height: $image-size;
 | 
			
		||||
			border-radius: 100%;
 | 
			
		||||
			margin: 0 (_size(element-margin) * 1.75) _size(element-margin) 0;
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				@include vendor('object-fit', 'cover');
 | 
			
		||||
				@include vendor('object-position', 'center');
 | 
			
		||||
				display: block;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				height: 100%;
 | 
			
		||||
				border-radius: 100%;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			@include padding(_size(padding, xlarge), _size(padding, xlarge));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			@include padding(_size(padding, large), _size(padding, large));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			@include padding(_size(padding, medium) * 1.25, _size(padding, medium));
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				width: ($image-size * 0.875);
 | 
			
		||||
				height: ($image-size * 0.875);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			@include padding(_size(padding, small) * 1.25, _size(padding, small));
 | 
			
		||||
			@include vendor('align-items', 'flex-start');
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				width: ($image-size * 0.75);
 | 
			
		||||
				height: ($image-size * 0.75);
 | 
			
		||||
				margin: 0 (_size(element-margin) * 1) _size(element-margin) 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include orientation(portrait) {
 | 
			
		||||
			@include vendor('align-items', 'center');
 | 
			
		||||
			@include vendor('flex-direction', 'column-reverse');
 | 
			
		||||
			text-align: center;
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				width: 34rem;
 | 
			
		||||
				max-width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				margin-right: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				&.fullscreen {
 | 
			
		||||
					min-height: 100vh;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Orientation.
 | 
			
		||||
				&.orient-left {
 | 
			
		||||
					@include vendor('flex-direction', 'row');
 | 
			
		||||
 | 
			
		||||
					.image {
 | 
			
		||||
						margin: 0 0 _size(element-margin) (_size(element-margin) * 1.75);
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=small') {
 | 
			
		||||
						.image {
 | 
			
		||||
							margin: 0 0 _size(element-margin) (_size(element-margin) * 1);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include orientation(portrait) {
 | 
			
		||||
						@include vendor('flex-direction', 'column-reverse');
 | 
			
		||||
 | 
			
		||||
						.image {
 | 
			
		||||
							margin-left: 0;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.orient-right {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Content Alignment.
 | 
			
		||||
				&.content-align-left {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-center {
 | 
			
		||||
					text-align: center;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-right {
 | 
			
		||||
					text-align: right;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Image Position.
 | 
			
		||||
				&.image-position-left {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'left');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-center {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-right {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'right');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Banner (style4) */
 | 
			
		||||
 | 
			
		||||
	.banner.style4 {
 | 
			
		||||
		$image-width: 13rem;
 | 
			
		||||
		$content-size: (_size(inner) * 0.75) - $image-width - (_size(element-margin) * 1.75);
 | 
			
		||||
 | 
			
		||||
		@include padding(_size(padding, default), _size(padding, default));
 | 
			
		||||
		@include vendor('align-items', 'center');
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-direction', 'row-reverse');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: left;
 | 
			
		||||
		overflow-x: hidden;
 | 
			
		||||
 | 
			
		||||
		.content {
 | 
			
		||||
			width: $content-size;
 | 
			
		||||
			max-width: 100%;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.image {
 | 
			
		||||
			@include phone($image-width);
 | 
			
		||||
			margin-right: (_size(element-margin) * 1.75);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			@include padding(_size(padding, xlarge), _size(padding, xlarge));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			@include padding(_size(padding, large), _size(padding, large));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			@include padding(_size(padding, medium) * 1.25, _size(padding, medium));
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				@include resize-phone($image-width, 0.875);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			@include padding(_size(padding, small) * 1.25, _size(padding, small));
 | 
			
		||||
			@include vendor('align-items', 'flex-start');
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				@include resize-phone($image-width, 0.625);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include orientation(portrait) {
 | 
			
		||||
			@include vendor('align-items', 'center');
 | 
			
		||||
			@include vendor('flex-direction', 'column-reverse');
 | 
			
		||||
			text-align: center;
 | 
			
		||||
 | 
			
		||||
			.content {
 | 
			
		||||
				width: 34rem;
 | 
			
		||||
				max-width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				margin-right: 0;
 | 
			
		||||
				margin-left: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				&.fullscreen {
 | 
			
		||||
					min-height: 100vh;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Variant.
 | 
			
		||||
				&.iphone {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.android {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Orientation.
 | 
			
		||||
				&.orient-left {
 | 
			
		||||
					@include vendor('flex-direction', 'row');
 | 
			
		||||
 | 
			
		||||
					.image {
 | 
			
		||||
						margin-right: 0;
 | 
			
		||||
						margin-left: (_size(element-margin) * 1.75);
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include orientation(portrait) {
 | 
			
		||||
						@include vendor('flex-direction', 'column-reverse');
 | 
			
		||||
 | 
			
		||||
						.image {
 | 
			
		||||
							margin-right: 0;
 | 
			
		||||
							margin-left: 0;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.orient-right {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Content Alignment.
 | 
			
		||||
				&.content-align-left {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-center {
 | 
			
		||||
					text-align: center;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-right {
 | 
			
		||||
					text-align: right;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Image Position.
 | 
			
		||||
				&.image-position-left {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'left');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-center {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-right {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'right');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Banner (style5) */
 | 
			
		||||
 | 
			
		||||
	.banner.style5 {
 | 
			
		||||
		@include padding(_size(padding, default), _size(padding, default));
 | 
			
		||||
		@include vendor('align-items', 'center');
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		background-color: inherit;
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: center;
 | 
			
		||||
		overflow-x: hidden;
 | 
			
		||||
 | 
			
		||||
		.content {
 | 
			
		||||
			position: relative;
 | 
			
		||||
			width: (_size(inner) * 0.625);
 | 
			
		||||
			max-width: 100%;
 | 
			
		||||
			margin-bottom: _size(element-margin);
 | 
			
		||||
			z-index: 1;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.image {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			position: absolute;
 | 
			
		||||
			width: 100%;
 | 
			
		||||
			height: 100%;
 | 
			
		||||
			top: 0;
 | 
			
		||||
			left: 0;
 | 
			
		||||
			border-radius: 0;
 | 
			
		||||
			opacity: _misc(overlay-opacity);
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				@include vendor('object-fit', 'cover');
 | 
			
		||||
				@include vendor('object-position', 'center');
 | 
			
		||||
				display: block;
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 0;
 | 
			
		||||
				left: 0;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				height: 100%;
 | 
			
		||||
				border-radius: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			@include padding(_size(padding, xlarge), _size(padding, xlarge));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			@include padding(_size(padding, large), _size(padding, large));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			@include padding(_size(padding, medium) * 1.25, _size(padding, medium));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			@include padding(_size(padding, small) * 1.25, _size(padding, small));
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				&.fullscreen {
 | 
			
		||||
					min-height: 100vh;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Content Alignment.
 | 
			
		||||
				&.content-align-left {
 | 
			
		||||
					text-align: left;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-center {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.content-align-right {
 | 
			
		||||
					text-align: right;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			// Image Position.
 | 
			
		||||
				&.image-position-left {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'left');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-center {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.image-position-right {
 | 
			
		||||
					.image {
 | 
			
		||||
						img {
 | 
			
		||||
							@include vendor('object-position', 'right');
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
// Mixin
 | 
			
		||||
 | 
			
		||||
	@mixin color-banner($p: null) {
 | 
			
		||||
		.banner {
 | 
			
		||||
			.image {
 | 
			
		||||
				background-color: transparentize(_palette($p, fg-bold), 0.875);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			@if ($p != 'invert') {
 | 
			
		||||
				&.invert {
 | 
			
		||||
					.image {
 | 
			
		||||
						background-color: transparentize(_palette(invert, fg-bold), 0.875);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.banner.style4 {
 | 
			
		||||
			.image {
 | 
			
		||||
				@include color-phone($p);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			// Variant.
 | 
			
		||||
				&.iphone {
 | 
			
		||||
					.image {
 | 
			
		||||
						@include color-phone-variant('iphone', $p);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.android {
 | 
			
		||||
					.image {
 | 
			
		||||
						@include color-phone-variant('android', $p);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			@if ($p != 'invert') {
 | 
			
		||||
				&.invert {
 | 
			
		||||
					.image {
 | 
			
		||||
						@include color-phone(invert);
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					// Variant.
 | 
			
		||||
						&.iphone {
 | 
			
		||||
							.image {
 | 
			
		||||
								@include color-phone-variant('iphone', invert);
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						&.android {
 | 
			
		||||
							.image {
 | 
			
		||||
								@include color-phone-variant('android', invert);
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-banner;
 | 
			
		||||
							
								
								
									
										35
									
								
								assets/sass/components/_box.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sass/components/_box.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Box */
 | 
			
		||||
 | 
			
		||||
	.box {
 | 
			
		||||
		border-radius: _size(border-radius);
 | 
			
		||||
		border: solid _size(border-width);
 | 
			
		||||
		margin-bottom: _size(element-margin);
 | 
			
		||||
		padding: 1.5rem;
 | 
			
		||||
 | 
			
		||||
		> :last-child,
 | 
			
		||||
		> :last-child > :last-child,
 | 
			
		||||
		> :last-child > :last-child > :last-child {
 | 
			
		||||
			margin-bottom: 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.alt {
 | 
			
		||||
			border: 0;
 | 
			
		||||
			border-radius: 0;
 | 
			
		||||
			padding: 0;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-box($p: null) {
 | 
			
		||||
 		.box {
 | 
			
		||||
 			border-color: _palette($p, border);
 | 
			
		||||
 		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-box;
 | 
			
		||||
							
								
								
									
										113
									
								
								assets/sass/components/_button.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										113
									
								
								assets/sass/components/_button.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,113 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Button */
 | 
			
		||||
 | 
			
		||||
	input[type="submit"],
 | 
			
		||||
	input[type="reset"],
 | 
			
		||||
	input[type="button"],
 | 
			
		||||
	button,
 | 
			
		||||
	.button {
 | 
			
		||||
		@include vendor('appearance', 'none');
 | 
			
		||||
		@include vendor('transition', (
 | 
			
		||||
			'background-color #{_duration(transition)} ease-in-out',
 | 
			
		||||
			'box-shadow #{_duration(transition)} ease-in-out',
 | 
			
		||||
			'color #{_duration(transition)} ease-in-out'
 | 
			
		||||
		));
 | 
			
		||||
		border: 0;
 | 
			
		||||
		cursor: pointer;
 | 
			
		||||
		display: inline-block;
 | 
			
		||||
		font-weight: _font(weight-bold);
 | 
			
		||||
		letter-spacing: _font(kerning-alt);
 | 
			
		||||
		text-align: center;
 | 
			
		||||
		text-decoration: none;
 | 
			
		||||
		text-transform: uppercase;
 | 
			
		||||
		white-space: nowrap;
 | 
			
		||||
		font-size: 0.75rem;
 | 
			
		||||
		max-width: 20rem;
 | 
			
		||||
		height: 3.75em;
 | 
			
		||||
		line-height: 3.75em;
 | 
			
		||||
		border-radius: 3.75em;
 | 
			
		||||
		padding: 0 2.5em;
 | 
			
		||||
		text-overflow: ellipsis;
 | 
			
		||||
		overflow: hidden;
 | 
			
		||||
 | 
			
		||||
		&.icon {
 | 
			
		||||
			&:before {
 | 
			
		||||
				margin-right: 0.5rem;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.fit {
 | 
			
		||||
			width: 100%;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.small {
 | 
			
		||||
			font-size: 0.6rem;
 | 
			
		||||
			height: 3.325em;
 | 
			
		||||
			line-height: 3.325em;
 | 
			
		||||
			border-radius: 3.325em;
 | 
			
		||||
			padding: 0 2em;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.large {
 | 
			
		||||
			font-size: 0.8rem;
 | 
			
		||||
			height: 4em;
 | 
			
		||||
			line-height: 4em;
 | 
			
		||||
			border-radius: 4em;
 | 
			
		||||
			padding: 0 3em;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.wide {
 | 
			
		||||
			min-width: 14em;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.disabled,
 | 
			
		||||
		&:disabled {
 | 
			
		||||
			@include vendor('pointer-events', 'none');
 | 
			
		||||
			opacity: 0.25;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-button($p: null) {
 | 
			
		||||
		input[type="submit"],
 | 
			
		||||
		input[type="reset"],
 | 
			
		||||
		input[type="button"],
 | 
			
		||||
		button,
 | 
			
		||||
		.button {
 | 
			
		||||
			background-color: transparent;
 | 
			
		||||
			box-shadow: inset 0 0 0 _size(border-width) _palette($p, border);
 | 
			
		||||
			color: _palette($p, fg-bold) !important;
 | 
			
		||||
 | 
			
		||||
			&:hover {
 | 
			
		||||
				box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent);
 | 
			
		||||
				color: _palette($p, accent) !important;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:active {
 | 
			
		||||
				background-color: transparentize(_palette($p, accent), 0.8);
 | 
			
		||||
				box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent);
 | 
			
		||||
				color: _palette($p, accent) !important;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.primary {
 | 
			
		||||
				background-color: _palette($p, fg-bold);
 | 
			
		||||
				box-shadow: none;
 | 
			
		||||
				color: _palette($p, bg) !important;
 | 
			
		||||
 | 
			
		||||
				&:hover {
 | 
			
		||||
					background-color: _palette($p, accent);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:active {
 | 
			
		||||
					background-color: darken(_palette($p, accent), 12);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-button;
 | 
			
		||||
							
								
								
									
										287
									
								
								assets/sass/components/_form.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										287
									
								
								assets/sass/components/_form.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,287 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Form */
 | 
			
		||||
 | 
			
		||||
	form {
 | 
			
		||||
		margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
 | 
			
		||||
		> :last-child {
 | 
			
		||||
			margin-bottom: 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		> .fields  {
 | 
			
		||||
			$gutter: (_size(element-margin) * 0.75);
 | 
			
		||||
 | 
			
		||||
			@include vendor('display', 'flex');
 | 
			
		||||
			@include vendor('flex-wrap', 'wrap');
 | 
			
		||||
			width: calc(100% + #{$gutter * 2});
 | 
			
		||||
			margin: ($gutter * -1) 0 _size(element-margin) ($gutter * -1);
 | 
			
		||||
 | 
			
		||||
			> .field {
 | 
			
		||||
				@include vendor('flex-grow', '0');
 | 
			
		||||
				@include vendor('flex-shrink', '0');
 | 
			
		||||
				padding: $gutter 0 0 $gutter;
 | 
			
		||||
				width: calc(100% - #{$gutter * 1});
 | 
			
		||||
 | 
			
		||||
				&.half {
 | 
			
		||||
					width: calc(50% - #{$gutter * 0.5});
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.third {
 | 
			
		||||
					width: calc(#{100% / 3} - #{$gutter * (1 / 3)});
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.quarter {
 | 
			
		||||
					width: calc(25% - #{$gutter * 0.25});
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xsmall') {
 | 
			
		||||
			> .fields {
 | 
			
		||||
				$gutter: (_size(element-margin) * 0.75);
 | 
			
		||||
 | 
			
		||||
				width: calc(100% + #{$gutter * 2});
 | 
			
		||||
				margin: ($gutter * -1) 0 _size(element-margin) ($gutter * -1);
 | 
			
		||||
 | 
			
		||||
				> .field {
 | 
			
		||||
					padding: $gutter 0 0 $gutter;
 | 
			
		||||
					width: calc(100% - #{$gutter * 1});
 | 
			
		||||
 | 
			
		||||
					&.half {
 | 
			
		||||
						width: calc(100% - #{$gutter * 1});
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.third {
 | 
			
		||||
						width: calc(100% - #{$gutter * 1});
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.quarter {
 | 
			
		||||
						width: calc(100% - #{$gutter * 1});
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	label {
 | 
			
		||||
		display: block;
 | 
			
		||||
		font-size: 0.9rem;
 | 
			
		||||
		font-weight: _font(weight-bold);
 | 
			
		||||
		margin: 0 0 (_size(element-margin) * 0.5) 0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	input[type="text"],
 | 
			
		||||
	input[type="password"],
 | 
			
		||||
	input[type="email"],
 | 
			
		||||
	input[type="tel"],
 | 
			
		||||
	input[type="search"],
 | 
			
		||||
	input[type="url"],
 | 
			
		||||
	select,
 | 
			
		||||
	textarea {
 | 
			
		||||
		@include vendor('appearance', 'none');
 | 
			
		||||
		background-color: transparent;
 | 
			
		||||
		border-radius: _size(border-radius);
 | 
			
		||||
		border: none;
 | 
			
		||||
		border: solid _size(border-width);
 | 
			
		||||
		color: inherit;
 | 
			
		||||
		display: block;
 | 
			
		||||
		outline: 0;
 | 
			
		||||
		padding: 0 0.825rem;
 | 
			
		||||
		text-decoration: none;
 | 
			
		||||
		width: 100%;
 | 
			
		||||
 | 
			
		||||
		&:invalid {
 | 
			
		||||
			box-shadow: none;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	select {
 | 
			
		||||
		background-size: 1.25rem;
 | 
			
		||||
		background-repeat: no-repeat;
 | 
			
		||||
		background-position: calc(100% - 1rem) center;
 | 
			
		||||
		height: _size(element-height);
 | 
			
		||||
		padding-right: _size(element-height);
 | 
			
		||||
		text-overflow: ellipsis;
 | 
			
		||||
 | 
			
		||||
		&:focus {
 | 
			
		||||
			&::-ms-value {
 | 
			
		||||
				background-color: transparent;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&::-ms-expand {
 | 
			
		||||
			display: none;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	input[type="text"],
 | 
			
		||||
	input[type="password"],
 | 
			
		||||
	input[type="email"],
 | 
			
		||||
	input[type="tel"],
 | 
			
		||||
	input[type="search"],
 | 
			
		||||
	input[type="url"],
 | 
			
		||||
	select {
 | 
			
		||||
		height: _size(element-height);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	textarea {
 | 
			
		||||
		padding: 0.75rem 1rem;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	input[type="checkbox"],
 | 
			
		||||
	input[type="radio"], {
 | 
			
		||||
		@include vendor('appearance', 'none');
 | 
			
		||||
		display: block;
 | 
			
		||||
		float: left;
 | 
			
		||||
		margin-right: -2rem;
 | 
			
		||||
		opacity: 0;
 | 
			
		||||
		width: 1rem;
 | 
			
		||||
		z-index: -1;
 | 
			
		||||
 | 
			
		||||
		& + label {
 | 
			
		||||
			@include icon(false, solid);
 | 
			
		||||
			@include vendor('user-select', 'none');
 | 
			
		||||
			cursor: pointer;
 | 
			
		||||
			display: inline-block;
 | 
			
		||||
			font-size: 1rem;
 | 
			
		||||
			font-weight: _font(weight);
 | 
			
		||||
			padding-left: (_size(element-height) * 0.6) + 0.75rem;
 | 
			
		||||
			padding-right: 0.75rem;
 | 
			
		||||
			position: relative;
 | 
			
		||||
			margin-bottom: 0;
 | 
			
		||||
 | 
			
		||||
			&:before {
 | 
			
		||||
				border-radius: _size(border-radius);
 | 
			
		||||
				border: solid _size(border-width);
 | 
			
		||||
				content: '';
 | 
			
		||||
				display: inline-block;
 | 
			
		||||
				font-size: 0.8rem;
 | 
			
		||||
				height: (_size(element-height) * 0.6);
 | 
			
		||||
				left: 0;
 | 
			
		||||
				line-height: (_size(element-height) * 0.6);
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				text-align: center;
 | 
			
		||||
				top: 0;
 | 
			
		||||
				width: (_size(element-height) * 0.6);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&:checked + label {
 | 
			
		||||
			&:before {
 | 
			
		||||
				content: '\f00c';
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	input[type="checkbox"] {
 | 
			
		||||
		& + label {
 | 
			
		||||
			&:before {
 | 
			
		||||
				border-radius: _size(border-radius);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	input[type="radio"] {
 | 
			
		||||
		& + label {
 | 
			
		||||
			&:before {
 | 
			
		||||
				border-radius: 100%;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	::-webkit-input-placeholder {
 | 
			
		||||
		opacity: 1.0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	:-moz-placeholder {
 | 
			
		||||
		opacity: 1.0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	::-moz-placeholder {
 | 
			
		||||
		opacity: 1.0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	:-ms-input-placeholder {
 | 
			
		||||
		opacity: 1.0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-form($p: null) {
 | 
			
		||||
		label {
 | 
			
		||||
			color: _palette($p, fg-bold);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		input[type="text"],
 | 
			
		||||
		input[type="password"],
 | 
			
		||||
		input[type="email"],
 | 
			
		||||
		input[type="tel"],
 | 
			
		||||
		input[type="search"],
 | 
			
		||||
		input[type="url"],
 | 
			
		||||
		select,
 | 
			
		||||
		textarea {
 | 
			
		||||
			border-color: _palette($p, border);
 | 
			
		||||
 | 
			
		||||
			&:focus {
 | 
			
		||||
				border-color: _palette($p, accent);
 | 
			
		||||
				box-shadow: 0 0 0 _size(border-width) _palette($p, accent);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		select {
 | 
			
		||||
			background-image: svg-url("<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'><path d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='#{_palette(border)}' /></svg>");
 | 
			
		||||
 | 
			
		||||
			option {
 | 
			
		||||
				color: _palette(fg-bold);
 | 
			
		||||
				background: _palette(bg);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		input[type="checkbox"],
 | 
			
		||||
		input[type="radio"], {
 | 
			
		||||
			& + label {
 | 
			
		||||
				color: _palette($p, fg);
 | 
			
		||||
 | 
			
		||||
				&:before {
 | 
			
		||||
					border-color: _palette($p, border);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:checked + label {
 | 
			
		||||
				&:before {
 | 
			
		||||
					background-color: _palette($p, fg-bold);
 | 
			
		||||
					border-color: _palette($p, fg-bold);
 | 
			
		||||
					color: _palette($p, bg);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:focus + label {
 | 
			
		||||
				&:before {
 | 
			
		||||
					border-color: _palette($p, accent);
 | 
			
		||||
					box-shadow: 0 0 0 _size(border-width) _palette($p, accent);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		::-webkit-input-placeholder {
 | 
			
		||||
			color: _palette($p, fg-light) !important;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		:-moz-placeholder {
 | 
			
		||||
			color: _palette($p, fg-light) !important;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		::-moz-placeholder {
 | 
			
		||||
			color: _palette($p, fg-light) !important;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		:-ms-input-placeholder {
 | 
			
		||||
			color: _palette($p, fg-light) !important;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-form;
 | 
			
		||||
							
								
								
									
										617
									
								
								assets/sass/components/_gallery.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										617
									
								
								assets/sass/components/_gallery.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,617 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Gallery (transitions) */
 | 
			
		||||
 | 
			
		||||
	.gallery {
 | 
			
		||||
 | 
			
		||||
		// Mixin.
 | 
			
		||||
			@mixin transition-gallery($event) {
 | 
			
		||||
				$x: null;
 | 
			
		||||
				$y: null;
 | 
			
		||||
 | 
			
		||||
				@if ($event == 'load') {
 | 
			
		||||
					$x: 'body.is-preload &';
 | 
			
		||||
					$y: _duration(on-load);
 | 
			
		||||
				}
 | 
			
		||||
				@else if ($event == 'scroll') {
 | 
			
		||||
					$x: '&.is-inactive';
 | 
			
		||||
					$y: _duration(on-scroll);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.on#{$event}-fade-in {
 | 
			
		||||
					article {
 | 
			
		||||
						.image {
 | 
			
		||||
							img {
 | 
			
		||||
								@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
								@include vendor('transition-delay', '#{_misc(gallery-limit) * _duration(gallery-delay)}');
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						@for $i from 0 through _misc(gallery-limit) {
 | 
			
		||||
							&:nth-child(#{$i + 1}) {
 | 
			
		||||
								.image {
 | 
			
		||||
									img {
 | 
			
		||||
										@include vendor('transition-delay', '#{$i * _duration(gallery-delay)}');
 | 
			
		||||
									}
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					#{$x} {
 | 
			
		||||
						article {
 | 
			
		||||
							.image {
 | 
			
		||||
								img {
 | 
			
		||||
									opacity: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		// On Load.
 | 
			
		||||
			@include transition-gallery('load');
 | 
			
		||||
 | 
			
		||||
		// On Scroll.
 | 
			
		||||
			@include transition-gallery('scroll');
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Gallery (style1) */
 | 
			
		||||
 | 
			
		||||
	.gallery.style1 {
 | 
			
		||||
		@include color-typography(invert);
 | 
			
		||||
		@include color-button(invert);
 | 
			
		||||
		@include vendor('align-items', 'center');
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-wrap', 'wrap');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		position: relative;
 | 
			
		||||
		width: 100%;
 | 
			
		||||
		background-color: transparent;
 | 
			
		||||
 | 
			
		||||
		> .forward, >.backward {
 | 
			
		||||
			display: none;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		> .inner {
 | 
			
		||||
			@include vendor('align-items', 'inherit');
 | 
			
		||||
			@include vendor('display', 'inherit');
 | 
			
		||||
			@include vendor('flex-wrap', 'inherit');
 | 
			
		||||
			@include vendor('justify-content', 'inherit');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		article {
 | 
			
		||||
			overflow: hidden;
 | 
			
		||||
			position: relative;
 | 
			
		||||
			width: 25%;
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				@include vendor('transition', 'opacity #{_duration(transition)} ease-in-out');
 | 
			
		||||
				display: block;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				border-radius: 0;
 | 
			
		||||
 | 
			
		||||
				img {
 | 
			
		||||
					display: block;
 | 
			
		||||
					width: 100%;
 | 
			
		||||
					border-radius: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			.caption {
 | 
			
		||||
				@include vendor('align-items', 'center');
 | 
			
		||||
				@include vendor('display', 'flex');
 | 
			
		||||
				@include vendor('flex-direction', 'column');
 | 
			
		||||
				@include vendor('justify-content', 'center');
 | 
			
		||||
				@include vendor('pointer-events', 'none');
 | 
			
		||||
				@include vendor('transition', 'opacity #{_duration(transition)} ease-in-out');
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 0;
 | 
			
		||||
				left: 0;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				height: 100%;
 | 
			
		||||
				background-color: transparentize(_palette(invert, bg), 1 - _misc(overlay-opacity));
 | 
			
		||||
				opacity: 0;
 | 
			
		||||
				padding: 2rem;
 | 
			
		||||
				z-index: 1;
 | 
			
		||||
				font-size: 0.8rem;
 | 
			
		||||
 | 
			
		||||
				a {
 | 
			
		||||
					@include vendor('pointer-events', 'auto');
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				h2, h3, h4, h5, h6 {
 | 
			
		||||
					font-size: 1.25rem;
 | 
			
		||||
					margin-bottom: 0.25rem;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				> * {
 | 
			
		||||
					max-width: 100%;
 | 
			
		||||
					margin-bottom: 1rem;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				> :last-child {
 | 
			
		||||
					margin-bottom: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:hover {
 | 
			
		||||
				.caption {
 | 
			
		||||
					opacity: 1;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			article {
 | 
			
		||||
				width: (100% / 3);
 | 
			
		||||
 | 
			
		||||
				.caption {
 | 
			
		||||
					padding: 1rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			article {
 | 
			
		||||
				width: 50%;
 | 
			
		||||
 | 
			
		||||
				.caption {
 | 
			
		||||
					padding: 1rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xsmall') {
 | 
			
		||||
			article {
 | 
			
		||||
				width: 100%;
 | 
			
		||||
 | 
			
		||||
				.caption {
 | 
			
		||||
					padding: 1rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// size
 | 
			
		||||
				&.small {
 | 
			
		||||
					article {
 | 
			
		||||
						width: 20%;
 | 
			
		||||
 | 
			
		||||
						.caption {
 | 
			
		||||
							padding: 1rem;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=large') {
 | 
			
		||||
						article {
 | 
			
		||||
							width: 25%;
 | 
			
		||||
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 1rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=medium') {
 | 
			
		||||
						article {
 | 
			
		||||
							width: (100% / 3);
 | 
			
		||||
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 1rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=xsmall') {
 | 
			
		||||
						article {
 | 
			
		||||
							width: 50%;
 | 
			
		||||
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 1rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.medium {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.big {
 | 
			
		||||
					article {
 | 
			
		||||
						width: (100% / 3);
 | 
			
		||||
 | 
			
		||||
						.caption {
 | 
			
		||||
							padding: 3rem;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=large') {
 | 
			
		||||
						article {
 | 
			
		||||
							width: 50%;
 | 
			
		||||
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 2rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=medium') {
 | 
			
		||||
						article {
 | 
			
		||||
							width: 50%;
 | 
			
		||||
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 2rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=xsmall') {
 | 
			
		||||
						article {
 | 
			
		||||
							width: 100%;
 | 
			
		||||
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 1rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Gallery (style2) */
 | 
			
		||||
 | 
			
		||||
	.gallery.style2 {
 | 
			
		||||
		@include color-typography(invert);
 | 
			
		||||
		@include color-button(invert);
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		-webkit-overflow-scrolling: touch;
 | 
			
		||||
		position: relative;
 | 
			
		||||
		background-color: transparent;
 | 
			
		||||
 | 
			
		||||
		> .forward, >.backward {
 | 
			
		||||
			@include icon(false, solid);
 | 
			
		||||
			@include vendor('transition', 'opacity #{_duration(transition)} ease-in-out');
 | 
			
		||||
			position: absolute;
 | 
			
		||||
			top: 0;
 | 
			
		||||
			width: 5rem;
 | 
			
		||||
			height: 100%;
 | 
			
		||||
			cursor: pointer;
 | 
			
		||||
			opacity: 0;
 | 
			
		||||
			z-index: 2;
 | 
			
		||||
 | 
			
		||||
			&:before {
 | 
			
		||||
				display: block;
 | 
			
		||||
				top: calc(50% - 1.5rem);
 | 
			
		||||
				width: 4rem;
 | 
			
		||||
				height: 3rem;
 | 
			
		||||
				line-height: 1em;
 | 
			
		||||
				font-size: 3rem;
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				text-align: center;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&:hover {
 | 
			
		||||
			> .forward, > .backward {
 | 
			
		||||
				opacity: 1;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		> .forward {
 | 
			
		||||
			right: 0;
 | 
			
		||||
			background-image: linear-gradient(to left, rgba(0,0,0,0.25) 15%, rgba(0,0,0,0));
 | 
			
		||||
 | 
			
		||||
			&:before {
 | 
			
		||||
				content: '\f105';
 | 
			
		||||
				right: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		> .backward {
 | 
			
		||||
			left: 0;
 | 
			
		||||
			background-image: linear-gradient(to right, rgba(0,0,0,0.25) 15%, rgba(0,0,0,0));
 | 
			
		||||
 | 
			
		||||
			&:before {
 | 
			
		||||
				content: '\f104';
 | 
			
		||||
				left: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		> .inner {
 | 
			
		||||
			@include vendor('display', 'inherit');
 | 
			
		||||
			overflow-x: auto;
 | 
			
		||||
			overflow-y: hidden;
 | 
			
		||||
			position: relative;
 | 
			
		||||
			width: 100%;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		article {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			display: block;
 | 
			
		||||
			position: relative;
 | 
			
		||||
			overflow: hidden;
 | 
			
		||||
			width: 22.5rem;
 | 
			
		||||
			max-width: 75vw;
 | 
			
		||||
 | 
			
		||||
			.image {
 | 
			
		||||
				display: block;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				border-radius: 0;
 | 
			
		||||
 | 
			
		||||
				img {
 | 
			
		||||
					display: block;
 | 
			
		||||
					width: 100%;
 | 
			
		||||
					border-radius: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			.caption {
 | 
			
		||||
				@include vendor('align-items', 'center');
 | 
			
		||||
				@include vendor('display', 'flex');
 | 
			
		||||
				@include vendor('flex-direction', 'column');
 | 
			
		||||
				@include vendor('justify-content', 'center');
 | 
			
		||||
				@include vendor('pointer-events', 'none');
 | 
			
		||||
				@include vendor('transition', 'opacity #{_duration(transition)} ease-in-out');
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 0;
 | 
			
		||||
				left: 0;
 | 
			
		||||
				width: 100%;
 | 
			
		||||
				height: 100%;
 | 
			
		||||
				background-color: transparentize(_palette(invert, bg), 1 - _misc(overlay-opacity));
 | 
			
		||||
				opacity: 0;
 | 
			
		||||
				padding: 3rem;
 | 
			
		||||
				z-index: 1;
 | 
			
		||||
				font-size: 0.8rem;
 | 
			
		||||
 | 
			
		||||
				a {
 | 
			
		||||
					@include vendor('pointer-events', 'auto');
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				h2, h3, h4, h5, h6 {
 | 
			
		||||
					font-size: 1.25rem;
 | 
			
		||||
					margin-bottom: 0.25rem;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				> * {
 | 
			
		||||
					max-width: 100%;
 | 
			
		||||
					margin-bottom: 1rem;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				> :last-child {
 | 
			
		||||
					margin-bottom: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:hover {
 | 
			
		||||
				.caption {
 | 
			
		||||
					opacity: 1;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			article {
 | 
			
		||||
				.caption {
 | 
			
		||||
					padding: 2rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			article {
 | 
			
		||||
				.caption {
 | 
			
		||||
					padding: 2rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// size
 | 
			
		||||
				&.small {
 | 
			
		||||
					article {
 | 
			
		||||
						width: 17.5rem;
 | 
			
		||||
 | 
			
		||||
						.caption {
 | 
			
		||||
							padding: 2rem;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=medium') {
 | 
			
		||||
						article {
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 2rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=small') {
 | 
			
		||||
						article {
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 2rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.medium {
 | 
			
		||||
					// ...
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.big {
 | 
			
		||||
					article {
 | 
			
		||||
						width: 30rem;
 | 
			
		||||
 | 
			
		||||
						.caption {
 | 
			
		||||
							padding: 4rem;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=medium') {
 | 
			
		||||
						article {
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 3rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					@include breakpoint('<=small') {
 | 
			
		||||
						article {
 | 
			
		||||
							.caption {
 | 
			
		||||
								padding: 2rem;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Gallery (lightbox) */
 | 
			
		||||
 | 
			
		||||
	@include keyframes('gallery-modal-spinner') {
 | 
			
		||||
		0% {
 | 
			
		||||
			@include vendor('transform', 'rotate(0deg)');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		100% {
 | 
			
		||||
			@include vendor('transform', 'rotate(360deg)');
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.gallery.lightbox {
 | 
			
		||||
		.modal {
 | 
			
		||||
			@include vendor('display', 'flex');
 | 
			
		||||
			@include vendor('align-items', 'center');
 | 
			
		||||
			@include vendor('justify-content', 'center');
 | 
			
		||||
			@include vendor('pointer-events', 'none');
 | 
			
		||||
			@include vendor('user-select', 'none');
 | 
			
		||||
			@include vendor('transition', (
 | 
			
		||||
				'opacity #{_duration(gallery-lightbox)} ease',
 | 
			
		||||
				'visibility #{_duration(gallery-lightbox)}',
 | 
			
		||||
				'z-index #{_duration(gallery-lightbox)}'
 | 
			
		||||
			));
 | 
			
		||||
			-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
 | 
			
		||||
			position: fixed;
 | 
			
		||||
			top: 0;
 | 
			
		||||
			left: 0;
 | 
			
		||||
			width: 100%;
 | 
			
		||||
			height: 100%;
 | 
			
		||||
			outline: 0;
 | 
			
		||||
			background-color: transparentize(_palette(invert, bg), 1 - _misc(lightbox-opacity));
 | 
			
		||||
			visibility: none;
 | 
			
		||||
			opacity: 0;
 | 
			
		||||
			z-index: 0;
 | 
			
		||||
 | 
			
		||||
			&:before {
 | 
			
		||||
				@include vendor('animation', 'gallery-modal-spinner 1s infinite linear');
 | 
			
		||||
				@include vendor('transition', 'opacity #{_duration(gallery-lightbox) * 0.5} ease');
 | 
			
		||||
				@include vendor('transition-delay', '#{_duration(gallery-lightbox)}');
 | 
			
		||||
				content: '';
 | 
			
		||||
				display: block;
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 50%;
 | 
			
		||||
				left: 50%;
 | 
			
		||||
				width: 4rem;
 | 
			
		||||
				height: 4rem;
 | 
			
		||||
				margin: -2rem 0 0 -2rem;
 | 
			
		||||
				background-image: svg-url('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="96px" height="96px" viewBox="0 0 96 96" zoomAndPan="disable"><style>circle {fill: transparent; stroke: #{_palette(invert, fg-bold)}; stroke-width: 1.5px; }</style><defs><clipPath id="corner"><polygon points="0,0 48,0 48,48 96,48 96,96 0,96" /></clipPath></defs><g clip-path="url(#corner)"><circle cx="48" cy="48" r="32"/></g></svg>');
 | 
			
		||||
				background-position: center;
 | 
			
		||||
				background-repeat: no-repeat;
 | 
			
		||||
				background-size: 4rem;
 | 
			
		||||
				opacity: 0;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:after {
 | 
			
		||||
				content: '';
 | 
			
		||||
				display: block;
 | 
			
		||||
				position: absolute;
 | 
			
		||||
				top: 0.5rem;
 | 
			
		||||
				right: 0.5rem;
 | 
			
		||||
				width: 4rem;
 | 
			
		||||
				height: 4rem;
 | 
			
		||||
				cursor: pointer;
 | 
			
		||||
				background-image: svg-url('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="64px" height="64px" viewBox="0 0 64 64" zoomAndPan="disable"><style>line {stroke: #{_palette(invert, fg-bold)};stroke-width: 1.5px;}</style><line x1="20" y1="20" x2="44" y2="44" /><line x1="20" y1="44" x2="44" y2="20" /></svg>');
 | 
			
		||||
				background-position: center;
 | 
			
		||||
				background-repeat: no-repeat;
 | 
			
		||||
				background-size: 3rem;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			.inner {
 | 
			
		||||
				@include vendor('transform', 'translateY(0.75rem)');
 | 
			
		||||
				@include vendor('transition', (
 | 
			
		||||
					'opacity #{_duration(gallery-lightbox) * 0.5} ease',
 | 
			
		||||
					'transform #{_duration(gallery-lightbox) * 0.5} ease'
 | 
			
		||||
				));
 | 
			
		||||
				opacity: 0;
 | 
			
		||||
 | 
			
		||||
				img {
 | 
			
		||||
					display: block;
 | 
			
		||||
					max-width: 90vw;
 | 
			
		||||
					max-height: 85vh;
 | 
			
		||||
					box-shadow: 0 1rem 3rem 0 rgba(0, 0, 0, 0.35);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.visible {
 | 
			
		||||
				@include vendor('pointer-events', 'auto');
 | 
			
		||||
				visibility: visible;
 | 
			
		||||
				opacity: 1;
 | 
			
		||||
				z-index: _misc(z-index-base) + 1;
 | 
			
		||||
 | 
			
		||||
				&:before {
 | 
			
		||||
					opacity: 1;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.loaded {
 | 
			
		||||
				.inner {
 | 
			
		||||
					@include vendor('transform', 'translateY(0)');
 | 
			
		||||
					@include vendor('transition', (
 | 
			
		||||
						'opacity #{_duration(gallery-lightbox)} ease',
 | 
			
		||||
						'transform #{_duration(gallery-lightbox)} ease'
 | 
			
		||||
					));
 | 
			
		||||
					opacity: 1;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:before {
 | 
			
		||||
					@include vendor('transition-delay', '0s');
 | 
			
		||||
					opacity: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			.modal {
 | 
			
		||||
				.inner {
 | 
			
		||||
					img {
 | 
			
		||||
						max-width: 100vw;
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
// Mixin
 | 
			
		||||
 | 
			
		||||
	@mixin color-gallery($p: null) {
 | 
			
		||||
		.gallery {
 | 
			
		||||
			article {
 | 
			
		||||
				.image {
 | 
			
		||||
					background-color: transparentize(_palette($p, fg-bold), 0.875);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-gallery;
 | 
			
		||||
							
								
								
									
										97
									
								
								assets/sass/components/_icon.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										97
									
								
								assets/sass/components/_icon.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,97 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Icon */
 | 
			
		||||
 | 
			
		||||
	.icon {
 | 
			
		||||
		@include icon;
 | 
			
		||||
		border-bottom: none;
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: center;
 | 
			
		||||
 | 
			
		||||
		> .label {
 | 
			
		||||
			display: none;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&:before {
 | 
			
		||||
			line-height: inherit;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.solid {
 | 
			
		||||
			&:before {
 | 
			
		||||
				font-weight: 900;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.brands {
 | 
			
		||||
			&:before {
 | 
			
		||||
				font-family: 'Font Awesome 5 Brands';
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.style2 {
 | 
			
		||||
			&:before {
 | 
			
		||||
				border-radius: 2.75em;
 | 
			
		||||
				display: inline-block;
 | 
			
		||||
				height: 2.75em;
 | 
			
		||||
				line-height: 2.75em;
 | 
			
		||||
				width: 2.75em;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.major {
 | 
			
		||||
			display: block;
 | 
			
		||||
			margin: 0 0 (_size(element-margin) * 0.5) 0;
 | 
			
		||||
 | 
			
		||||
			&:before {
 | 
			
		||||
				font-size: 1.25rem;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	a.icon {
 | 
			
		||||
		&.style2 {
 | 
			
		||||
			&:before {
 | 
			
		||||
				@include vendor('transition', (
 | 
			
		||||
					'background-color #{_duration(transition)} ease-in-out',
 | 
			
		||||
					'box-shadow #{_duration(transition)} ease-in-out',
 | 
			
		||||
					'color #{_duration(transition)} ease-in-out'
 | 
			
		||||
				));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-icon($p: null) {
 | 
			
		||||
 		.icon {
 | 
			
		||||
 			&.style2 {
 | 
			
		||||
 				&:before {
 | 
			
		||||
					box-shadow: inset 0 0 0 _size(border-width) _palette($p, border);
 | 
			
		||||
 				}
 | 
			
		||||
 			}
 | 
			
		||||
 		}
 | 
			
		||||
 | 
			
		||||
		a.icon {
 | 
			
		||||
			&.style2 {
 | 
			
		||||
				&:hover {
 | 
			
		||||
					&:before {
 | 
			
		||||
						box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent);
 | 
			
		||||
						color: _palette($p, accent);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:active {
 | 
			
		||||
					&:before {
 | 
			
		||||
						background-color: transparentize(_palette($p, accent), 0.9);
 | 
			
		||||
						box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent);
 | 
			
		||||
						color: _palette($p, accent);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-icon;
 | 
			
		||||
							
								
								
									
										23
									
								
								assets/sass/components/_icons.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								assets/sass/components/_icons.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Icons */
 | 
			
		||||
 | 
			
		||||
	ul.icons {
 | 
			
		||||
		cursor: default;
 | 
			
		||||
		list-style: none;
 | 
			
		||||
		padding-left: 0;
 | 
			
		||||
 | 
			
		||||
		li {
 | 
			
		||||
			display: inline-block;
 | 
			
		||||
			padding: 0 0.75rem 0 0;
 | 
			
		||||
 | 
			
		||||
			&:last-child {
 | 
			
		||||
				padding-right: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
							
								
								
									
										62
									
								
								assets/sass/components/_image.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								assets/sass/components/_image.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Image */
 | 
			
		||||
 | 
			
		||||
	.image {
 | 
			
		||||
		border: 0;
 | 
			
		||||
		border-radius: _size(border-radius);
 | 
			
		||||
		display: inline-block;
 | 
			
		||||
		position: relative;
 | 
			
		||||
 | 
			
		||||
		img {
 | 
			
		||||
			display: block;
 | 
			
		||||
			border-radius: _size(border-radius);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.left,
 | 
			
		||||
		&.right {
 | 
			
		||||
			width: 40%;
 | 
			
		||||
			max-width: 10rem;
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.left {
 | 
			
		||||
			float: left;
 | 
			
		||||
			margin: 0 1.5rem 1rem 0;
 | 
			
		||||
			top: 0.25rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.right {
 | 
			
		||||
			float: right;
 | 
			
		||||
			margin: 0 0 1rem 1.5rem;
 | 
			
		||||
			top: 0.25rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.fit {
 | 
			
		||||
			display: block;
 | 
			
		||||
			margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
			width: 100%;
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.main {
 | 
			
		||||
			display: block;
 | 
			
		||||
			margin: 0 0 (_size(element-margin) * 1.5) 0;
 | 
			
		||||
			width: 100%;
 | 
			
		||||
 | 
			
		||||
			img {
 | 
			
		||||
				width: 100%;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
							
								
								
									
										67
									
								
								assets/sass/components/_index.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								assets/sass/components/_index.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,67 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Index */
 | 
			
		||||
 | 
			
		||||
	.index {
 | 
			
		||||
		> * {
 | 
			
		||||
			@include padding(3rem, 0);
 | 
			
		||||
			@include vendor('display', 'flex');
 | 
			
		||||
			border-top: solid 1px;
 | 
			
		||||
 | 
			
		||||
			> header {
 | 
			
		||||
				@include vendor('flex-grow', '0');
 | 
			
		||||
				@include vendor('flex-shrink', '0');
 | 
			
		||||
				width: 15rem;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			> .content {
 | 
			
		||||
				@include vendor('flex-grow', '1');
 | 
			
		||||
				@include vendor('flex-shrink', '1');
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		> :first-child {
 | 
			
		||||
			border-top: 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			> * {
 | 
			
		||||
				> header {
 | 
			
		||||
					width: 11rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			> * {
 | 
			
		||||
				> header {
 | 
			
		||||
					width: 10rem;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xsmall') {
 | 
			
		||||
			> * {
 | 
			
		||||
				@include vendor('flex-direction', 'column');
 | 
			
		||||
 | 
			
		||||
				> header {
 | 
			
		||||
					width: 100%;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-index($p: null) {
 | 
			
		||||
		.index {
 | 
			
		||||
			> * {
 | 
			
		||||
 				border-top-color: _palette($p, border);
 | 
			
		||||
 			}
 | 
			
		||||
 		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-index;
 | 
			
		||||
							
								
								
									
										339
									
								
								assets/sass/components/_items.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										339
									
								
								assets/sass/components/_items.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,339 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Items (transitions) */
 | 
			
		||||
 | 
			
		||||
	.items {
 | 
			
		||||
 | 
			
		||||
		// Mixin.
 | 
			
		||||
			@mixin transition-items($event) {
 | 
			
		||||
				$x: null;
 | 
			
		||||
				$y: null;
 | 
			
		||||
 | 
			
		||||
				@if ($event == 'load') {
 | 
			
		||||
					$x: 'body.is-preload &';
 | 
			
		||||
					$y: _duration(on-load);
 | 
			
		||||
				}
 | 
			
		||||
				@else if ($event == 'scroll') {
 | 
			
		||||
					$x: '&.is-inactive';
 | 
			
		||||
					$y: _duration(on-scroll);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&.on#{$event}-fade-in {
 | 
			
		||||
					> * {
 | 
			
		||||
						> .inner {
 | 
			
		||||
							@include vendor('transition', 'opacity #{$y} ease-in-out');
 | 
			
		||||
							@include vendor('transition-delay', '#{_misc(items-limit) * _duration(items-delay)}');
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						@for $i from 0 through _misc(items-limit) {
 | 
			
		||||
							&:nth-child(#{$i + 1}) {
 | 
			
		||||
								> .inner {
 | 
			
		||||
									@include vendor('transition-delay', '#{$i * _duration(items-delay)}');
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					#{$x} {
 | 
			
		||||
						> * {
 | 
			
		||||
							> .inner {
 | 
			
		||||
								opacity: 0;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		// On Load.
 | 
			
		||||
			@include transition-items('load');
 | 
			
		||||
 | 
			
		||||
		// On Scroll.
 | 
			
		||||
			@include transition-items('scroll');
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Items (style1) */
 | 
			
		||||
 | 
			
		||||
	@mixin items-style1-size($name, $size, $padding) {
 | 
			
		||||
		&.#{$name} {
 | 
			
		||||
			> * {
 | 
			
		||||
				@include padding($padding, $padding);
 | 
			
		||||
				width: #{100% / $size};
 | 
			
		||||
 | 
			
		||||
				&:nth-child(-n + #{$size}) {
 | 
			
		||||
					border-top-width: 0;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:nth-child(#{$size}n + 1) {
 | 
			
		||||
					border-left-width: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin items-style1-size-reset($name, $size) {
 | 
			
		||||
		&.#{$name} {
 | 
			
		||||
			> * {
 | 
			
		||||
				&:nth-child(-n + #{$size}) {
 | 
			
		||||
					border-top-width: _size(border-width);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:nth-child(#{$size}n + 1) {
 | 
			
		||||
					border-left-width: _size(border-width);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.items.style1 {
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-wrap', 'wrap');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		margin: (_size(element-margin) * 1.5) 0;
 | 
			
		||||
		position: relative;
 | 
			
		||||
 | 
			
		||||
		> * {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			border-style: solid;
 | 
			
		||||
			border-left-width: _size(border-width);
 | 
			
		||||
			border-top-width: _size(border-width);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				@include items-style1-size(big, 2, _size(gutter));
 | 
			
		||||
				@include items-style1-size(medium, 3, _size(gutter) * 0.625);
 | 
			
		||||
				@include items-style1-size(small, 4, _size(gutter) * 0.375);
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=large') {
 | 
			
		||||
					@include items-style1-size-reset(small, 4);
 | 
			
		||||
					@include items-style1-size(small, 3, _size(gutter) * 0.625);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=medium') {
 | 
			
		||||
					@include items-style1-size-reset(medium, 3);
 | 
			
		||||
					@include items-style1-size(medium, 2, _size(gutter));
 | 
			
		||||
 | 
			
		||||
					@include items-style1-size-reset(small, 3);
 | 
			
		||||
					@include items-style1-size(small, 2, _size(gutter));
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=xsmall') {
 | 
			
		||||
					@include items-style1-size-reset(big, 2);
 | 
			
		||||
					@include items-style1-size(big, 1, _size(gutter) * 0.75);
 | 
			
		||||
 | 
			
		||||
					@include items-style1-size-reset(medium, 2);
 | 
			
		||||
					@include items-style1-size(medium, 1, _size(gutter) * 0.75);
 | 
			
		||||
 | 
			
		||||
					@include items-style1-size-reset(small, 2);
 | 
			
		||||
					@include items-style1-size(small, 1, _size(gutter) * 0.75);
 | 
			
		||||
 | 
			
		||||
					&.big,
 | 
			
		||||
					&.medium,
 | 
			
		||||
					&.small {
 | 
			
		||||
						> * {
 | 
			
		||||
							padding-left: 0;
 | 
			
		||||
							padding-right: 0;
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						> :first-child {
 | 
			
		||||
							padding-top: 0;
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						> :last-child {
 | 
			
		||||
							padding-bottom: 0;
 | 
			
		||||
 | 
			
		||||
							> .inner {
 | 
			
		||||
								> :last-child {
 | 
			
		||||
									margin-bottom: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Items (style2) */
 | 
			
		||||
 | 
			
		||||
	@mixin items-style2-size($name, $size, $padding) {
 | 
			
		||||
		&.#{$name} {
 | 
			
		||||
			> * {
 | 
			
		||||
				@include padding($padding, $padding);
 | 
			
		||||
				width: #{100% / $size};
 | 
			
		||||
 | 
			
		||||
				&:nth-child(-n + #{$size}) {
 | 
			
		||||
					border-top-width: 0;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:nth-child(#{$size}n + 1) {
 | 
			
		||||
					border-left-width: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin items-style2-size-reset($name, $size) {
 | 
			
		||||
		&.#{$name} {
 | 
			
		||||
			> * {
 | 
			
		||||
				&:nth-child(-n + #{$size}) {
 | 
			
		||||
					border-top-width: _size(border-width);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				&:nth-child(#{$size}n + 1) {
 | 
			
		||||
					border-left-width: _size(border-width);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.items.style2 {
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-wrap', 'wrap');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		margin: (_size(element-margin) * 1.5) 0;
 | 
			
		||||
		position: relative;
 | 
			
		||||
		border: solid _size(border-width);
 | 
			
		||||
		border-radius: _size(border-radius);
 | 
			
		||||
 | 
			
		||||
		> * {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
			border-style: solid;
 | 
			
		||||
			border-left-width: _size(border-width);
 | 
			
		||||
			border-top-width: _size(border-width);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				@include items-style2-size(big, 2, _size(gutter));
 | 
			
		||||
				@include items-style2-size(medium, 3, _size(gutter) * 0.625);
 | 
			
		||||
				@include items-style2-size(small, 4, _size(gutter) * 0.375);
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=large') {
 | 
			
		||||
					@include items-style2-size-reset(small, 4);
 | 
			
		||||
					@include items-style2-size(small, 3, _size(gutter) * 0.625);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=medium') {
 | 
			
		||||
					@include items-style2-size-reset(medium, 3);
 | 
			
		||||
					@include items-style2-size(medium, 2, _size(gutter));
 | 
			
		||||
 | 
			
		||||
					@include items-style2-size-reset(small, 3);
 | 
			
		||||
					@include items-style2-size(small, 2, _size(gutter));
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=xsmall') {
 | 
			
		||||
					@include items-style2-size-reset(big, 2);
 | 
			
		||||
					@include items-style2-size(big, 1, _size(gutter) * 0.75);
 | 
			
		||||
 | 
			
		||||
					@include items-style2-size-reset(medium, 2);
 | 
			
		||||
					@include items-style2-size(medium, 1, _size(gutter) * 0.75);
 | 
			
		||||
 | 
			
		||||
					@include items-style2-size-reset(small, 2);
 | 
			
		||||
					@include items-style2-size(small, 1, _size(gutter) * 0.75);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Items (style3) */
 | 
			
		||||
 | 
			
		||||
	@mixin items-style3-size($name, $size, $padding) {
 | 
			
		||||
		&.#{$name} {
 | 
			
		||||
			> * {
 | 
			
		||||
				@include padding($padding, $padding);
 | 
			
		||||
				width: #{100% / $size};
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.items.style3 {
 | 
			
		||||
		@include vendor('display', 'flex');
 | 
			
		||||
		@include vendor('flex-wrap', 'wrap');
 | 
			
		||||
		@include vendor('justify-content', 'center');
 | 
			
		||||
		margin: (_size(element-margin) * 1.5) 0;
 | 
			
		||||
		position: relative;
 | 
			
		||||
 | 
			
		||||
		> * {
 | 
			
		||||
			@include vendor('flex-grow', '0');
 | 
			
		||||
			@include vendor('flex-shrink', '0');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Modifiers.
 | 
			
		||||
 | 
			
		||||
			// Size.
 | 
			
		||||
				@include items-style3-size(big, 2, _size(gutter) * 0.5);
 | 
			
		||||
				@include items-style3-size(medium, 3, _size(gutter) * 0.5 * 0.625);
 | 
			
		||||
				@include items-style3-size(small, 4, _size(gutter) * 0.5 * 0.375);
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=large') {
 | 
			
		||||
					@include items-style3-size(small, 3, _size(gutter) * 0.5 * 0.625);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=medium') {
 | 
			
		||||
					@include items-style3-size(medium, 2, _size(gutter) * 0.5);
 | 
			
		||||
					@include items-style3-size(small, 2, _size(gutter) * 0.5);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=small') {
 | 
			
		||||
					margin: _size(element-margin) 0;
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				@include breakpoint('<=xsmall') {
 | 
			
		||||
					@include items-style3-size(big, 1, _size(gutter) * 0.5 * 0.75);
 | 
			
		||||
					@include items-style3-size(medium, 1, _size(gutter) * 0.5 * 0.75);
 | 
			
		||||
					@include items-style3-size(small, 1, _size(gutter) * 0.5 * 0.75);
 | 
			
		||||
 | 
			
		||||
					&.big,
 | 
			
		||||
					&.medium,
 | 
			
		||||
					&.small {
 | 
			
		||||
						> * {
 | 
			
		||||
							padding-left: 0;
 | 
			
		||||
							padding-right: 0;
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						> :first-child {
 | 
			
		||||
							padding-top: 0;
 | 
			
		||||
						}
 | 
			
		||||
 | 
			
		||||
						> :last-child {
 | 
			
		||||
							padding-bottom: 0;
 | 
			
		||||
 | 
			
		||||
							> .inner {
 | 
			
		||||
								> :last-child {
 | 
			
		||||
									margin-bottom: 0;
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
// Mixin
 | 
			
		||||
 | 
			
		||||
	@mixin color-items($p: null) {
 | 
			
		||||
 		.items.style1 {
 | 
			
		||||
 			> * {
 | 
			
		||||
	 			border-color: _palette($p, border);
 | 
			
		||||
	 		}
 | 
			
		||||
 		}
 | 
			
		||||
 | 
			
		||||
 		.items.style2 {
 | 
			
		||||
 			border-color: _palette($p, border);
 | 
			
		||||
 | 
			
		||||
 			> * {
 | 
			
		||||
	 			border-color: _palette($p, border);
 | 
			
		||||
	 		}
 | 
			
		||||
 		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-items;
 | 
			
		||||
							
								
								
									
										87
									
								
								assets/sass/components/_list.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								assets/sass/components/_list.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,87 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* List */
 | 
			
		||||
 | 
			
		||||
	ol {
 | 
			
		||||
		list-style: decimal;
 | 
			
		||||
		margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
		padding-left: 1.25rem;
 | 
			
		||||
 | 
			
		||||
		li {
 | 
			
		||||
			padding-left: 0.25rem;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	ul {
 | 
			
		||||
		list-style: disc;
 | 
			
		||||
		margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
		padding-left: 1rem;
 | 
			
		||||
 | 
			
		||||
		li {
 | 
			
		||||
			padding-left: 0.5rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.alt {
 | 
			
		||||
			list-style: none;
 | 
			
		||||
			padding-left: 0;
 | 
			
		||||
 | 
			
		||||
			li {
 | 
			
		||||
				border-top: solid _size(border-width);
 | 
			
		||||
				padding: 0.5rem 0;
 | 
			
		||||
 | 
			
		||||
				&:first-child {
 | 
			
		||||
					border-top: 0;
 | 
			
		||||
					padding-top: 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	dl {
 | 
			
		||||
		margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
 | 
			
		||||
		dt {
 | 
			
		||||
			display: block;
 | 
			
		||||
			font-weight: _font(weight-bold);
 | 
			
		||||
			margin: 0 0 (_size(element-margin) * 0.5) 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		dd {
 | 
			
		||||
			margin-left: _size(element-margin);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.style2 {
 | 
			
		||||
			dt {
 | 
			
		||||
				width: 25%;
 | 
			
		||||
				float: left;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			dd {
 | 
			
		||||
				width: 70%;
 | 
			
		||||
				float: left;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&:after {
 | 
			
		||||
				content: '';
 | 
			
		||||
				display: block;
 | 
			
		||||
				clear: both;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-list($p: null) {
 | 
			
		||||
		ul {
 | 
			
		||||
			&.alt {
 | 
			
		||||
				li {
 | 
			
		||||
					border-top-color: _palette($p, border);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-list;
 | 
			
		||||
							
								
								
									
										36
									
								
								assets/sass/components/_row.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								assets/sass/components/_row.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Row */
 | 
			
		||||
 | 
			
		||||
	.row {
 | 
			
		||||
		@include html-grid(2rem);
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			@include html-grid(2rem, 'xlarge');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			@include html-grid(2rem, 'large');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			@include html-grid(2rem, 'medium');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			@include html-grid(2rem, 'small');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xsmall') {
 | 
			
		||||
			@include html-grid(2rem, 'xsmall');
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xxsmall') {
 | 
			
		||||
			@include html-grid(2rem, 'xxsmall');
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
							
								
								
									
										50
									
								
								assets/sass/components/_section.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								assets/sass/components/_section.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,50 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Section/Article */
 | 
			
		||||
 | 
			
		||||
	section, article {
 | 
			
		||||
		&.special {
 | 
			
		||||
			text-align: center;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	header {
 | 
			
		||||
		p {
 | 
			
		||||
			position: relative;
 | 
			
		||||
			margin: (_size(element-margin) * -0.325) 0 (_size(element-margin) * 0.75) 0;
 | 
			
		||||
			font-style: italic;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		h1 + p {
 | 
			
		||||
			font-size: 1.375rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		h2 + p {
 | 
			
		||||
			font-size: 1.25rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		h3 + p {
 | 
			
		||||
			font-size: 1.1rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		h4 + p,
 | 
			
		||||
		h5 + p,
 | 
			
		||||
		h6 + p {
 | 
			
		||||
			font-size: 0.9rem;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-section($p: null) {
 | 
			
		||||
		header {
 | 
			
		||||
			p {
 | 
			
		||||
				color: _palette($p, fg-light);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-section;
 | 
			
		||||
							
								
								
									
										1013
									
								
								assets/sass/components/_spotlight.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1013
									
								
								assets/sass/components/_spotlight.scss
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										138
									
								
								assets/sass/components/_table.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								assets/sass/components/_table.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,138 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Table */
 | 
			
		||||
 | 
			
		||||
	.table-wrapper {
 | 
			
		||||
		-webkit-overflow-scrolling: touch;
 | 
			
		||||
		margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
		overflow-x: auto;
 | 
			
		||||
 | 
			
		||||
		> table {
 | 
			
		||||
			margin-bottom: 0;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	table {
 | 
			
		||||
		margin: 0 0 _size(element-margin) 0;
 | 
			
		||||
		width: 100%;
 | 
			
		||||
 | 
			
		||||
		tbody {
 | 
			
		||||
			tr {
 | 
			
		||||
				border: solid _size(border-width);
 | 
			
		||||
				border-left: 0;
 | 
			
		||||
				border-right: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		td {
 | 
			
		||||
			padding: 0.75rem 0.75rem;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		th {
 | 
			
		||||
			font-size: 0.9rem;
 | 
			
		||||
			font-weight: _font(weight-bold);
 | 
			
		||||
			padding: 0 0.75rem 0.75rem 0.75rem;
 | 
			
		||||
			text-align: left;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		thead {
 | 
			
		||||
			border-bottom: solid (_size(border-width) * 2);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		tfoot {
 | 
			
		||||
			border-top: solid (_size(border-width) * 2);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.alt {
 | 
			
		||||
			border-collapse: separate;
 | 
			
		||||
 | 
			
		||||
			tbody {
 | 
			
		||||
				tr {
 | 
			
		||||
					td {
 | 
			
		||||
						border: solid _size(border-width);
 | 
			
		||||
						border-left-width: 0;
 | 
			
		||||
						border-top-width: 0;
 | 
			
		||||
 | 
			
		||||
						&:first-child {
 | 
			
		||||
							border-left-width: _size(border-width);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&:first-child {
 | 
			
		||||
						td {
 | 
			
		||||
							border-top-width: _size(border-width);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			thead {
 | 
			
		||||
				border-bottom: 0;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			tfoot {
 | 
			
		||||
				border-top: 0;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		&.fixed {
 | 
			
		||||
			table-layout: fixed;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@mixin color-table($p: null) {
 | 
			
		||||
		table {
 | 
			
		||||
			tbody {
 | 
			
		||||
				tr {
 | 
			
		||||
					border-color: _palette($p, border);
 | 
			
		||||
 | 
			
		||||
					&:nth-child(2n + 1) {
 | 
			
		||||
						background-color: _palette($p, border-bg);
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					&.alt {
 | 
			
		||||
						background-color: _palette($p, border-bg) !important;
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			th {
 | 
			
		||||
				color: _palette($p, fg-bold);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			thead {
 | 
			
		||||
				border-bottom-color: _palette($p, border);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			tfoot {
 | 
			
		||||
				border-top-color: _palette($p, border);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.alt {
 | 
			
		||||
				tbody {
 | 
			
		||||
					tr {
 | 
			
		||||
						td {
 | 
			
		||||
							border-color: _palette($p, border);
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.uniform {
 | 
			
		||||
				tbody {
 | 
			
		||||
					tr {
 | 
			
		||||
						&:nth-child(2n + 1) {
 | 
			
		||||
							background-color: transparent;
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@include color-table;
 | 
			
		||||
							
								
								
									
										121
									
								
								assets/sass/components/_wrapper.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										121
									
								
								assets/sass/components/_wrapper.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,121 @@
 | 
			
		||||
/*
 | 
			
		||||
	Hugo Story by CaressOfSteel
 | 
			
		||||
	A (modular, highly tweakable) responsive one-page theme for Hugo.
 | 
			
		||||
	Ported from Story by HTML5UP.
 | 
			
		||||
	This Hugo theme is licensed under the Creative Commons Attribution 3.0 License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Wrapper (style1) */
 | 
			
		||||
 | 
			
		||||
	.wrapper.style1 {
 | 
			
		||||
		> .inner {
 | 
			
		||||
			@include padding(_size(padding, default), _size(padding, default) * 0.5);
 | 
			
		||||
			margin: 0 auto;
 | 
			
		||||
			max-width: 100%;
 | 
			
		||||
			width: _size(inner);
 | 
			
		||||
 | 
			
		||||
			&.medium {
 | 
			
		||||
				width: _size(inner) * 0.75;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.small {
 | 
			
		||||
				width: _size(inner) * 0.5;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, xlarge), _size(padding, xlarge) * 0.5);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, large), _size(padding, large));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, medium) * 1.5, _size(padding, medium));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, small) * 1.5, _size(padding, small));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Wrapper (style2) */
 | 
			
		||||
 | 
			
		||||
	.wrapper.style2 {
 | 
			
		||||
		padding: _size(padding, default);
 | 
			
		||||
		background-color: _palette(bg-alt);
 | 
			
		||||
 | 
			
		||||
		> .inner {
 | 
			
		||||
			@include padding(_size(padding, default) * 0.75, _size(padding, default) * 0.5);
 | 
			
		||||
			background-color: _palette(bg);
 | 
			
		||||
			border-radius: _size(border-radius-alt);
 | 
			
		||||
			margin: 0 auto;
 | 
			
		||||
			max-width: 100%;
 | 
			
		||||
			position: relative;
 | 
			
		||||
			width: _size(inner);
 | 
			
		||||
			z-index: 1;
 | 
			
		||||
 | 
			
		||||
			&.medium {
 | 
			
		||||
				width: _size(inner) * 0.75;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			&.small {
 | 
			
		||||
				width: _size(inner) * 0.5;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=xlarge') {
 | 
			
		||||
			padding: _size(padding, xlarge);
 | 
			
		||||
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, xlarge) * 0.75, _size(padding, xlarge) * 0.5);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=large') {
 | 
			
		||||
			padding: _size(padding, large);
 | 
			
		||||
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, large) * 0.75, _size(padding, large) * 0.5);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=medium') {
 | 
			
		||||
			padding: _size(padding, medium) * 0.75;
 | 
			
		||||
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, medium), _size(padding, medium) * 0.75);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		@include breakpoint('<=small') {
 | 
			
		||||
			padding: _size(padding, small) * 0.75;
 | 
			
		||||
 | 
			
		||||
			> .inner {
 | 
			
		||||
				@include padding(_size(padding, small), _size(padding, small) * 0.75);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	#wrapper {
 | 
			
		||||
		> .wrapper.style2 {
 | 
			
		||||
			&.invert {
 | 
			
		||||
				&:not(.color1):not(.color2):not(.color3):not(.color4):not(.color5):not(.color6):not(.color7) {
 | 
			
		||||
					background-color: _palette(invert, bg-alt);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				> .inner {
 | 
			
		||||
					background-color: _palette(invert, bg);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
		Reference in New Issue
	
	Block a user