Adapt paradigm shift to 60/40 layout

This commit is contained in:
2019-09-01 11:44:28 -04:00
commit 34a097dd61
72 changed files with 17506 additions and 0 deletions

View File

@@ -0,0 +1,714 @@
///
/// Paradigm Shift by HTML5 UP
/// html5up.net | @ajlkn
/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
///
/* Wrapper */
@mixin wrapper-pad($pad) {
padding: 0 0 ($pad * 2) 0;
// Sections (all).
section {
margin: ($pad * 1.5) 0 0 0;
> header {
padding: 0 ($pad * 2) 0 ($pad);
width: _size(header-width) + ($pad * 2);
}
> .content {
padding: 0 $pad;
}
> footer {
padding: 0 ($pad * 2);
}
}
// Sections (top level).
> section {
> header {
// Line.
&:before {
height: calc(100% + #{$pad * 2});
left: calc(50vw - #{$pad});
}
// Headings.
h1, h2 {
// Line connector.
&:before {
right: ($pad * -1);
width: ($pad * 0.5);
}
// Terminator.
&:after {
right: ($pad * -0.5);
}
}
}
> .content {
> section {
left: calc(-50vw - #{$pad});
> header {
width: _size(subheader-width) + ($pad * 2);
}
}
}
// Intro.
&.intro {
> header {
// Hack: Chrome's grid implementation screws up absolute element placement within a static child element.
// Set width on all child elements and right-align.
> * {
width: (_size(header-width) - $pad);
}
// Line.
&:before {
margin-left: calc(50vw - #{$pad * 2});
}
@include breakpoint('<=medium') {
> * {
width: 100%;
}
&:before {
margin-left: 0;
}
}
}
}
// Last.
&:last-of-type {
> header {
// Terminator.
&:after {
left: calc(50vw - #{$pad} - 0.25rem + #{_size(line-width) * 0.5});
}
}
}
}
// Copyright.
.copyright {
padding: 0 $pad;
}
}
@mixin wrapper-pad-portrait($pad, $tbFactor: 1) {
// Sections (all).
section {
margin: ($pad * 1.5) 0 0 0;
}
// Sections (top level).
> section {
margin: 0;
> header {
padding: ($pad * $tbFactor) $pad;
}
> .content {
padding: ($pad * $tbFactor) $pad;
> section {
margin: ($pad * $tbFactor) 0;
}
}
> footer {
padding: 0 $pad ($pad * $tbFactor) $pad;
}
// Intro.
&.intro {
> header {
padding: (($pad * 1.25) + 3rem) $pad ($pad * 1.25) $pad;
}
}
}
// Copyright.
.copyright {
padding: 0 $pad $pad $pad;
}
}
#wrapper {
$pad: 5rem;
position: relative;
width: 100vw;
// Background.
&:before {
background-attachment: fixed;
background-color: _palette(accent);
background-image: svg-url('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 920 1750" x="0px" y="0px"> <path style="fill: #{transparentize(_palette(accent-border), 0.75)}" d="M889.72,1137.55l-2.91-0.75l-364.39,282.94l-0.7-0.9l-0.51,0.11l-94.77-451.5l-32.51-15.75l-16.73-8.11l0,0.68 l-1.46,0l0-1.39l-1.89-0.92l-112.41-54.47l-0.29,1.03l-1.41-0.37l0.37-1.31l-34.14-16.54l-98.56-47.76l-0.59,0.81l-1.16-0.88 l0.42-0.57L11.43,766.33l-0.25,0.2l-0.9-1.15l102.87-79.98l0.08-0.1l0.02,0.02l116.68-90.72l-0.18-0.34l1.3-0.66l0.05,0.09 l100.5-78.14l-0.07-0.32l0.65-0.14l42.3-32.89l-0.15-54.54l-0.59,0.29l-0.64-1.31l1.23-0.6l-0.01-4.54l-0.33-122.47l-0.99,0.18 l-0.28-1.43l1.27-0.23l-0.4-147.49l-0.87-0.16l0.28-1.43l0.58,0.1l-0.35-127.48l-0.13-0.06l0.64-1.31L489.97,76.8l0.73,0.19 l-0.04,0.14l132.63,65.11l0.33-0.45l1.16,0.88l-0.16,0.22l114.21,56.07l0.45-0.35l0.72,0.93l47.89,23.51l2.76-1.36l0.56,4.61 l-3.32-1.63L571.52,330.88L375.95,482.93l0.66,239.95l51.12,243.57l222.53,107.83l236.23,60.93l2.27-1.77 M375.8,425.34l17.25-8.47 l36.13-127.75l-53.73,9.66L375.8,425.34z M551,241.05l38.19-52.2l-123.83-22.27l-34.13,120.68l98.99-17.81L551,241.05z M532.3,269.09l151.34-27.22l37.63-29.25l-130.48-23.47L532.3,269.09z M303.38,733.9l-2.36-4.48l-44.18-83.78L182.5,747.25 l40.78,36.46l52.69,47.11L303.38,733.9z M277.18,831.91l56.95,50.93L375.69,920l-0.13-49.23l-71.19-135L277.18,831.91z M303.96,731.86l41.93-148.25l-9.74-46.39L257.8,644.33L303.96,731.86z M304.94,733.73l9.55,18.12l61.05,115.78l-0.39-144.6 l-16.9-80.53l-11.71-55.81L304.94,733.73z M375.21,211.79l0.23,85.51l54.17-9.74l34.29-121.23l-88.87-15.98L375.21,211.79z M430.78,288.83l-17.88,63.21L394.81,416l44.01-21.6l90.15-123.23L430.78,288.83z M287.76,898.62l87.99,42.64l-0.05-19.29 l-91.37-81.71l-7.59-6.78l-14.88,52.59L287.76,898.62z M174.26,843.62l86.26,41.8l15-53.03l-93.89-83.95l-53.34,72.91L174.26,843.62 z M113.18,687.22L12.71,765.33l55.69,26.99l58.56,28.38l53.58-73.24l-34.83-31.14L113.18,687.22z M230.62,595.92l-116.27,90.4 l63.02,56.36l4.03,3.61l74.67-102.08l-7.47-14.17L230.62,595.92z M331.94,517.15l-100.15,77.86l25.25,47.88l78.71-107.59l-1.71-8.14 L331.94,517.15z M333.22,516.15l2.02,9.64l1.66,7.92l34.65-47.37L333.22,516.15z M337.31,535.63l9.43,44.95l26.67-94.3 L337.31,535.63z M347.39,583.66l27.74,132.16l-0.62-228.04L347.39,583.66z M374.7,21.83l0.35,127.02l89.27,16.06l24.61-87 L374.7,21.83z M490.25,78.56l-22.26,78.7l-2.24,7.91l124.39,22.37l10.23-13.99l22.04-30.12L490.25,78.56z M623.74,144.09 l-12.29,16.8l-19.71,26.95l131.07,23.58l14.73-11.45L623.74,144.09z M739,200.67l-13.3,10.34l-0.96,0.74l58.14,10.46L739,200.67z M723.19,212.96l-25.33,19.69l-11.14,8.66l97.03-17.45L723.19,212.96z M782.89,225.5l-98.64,17.74l-107.06,83.23L782.89,225.5z M631.68,282.26l49.48-38.47l-150.1,27l-89.41,122.22l129.1-63.37L631.68,282.26z M565.06,334.05l-125.28,61.5l-45.94,62.8 l-14.96,20.44L565.06,334.05z M425.31,412.87l11.65-15.93l-42.69,20.96l-13.66,48.3l-3.58,12.67L425.31,412.87z M392.51,418.76 l-16.71,8.2l0.01,4.72l0.12,45.68L392.51,418.76z M377.21,941.96l21.37,10.36l24.14,11.7l-45.56-40.74L377.21,941.96z M377.15,921.31l34.83,31.15l12.57,11.24l-47.53-90.14L377.15,921.31z M376.63,730.07l0.38,140.33l48.29,91.59L376.63,730.07z M806.29,1197.48l75.8-58.86l-28.56,11.47l-25.6,10.28l14.96,7.25l-0.64,1.31l-16.16-7.83l-124.76,50.1l40.56,36.27L806.29,1197.48z M522.43,1146.18l58.88,111.66l52.71-21.17l64.61-25.95l-75.11-67.17L522.43,1146.18z M621.92,1142.14l-115.78-103.53l-46.8-12.07 l62.33,118.2l7.06-0.18L621.92,1142.14z M700.14,1210.12l124.19-49.87l-42.89-20.78l-155.8,4.04L700.14,1210.12z M679.7,1295.77 l61.03-47.39l-40.9-36.57l-117.85,47.32l42.09,79.82L679.7,1295.77z M522.48,1417.85l1.83-1.42l98.6-76.56l-42.28-80.19 l-84.25,33.83L522.48,1417.85z M496.08,1292.06l83.87-33.68l-59.14-112.16l-55.04,1.43L496.08,1292.06z M465.46,1146.2l54.58-1.42 l-62.61-118.74l-18.03-4.65l0.36-1.41l16.74,4.32l-27.63-52.4L465.46,1146.2z M458.42,1024.79l45.35,11.7l-74.14-66.29 L458.42,1024.79z M431.46,969.87l75.38,67.41l136.26,35.15L431.46,969.87z M649.76,1075.65l-140.54-36.25l114.83,102.68l154.53-4.01 L649.76,1075.65z M656.92,1077.5l124.84,60.5l51.97-1.35l47.7-1.24L656.92,1077.5z M784.62,1139.38l41.54,20.13l56.45-22.67 L784.62,1139.38z"/> </svg>');
background-position: -50% 10%;
background-repeat: repeat-y;
background-size: 75% auto;
content: '';
display: block;
height: 100%;
left: 0;
position: absolute;
top: 0;
width: 50vw;
z-index: -1;
}
// Sections (all).
section {
display: grid;
grid-template-areas: "header content" "footer content";
grid-template-columns: 50vw 50vw;
grid-template-rows: 1fr;
&:first-child {
margin-top: 0;
}
> header {
grid-area: header;
justify-self: end;
text-align: right;
h2 {
margin: 0 0 (_size(element-margin) * 2.5) 0;
}
h1 + p {
font-family: _font(family-heading);
font-size: 0.8rem;
font-weight: _font(weight-heading-extralight);
letter-spacing: _font(kerning-heading);
line-height: 2.5;
text-transform: uppercase;
}
ul.actions {
justify-content: flex-end;
}
}
> .content {
grid-area: content;
max-width: _size(content-width);
position: relative;
}
> footer {
grid-area: footer;
text-align: right;
ul.actions {
justify-content: flex-end;
}
}
}
// Sections (top level).
> section {
position: relative;
> header {
// Line.
&:before {
background: _palette(accent-border);
content: '';
display: block;
margin-top: 1rem;
position: absolute;
width: _size(line-width);
}
// Headings.
h1, h2 {
position: relative;
// Line connector.
&:before {
background: _palette(accent-border);
content: '';
display: block;
height: _size(line-width);
position: absolute;
top: 1rem;
}
// Terminator.
&:after {
background: _palette(accent-border);
border-radius: 0.5rem;
content: '';
display: block;
height: 0.5rem;
position: absolute;
top: 0.75rem;
width: 0.5rem;
}
}
h1 {
margin-top: -2rem;
&:before {
top: 3rem;
}
&:after {
top: 2.75rem;
}
}
}
> .content {
> section {
position: relative;
&:first-child {
margin-top: 6rem;
}
}
}
// Intro.
&.intro {
align-items: center;
> header {
padding-top: 4rem;
// Hack: Chrome's grid implementation screws up absolute element placement within a static child element.
width: 100%;
// Set width on all child elements and right-align.
> * {
margin-left: auto;
}
// Line.
&:before {
left: auto;
}
}
> .content {
height: 100vh;
max-width: none;
}
}
// Last.
&:last-of-type {
> header {
// Line.
&:before {
height: 100%;
}
// Terminator.
&:after {
background: _palette(accent-border);
border-radius: 0.5rem;
bottom: -1.5rem;
content: '';
display: block;
height: 0.5rem;
position: absolute;
width: 0.5rem;
z-index: 1;
}
}
}
}
// Copyright.
.copyright {
color: _palette(fg-light);
font-size: 1rem;
left: 50vw;
position: relative;
width: 50vw;
a {
color: inherit;
}
}
// Pad.
@include wrapper-pad($pad);
@include breakpoint('<=large') {
$pad: 4rem;
// Pad.
@include wrapper-pad($pad);
}
@include breakpoint('<=medium') {
$pad: 4rem;
padding: 0;
// Background.
&:before {
display: none;
}
// Sections (all).
section {
grid-template-areas: "header" "content" "footer";
grid-template-columns: 1fr;
grid-template-rows: 3fr;
> header {
justify-self: start;
padding: 0;
text-align: left;
width: 100%;
ul.actions {
justify-content: flex-start;
}
}
> .content {
padding: 0;
width: 100%;
overflow-x: hidden;
}
> footer {
padding: 0;
text-align: left;
ul.actions {
justify-content: flex-start;
}
}
}
// Sections (top level).
> section {
margin: 0;
> header {
background-attachment: fixed;
background-color: _palette(accent);
background-image: svg-url('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 920 1750" x="0px" y="0px"> <path style="fill: #{transparentize(_palette(accent-border), 0.5)}" d="M889.72,1137.55l-2.91-0.75l-364.39,282.94l-0.7-0.9l-0.51,0.11l-94.77-451.5l-32.51-15.75l-16.73-8.11l0,0.68 l-1.46,0l0-1.39l-1.89-0.92l-112.41-54.47l-0.29,1.03l-1.41-0.37l0.37-1.31l-34.14-16.54l-98.56-47.76l-0.59,0.81l-1.16-0.88 l0.42-0.57L11.43,766.33l-0.25,0.2l-0.9-1.15l102.87-79.98l0.08-0.1l0.02,0.02l116.68-90.72l-0.18-0.34l1.3-0.66l0.05,0.09 l100.5-78.14l-0.07-0.32l0.65-0.14l42.3-32.89l-0.15-54.54l-0.59,0.29l-0.64-1.31l1.23-0.6l-0.01-4.54l-0.33-122.47l-0.99,0.18 l-0.28-1.43l1.27-0.23l-0.4-147.49l-0.87-0.16l0.28-1.43l0.58,0.1l-0.35-127.48l-0.13-0.06l0.64-1.31L489.97,76.8l0.73,0.19 l-0.04,0.14l132.63,65.11l0.33-0.45l1.16,0.88l-0.16,0.22l114.21,56.07l0.45-0.35l0.72,0.93l47.89,23.51l2.76-1.36l0.56,4.61 l-3.32-1.63L571.52,330.88L375.95,482.93l0.66,239.95l51.12,243.57l222.53,107.83l236.23,60.93l2.27-1.77 M375.8,425.34l17.25-8.47 l36.13-127.75l-53.73,9.66L375.8,425.34z M551,241.05l38.19-52.2l-123.83-22.27l-34.13,120.68l98.99-17.81L551,241.05z M532.3,269.09l151.34-27.22l37.63-29.25l-130.48-23.47L532.3,269.09z M303.38,733.9l-2.36-4.48l-44.18-83.78L182.5,747.25 l40.78,36.46l52.69,47.11L303.38,733.9z M277.18,831.91l56.95,50.93L375.69,920l-0.13-49.23l-71.19-135L277.18,831.91z M303.96,731.86l41.93-148.25l-9.74-46.39L257.8,644.33L303.96,731.86z M304.94,733.73l9.55,18.12l61.05,115.78l-0.39-144.6 l-16.9-80.53l-11.71-55.81L304.94,733.73z M375.21,211.79l0.23,85.51l54.17-9.74l34.29-121.23l-88.87-15.98L375.21,211.79z M430.78,288.83l-17.88,63.21L394.81,416l44.01-21.6l90.15-123.23L430.78,288.83z M287.76,898.62l87.99,42.64l-0.05-19.29 l-91.37-81.71l-7.59-6.78l-14.88,52.59L287.76,898.62z M174.26,843.62l86.26,41.8l15-53.03l-93.89-83.95l-53.34,72.91L174.26,843.62 z M113.18,687.22L12.71,765.33l55.69,26.99l58.56,28.38l53.58-73.24l-34.83-31.14L113.18,687.22z M230.62,595.92l-116.27,90.4 l63.02,56.36l4.03,3.61l74.67-102.08l-7.47-14.17L230.62,595.92z M331.94,517.15l-100.15,77.86l25.25,47.88l78.71-107.59l-1.71-8.14 L331.94,517.15z M333.22,516.15l2.02,9.64l1.66,7.92l34.65-47.37L333.22,516.15z M337.31,535.63l9.43,44.95l26.67-94.3 L337.31,535.63z M347.39,583.66l27.74,132.16l-0.62-228.04L347.39,583.66z M374.7,21.83l0.35,127.02l89.27,16.06l24.61-87 L374.7,21.83z M490.25,78.56l-22.26,78.7l-2.24,7.91l124.39,22.37l10.23-13.99l22.04-30.12L490.25,78.56z M623.74,144.09 l-12.29,16.8l-19.71,26.95l131.07,23.58l14.73-11.45L623.74,144.09z M739,200.67l-13.3,10.34l-0.96,0.74l58.14,10.46L739,200.67z M723.19,212.96l-25.33,19.69l-11.14,8.66l97.03-17.45L723.19,212.96z M782.89,225.5l-98.64,17.74l-107.06,83.23L782.89,225.5z M631.68,282.26l49.48-38.47l-150.1,27l-89.41,122.22l129.1-63.37L631.68,282.26z M565.06,334.05l-125.28,61.5l-45.94,62.8 l-14.96,20.44L565.06,334.05z M425.31,412.87l11.65-15.93l-42.69,20.96l-13.66,48.3l-3.58,12.67L425.31,412.87z M392.51,418.76 l-16.71,8.2l0.01,4.72l0.12,45.68L392.51,418.76z M377.21,941.96l21.37,10.36l24.14,11.7l-45.56-40.74L377.21,941.96z M377.15,921.31l34.83,31.15l12.57,11.24l-47.53-90.14L377.15,921.31z M376.63,730.07l0.38,140.33l48.29,91.59L376.63,730.07z M806.29,1197.48l75.8-58.86l-28.56,11.47l-25.6,10.28l14.96,7.25l-0.64,1.31l-16.16-7.83l-124.76,50.1l40.56,36.27L806.29,1197.48z M522.43,1146.18l58.88,111.66l52.71-21.17l64.61-25.95l-75.11-67.17L522.43,1146.18z M621.92,1142.14l-115.78-103.53l-46.8-12.07 l62.33,118.2l7.06-0.18L621.92,1142.14z M700.14,1210.12l124.19-49.87l-42.89-20.78l-155.8,4.04L700.14,1210.12z M679.7,1295.77 l61.03-47.39l-40.9-36.57l-117.85,47.32l42.09,79.82L679.7,1295.77z M522.48,1417.85l1.83-1.42l98.6-76.56l-42.28-80.19 l-84.25,33.83L522.48,1417.85z M496.08,1292.06l83.87-33.68l-59.14-112.16l-55.04,1.43L496.08,1292.06z M465.46,1146.2l54.58-1.42 l-62.61-118.74l-18.03-4.65l0.36-1.41l16.74,4.32l-27.63-52.4L465.46,1146.2z M458.42,1024.79l45.35,11.7l-74.14-66.29 L458.42,1024.79z M431.46,969.87l75.38,67.41l136.26,35.15L431.46,969.87z M649.76,1075.65l-140.54-36.25l114.83,102.68l154.53-4.01 L649.76,1075.65z M656.92,1077.5l124.84,60.5l51.97-1.35l47.7-1.24L656.92,1077.5z M784.62,1139.38l41.54,20.13l56.45-22.67 L784.62,1139.38z"/> </svg>');
background-position: 25% 50%;
background-repeat: repeat-y;
background-size: 40rem auto;
> * {
max-width: 25rem;
}
> :last-child {
margin-bottom: 0;
}
// Line.
&:before {
display: none;
}
// Headings.
h1, h2 {
// Line connector.
&:before {
display: none;
}
// Terminator.
&:after {
display: none;
}
}
}
> .content {
> :last-child {
margin-bottom: 0;
}
> section {
left: 0;
&:first-child {
margin-top: 0;
}
> header {
width: 100%;
}
&:last-child {
margin-bottom: 0;
}
}
}
> footer {
> :last-child {
margin-bottom: 0;
}
}
// Intro.
&.intro {
margin-bottom: 0;
> header {
margin-bottom: 0;
ul.actions {
display: none;
}
// Hack: Undo Chrome grid hack.
> * {
margin-left: 0;
margin-right: 0;
width: 100%;
}
> ul.actions {
margin-left: (_size(element-margin) * -0.5);
}
&:before {
margin-left: 0;
}
}
}
// Last.
&:last-of-type {
> header {
// Terminator.
&:after {
display: none;
}
}
}
}
// Copyright.
.copyright {
left: 0;
width: 100%;
}
// Pad.
@include wrapper-pad-portrait($pad);
}
@include breakpoint('<=small') {
$pad: 2rem;
// Pad.
@include wrapper-pad-portrait($pad, 1.5);
}
@include breakpoint('<=xxsmall') {
$pad: 1.5rem;
// Pad.
@include wrapper-pad-portrait($pad, 1.5);
}
}
// Mobile.
body.is-mobile {
#wrapper {
// Background.
&:before {
background-attachment: scroll;
background-position: 50% -3%;
background-repeat: repeat-y;
background-size: 150% auto;
}
// Sections (top level).
> section {
> header {
background-attachment: scroll;
background-position: 25% 50%;
}
// Intro.
&.intro {
> header {
background-position: 25% 23%;
}
}
}
}
}
// Preload.
#wrapper {
// Background.
&:before {
transition: opacity 1s ease;
body.is-preload & {
opacity: 0;
}
}
// Sections (top level).
> section {
// Intro.
&.intro {
transition: opacity 1s ease;
opacity: 1;
> header {
transition: transform 1s ease;
}
> .content {
transition: transform 1s ease;
}
body.is-preload & {
opacity: 0;
> header {
transform: translateY(1rem);
}
> .content {
transform: translateY(-1rem);
}
}
@include breakpoint('<=large') {
> header {
> * {
transition: transform 1s ease, opacity 1s ease;
}
}
body.is-preload & {
> header {
transform: none;
> * {
transform: translate(-0.5rem);
opacity: 0;
}
}
> .content {
transform: none;
}
}
}
}
}
}
// IE.
body.is-ie {
#wrapper {
$pad: 5rem;
// Sections (all).
section {
display: flex;
flex-wrap: wrap;
> header {
width: 50%;
}
> .content {
width: 50%;
}
> footer {
width: 50%;
text-align: left;
margin-left: 50%;
padding: $pad;
}
}
// Sections (top level).
> section {
> .content {
> section {
width: 100vw;
}
}
}
@include breakpoint('<=large') {
$pad: 4rem;
// Sections (all).
section {
> footer {
padding: $pad;
}
}
}
}
}