hic-et-nunc/assets/css/src/_mobile.scss
Camilledenoray afb7c00960
All checks were successful
Deploy / Deploy to Production (push) Successful in 2m1s
Save before pull rebase
2026-06-10 15:59:22 +02:00

269 lines
4.9 KiB
SCSS

@media screen and (max-width: 1000px) {
:root {
--slider-height: 66vh;
--font-size-XL: 12.5vw;
--font-size-L: 1.5rem;
--font-size-S: 0.75rem;
}
header:has(+ main > .projects-index > .selected) {
display: none;
}
.project-slideshow-container {
position: fixed;
top: 0;
width: 100vw;
left: 0;
margin: 0;
height: var(--slider-height);
button.all-projects-closer {
display: none;
}
}
.project-slideshow {
inset: 0;
width: auto;
height: auto;
picture {
inset: 0;
position: absolute;
img {
width: 100%;
height: 100%;
object-fit: cover;
}
}
}
.main-title {
font-size: var(--font-size-XL);
line-break: strict;
left: -0.65vw;
position: relative;
top: var(--main-title-top);
margin-top: var(--body-margin);
line-height: 0.75;
}
.project-toggler.grid {
grid-template-columns: 2fr 2fr 1fr;
width: 100%;
}
.fix {
display: block;
}
main {
position: fixed;
top: 0;
bottom: 0;
left: 0;
width: 100%;
padding: var(--font-size-XL) var(--body-margin) var(--body-margin)
var(--body-margin);
box-sizing: border-box;
}
main:has(nav li.selected) {
top: var(--slider-height);
padding-top: 0;
}
.main-menu {
display: none;
}
#mobile-menu {
justify-content: center;
align-items: center;
inset: 0;
ul,
h1 {
z-index: 4;
}
.backdrop {
inset: 0;
background-color: white;
opacity: calc(1 - var(--low-opacity));
position: absolute;
z-index: 3;
cursor: pointer;
}
.title-nav {
position: absolute;
line-break: strict;
left: -0.65vw;
top: var(--main-title-top);
margin-top: var(--body-margin);
line-height: 0.75;
}
ul {
display: flex;
font-size: var(--font-size-L);
}
}
#mobile-menu-wrapper {
position: fixed;
bottom: 0;
width: 100%;
display: flex;
justify-content: center;
z-index: 4;
}
#mobile-menu.visible {
display: flex;
}
button#mobile-menu-toggle {
font-size: var(--font-size-XL);
position: fixed;
bottom: 0;
height: var(--font-size-XL);
line-height: var(--font-size-XL);
display: block;
margin: 0 auto;
}
header:hover ~ main {
opacity: 1;
transition-duration: 0;
}
.main-title:hover {
opacity: 1;
transition-duration: 0;
}
.main-title:has(+ nav:hover) {
opacity: 1;
transition-duration: 0;
}
#home-slideshow img:not(.slide.active img) {
display: none;
}
.close-button.closer {
position: fixed;
top: var(--slider-height);
margin-top: calc(-2.3 * (var(--line-height-S)));
right: var(--body-margin);
font-size: var(--font-size-L);
cursor: pointer;
mix-blend-mode: difference;
color: var(--mix-blend-color);
}
.close-button.closer::before {
content: "Fermer";
}
.selected .toggle {
display: block;
}
.mix-blend-bg {
inset: 0;
background-color: white;
width: auto;
z-index: -1;
height: var(--slider-height);
}
nav ul li a {
text-decoration: none;
}
[data-template="home"] nav ul li .nav-item-home {
text-decoration: underline;
}
[data-template="index"] nav ul li .nav-item-projects {
text-decoration: underline;
}
[data-template="infos"] nav ul li .nav-item-about {
text-decoration: underline;
}
body[data-template="home"] {
#mobile-menu-wrapper {
color: var(--mix-blend-color);
mix-blend-mode: difference;
}
header:has(+ main > #mobile-menu.visible) {
display: none;
}
}
body[data-template="index"] {
main {
z-index: 2;
}
.filter-menu {
padding-top: 0;
}
ul.projects-index {
position: absolute;
top: 0;
box-sizing: border-box;
width: calc(100vw - var(--body-margin));
height: 100vh;
overflow: auto;
padding-right: 1.5rem;
padding-top: calc(var(--font-size-XL) + (var(--line-height-S) * 1));
padding-bottom: calc(var(--font-size-XL));
}
ul.projects-index:has(.selected) {
top: var(--slider-height);
height: calc(100vh - var(--slider-height));
padding-top: var(--line-height-S);
padding-bottom: calc(var(--font-size-XL));
}
.selected .fix:hover + .toggle {
display: block;
}
.fix:hover + .toggle {
display: none;
}
.selected .fix:hover .slide-number {
display: block;
}
.slide-number {
position: fixed;
top: var(--slider-height);
margin-top: calc(-2 * (var(--line-height-S)));
left: var(--body-margin);
padding-right: 0;
}
}
body[data-template="infos"] {
main {
padding-top: var(--font-size-XL);
}
}
}
@media (max-width: 687px) {
[data-template="infos"] div {
padding-right: var(--body-margin);
width: calc(100% - var(--body-margin));
}
}