518 lines
13 KiB
SCSS
518 lines
13 KiB
SCSS
.about {
|
|
/*
|
|
** Introduction
|
|
*/
|
|
&__introduction {
|
|
:global(picture) {
|
|
overflow: hidden;
|
|
|
|
:global(img) {
|
|
display: block;
|
|
width: 100%;
|
|
height: auto;
|
|
}
|
|
}
|
|
|
|
// First photo
|
|
.photo-first {
|
|
--rotate: -3deg;
|
|
$offset: 32px;
|
|
grid-column: 1 / -2;
|
|
grid-row: 1;
|
|
margin-left: -$offset;
|
|
transform: rotate(var(--rotate)) translateZ(0);
|
|
|
|
@include bp (sm) {
|
|
grid-column: 2 / -6;
|
|
}
|
|
@include bp (md) {
|
|
grid-column: 4 / span 12;
|
|
margin-left: 0;
|
|
}
|
|
|
|
:global(picture) {
|
|
border-radius: clamp(8px, 1vw, 16px);
|
|
}
|
|
|
|
figcaption {
|
|
width: 75%;
|
|
max-width: 250px;
|
|
margin-top: 12px;
|
|
margin-left: $offset;
|
|
color: rgba($color-tertiary, 0.5);
|
|
|
|
@include bp (mob-lg) {
|
|
max-width: 400px;
|
|
}
|
|
@include bp (sm) {
|
|
width: 100%;
|
|
max-width: none;
|
|
margin-left: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Portrait
|
|
.photo-us {
|
|
position: relative;
|
|
grid-row: 1;
|
|
z-index: 2;
|
|
grid-column: 6 / -1;
|
|
margin-top: clamp(56px, 12vw, 120px);
|
|
|
|
@include bp (sm) {
|
|
grid-column: 18 / -1;
|
|
}
|
|
@include bp (md) {
|
|
grid-column: 16 / span 4;
|
|
margin-top: clamp(56px, 7vw, 112px);
|
|
}
|
|
|
|
:global(picture) {
|
|
overflow: hidden;
|
|
border-radius: clamp(6px, 1vw, 12px);
|
|
transform: translate3d(clamp(32px, 3vw, 56px), 0, 0);
|
|
|
|
@include bp (md) {
|
|
transform: translate3d(calc(-1 * clamp(32px, 3vw, 56px)), 0, 0);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Text
|
|
.text {
|
|
grid-column: 1 / -1;
|
|
grid-row: 3;
|
|
color: $color-tertiary;
|
|
margin-top: 48px;
|
|
|
|
@include bp (sm) {
|
|
margin-top: 96px;
|
|
grid-column: 3 / -3;
|
|
}
|
|
@include bp (md) {
|
|
grid-column: 17 / span 7;
|
|
// max-width: 420px;
|
|
margin-top: calc(-1 * clamp(80px, 8vw, 120px));
|
|
}
|
|
|
|
:global(img) {
|
|
display: inline-block;
|
|
width: 20px;
|
|
height: auto;
|
|
margin-right: 4px;
|
|
margin-left: 8px;
|
|
margin-bottom: 3px;
|
|
border-radius: 100%;
|
|
}
|
|
:global(a) {
|
|
display: inline-block;
|
|
color: currentColor;
|
|
text-decoration: none;
|
|
|
|
&:hover {
|
|
:global(strong) {
|
|
color: $color-secondary-light;
|
|
}
|
|
}
|
|
}
|
|
:global(strong) {
|
|
font-weight: normal;
|
|
padding-bottom: 2px;
|
|
background-image: linear-gradient(rgba($color-tertiary, 0.3), rgba($color-tertiary, 0.3));
|
|
background-position: 0 100%;
|
|
background-size: 100% 1px;
|
|
background-repeat: no-repeat;
|
|
transition: color 0.4s var(--ease-quart);
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
** Purpose
|
|
*/
|
|
&__purpose {
|
|
margin-top: 72px;
|
|
text-align: center;
|
|
|
|
@include bp (sm) {
|
|
margin-top: 120px;
|
|
}
|
|
|
|
.container {
|
|
grid-column: 2 / -2;
|
|
position: relative;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
height: calc(var(--vh) * 0.9);
|
|
max-height: 720px;
|
|
color: #fff;
|
|
padding: 0 8%;
|
|
|
|
@include bp (sm) {
|
|
padding: 0 18%;
|
|
max-height: 1200px;
|
|
}
|
|
}
|
|
|
|
// Text
|
|
.text {
|
|
opacity: 0.2;
|
|
max-width: 1024px;
|
|
transition: opacity 3s var(--ease-quart);
|
|
|
|
:global(strong) {
|
|
font-weight: inherit;
|
|
transition: color 3s var(--ease-quart);
|
|
}
|
|
}
|
|
|
|
// Background
|
|
.background {
|
|
position: absolute;
|
|
z-index: -1;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow: hidden;
|
|
opacity: 0;
|
|
background-color: $color-primary-tertiary20;
|
|
border-radius: 0px;
|
|
transform: scale(1.15) translateZ(0);
|
|
transition-property: opacity, transform, border-radius;
|
|
transition-delay: 0.25s;
|
|
|
|
&, &__illustration img {
|
|
transition-duration: 2.5s;
|
|
transition-timing-function: var(--ease-quart);
|
|
}
|
|
|
|
// Illustration
|
|
&__illustration {
|
|
position: relative;
|
|
width: 100%;
|
|
height: 100%;
|
|
opacity: 0.75;
|
|
$mask: linear-gradient(180deg, #000 0%, rgba(0,0,0,0) 62.5%);
|
|
-webkit-mask-image: $mask;
|
|
mask-image: $mask;
|
|
user-select: none;
|
|
pointer-events: none;
|
|
|
|
img {
|
|
position: absolute;
|
|
bottom: 60%;
|
|
left: 0;
|
|
display: block;
|
|
width: 100%;
|
|
height: auto;
|
|
opacity: 0;
|
|
transition-property: opacity;
|
|
transition-delay: 0.6s;
|
|
|
|
@include bp (md) {
|
|
bottom: 50%;
|
|
}
|
|
@include bp (sd) {
|
|
bottom: 40%;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
// Visible state
|
|
&:global(.is-visible) {
|
|
.text {
|
|
opacity: 1;
|
|
|
|
:global(strong) {
|
|
color: darken($color-secondary-light, 4);
|
|
}
|
|
}
|
|
.background {
|
|
opacity: 1;
|
|
transform: scale(1) translateZ(0);
|
|
border-radius: 8px;
|
|
|
|
@include bp (sm) {
|
|
border-radius: 16px;
|
|
}
|
|
|
|
&__illustration img {
|
|
opacity: 1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
** Process
|
|
*/
|
|
&__process {
|
|
position: relative;
|
|
z-index: 2;
|
|
margin-top: 72px;
|
|
|
|
@include bp (sm) {
|
|
margin: 128px 0 0;
|
|
}
|
|
|
|
.title {
|
|
grid-column: 1 / -1;
|
|
max-width: 400px;
|
|
margin: 0 auto 48px;
|
|
padding: 0 32px;
|
|
text-align: center;
|
|
|
|
@include bp (sm) {
|
|
grid-column: 1 / -1;
|
|
margin-bottom: 80px;
|
|
padding: 0 16px;
|
|
}
|
|
|
|
h2 {
|
|
margin-bottom: 16px;
|
|
color: $color-secondary;
|
|
|
|
@include bp (sm) {
|
|
margin-bottom: 24px;
|
|
}
|
|
}
|
|
p {
|
|
color: $color-tertiary;
|
|
font-weight: 300;
|
|
}
|
|
}
|
|
|
|
// Steps grid
|
|
.steps {
|
|
--card-offset: 16px;
|
|
--card-margin: 40px;
|
|
grid-column: 1 / -1;
|
|
|
|
@include bp (sm) {
|
|
grid-column: 4 / -4;
|
|
padding-bottom: calc(var(--cards-amount) * var(--card-offset));
|
|
}
|
|
|
|
& > :global(*) {
|
|
grid-column: 1 / -1;
|
|
position: sticky;
|
|
top: var(--card-margin);
|
|
transform-origin: center top;
|
|
padding-top: calc(var(--index) * var(--card-offset));
|
|
padding-bottom: var(--card-margin);
|
|
margin-bottom: calc(-1 * var(--index) * var(--card-offset));
|
|
will-change: transform;
|
|
}
|
|
}
|
|
|
|
// Intention
|
|
.intention {
|
|
grid-column: 1 / -1;
|
|
position: relative;
|
|
z-index: 2;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
min-height: min(45vw, 720px);
|
|
padding: 56px 32px;
|
|
border-radius: 12px;
|
|
background: $color-primary-darker;
|
|
color: $color-tertiary;
|
|
text-align: center;
|
|
|
|
@include bp (sm) {
|
|
--columns: 18;
|
|
grid-column: 4 / -4;
|
|
border-radius: 16px;
|
|
}
|
|
|
|
&__content {
|
|
width: clamp(250px, 75%, 562px);
|
|
margin: 0 auto;
|
|
}
|
|
|
|
:global(.globe) {
|
|
margin-bottom: 32px;
|
|
|
|
@include bp (sm) {
|
|
margin-bottom: 40px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
** Photos grid
|
|
*/
|
|
&__photos {
|
|
position: relative;
|
|
z-index: 1;
|
|
margin-top: -64px;
|
|
|
|
@include bp (sm) {
|
|
margin-top: -120px;
|
|
}
|
|
|
|
.container-wide {
|
|
overflow: hidden;
|
|
|
|
@include bp (sm, max) {
|
|
width: 100%;
|
|
}
|
|
}
|
|
|
|
.photos-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, 1fr);
|
|
gap: 1.75vw;
|
|
margin: -5% -5% 0;
|
|
transform: rotate(-6deg) translateY(var(--parallax-y)) translateZ(0);
|
|
transition: transform 0.8s var(--ease-quart);
|
|
|
|
@include bp (sm) {
|
|
grid-template-columns: repeat(7, 1fr);
|
|
gap: 12px;
|
|
margin: -5% -5% 0;
|
|
}
|
|
}
|
|
|
|
:global(picture) {
|
|
width: 100%;
|
|
height: auto;
|
|
border-radius: 6px;
|
|
overflow: hidden;
|
|
cursor: pointer;
|
|
transition: opacity 1s var(--ease-quart);
|
|
|
|
@include bp (sm) {
|
|
border-radius: 8px;
|
|
}
|
|
|
|
:global(img) {
|
|
display: block;
|
|
width: 100%;
|
|
height: auto;
|
|
user-select: none;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
|
|
$opacity-off: 0.2;
|
|
|
|
// States
|
|
:global(.is-disabled) {
|
|
opacity: $opacity-off;
|
|
}
|
|
:global(.is-hovered picture) {
|
|
opacity: 1;
|
|
}
|
|
:global(.is-hovered picture:not(.is-disabled)) {
|
|
opacity: $opacity-off;
|
|
}
|
|
|
|
// Mask
|
|
&:before {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
z-index: 2;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: linear-gradient(0deg, rgba($color-primary, 1) 0%, rgba($color-primary, 0) 25%, rgba($color-primary, 0) 75%, rgba($color-primary, 1) 100%);
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
** Bottom
|
|
*/
|
|
&__bottom {
|
|
@include bp (sm) {
|
|
margin-top: calc(-1 * clamp(160px, 14vw, 240px));
|
|
}
|
|
|
|
// Modules
|
|
.grid-modules {
|
|
grid-column: 1 / -1;
|
|
|
|
@include bp (sm) {
|
|
grid-column: 2 / -2;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Interest
|
|
&__interest {
|
|
position: relative;
|
|
z-index: 2;
|
|
display: block;
|
|
margin-bottom: 20px;
|
|
padding: 72px 32px;
|
|
background: $color-primary-tertiary20;
|
|
border-radius: 12px;
|
|
box-shadow: 0px -24px 120px rgba($color-primary-darker, 0.8);
|
|
|
|
@include bp (sm) {
|
|
display: grid;
|
|
grid-column: 2 / -2;
|
|
margin-bottom: 48px;
|
|
padding: clamp(72px, 8vw, 160px) 0;
|
|
}
|
|
|
|
h2 {
|
|
grid-column: 1 / -1;
|
|
margin-bottom: 64px;
|
|
color: #fff;
|
|
text-align: center;
|
|
|
|
@include bp (sm) {
|
|
margin-bottom: 104px;
|
|
}
|
|
}
|
|
.blocks {
|
|
@include bp (sm) {
|
|
grid-column: 4 / -4;
|
|
display: grid;
|
|
grid-template-columns: repeat(2, 1fr);
|
|
column-gap: 11.5%;
|
|
}
|
|
}
|
|
.block {
|
|
text-align: center;
|
|
|
|
&:not(:last-child) {
|
|
margin-bottom: 64px;
|
|
|
|
@include bp (sm) {
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
|
|
h3 {
|
|
margin-bottom: 12px;
|
|
color: $color-secondary-light;
|
|
font-weight: 600;
|
|
}
|
|
p {
|
|
margin-bottom: 24px;
|
|
font-weight: 300;
|
|
|
|
@include bp (sm) {
|
|
margin-bottom: 32px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |