Compare commits

..

3 commits

Author SHA1 Message Date
fc074b111e corvée(images) optimise les images 2026-04-28 11:21:34 +02:00
648f7be262 wip 2026-04-28 11:20:45 +02:00
72b940430d corvée(images) optimise les images 2026-04-28 11:20:41 +02:00
66 changed files with 449 additions and 626 deletions

File diff suppressed because it is too large Load diff

View file

@ -67,7 +67,6 @@ threads = 0
disjunction-complexity-threshold = 8192 disjunction-complexity-threshold = 8192
formula-size-threshold = 1024 formula-size-threshold = 1024
integer-combination-threshold = 256 integer-combination-threshold = 256
loop-assignment-depth-threshold = 2
negation-complexity-threshold = 8192 negation-complexity-threshold = 8192
saturation-complexity-threshold = 16384 saturation-complexity-threshold = 16384
string-combination-threshold = 256 string-combination-threshold = 256

View file

@ -4,66 +4,16 @@
font-weight: 100 900; font-weight: 100 900;
font-style: normal; font-style: normal;
font-display: swap; font-display: swap;
src: src: url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.woff2") format(woff2) tech(variations), url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.woff2") format("woff2-variations"), url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.woff2") format("woff2"), url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.ttf") format("truetype");
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.woff2") unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
format(woff2) tech(variations),
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.woff2")
format("woff2-variations"),
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.woff2")
format("woff2"),
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-webfont.ttf")
format("truetype");
unicode-range:
U+0000-00FF,
U+0131,
U+0152-0153,
U+02BB-02BC,
U+02C6,
U+02DA,
U+02DC,
U+2000-206F,
U+2074,
U+20AC,
U+2122,
U+2191,
U+2193,
U+2212,
U+2215,
U+FEFF,
U+FFFD;
} }
@font-face { @font-face {
font-family: Lato; font-family: Lato;
font-weight: 100 900; font-weight: 100 900;
font-style: italic; font-style: italic;
font-display: swap; font-display: swap;
src: src: url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.woff2") format(woff2) tech(variations), url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.woff2") format("woff2-variations"), url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.woff2") format("woff2"), url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.ttf") format("truetype");
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.woff2") unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
format(woff2) tech(variations),
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.woff2")
format("woff2-variations"),
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.woff2")
format("woff2"),
url("/app/themes/haiku-atelier-2024/assets/fonts/lato/lato-variable-italic-webfont.ttf")
format("truetype");
unicode-range:
U+0000-00FF,
U+0131,
U+0152-0153,
U+02BB-02BC,
U+02C6,
U+02DA,
U+02DC,
U+2000-206F,
U+2074,
U+20AC,
U+2122,
U+2191,
U+2193,
U+2212,
U+2215,
U+FEFF,
U+FFFD;
} }
@font-face { @font-face {
font-family: Myriad; font-family: Myriad;
@ -71,10 +21,7 @@
font-style: normal; font-style: normal;
font-display: swap; font-display: swap;
font-stretch: 70% 110%; font-stretch: 70% 110%;
src: src: url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable.woff2") format("woff2"), url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable.ttf") format("truetype");
url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable.woff2") format("woff2"),
url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable.ttf")
format("truetype");
} }
@font-face { @font-face {
font-family: Myriad; font-family: Myriad;
@ -82,11 +29,7 @@
font-style: italic; font-style: italic;
font-display: swap; font-display: swap;
font-stretch: 70% 110%; font-stretch: 70% 110%;
src: src: url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable-italic.woff2") format("woff2"), url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable-italic.ttf") format("truetype");
url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable-italic.woff2")
format("woff2"),
url("/app/themes/haiku-atelier-2024/assets/fonts/myriad/myriad-variable-italic.ttf")
format("truetype");
} }
:root { :root {
/* Couleurs */ /* Couleurs */
@ -235,8 +178,7 @@ button, input, select, textarea {
html { html {
font: 1rem/var(--hauteur-ligne-classique) Lato; font: 1rem/var(--hauteur-ligne-classique) Lato;
font-optical-sizing: auto; font-optical-sizing: auto;
font-variant-ligatures: common-ligatures no-discretionary-ligatures no-historical-ligatures font-variant-ligatures: common-ligatures no-discretionary-ligatures no-historical-ligatures contextual;
contextual;
font-kerning: normal; font-kerning: normal;
color: var(--couleur-noir); color: var(--couleur-noir);
text-decoration-skip-ink: auto; text-decoration-skip-ink: auto;
@ -293,12 +235,6 @@ button.bouton-case-pleine {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
@media (hover: hover) {
button.bouton-case-pleine:hover {
color: var(--couleur-noir);
background: var(--arriere-plan-points);
}
}
button.bouton-inverse { button.bouton-inverse {
color: var(--couleur-blanc); color: var(--couleur-blanc);
background: var(--couleur-noir); background: var(--couleur-noir);
@ -316,7 +252,7 @@ button.bouton-inverse:disabled {
@media (hover: hover) { @media (hover: hover) {
button.bouton-inverse:hover { button.bouton-inverse:hover {
color: var(--couleur-noir); color: var(--couleur-noir);
background: var(--arriere-plan-points); background: var(--couleur-gris);
} }
} }
button.bouton-retour-haut { button.bouton-retour-haut {
@ -415,12 +351,7 @@ input, select, textarea {
background: var(--couleur-gris); background: var(--couleur-gris);
transition: 0.2s background; transition: 0.2s background;
} }
input:focus-visible, input:focus-visible, input:focus-within, select:focus-visible, select:focus-within, textarea:focus-visible, textarea:focus-within {
input:focus-within,
select:focus-visible,
select:focus-within,
textarea:focus-visible,
textarea:focus-within {
z-index: 10; z-index: 10;
outline: 2px dashed var(--couleur-noir); outline: 2px dashed var(--couleur-noir);
} }
@ -432,20 +363,20 @@ input:disabled, select:disabled, textarea:disabled {
outline-color: transparent; outline-color: transparent;
} }
input:is([type="email"], [type="text"], [type="tel"])::placeholder, textarea::placeholder { input:is([type=email], [type=text], [type=tel])::placeholder, textarea::placeholder {
text-transform: lowercase; text-transform: lowercase;
letter-spacing: var(--espacement-inter-lettres-etendu-s); letter-spacing: var(--espacement-inter-lettres-etendu-s);
} }
input:is([type="email"], [type="text"], [type="tel"])::selection, textarea::selection { input:is([type=email], [type=text], [type=tel])::selection, textarea::selection {
color: var(--couleur-blanc); color: var(--couleur-blanc);
background: var(--couleur-noir); background: var(--couleur-noir);
} }
input:is([type="email"], [type="text"], [type="tel"]):user-valid, textarea:user-valid { input:is([type=email], [type=text], [type=tel]):user-valid, textarea:user-valid {
font-weight: 500; font-weight: 500;
color: var(--couleur-noir); color: var(--couleur-noir);
background: var(--arriere-plan-points); background: var(--arriere-plan-points);
} }
input:is([type="email"], [type="text"], [type="tel"]):user-invalid, textarea:user-invalid { input:is([type=email], [type=text], [type=tel]):user-invalid, textarea:user-invalid {
background: var(--couleur-gris); background: var(--couleur-gris);
} }
@ -453,7 +384,7 @@ input, label, select, textarea {
cursor: pointer; cursor: pointer;
} }
input[type="checkbox"], input[type="radio"] { input[type=checkbox], input[type=radio] {
width: var(--espace-l); width: var(--espace-l);
height: var(--espace-l); height: var(--espace-l);
padding: initial; padding: initial;
@ -461,51 +392,49 @@ input[type="checkbox"], input[type="radio"] {
appearance: none; appearance: none;
transition: 0.2s background; transition: 0.2s background;
} }
input[type="checkbox"]:checked, input[type="radio"]:checked { input[type=checkbox]:checked, input[type=radio]:checked {
color: var(--couleur-blanc); color: var(--couleur-blanc);
background: var(--couleur-gris-fonce); background: var(--couleur-gris-fonce);
} }
input[type="checkbox"]:checked::before, input[type="radio"]:checked::before { input[type=checkbox]:checked::before, input[type=radio]:checked::before {
content: "x"; content: "x";
position: relative; position: relative;
bottom: 0.1rem; bottom: 0.1rem;
left: 0.35rem; left: 0.35rem;
} }
@media (hover: hover) { @media (hover: hover) {
input[type="checkbox"]:checked:hover, input[type="radio"]:checked:hover { input[type=checkbox]:checked:hover, input[type=radio]:checked:hover {
color: var(--couleur-noir); color: var(--couleur-noir);
} }
} }
input[type="checkbox"]:not(:checked):user-valid, input[type="radio"]:not(:checked):user-valid { input[type=checkbox]:not(:checked):user-valid, input[type=radio]:not(:checked):user-valid {
background: initial; background: initial;
} }
input[type="checkbox"], input[type="radio"] { input[type=checkbox], input[type=radio] {
/* /*
* 1. Pour un alignement parfait du label avec la case à cocher. * 1. Pour un alignement parfait du label avec la case à cocher.
*/ */
} }
label:has(~ input[type="checkbox"], ~ input[type="radio"]), label:has(~ input[type=checkbox], ~ input[type=radio]), input[type=checkbox] + label, input[type=radio] + label {
input[type="checkbox"] + label,
input[type="radio"] + label {
padding-top: 1px; /* 1 */ padding-top: 1px; /* 1 */
font-size: 0.9rem; font-size: 0.9rem;
} }
@media (hover: hover) { @media (hover: hover) {
input[type="checkbox"]:hover, input[type="radio"]:hover { input[type=checkbox]:hover, input[type=radio]:hover {
background: var(--couleur-gris-fonce); background: var(--couleur-gris-fonce);
} }
} }
input[type="radio"] { input[type=radio] {
border-radius: 100%; border-radius: 100%;
appearance: initial; appearance: initial;
} }
input[type="radio"]:checked { input[type=radio]:checked {
display: inline-flex; display: inline-flex;
place-content: center; place-content: center;
place-items: center; place-items: center;
} }
input[type="radio"]:checked::before { input[type=radio]:checked::before {
content: " "; content: " ";
inset: initial; inset: initial;
display: inline-block; display: inline-block;
@ -547,14 +476,7 @@ a {
text-decoration: underline; /* 1 */ text-decoration: underline; /* 1 */
text-decoration-color: transparent; /* 1 */ text-decoration-color: transparent; /* 1 */
text-decoration-skip-ink: auto; /* 1 */ text-decoration-skip-ink: auto; /* 1 */
transition: transition: 0.2s background, 0.2s border-color, 0.2s color, 0.2s font-weight, 0.2s outline-color, 0.2s letter-spacing, 0.2s text-decoration-color; /* 3 */
0.2s background,
0.2s border-color,
0.2s color,
0.2s font-weight,
0.2s outline-color,
0.2s letter-spacing,
0.2s text-decoration-color; /* 3 */
text-decoration-skip: edges; /* 1 */ text-decoration-skip: edges; /* 1 */
/* Change les couleurs de l'arrière-plan et du contour pour marquer le focus. */ /* Change les couleurs de l'arrière-plan et du contour pour marquer le focus. */
} }
@ -640,9 +562,7 @@ ul.avec-puce-cercle {
} }
ul.avec-puce-cercle a { ul.avec-puce-cercle a {
padding-left: var(--liste-puce-cercle-lien-marges-internes-ligne-debut); /* 1 */ padding-left: var(--liste-puce-cercle-lien-marges-internes-ligne-debut); /* 1 */
background: no-repeat var(--liste-puce-cercle-puce-position-horizontale) center/var( background: no-repeat var(--liste-puce-cercle-puce-position-horizontale) center/var(--liste-puce-cercle-puce-taille) url("/app/themes/haiku-atelier-2024/assets/img/icons/dot.svg"); /* 2 */
--liste-puce-cercle-puce-taille
) url("/app/themes/haiku-atelier-2024/assets/img/icons/dot.svg"); /* 2 */
} }
video { video {
@ -698,7 +618,7 @@ video {
transform: translateX(-100%); transform: translateX(-100%);
} }
} }
body:has(#menu-mobile:not([aria-hidden="true"])) { body:has(#menu-mobile:not([aria-hidden=true])) {
touch-action: none; touch-action: none;
overflow: hidden; overflow: hidden;
} }
@ -718,11 +638,11 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
transition: display 400ms allow-discrete; transition: display 400ms allow-discrete;
-webkit-overflow-scrolling: none; -webkit-overflow-scrolling: none;
} }
#menu-mobile[aria-hidden="true"] { #menu-mobile[aria-hidden=true] {
display: none; display: none;
animation: fade-out 400ms both; animation: fade-out 400ms both;
} }
#menu-mobile[aria-hidden="true"] .menu-modale__fond { #menu-mobile[aria-hidden=true] .menu-modale__fond {
animation: fade-out 400ms both; animation: fade-out 400ms both;
} }
#menu-mobile .menu-modale__fond { #menu-mobile .menu-modale__fond {
@ -855,13 +775,11 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
/* Dispositions */ /* Dispositions */
--liste-puce-cercle-puce-position-horizontale: 3.5ch; /* 3 */ --liste-puce-cercle-puce-position-horizontale: 3.5ch; /* 3 */
} }
#en-tete .menu-navigation__entree:has(a[aria-current="page"]) { #en-tete .menu-navigation__entree:has(a[aria-current=page]) {
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud-penche-gris.svg") background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud-penche-gris.svg") bottom/auto 90% no-repeat;
bottom/auto 90% no-repeat;
} }
#en-tete .menu-navigation__entree--courante { #en-tete .menu-navigation__entree--courante {
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud-penche-gris.svg") background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud-penche-gris.svg") bottom/auto 90% no-repeat;
bottom/auto 90% no-repeat;
} }
#en-tete .menu-navigation__entree a { #en-tete .menu-navigation__entree a {
display: inline-block; /* 1 */ display: inline-block; /* 1 */
@ -870,8 +788,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
} }
@media (hover: hover) { @media (hover: hover) {
#en-tete .menu-navigation__entree:hover { #en-tete .menu-navigation__entree:hover {
background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud-penche-gris.svg") background: url("/app/themes/haiku-atelier-2024/assets/img/icons/cloud-penche-gris.svg") bottom/auto 90% no-repeat;
bottom/auto 90% no-repeat;
} }
} }
@media (width <= 1000px) { @media (width <= 1000px) {
@ -892,9 +809,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
#en-tete .compte-panier[disabled] { #en-tete .compte-panier[disabled] {
background: var(--arriere-plan-points); background: var(--arriere-plan-points);
} }
#en-tete .compte-panier[disabled] a:hover, #en-tete .compte-panier[disabled] a:hover, #en-tete .compte-panier[disabled] a:active, #en-tete .compte-panier[disabled] a:focus-within {
#en-tete .compte-panier[disabled] a:active,
#en-tete .compte-panier[disabled] a:focus-within {
border: 1px solid var(--couleur-noir); border: 1px solid var(--couleur-noir);
} }
#en-tete .compte-panier a { #en-tete .compte-panier a {
@ -903,7 +818,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
text-transform: lowercase; text-transform: lowercase;
background: transparent; background: transparent;
} }
#en-tete .compte-panier a[data-contient-articles="true"] { #en-tete .compte-panier a[data-contient-articles=true] {
background: var(--couleur-gris-fond); background: var(--couleur-gris-fond);
} }
#en-tete .compte-panier a:hover, #en-tete .compte-panier a:focus-within { #en-tete .compte-panier a:hover, #en-tete .compte-panier a:focus-within {
@ -947,14 +862,17 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
/* /*
* Le menu avec les Catégories de Produits pour une navigation rapide. * Le menu avec les Catégories de Produits pour une navigation rapide.
*
* 1. Applique une marge supérieure égale à la hauteur de l'en-tête pour qu'elle puisse s'afficher
* correctement.
*/ */
#menu-categories-produits { #menu-categories-produits {
/* Dimensions */ /* Dimensions */
--menu-entree-longueur-minimale: 13ch; --menu-entree-longueur-minimale: 13ch;
--menu-section-marges-bloc-debut: var(--en-tete-hauteur); --menu-section-marges-bloc-debut: var(--en-tete-hauteur); /* 1 */
--menu-entree-marges-internes-ligne: var(--espace-m); --menu-entree-marges-internes-ligne: var(--espace-m);
position: relative; position: relative;
margin-top: var(--menu-section-marges-bloc-debut); margin-top: var(--menu-section-marges-bloc-debut); /* 1 */
} }
#menu-categories-produits[data-entrees-presentes-debut] svg:first-of-type { #menu-categories-produits[data-entrees-presentes-debut] svg:first-of-type {
opacity: 100%; opacity: 100%;
@ -966,8 +884,8 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
pointer-events: none; pointer-events: none;
position: absolute; position: absolute;
bottom: calc(17.59px - 0.35rem); bottom: calc(17.59px - 0.35rem);
inline-size: 0.8rem; width: 0.8rem;
block-size: 0.8rem; height: 0.8rem;
opacity: 0%; opacity: 0%;
mix-blend-mode: exclusion; mix-blend-mode: exclusion;
shape-rendering: geometricprecision; shape-rendering: geometricprecision;
@ -995,14 +913,16 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
} }
#menu-categories-produits ul { #menu-categories-produits ul {
display: grid; display: grid;
grid-template-columns: grid-template-columns: repeat(auto-fit, minmax(var(--menu-entree-longueur-minimale), 1fr)); /* 1 */
repeat(auto-fit, minmax(var(--menu-entree-longueur-minimale), 1fr)); /* 1 */
gap: 1px; gap: 1px;
place-items: center; place-items: center;
/*
* 1. Force chaque entrée à occuper tout l'espace alloué par grid.
*/
} }
#menu-categories-produits ul li { #menu-categories-produits ul li {
inline-size: 100%; width: 100%; /* 1 */
font-weight: 500; font-weight: 450;
font-style: italic; font-style: italic;
color: var(--couleur-gris); color: var(--couleur-gris);
text-align: center; text-align: center;
@ -1010,38 +930,37 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
letter-spacing: var(--espacement-inter-lettres-etendu-m); letter-spacing: var(--espacement-inter-lettres-etendu-m);
background: var(--couleur-noir); background: var(--couleur-noir);
} }
#menu-categories-produits ul li:hover {
background: var(--couleur-gris);
}
#menu-categories-produits ul li a {
display: inline-block;
inline-size: inherit;
padding: var(--menu-entree-marges-internes-ligne) 0;
text-decoration: none;
}
#menu-categories-produits ul li a:focus-visible {
outline-color: var(--couleur-blanc);
}
@media (hover: hover) {
#menu-categories-produits ul li a:hover {
color: var(--couleur-noir);
background: var(--arriere-plan-points);
}
}
#menu-categories-produits ul li.categorie-courante {
background: var(--couleur-gris);
}
#menu-categories-produits ul li.categorie-courante a { #menu-categories-produits ul li.categorie-courante a {
font-weight: 600; font-weight: 600;
color: var(--couleur-noir); color: var(--couleur-noir);
background: var(--arriere-plan-points); background: var(--couleur-gris-fonce);
}
#menu-categories-produits ul li.categorie-courante a:focus-visible {
outline-color: var(--couleur-noir);
} }
@media (hover: hover) { @media (hover: hover) {
#menu-categories-produits ul li.categorie-courante a:hover { #menu-categories-produits ul li.categorie-courante a:hover {
background: var(--arriere-plan-points); color: var(--couleur-noir);
}
}
#menu-categories-produits ul li {
/*
* 1. Permet de créer des marges verticales.
* 2. Hérite de la longueur du conteneur.
* 3. Surchargement de styles pour les liens.
*/
}
#menu-categories-produits ul li a {
display: inline-block; /* 1 */
width: inherit; /* 2 */
padding: var(--menu-entree-marges-internes-ligne) 0;
text-decoration: none;
outline: initial; /* 3 */
}
#menu-categories-produits ul li a:focus-visible {
color: var(--couleur-gris-fonce);
outline: initial; /* 3 */
}
@media (hover: hover) {
#menu-categories-produits ul li a:hover {
background: var(--couleur-gris-fonce);
} }
} }
@media (width <= 1000px) { @media (width <= 1000px) {
@ -1053,10 +972,10 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
} }
#menu-categories-produits ul li { #menu-categories-produits ul li {
flex-grow: 1; flex-grow: 1;
inline-size: min(140px, 100%); width: min(140px, 100%);
} }
#menu-categories-produits ul li a { #menu-categories-produits ul li a {
inline-size: 100%; width: 100%;
border: initial; border: initial;
} }
} }
@ -1067,8 +986,8 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
flex-flow: row nowrap; flex-flow: row nowrap;
} }
#menu-categories-produits ul li { #menu-categories-produits ul li {
inline-size: initial; width: initial;
min-inline-size: 140px; min-width: 140px;
} }
} }
@ -1104,9 +1023,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
top: var(--colonne-gauche-position-haut); top: var(--colonne-gauche-position-haut);
height: var(--colonne-gauche-photo-hauteur); height: var(--colonne-gauche-photo-hauteur);
} }
.photos-produit .colonne.colonne-gauche figure, .photos-produit .colonne.colonne-gauche figure, .photos-produit .colonne.colonne-gauche picture, .photos-produit .colonne.colonne-gauche img {
.photos-produit .colonne.colonne-gauche picture,
.photos-produit .colonne.colonne-gauche img {
height: 100%; height: 100%;
} }
.photos-produit .colonne.colonne-droite img { .photos-produit .colonne.colonne-droite img {
@ -1181,8 +1098,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
--carte-produit-longueur-maximale: 1000px; --carte-produit-longueur-maximale: 1000px;
display: grid; display: grid;
grid-auto-rows: 1fr; grid-auto-rows: 1fr;
grid-template-columns: grid-template-columns: repeat(auto-fit, minmax(var(--carte-produit-longueur-minimale), 1fr)); /* 1 */
repeat(auto-fit, minmax(var(--carte-produit-longueur-minimale), 1fr)); /* 1 */
gap: 1px; /* 2 */ gap: 1px; /* 2 */
min-height: var(--grille-produits-hauteur-minimale); min-height: var(--grille-produits-hauteur-minimale);
} }
@ -1424,9 +1340,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
.details-produit__textes .section-textuelle:not(:last-of-type) { .details-produit__textes .section-textuelle:not(:last-of-type) {
border-block-end: 1px solid var(--couleur-noir); border-block-end: 1px solid var(--couleur-noir);
} }
.details-produit__textes .details-produit__textes .section-textuelle:has(button[aria-expanded=false]) .section-textuelle__contenu {
.section-textuelle:has(button[aria-expanded="false"])
.section-textuelle__contenu {
display: none; display: none;
} }
.details-produit__textes .section-textuelle h3 { .details-produit__textes .section-textuelle h3 {
@ -1535,10 +1449,7 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
position: relative; position: relative;
} }
@media (hover: hover) { @media (hover: hover) {
.produits-similaires .produits-similaires .grille-produits-similaires article figure a:hover .produit__illustration__survol {
.grille-produits-similaires
article figure a:hover
.produit__illustration__survol {
visibility: visible; visibility: visible;
opacity: 100%; opacity: 100%;
transition: 0.3s opacity, 0.3s visibility; transition: 0.3s opacity, 0.3s visibility;
@ -1611,4 +1522,4 @@ body:has(#menu-mobile:not([aria-hidden="true"])) {
text-align: right; text-align: right;
} }
/* # sourceMappingURL=main.css.map */ /*# sourceMappingURL=main.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -7,9 +7,6 @@
height: initial; height: initial;
margin: auto; margin: auto;
padding: var(--espace-xl) 0; padding: var(--espace-xl) 0;
font-style: italic;
text-transform: uppercase;
letter-spacing: var(--espacement-inter-lettres-etendu-m);
} }
/* # sourceMappingURL=page-boutique.css.map */ /* # sourceMappingURL=page-boutique.css.map */

View file

@ -1 +1 @@
{"version":3,"sourceRoot":"","sources":["../../../src/sass/pages/page-boutique.scss"],"names":[],"mappings":"AAGE;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA","file":"page-boutique.css"} {"version":3,"sourceRoot":"","sources":["../../../src/sass/pages/page-boutique.scss"],"names":[],"mappings":"AAGE;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA","file":"page-boutique.css"}

View file

@ -1 +1 @@
#page-boutique .actions{text-align:center;align-content:center;width:100%}#page-boutique .actions button{height:initial;padding:var(--espace-xl) 0;text-transform:uppercase;letter-spacing:var(--espacement-inter-lettres-etendu-m);margin:auto;font-style:italic} #page-boutique .actions{text-align:center;align-content:center;width:100%}#page-boutique .actions button{height:initial;padding:var(--espace-xl) 0;margin:auto}

View file

@ -85,7 +85,6 @@ button, input, select, textarea {
/* /*
* Désactive les animations pour les Utilisateurs n'en souhaitant pas. * Désactive les animations pour les Utilisateurs n'en souhaitant pas.
*/ */
/* @media (prefers-reduced-motion) { /* @media (prefers-reduced-motion) {
*, *::before, *::after { *, *::before, *::after {
scroll-behavior: auto !important; scroll-behavior: auto !important;

View file

@ -35,13 +35,6 @@ button {
&.bouton-case-pleine { &.bouton-case-pleine {
width: 100%; width: 100%;
height: 100%; height: 100%;
@media (hover: hover) {
&:hover {
color: var(--couleur-noir);
background: var(--arriere-plan-points);
}
}
} }
// Bouton avec les couleurs inversées. // Bouton avec les couleurs inversées.
@ -65,7 +58,7 @@ button {
@media (hover: hover) { @media (hover: hover) {
&:hover { &:hover {
color: var(--couleur-noir); color: var(--couleur-noir);
background: var(--arriere-plan-points); background: var(--couleur-gris);
} }
} }
} }

View file

@ -27,7 +27,6 @@
gap: 1px; /* 2 */ gap: 1px; /* 2 */
min-height: var(--grille-produits-hauteur-minimale); min-height: var(--grille-produits-hauteur-minimale);
// Carte d'un Produit.
article { article {
max-width: var(--carte-produit-longueur-maximale); max-width: var(--carte-produit-longueur-maximale);
box-shadow: 0 0 0 1px var(--couleur-noir); /* 2 */ box-shadow: 0 0 0 1px var(--couleur-noir); /* 2 */

View file

@ -2,17 +2,22 @@
/* /*
* Le menu avec les Catégories de Produits pour une navigation rapide. * Le menu avec les Catégories de Produits pour une navigation rapide.
*
* 1. Applique une marge supérieure égale à la hauteur de l'en-tête pour qu'elle puisse s'afficher
* correctement.
*/ */
#menu-categories-produits { #menu-categories-produits {
/* Dimensions */ /* Dimensions */
--menu-entree-longueur-minimale: 13ch; --menu-entree-longueur-minimale: 13ch;
// Marges // Marges
--menu-section-marges-bloc-debut: var(--en-tete-hauteur); --menu-section-marges-bloc-debut: var(--en-tete-hauteur); /* 1 */
--menu-entree-marges-internes-ligne: var(--espace-m); --menu-entree-marges-internes-ligne: var(--espace-m);
// height: var(--menu-section-hauteur);
position: relative; position: relative;
margin-top: var(--menu-section-marges-bloc-debut); margin-top: var(--menu-section-marges-bloc-debut); /* 1 */
&[data-entrees-presentes-debut] { &[data-entrees-presentes-debut] {
svg:first-of-type { svg:first-of-type {
@ -30,8 +35,8 @@
pointer-events: none; pointer-events: none;
position: absolute; position: absolute;
bottom: calc(35.18px / 2 - 0.35rem); bottom: calc(35.18px / 2 - 0.35rem);
inline-size: 0.8rem; width: 0.8rem;
block-size: 0.8rem; height: 0.8rem;
opacity: 0%; opacity: 0%;
mix-blend-mode: exclusion; mix-blend-mode: exclusion;
shape-rendering: geometricprecision; shape-rendering: geometricprecision;
@ -66,9 +71,12 @@
gap: 1px; gap: 1px;
place-items: center; place-items: center;
/*
* 1. Force chaque entrée à occuper tout l'espace alloué par grid.
*/
li { li {
inline-size: 100%; width: 100%; /* 1 */
font-weight: 500; font-weight: 450;
font-style: italic; font-style: italic;
color: var(--couleur-gris); color: var(--couleur-gris);
text-align: center; text-align: center;
@ -76,45 +84,40 @@
letter-spacing: var(--espacement-inter-lettres-etendu-m); letter-spacing: var(--espacement-inter-lettres-etendu-m);
background: var(--couleur-noir); background: var(--couleur-noir);
&:hover { &.categorie-courante {
background: var(--couleur-gris); a {
font-weight: 600;
color: var(--couleur-noir);
background: var(--couleur-gris-fonce);
@media (hover: hover) {
&:hover {
color: var(--couleur-noir);
}
}
}
} }
/*
* 1. Permet de créer des marges verticales.
* 2. Hérite de la longueur du conteneur.
* 3. Surchargement de styles pour les liens.
*/
a { a {
display: inline-block; display: inline-block; /* 1 */
inline-size: inherit; width: inherit; /* 2 */
padding: var(--menu-entree-marges-internes-ligne) 0; padding: var(--menu-entree-marges-internes-ligne) 0;
text-decoration: none; text-decoration: none;
outline: initial; /* 3 */
&:focus-visible { &:focus-visible {
outline-color: var(--couleur-blanc); color: var(--couleur-gris-fonce);
outline: initial; /* 3 */
} }
@media (hover: hover) { @media (hover: hover) {
&:hover { &:hover {
color: var(--couleur-noir); background: var(--couleur-gris-fonce);
background: var(--arriere-plan-points);
}
}
}
// Entrée de la Catégorie courante.
&.categorie-courante {
background: var(--couleur-gris);
a {
font-weight: 600;
color: var(--couleur-noir);
background: var(--arriere-plan-points);
&:focus-visible {
outline-color: var(--couleur-noir);
}
@media (hover: hover) {
&:hover {
background: var(--arriere-plan-points);
}
} }
} }
} }
@ -129,10 +132,10 @@
li { li {
flex-grow: 1; flex-grow: 1;
inline-size: min(140px, 100%); width: min(140px, 100%);
a { a {
inline-size: 100%; width: 100%;
border: initial; border: initial;
} }
} }
@ -145,8 +148,8 @@
flex-flow: row nowrap; flex-flow: row nowrap;
li { li {
inline-size: initial; width: initial;
min-inline-size: 140px; min-width: 140px;
} }
} }
} }

View file

@ -10,9 +10,6 @@
height: initial; height: initial;
margin: auto; margin: auto;
padding: var(--espace-xl) 0; padding: var(--espace-xl) 0;
font-style: italic;
text-transform: uppercase;
letter-spacing: var(--espacement-inter-lettres-etendu-m);
} }
} }
} }

View file

@ -24,7 +24,7 @@ const _etats = {
<div class="actions"> <div class="actions">
<button <button
{{ products|length == 12 ? '' : 'hidden' }} class="bouton-case-pleine" {{ products|length == 12 ? '' : 'hidden' }} class="bouton-case-pleine bouton-inverse"
id="bouton-plus-de-produits" type="button" id="bouton-plus-de-produits" type="button"
> >
Show more Show more

Binary file not shown.

Before

Width:  |  Height:  |  Size: 908 KiB

After

Width:  |  Height:  |  Size: 958 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 492 KiB

After

Width:  |  Height:  |  Size: 511 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 596 KiB

After

Width:  |  Height:  |  Size: 613 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 484 KiB

After

Width:  |  Height:  |  Size: 494 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 527 KiB

After

Width:  |  Height:  |  Size: 546 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 630 KiB

After

Width:  |  Height:  |  Size: 647 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 416 KiB

After

Width:  |  Height:  |  Size: 426 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 774 KiB

After

Width:  |  Height:  |  Size: 799 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 747 KiB

After

Width:  |  Height:  |  Size: 776 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 653 KiB

After

Width:  |  Height:  |  Size: 671 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 814 KiB

After

Width:  |  Height:  |  Size: 856 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 616 KiB

After

Width:  |  Height:  |  Size: 653 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 660 KiB

After

Width:  |  Height:  |  Size: 691 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 661 KiB

After

Width:  |  Height:  |  Size: 696 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 617 KiB

After

Width:  |  Height:  |  Size: 629 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 516 KiB

After

Width:  |  Height:  |  Size: 532 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 525 KiB

After

Width:  |  Height:  |  Size: 540 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 780 KiB

After

Width:  |  Height:  |  Size: 798 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 683 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 981 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 850 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 448 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 738 KiB

After

Width:  |  Height:  |  Size: 754 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 601 KiB

After

Width:  |  Height:  |  Size: 624 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 617 KiB

After

Width:  |  Height:  |  Size: 648 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 376 KiB

After

Width:  |  Height:  |  Size: 385 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1,010 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1,001 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 644 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 488 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 692 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 352 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 205 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 KiB