Files
neuf-www/web/src/components/layout/footer.module.scss
2024-08-10 17:01:57 +02:00

176 lines
2.7 KiB
SCSS

.footer {
padding: var(--spacing-sitepadding-block) var(--spacing-sitepadding-inline);
background: var(--color-deepBrick);
color: var(--color-betongGray);
position: relative;
z-index: 700;
font-size: var(--font-size-caption);
overflow: hidden;
display: grid;
grid-template-columns: repeat(4, 1fr);
column-gap: var(--spacing-gap-column);
row-gap: var(--spacing-gap-column);
h2 {
grid-column: 1 / -1;
font-family: var(--font-serif);
font-weight: 400;
font-size: var(--font-size-h3);
margin-bottom: var(--spacing-m);
}
h3 {
line-height: inherit;
font-size: 1em;
font-weight: 600;
margin: 0;
}
}
.contactItem {
list-style: none;
ul {
list-style: none;
}
ul,
p,
table,
a {
font-size: var(--font-size-caption);
}
}
.social,
.contact,
.visit {
line-height: 1.78;
margin-bottom: var(--spacing-section-bottom);
ul {
list-style: none;
}
}
.visit {
grid-column: span 2;
}
.visitContent {
display: grid;
grid-template-columns: 1fr 1fr;
align-items: flex-start;
}
.address {
margin-bottom: 2rem;
}
.emails {
>div {
margin-bottom: 1rem;
}
}
.emailLink {
font-size: var(--font-size-caption);
}
.pig {
position: absolute;
bottom: -2rem;
right: -2rem;
z-index: 800;
display: none;
}
.toTop {
position: absolute;
z-index: 801;
right: var(--spacing-sitepadding-inline);
bottom: var(--spacing-sitepadding-block);
cursor: pointer;
button {
font-size: var(--font-size-caption);
}
}
.pigPattern {
background-color: var(--color-background);
background-image: url("/assets/graphics/grisemonster.png");
background-size: 100% auto;
background-position: 0 100%;
background-attachment: fixed;
background-repeat: no-repeat;
width: 100%;
height: 50vh;
position: relative;
z-index: 700;
@media (orientation: landscape) {
background-size: 100% auto;
}
@media (orientation: portrait) {
background-size: auto 50%;
}
@media (hover: none) {
background-attachment: initial;
background-size: cover;
}
}
@media (max-width: 1000px) {
.footer {
grid-template-columns: 1fr 1fr;
}
.social {
ul {
padding-top: .3em;
}
}
}
@media (max-width: 600px) {
.footer {
grid-template-columns: 1fr;
}
.visit {
grid-column: span 1;
.visitContent {
display: flex;
flex-wrap: wrap;
h2 {
width: 100%;
}
> div {
width: 50%;
min-width: 12rem;
padding-right: 2rem;
}
}
}
.social {
ul {
display: flex;
flex-wrap: wrap;
gap: .5rem;
}
}
.emails {
display: flex;
flex-wrap: wrap;
> div {
width: 50%;
min-width: 12rem;
padding-right: 2rem;
}
}
}