You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
849 lines
13 KiB
SCSS
849 lines
13 KiB
SCSS
@import "fonts";
|
|
|
|
$col-white: #fff;
|
|
$col-bg: #0b1b2e;
|
|
$col-accent: #845368;
|
|
$col-secondary: #8493A4;
|
|
|
|
$size-mobile: 950px;
|
|
|
|
/* Global */
|
|
|
|
*,
|
|
*:before,
|
|
*:after {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
html { scroll-behavior: smooth }
|
|
|
|
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
background-color: $col-bg;
|
|
color: $col-white;
|
|
|
|
line-height: 1.5;
|
|
font-size: 16px;
|
|
font-family: "moderat", sans-serif;
|
|
}
|
|
|
|
.wrap {
|
|
max-width: 90rem;
|
|
margin: 0 auto;
|
|
padding: 0 2rem;
|
|
}
|
|
|
|
.narrow {
|
|
max-width: 50rem;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.text-center {
|
|
text-align: center;
|
|
}
|
|
|
|
img {
|
|
display: block;
|
|
max-width: 100%;
|
|
}
|
|
|
|
h1, h2, h3, h4, h5, h6 {
|
|
text-align: center;
|
|
}
|
|
h1 {
|
|
font-size: 2.178rem;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.text-bold {
|
|
font-weight: bold;
|
|
}
|
|
|
|
section {
|
|
padding: 3rem 0;
|
|
}
|
|
|
|
.button {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
color: $col-white;
|
|
text-decoration: none;
|
|
font-size: 1.25rem;
|
|
font-weight: bold;
|
|
border-radius: 2.5rem;
|
|
height: 5rem;
|
|
margin: 0 auto;
|
|
border: .15rem solid $col-accent;
|
|
width: 100%;
|
|
max-width: 30em;
|
|
|
|
&:hover {
|
|
background-color: $col-accent;
|
|
}
|
|
}
|
|
|
|
|
|
/* Specific */
|
|
|
|
body.noscroll {
|
|
overflow: hidden;
|
|
}
|
|
|
|
.intro {
|
|
min-height: 100vh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
|
|
header {
|
|
position: relative;
|
|
border-bottom: 1px solid #5D6E81;
|
|
margin-bottom: 4em;
|
|
height: 5rem;
|
|
|
|
.wrap {
|
|
height: 100%;
|
|
}
|
|
|
|
.border-container {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: stretch;
|
|
justify-content: space-between;
|
|
gap: 2rem;
|
|
border-width: 0 1px;
|
|
border-style: solid;
|
|
border-color: #5D6E81;
|
|
padding-left: 2rem;
|
|
}
|
|
|
|
.logo {
|
|
display: flex;
|
|
align-items: center;
|
|
flex-shrink: 0;
|
|
height: 100%;
|
|
|
|
img {
|
|
height: 2rem;
|
|
}
|
|
}
|
|
|
|
nav {
|
|
display: flex;
|
|
|
|
&.visible {
|
|
display: flex;
|
|
}
|
|
|
|
a {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
padding: 0 1.5em;
|
|
overflow: hidden;
|
|
font-weight: bold;
|
|
text-decoration: none;
|
|
text-align: center;
|
|
color: #fff;
|
|
border-left: 1px solid #5D6E81;
|
|
|
|
&:hover {
|
|
color: lighten($col-accent, 25%);
|
|
}
|
|
}
|
|
}
|
|
|
|
.menu-button {
|
|
display: none;
|
|
align-items: center;
|
|
flex-shrink: 0;
|
|
padding: 0 1.5em;
|
|
cursor: pointer;
|
|
border-left: 1px solid #5D6E81;
|
|
|
|
.image {
|
|
height: 2rem;
|
|
width: 2rem;
|
|
background-image: url("/static/img/menu-closed.svg");
|
|
background-size: contain;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
|
|
&.open {
|
|
background-image: url("/static/img/menu-open.svg");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
section {
|
|
flex: 1;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
|
|
.grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
grid-column-gap: 2rem;
|
|
grid-row-gap: 2rem;
|
|
align-items: center;
|
|
}
|
|
|
|
.text {
|
|
max-width: 25rem;
|
|
margin: 0 auto;
|
|
text-align: center;
|
|
|
|
.title {
|
|
font-weight: bold;
|
|
font-size: 1.953rem;
|
|
}
|
|
|
|
p {
|
|
font-size: 1.25rem;
|
|
}
|
|
}
|
|
|
|
.player {
|
|
cursor: pointer;
|
|
|
|
video {
|
|
width: 100%;
|
|
border-radius: 2rem;
|
|
box-shadow: 0 0 42px 0 rgba(194,66,66,0.75);
|
|
transition: box-shadow 1s ease;
|
|
}
|
|
}
|
|
|
|
.video-list {
|
|
display: flex;
|
|
justify-content: center;
|
|
flex-wrap: wrap;
|
|
gap: 1rem;
|
|
|
|
img {
|
|
display: block;
|
|
border-radius: 1rem;
|
|
cursor: pointer;
|
|
flex: 1;
|
|
max-width: 45%;
|
|
width: 100%;
|
|
|
|
&.active {
|
|
outline: .15rem solid $col-accent;
|
|
}
|
|
}
|
|
}
|
|
|
|
.button {
|
|
width: 100%;
|
|
max-width: 80%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.facts {
|
|
text-align: center;
|
|
margin-top: 2rem;
|
|
padding-top: 5rem;
|
|
background-image: url("/static/img/bg/1.svg");
|
|
background-repeat: no-repeat;
|
|
background-position: top center;
|
|
background-size: 100% auto;
|
|
|
|
.title {
|
|
display: block;
|
|
position: relative;
|
|
font-size: 1.953rem;
|
|
font-weight: bold;
|
|
padding-bottom: 1em;
|
|
margin-bottom: 1em;
|
|
|
|
&:after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
left: 50%;
|
|
bottom: 0;
|
|
width: 5rem;
|
|
height: 1px;
|
|
transform: translatex(-2.5rem);
|
|
background-color: #E6F3FA;
|
|
}
|
|
}
|
|
|
|
.fact-list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: 2rem;
|
|
padding: 5rem 0;
|
|
|
|
.item {
|
|
position: relative;
|
|
display: flex;
|
|
align-items: center;
|
|
flex-direction: column;
|
|
max-width: 13rem;
|
|
padding: 1em 0;
|
|
|
|
img {
|
|
height: 5em;
|
|
}
|
|
|
|
.heading {
|
|
font-weight: bold;
|
|
margin: 2em 0 1em 0;
|
|
}
|
|
|
|
p {
|
|
margin: 0;
|
|
}
|
|
|
|
&:after {
|
|
content: "";
|
|
display: block;
|
|
width: 75%;
|
|
height: 1px;
|
|
background-color: $col-secondary;
|
|
margin-top: 4em;
|
|
}
|
|
&:last-child:after {
|
|
display: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.checklist {
|
|
display: flex;
|
|
justify-content: flex-start;
|
|
gap: 1em;
|
|
margin-top: 2rem;
|
|
overflow-x: scroll;
|
|
scrollbar-width: none;
|
|
|
|
// `overflow-y: visible` does not work
|
|
padding: 1rem;
|
|
|
|
.card {
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex-shrink: 0;
|
|
width: 15em;
|
|
border: .15em solid $col-accent;
|
|
border-radius: 1.5rem;
|
|
padding: 1.5em;
|
|
background-color: $col-bg;
|
|
text-align: left;
|
|
user-select: none;
|
|
|
|
img {
|
|
width: 100%;
|
|
border-radius: 1rem;
|
|
}
|
|
|
|
&>.title {
|
|
position: relative;
|
|
font-weight: bold;
|
|
font-size: 1.138rem;
|
|
padding: 1em 0;
|
|
|
|
&:after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
left: 0;
|
|
bottom: 0;
|
|
width: 25%;
|
|
height: 1px;
|
|
background-color: #fff;
|
|
}
|
|
}
|
|
|
|
.download {
|
|
margin-top: 1rem;
|
|
cursor: pointer;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
margin-top: auto;
|
|
|
|
&:hover {
|
|
color: lighten($col-accent, 25%);
|
|
}
|
|
|
|
.title {
|
|
display: flex;
|
|
align-items: baseline;
|
|
font-size: 1.25em;
|
|
font-weight: bold;
|
|
margin-bottom: .25em;
|
|
|
|
&:after {
|
|
content: url("/static/img/download-icon.svg");
|
|
display: inline-block;
|
|
height: 1em;
|
|
margin-left: .5rem;
|
|
}
|
|
}
|
|
.meta {
|
|
color: $col-secondary;
|
|
font-size: .85em;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.stories {
|
|
padding-top: 5rem; // To clear the image
|
|
background-image: url("/static/img/bg/2.svg");
|
|
background-size: 90rem auto;
|
|
background-position: center top;
|
|
background-repeat: no-repeat;
|
|
|
|
&:before {
|
|
content: "";
|
|
display: block;
|
|
width: 100%;
|
|
height: 5rem;
|
|
background-image: url("/static/img/stories.svg");
|
|
background-repeat: no-repeat;
|
|
background-position: center;
|
|
background-size: contain;
|
|
}
|
|
|
|
h1 {
|
|
padding-top: 0;
|
|
}
|
|
|
|
.stories-masonry {
|
|
// This is supposed to be a masonry layout,
|
|
// but works better this way for now.
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 2em;
|
|
margin: 5rem auto;
|
|
|
|
&>div {
|
|
padding: 2.5em;
|
|
border: 1pt solid $col-accent;
|
|
border-radius: 1.5rem;
|
|
background-color: $col-bg;
|
|
|
|
h2 {
|
|
position: relative;
|
|
text-align: left;
|
|
padding-bottom: 1rem;
|
|
margin-top: 0;
|
|
|
|
&:after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
left: 0;
|
|
bottom: 0;
|
|
width: 2em;
|
|
height: 1pt;
|
|
background-color: $col-secondary;
|
|
}
|
|
}
|
|
|
|
h3 {
|
|
text-align: left;
|
|
margin-top: 2em;
|
|
}
|
|
|
|
p:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
.stories-list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
gap: 1rem;
|
|
margin: 4rem auto;
|
|
|
|
.story {
|
|
flex: 1;
|
|
display: flex;
|
|
flex-direction: column;
|
|
max-width: 40rem;
|
|
border: 1pt solid $col-secondary;
|
|
border-radius: 1.5rem;
|
|
padding: 1.5em;
|
|
color: inherit;
|
|
background-color: $col-bg;
|
|
text-decoration: none;
|
|
transition: all .1s ease-out;
|
|
|
|
&:hover {
|
|
background-color: $col-accent;
|
|
border-color: $col-accent;
|
|
|
|
.title {
|
|
color: $col-white;
|
|
}
|
|
|
|
.readmore:before {
|
|
background-color: $col-white;
|
|
}
|
|
}
|
|
|
|
.title {
|
|
color: #A4A4A4;
|
|
font-weight: bold;
|
|
font-size: 1.25em;
|
|
}
|
|
|
|
.readmore {
|
|
position: relative;
|
|
font-size: 1.25em;
|
|
font-weight: bold;
|
|
padding-top: 1em;
|
|
margin-top: auto;
|
|
|
|
&:before {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
left: 0;
|
|
top: .5em;
|
|
width: 3em;
|
|
height: 1pt;
|
|
background-color: $col-secondary;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.contact-list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
margin: 5rem 0;
|
|
|
|
.contact {
|
|
padding: 3rem 0;
|
|
border-bottom: 1px solid $col-secondary;
|
|
flex: 1;
|
|
|
|
&:last-child {
|
|
border: none;
|
|
}
|
|
|
|
.title {
|
|
font-weight: bold;
|
|
font-size: 1.25em;
|
|
}
|
|
|
|
.meta {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 1rem;
|
|
font-weight: bold;
|
|
|
|
&>div {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 1rem;
|
|
|
|
&:before {
|
|
content: "";
|
|
height: 2rem;
|
|
width: 2rem;
|
|
border: 1px solid $col-secondary;
|
|
border-radius: .5rem;
|
|
background-size: 50%;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
}
|
|
}
|
|
|
|
.phone:before {
|
|
background-image: url("/static/img/icons/phone.svg");
|
|
}
|
|
.website:before {
|
|
background-image: url("/static/img/icons/web.svg");
|
|
}
|
|
.email:before {
|
|
background-image: url("/static/img/icons/email.svg");
|
|
}
|
|
|
|
a {
|
|
text-decoration: none;
|
|
color: inherit;
|
|
|
|
&:hover {
|
|
color: lighten($col-accent, 25%);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.partners {
|
|
display: flex;
|
|
justify-content: center;
|
|
flex-wrap: wrap;
|
|
gap: 7rem;
|
|
|
|
img {
|
|
width: clamp(20rem, 80vw, 0);
|
|
}
|
|
}
|
|
|
|
.faq-list {
|
|
width: 100%;
|
|
margin-top: 5em;
|
|
|
|
.faq {
|
|
position: relative;
|
|
display: grid;
|
|
grid-template-columns: 1em auto;
|
|
column-gap: 1em;
|
|
width: 100%;
|
|
padding: 2em;
|
|
cursor: pointer;
|
|
|
|
background-color: inherit;
|
|
transition: all .5s ease;
|
|
|
|
// Hide bottom border.
|
|
// It is -2px to avoid float rounding errors
|
|
// which cause the border to appear in some widths.
|
|
margin-bottom: -2px;
|
|
|
|
&:before,
|
|
&:last-child:after {
|
|
content: "";
|
|
position: absolute;
|
|
left: 10%;
|
|
width: 80%;
|
|
border-width: 1px 0 0 0;
|
|
border-style: solid;
|
|
border-color: $col-secondary;
|
|
}
|
|
&:before { top: 0 }
|
|
&:last-child:after { bottom: 0 }
|
|
|
|
&.active {
|
|
background-color: $col-accent;
|
|
z-index: 1;
|
|
|
|
&:before { border: 0 }
|
|
|
|
.answer {
|
|
height: auto;
|
|
margin-top: 1em;
|
|
opacity: 1;
|
|
}
|
|
|
|
.mark:before {
|
|
content: "\2212";
|
|
}
|
|
}
|
|
|
|
.mark {
|
|
text-align: center;
|
|
|
|
&:before {
|
|
content: "\002B";
|
|
display: block;
|
|
text-align: right;
|
|
color: #fff;
|
|
font-weight: bold;
|
|
font-size: 1.138rem;
|
|
}
|
|
}
|
|
|
|
.question {
|
|
font-size: 1.138rem;
|
|
}
|
|
|
|
.answer {
|
|
height: 0;
|
|
overflow: hidden;
|
|
opacity: 0;
|
|
transition: all .5s ease;
|
|
|
|
a {
|
|
color: lighten($col-bg, 75%);
|
|
}
|
|
|
|
ul {
|
|
margin: 0;
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
footer {
|
|
$logo-radius: 4.5em;
|
|
position: relative;
|
|
text-align: center;
|
|
font-size: 1.138rem;
|
|
padding: $logo-radius+1 2em 2em 2em;
|
|
margin-top: $logo-radius+6;
|
|
|
|
border-top: 1px solid $col-secondary;
|
|
|
|
&:before {
|
|
content: "";
|
|
position: absolute;
|
|
top: -$logo-radius;
|
|
left: 50%;
|
|
transform: translatex(-$logo-radius);
|
|
height: $logo-radius*2;
|
|
width: $logo-radius*2;
|
|
border: 1px solid $col-secondary;
|
|
border-radius: 50%;
|
|
background-image: url("/static/img/pedf-logo-white.svg");
|
|
background-position: center;
|
|
background-size: 75%;
|
|
background-repeat: no-repeat;
|
|
background-color: $col-bg;
|
|
}
|
|
}
|
|
|
|
@media only screen and (min-width: $size-mobile) {
|
|
|
|
h1 {
|
|
padding-top: 5rem;
|
|
}
|
|
|
|
.intro section {
|
|
|
|
.grid {
|
|
grid-template-columns: 2fr 3fr;
|
|
}
|
|
|
|
.text {
|
|
text-align: left;
|
|
line-height: 1.25;
|
|
margin: 0; // Disable centering
|
|
|
|
.title {
|
|
font-size: 2.5rem;
|
|
}
|
|
}
|
|
|
|
.video-list {
|
|
order: 4;
|
|
|
|
img {
|
|
max-width: 10rem;
|
|
}
|
|
}
|
|
|
|
.button {
|
|
margin: 0 auto 0 0; // Align left
|
|
max-width: 70%;
|
|
}
|
|
}
|
|
|
|
.facts {
|
|
|
|
.fact-list {
|
|
flex-direction: row;
|
|
justify-content: center;
|
|
align-items: stretch;
|
|
gap: 3rem;
|
|
|
|
.item {
|
|
border-right: 1px solid $col-secondary;
|
|
justify-content: center;
|
|
padding: 0 3rem 0 0;
|
|
max-width: 16rem;
|
|
|
|
&:after {
|
|
display: none;
|
|
}
|
|
|
|
&:last-child {
|
|
border: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.checklist {
|
|
|
|
.card {
|
|
width: 17em;
|
|
}
|
|
}
|
|
|
|
.stories .stories-list {
|
|
flex-direction: row;
|
|
align-items: stretch;
|
|
}
|
|
|
|
.contact-list {
|
|
flex-direction: row;
|
|
|
|
.contact {
|
|
padding: 0 3rem;
|
|
border-bottom: none;
|
|
border-right: 1px solid $col-secondary;
|
|
}
|
|
}
|
|
|
|
.faq-list .faq {
|
|
&:before,
|
|
&:last-child:after {
|
|
width: 100%;
|
|
left: 0;
|
|
}
|
|
}
|
|
|
|
.checklist {
|
|
justify-content: center;
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-width: $size-mobile) {
|
|
|
|
.intro header {
|
|
|
|
.border-container {
|
|
border-left: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.menu-button {
|
|
display: flex;
|
|
}
|
|
|
|
nav {
|
|
display: none;
|
|
|
|
border: none;
|
|
flex-direction: column;
|
|
position: absolute;
|
|
left: 0;
|
|
top: 100%;
|
|
width: 100%;
|
|
min-height: 100vh;
|
|
margin-top: 1px; // Fix covering border of header
|
|
background-color: $col-bg;
|
|
|
|
a {
|
|
padding: 2em 1rem;
|
|
border: 0;
|
|
font-weight: bold;
|
|
font-size: 1.138rem;
|
|
border-bottom: 1px solid #5D6E81;
|
|
}
|
|
}
|
|
}
|
|
}
|