matrix.org/sass/_index.scss

432 lines
9.8 KiB
SCSS

#frontpage {
h2 {
margin-block: 1.38rem 1rem;
}
#hero {
height: calc(100vh - var(--navbar-height));
background-color: #000;
background-image: url("/assets/frontpage/hero_dancing_lines.svg");
@media (max-width: 767px) {
background-image: url("/assets/frontpage/hero_dancing_lines_mobile.svg");
}
background-size: 100% 100%;
background-repeat: no-repeat;
position: relative;
overflow: hidden;
.hero_content {
height: 88%;
display: flex;
flex-direction: column;
justify-content: center;
h2 {
color: #fff;
font-size: 2.5rem;
font-weight: 700;
max-width: 36rem;
margin: 0 auto;
text-align: center;
@media (max-width: 767px) {
font-size: 2.125rem;
margin: 0 30px;
}
}
img {
width: 200px;
height: 86px;
margin: 0 auto 2rem auto;
}
}
#hero_curve1 {
border-radius: 10% 100%;
background-color: #333;
height: 25vh;
width: 200%;
position: absolute;
bottom: -1vh;
right: -50px;
@media (max-width: 767px) {
height: 15vh;
}
}
#hero_curve2 {
border-radius: 10% 100%;
background-color: #666;
height: 25vh;
width: 200%;
position: absolute;
bottom: -3vh;
right: -50px;
@media (max-width: 767px) {
height: 15vh;
}
}
#hero_curve3 {
border-radius: 10% 100%;
background-color: #aaa;
height: 25vh;
width: 200%;
position: absolute;
bottom: -5vh;
right: -50px;
@media (max-width: 767px) {
height: 15vh;
}
}
#hero_curve4 {
border-radius: 10% 100%;
background-color: #fff;
height: 25vh;
width: 200%;
position: absolute;
bottom: -7vh;
right: -50px;
@media (max-width: 767px) {
height: 15vh;
}
}
}
#use-case-personal {
background: url("/assets/frontpage/personal-bg.svg");
background-size: 100% 100%;
@media (max-width: 59rem) {
background-image: url("/assets/frontpage/personal-bg-mobile.svg");
background-size: 100% 241px;
padding-inline: 1rem;
}
background-repeat: no-repeat;
background-position-y: bottom -20px;
position: relative;
overflow: hidden;
padding-inline: 2rem;
padding-bottom: 175px;
.use-case-personal-content {
display: flex;
flex-direction: row;
justify-content: space-between;
max-width: 1000px;
margin-inline: auto;
@media (max-width: 59rem) {
flex-direction: column-reverse;
align-items: center;
}
}
.col {
display: flex;
flex-direction: column;
max-height: 418px;
justify-content: center;
max-width: 27.9rem;
h2 {
display: inline;
color: #000;
font-size: 2.5rem;
font-weight: 700;
@media (max-width: 59rem) {
margin-top: 2rem;
text-align: center;
}
@media (max-width: 767px) {
font-size: 2.125rem;
}
}
}
img {
margin: auto 0px;
flex: auto;
max-width: 470px;
aspect-ratio: 470 / 418;
@media (max-width: 59rem) {
margin: 0px auto;
}
}
#personal_bottom {
position: absolute;
bottom: -340px;
height: 400px;
background-color: black;
border-radius: 100% 100%;
width: 150%;
left: -25%;
@media (max-width: 767px) {
width: 200%;
left: -50%;
}
}
}
#use-case-community {
background-color: #000;
display: flex;
flex-direction: column;
justify-content: space-around;
text-align: center;
padding-top: 60px;
padding-bottom: 100px;
padding-inline: 2rem;
h2 {
color: #fff;
font-size: 2.5rem;
font-weight: 700;
max-width: 36rem;
margin: 0 auto;
}
.call-to-action {
margin-block: 2em 4em;
}
img {
margin: 0 auto;
aspect-ratio: 756 / 487;
flex: auto;
max-width: 756px;
}
}
#complex-apps {
display: flex;
flex-direction: row;
justify-content: space-between;
gap: 2rem;
max-width: 1200px;
margin-inline: auto;
padding: 10rem 2rem;
@media (max-width: 64rem) {
flex-direction: column-reverse;
align-items: center;
}
.col {
display: flex;
flex-direction: column;
max-height: 418px;
justify-content: center;
max-width: 27.9rem;
margin-inline: auto;
@media (max-width: 767px) {
max-width: none;
}
h2 {
display: inline;
color: #000;
font-size: 2.5rem;
font-weight: 700;
@media (max-width: 64rem) {
text-align: center;
}
@media (max-width: 767px) {
font-size: 2.125rem;
margin: 0 auto 2rem auto;
}
margin: 0 0 2rem 0;
}
}
#complex-apps-image {
outline: 20px solid black;
border-radius: 30px;
flex: auto;
max-width: min(576px, 100%);
margin: 20px;
}
}
#buildonmatrix {
display: flex;
flex-direction: column;
gap: 28px;
padding: 250px 0 300px 0;
overflow: hidden;
@media (max-width: 767px) {
padding: 100px 35px 435px 35px;
}
justify-content: space-around;
position: relative;
color: #fff;
background-color: #000;
background-image: url("/assets/frontpage/buildon-bg.svg");
background-size: 100% 100%;
@media (max-width: 767px) {
background-image: url("/assets/frontpage/buildon-bg-mobile.svg");
background-size: 100% 480px;
background-position-y: bottom;
}
background-repeat: no-repeat;
h2 {
text-align: center;
margin: 0 auto;
font-weight: 700;
}
p {
text-align: center;
margin: 0 auto;
max-width: 433px;
font-size: 1.125rem;
}
.logo {
filter: invert(1);
width: 130px;
height: 130px;
margin: 0 auto;
}
#bridge_visual {
position: absolute;
top: 100px;
left: calc(60dvw - 800px);
width: 240px;
height: 287px;
}
#homeserver {
position: absolute;
bottom: 50px;
left: calc(60dvw - 800px);
width: 230px;
height: 235px;
}
#federation_visual {
position: absolute;
top: calc(200px - 4dvw);
right: calc(60dvw - 800px);
}
.call-to-action {
display: flex;
align-items: center;
gap: .5em;
img {
max-height: 1.5em;
}
}
}
#sponsors {
display: flex;
flex-direction: column;
padding: 5rem 45px;
h2 {
text-align: center;
margin: 0 auto;
font-weight: 700;
}
#sponsors_grid {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
margin: 2rem auto;
@media (max-width: 767px) {
margin: 0 auto;
}
.sponsor_card {
display: flex;
flex-direction: column;
justify-content: space-between;
margin: 1rem 0;
padding: 1rem 0;
width: 22rem;
@media (max-width: 767px) {
width: 100%;
}
img {
margin-bottom: 1rem;
}
.sponsor_text {
display: flex;
flex-direction: column;
justify-content: space-between;
height: 12.5rem;
h3 {
text-align: center;
margin: 0 auto;
font-size: 1.125rem;
font-weight: 700;
}
a {
margin: 0 auto;
}
}
}
}
p {
text-align: center;
margin: 0 auto;
max-width: 638px;
}
.call-to-action {
margin-block-start: 2rem;
}
}
}