refonte/themes/afpy/static/css/website.css

363 lines
5.0 KiB
CSS
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* Fonts */
@font-face{
font-family: Atkinson;
src: url(../webfonts/Atkinson-Hyperlegible-Regular-102.ttf);
}
/* Variables */
:root {
--black: #0e0e0e;
--blue: #327bd6;
--dark-green: #32ada9;
--green: #ebff32;
--grey: #c9c9c9;
--light-orange: #ff6f3255;
--orange: #ff6f32;
--purple: #84326b;
--white: #ffffff;
}
/* Common */
html {
background: var(--white);
color: var(--black);
font-family: Atkinson;
font-size: 14pt;
line-height: 1.5;
overflow-x: hidden;
}
body {
display: flex;
flex-direction: column;
margin: 0;
min-height: 100vh;
}
a, a:visited {
color: var(--dark-green);
transition: 0.2s;
}
a:hover,
.active {
background: var(--green);
}
iframe {
border: none;
height: 45em;
width: 100%;
}
img {
display: block;
max-width: 100%;
}
li {
list-style: none;
margin: 0.5em auto;
}
ul {
margin: 0;
padding: 0;
}
/* Titles */
#introduction h3::after,
#page-qui-sommes-nous h3::after,
#page-communaute h3::after,
#page-adhesions h3::after {
background: var(--light-orange);
content: "";
display: block;
height: 0.2em;
width: 1.5em;
}
/* Header and Footer */
header {
background: var(--white);
border-bottom: var(--grey) 1px solid;
display: flex;
height: 4em;
left: 0;
position: fixed;
top: 0;
width: 100vw;
}
header a:first-of-type {
display: flex;
flex-wrap: wrap;
}
header img {
display: block;
margin: 0.5em 1em 0.5em 5em;
}
header h1 {
margin: auto;
}
header a,
footer a,
header a:visited,
footer a:visited {
color: var(--black);
text-decoration: inherit;
}
header nav {
margin: 0 4.5em 0 auto;
}
header nav ul,
footer ul {
display: flex;
flex-wrap: wrap;
height: 100%;
}
header nav li,
footer li {
margin: auto 0.5em;
}
footer {
background: var(--white);
border-top: var(--grey) 1px solid;
height: 4em;
width: 100vw;
}
footer ul {
justify-content: center;
}
@media (max-width: 920px) {
header h1 {
display: none;
}
header img {
margin: 0.5em;;
}
header nav {
display: block;
height: 4em;
margin-right: 0;
overflow: hidden;
transition-delay: 0.5s;
transition-property: z-index;
width: 3em;
z-index: 3;
}
header::before,
header nav::before {
align-items: center;
background: var(--white);
color: var(--black);
display: flex;
height: 100%;
justify-content: center;
width: 100%;
}
header::before {
content: "";
height: 1rem;
padding: 1rem;
position: absolute;
right: 0;
top: 0;
width: 1rem;
z-index: 2;
}
header nav::before {
content: "☰";
margin-bottom: 1em;
}
header nav:hover {
display: flex;
flex-direction: column;
height: 100vh;
justify-content: center;
width: 100%;
z-index: 1;
}
header nav:hover ul {
background: var(--white);
border-left: 1px solid var(--grey);
flex: 1;
flex-direction: column;
justify-content: center;
}
header nav:hover li:last-child {
margin-left: 0;
}
header nav:hover li {
margin: 0.75em 0;
}
header nav:hover a {
padding: 0.5em;
}
header nav:hover ~ * {
display: block !important;
height: 0 !important;
margin: 0 !important;
overflow: hidden;
}
header nav:hover::before {
display: none;
}
footer ul {
display: initial;
}
footer ul li {
margin: 0.5em;
}
}
/* Main */
main {
flex-grow: 1;
margin: 4em auto;
}
main > section {
padding: 2rem 25rem;
}
@media (max-width: 920px) {
main {
margin: 2em auto 0.5em auto;
}
main > section {
padding: 1rem;
}
}
/* Page Index */
#page-index h2 {
text-align: center;
}
#introduction section {
display: grid;
gap: 3em;
grid-auto-columns: 45%;
grid-template-areas: "a a";
justify-content: center;
}
#introduction section article {
border: var(--grey) 1px solid;
padding: 1em;
}
#introduction section + p {
margin-top: 2em;
text-align: center;
}
@media (max-width: 920px) {
#introduction section {
display: block;
}
#introduction section article {
margin: 1em auto;
}
}
/* News and Jobs */
.news-jobs > article {
border: var(--grey) 1px solid;
margin: 3em auto;
}
.news-jobs > article section:first-of-type {
background: var(--light-orange);
padding: 1em;
}
.news-jobs > article section:last-of-type ul,
.news-jobs > article section:last-of-type li,
.news-jobs > article section:last-of-type p {
display: inline;
}
.news-jobs > article section:last-of-type li:not(:last-of-type)::after {
content: ",";
}
.news-jobs h3 {
margin: 0;
}
.news-jobs h3 a {
color: inherit;
}
.news-jobs time {
float: right;
}
.news-jobs div {
padding: 1em;
}
.news-jobs section {
padding: 1em;
}
.news-jobs > ul:last-of-type {
display: flex;
flex-wrap: wrap;
margin: auto;
width: 30%;
}
.news-jobs > ul:last-of-type a {
padding: 0.5em;
text-decoration: none;
}
/* Who, Community, Membership */
#page-qui-sommes-nous main li,
#page-communaute main li,
#page-adhesions main li {
list-style: initial;
}
#page-adhesions h4 {
margin-bottom: 0.5em;
}