Files
website/src/main.css

422 lines
6.4 KiB
CSS
Raw Normal View History

:root {
--bg-primary: #FFFFFF;
--bg-secondary: #f9fafb;
--text-primary: #343434;
--text-primary-invert: #f9fafb;
--text-secondary: #9ca3af;
--text-accent: #f97316;
--footer-bg: #111827;
--border-radius: 0.5rem;
--transition-duration: 0.3s;
--bottom-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
--smooth-shadow: 0 8px 14px 0 rgba(0, 0, 0, 0.08);
--red: #AA3333;
--orange: coral;
--blue: cornflowerblue;
--green: #77cfa5;
--grey: #AAAAAA;
}
html,
body {
scroll-behavior: smooth;
font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
margin: 0;
padding: 0;
color: var(--text-primary);
}
#vanta-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
background-color: #111827;
min-height: 100vh;
}
pre {
text-wrap: auto;
background-color: var(--text-primary);
padding: 1rem;
border-radius: var(--border-radius);
box-shadow: var(--bottom-shadow);
font-size: 0.875rem;
code {
color: var(--text-primary-invert);
span {
color: var(--green);
}
}
}
.hidden {
display: none;
}
.gradient-text {
background-clip: text;
color: transparent;
background-image: linear-gradient(to right, #f97316, #7c3aed);
}
.button {
background-color: var(--text-accent);
color: var(--text-primary-invert);
padding: 0.75rem 1.5rem;
border: none;
border-radius: var(--border-radius);
cursor: pointer;
font-size: 1rem;
transition: background-color var(--transition-duration);
text-decoration: none;
display: inline-block;
.feather {
vertical-align: middle;
margin-left: 0.1rem;
height: 1rem;
}
&:hover {
box-shadow: 0 4px 14px 0 rgba(249, 115, 22, 0.69);
}
}
.picto {
display: flex;
justify-content: center;
align-items: center;
border-radius: 100%;
width: 3.5rem;
height: 3.5rem;
&.red {
color: var(--red);
background-color: hsl(from var(--red) h s calc(l*1.4));
}
&.blue {
color: var(--blue);
background-color: hsl(from var(--blue) h s calc(l*1.4));
}
&.orange {
color: var(--orange);
background-color: hsl(from var(--orange) h s calc(l*1.4));
}
&.green {
color: var(--green);
background-color: hsl(from var(--green) h s calc(l*1.4));
}
&.grey {
color: var(--grey);
background-color: hsl(from var(--grey) h s calc(l*1.4));
}
}
nav {
width: 100%;
flex-direction: row;
.nav-links {
display: none;
gap: 1.5rem;
a,
a:visited {
.feather {
vertical-align: middle;
margin-right: 0.25rem;
height: 1rem;
}
transition: color .2s ease-in-out;
text-decoration: none;
color: var(--text-primary);
&:hover {
color: var(--text-accent);
}
}
}
#navbar {
max-width: 80rem;
margin: 0 auto;
display: flex;
padding: 1rem 0;
justify-content: space-between;
img {
height: 40px;
}
}
}
#hero {
overflow: hidden;
position: relative;
padding: 6rem 1rem 8rem 1rem;
#hero-content {
h1 {
font-size: 3.75rem;
margin-bottom: 1rem;
}
max-width: 80rem;
margin: 0 auto;
position: relative;
text-align: center;
color: var(--text-primary-invert);
p {
font-size: 2rem;
}
}
}
section {
padding: .5rem 0.5rem;
>div {
margin: 0 auto;
max-width: 80rem;
margin-bottom: 4rem;
}
>div:nth-child(1) {
text-align: center;
h2 {
font-size: 2rem;
}
}
}
.diapo {
display: flex;
flex-wrap: wrap;
>div {
border: 1px solid rgba(from var(--text-primary) / 0.3);
display: flex;
flex-direction: column;
border-radius: 1rem;
background-color: var(--bg-secondary);
padding: 0.2rem 1rem;
transition: all .3s ease-in-out;
flex: 1;
min-width: 15rem;
p {
flex-grow: 1;
}
}
.action {
justify-self: center;
align-self: center;
margin-bottom: 1rem
}
}
#demo {
.video-player {
width: 65%;
margin: 0 auto;
height: 26rem;
box-shadow: 0 0 12px rgba(0, 0, 0, 0.5);
border-radius: 1rem;
}
}
#tutorials {
.video-player {
width: 85%;
margin: 0 auto;
height: 16rem;
}
.diapo {
text-align: center;
}
}
#cta {
padding: 4rem 1rem;
background: linear-gradient(to right, #f97316, #7c3aed);
h2 {
color: var(--text-primary-invert);
}
color: var(--text-primary-invert);
.button {
background-color: var(--text-primary-invert);
color: var(--text-primary);
font-weight: bold;
}
}
footer {
padding-top: 1rem;
background-color: var(--footer-bg);
color: var(--text-primary-invert);
ul,
li {
list-style: none;
padding: 0;
}
a,
a:visited {
color: var(--text-secondary);
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
.diapo {
max-width: 80rem;
margin: 0 auto;
}
.diapo>div {
background-color: transparent;
&:hover {
box-shadow: none;
}
}
.logo img {
height: 3rem
}
.feather {
margin-right: 0.5rem;
justify-self: center;
height: 2rem;
}
.copyright {
text-align: center;
padding: 1rem 0;
font-size: 0.875rem;
color: var(--text-secondary);
}
}
.video-player iframe {
width: 100%;
height: 100%;
border-radius: 1rem;
}
#mobile-menu-button {
position: absolute;
top: 1rem;
right: 1rem;
background: none;
border: none;
cursor: pointer;
z-index: 30;
.feather {
height: 2rem;
color: var(--text-primary);
}
}
#mobile-menu {
position: absolute;
background-color: var(--bg-primary);
width: 100%;
z-index: 20;
a,
a:hover,
a:visited {
display: block;
padding: 1rem;
border-bottom: 1px solid var(--text-secondary);
text-decoration: none;
color: var(--text-primary);
}
>div {
display: flex;
flex-direction: column;
}
}
@media (min-width: 769px) {
#mobile-menu,
#mobile-menu-button {
display: none;
visibility: hidden;
}
nav {
position: fixed;
top: 0;
z-index: 10;
background-color: var(--bg-secondary);
box-shadow: var(--bottom-shadow);
#navbar {
padding: 1rem 2rem 0 0;
}
}
#hero {
margin-top: 4rem;
}
.nav-links {
display: flex !important;
}
section,
nav {
padding: 0 1rem;
}
.diapo {
gap: 0.8em;
>div {
padding: 2rem;
}
.action {
margin-bottom: 0;
}
}
}