:root {
--fond: #e7dfd2;
--fond-rgb: 231, 223, 210;
--lin: #dcd2c2;
--pierre: #d3c8b8;
--ivoire: #f3eee6;
--ivoire-rgb: 243, 238, 230;
--sable: #b2a898;
--encre: #141110;
--encre-douce: #2b2724;
--gris: #3d3935;
--trait: rgba(28, 25, 23, 0.14);
--trait-clair: rgba(238, 237, 233, 0.18);
--nuit: #0c0a09;
--nuit-2: #1c1917;
--ambre: #c4642c;
--serif: 'Cormorant Garamond', 'Cormorant', Garamond, 'Times New Roman', serif;
--sans: 'Jost', 'Futura', 'Helvetica Neue', Arial, sans-serif;
--largeur: 1320px;
--marge: clamp(20px, 4.2vw, 64px);
--entete: 76px;
--rayon: 0;
--lent: cubic-bezier(0.22, 0.61, 0.36, 1);
--duree-bandeau: 5s;
}
@view-transition {
navigation: auto;
}
::view-transition-old(root) {
animation: 0.3s var(--lent) both page-sortie;
}
::view-transition-new(root) {
animation: 0.45s var(--lent) both page-entree;
}
@keyframes page-sortie {
to {
opacity: 0;
}
}
@keyframes page-entree {
from {
opacity: 0;
transform: scale(1.012);
}
}
@media (prefers-reduced-motion: reduce) {
@view-transition {
navigation: none;
}
}
[hidden] {
display: none !important;
}
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
scroll-padding-top: calc(var(--entete) + 16px);
}
@media (prefers-reduced-motion: reduce) {
html {
scroll-behavior: auto;
}
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
}
}
body {
margin: 0;
background: var(--fond);
color: var(--encre);
font-family: var(--sans);
font-weight: 400;
font-size: 16px;
line-height: 1.7;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
body.sans-defilement {
overflow: hidden;
}
body:has(> .entete--transparent) {
background: var(--nuit);
}
body:has(> .entete--transparent) > main {
background: var(--fond);
}
img,
svg,
video {
display: block;
max-width: 100%;
height: auto;
}
a {
color: inherit;
text-decoration: none;
}
button,
input,
select,
textarea {
font: inherit;
color: inherit;
}
button {
cursor: pointer;
background: none;
border: 0;
padding: 0;
}
::selection {
background: var(--encre);
color: var(--ivoire);
}
:focus-visible {
outline: 2px solid var(--encre);
outline-offset: 4px;
}
.section--nuit :focus-visible,
.hero :focus-visible,
.pied :focus-visible,
.bandeau-ouverture :focus-visible,
.visionneuse :focus-visible {
outline-color: var(--ivoire);
}
.lien-evitement {
position: absolute;
left: 12px;
top: -60px;
z-index: 200;
padding: 10px 16px;
background: var(--encre);
color: var(--ivoire);
font-size: 13px;
}
.lien-evitement:focus {
top: 12px;
}
.visuellement-cache {
position: absolute !important;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
}
h1,
h2,
h3,
h4 {
margin: 0;
font-family: var(--serif);
font-weight: 400;
line-height: 1.1;
letter-spacing: -0.012em;
}
p {
margin: 0 0 1.1em;
}
p:last-child {
margin-bottom: 0;
}
.surtitre {
display: inline-block;
margin-bottom: 22px;
font-family: var(--sans);
font-size: 11px;
font-weight: 400;
letter-spacing: 0.24em;
text-transform: uppercase;
color: var(--gris);
}
.section--nuit .surtitre,
.hero .surtitre {
color: rgba(238, 237, 233, 0.78);
}
.titre-xxl {
font-size: clamp(38px, 4.7vw, 74px);
line-height: 1;
}
.titre-xl {
font-size: clamp(34px, 4.5vw, 66px);
}
.titre-l {
font-size: clamp(29px, 3.3vw, 47px);
}
.titre-m {
font-size: clamp(24px, 2.3vw, 32px);
}
.titre-s {
font-size: 24px;
}
em {
font-style: italic;
}
.texte-l {
font-family: var(--serif);
font-size: clamp(22px, 2.2vw, 30px);
font-weight: 400;
line-height: 1.42;
}
.texte-m {
font-size: 17px;
line-height: 1.75;
}
.discret {
color: var(--gris);
}
.petit {
font-size: 13px;
line-height: 1.6;
}
.section--nuit .discret {
color: rgba(238, 237, 233, 0.76);
}
.chiffre {
font-family: var(--serif);
font-feature-settings: 'lnum' 1;
}
.bouton {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 14px;
min-height: 54px;
padding: 0 34px;
border: 1px solid var(--encre);
border-radius: var(--rayon);
background: var(--encre);
color: var(--ivoire);
font-family: var(--sans);
font-size: 12px;
font-weight: 400;
letter-spacing: 0.2em;
text-transform: uppercase;
transition: background 0.4s var(--lent), color 0.4s var(--lent), border-color 0.4s var(--lent);
}
.bouton:hover {
background: transparent;
color: var(--encre);
}
.bouton--clair {
border-color: var(--ivoire);
background: var(--ivoire);
color: var(--encre);
}
.bouton--clair:hover {
background: transparent;
color: var(--ivoire);
}
.bouton--contour {
background: transparent;
color: var(--encre);
}
.bouton--contour:hover {
background: var(--encre);
color: var(--ivoire);
}
.bouton--contour-clair {
border-color: rgba(238, 237, 233, 0.75);
background: transparent;
color: var(--ivoire);
}
.bouton--contour-clair:hover {
border-color: var(--ivoire);
background: var(--ivoire);
color: var(--encre);
}
.bouton--large {
width: 100%;
}
.bouton[disabled] {
opacity: 0.45;
pointer-events: none;
}
.lien-trait {
position: relative;
display: inline-block;
padding-bottom: 4px;
font-size: 12px;
font-weight: 400;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.lien-trait::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 1px;
background: currentColor;
transform-origin: left;
transition: transform 0.6s var(--lent);
}
.lien-trait:hover::after {
transform: scaleX(0.35);
}
.cookies {
position: fixed;
left: 24px;
bottom: 24px;
z-index: 70;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 14px;
width: min(420px, calc(100% - 48px));
color: var(--encre);
opacity: 0;
transform: translateY(12px);
transition: opacity 0.6s var(--lent), transform 0.6s var(--lent);
}
.cookies:focus { outline: none; }
.cookies.est-ouvert {
opacity: 1;
transform: none;
}
.cookies[hidden] { display: none; }
.cookies__carte {
width: 100%;
max-height: calc(100vh - 48px - 58px);
max-height: calc(100dvh - 48px - 58px);
overflow-y: auto;
padding: 24px 26px 22px;
background: var(--fond);
border-radius: 14px;
box-shadow: 0 20px 50px rgba(20, 17, 16, 0.22);
}
.cookies__entete {
display: grid;
grid-template-columns: 1fr auto;
gap: 18px;
align-items: start;
}
.cookies__marque {
display: flex;
flex-direction: column;
align-items: flex-start;
padding-top: 2px;
}
.cookies__logo {
display: block;
height: 22px;
width: auto;
fill: currentColor;
}
.cookies__logo--texte {
font-family: var(--serif);
font-size: 22px;
letter-spacing: 0.3em;
line-height: 1;
}
.cookies__signature {
display: block;
margin-top: 7px;
font-size: 7px;
line-height: 1;
letter-spacing: 0.34em;
text-transform: uppercase;
white-space: nowrap;
}
.cookies__texte {
margin: 0;
font-size: 13.5px;
line-height: 1.6;
}
.cookies__note {
margin: 12px 0 0;
font-size: 12.5px;
line-height: 1.6;
color: var(--gris);
}
.cookies__lien {
display: inline-block;
margin-top: 10px;
padding: 4px 0;
font-size: 12.5px;
text-decoration: underline;
text-underline-offset: 3px;
}
.cookies__detail {
margin-top: 14px;
font-size: 13px;
line-height: 1.6;
color: var(--gris);
}
.cookies__detail[hidden] { display: none; }
.cookies__case {
display: grid;
grid-template-columns: 20px 1fr;
gap: 14px;
align-items: start;
padding: 14px 0;
border-top: 1px solid var(--trait);
cursor: pointer;
}
.cookies__case:last-of-type { border-bottom: 1px solid var(--trait); }
.cookies__case input {
width: 18px;
height: 18px;
margin: 2px 0 0;
accent-color: var(--encre);
cursor: pointer;
}
.cookies__nom {
display: block;
margin-bottom: 3px;
color: var(--encre);
font-size: 11px;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.cookies__enregistrer {
margin-top: 6px;
padding: 12px 0 4px;
background: none;
border: 0;
color: var(--encre);
font-family: inherit;
cursor: pointer;
}
.cookies__choix {
display: grid;
grid-template-columns: repeat(3, 1fr);
margin-top: 20px;
border: 1px solid rgba(20, 17, 16, 0.3);
border-radius: 8px;
overflow: hidden;
}
.cookies__bouton {
min-height: 46px;
padding: 6px;
background: none;
border: 0;
border-left: 1px solid rgba(20, 17, 16, 0.3);
color: var(--encre);
font-family: var(--sans);
font-size: 11px;
font-weight: 400;
letter-spacing: 0.14em;
line-height: 1.3;
text-transform: uppercase;
cursor: pointer;
transition: background 0.3s var(--lent), color 0.3s var(--lent);
}
.cookies__bouton:first-child { border-left: 0; }
.cookies__bouton:hover,
.cookies__bouton[aria-expanded='true'] { background: rgba(20, 17, 16, 0.07); }
.cookies__bouton--plein {
margin: -1px -1px -1px 0;
background: var(--encre);
color: var(--ivoire);
}
.cookies__bouton--plein:hover { background: var(--encre-douce); }
.cookies__bouton:focus-visible { outline: 1px solid var(--encre); outline-offset: -4px; }
.cookies__bouton--plein:focus-visible { outline-color: var(--ivoire); }
.cookies__fermer {
display: grid;
place-items: center;
width: 44px;
height: 44px;
margin-left: 10px;
padding: 0;
border: 0;
border-radius: 50%;
background: var(--encre);
color: var(--ivoire);
box-shadow: 0 10px 30px rgba(20, 17, 16, 0.25);
cursor: pointer;
transition: background 0.3s var(--lent);
}
.cookies__fermer:hover { background: var(--encre-douce); }
.cookies__fermer:focus-visible { outline: 1px solid var(--encre); outline-offset: 3px; }
.cookies__fermer svg {
width: 14px;
height: 14px;
}
@media (max-width: 760px) {
.cookies {
left: 0;
right: 0;
bottom: 0;
gap: 0;
width: auto;
}
.cookies__carte {
max-height: calc(100vh - 76px);
max-height: calc(100dvh - 76px);
padding: 20px 20px calc(18px + env(safe-area-inset-bottom));
border-radius: 14px 14px 0 0;
box-shadow: 0 -12px 40px rgba(20, 17, 16, 0.2);
}
.cookies__entete {
grid-template-columns: 1fr;
gap: 14px;
}
.cookies__marque {
order: -1;
padding: 0 52px 0 0;
}
.cookies__logo { height: 17px; }
.cookies__signature { font-size: 5.5px; margin-top: 6px; }
.cookies__choix { margin-top: 16px; }
.cookies__bouton {
padding: 6px 4px;
letter-spacing: 0.08em;
}
.cookies__fermer {
position: absolute;
top: 6px;
right: 8px;
margin: 0;
background: none;
color: var(--encre);
box-shadow: none;
}
.cookies__fermer:hover { background: rgba(20, 17, 16, 0.07); }
.cookies__fermer:focus-visible { outline-offset: -4px; }
}
@media (max-width: 560px) {
.cookies__carte { padding: 14px 16px calc(12px + env(safe-area-inset-bottom)); }
.cookies__entete { gap: 0; }
.cookies__marque,
.cookies__note { display: none; }
.cookies__texte {
padding-right: 34px;
font-size: 13px;
line-height: 1.45;
}
.cookies__lien { margin-top: 2px; }
.cookies__choix { margin-top: 10px; }
.cookies__bouton { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
.cookies { transition: none; transform: none; }
}
.pied__cookies {
padding: 0;
background: none;
border: 0;
color: inherit;
font: inherit;
cursor: pointer;
transition: color 0.3s;
}
.pied__cookies:hover { color: var(--ivoire); }
.pied__cookies[hidden] { display: none; }
.choix-mesure {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 8px 24px;
}
.choix-mesure[hidden] { display: none; }
.choix-mesure .lien-trait[hidden] { display: none; }
.choix-mesure .lien-trait {
padding: 12px 0 4px;
background: none;
border: 0;
color: inherit;
cursor: pointer;
}
.fleche {
display: inline-block;
transition: transform 0.5s var(--lent);
}
a:hover .fleche,
button:hover .fleche {
transform: translateX(5px);
}
.conteneur {
width: 100%;
max-width: var(--largeur);
margin: 0 auto;
padding: 0 var(--marge);
}
.conteneur--etroit {
max-width: 880px;
}
.conteneur--moyen {
max-width: 1080px;
}
.section {
padding: clamp(88px, 11vw, 168px) 0;
}
.section--serree {
padding: clamp(64px, 7vw, 104px) 0;
}
.section--lin {
background: var(--lin);
}
.section--nuit {
background: var(--nuit);
color: var(--ivoire);
}
.centre {
text-align: center;
}
.entete-section {
max-width: 760px;
margin: 0 auto clamp(52px, 6vw, 88px);
text-align: center;
}
.entete-section p {
margin-top: 22px;
}
.entete-section--gauche {
margin-left: 0;
text-align: left;
}
.grille-2 {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(40px, 6vw, 110px);
align-items: center;
}
.grille-2--haut {
align-items: start;
}
.entete {
position: sticky;
top: 0;
z-index: 50;
height: var(--entete);
background: rgba(var(--fond-rgb), 0.94);
backdrop-filter: saturate(1.2) blur(14px);
-webkit-backdrop-filter: saturate(1.2) blur(14px);
border-bottom: 1px solid var(--trait);
transition: background 0.5s var(--lent), color 0.5s var(--lent), border-color 0.5s var(--lent);
}
.entete--transparent {
position: fixed;
left: 0;
right: 0;
top: 0;
background: transparent;
color: var(--ivoire);
border-bottom-color: transparent;
backdrop-filter: none;
-webkit-backdrop-filter: none;
}
.entete--transparent.est-defile {
top: 0;
background: rgba(var(--fond-rgb), 0.94);
color: var(--encre);
border-bottom-color: var(--trait);
backdrop-filter: saturate(1.2) blur(14px);
-webkit-backdrop-filter: saturate(1.2) blur(14px);
}
.entete__interieur {
display: grid;
grid-template-columns: 1fr auto 1fr;
align-items: center;
column-gap: 24px;
height: 100%;
}
.marque {
position: relative;
display: block;
justify-self: center;
line-height: 0;
text-align: center;
}
.marque__logo {
display: block;
height: 22.5px;
width: auto;
}
.marque__signature {
display: block;
margin-top: 8px;
font-size: 8px;
line-height: 1;
letter-spacing: 0.34em;
text-transform: uppercase;
white-space: nowrap;
text-indent: 0.34em;
}
.entete--commande .entete__interieur {
grid-template-columns: 1fr auto 1fr;
column-gap: 0;
}
.entete--commande .marque {
justify-self: center;
}
.entete--commande .marque__logo {
height: 19px;
}
.entete__gauche,
.entete__actions {
display: flex;
align-items: center;
gap: 22px;
}
.entete__gauche {
justify-self: start;
}
.entete__actions {
justify-self: end;
}
.entete__gauche button,
.entete__actions a {
position: relative;
display: inline-flex;
align-items: center;
color: inherit;
}
.entete__gauche button::before,
.entete__actions a::before,
.marque::before {
content: '';
position: absolute;
inset: -10px -8px;
}
.entete__picto {
display: block;
width: 26px;
height: 26px;
fill: none;
stroke: currentColor;
stroke-width: 1;
}
.entete__icone[aria-current='page'] .entete__picto {
stroke-width: 1.4;
}
.entete__panier .entete__picto {
width: 28px;
height: 28px;
}
.entete__icone .compteur-panier {
position: absolute;
left: 0;
right: 0;
top: 12px;
min-width: 0;
font-size: 11px;
line-height: 1;
}
.entete__icone .compteur-panier:not([data-nombre]),
.entete__icone .compteur-panier[data-nombre='0'] {
visibility: hidden;
}
.compteur-panier {
display: inline-block;
min-width: 1.4em;
font-family: var(--serif);
font-size: 13px;
letter-spacing: 0;
text-align: center;
}
.burger__traits {
position: relative;
display: block;
width: 26px;
height: 26px;
}
.burger__traits span {
position: absolute;
left: 0;
right: 0;
height: 1px;
background: currentColor;
transition: transform 0.4s var(--lent), top 0.4s var(--lent), opacity 0.3s var(--lent);
}
.burger__traits span:nth-child(1) {
top: 6.5px;
}
.burger__traits span:nth-child(2) {
top: 12.5px;
}
.burger__traits span:nth-child(3) {
top: 18.5px;
}
.menu-ouvert .burger__traits span:nth-child(1) {
top: 12.5px;
transform: rotate(45deg);
}
.menu-ouvert .burger__traits span:nth-child(2) {
opacity: 0;
}
.menu-ouvert .burger__traits span:nth-child(3) {
top: 12.5px;
transform: rotate(-45deg);
}
.menu-mobile {
position: fixed;
inset: 0;
z-index: 45;
display: flex;
flex-direction: column;
padding: calc(var(--entete) + 28px) var(--marge) 24px;
overflow-y: auto;
overscroll-behavior: contain;
background: var(--fond);
color: var(--encre);
opacity: 0;
visibility: hidden;
transition: opacity 0.5s var(--lent), visibility 0.5s;
}
.menu-ouvert .menu-mobile {
opacity: 1;
visibility: visible;
}
.menu-ouvert .entete {
color: var(--encre);
}
.recherche-ouverte .entete {
color: var(--encre);
}
.menu-ouvert .entete--transparent,
.recherche-ouverte .entete--transparent {
background: rgba(var(--fond-rgb), 0.94);
border-bottom-color: var(--trait);
}
.menu-mobile__familles,
.menu-mobile__pages {
margin: 0;
padding: 0;
list-style: none;
}
.menu-mobile__familles {
display: grid;
grid-auto-flow: column;
grid-auto-columns: minmax(0, 1fr);
gap: 10px;
}
.menu-mobile__familles a {
display: block;
}
.menu-mobile__familles img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
background: var(--pierre);
}
.menu-mobile__familles span {
display: block;
margin-top: 12px;
font-size: 13px;
letter-spacing: 0.16em;
text-transform: uppercase;
}
@media (max-width: 359px) {
.menu-mobile__familles span {
font-size: 12px;
letter-spacing: 0.08em;
}
}
.menu-mobile__pages {
margin-top: 30px;
border-top: 1px solid var(--trait);
}
.menu-mobile__pages a {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 15px 0;
border-bottom: 1px solid var(--trait);
font-size: 15px;
line-height: 1.3;
letter-spacing: 0.18em;
text-transform: uppercase;
}
.menu-mobile__pages svg {
flex: none;
width: 7px;
height: 12px;
fill: none;
stroke: currentColor;
stroke-width: 1;
}
.menu-mobile__familles a[aria-current] span,
.menu-mobile__pages a[aria-current] {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 6px;
}
.menu-mobile__pied {
display: flex;
flex-direction: column;
margin-top: 8px;
font-size: 15px;
color: var(--gris);
}
.menu-mobile__pied a {
padding: 10px 0;
}
.menu-mobile__pages .menu-mobile__compte span {
margin-right: auto;
}
.menu-mobile__compte .entete__picto {
flex: none;
width: 22px;
height: 22px;
margin: -4px 0;
}
@media (min-width: 961px) {
.menu-mobile {
inset: var(--entete) auto 0 0;
width: min(440px, 100%);
padding: 56px 56px 44px;
border-right: 1px solid var(--trait);
box-shadow: 0 0 0 100vmax rgba(12, 10, 9, 0);
transform: translateX(-32px);
transition: opacity 0.5s var(--lent), transform 0.5s var(--lent), box-shadow 0.5s var(--lent), visibility 0.5s;
}
.menu-ouvert .menu-mobile {
transform: none;
box-shadow: 0 0 0 100vmax rgba(12, 10, 9, 0.3);
}
}
@media (min-width: 1240px) {
.entete:not(.entete--commande) .conteneur {
max-width: 1760px;
}
}
.recherche {
position: fixed;
left: 0;
right: 0;
top: calc(var(--entete) + var(--decalage-bandeau, 0px));
bottom: 0;
z-index: 45;
overflow-y: auto;
overscroll-behavior: contain;
background: var(--fond);
color: var(--encre);
border-top: 1px solid var(--trait);
opacity: 0;
visibility: hidden;
transform: translateY(-8px);
transition: opacity 0.45s var(--lent), transform 0.45s var(--lent), box-shadow 0.45s var(--lent), visibility 0.45s;
}
.recherche-ouverte .recherche {
opacity: 1;
visibility: visible;
transform: none;
}
.recherche__interieur {
padding-top: 26px;
padding-bottom: 40px;
}
.recherche__formulaire {
display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
gap: 12px;
border-bottom: 1px solid currentColor;
}
.recherche__formulaire:focus-within {
box-shadow: inset 0 -1px 0 currentColor;
}
.recherche__formulaire .entete__picto {
width: 22px;
height: 22px;
}
.recherche__champ {
width: 100%;
min-width: 0;
padding: 12px 0;
border: 0;
border-radius: 0;
background: transparent;
color: inherit;
font: inherit;
font-size: 19px;
letter-spacing: 0.02em;
outline: none;
-webkit-appearance: none;
appearance: none;
}
.recherche__champ::placeholder {
color: var(--gris);
opacity: 0.8;
}
.recherche__champ::-webkit-search-cancel-button {
-webkit-appearance: none;
}
.recherche__fermer {
position: relative;
display: grid;
place-items: center;
width: 44px;
height: 44px;
margin-right: -12px;
color: inherit;
}
.recherche__fermer svg {
width: 15px;
height: 15px;
fill: none;
stroke: currentColor;
stroke-width: 1.1;
}
.recherche__resultats {
display: grid;
gap: 34px;
margin-top: 30px;
}
.recherche__titre {
margin: 0 0 16px;
font-size: 11.5px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--gris);
}
.recherche__produits,
.recherche__pages {
margin: 0;
padding: 0;
list-style: none;
}
.recherche__produits {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 22px 10px;
}
.recherche__produits a {
display: block;
}
.recherche__produits img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
margin-bottom: 10px;
background: var(--pierre);
transition: opacity 0.4s var(--lent);
}
.recherche__produits a:hover img {
opacity: 0.86;
}
.recherche__produits em {
display: block;
font-family: var(--serif);
font-style: italic;
font-size: 14px;
line-height: 1.2;
color: var(--gris);
}
.recherche__produits span {
display: block;
margin-top: 4px;
font-size: 11px;
line-height: 1.35;
letter-spacing: 0.16em;
text-transform: uppercase;
}
.recherche__pages {
border-top: 1px solid var(--trait);
}
.recherche__pages a {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 14px 0;
border-bottom: 1px solid var(--trait);
font-size: 14px;
letter-spacing: 0.16em;
text-transform: uppercase;
}
.recherche__pages svg {
flex: none;
width: 7px;
height: 12px;
fill: none;
stroke: currentColor;
stroke-width: 1;
}
.recherche__vide {
margin: 0;
font-size: 16px;
color: var(--gris);
}
@media (min-width: 961px) {
.recherche {
bottom: auto;
max-height: calc(100vh - var(--entete) - var(--decalage-bandeau, 0px));
border-bottom: 1px solid var(--trait);
box-shadow: 0 0 0 100vmax rgba(12, 10, 9, 0);
clip-path: inset(0 -100vmax -100vmax -100vmax);
}
.recherche-ouverte .recherche {
box-shadow: 0 0 0 100vmax rgba(12, 10, 9, 0.3);
}
.recherche__interieur {
max-width: 1760px;
padding-top: 40px;
padding-bottom: 52px;
}
.recherche__champ {
font-size: 24px;
}
.recherche__resultats {
grid-template-columns: minmax(0, 1fr) 280px;
gap: 64px;
margin-top: 40px;
}
.recherche__produits {
grid-template-columns: repeat(auto-fill, minmax(118px, 1fr));
gap: 28px 18px;
}
.recherche__vide {
grid-column: 1 / -1;
}
}
@media (prefers-reduced-motion: reduce) {
.recherche {
transform: none;
}
}
@media (max-width: 960px) {
.entete--commande .marque__logo {
height: 16px;
}
}
.hero {
position: relative;
min-height: 100vh;
min-height: 100lvh;
min-height: calc(100lvh - var(--hauteur-ouverture, 0px));
display: flex;
align-items: center;
overflow: hidden;
background: var(--nuit);
color: var(--ivoire);
}
.hero__media {
position: absolute;
inset: 0;
z-index: 0;
}
.hero__diapo {
--glisse: 0.9s cubic-bezier(0.65, 0, 0.35, 1);
position: absolute;
inset: 0;
overflow: hidden;
transform: translateX(100%);
visibility: hidden;
transition: transform var(--glisse), visibility 0s linear 0.9s;
}
.hero__diapo.est-active {
z-index: 2;
transform: none;
visibility: visible;
transition: transform var(--glisse), visibility 0s;
}
.hero__diapo.est-sortie {
z-index: 1;
transform: translateX(-100%);
}
.hero__diapo.sans-transition {
transition: none;
}
.hero__media img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: 50% 45%;
transform: scale(1.07);
filter: brightness(0.85);
}
.hero__diapo.est-active img {
animation: respiration var(--duree-bandeau) var(--lent) both;
}
.hero__diapo.est-sortie img {
transform: none;
filter: none;
}
.hero__diapo.est-active .hero__soir {
animation-name: respiration-soir;
}
@keyframes respiration-soir {
0% {
transform: scale(1.07);
}
100% {
transform: scale(1);
}
}
@keyframes respiration {
0% {
transform: scale(1.07);
filter: brightness(0.85);
}
12% {
filter: brightness(1);
}
100% {
transform: scale(1);
filter: brightness(1);
}
}
.hero::after {
content: '';
position: absolute;
inset: 0;
background:
linear-gradient(180deg, rgba(12, 10, 9, 0.34) 0%, rgba(12, 10, 9, 0) 20%),
linear-gradient(90deg, rgba(12, 10, 9, 0.8) 0%, rgba(12, 10, 9, 0.6) 30%, rgba(12, 10, 9, 0.18) 48%, rgba(12, 10, 9, 0) 58%);
pointer-events: none;
}
.hero__contenu {
position: relative;
z-index: 2;
width: 100%;
padding-top: 72px;
pointer-events: none;
}
.hero__contenu a,
.hero__contenu button {
pointer-events: auto;
}
.hero h1 {
max-width: 11em;
text-wrap: balance;
}
.hero__texte {
max-width: 520px;
}
.hero__texte p {
margin-top: 22px;
max-width: 400px;
font-size: 15px;
color: rgba(238, 237, 233, 0.92);
}
.hero__texte {
text-shadow: 0 1px 18px rgba(12, 10, 9, 0.45);
}
.hero__texte .boutons {
margin-top: 30px;
}
.hero__media img {
object-position: var(--x, 62%) 50%;
}
.boutons {
display: flex;
flex-wrap: wrap;
gap: 14px;
}
.hero__defiler {
position: absolute;
left: 50%;
bottom: 22px;
z-index: 2;
width: 1px;
height: 46px;
background: rgba(238, 237, 233, 0.25);
overflow: hidden;
}
.hero__defiler::after {
content: '';
position: absolute;
left: 0;
top: -46px;
width: 1px;
height: 46px;
background: var(--ivoire);
animation: goutte 2.6s var(--lent) infinite;
}
@keyframes goutte {
to {
top: 46px;
}
}
@media (max-width: 860px) {
.hero {
align-items: flex-end;
}
.hero__contenu {
padding-bottom: clamp(40px, 7vh, 72px);
}
.hero::after {
background: linear-gradient(180deg, rgba(12, 10, 9, 0.34) 0%, rgba(12, 10, 9, 0) 22%, rgba(12, 10, 9, 0) 42%, rgba(12, 10, 9, 0.72) 100%);
}
.hero__defiler {
display: none;
}
}
.manifeste {
max-width: 980px;
margin: 0 auto;
text-align: center;
}
.manifeste .texte-manifeste {
font-family: var(--serif);
font-size: clamp(28px, 3.4vw, 48px);
font-weight: 400;
line-height: 1.28;
}
.manifeste .texte-manifeste em {
color: var(--gris);
}
.signature-soleil {
width: 46px;
height: 46px;
margin: 0 auto 34px;
border-radius: 50%;
background: radial-gradient(circle at 50% 50%, #ffd68a 0%, #f08a32 32%, #b3401d 62%, rgba(80, 26, 18, 0) 72%);
filter: blur(0.3px);
}
.comparateur {
position: relative;
aspect-ratio: 2688 / 1520;
overflow: hidden;
border-radius: var(--rayon);
background: var(--nuit-2);
user-select: none;
touch-action: pan-y;
}
.comparateur img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
}
.comparateur__allume {
clip-path: inset(0 0 0 var(--coupe, 50%));
}
.comparateur__poignee {
position: absolute;
top: 0;
bottom: 0;
left: var(--coupe, 50%);
z-index: 2;
width: 1px;
margin-left: -0.5px;
background: linear-gradient(to bottom, rgba(249, 246, 240, 0) 0%, rgba(249, 246, 240, 0.85) 18%, rgba(249, 246, 240, 0.85) 82%, rgba(249, 246, 240, 0) 100%);
box-shadow: 0 0 18px rgba(255, 214, 160, 0.3);
pointer-events: none;
}
.comparateur__poignee::after {
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 46px;
height: 46px;
border: 1px solid rgba(249, 246, 240, 0.9);
border-radius: 50%;
background:
url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 46'%3E%3Cpath d='M18.5 18l-5 5 5 5M27.5 18l5 5-5 5' fill='none' stroke='%23f9f6f0' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 46px 46px no-repeat,
rgba(12, 10, 9, 0.26);
-webkit-backdrop-filter: blur(8px) saturate(1.2);
backdrop-filter: blur(8px) saturate(1.2);
box-shadow: 0 10px 30px rgba(12, 10, 9, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.18);
transform: translate(-50%, -50%) scale(var(--zoom, 1));
transition: transform 0.35s var(--lent), border-color 0.35s var(--lent), box-shadow 0.35s var(--lent);
}
.comparateur:hover .comparateur__poignee::after,
.comparateur.est-saisi .comparateur__poignee::after {
border-color: rgba(255, 214, 160, 0.95);
box-shadow: 0 10px 30px rgba(12, 10, 9, 0.35), 0 0 22px rgba(255, 190, 110, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.22);
transform: translate(-50%, -50%) scale(1.08);
}
.comparateur.est-saisi .comparateur__poignee::after {
transform: translate(-50%, -50%) scale(0.96);
}
.comparateur:has(input:focus-visible) .comparateur__poignee::after {
outline: 1px solid rgba(249, 246, 240, 0.9);
outline-offset: 4px;
}
.comparateur input[type='range'] {
position: absolute;
inset: 0;
z-index: 3;
width: 100%;
height: 100%;
margin: 0;
opacity: 0;
cursor: ew-resize;
}
.comparateur__etiquette {
position: absolute;
bottom: 24px;
z-index: 2;
font-size: 10.5px;
letter-spacing: 0.28em;
text-transform: uppercase;
color: rgba(238, 237, 233, 0.95);
text-shadow: 0 0 14px rgba(12, 10, 9, 0.55);
pointer-events: none;
}
.comparateur__etiquette--g {
left: 26px;
opacity: clamp(0, calc((var(--p, 0.5) - 0.12) * 6), 1);
}
.comparateur__etiquette--d {
right: 26px;
opacity: clamp(0, calc((0.88 - var(--p, 0.5)) * 6), 1);
}
@media (max-width: 760px) {
.comparateur {
aspect-ratio: 4 / 5;
}
.comparateur img {
object-position: 49% 50%;
}
}
.piece {
display: grid;
grid-template-columns: 1.05fr 1fr;
gap: clamp(40px, 7vw, 120px);
align-items: center;
}
.piece__media {
position: relative;
}
.piece__media img {
width: 100%;
aspect-ratio: 4 / 5;
object-fit: cover;
border-radius: var(--rayon);
}
.piece__media figcaption {
margin-top: 14px;
}
.piece__numero {
font-family: var(--serif);
font-size: 18px;
font-style: italic;
color: var(--gris);
}
.piece h2 {
margin: 6px 0 26px;
}
.piece .prix-apartir {
margin: 30px 0 34px;
font-family: var(--serif);
font-size: 26px;
}
.piece .prix-apartir small {
display: block;
font-family: var(--sans);
font-size: 12px;
letter-spacing: 0.08em;
color: var(--gris);
}
.liste-points {
margin: 30px 0 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--trait);
}
.liste-points li {
display: flex;
justify-content: space-between;
gap: 20px;
padding: 14px 0;
border-bottom: 1px solid var(--trait);
font-size: 14px;
}
.liste-points li span:last-child {
color: var(--gris);
text-align: right;
}
.liste-points li span:first-child:not(:last-child) {
flex-shrink: 0;
}
@media (max-width: 900px) {
.piece,
.grille-2 {
grid-template-columns: 1fr;
}
}
.carte-piece:active,
.duo__piece:active {
opacity: 0.86;
}
.section--collection {
padding-bottom: clamp(72px, 8vw, 128px);
}
@media (max-width: 760px) {
.collection.collection--defile {
grid-template-columns: none;
grid-auto-flow: column;
grid-auto-columns: 78%;
gap: 14px;
margin: 0 calc(var(--marge) * -1);
padding: 0 var(--marge) 6px;
overflow-x: auto;
scroll-snap-type: x mandatory;
scroll-padding: 0 var(--marge);
scrollbar-width: none;
}
.collection--defile::-webkit-scrollbar {
display: none;
}
.collection--defile .carte-piece {
scroll-snap-align: start;
}
}
.duo {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(14px, 3vw, 48px);
max-width: 1080px;
}
.duo__piece {
display: block;
}
.duo__media {
overflow: hidden;
aspect-ratio: 4 / 5;
margin-bottom: clamp(16px, 2vw, 26px);
background: var(--pierre);
}
.duo__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.8s var(--lent);
}
.duo__piece:hover .duo__media img {
transform: scale(1.03);
}
.duo .piece__numero {
display: block;
margin-bottom: 6px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.duo--trois .duo__piece {
display: flex;
flex-direction: column;
}
.duo--trois .duo__piece .lien-trait {
align-self: flex-start;
margin-top: auto;
}
.duo__nom {
font-size: clamp(26px, 3vw, 42px);
}
.duo__prix {
margin: 8px 0 18px;
font-size: clamp(13px, 1.1vw, 15px);
letter-spacing: 0.04em;
color: var(--encre-douce);
}
@media (max-width: 760px) {
.duo .piece__numero {
font-size: 13px;
}
.duo .lien-trait {
font-size: 10px;
}
}
.section--attente {
padding-top: 0;
}
.section--nuit:has(+ .section--attente) {
padding-bottom: clamp(56px, 6vw, 88px);
}
.sequence {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: clamp(8px, 1.2vw, 18px);
}
.sequence figure {
margin: 0;
}
.sequence img {
width: 100%;
aspect-ratio: 1;
object-fit: cover;
border-radius: var(--rayon);
}
.sequence figcaption {
margin-top: 14px;
font-family: var(--serif);
font-size: 18px;
text-align: center;
color: rgba(238, 237, 233, 0.7);
}
@media (max-width: 860px) {
.sequence {
grid-template-columns: repeat(5, 38vw);
overflow-x: auto;
scroll-snap-type: x mandatory;
padding-bottom: 8px;
}
.sequence figure {
scroll-snap-align: start;
}
}
.details {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
gap: clamp(16px, 2vw, 28px);
}
.details figure {
margin: 0;
overflow: hidden;
border-radius: var(--rayon);
}
.details img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.6s var(--lent);
}
.details figure:hover img {
transform: scale(1.03);
}
@media (max-width: 900px) {
.details {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 560px) {
.details {
grid-template-columns: 1fr;
}
}
.matiere .chiffres {
margin-top: clamp(56px, 6vw, 96px);
}
@media (min-width: 901px) and (min-height: 720px), (min-width: 1181px) and (min-height: 640px) {
.matiere {
display: flex;
height: min(calc(100vh - var(--entete)), 1040px);
height: min(calc(100svh - var(--entete)), 1040px);
padding: clamp(28px, 5vh, 64px) 0;
}
.matiere > .conteneur {
display: flex;
flex-direction: column;
justify-content: center;
min-height: 0;
}
.matiere .entete-section {
margin-bottom: clamp(20px, 3.4vh, 44px);
}
.matiere .surtitre {
margin-bottom: clamp(10px, 1.6vh, 22px);
}
.matiere .titre-xl {
font-size: clamp(34px, min(4.4vw, 6vh), 64px);
}
.matiere .details {
flex: 1 1 auto;
min-height: 0;
max-height: 860px;
grid-template-rows: repeat(2, minmax(0, 1fr));
}
.matiere .chiffres {
margin-top: clamp(18px, 3.4vh, 44px);
}
.matiere .chiffres div {
padding: clamp(12px, 2.2vh, 30px) 24px;
}
.matiere .chiffres strong {
font-size: clamp(26px, min(2.6vw, 4.2vh), 40px);
}
}
.chiffres {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
border-top: 1px solid var(--trait);
border-bottom: 1px solid var(--trait);
}
.chiffres div {
padding: 36px 24px;
text-align: center;
}
.chiffres div + div {
border-left: 1px solid var(--trait);
}
.chiffres strong {
display: block;
margin-bottom: 8px;
font-family: var(--serif);
font-size: clamp(30px, 3vw, 44px);
font-weight: 400;
line-height: 1;
}
.chiffres span {
font-size: 12px;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--gris);
}
.chiffres strong,
.chiffres span {
overflow-wrap: break-word;
-webkit-hyphens: auto;
hyphens: auto;
}
.chiffres span {
display: block;
text-wrap: balance;
}
.chiffres span:not(:lang(de)) {
-webkit-hyphens: manual;
hyphens: manual;
}
.chiffres span:lang(de) {
hyphenate-limit-chars: 12 5 5;
}
@media (max-width: 760px) {
.chiffres {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.chiffres div:nth-child(3) {
border-left: 0;
}
.chiffres div:nth-child(n + 3) {
border-top: 1px solid var(--trait);
}
}
@media (max-width: 420px) {
.chiffres div {
padding: 30px 10px;
}
.chiffres strong {
font-size: 27px;
}
.chiffres span {
font-size: 11px;
letter-spacing: 0.1em;
}
}
.collection {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(20px, 2.4vw, 36px);
}
.collection--4 {
grid-template-columns: repeat(4, 1fr);
}
.collection--2 {
grid-template-columns: repeat(2, 1fr);
}
.carte-piece {
position: relative;
display: block;
}
.carte-piece__media {
position: relative;
overflow: hidden;
aspect-ratio: 1;
border-radius: var(--rayon);
background: var(--nuit-2);
}
.carte-piece__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.8s var(--lent), filter 1.2s var(--lent);
}
.carte-piece:hover .carte-piece__media img {
transform: scale(1.04);
}
.pastille {
position: absolute;
top: 16px;
left: 16px;
z-index: 2;
padding: 7px 14px 6px;
border: 1px solid rgba(238, 237, 233, 0.55);
border-radius: 0;
background: rgba(12, 10, 9, 0.3);
color: var(--ivoire);
font-size: 10px;
letter-spacing: 0.22em;
text-transform: uppercase;
}
.pastille--dispo {
border-color: transparent;
background: var(--ivoire);
color: var(--encre);
}
.carte-piece__infos {
display: flex;
justify-content: space-between;
align-items: baseline;
gap: 16px;
padding-top: 20px;
}
.carte-piece__infos :is(h2, h3) {
font-size: 28px;
}
.carte-piece__infos :is(h2, h3) small {
display: block;
margin-bottom: 4px;
font-size: 15px;
font-style: italic;
color: var(--gris);
}
.section--nuit .carte-piece__infos :is(h2, h3) small,
.section--nuit .carte-piece__infos p {
color: rgba(238, 237, 233, 0.75);
}
.carte-piece__infos p {
margin: 0;
font-size: 13px;
color: var(--gris);
text-align: right;
}
@media (max-width: 1000px) {
.collection--4 {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 760px) {
.collection {
grid-template-columns: 1fr;
}
.collection--4 {
grid-template-columns: 1fr;
}
}
.lampes-mosaique {
display: grid;
grid-template-columns: 1.3fr 1fr 1fr;
gap: 48px clamp(20px, 2.4vw, 36px);
}
.lampes-mosaique--deux {
grid-template-columns: repeat(2, minmax(0, 1fr));
max-width: 1080px;
margin-inline: auto;
}
.lampes-mosaique .carte-piece__media {
aspect-ratio: 4 / 5;
background: var(--lin);
}
.lampes-mosaique:not(.lampes-mosaique--deux):not(.lampes-mosaique--six) .carte-piece:nth-child(3n + 6) .carte-piece__media {
aspect-ratio: 26 / 25;
}
.js .lampes-mosaique .carte-piece__media img {
opacity: 0;
}
.js .lampes-mosaique.est-pret .carte-piece__media img {
opacity: 1;
animation: photo-pose 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;
animation-delay: calc(var(--rang-photo, 0) * 90ms);
}
.lampes-mosaique .carte-piece:nth-child(2) {
--rang-photo: 1;
}
.lampes-mosaique .carte-piece:nth-child(3) {
--rang-photo: 2;
}
.lampes-mosaique .carte-piece:nth-child(4) {
--rang-photo: 3;
}
.lampes-mosaique .carte-piece:nth-child(5) {
--rang-photo: 4;
}
.lampes-mosaique .carte-piece:nth-child(6) {
--rang-photo: 5;
}
.lampes-mosaique .carte-piece:nth-child(7) {
--rang-photo: 6;
}
.lampes-mosaique .carte-piece:nth-child(8) {
--rang-photo: 7;
}
@keyframes photo-pose {
from {
opacity: 0;
transform: scale(1.04);
}
to {
opacity: 1;
transform: none;
}
}
.lampes-mosaique .carte-piece__media img {
will-change: opacity, transform;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
@media (prefers-reduced-motion: reduce) {
.js .lampes-mosaique .carte-piece__media img {
opacity: 1;
animation: none;
}
}
.lampes-mosaique .carte-piece--haute {
grid-row: span 2;
display: flex;
flex-direction: column;
}
.lampes-mosaique .carte-piece--haute .carte-piece__media {
flex: 1;
aspect-ratio: auto;
}
.lampes-mosaique .carte-piece--haute .carte-piece__media img {
position: absolute;
inset: 0;
}
@media (min-width: 1024px) {
.lampes-mosaique--six {
grid-template-columns: 1.3fr 1fr 1fr 1.3fr;
}
.lampes-mosaique--six .carte-piece:nth-child(6) {
grid-column: 4;
grid-row: 1 / span 2;
}
}
@media (min-width: 761px) and (max-width: 1023px) {
.lampes-mosaique--six {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.lampes-mosaique--six .carte-piece--haute {
grid-row: auto;
display: block;
}
.lampes-mosaique--six .carte-piece--haute .carte-piece__media {
aspect-ratio: 4 / 5;
}
}
.lampes-note {
margin: 48px 0 0;
font-size: 13px;
letter-spacing: 0.04em;
color: var(--gris);
}
.lampes-maison {
display: none;
}
.lampes-maison__marbre {
display: block;
margin-top: 3px;
font-size: 0.8em;
color: var(--gris);
}
@media (max-width: 760px) {
.lampes-collection {
display: none;
}
.lampes-maison {
display: block;
padding-top: 48px;
}
.lampes-maison__grille {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
grid-template-areas:
"salon salon diner"
"salon salon entree"
"chambre lecture lecture"
"sejour lecture lecture";
gap: 22px 10px;
}
.lampes-maison__grille > :nth-child(1) { grid-area: salon; }
.lampes-maison__grille > :nth-child(2) { grid-area: diner; }
.lampes-maison__grille > :nth-child(3) { grid-area: entree; }
.lampes-maison__grille > :nth-child(4) { grid-area: chambre; }
.lampes-maison__grille > :nth-child(5) { grid-area: sejour; }
.lampes-maison__grille > :nth-child(6) { grid-area: lecture; }
.lampes-maison__grille.lampes-maison__grille--deux {
grid-template-columns: minmax(0, 1fr);
grid-template-areas: none;
gap: 36px;
}
.lampes-maison__grille.lampes-maison__grille--deux > * {
grid-area: auto;
}
.lampes-maison__grille.lampes-maison__grille--huit {
grid-template-columns: repeat(2, minmax(0, 1fr));
grid-template-areas: none;
gap: 28px 12px;
}
.lampes-maison__grille.lampes-maison__grille--huit > * {
grid-area: auto;
}
.lampes-maison__grille.lampes-maison__grille--huit > :first-child {
grid-column: 1 / -1;
}
.lampes-maison__grille .carte-piece__media {
aspect-ratio: 4 / 5;
background: var(--fond);
}
.lampes-maison__grille .carte-piece--large {
display: flex;
flex-direction: column;
}
.lampes-maison__grille .carte-piece--large .carte-piece__media {
flex: 1;
aspect-ratio: auto;
}
.lampes-maison__grille .carte-piece--large .carte-piece__media img {
position: absolute;
inset: 0;
}
.lampes-maison__grille .carte-piece__infos {
flex-direction: column;
gap: 4px;
padding-top: 10px;
}
.lampes-maison__grille .carte-piece__infos :is(h2, h3) {
font-size: 10px;
letter-spacing: 0.12em;
}
.lampes-maison__grille .carte-piece__infos :is(h2, h3) small {
font-size: 14px;
}
.lampes-maison__grille .carte-piece__infos p {
font-size: 11px;
text-align: left;
}
}
.attente {
max-width: 640px;
margin: clamp(64px, 7vw, 104px) auto 0;
text-align: center;
}
.attente p {
margin-bottom: 30px;
}
.formulaire-ligne {
display: flex;
gap: 0;
border-bottom: 1px solid currentColor;
}
.formulaire-ligne input {
flex: 1;
min-width: 0;
padding: 16px 0;
border: 0;
background: transparent;
font-size: 16px;
}
.formulaire-ligne input::placeholder {
color: inherit;
opacity: 0.55;
}
.formulaire-ligne input:focus {
outline: none;
}
.formulaire-ligne:has(input:focus-visible) {
outline: 2px solid currentColor;
outline-offset: 6px;
}
.formulaire-ligne button {
padding: 0 0 0 20px;
font-size: 12px;
font-weight: 400;
letter-spacing: 0.2em;
text-transform: uppercase;
white-space: nowrap;
}
.formulaire-mentions {
margin-top: 14px;
font-size: 12px;
line-height: 1.6;
opacity: 0.7;
}
.formulaire-mentions a {
text-decoration: underline;
text-underline-offset: 3px;
}
.champs {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 26px 28px;
}
.champ {
display: flex;
flex-direction: column;
gap: 8px;
}
.champ--plein {
grid-column: 1 / -1;
}
.champ label {
font-size: 11px;
font-weight: 400;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--gris);
}
.champ input,
.champ select,
.champ textarea {
width: 100%;
padding: 13px 0;
border: 0;
border-bottom: 1px solid #7d766d;
border-radius: 0;
background: transparent;
font-size: 16px;
transition: border-color 0.3s;
-webkit-appearance: none;
appearance: none;
}
.champ select {
background-image: linear-gradient(45deg, transparent 50%, var(--encre) 50%), linear-gradient(135deg, var(--encre) 50%, transparent 50%);
background-position: calc(100% - 10px) 22px, calc(100% - 5px) 22px;
background-size: 5px 5px;
background-repeat: no-repeat;
}
.champ textarea {
min-height: 140px;
resize: vertical;
}
.champ input:focus,
.champ select:focus,
.champ textarea:focus {
outline: none;
border-bottom-color: var(--encre);
}
.case {
display: flex;
gap: 12px;
align-items: flex-start;
font-size: 13px;
color: var(--gris);
}
.case input {
flex: none;
width: 20px;
height: 20px;
margin: 0;
accent-color: var(--encre);
}
.message-formulaire {
display: none;
margin-top: 22px;
padding: 18px 22px;
border: 1px solid currentColor;
border-radius: var(--rayon);
font-size: 14px;
}
.message-formulaire.est-visible {
display: block;
}
.message-formulaire--erreur {
border-color: #9b3b2a;
color: #9b3b2a;
}
@media (max-width: 640px) {
.champs {
grid-template-columns: 1fr;
}
}
.engagements {
display: grid;
grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
align-items: start;
gap: clamp(32px, 6vw, 110px);
}
.engagements__liste {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--trait);
}
.engagement {
display: grid;
grid-template-columns: 54px minmax(0, 1fr);
gap: 0 22px;
padding: 26px 0 28px;
border-bottom: 1px solid var(--trait);
}
.engagement__numero {
font-family: var(--serif);
font-style: italic;
font-size: 24px;
line-height: 1.1;
color: var(--gris);
}
.engagement h3 {
margin: 2px 0 8px;
font-size: 13.5px;
letter-spacing: 0.18em;
text-transform: uppercase;
}
.engagement p {
max-width: 52ch;
font-size: 14.5px;
line-height: 1.65;
color: var(--gris);
}
@media (max-width: 860px) {
.engagements {
grid-template-columns: 1fr;
gap: 28px;
}
}
.engagements--rangee {
display: block;
}
.engagements--rangee .engagements__entete {
margin-bottom: clamp(40px, 5vw, 72px);
}
.engagements--rangee .engagements__liste {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 40px clamp(28px, 3.4vw, 56px);
border-top: 0;
}
.engagements--rangee .engagement {
display: block;
padding: 26px 0 0;
border-top: 1px solid var(--encre);
border-bottom: 0;
}
.engagements--rangee .engagement h3 {
margin: 0 0 12px;
font-size: 12px;
font-weight: 500;
letter-spacing: 0.22em;
}
.engagements--rangee .engagement p {
max-width: 32ch;
font-size: 14px;
line-height: 1.7;
}
@media (max-width: 960px) {
.engagements--rangee .engagements__liste {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 560px) {
.engagements--rangee .engagements__liste {
grid-template-columns: 1fr;
gap: 0;
}
.engagements--rangee .engagement {
padding: 22px 0 24px;
border-top-color: var(--trait);
}
.engagements--rangee .engagement:first-child {
border-top-color: var(--encre);
}
.engagements--rangee .engagement p {
max-width: none;
}
}
.etapes {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 32px;
counter-reset: etape;
}
.etape {
padding-top: 26px;
border-top: 1px solid var(--trait);
counter-increment: etape;
}
.section--nuit .etape {
border-top-color: var(--trait-clair);
}
.etape::before {
content: counter(etape, decimal-leading-zero);
display: block;
margin-bottom: 20px;
font-family: var(--serif);
font-size: 18px;
font-style: italic;
color: var(--gris);
}
.section--nuit .etape::before {
color: rgba(238, 237, 233, 0.7);
}
.etape h3 {
margin-bottom: 10px;
font-size: 24px;
}
.etape p {
font-size: 14px;
color: var(--gris);
}
.section--nuit .etape p {
color: rgba(238, 237, 233, 0.78);
}
@media (max-width: 960px) {
.etapes {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 560px) {
.etapes {
grid-template-columns: 1fr;
}
}
.page-entete {
padding: clamp(72px, 10vw, 150px) 0 clamp(48px, 6vw, 88px);
text-align: center;
}
.page-entete h1 {
margin-bottom: 24px;
}
.page-entete p {
max-width: 620px;
margin: 0 auto;
color: var(--gris);
}
.fil-ariane {
margin-bottom: 28px;
font-size: 12px;
letter-spacing: 0.1em;
color: var(--gris);
}
.fil-ariane ol {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin: 0;
padding: 0;
list-style: none;
}
.page-entete .fil-ariane ol {
justify-content: center;
}
.fil-ariane li + li::before {
content: '/';
margin-right: 8px;
opacity: 0.5;
}
.fil-ariane a:hover {
color: var(--encre);
}
.page-entete--lampes {
padding: clamp(56px, 6vw, 96px) 0 clamp(48px, 5vw, 80px);
}
.page-entete--lampes h1 {
margin: 0;
padding-left: 0.34em;
font-size: clamp(20px, 1.7vw, 28px);
line-height: 1.3;
letter-spacing: 0.34em;
}
.page-entete--lampes h1 em {
display: block;
margin-top: 18px;
padding-right: 0.34em;
font-size: clamp(20px, 1.6vw, 25px);
letter-spacing: 0.01em;
}
@media (max-width: 760px) {
.page-entete--lampes {
padding: 0;
}
.page-entete--lampes .fil-ariane,
.page-entete--lampes p {
display: none;
}
.page-entete--lampes h1 {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
}
}
.collection--parfums .carte-piece__media {
aspect-ratio: 4 / 5;
background: var(--lin);
}
@media (max-width: 760px) {
.page-entete--parfums {
padding: 40px 0 32px;
}
.page-entete--parfums h1 {
position: static;
width: auto;
height: auto;
overflow: visible;
clip: auto;
white-space: normal;
}
.collection--parfums {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 28px 12px;
}
}
.page-entete--tableaux p {
margin-top: 28px;
}
.tl-pieces {
display: grid;
gap: clamp(80px, 10vw, 160px);
}
.tl-piece {
display: grid;
grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
align-items: center;
gap: clamp(32px, 7vw, 120px);
}
.tl-piece:nth-child(even) .tl-piece__media {
order: 2;
}
.tl-piece__media {
display: block;
overflow: hidden;
aspect-ratio: 4 / 5;
max-height: 86vh;
background: var(--pierre);
}
.tl-piece__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.8s var(--lent);
}
.tl-piece__media:hover img {
transform: scale(1.03);
}
.tl-piece__numero {
font-family: var(--serif);
font-size: 24px;
font-style: italic;
color: var(--gris);
}
.tl-piece__nom {
margin: 10px 0 14px;
font-family: var(--serif);
font-size: clamp(min(40px, 9.6vw), 4.3vw, 56px);
letter-spacing: 0.16em;
line-height: 1.04;
}
.tl-piece__moment {
margin: 0;
font-size: 12px;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--gris);
}
.tl-piece__texte {
max-width: 30em;
margin: 32px 0 36px;
font-size: 17px;
line-height: 1.7;
}
.tl-piece__pied {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 12px 32px;
}
.tl-piece__prix {
margin: 0;
font-size: 14px;
letter-spacing: 0.04em;
}
.tl-cadres {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: clamp(16px, 2.4vw, 36px);
}
.tl-cadre {
display: block;
}
.tl-cadre__media {
overflow: hidden;
aspect-ratio: 4 / 5;
background: var(--pierre);
}
.tl-cadre__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: 50% 50%;
transform: scale(1.18);
transition: transform 1.8s var(--lent);
}
.tl-cadre:hover .tl-cadre__media img {
transform: scale(1.22);
}
.tl-cadre h3 {
margin: 22px 0 6px;
font-size: 15px;
letter-spacing: 0.16em;
}
.tl-cadre p {
margin: 0;
font-size: 14px;
color: var(--gris);
}
.tl-tailles {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: clamp(16px, 2.4vw, 36px);
}
.tl-tailles figure {
margin: 0;
}
.tl-tailles__media {
overflow: hidden;
aspect-ratio: 4 / 5;
background: var(--pierre);
}
.tl-tailles__media img {
width: 100%;
height: 100%;
object-fit: cover;
}
.tl-tailles figcaption {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
gap: 6px 20px;
padding-top: 20px;
}
.tl-tailles h3 {
font-size: 15px;
letter-spacing: 0.16em;
}
.tl-tailles figcaption p {
margin: 0;
font-size: 14px;
color: var(--gris);
}
.tl-versions {
max-width: 44em;
margin: 40px 0 0;
color: var(--gris);
}
@media (max-width: 760px) {
.tl-pieces {
gap: 64px;
}
.tl-piece {
grid-template-columns: 1fr;
gap: 24px;
}
.tl-piece:nth-child(even) .tl-piece__media {
order: 0;
}
.tl-piece__texte {
margin: 20px 0 24px;
font-size: 16px;
}
.tl-cadres {
grid-auto-flow: column;
grid-template-columns: none;
grid-auto-columns: 72%;
overflow-x: auto;
scroll-snap-type: x mandatory;
margin-inline: calc(var(--marge) * -1);
padding-inline: var(--marge);
scrollbar-width: none;
}
.tl-cadre {
scroll-snap-align: start;
}
.tl-tailles {
gap: 12px;
}
.tl-tailles figcaption {
display: block;
padding-top: 12px;
}
.tl-tailles figcaption p {
margin-top: 4px;
font-size: 13px;
}
}
@media (max-width: 760px) {
.page-entete--tableaux {
padding: 40px 0 32px;
}
.page-entete--tableaux .fil-ariane {
display: block;
}
.page-entete--tableaux p {
display: block;
margin-top: 20px;
}
.page-entete--tableaux h1 {
position: static;
width: auto;
height: auto;
overflow: visible;
clip: auto;
white-space: normal;
}
}
.parfum-vedette {
display: grid;
grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
align-items: center;
gap: clamp(32px, 6vw, 112px);
max-width: 1080px;
margin-inline: auto;
}
.parfum-vedette__media {
overflow: hidden;
aspect-ratio: 4 / 5;
background: var(--pierre);
}
.parfum-vedette__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: scale 1.8s var(--lent);
}
.parfum-vedette__texte {
max-width: 400px;
}
.parfum-vedette .piece__numero {
display: block;
margin-bottom: 10px;
}
.parfum-vedette__nom {
margin: 0 0 20px;
font-family: var(--serif);
font-size: clamp(36px, 4vw, 52px);
font-weight: 400;
letter-spacing: 0.16em;
line-height: 1.04;
text-transform: uppercase;
}
.parfum-vedette__texte p {
color: var(--gris);
}
.parfum-vedette__texte .parfum-vedette__prix {
margin: 20px 0 28px;
font-size: 15px;
letter-spacing: 0.04em;
color: var(--encre);
}
@media (hover: hover) {
.parfum-vedette:hover .parfum-vedette__media img {
scale: 1.03;
}
}
@media (max-width: 760px) {
.parfum-vedette {
grid-template-columns: 1fr;
gap: 24px;
}
}
@media (prefers-reduced-motion: reduce) {
.parfum-vedette__media img {
transition: none;
}
}
.fiche {
display: grid;
grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
gap: clamp(36px, 5vw, 96px);
padding-top: clamp(28px, 3vw, 48px);
padding-bottom: clamp(72px, 8vw, 120px);
}
.galerie {
display: grid;
grid-template-columns: 72px 1fr;
gap: 18px;
align-self: start;
position: sticky;
top: calc(var(--entete) + 24px);
}
.galerie__miniatures {
display: flex;
flex-direction: column;
gap: 12px;
}
.galerie__miniatures button {
position: relative;
overflow: hidden;
aspect-ratio: 1;
border-radius: var(--rayon);
opacity: 0.55;
transition: opacity 0.4s;
}
.galerie__miniatures button[aria-current='true'],
.galerie__miniatures button:hover {
opacity: 1;
}
.galerie__miniatures button[aria-current='true']::after {
content: '';
position: absolute;
inset: 0;
border: 1px solid var(--encre);
border-radius: var(--rayon);
}
.galerie__miniatures img {
width: 100%;
height: 100%;
object-fit: cover;
}
.galerie__scene {
position: relative;
overflow: hidden;
aspect-ratio: 4 / 5;
border-radius: var(--rayon);
background: var(--lin);
}
.galerie__scene img,
.galerie__scene video {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0;
transform: scale(1.012);
transition: opacity 0.9s var(--lent), transform 1.6s var(--lent);
}
.galerie__scene img.est-active,
.galerie__scene video.est-active {
opacity: 1;
transform: none;
}
.galerie__legende {
position: absolute;
left: 18px;
right: 68px;
bottom: 16px;
z-index: 2;
font-size: 11px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: rgba(238, 237, 233, 0.9);
text-shadow: 0 1px 12px rgba(0, 0, 0, 0.35);
}
.galerie__scene::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: 0;
z-index: 1;
height: 32%;
background: linear-gradient(to top, rgba(12, 10, 9, 0.4), rgba(12, 10, 9, 0.16) 45%, rgba(12, 10, 9, 0));
pointer-events: none;
}
.galerie__scene.montre-cotes::after,
.galerie__scene.montre-choix-cadres::after {
display: none;
}
.galerie__titre { display: none; }
@media (max-width: 960px) {
.galerie__titre {
display: block;
position: absolute;
left: 18px;
right: 18px;
top: 18px;
z-index: 2;
margin: 0;
font-family: var(--serif);
font-size: 21px;
line-height: 1.15;
letter-spacing: 0.2em;
text-transform: uppercase;
color: rgba(243, 238, 230, 0.96);
text-shadow: 0 1px 14px rgba(0, 0, 0, 0.45);
pointer-events: none;
}
.galerie__titre small {
display: block;
margin-top: 6px;
font-family: var(--sans);
font-size: 12px;
letter-spacing: 0.16em;
}
.galerie__scene:has(.galerie__titre)::before {
content: '';
position: absolute;
left: 0;
right: 0;
top: 0;
z-index: 1;
height: 26%;
background: linear-gradient(to bottom, rgba(12, 10, 9, 0.32), rgba(12, 10, 9, 0.12) 50%, rgba(12, 10, 9, 0));
pointer-events: none;
}
.galerie__scene.montre-cotes .galerie__titre,
.galerie__scene.montre-choix-cadres .galerie__titre,
.galerie__scene.montre-video .galerie__titre,
.galerie__scene.montre-cotes::before,
.galerie__scene.montre-choix-cadres::before,
.galerie__scene.montre-video::before {
display: none;
}
}
.galerie__scene .galerie__eteinte {
z-index: 1;
transform: none;
opacity: 0;
transition: opacity 1s cubic-bezier(0.4, 0, 0.2, 1);
}
.galerie__scene.est-eteinte .galerie__eteinte {
opacity: 1;
}
.galerie__scene img.galerie__fondu {
z-index: 2;
opacity: 1;
transform: none;
transition: opacity 0.75s cubic-bezier(0.4, 0, 0.2, 1);
pointer-events: none;
}
.galerie__scene img.galerie__fondu.est-partant {
opacity: 0;
}
.galerie__scene.en-fondu img:not(.galerie__fondu),
.galerie__scene.en-fondu video {
transition: none !important;
}
.galerie__cotes,
.galerie__choix-cadres {
position: absolute;
inset: 0;
z-index: 2;
opacity: 0;
visibility: hidden;
transition: opacity 0.9s var(--lent), visibility 0s linear 0.9s;
}
.galerie__cotes {
pointer-events: none;
}
.galerie__scene.montre-cotes .galerie__cotes,
.galerie__scene.montre-choix-cadres .galerie__choix-cadres {
opacity: 1;
visibility: visible;
transition: opacity 0.9s var(--lent), visibility 0s;
}
.galerie__cotes svg {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
}
.galerie__cotes path {
fill: none;
stroke: rgba(28, 25, 23, 0.42);
stroke-width: 1;
vector-effect: non-scaling-stroke;
}
.galerie__cotes g.est-choisi path {
stroke: rgba(28, 25, 23, 0.85);
}
.galerie__cotes .galerie__cotes-pointille {
stroke-dasharray: 3 4;
}
.cote {
position: absolute;
transform: translate(-50%, 0);
font-size: clamp(9px, 0.62vw + 3px, 11.5px);
letter-spacing: 0.08em;
line-height: 1.25;
white-space: nowrap;
color: rgba(28, 25, 23, 0.75);
transition: color 0.6s var(--lent);
}
.cote.est-choisi {
color: rgba(28, 25, 23, 0.95);
font-weight: 500;
}
.cote small {
display: block;
font-size: 0.8em;
letter-spacing: 0.12em;
text-transform: uppercase;
opacity: 0.75;
}
.cote--hauteur {
transform: translate(0, -50%);
}
.galerie__scene.montre-cotes .galerie__legende {
color: rgba(28, 25, 23, 0.8);
text-shadow: none;
}
.cote--format {
font-size: clamp(11px, 0.9vw + 4px, 15px);
letter-spacing: 0.14em;
text-align: center;
}
.galerie__cotes--planche .galerie__cotes-filet {
stroke: rgba(28, 25, 23, 0.18);
}
.cote--plafond {
transform: translate(-100%, -50%);
text-align: right;
}
.galerie__choix-cadres button {
position: absolute;
top: 0;
bottom: 0;
padding: 0;
border: 0;
background: none;
cursor: pointer;
}
.galerie__choix-cadres span {
position: absolute;
left: var(--x);
bottom: 22%;
transform: translate(-50%, 6px);
padding: 7px 12px 6px;
font-size: 10.5px;
font-weight: 500;
letter-spacing: 0.2em;
text-transform: uppercase;
white-space: nowrap;
color: var(--encre);
background: rgba(var(--ivoire-rgb), 0.92);
box-shadow: 0 6px 24px rgba(12, 10, 9, 0.12);
opacity: 0;
transition: opacity 0.5s var(--lent), transform 0.5s var(--lent);
pointer-events: none;
}
.galerie__choix-cadres button[aria-pressed='true'] span {
color: #eeede9;
background: rgba(28, 25, 23, 0.86);
}
.galerie__choix-cadres button:hover span,
.galerie__choix-cadres button:focus-visible span {
opacity: 1;
transform: translate(-50%, 0);
}
.galerie__choix-cadres button:focus-visible {
outline: none;
}
@media (hover: none) {
.galerie__choix-cadres span {
opacity: 0.9;
transform: translate(-50%, 0);
padding: 5px 8px 4px;
font-size: 9px;
letter-spacing: 0.14em;
}
}
@keyframes allumage {
0% {
filter: brightness(0.55) saturate(0.7);
}
35% {
filter: brightness(0.8) saturate(0.85);
}
100% {
filter: none;
}
}
@media (prefers-reduced-motion: reduce) {
.galerie__scene .galerie__eteinte {
transition-duration: 0.01s;
}
.galerie__scene img,
.galerie__scene video {
transform: none;
}
}
.fiche__infos {
align-self: start;
}
.fiche__numero {
font-family: var(--serif);
font-size: 20px;
font-style: italic;
color: var(--gris);
}
.fiche h1 {
margin: 6px 0 12px;
font-family: var(--serif);
font-size: clamp(min(40px, 9.6vw), 4.3vw, 56px);
font-weight: 400;
letter-spacing: 0.16em;
line-height: 1.04;
text-transform: uppercase;
}
.fiche__sous-titre {
font-size: 13px;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--gris);
}
.fiche h1 .fiche__sous-titre {
display: block;
margin-top: 12px;
font-family: var(--sans);
line-height: 1.7;
}
.fiche__prix {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: 4px 16px;
margin: 30px 0 6px;
}
.fiche__prix strong {
font-family: var(--serif);
font-size: 36px;
font-weight: 400;
line-height: 1;
}
.fiche__mentions-prix {
font-size: 12.5px;
color: var(--gris);
}
.fiche__accroche {
margin: 28px 0 32px;
font-size: 16px;
color: var(--encre-douce);
}
.option {
margin: 0 0 26px;
padding: 0;
border: 0;
}
.option legend,
.option__legende {
display: flex;
justify-content: space-between;
width: 100%;
margin-bottom: 14px;
font-size: 12px;
font-weight: 400;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--encre);
}
.option legend span:last-child,
.option__legende span:last-child {
font-size: 13.5px;
letter-spacing: 0;
text-transform: none;
color: var(--encre);
}
.formats {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 10px;
}
.formats--deux {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.formats label {
position: relative;
display: flex;
cursor: pointer;
}
.formats label > .format {
flex: 1 1 auto;
min-width: 0;
}
.format--version strong {
font-size: 18px;
}
.format .format__detail {
max-width: 24ch;
margin: 2px 0 4px;
line-height: 1.45;
text-align: center;
}
.formats input {
position: absolute;
opacity: 0;
}
.formats .format {
display: flex;
flex-direction: column;
align-items: center;
gap: 2px;
padding: 16px 8px 14px;
border: 1px solid var(--trait);
border-radius: var(--rayon);
transition: border-color 0.3s, background 0.3s;
}
.format__carre {
display: block;
margin-bottom: 10px;
border: 1px solid currentColor;
opacity: 0.8;
}
.format strong {
font-family: var(--serif);
font-size: 20px;
font-weight: 400;
line-height: 1.2;
}
.format small {
font-size: 13px;
color: var(--encre-douce);
}
.formats input:checked + .format {
border-color: var(--encre);
background: rgba(28, 25, 23, 0.03);
}
.formats input:focus-visible + .format {
outline: 1px solid var(--encre);
outline-offset: 3px;
}
.formats--quatre {
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 8px;
}
.formats .format--piece {
gap: 3px;
padding: 10px 4px 11px;
}
.format__teinte {
width: 44px;
height: 44px;
margin-bottom: 6px;
border-radius: 1px;
object-fit: cover;
box-shadow: 0 0 0 1px rgba(28, 25, 23, 0.08);
}
.format--piece small {
font-size: 11px;
letter-spacing: 0.14em;
}
.format--piece strong {
font-size: 15px;
text-align: center;
}
.formats--cadres {
gap: 10px;
}
.formats .format--cadre {
gap: 3px;
padding: 6px 6px 14px;
}
.format__apercu {
display: block;
width: 100%;
aspect-ratio: 1;
margin-bottom: 11px;
overflow: hidden;
border-radius: 1px;
background: var(--lin);
}
.format__apercu img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
transform: scale(1);
transition: transform 1.2s var(--lent), opacity 0.6s var(--lent);
}
.formats label:hover .format__apercu img,
.formats input:checked + .format .format__apercu img {
transform: scale(1.05);
}
.format--cadre strong {
font-size: 16px;
text-align: center;
}
.format--cadre .format__detail {
margin: 0;
font-size: 12.5px;
}
@media (max-width: 420px) {
.format--piece strong {
font-size: 13px;
}
.format__teinte {
width: 38px;
height: 38px;
}
}
.fiche__achat {
display: grid;
gap: 10px;
margin: 32px 0 18px;
}
.fiche__expedition {
display: flex;
align-items: center;
gap: 10px;
font-size: 13px;
color: var(--gris);
}
.fiche__reception {
margin: 0 0 0 17px;
font-size: 13px;
color: var(--gris);
}
.fiche__expedition:has(+ .fiche__reception) {
margin-bottom: 4px;
}
.point-dispo {
width: 7px;
height: 7px;
border-radius: 50%;
background: #6f8a5a;
box-shadow: 0 0 0 4px rgba(111, 138, 90, 0.16);
}
.assurances {
margin: 30px 0 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--trait);
}
.assurances li {
display: flex;
align-items: center;
gap: 14px;
padding: 14px 0;
border-bottom: 1px solid var(--trait);
font-size: 13.5px;
}
.assurances svg {
flex: none;
width: 20px;
height: 20px;
stroke: currentColor;
stroke-width: 1;
fill: none;
}
.accordeons {
margin-top: 36px;
border-top: 1px solid var(--trait);
}
.accordeon {
border-bottom: 1px solid var(--trait);
}
.accordeon summary {
display: flex;
justify-content: space-between;
align-items: center;
gap: 20px;
padding: 22px 0;
list-style: none;
cursor: pointer;
font-size: 12px;
font-weight: 400;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.accordeon summary::-webkit-details-marker {
display: none;
}
.accordeon summary::after {
content: '';
width: 11px;
height: 11px;
flex: none;
background: linear-gradient(currentColor, currentColor) center / 11px 1px no-repeat,
linear-gradient(currentColor, currentColor) center / 1px 11px no-repeat;
transition: transform 0.4s var(--lent);
}
.accordeon[open] summary::after {
transform: rotate(45deg);
}
.accordeon__contenu,
.onglets__panneau {
padding: 0 0 26px;
font-size: 15px;
color: var(--encre-douce);
}
.accordeon__contenu ul,
.onglets__panneau ul {
margin: 0 0 1em;
padding-left: 18px;
}
.accordeon__contenu li,
.onglets__panneau li {
margin-bottom: 6px;
}
.assurances + .onglets {
margin-top: 26px;
border-top: 0;
}
.onglets {
margin-top: 34px;
}
.onglets__liste {
display: none;
gap: 30px;
margin-bottom: 26px;
border-bottom: 1px solid var(--trait);
}
.js .onglets__liste {
display: flex;
}
.onglets__liste [role='tab'] {
position: relative;
padding: 10px 0 15px;
border: 0;
background: none;
font: inherit;
font-size: 11.5px;
line-height: 1.3;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--gris);
cursor: pointer;
transition: color 0.3s var(--lent);
}
.onglets__liste [role='tab']:hover,
.onglets__liste [aria-selected='true'] {
color: var(--encre);
}
.onglets__liste [aria-selected='true']::after {
content: '';
position: absolute;
right: 0.2em;
bottom: -1px;
left: 0;
height: 1px;
background: var(--encre);
}
.onglets__panneau {
line-height: 1.75;
}
.onglets__panneau > p:not(.onglets__titre),
.onglets__panneau > ul {
max-width: 34em;
}
@media (max-width: 420px) {
.onglets__liste {
gap: 18px;
}
.onglets__liste [role='tab'] {
font-size: 10.5px;
letter-spacing: 0.14em;
}
}
@media (max-width: 350px) {
.onglets__liste {
gap: 12px;
}
.onglets__liste [role='tab'] {
letter-spacing: 0.1em;
}
}
.onglets__liste [role='tab']:focus-visible,
.onglets__panneau:focus-visible {
outline: 2px solid var(--encre);
outline-offset: 4px;
}
.onglets__titre {
margin: 0 0 10px;
font-size: 12px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--encre);
}
.js .onglets__titre {
display: none;
}
.js .onglets__titre + * {
margin-top: 0;
}
.accordeon--discret {
border-top: 1px solid var(--trait);
border-bottom: 0;
}
.accordeon--discret summary {
padding: 16px 0;
font-size: 13px;
letter-spacing: 0.02em;
text-transform: none;
color: var(--gris);
}
.accordeon--discret summary::after {
width: 9px;
height: 9px;
background-size: 9px 1px, 1px 9px;
}
.assurances--apres {
margin-top: 22px;
border-top: 0;
}
.assurances--apres li {
padding: 0;
border-bottom: 0;
font-size: 13.5px;
color: var(--gris);
}
.accords--fiche .accords__titre > span:last-child:not(:first-child),
.accords--fiche span.accord__action {
display: none;
}
.accordeon__intertitre,
.accordeon__question {
margin: 0 0 6px;
font-weight: 500;
color: var(--encre);
}
.accordeon__intertitre {
margin-top: 26px;
}
.accordeon__question:not(:first-child) {
margin-top: 22px;
}
.tableau-specs {
width: 100%;
border-collapse: collapse;
font-size: 14px;
}
.tableau-specs th,
.tableau-specs td {
padding: 11px 0;
border-bottom: 1px solid var(--trait);
text-align: left;
vertical-align: top;
}
.tableau-specs th {
width: 42%;
font-weight: 400;
color: var(--gris);
}
.tableau-specs tr:last-child th,
.tableau-specs tr:last-child td {
border-bottom: 0;
}
.barre-mobile {
position: fixed;
left: 0;
right: 0;
bottom: 0;
z-index: 40;
display: none;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 12px var(--marge) calc(12px + env(safe-area-inset-bottom));
background: rgba(var(--fond-rgb), 0.97);
border-top: 1px solid var(--trait);
transform: translateY(110%);
visibility: hidden;
transition: transform 0.5s var(--lent), visibility 0s 0.5s;
}
.barre-mobile.est-visible {
transform: translateY(0);
visibility: visible;
transition-delay: 0s;
}
.barre-mobile__nom {
font-family: var(--serif);
font-size: 20px;
line-height: 1.1;
}
.barre-mobile__nom small {
display: block;
font-family: var(--sans);
font-size: 12px;
color: var(--gris);
}
.barre-mobile .bouton {
min-height: 48px;
padding: 0 22px;
}
.barre-mobile__boutons {
display: flex;
flex-shrink: 0;
gap: 8px;
}
@media (max-width: 560px) {
.barre-mobile {
flex-wrap: wrap;
row-gap: 10px;
}
.barre-mobile__nom {
display: flex;
flex-wrap: wrap;
align-items: baseline;
justify-content: space-between;
gap: 2px 12px;
width: 100%;
font-size: 16px;
}
.barre-mobile__nom small {
font-size: 12px;
letter-spacing: 0.02em;
text-transform: none;
}
.barre-mobile__boutons {
width: 100%;
}
.barre-mobile__boutons .bouton {
flex: 1;
min-height: 46px;
padding: 0 10px;
}
}
.bouton[data-acheter] {
gap: 0.45em;
}
@media (max-width: 360px) {
.barre-mobile__boutons .bouton {
padding: 0 6px;
font-size: 10.5px;
letter-spacing: 0.08em;
white-space: nowrap;
}
}
@media (max-width: 960px) {
body:has(.barre-mobile) .pied {
padding-bottom: calc(40px + 76px + env(safe-area-inset-bottom));
}
}
@media (max-width: 560px) {
body:has(.barre-mobile) .pied {
padding-bottom: calc(40px + 136px + env(safe-area-inset-bottom));
}
}
@media (max-width: 960px) {
.fiche {
grid-template-columns: minmax(0, 1fr);
}
.galerie {
position: static;
grid-template-columns: 1fr;
}
.galerie__miniatures {
order: 2;
flex-direction: row;
overflow-x: auto;
}
.galerie__miniatures button {
flex: 0 0 64px;
}
.js .galerie:not(:has(> .fiche__titre)) > .galerie__miniatures {
visibility: hidden;
}
.barre-mobile {
display: flex;
}
.galerie > .fiche__titre {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
align-items: baseline;
column-gap: 16px;
margin-top: 8px;
}
.galerie > .fiche__titre h1 .fiche__sous-titre {
margin-top: 6px;
}
.galerie > .fiche__titre > .fiche__achat {
grid-area: 3 / 1 / 4 / 3;
margin: 16px 0 0;
}
.galerie > .fiche__titre .fiche__numero {
grid-area: 1 / 1;
}
.galerie > .fiche__titre .fiche__prix {
display: contents;
}
.galerie > .fiche__titre .fiche__prix strong {
grid-area: 1 / 2;
}
.galerie > .fiche__titre h1 {
grid-area: 2 / 1 / 3 / 3;
margin-bottom: 0;
}
.galerie > .fiche__titre .fiche__mentions-prix {
grid-area: 4 / 1 / 5 / 3;
margin-top: 10px;
}
}
@media (max-width: 560px) {
.fil-ariane:has(+ .fiche) {
display: none;
}
.fil-ariane + .fiche {
padding-top: 16px;
}
}
.faq-groupe + .faq-groupe {
margin-top: 72px;
}
.faq-groupe h2 {
margin-bottom: 18px;
}
.faq .accordeon summary {
font-family: var(--serif);
font-size: 22px;
font-weight: 400;
letter-spacing: 0;
text-transform: none;
}
.prose {
max-width: 760px;
margin: 0 auto;
font-size: 15.5px;
color: var(--encre-douce);
}
.prose h2 {
margin: 56px 0 18px;
font-size: clamp(20px, 1.9vw, 25px);
line-height: 1.2;
letter-spacing: 0.05em;
color: var(--encre);
}
.prose h3 {
margin: 34px 0 12px;
font-family: var(--sans);
font-size: 13px;
font-weight: 400;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--encre);
}
.prose ul,
.prose ol {
padding-left: 20px;
margin: 0 0 1.1em;
}
.prose li {
margin-bottom: 8px;
}
.prose a {
text-decoration: underline;
text-underline-offset: 3px;
text-decoration-thickness: 1px;
}
.prose blockquote {
margin: 24px 0;
padding: 22px 26px;
background: var(--lin);
border-left: 1px solid var(--encre);
font-size: 14.5px;
}
.prose .maj {
font-size: 13px;
color: var(--gris);
}
.prose table {
width: 100%;
border-collapse: collapse;
margin: 0 0 1.4em;
font-size: 14px;
}
.prose th,
.prose td {
padding: 10px 12px 10px 0;
border-bottom: 1px solid var(--trait);
text-align: left;
vertical-align: top;
}
.prose th {
font-weight: 400;
color: var(--gris);
}
@media (max-width: 640px) {
.prose .tableau-fiches,
.prose .tableau-fiches tbody,
.prose .tableau-fiches tr,
.prose .tableau-fiches td {
display: block;
}
.prose .tableau-fiches tr:first-child {
display: none;
}
.prose .tableau-fiches {
border-top: 1px solid var(--trait);
}
.prose .tableau-fiches tr {
padding: 18px 0 8px;
border-bottom: 1px solid var(--trait);
}
.prose .tableau-fiches td {
padding: 0 0 12px;
border: 0;
}
.prose .tableau-fiches td::before {
content: attr(data-colonne);
display: block;
margin-bottom: 3px;
font-size: 10.5px;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--gris);
}
.prose .tableau-fiches td:first-child {
font-size: 15px;
color: var(--encre);
}
}
.voile {
position: fixed;
inset: 0;
z-index: 80;
background: rgba(12, 10, 9, 0.42);
opacity: 0;
visibility: hidden;
transition: opacity 0.5s var(--lent), visibility 0.5s;
}
.tiroir {
position: fixed;
top: 0;
right: 0;
bottom: 0;
z-index: 90;
display: flex;
flex-direction: column;
width: min(480px, 100%);
background: var(--fond);
transform: translateX(100%);
visibility: hidden;
transition: transform 0.6s var(--lent), visibility 0.6s;
}
.tiroir:focus {
outline: none;
}
.panier-ouvert .voile {
opacity: 1;
visibility: visible;
transition: opacity 0.5s var(--lent), visibility 0s;
}
.panier-ouvert .tiroir {
transform: translateX(0);
visibility: visible;
transition: transform 0.6s var(--lent), visibility 0s;
}
.tiroir__entete {
display: flex;
justify-content: space-between;
align-items: center;
gap: 20px;
min-height: var(--entete);
padding: 0 34px;
border-bottom: 1px solid var(--trait);
}
.tiroir__entete h2 {
font-size: 14px;
letter-spacing: 0.24em;
}
.fermer {
position: relative;
margin-right: -0.2em;
padding: 10px 0;
font-size: 11.5px;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.fermer::after {
content: '';
position: absolute;
left: 0;
right: 0.2em;
bottom: 6px;
height: 1px;
background: currentColor;
transform: scaleX(0);
transform-origin: right;
transition: transform 0.4s var(--lent);
}
.fermer:hover::after {
transform: scaleX(1);
transform-origin: left;
}
.tiroir__corps {
flex: 1;
overflow-y: auto;
overscroll-behavior: contain;
padding: 0 34px;
}
.tiroir__pied {
padding: 28px 34px calc(26px + env(safe-area-inset-bottom));
background: var(--lin);
}
.tiroir__note {
margin: 16px 0 0;
font-size: 12.5px;
line-height: 1.55;
color: var(--gris);
text-align: center;
}
.ligne-panier {
display: grid;
grid-template-columns: 104px minmax(0, 1fr);
gap: 24px;
padding: 28px 0;
border-bottom: 1px solid var(--trait);
}
.tiroir .ligne-panier:last-child {
border-bottom: 0;
}
.ligne-panier__image {
display: block;
align-self: start;
background: var(--lin);
}
.ligne-panier__image img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
}
.ligne-panier__infos {
display: flex;
flex-direction: column;
min-width: 0;
}
.ligne-panier__tete {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
gap: 4px 18px;
}
.ligne-panier__nom {
margin: 0;
font-family: var(--serif);
font-size: 20px;
font-weight: 500;
line-height: 1.2;
letter-spacing: 0.14em;
text-transform: uppercase;
font-variant-numeric: lining-nums;
}
.ligne-panier__nom a {
text-decoration: underline;
text-decoration-thickness: 1px;
text-decoration-color: transparent;
text-underline-offset: 6px;
transition: text-decoration-color 0.4s var(--lent);
}
.ligne-panier__nom a:hover {
text-decoration-color: currentColor;
}
.ligne-panier__prix {
margin: 0;
font-size: 15px;
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.ligne-panier__type {
margin: 2px 0 0;
font-family: var(--serif);
font-size: 17px;
font-style: italic;
line-height: 1.35;
color: var(--gris);
}
.ligne-panier__choix {
display: grid;
grid-template-columns: minmax(7.6em, max-content) minmax(0, 1fr);
gap: 4px 22px;
margin: 16px 0 0;
font-size: 13px;
line-height: 1.5;
}
.ligne-panier__choix div {
display: contents;
}
.ligne-panier__choix dt {
color: var(--gris);
}
.ligne-panier__choix dd {
margin: 0;
overflow-wrap: anywhere;
}
@media (max-width: 350px) {
.ligne-panier__choix {
display: block;
}
.ligne-panier__choix div {
display: flex;
flex-wrap: wrap;
gap: 0 8px;
}
}
.ligne-panier__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 6px 24px;
margin-top: auto;
padding-top: 20px;
}
.quantite {
display: inline-flex;
align-items: center;
border: 1px solid var(--trait);
border-radius: var(--rayon);
}
.quantite button {
width: 34px;
height: 34px;
font-size: 14px;
line-height: 1;
color: var(--gris);
transition: background 0.3s var(--lent), color 0.3s var(--lent);
}
.quantite button:hover {
background: var(--lin);
color: var(--encre);
}
.quantite span {
min-width: 20px;
font-size: 13px;
font-variant-numeric: tabular-nums;
text-align: center;
}
.retirer {
padding: 8px 0;
font-size: 11px;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--gris);
text-decoration: underline;
text-decoration-thickness: 1px;
text-decoration-color: rgba(61, 57, 53, 0.4);
text-underline-offset: 5px;
transition: color 0.3s var(--lent), text-decoration-color 0.3s var(--lent);
}
.retirer:hover {
color: var(--encre);
text-decoration-color: currentColor;
}
.totaux {
margin: 0 0 24px;
}
.totaux div {
display: flex;
justify-content: space-between;
align-items: baseline;
gap: 16px;
padding: 4px 0;
font-size: 14px;
}
.totaux dd {
margin: 0;
font-variant-numeric: tabular-nums;
}
.totaux dt,
.totaux dd.discret {
color: var(--gris);
}
.totaux .total {
margin-top: 12px;
padding-top: 16px;
border-top: 1px solid var(--trait);
font-size: 22px;
}
.totaux .total dt {
font-size: 12px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--encre);
}
.panier-vide {
padding: 72px 0;
text-align: center;
}
.panier-vide p {
margin-bottom: 30px;
font-family: var(--serif);
font-size: 26px;
font-style: italic;
color: var(--gris);
}
.panier-page {
padding: clamp(52px, 6.5vw, 104px) 0 clamp(88px, 10vw, 150px);
}
.panier-page__titre {
margin-bottom: clamp(28px, 3.2vw, 46px);
font-size: clamp(26px, 2.8vw, 40px);
}
.page-panier {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
gap: clamp(48px, 7vw, 120px);
align-items: start;
}
.page-panier [data-lignes] {
border-top: 1px solid var(--encre);
}
.page-panier .ligne-panier {
grid-template-columns: clamp(136px, 13vw, 176px) minmax(0, 1fr);
gap: clamp(24px, 3vw, 40px);
padding: 32px 0;
}
.page-panier .ligne-panier__nom {
font-size: 23px;
}
.page-panier .ligne-panier__prix {
font-size: 16px;
}
.page-panier .ligne-panier__type {
font-size: 18px;
}
.page-panier .ligne-panier__choix {
margin-top: 20px;
font-size: 13.5px;
}
.note-panier {
max-width: 60ch;
margin-top: 22px;
}
.accords {
margin-top: 34px;
}
.accords__titre {
display: flex;
justify-content: space-between;
gap: 16px;
margin: 0 0 6px;
font-family: var(--sans);
font-size: 11px;
font-weight: 400;
line-height: 1.5;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.accords__titre > span:last-child:not(:first-child) {
letter-spacing: 0.04em;
text-transform: none;
color: var(--gris);
}
.accords__liste {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--trait);
}
.accord {
position: relative;
display: grid;
grid-template-columns: 64px minmax(0, 1fr) auto;
gap: 18px;
align-items: center;
padding: 14px 0;
border-bottom: 1px solid var(--trait);
}
.accord:last-child {
border-bottom: 0;
}
.accord__image {
display: block;
background: var(--lin);
}
.accord__image img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
}
.accord__nom {
margin: 0;
font-family: var(--serif);
font-size: 17px;
font-weight: 500;
line-height: 1.2;
letter-spacing: 0.14em;
text-transform: uppercase;
font-variant-numeric: lining-nums;
}
.accord__nom a {
text-decoration: underline;
text-decoration-thickness: 1px;
text-decoration-color: transparent;
text-underline-offset: 5px;
transition: text-decoration-color 0.4s var(--lent);
}
.accord__nom a::after {
content: '';
position: absolute;
inset: 0;
}
.accord:hover .accord__nom a {
text-decoration-color: currentColor;
}
.accord__type {
margin: 2px 0 0;
font-family: var(--serif);
font-size: 15.5px;
font-style: italic;
line-height: 1.35;
color: var(--gris);
}
.accord__fin {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 2px;
text-align: right;
}
.accord__prix {
margin: 0;
font-size: 14px;
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.accord__action {
position: relative;
z-index: 1;
padding: 9px 0 5px;
font-size: 11px;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--encre);
text-decoration: underline;
text-decoration-thickness: 1px;
text-decoration-color: rgba(61, 57, 53, 0.4);
text-underline-offset: 5px;
transition: text-decoration-color 0.3s var(--lent);
}
span.accord__action {
z-index: auto;
pointer-events: none;
}
.accord__action:hover,
.accord:hover span.accord__action {
text-decoration-color: currentColor;
}
.tiroir .accords {
margin: 28px 0 30px;
}
.page-panier__recap {
grid-row: span 2;
}
.page-panier > [data-accords-panier] {
grid-column: 1;
}
.page-panier > [data-accords-panier]:empty {
display: none;
}
.accords--panier {
margin-top: 0;
}
.accords--panier .accord {
grid-template-columns: 80px minmax(0, 1fr) auto;
gap: 24px;
padding: 18px 0;
}
.accords--panier .accord__nom {
font-size: 19px;
}
.accords--panier .accord__type {
font-size: 16.5px;
}
@media (max-width: 360px) {
.accord,
.accords--panier .accord {
grid-template-columns: 52px minmax(0, 1fr) auto;
gap: 12px;
}
.accord__nom,
.accords--panier .accord__nom {
font-size: 15.5px;
letter-spacing: 0.1em;
overflow-wrap: break-word;
}
}
.page-panier__recap {
position: sticky;
top: calc(var(--entete) + 32px);
padding-top: 26px;
border-top: 1px solid var(--encre);
}
.page-panier__recap h2 {
margin-bottom: 20px;
font-size: 13px;
letter-spacing: 0.22em;
}
.page-panier__recap .totaux .total {
font-size: 26px;
}
.page-panier__assurances {
margin: 30px 0 0;
padding: 18px 0 0;
list-style: none;
border-top: 1px solid var(--trait);
font-size: 12.5px;
line-height: 1.6;
color: var(--gris);
}
.page-panier__assurances li + li {
margin-top: 6px;
}
.page-panier.est-vide {
grid-template-columns: 1fr;
}
.page-panier.est-vide .panier-vide {
padding: 48px 0 0;
text-align: left;
}
.page-panier.est-vide .note-panier {
display: none;
}
.etape-commande {
display: none;
margin-top: 24px;
}
.etape-commande.est-visible {
display: block;
}
.ligne-panier__reservation {
margin: 10px 0 0;
font-size: 11px;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--encre);
}
.totaux .totaux__reserve {
margin-top: 6px;
font-size: 13px;
}
.panier-reservation {
margin-top: 30px;
padding-top: 22px;
border-top: 1px solid var(--trait);
}
[data-bloc-paiement][hidden] + .panier-reservation {
margin-top: 0;
padding-top: 0;
border-top: 0;
}
@media (max-width: 900px) {
.page-panier {
grid-template-columns: 1fr;
gap: 56px;
}
.page-panier__recap {
position: static;
grid-row: auto;
}
}
@media (max-width: 520px) {
.tiroir__entete,
.tiroir__corps {
padding-left: 22px;
padding-right: 22px;
}
.tiroir__pied {
padding: 22px 22px calc(20px + env(safe-area-inset-bottom));
}
.ligne-panier,
.page-panier .ligne-panier {
grid-template-columns: 92px minmax(0, 1fr);
gap: 18px;
padding: 24px 0;
}
.ligne-panier__nom,
.page-panier .ligne-panier__nom {
font-size: 17px;
letter-spacing: 0.12em;
}
.ligne-panier__prix,
.page-panier .ligne-panier__prix {
font-size: 14.5px;
}
.ligne-panier__type,
.page-panier .ligne-panier__type {
font-size: 16px;
}
.ligne-panier__choix,
.page-panier .ligne-panier__choix {
gap: 2px 16px;
margin-top: 12px;
font-size: 12.5px;
}
.ligne-panier__actions {
gap: 6px 18px;
padding-top: 16px;
}
.quantite button {
width: 44px;
height: 44px;
}
.retirer {
padding: 12px 0;
}
.totaux {
margin-bottom: 18px;
}
.totaux div {
padding: 2px 0;
}
.totaux .total {
margin-top: 8px;
padding-top: 12px;
font-size: 20px;
}
.page-panier__recap .totaux .total {
font-size: 24px;
}
.tiroir__note {
margin-top: 12px;
font-size: 12px;
}
}
.pied {
padding: clamp(80px, 9vw, 130px) 0 40px;
background: var(--nuit);
color: rgba(238, 237, 233, 0.8);
}
.pied__haut {
display: grid;
grid-template-columns: 1.3fr 2fr;
gap: clamp(48px, 7vw, 120px);
padding-bottom: clamp(56px, 7vw, 96px);
border-bottom: 1px solid var(--trait-clair);
}
.pied__lettre h2 {
margin-bottom: 14px;
color: var(--ivoire);
}
.pied__lettre p {
margin-bottom: 28px;
font-size: 15px;
}
.pied__colonnes {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
.pied__colonnes h3 {
margin-bottom: 20px;
font-family: var(--sans);
font-size: 11px;
font-weight: 400;
letter-spacing: 0.22em;
text-transform: uppercase;
color: rgba(238, 237, 233, 0.7);
}
.pied__colonnes ul {
margin: 0;
padding: 0;
list-style: none;
}
.pied__colonnes li {
margin-bottom: 10px;
font-size: 14px;
}
.pied__colonnes a {
transition: color 0.3s;
}
.pied__colonnes a:hover {
color: var(--ivoire);
}
.pied__sommaire {
display: grid;
gap: 12px;
padding-top: clamp(32px, 4vw, 44px);
}
.pied__rang {
display: grid;
grid-template-columns: 1.3fr 2fr;
gap: 6px clamp(48px, 7vw, 120px);
align-items: baseline;
}
.pied__rang h3 {
font-family: var(--sans);
font-size: 11px;
font-weight: 400;
letter-spacing: 0.22em;
text-transform: uppercase;
color: rgba(238, 237, 233, 0.7);
}
.pied__rang ul {
display: flex;
flex-wrap: wrap;
gap: 4px 26px;
margin: 0;
padding: 0;
list-style: none;
font-size: 13px;
color: rgba(238, 237, 233, 0.7);
}
.pied__rang a {
transition: color 0.3s;
}
.pied__rang a:hover {
color: var(--ivoire);
}
.pied__rang--reseaux a {
display: inline-flex;
align-items: center;
gap: 9px;
padding: 4px 0;
}
.pied__rang--reseaux svg {
width: 16px;
height: 16px;
flex: none;
fill: none;
stroke: currentColor;
stroke-width: 1.2;
stroke-linecap: round;
stroke-linejoin: round;
}
@media (max-width: 900px) {
.pied__sommaire {
gap: 22px;
}
.pied__rang {
grid-template-columns: 1fr;
}
.pied__rang ul {
gap: 10px 24px;
}
}
.pied__marque {
margin: clamp(48px, 7vw, 90px) -0.3em clamp(28px, 4vw, 48px) 0;
font-family: var(--serif);
font-size: clamp(56px, 8.5vw, 160px);
font-weight: 400;
line-height: 0.8;
letter-spacing: 0.3em;
text-align: center;
color: rgba(238, 237, 233, 0.9);
background: radial-gradient(circle 2.3em at 50% 72%, #ffd68a 0%, #f08a32 18%, #b3401d 34%, rgba(238, 237, 233, 0.92) 56%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
.pied__bas {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
gap: 16px;
font-size: 12px;
letter-spacing: 0.06em;
color: rgba(238, 237, 233, 0.7);
}
.pied__bas ul {
display: flex;
flex-wrap: wrap;
gap: 22px;
margin: 0;
padding: 0;
list-style: none;
}
@media (max-width: 900px) {
.pied__haut {
grid-template-columns: 1fr;
}
}
@media (max-width: 560px) {
.pied__colonnes {
grid-template-columns: 1fr 1fr;
}
}
.notification {
position: fixed;
left: 50%;
bottom: 28px;
z-index: 100;
padding: 14px 24px;
background: var(--encre);
color: var(--ivoire);
border-radius: 40px;
font-size: 13px;
letter-spacing: 0.04em;
transform: translate(-50%, 140%);
transition: transform 0.6s var(--lent);
}
.notification.est-visible {
transform: translate(-50%, 0);
}
.notification:empty {
visibility: hidden;
}
.js .apparait {
opacity: 0;
transform: translateY(14px);
transition: opacity 0.5s var(--lent), transform 0.5s var(--lent);
}
.js .apparait.est-vu {
opacity: 1;
transform: none;
}
.js .apparait[data-delai='1'] {
transition-delay: 0.12s;
}
.js .apparait[data-delai='2'] {
transition-delay: 0.24s;
}
.js .apparait[data-delai='3'] {
transition-delay: 0.36s;
}
.js .apparait[data-delai='4'] {
transition-delay: 0.48s;
}
.introuvable {
min-height: 70vh;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}
.introuvable .signature-soleil {
width: 90px;
height: 90px;
opacity: 0.5;
filter: grayscale(0.4);
}
@media print {
.entete,
.pied,
.tiroir,
.voile,
.barre-mobile {
display: none !important;
}
body {
background: #fff;
}
}
.lien-souligne {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}
.comparateur:has(input:focus-visible) {
outline: 1px solid var(--ivoire);
outline-offset: 6px;
}
@view-transition {
navigation: auto;
}
::view-transition-old(root),
::view-transition-new(root) {
animation-duration: 0.5s;
animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
@view-transition {
navigation: none;
}
}
.galerie__scene {
cursor: zoom-in;
}
.galerie__scene,
.galerie__traits,
.galerie__miniatures,
.visionneuse,
fieldset.option {
-webkit-tap-highlight-color: transparent;
}
.galerie__agrandir {
position: absolute;
right: 14px;
bottom: 12px;
z-index: 2;
display: grid;
place-items: center;
width: 44px;
height: 44px;
border: 1px solid rgba(238, 237, 233, 0.6);
border-radius: 50%;
background: rgba(12, 10, 9, 0.25);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
color: var(--ivoire);
transition: background 0.3s;
}
.galerie__agrandir:hover {
background: rgba(12, 10, 9, 0.5);
}
.galerie__agrandir svg {
width: 16px;
height: 16px;
stroke: currentColor;
stroke-width: 1.2;
fill: none;
}
.galerie__fleche {
position: absolute;
top: 50%;
z-index: 2;
display: grid;
place-items: center;
width: 44px;
height: 44px;
margin-top: -20px;
border: 1px solid rgba(238, 237, 233, 0.6);
border-radius: 50%;
background: rgba(12, 10, 9, 0.25);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
color: var(--ivoire);
transition: background 0.3s;
}
.galerie__fleche--prec {
left: 14px;
}
.galerie__fleche--suiv {
right: 14px;
}
.galerie__fleche:hover {
background: rgba(12, 10, 9, 0.5);
}
.galerie__fleche svg {
width: 16px;
height: 16px;
stroke: currentColor;
stroke-width: 1.2;
fill: none;
}
.visionneuse {
position: fixed;
inset: 0;
z-index: 120;
display: grid;
grid-template-rows: auto minmax(0, 1fr) auto auto minmax(0, 1fr) auto;
padding: 0 var(--marge) max(18px, env(safe-area-inset-bottom));
background: var(--nuit);
color: var(--ivoire);
opacity: 0;
visibility: hidden;
transition: opacity 0.5s var(--lent), visibility 0.5s;
}
.visionneuse.est-ouverte {
opacity: 1;
visibility: visible;
transition: opacity 0.5s var(--lent), visibility 0s;
}
.visionneuse__haut {
grid-row: 1;
display: flex;
align-items: center;
justify-content: space-between;
min-height: 64px;
}
.visionneuse__compteur {
font-family: var(--serif);
font-style: italic;
font-size: 18px;
color: rgba(243, 238, 230, 0.75);
white-space: nowrap;
}
.visionneuse__fermer {
display: inline-flex;
align-items: center;
gap: 10px;
min-height: 44px;
font-size: 12px;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.visionneuse__fermer svg {
width: 13px;
height: 13px;
stroke: currentColor;
stroke-width: 1.3;
fill: none;
}
.visionneuse__scene {
grid-row: 3;
display: flex;
align-items: center;
justify-content: center;
min-height: 0;
}
.visionneuse__cadre {
position: relative;
margin: 0;
line-height: 0;
transform: scale(0.985);
transition: transform 0.7s var(--lent), opacity 0.35s;
}
.visionneuse.est-ouverte .visionneuse__cadre {
transform: none;
}
.visionneuse__cadre.est-changeante {
opacity: 0;
transition: transform 0.7s var(--lent), opacity 0.18s;
}
.visionneuse:focus {
outline: none;
}
.visionneuse .galerie__cotes {
opacity: 1;
visibility: visible;
transition: none;
line-height: 1.25;
}
.visionneuse .cote {
font-size: clamp(9px, min(1.9vw, 1.35vh), 15px);
}
.visionneuse .cote--format {
font-size: clamp(11px, min(2.7vw, 1.9vh), 20px);
}
.visionneuse img {
display: block;
max-width: min(100%, 1400px);
max-height: calc(100dvh - 200px);
width: auto;
height: auto;
object-fit: contain;
}
.visionneuse__legende {
grid-row: 4;
max-width: 62ch;
min-height: 1.5em;
margin: 16px auto 0;
font-size: 14px;
line-height: 1.5;
text-align: center;
color: rgba(243, 238, 230, 0.8);
}
.visionneuse__bas {
position: absolute;
top: 50%;
left: var(--marge);
right: var(--marge);
display: flex;
justify-content: space-between;
align-items: center;
transform: translateY(-50%);
pointer-events: none;
}
.visionneuse__nom {
display: none;
}
.visionneuse__nav {
display: flex;
align-items: center;
justify-content: center;
width: 52px;
height: 52px;
border: 1px solid rgba(243, 238, 230, 0.35);
border-radius: 50%;
pointer-events: auto;
transition: border-color 0.3s, background 0.3s;
}
.visionneuse__nav svg {
width: 16px;
height: 16px;
stroke: currentColor;
stroke-width: 1.3;
fill: none;
}
.visionneuse__nav:hover {
border-color: var(--ivoire);
background: rgba(243, 238, 230, 0.06);
}
@media (min-width: 761px) {
.visionneuse__scene {
padding: 0 76px;
}
}
@media (max-width: 760px) {
.visionneuse__haut {
min-height: 56px;
}
.visionneuse img {
max-height: calc(100dvh - 260px);
}
.visionneuse__legende {
margin-top: 14px;
font-size: 14px;
text-align: left;
}
.visionneuse__bas {
grid-row: 6;
position: static;
margin-top: 14px;
transform: none;
pointer-events: auto;
}
.visionneuse__nav {
width: 48px;
height: 48px;
}
.visionneuse__nom {
display: block;
font-family: var(--serif);
font-style: italic;
font-size: 17px;
color: rgba(243, 238, 230, 0.6);
}
}
.journal {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(24px, 3vw, 44px);
}
.carte-article {
display: block;
}
.carte-article__media {
overflow: hidden;
aspect-ratio: 4 / 5;
border-radius: var(--rayon);
background: var(--lin);
}
.carte-article__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.8s var(--lent);
}
.carte-article:hover .carte-article__media img {
transform: scale(1.04);
}
.carte-article__rubrique {
display: block;
margin: 22px 0 10px;
font-size: 11px;
letter-spacing: 0.22em;
text-transform: uppercase;
color: var(--gris);
}
.carte-article h2,
.carte-article h3 {
margin-bottom: 12px;
font-size: clamp(24px, 2.2vw, 30px);
}
.carte-article p {
font-size: 14.5px;
color: var(--gris);
}
.carte-article .lien-trait {
margin-top: 18px;
}
@media (max-width: 900px) {
.journal {
grid-template-columns: 1fr;
max-width: 520px;
margin: 0 auto;
}
}
.journal-conseils {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
grid-template-rows: repeat(4, auto);
column-gap: clamp(12px, 3vw, 48px);
margin: 0;
padding: 0;
list-style: none;
}
.journal-conseils > li,
.journal-conseils__article {
display: grid;
grid-row: span 4;
grid-template-rows: subgrid;
}
.journal-conseils__texte {
display: contents;
}
.journal-conseils__photo {
display: block;
overflow: hidden;
aspect-ratio: 3 / 2;
background: var(--pierre);
}
.journal-conseils__photo img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.2s var(--lent);
}
.journal-conseils__article:hover img {
transform: scale(1.03);
}
.journal-conseils__texte h3 {
margin: 24px 0 10px;
font-size: clamp(15px, 1.2vw, 17px);
line-height: 1.3;
letter-spacing: 0.08em;
text-wrap: pretty;
text-decoration: underline 1px transparent;
text-underline-offset: 5px;
transition: text-decoration-color 0.4s var(--lent);
}
.journal-conseils__article:hover h3 {
text-decoration-color: currentColor;
}
.journal-conseils__texte p {
max-width: 40ch;
margin: 0 0 12px;
font-size: 15px;
line-height: 1.6;
color: var(--gris);
}
@media (max-width: 900px) {
.journal-conseils {
grid-template-columns: 1fr;
grid-template-rows: none;
border-top: 1px solid var(--trait);
}
.journal-conseils > li {
display: block;
grid-row: auto;
border-bottom: 1px solid var(--trait);
}
.journal-conseils__article {
grid-row: auto;
grid-template-rows: none;
grid-template-columns: 80px minmax(0, 1fr);
column-gap: 18px;
align-items: start;
padding: 18px 0;
}
.journal-conseils__texte {
display: block;
}
.journal-conseils__photo {
aspect-ratio: 4 / 5;
}
.journal-conseils__texte h3 {
margin: 0 0 8px;
}
.journal-conseils__texte p {
margin-bottom: 8px;
}
}
@media (prefers-reduced-motion: reduce) {
.journal-conseils__photo img,
.journal-conseils__texte h3 {
transition: none;
}
}
.journal-une {
padding: clamp(32px, 4vw, 56px) 0 clamp(56px, 7vw, 104px);
}
.journal-une__grille {
display: grid;
grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
gap: clamp(32px, 5vw, 88px);
align-items: end;
}
.journal-une__intro {
display: flex;
flex-direction: column;
align-self: stretch;
}
.journal-une .fil-ariane {
margin-bottom: auto;
padding-bottom: 48px;
color: rgba(var(--ivoire-rgb), 0.72);
}
.journal-une .fil-ariane a:hover {
color: var(--ivoire);
}
.journal-une h1 {
margin-bottom: 28px;
font-size: clamp(34px, 4.2vw, 62px);
}
.journal-une h1 em {
display: block;
margin-top: 8px;
}
.journal-une__intro > p {
max-width: 30em;
color: rgba(var(--ivoire-rgb), 0.84);
}
.journal-themes {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 36px;
}
.journal-themes a {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 46px;
padding: 0 20px;
border: 1px solid rgba(var(--ivoire-rgb), 0.42);
font-size: 11.5px;
letter-spacing: 0.18em;
text-transform: uppercase;
transition: background 0.4s var(--lent), color 0.4s var(--lent), border-color 0.4s var(--lent);
}
.journal-themes a:hover {
border-color: var(--ivoire);
background: var(--ivoire);
color: var(--encre);
}
.journal-une__article {
display: block;
}
.journal-une__media,
.lecture__media {
overflow: hidden;
background: var(--pierre);
}
.journal-une__media {
aspect-ratio: 16 / 10;
background: var(--nuit-2);
}
.lecture__media {
aspect-ratio: 1;
}
.journal-une__media img,
.lecture__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.8s var(--lent);
}
.journal-une__article:hover img,
.lecture:hover img {
transform: scale(1.03);
}
.journal-une__article h2 {
max-width: 22em;
margin: 28px 0 14px;
font-size: clamp(21px, 2vw, 30px);
line-height: 1.2;
}
.journal-une__article p {
max-width: 36em;
margin-bottom: 0;
color: rgba(var(--ivoire-rgb), 0.84);
}
.journal-une__suite {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 8px 28px;
margin-top: 24px;
}
.journal-lecture {
font-size: 13px;
letter-spacing: 0.04em;
color: var(--gris);
}
.journal-une .journal-lecture {
color: rgba(var(--ivoire-rgb), 0.72);
}
.journal-chapitre {
margin-top: clamp(72px, 8vw, 120px);
}
.journal-chapitre__grille,
.journal-conseil__grille {
display: grid;
grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
gap: clamp(28px, 5vw, 88px);
}
.journal-chapitre__grille {
padding-top: clamp(28px, 3vw, 40px);
border-top: 1px solid var(--trait);
}
.journal-chapitre__titre {
position: sticky;
top: calc(var(--entete) + 32px);
align-self: start;
font-size: clamp(24px, 2.4vw, 34px);
}
.journal-chapitre__titre em,
.journal-conseil h2 em {
display: block;
margin-top: 10px;
font-size: clamp(20px, 1.8vw, 26px);
}
.journal-chapitre__articles {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: clamp(24px, 3vw, 48px);
}
.journal-chapitre__grille--large {
grid-template-columns: minmax(0, 1fr);
gap: clamp(28px, 3vw, 44px);
}
.journal-chapitre__grille--large .journal-chapitre__titre {
position: static;
}
.journal-chapitre__articles--trois {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.lecture {
display: block;
}
.lecture h3 {
margin: 24px 0 10px;
font-size: clamp(17px, 1.45vw, 21px);
line-height: 1.25;
letter-spacing: 0.05em;
}
.lecture p {
margin-bottom: 12px;
font-size: 15px;
line-height: 1.6;
color: var(--gris);
}
.journal-conseil {
margin-top: clamp(88px, 10vw, 152px);
padding: clamp(64px, 8vw, 112px) 0;
background: var(--lin);
}
.journal-conseil h2 {
font-size: clamp(24px, 2.4vw, 34px);
}
.journal-conseil p {
max-width: 34em;
color: var(--gris);
}
.journal-conseil__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 20px 36px;
margin-top: 32px;
}
@media (max-width: 900px) {
.journal-une__grille,
.journal-chapitre__grille,
.journal-conseil__grille {
grid-template-columns: minmax(0, 1fr);
}
.journal-chapitre__titre {
position: static;
}
}
@media (max-width: 700px) {
.journal-une .fil-ariane {
padding-bottom: 36px;
}
.journal-themes {
gap: 8px;
margin-top: 28px;
}
.journal-themes a {
flex: 1 1 auto;
padding: 0 12px;
letter-spacing: 0.14em;
}
.journal-chapitre__articles {
grid-template-columns: minmax(0, 1fr);
gap: 0;
}
.lecture {
display: grid;
grid-template-columns: 108px minmax(0, 1fr);
gap: 18px;
align-items: start;
padding: 20px 0;
border-top: 1px solid var(--trait);
}
.lecture:first-child {
padding-top: 0;
border-top: 0;
}
.lecture h3 {
margin: 0 0 8px;
font-size: 15px;
letter-spacing: 0.04em;
}
.lecture p {
display: -webkit-box;
margin-bottom: 8px;
overflow: hidden;
font-size: 14px;
line-height: 1.5;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.journal-lecture {
font-size: 12.5px;
}
}
.article-entete {
max-width: 860px;
margin: 0 auto;
padding: clamp(64px, 9vw, 130px) var(--marge) clamp(40px, 5vw, 64px);
text-align: center;
}
.article-entete h1 {
margin: 8px 0 26px;
}
.article-entete .chapo {
max-width: 640px;
margin: 0 auto 28px;
font-family: var(--serif);
font-size: clamp(21px, 2vw, 26px);
line-height: 1.45;
color: var(--encre-douce);
}
.article-meta {
font-size: 12px;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--gris);
}
.article-image {
max-width: var(--largeur);
margin: 0 auto;
padding: 0 var(--marge);
}
.article-image img {
width: 100%;
max-height: 78vh;
object-fit: cover;
border-radius: var(--rayon);
}
.article-image figcaption {
margin-top: 12px;
font-size: 12.5px;
color: var(--gris);
text-align: center;
}
.article {
max-width: 700px;
margin: 0 auto;
padding: clamp(56px, 7vw, 96px) var(--marge) clamp(72px, 8vw, 120px);
font-size: 17px;
line-height: 1.85;
color: var(--encre-douce);
}
.article > p:first-of-type::first-letter {
float: left;
margin: 8px 12px 0 0;
font-family: var(--serif);
font-size: 76px;
line-height: 0.8;
color: var(--encre);
}
.article h2 {
margin: 58px 0 18px;
font-size: clamp(22px, 2.3vw, 31px);
line-height: 1.15;
color: var(--encre);
}
.article ul {
padding-left: 20px;
}
.article li {
margin-bottom: 8px;
}
.article a:not(.bouton) {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}
.citation {
margin: 56px 0;
padding: 0;
border: 0;
font-family: var(--serif);
font-size: clamp(23px, 2.6vw, 34px);
font-style: italic;
line-height: 1.3;
color: var(--encre);
text-align: center;
}
.citation::before,
.citation::after {
content: '';
display: block;
width: 40px;
height: 1px;
margin: 0 auto 28px;
background: var(--sable);
}
.citation::after {
margin: 28px auto 0;
}
.encadre-article {
margin: 48px 0 0;
padding: 30px 32px;
background: var(--lin);
border-radius: var(--rayon);
font-size: 15.5px;
}
.encadre-article p {
margin-bottom: 18px;
}
.encadre-article .bouton {
max-width: 100%;
}
@media (max-width: 400px) {
.encadre-article {
padding: 26px 22px;
}
.encadre-article .bouton {
padding: 0 18px;
letter-spacing: 0.12em;
}
}
.reseaux {
display: flex;
gap: 18px;
margin: 0;
padding: 0;
list-style: none;
}
.reseaux a {
display: inline-flex;
align-items: center;
gap: 10px;
opacity: 0.75;
transition: opacity 0.3s;
}
.reseaux a:hover {
opacity: 1;
}
.reseaux svg {
width: 18px;
height: 18px;
fill: none;
stroke: currentColor;
stroke-width: 1.2;
stroke-linecap: round;
stroke-linejoin: round;
}
.reseaux--texte {
flex-direction: column;
gap: 14px;
font-size: 14px;
}
.canaux {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(32px, 4vw, 64px);
}
.canal {
display: flex;
flex-direction: column;
padding-top: 34px;
border-top: 1px solid var(--encre);
}
.canal .surtitre {
margin-bottom: 14px;
}
.canal h2 {
margin-bottom: 16px;
font-size: 19px;
letter-spacing: 0.12em;
}
.canal p {
flex: 1;
margin-bottom: 32px;
font-size: 14.5px;
line-height: 1.75;
color: var(--gris);
}
.canal a.canal__adresse {
align-self: flex-start;
padding-bottom: 6px;
border-bottom: 1px solid rgba(28, 25, 23, 0.24);
font-family: var(--sans);
font-size: 15.5px;
font-weight: 400;
letter-spacing: 0.03em;
word-break: break-all;
transition: border-color 0.3s var(--lent);
}
.canal a.canal__adresse:hover {
border-bottom-color: var(--encre);
}
@media (max-width: 860px) {
.canaux {
grid-template-columns: 1fr;
}
}
.contact-message__grille {
display: grid;
grid-template-columns: minmax(0, 340px) minmax(0, 1fr);
grid-template-rows: auto 1fr;
grid-template-areas:
'intro formulaire'
'liens formulaire';
column-gap: clamp(40px, 8vw, 140px);
align-items: start;
}
.contact-message__intro {
grid-area: intro;
}
.contact-message__intro > p {
margin: 24px 0 0;
color: var(--gris);
}
.contact-message__formulaire {
grid-area: formulaire;
}
.contact-message__liens {
grid-area: liens;
margin-top: clamp(48px, 5vw, 72px);
}
.contact-message .liste-points {
margin: 0 0 48px;
}
.contact-message .liste-points li {
padding: 0;
}
.contact-message .liste-points a {
display: flex;
flex: 1;
justify-content: space-between;
gap: 20px;
padding: 14px 0;
}
.contact-message .liste-points a span {
color: var(--gris);
transition: transform 0.3s var(--lent);
}
.contact-message .liste-points a:hover span {
transform: translateX(4px);
}
.contact-message .reseaux--texte {
display: grid;
grid-template-columns: repeat(2, max-content);
gap: 14px 48px;
}
@media (max-width: 860px) {
.contact-message__grille {
grid-template-columns: minmax(0, 1fr);
grid-template-rows: none;
grid-template-areas:
'intro'
'formulaire'
'liens';
}
.contact-message__formulaire {
margin-top: 36px;
}
}
.zones {
width: 100%;
border-collapse: collapse;
font-size: 15px;
}
.zones th,
.zones td {
padding: 18px 16px 18px 0;
border-bottom: 1px solid var(--trait);
text-align: left;
vertical-align: top;
}
.zones thead th {
font-size: 11px;
font-weight: 400;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--gris);
}
.zones td:first-child {
font-family: var(--serif);
font-size: 20px;
}
@media (max-width: 640px) {
.zones thead {
display: none;
}
.zones tr {
display: block;
padding: 16px 0;
border-bottom: 1px solid var(--trait);
}
.zones td {
display: block;
padding: 2px 0;
border: 0;
}
}
html,
body {
overflow-x: hidden;
}
@supports (overflow: clip) {
html,
body {
overflow-x: clip;
}
}
img,
video,
table {
max-width: 100%;
}
.pied {
overflow: hidden;
}
@media (max-width: 560px) {
.pied__marque {
letter-spacing: 0.18em;
margin-right: -0.18em;
font-size: 12vw;
}
}
.journal--duo {
grid-template-columns: repeat(2, 1fr);
max-width: 900px;
margin: 0 auto;
}
@media (max-width: 700px) {
.journal--duo {
grid-template-columns: 1fr;
}
}
.hero__diapo .hero__soir {
opacity: 0;
filter: none;
}
.tableau-cible {
position: absolute;
z-index: 1;
display: block;
cursor: pointer;
outline: none;
}
.tableau-cible::before {
content: '';
position: absolute;
inset: -10px;
border: 1px solid rgba(238, 237, 233, 0.92);
box-shadow: 0 0 0 1px rgba(12, 10, 9, 0.1), 0 0 30px rgba(238, 237, 233, 0.14);
opacity: 0;
transform: scale(0.985);
transition: opacity 0.8s var(--lent), transform 0.8s var(--lent);
pointer-events: none;
}
.tableau-cible__mot {
position: absolute;
left: 50%;
top: calc(100% + 22px);
font-size: 11.5px;
font-weight: 500;
letter-spacing: 0.26em;
text-transform: uppercase;
white-space: nowrap;
color: #eeede9;
text-shadow: 0 1px 2px rgba(12, 10, 9, 0.55), 0 0 16px rgba(12, 10, 9, 0.5);
opacity: 0;
transform: translate(-50%, 5px);
transition: opacity 0.8s var(--lent), transform 0.8s var(--lent);
pointer-events: none;
}
.tableau-cible:hover::before,
.tableau-cible:focus-visible::before {
opacity: 1;
transform: none;
}
.tableau-cible:hover .tableau-cible__mot,
.tableau-cible:focus-visible .tableau-cible__mot {
opacity: 1;
transform: translate(-50%, 0);
}
.hero__cible {
position: absolute;
inset: 0;
transform: scale(1.07);
pointer-events: none;
}
.hero__diapo.est-active .hero__cible {
animation: respiration-cible var(--duree-bandeau) var(--lent) both;
}
.hero__diapo.est-sortie .hero__cible {
animation: none;
transform: none;
}
.hero__cible .tableau-cible {
pointer-events: auto;
}
.hero__diapo:not(.est-active) .tableau-cible {
pointer-events: none;
}
@keyframes respiration-cible {
0% {
transform: scale(1.07);
}
100% {
transform: scale(1);
}
}
@media (hover: none) {
.tableau-cible::before,
.tableau-cible__mot {
display: none;
}
}
@media (max-width: 560px) {
.hero__texte p {
display: none;
}
.hero .titre-xxl {
max-width: 13em;
font-size: 23px;
line-height: 1.16;
letter-spacing: 0.03em;
}
.hero .surtitre {
font-size: 9.5px;
letter-spacing: 0.22em;
}
.hero__texte .boutons {
gap: 10px;
margin-top: 20px;
}
.hero__texte .boutons .bouton {
min-height: 44px;
padding: 0 20px;
font-size: 10.5px;
}
.hero .hero__contenu {
padding-bottom: 66px;
padding-bottom: calc(66px + 100lvh - 100svh);
}
.hero__media[data-diaporama] .hero__diapo img,
.hero__media[data-diaporama] .hero__cible {
bottom: auto;
height: 66svh;
}
.hero__media[data-diaporama] img {
object-position: var(--x-mobile, var(--x, 62%)) 50%;
-webkit-mask-image: linear-gradient(180deg, #000 82%, transparent 100%);
mask-image: linear-gradient(180deg, #000 82%, transparent 100%);
}
.hero__media[data-diaporama] .hero__diapo:is(.est-active, .est-sortie)::before {
content: '';
position: absolute;
inset: 0;
background: var(--flou, none) 60% 85% / cover no-repeat;
filter: blur(26px) brightness(0.7) saturate(1.1);
transform: scale(1.25);
}
.hero:has(.hero__media[data-diaporama])::after {
background: linear-gradient(180deg, rgba(12, 10, 9, 0.55) 0, rgba(12, 10, 9, 0) 14svh, rgba(12, 10, 9, 0) 60svh, rgba(12, 10, 9, 0.28) 74svh, rgba(12, 10, 9, 0.34) 100%);
}
}
.galerie__scene .galerie__nuit,
.galerie__scene .galerie__eteinte {
z-index: 1;
transform: none;
opacity: 0;
transition: opacity 0.22s linear;
pointer-events: none;
}
.galerie__scene .galerie__eteinte {
z-index: 2;
}
.galerie__scene.a-variateur .galerie__nuit,
.galerie__scene.a-variateur .galerie__eteinte,
.galerie__scene.a-variateur img.est-active {
will-change: opacity, filter;
}
.galerie__scene.est-reglee .galerie__nuit,
.galerie__scene.est-reglee .galerie__eteinte {
transition: none;
}
.variateur {
margin: 30px 0 30px;
transition: opacity 0.4s, visibility 0.4s;
}
.variateur .option__legende {
margin-bottom: 10px;
}
.variateur__ligne {
position: relative;
display: flex;
align-items: center;
gap: clamp(18px, 2vw, 30px);
}
.variateur.est-indisponible {
opacity: 0.32;
pointer-events: none;
}
.variateur__valeur {
font-variant-numeric: tabular-nums;
}
.variateur__note {
margin: 10px 0 0;
font-size: 12.5px;
line-height: 1.5;
color: var(--gris);
}
.variateur__icone {
flex: none;
width: 15px;
height: 15px;
fill: none;
stroke: var(--gris);
stroke-width: 0.9;
stroke-linecap: round;
opacity: 0.6;
transition: stroke 0.4s var(--lent), opacity 0.4s var(--lent);
}
.variateur.est-allume .variateur__icone--fort {
stroke: #b9782e;
opacity: 1;
}
.variateur__curseur {
flex: 1;
width: 100%;
height: 26px;
margin: 0;
background:
linear-gradient(to right, rgba(185, 120, 46, 0.4), #b9782e) 0 50% / var(--niveau, 0%) 1px no-repeat,
linear-gradient(rgba(20, 17, 16, 0.2), rgba(20, 17, 16, 0.2)) 0 50% / 100% 1px no-repeat;
outline: none;
cursor: pointer;
touch-action: pan-y;
-webkit-appearance: none;
appearance: none;
}
.variateur__curseur::-webkit-slider-runnable-track {
height: 26px;
background: transparent;
}
.variateur__curseur::-moz-range-track {
height: 26px;
background: transparent;
}
.variateur__curseur::-webkit-slider-thumb {
width: 15px;
height: 15px;
margin-top: 5.5px;
border: 1px solid var(--encre);
border-radius: 50%;
background: var(--ivoire);
box-shadow: 0 1px 2px rgba(20, 17, 16, 0.1), 0 3px 8px rgba(20, 17, 16, 0.08);
transition: transform 0.25s var(--lent);
-webkit-appearance: none;
appearance: none;
}
.variateur__curseur::-moz-range-thumb {
width: 15px;
height: 15px;
border: 1px solid var(--encre);
border-radius: 50%;
background: var(--ivoire);
box-shadow: 0 1px 2px rgba(20, 17, 16, 0.1), 0 3px 8px rgba(20, 17, 16, 0.08);
transition: transform 0.25s var(--lent);
}
@media (hover: hover) {
.variateur__curseur:hover::-webkit-slider-thumb {
transform: scale(1.08);
}
.variateur__curseur:hover::-moz-range-thumb {
transform: scale(1.08);
}
}
.variateur__curseur:active::-webkit-slider-thumb {
transform: scale(1.15);
}
.variateur__curseur:active::-moz-range-thumb {
transform: scale(1.15);
}
.variateur__curseur:focus-visible::-webkit-slider-thumb {
box-shadow: 0 0 0 3px var(--ivoire), 0 0 0 4px var(--encre);
}
.variateur__curseur:focus-visible::-moz-range-thumb {
box-shadow: 0 0 0 3px var(--ivoire), 0 0 0 4px var(--encre);
}
.variateur .option__legende .variateur__valeur {
font-family: var(--serif);
font-size: 17px;
font-style: italic;
font-variant-numeric: lining-nums tabular-nums;
letter-spacing: 0.01em;
text-transform: none;
}
.option__aide,
.option__detail,
.format__cote {
display: none;
}
@media (max-width: 960px) {
.galerie {
row-gap: 12px;
}
.galerie__miniatures {
order: 3;
gap: 5px;
}
.galerie__miniatures button {
flex: 1 1 0;
min-width: 30px;
max-width: 64px;
aspect-ratio: 4 / 5;
}
.galerie > .variateur--sous-photo {
order: 1;
display: grid;
grid-template-columns: minmax(0, 1fr) 52px;
align-items: center;
column-gap: 14px;
margin: -4px 0 0;
}
.variateur--sous-photo .option__legende {
display: contents;
}
.variateur--sous-photo .option__legende span:first-child {
display: none;
}
.variateur--sous-photo .option__legende .variateur__valeur {
grid-area: 1 / 2;
text-align: right;
white-space: nowrap;
}
.variateur--sous-photo .variateur__ligne {
grid-area: 1 / 1;
gap: 14px;
}
.variateur--sous-photo .variateur__note {
grid-column: 1 / -1;
margin-top: 2px;
}
.variateur--sous-photo .variateur__curseur,
.variateur--sous-photo .variateur__curseur::-webkit-slider-runnable-track {
height: 38px;
}
.variateur--sous-photo .variateur__curseur::-moz-range-track {
height: 38px;
}
.variateur--sous-photo .variateur__curseur::-webkit-slider-thumb {
width: 18px;
height: 18px;
margin-top: 10px;
}
.variateur--sous-photo .variateur__curseur::-moz-range-thumb {
width: 18px;
height: 18px;
}
.galerie > .fiche__titre {
order: 2;
margin-top: -2px;
}
.galerie > .nuancier {
order: 4;
margin-top: 12px;
border-top: 1px solid var(--trait);
}
.nuancier .option {
margin: 0;
padding: 0 0 20px;
border-bottom: 1px solid var(--trait);
}
.nuancier .option legend {
margin-bottom: 14px;
padding: 17px 0 0;
font-size: 14.5px;
letter-spacing: 0;
text-transform: none;
color: var(--encre);
}
.nuancier .option legend span:last-child {
font-size: 14.5px;
letter-spacing: 0;
text-align: right;
}
.nuancier .option__detail:not(:empty) {
display: block;
margin: 12px 0 0;
font-size: 13.5px;
line-height: 1.5;
color: var(--gris);
}
.nuancier .format__detail {
display: none;
}
.nuancier .formats--quatre,
.nuancier .formats--cadres {
grid-template-columns: repeat(4, minmax(0, 96px));
gap: 12px;
}
.nuancier .formats .format--piece,
.nuancier .formats--cadres .format--cadre,
.nuancier .formats input:checked + .format--piece,
.nuancier .formats--cadres input:checked + .format--cadre {
gap: 0;
padding: 0;
border: 0;
background: none;
}
.nuancier .format--piece .format__teinte {
width: 100%;
height: auto;
aspect-ratio: 1;
margin: 0;
border-radius: 0;
box-shadow: none;
}
.nuancier .formats--cadres .format__apercu {
margin: 0;
border-radius: 0;
}
.nuancier .format--piece small,
.nuancier .format--piece strong,
.nuancier .formats--cadres .format--cadre strong {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
}
.nuancier .formats input:checked + .format--piece .format__teinte,
.nuancier .formats--cadres input:checked + .format--cadre .format__apercu {
outline: 1px solid var(--encre);
outline-offset: 3px;
}
.nuancier .formats input:focus-visible + .format--piece,
.nuancier .formats--cadres input:focus-visible + .format--cadre {
outline: 0;
}
.nuancier .formats input:focus-visible + .format--piece .format__teinte,
.nuancier .formats--cadres input:focus-visible + .format--cadre .format__apercu {
outline: 2px solid var(--encre);
outline-offset: 3px;
}
.nuancier .formats--deux:not(.formats--cadres) {
gap: 8px;
}
.nuancier .formats--deux:not(.formats--cadres) .format {
flex-direction: row;
flex-wrap: wrap;
place-content: center;
align-items: baseline;
gap: 2px 8px;
min-height: 50px;
padding: 13px 8px;
}
.nuancier .formats--deux .format strong {
font-family: var(--sans);
font-size: 15px;
line-height: 1.3;
text-align: center;
}
.nuancier .formats--deux .format small {
font-size: 13px;
}
.nuancier .format__cote {
display: inline;
}
.nuancier .formats--deux .format__carre {
display: none;
}
.galerie > .ouverture,
.galerie > .fiche__achat,
.galerie > .fiche__expedition {
order: 5;
}
.galerie > .ouverture {
margin-top: 16px;
padding-top: 0;
border-top: 0;
}
.galerie > .fiche__achat {
margin: 10px 0 0;
}
}
@media (max-width: 560px) {
.galerie__scene {
height: clamp(125vw, 150vw, calc(100vh - 180px));
height: clamp(125vw, 150vw, calc(100svh - 180px));
margin-inline: calc(-1 * var(--marge));
aspect-ratio: auto;
border-radius: 0;
}
.galerie__scene.montre-cotes {
background: linear-gradient(#f0ece4 50%, #e9e2d7 50%);
}
.galerie__scene img[data-vue='dimensions'],
.galerie__scene.montre-cotes img:not([data-vue]) {
object-fit: contain;
}
.galerie__scene > .galerie__cotes {
inset: 50% 0 auto;
aspect-ratio: 4 / 5;
translate: 0 -50%;
}
.galerie__scene > .galerie__choix-cadres {
inset: 0 auto 0 50%;
aspect-ratio: 4 / 5;
translate: -50% 0;
}
.galerie__miniatures {
gap: 8px;
margin-inline: calc(-1 * var(--marge));
padding-inline: var(--marge);
scroll-padding-inline: var(--marge);
scrollbar-width: none;
}
.galerie__miniatures::-webkit-scrollbar {
display: none;
}
.galerie__miniatures button {
flex: 0 0 76px;
max-width: none;
}
}
.menu-mobile__langues {
display: flex;
margin: auto 0 0;
padding-top: 28px;
font-size: 13px;
letter-spacing: 0.2em;
}
.menu-mobile__langues a {
padding: 12px 22px 12px 0;
}
.menu-mobile__langues a[aria-current] {
text-decoration: underline;
text-underline-offset: 5px;
}
.avis-traduction {
margin: 14px 0 0;
font-size: 13px;
color: var(--gris);
font-style: italic;
}
.hero__pause {
position: absolute;
right: var(--marge);
bottom: 18px;
z-index: 3;
display: grid;
place-items: center;
width: 34px;
height: 34px;
padding: 0;
border: 1px solid rgba(238, 237, 233, 0.45);
border-radius: 50%;
background: rgba(12, 10, 9, 0.18);
-webkit-backdrop-filter: blur(4px);
backdrop-filter: blur(4px);
color: var(--ivoire);
cursor: pointer;
transition: border-color 0.3s var(--lent), background 0.3s var(--lent);
}
.hero__pause:hover,
.hero__pause:focus-visible {
border-color: var(--ivoire);
background: rgba(12, 10, 9, 0.32);
}
.hero__pause:focus-visible {
outline: 1px solid var(--ivoire);
outline-offset: 3px;
}
.hero__pause span {
width: 8px;
height: 10px;
border-left: 2px solid currentColor;
border-right: 2px solid currentColor;
}
.hero__pause[aria-pressed='true'] span {
width: 0;
height: 0;
margin-left: 3px;
border-left: 9px solid currentColor;
border-right: 0;
border-top: 6px solid transparent;
border-bottom: 6px solid transparent;
}
.hero__media.est-en-pause .hero__diapo.est-active img,
.hero__media.est-en-pause .hero__diapo.est-active .hero__cible {
animation-play-state: paused;
}
h1,
h2,
h3,
h4 {
font-family: var(--sans);
font-weight: 400;
line-height: 1.06;
letter-spacing: 0.03em;
text-transform: uppercase;
overflow-wrap: break-word;
text-wrap: balance;
}
p,
li,
dd,
blockquote,
figcaption {
text-wrap: pretty;
}
a[href^="mailto:"] {
white-space: nowrap;
}
@media (max-width: 760px) {
:lang(de) :is(h1, h2, h3, h4) {
-webkit-hyphens: auto;
hyphens: auto;
hyphenate-limit-chars: 12 5 5;
text-wrap: wrap;
}
}
.titre-xxl {
font-size: clamp(30px, 4.2vw, 62px);
line-height: 1.02;
letter-spacing: 0.015em;
}
.titre-xl {
font-size: clamp(25px, 3.4vw, 50px);
}
.titre-l {
font-size: clamp(23px, 2.5vw, 36px);
}
.titre-m {
font-size: clamp(17px, 1.6vw, 22px);
letter-spacing: 0.08em;
}
.titre-s {
font-size: 15px;
letter-spacing: 0.12em;
}
h1 em,
h2 em,
h3 em {
font-family: var(--serif);
font-size: 1.14em;
font-weight: 400;
letter-spacing: 0;
text-transform: none;
color: var(--gris);
}
.section--nuit h1 em,
.section--nuit h2 em,
.hero h1 em {
color: rgba(238, 237, 233, 0.76);
}
.texte-l {
font-family: var(--sans);
font-weight: 400;
line-height: 1.5;
}
.chiffre,
.chiffres strong,
.compteur-panier,
.piece .prix-apartir,
.fiche__prix strong,
.format strong,
.ligne-panier__prix,
.totaux .total,
.zones td:first-child,
.sequence figcaption {
font-family: var(--sans);
font-weight: 400;
letter-spacing: 0.02em;
}
.barre-mobile__nom {
font-family: var(--sans);
letter-spacing: 0.08em;
text-transform: uppercase;
}
.faq .accordeon summary {
font-family: var(--sans);
font-weight: 400;
}
.entete-section {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 400px);
align-items: end;
column-gap: clamp(32px, 6vw, 96px);
max-width: none;
margin: 0 0 clamp(40px, 5vw, 72px);
text-align: left;
}
.entete-section > * {
grid-column: 1;
}
.entete-section > p {
grid-column: 2;
grid-row: 1 / span 2;
align-self: end;
margin: 0;
}
@media (max-width: 860px) {
.entete-section {
grid-template-columns: 1fr;
}
.entete-section > p {
grid-column: 1;
grid-row: auto;
margin-top: 18px;
}
}
.surtitre {
margin-bottom: 18px;
letter-spacing: 0.22em;
}
.bouton {
min-height: 50px;
padding: 0 30px;
font-size: 11.5px;
letter-spacing: 0.18em;
}
.hero {
align-items: flex-end;
}
.hero__contenu {
padding-bottom: clamp(56px, 10vh, 112px);
padding-bottom: calc(clamp(56px, 10vh, 112px) + 100lvh - 100svh);
}
.hero h1 {
max-width: 15em;
font-size: clamp(30px, 3.7vw, 54px);
}
.hero .surtitre {
color: var(--ivoire);
}
.hero .surtitre,
.hero__texte p {
text-shadow: 0 1px 2px rgba(12, 10, 9, 0.5), 0 0 14px rgba(12, 10, 9, 0.5);
}
.hero h1 .surtitre {
display: block;
line-height: 1.4;
}
.hero__texte {
max-width: 640px;
}
.hero::after {
background:
linear-gradient(180deg, rgba(12, 10, 9, 0.38) 0%, rgba(12, 10, 9, 0) 22%),
linear-gradient(0deg, rgba(12, 10, 9, 0.72) 0%, rgba(12, 10, 9, 0.36) 38%, rgba(12, 10, 9, 0) 64%),
linear-gradient(90deg, rgba(12, 10, 9, 0.5) 0%, rgba(12, 10, 9, 0.3) 28%, rgba(12, 10, 9, 0) 52%);
}
.pastille--dispo {
display: none;
}
.carte-piece__infos {
padding-top: 16px;
}
.carte-piece__infos :is(h2, h3) {
font-size: 13px;
letter-spacing: 0.18em;
}
.carte-piece__infos :is(h2, h3) small {
margin-bottom: 4px;
font-family: var(--serif);
font-size: 17px;
font-style: italic;
letter-spacing: 0;
text-transform: none;
}
.carte-piece__infos p {
font-size: 12px;
letter-spacing: 0.04em;
}
.duo__nom {
font-size: clamp(13px, 1.1vw, 15px);
letter-spacing: 0.18em;
}
.duo .piece__numero {
font-size: 17px;
}
@media (max-width: 760px) {
.duo .piece__numero {
min-height: 2.6em;
overflow: visible;
font-size: 15px;
line-height: 1.3;
white-space: normal;
text-overflow: clip;
}
}
.attente.attente--seule {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
align-items: end;
column-gap: clamp(32px, 6vw, 96px);
max-width: none;
margin: 0;
padding-top: clamp(56px, 6vw, 88px);
border-top: 1px solid var(--trait-clair);
text-align: left;
}
.attente--seule > h3,
.attente--seule > p {
grid-column: 1;
}
.attente--seule > h3 {
margin-bottom: 14px;
}
.attente--seule > p {
margin-bottom: 0;
}
.attente--seule > div {
grid-column: 2;
grid-row: 1 / span 2;
}
@media (max-width: 860px) {
.attente.attente--seule {
grid-template-columns: 1fr;
}
.attente--seule > div {
grid-column: 1;
grid-row: auto;
margin-top: 28px;
}
}
.hero__reperes {
position: absolute;
left: 50%;
bottom: 13px;
bottom: calc(13px + 100lvh - 100svh);
z-index: 3;
display: flex;
gap: 6px;
transform: translateX(-50%);
}
.hero__repere {
position: relative;
width: 44px;
height: 44px;
padding: 0;
cursor: pointer;
}
.hero__repere::before,
.hero__repere::after {
content: '';
position: absolute;
left: 0;
right: 0;
top: 50%;
height: 2px;
margin-top: -1px;
background: rgba(238, 237, 233, 0.32);
}
.hero__repere::after {
background: var(--ivoire);
transform: scaleX(0);
transform-origin: left;
}
.hero__repere.est-vu::after {
transform: scaleX(1);
}
.hero__repere.est-courant::after {
animation: repere var(--duree-bandeau) linear both;
}
.hero__media.est-en-pause ~ .hero__reperes .hero__repere.est-courant::after {
animation-play-state: paused;
}
@keyframes repere {
from {
transform: scaleX(0);
}
to {
transform: scaleX(1);
}
}
.hero__reperes ~ .hero__defiler,
.hero:has(.hero__reperes) .hero__defiler {
display: none;
}
@media (max-width: 560px) {
.hero__repere {
width: 28px;
}
}
.duo.duo--trois {
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 0 6px;
max-width: none;
}
.duo.duo--trois.duo--deux {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0 clamp(14px, 3vw, 48px);
max-width: 1080px;
}
.duo__tete {
display: none;
}
@media (min-width: 761px) {
.duo.duo--trois.duo--deux {
grid-template-columns: repeat(12, minmax(0, 1fr));
gap: 0 clamp(14px, 3.4vw, 48px);
max-width: var(--largeur);
}
.duo--deux .duo__piece--grande {
grid-column: 1 / 8;
grid-row: 1 / 3;
}
.duo--deux .duo__tete {
display: block;
grid-column: 8 / 13;
grid-row: 1;
padding-top: clamp(8px, 2vw, 40px);
}
.duo__tete h2 {
margin-bottom: 26px;
}
.duo--deux .duo__piece--petite {
grid-column: 8 / 13;
grid-row: 2;
align-self: end;
}
.duo--miroir .duo__piece--grande {
grid-column: 6 / 13;
}
.duo--miroir .duo__tete,
.duo--miroir .duo__piece--petite {
grid-column: 1 / 6;
}
}
.section--lin + .section.parfums-accueil {
padding-top: 0;
}
.section--lin:has(+ .parfums-accueil),
.section.parfums-accueil {
padding-bottom: clamp(72px, 7vw, 120px);
}
.duo--trois .duo__piece > :not(.duo__media) {
padding-right: 16px;
}
.js .duo--trois .duo__piece.apparait {
opacity: 0;
transform: none;
transition: opacity 0.5s var(--lent);
transition-delay: calc(var(--rang-carte, 0) * 0.1s);
}
.js .duo--trois .duo__piece.apparait.est-vu {
opacity: 1;
}
.duo--trois .duo__piece[data-delai='1'] {
--rang-carte: 1;
}
.duo--trois .duo__piece[data-delai='2'] {
--rang-carte: 2;
}
.duo--trois .duo__piece[data-delai='3'] {
--rang-carte: 3;
}
.duo__media {
position: relative;
}
.duo__media .duo__eteinte {
position: absolute;
inset: 0;
opacity: 1;
}
.duo__piece.sans-allumage .duo__eteinte {
opacity: 0;
}
.duo__piece.sans-allumage .duo__allumee,
html:not(.js) .duo__allumee {
filter: var(--filtre-allume, none);
}
html:not(.js) .duo__media .duo__eteinte {
opacity: 0;
}
.duo__media img {
transition: scale 1.2s var(--lent);
}
.duo--trois .duo__piece {
--teinte: 255, 170, 80;
--hx: 50%;
--hy: 38%;
}
.duo--trois .duo__piece[href^='lampadaire-solstice'] {
--teinte: 255, 190, 115;
--hx: 33%;
--hy: 29%;
}
.duo--trois .duo__piece[href^='lampe-horizon'] {
--teinte: 255, 192, 118;
--hx: 46%;
--hy: 48%;
}
.duo__media::after {
content: '';
position: absolute;
inset: 0;
background:
radial-gradient(ellipse 40% 30% at var(--hx) var(--hy), rgba(var(--teinte-l, var(--teinte)), 0.42), rgba(var(--teinte-l, var(--teinte)), 0.14) 55%, rgba(var(--teinte-l, var(--teinte)), 0) 100%);
mix-blend-mode: screen;
opacity: calc(var(--l, 0) * 0.5);
pointer-events: none;
}
.duo__piece .duo__nom,
.duo__piece .duo__prix {
transition: color 0.4s var(--lent);
}
@media (hover: hover) {
.duo__piece:hover .duo__media img {
scale: 1.03;
}
}
@media (prefers-reduced-motion: reduce) {
.js .duo--trois .duo__piece.apparait {
opacity: 1;
transition: none;
}
}
@media (max-width: 760px) {
.duo.duo--trois {
grid-template-columns: none;
grid-auto-flow: column;
grid-auto-columns: 78%;
margin: 0;
padding: 0 var(--marge) 6px;
overflow-x: auto;
scroll-snap-type: x mandatory;
scroll-padding: 0 var(--marge);
scrollbar-width: none;
}
.duo.duo--trois::-webkit-scrollbar {
display: none;
}
.duo--trois .duo__piece {
scroll-snap-align: start;
}
}
.comparateur.comparateur--portrait {
aspect-ratio: 934 / 1167;
max-width: 640px;
margin: 0 auto;
}
.comparateur--portrait img {
object-position: 50% 50%;
}
.section--geste {
padding: clamp(84px, 10.5vw, 156px) 0;
}
@media (min-width: 861px) {
.geste .comparateur.comparateur--portrait {
width: min(540px, calc((100svh - var(--entete) - 56px) * 934 / 1167), 48vw);
max-width: none;
margin: 0;
}
}
.hero__cible {
mix-blend-mode: screen;
}
.tableau-cible:not(.tableau-cible--lampe) {
--teinte: 255, 158, 64;
}
.tableau-cible[href*='n02-crepuscule'] {
--teinte: 255, 150, 120;
}
.tableau-cible[href*='n03-heure-doree'] {
--teinte: 255, 186, 72;
}
.tableau-cible[href*='n04-zenith'] {
--teinte: 255, 232, 190;
}
.tableau-cible:not(.tableau-cible--lampe)::after {
content: '';
position: absolute;
inset: -110% -130% -150%;
z-index: -1;
background:
radial-gradient(ellipse 34% 32% at 50% 40%, rgba(var(--teinte-l, var(--teinte)), 0.42), rgba(var(--teinte-l, var(--teinte)), 0.16) 55%, rgba(var(--teinte-l, var(--teinte)), 0) 100%),
radial-gradient(ellipse 60% 22% at 50% 82%, rgba(var(--teinte-l, var(--teinte)), 0.16), rgba(var(--teinte-l, var(--teinte)), 0) 100%);
opacity: var(--l, 0);
pointer-events: none;
}
.page-entete--guide {
padding: clamp(56px, 6vw, 96px) 0 0;
}
.page-entete--guide h1,
.tailles__entete h2,
.accrochage-conseil h2 {
margin: 0;
padding-left: 0.34em;
font-size: clamp(20px, 1.7vw, 28px);
line-height: 1.3;
letter-spacing: 0.34em;
text-align: center;
}
.page-entete--guide h1 em,
.tailles__entete h2 em {
display: block;
margin-top: 18px;
padding-right: 0.34em;
font-size: clamp(20px, 1.6vw, 25px);
letter-spacing: 0.01em;
}
.tailles__entete h2 br {
display: none;
}
.tailles__entete h2,
.accrochage-conseil h2 {
font-size: clamp(17px, 1.35vw, 22px);
}
.tailles__entete h2 em {
margin-top: 14px;
font-size: clamp(19px, 1.45vw, 23px);
}
.tailles__entete {
text-align: center;
}
.section.tailles {
padding: clamp(64px, 7vw, 112px) 0 clamp(80px, 8vw, 128px);
}
.tailles__mur {
display: grid;
grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
gap: clamp(40px, 6vw, 112px);
align-items: center;
max-width: 1180px;
margin: clamp(40px, 4.5vw, 68px) auto 0;
}
.tailles__photo {
position: relative;
aspect-ratio: 1 / 1;
overflow: hidden;
background: var(--pierre);
}
.tailles__photo img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: 50% 42%;
transition: opacity 0.7s var(--lent);
}
.tailles__photo img.est-cache {
opacity: 0;
}
.tailles__choix {
display: flex;
gap: clamp(28px, 3vw, 44px);
margin: 0 0 clamp(26px, 3vw, 40px);
border-bottom: 1px solid var(--trait);
}
.tailles__choix button {
position: relative;
padding: 0 0 16px;
border: 0;
background: none;
font-family: var(--serif);
font-size: clamp(26px, 2.4vw, 36px);
font-variant-numeric: lining-nums;
letter-spacing: 0.04em;
color: var(--gris);
opacity: 0.6;
cursor: pointer;
transition: opacity 0.3s;
}
.tailles__choix button:hover {
opacity: 0.85;
}
.tailles__choix button:focus-visible {
outline: 1px solid var(--encre);
outline-offset: 6px;
}
.tailles__choix button[aria-pressed='true'] {
color: var(--encre);
opacity: 1;
}
.tailles__choix button[aria-pressed='true']::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
height: 1px;
background: var(--encre);
}
.js .tailles__detail:not(.est-actif) {
display: none;
}
.tailles__detail + .tailles__detail {
margin-top: 28px;
}
.js .tailles__detail + .tailles__detail {
margin-top: 0;
}
.tailles__detail p {
margin: 0;
font-size: 15px;
line-height: 1.7;
color: var(--gris);
}
.tailles__detail .tailles__spec {
margin-top: 14px;
font-size: 10.5px;
letter-spacing: 0.22em;
text-transform: uppercase;
}
.tailles__detail .tailles__prix {
margin-top: 22px;
font-family: var(--serif);
font-size: 22px;
font-variant-numeric: lining-nums;
color: var(--encre);
}
.tailles__detail .lien-trait {
margin-top: 22px;
}
.tailles__identique {
margin: clamp(34px, 4vw, 52px) 0 0;
font-size: 13px;
line-height: 1.7;
color: var(--gris);
}
.reperes {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
max-width: 1180px;
margin: clamp(64px, 7vw, 104px) auto 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--trait);
}
.reperes li {
padding: 28px clamp(20px, 2.6vw, 40px) 0 0;
}
.reperes li + li {
padding-left: clamp(20px, 2.6vw, 40px);
border-left: 1px solid var(--trait);
}
.reperes__mesure {
display: block;
font-family: var(--serif);
font-size: clamp(26px, 2.2vw, 32px);
font-variant-numeric: lining-nums;
letter-spacing: 0.02em;
color: var(--encre);
}
.reperes p {
max-width: 34ch;
margin: 10px 0 0;
font-size: 14px;
line-height: 1.7;
color: var(--gris);
}
.section.accrochage {
padding: clamp(80px, 8vw, 136px) 0;
}
.accrochage__planche {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: clamp(56px, 5.4vw, 88px) clamp(20px, 2.2vw, 36px);
max-width: 1180px;
margin: clamp(40px, 4.5vw, 68px) auto 0;
}
.attache {
display: flex;
flex-direction: column;
min-width: 0;
}
.attache--principale {
display: grid;
grid-column: 1 / -1;
grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
gap: clamp(32px, 4.4vw, 72px);
align-items: end;
}
.attache__photo {
position: relative;
aspect-ratio: 4 / 5;
overflow: hidden;
background: var(--pierre);
}
.attache--principale .attache__photo {
aspect-ratio: 16 / 10;
}
.attache__photo img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
}
.attache--principale .attache__photo img {
object-position: 50% 49%;
}
.attache--principale .attache__texte {
padding: 0 0 6px;
}
.attache__texte {
padding-top: 20px;
}
.attache h3 {
font-family: var(--serif);
font-size: clamp(22px, 1.8vw, 26px);
line-height: 1.2;
letter-spacing: 0.02em;
text-transform: none;
}
.attache--principale h3 {
font-size: clamp(28px, 2.5vw, 36px);
}
.attache__texte p {
max-width: 46ch;
margin: 12px 0 0;
font-size: 14px;
line-height: 1.7;
color: var(--gris);
}
.attache__texte .attache__trace {
margin-top: 4px;
font-family: var(--serif);
font-size: 18px;
font-style: italic;
line-height: 1.4;
color: var(--gris);
}
.attache--principale .attache__texte p {
font-size: 15px;
}
.accrochage__notes {
max-width: 680px;
margin: clamp(56px, 6vw, 88px) auto 0;
padding-top: clamp(28px, 3vw, 40px);
border-top: 1px solid var(--trait);
}
.accrochage__notes p {
margin: 0;
font-size: 13px;
line-height: 1.7;
text-align: center;
color: var(--gris);
}
.section.accrochage-conseil {
padding: clamp(72px, 7vw, 112px) 0;
}
.accrochage-conseil__interieur {
max-width: 640px;
text-align: center;
}
.accrochage-conseil p {
margin: 22px auto 0;
font-size: 15px;
line-height: 1.7;
color: var(--gris);
}
.accrochage-conseil__liens {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 20px 36px;
margin-top: 34px;
}
.section.guide-accueil {
padding: clamp(64px, 6vw, 96px) 0 clamp(48px, 4.4vw, 64px);
}
.guide-accueil + .journal-accueil {
padding-top: clamp(56px, 5vw, 72px);
}
.section.journal-accueil {
padding-bottom: clamp(56px, 5vw, 80px);
}
.journal-accueil + .section--engagements {
padding-top: 0;
}
.section--lin + .section.guide-accueil {
padding-top: 0;
}
@media (min-width: 861px) {
.journal-accueil .entete-section > p {
justify-self: end;
}
}
.guide-accueil__titre {
margin: 0;
padding-left: 0.34em;
font-size: clamp(18px, 1.5vw, 24px);
line-height: 1.3;
letter-spacing: 0.34em;
text-align: center;
}
.guide-accueil__titre em {
display: block;
margin-top: 14px;
padding-right: 0.34em;
font-size: clamp(21px, 1.5vw, 25px);
letter-spacing: 0.01em;
}
.guide-accueil__titre br {
display: none;
}
.guide-accueil__tailles {
display: grid;
grid-template-columns: repeat(2, minmax(0, 360px));
justify-content: center;
column-gap: clamp(12px, 4vw, 72px);
margin: clamp(28px, 3vw, 48px) 0 clamp(28px, 2.6vw, 40px);
}
.guide-accueil__taille {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
color: var(--encre);
}
@supports (grid-template-rows: subgrid) {
.guide-accueil__taille {
display: grid;
grid-row: span 4;
grid-template-rows: subgrid;
justify-items: center;
align-content: start;
}
}
.guide-accueil__photo {
display: block;
width: 100%;
aspect-ratio: 4 / 5;
overflow: hidden;
background: var(--pierre);
}
.guide-accueil__photo img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.2s var(--lent);
}
.guide-accueil__taille:hover .guide-accueil__photo img {
transform: scale(1.025);
}
.guide-accueil__taille:focus-visible,
.guide-accueil__pied a:focus-visible {
outline: 1px solid var(--encre);
outline-offset: 4px;
}
.guide-accueil__mesure {
margin-top: 20px;
padding-left: 0.24em;
font-size: 14px;
letter-spacing: 0.24em;
text-transform: uppercase;
}
.guide-accueil__usage {
margin-top: 8px;
font-family: var(--serif);
font-size: 17px;
font-style: italic;
color: var(--gris);
}
.guide-accueil__prix {
margin-top: 4px;
font-size: 14px;
letter-spacing: 0.04em;
}
.guide-accueil__pied {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: baseline;
gap: 10px 28px;
margin: 0;
}
.guide-accueil__pied span {
font-family: var(--serif);
font-size: 19px;
font-style: italic;
color: var(--gris);
}
@media (max-width: 760px) {
.guide-accueil__titre {
padding-left: 0.28em;
font-size: 17px;
letter-spacing: 0.28em;
}
.guide-accueil__mesure {
margin-top: 14px;
padding-left: 0.16em;
font-size: 12px;
letter-spacing: 0.16em;
}
.guide-accueil__usage {
font-size: 15px;
line-height: 1.3;
}
.guide-accueil__prix {
font-size: 13px;
}
}
@media (prefers-reduced-motion: reduce) {
.guide-accueil__photo img {
transition: none;
}
}
@media (prefers-reduced-motion: reduce) {
.tailles__photo img {
transition: none;
}
}
@media (max-width: 1000px) {
.accrochage__planche {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.attache--principale {
grid-template-columns: minmax(0, 1fr);
gap: 0;
}
.attache--principale .attache__texte {
padding-top: 20px;
}
}
@media (max-width: 860px) {
.tailles__mur {
grid-template-columns: minmax(0, 1fr);
gap: 32px;
}
.reperes {
grid-template-columns: minmax(0, 1fr);
}
.reperes li,
.reperes li + li {
padding: 22px 0;
border-left: 0;
}
.reperes li + li {
border-top: 1px solid var(--trait);
}
}
@media (max-width: 600px) {
.page-entete--guide h1,
.tailles__entete h2,
.accrochage-conseil h2 {
letter-spacing: 0.26em;
padding-left: 0.26em;
}
.page-entete--guide h1 em,
.tailles__entete h2 em {
padding-right: 0.26em;
}
.tailles__choix {
justify-content: space-between;
gap: 16px;
}
.tailles__choix button {
font-size: 26px;
letter-spacing: 0.02em;
}
.accrochage__planche {
grid-template-columns: minmax(0, 1fr);
gap: 28px;
}
.attache--principale .attache__photo {
aspect-ratio: 4 / 3;
}
.attache:not(.attache--principale) {
display: grid;
grid-template-columns: minmax(0, 38%) minmax(0, 1fr);
gap: 18px;
align-items: start;
padding-top: 28px;
border-top: 1px solid var(--trait);
}
.attache:not(.attache--principale) .attache__texte {
padding-top: 0;
}
.attache:not(.attache--principale) .attache__texte p {
margin-top: 8px;
font-size: 13.5px;
line-height: 1.6;
}
.attache:not(.attache--principale) .attache__texte .attache__trace {
margin-top: 2px;
font-size: 17px;
}
}
.js #collection-accueil .carte-piece.apparait {
opacity: 0;
transform: none;
transition: opacity 1.8s var(--lent);
transition-delay: calc(var(--rang-carte, 0) * 0.3s);
}
.js #collection-accueil .carte-piece.apparait.est-vu {
opacity: 1;
}
#collection-accueil .carte-piece[data-delai='1'] {
--rang-carte: 1;
}
#collection-accueil .carte-piece[data-delai='2'] {
--rang-carte: 2;
}
#collection-accueil .carte-piece__media img {
object-position: 50% 32%;
}
#collection-accueil .carte-piece:hover .carte-piece__media img {
transform: none;
}
#collection-accueil .carte-piece__eteinte {
position: absolute;
inset: 0;
z-index: 0;
}
#collection-accueil .carte-piece__allumee {
position: relative;
z-index: 1;
opacity: 0;
}
#collection-accueil .carte-piece.sans-allumage .carte-piece__allumee {
opacity: 1;
}
#collection-accueil .carte-piece.sans-allumage .carte-piece__media,
.duo__piece.sans-allumage .duo__media {
--l: 1;
}
#collection-accueil .carte-piece__media {
--hx: 50%;
--hy: 33.5%;
}
#collection-accueil .carte-piece {
--teinte: 255, 158, 64;
}
#collection-accueil .carte-piece[href*='n02-crepuscule'] {
--teinte: 255, 150, 120;
}
#collection-accueil .carte-piece[href*='n03-heure-doree'] {
--teinte: 255, 186, 72;
}
#collection-accueil .carte-piece[href*='n04-zenith'] {
--teinte: 255, 232, 190;
}
#collection-accueil .carte-piece__media::after {
content: none;
}
@media (prefers-reduced-motion: reduce) {
.js #collection-accueil .carte-piece.apparait {
opacity: 1;
transition: none;
}
}
.galerie__scene {
--hx: 50%;
--hy: 33%;
}
.hero__cible--noms {
mix-blend-mode: normal;
}
.hero__etiquette {
position: absolute;
pointer-events: none;
}
.hero__etiquette,
.tableau-cible--lampe {
--legende-voile: 0 0 4px rgba(12, 10, 9, 0.3);
}
.hero__nom {
--d: clamp(28px, 3.2vw, 44px);
--amorce: clamp(36px, 4.5vw, 64px);
--rayon: 1.8px;
position: absolute;
width: max-content;
padding: 0 0 11px var(--amorce);
font-size: 12px;
font-weight: 500;
line-height: 1;
letter-spacing: 0.34em;
text-align: left;
text-transform: uppercase;
white-space: nowrap;
color: #fff;
text-shadow: 0 0 10px rgba(12, 10, 9, 0.4), 0 1px 2px rgba(12, 10, 9, 0.3);
pointer-events: none;
}
.hero__nom > span {
display: block;
opacity: 0;
transform: translateX(-4px);
transition: opacity 0.7s var(--lent), transform 0.7s var(--lent);
}
.hero__nom::before,
.hero__nom::after {
content: '';
position: absolute;
height: 1px;
background: #fff;
box-shadow: var(--legende-voile);
transition: transform 0.7s var(--lent);
}
.hero__nom::before {
left: 0;
right: 0;
bottom: 0;
transform: scaleX(0);
transform-origin: 0 50%;
}
.hero__nom::after {
left: calc(var(--rayon) - var(--d));
bottom: calc(var(--rayon) - var(--d));
width: calc((var(--d) - var(--rayon)) * 1.4142);
transform-origin: 0 50%;
transform: rotate(-45deg) scaleX(0);
}
.hero__etiquette::before,
.tableau-cible--lampe::after {
content: '';
position: absolute;
width: 5px;
height: 5px;
border: 1px solid #fff;
border-radius: 50%;
box-shadow: var(--legende-voile);
opacity: 0;
transform: scale(0.4);
transition: opacity 0.6s var(--lent), transform 0.6s var(--lent);
pointer-events: none;
}
.hero__etiquette {
--d: clamp(28px, 3.2vw, 44px);
--ecart: 9.5px;
}
.hero__etiquette::before {
left: calc(100% + var(--ecart) - 2.5px);
bottom: calc(64% + 0.5px - 2.5px);
}
.hero__etiquette .hero__nom {
left: calc(100% + var(--ecart) + var(--d));
bottom: calc(64% + var(--d));
}
.tableau-cible--lampe,
.tableau-cible--lampe .hero__nom {
--d: clamp(40px, 4.6vw, 64px);
--amorce: clamp(24px, 2.5vw, 36px);
--ecart: 9px;
}
.tableau-cible--lampe::after {
left: calc(50% - 2.5px);
top: calc(-1 * var(--ecart) - 0.5px - 2.5px);
}
.tableau-cible--lampe .hero__nom {
left: calc(50% + var(--d));
bottom: calc(100% + var(--ecart) + var(--d));
}
.hero__etiquette.est-a-gauche .hero__nom,
.tableau-cible--lampe.est-vers-gauche .hero__nom {
left: auto;
padding-left: 0;
padding-right: var(--amorce);
text-align: right;
}
.hero__etiquette.est-a-gauche::before {
left: auto;
right: calc(100% + var(--ecart) - 2.5px);
}
.hero__etiquette.est-a-gauche .hero__nom {
right: calc(100% + var(--ecart) + var(--d));
}
.tableau-cible--lampe.est-vers-gauche .hero__nom {
right: calc(50% + var(--d));
}
.hero__etiquette.est-a-gauche .hero__nom::before,
.tableau-cible--lampe.est-vers-gauche .hero__nom::before {
transform-origin: 100% 50%;
}
.hero__etiquette.est-a-gauche .hero__nom::after,
.tableau-cible--lampe.est-vers-gauche .hero__nom::after {
left: auto;
right: calc(var(--rayon) - var(--d));
transform-origin: 100% 50%;
transform: rotate(45deg) scaleX(0);
}
.hero__etiquette.est-a-gauche .hero__nom > span,
.tableau-cible--lampe.est-vers-gauche .hero__nom > span {
transform: translateX(4px);
}
.tableau-cible--lampe.est-en-bas::after {
top: auto;
bottom: calc(-1 * var(--ecart) - 0.5px - 2.5px);
}
.tableau-cible--lampe.est-en-bas .hero__nom {
bottom: auto;
top: calc(100% + var(--ecart) + var(--d));
padding-top: 11px;
padding-bottom: 0;
}
.tableau-cible--lampe.est-en-bas .hero__nom::before {
top: 0;
bottom: auto;
}
.tableau-cible--lampe.est-en-bas .hero__nom::after {
top: calc(var(--rayon) - var(--d));
bottom: auto;
transform: rotate(45deg) scaleX(0);
}
.tableau-cible--lampe.est-en-bas.est-vers-gauche .hero__nom::after {
transform: rotate(-45deg) scaleX(0);
}
.hero__diapo.est-legendes .hero__etiquette::before,
.hero__diapo.est-legendes .tableau-cible--lampe::after {
opacity: 1;
transform: none;
transition-delay: 0.4s;
}
.hero__diapo.est-legendes .hero__nom::after {
transform: rotate(-45deg);
transition-delay: 0.7s;
}
.hero__diapo.est-legendes :is(.hero__etiquette.est-a-gauche, .tableau-cible--lampe.est-vers-gauche, .tableau-cible--lampe.est-en-bas) .hero__nom::after {
transform: rotate(45deg);
}
.hero__diapo.est-legendes .tableau-cible--lampe.est-en-bas.est-vers-gauche .hero__nom::after {
transform: rotate(-45deg);
}
.hero__diapo.est-legendes .hero__nom::before {
transform: none;
transition-delay: 1.1s;
}
.hero__diapo.est-legendes .hero__nom > span {
opacity: 1;
transform: none;
transition-delay: 1.6s;
}
.hero__diapo:not(.est-legendes) .hero__nom {
visibility: hidden;
}
.hero__diapo.sans-transition .hero__etiquette::before,
.hero__diapo.sans-transition .tableau-cible--lampe::after,
.hero__diapo.sans-transition .hero__nom::before,
.hero__diapo.sans-transition .hero__nom::after,
.hero__diapo.sans-transition .hero__nom > span {
transition: none;
}
.hero__diapo.est-active .tableau-cible--lampe .hero__nom,
.hero__diapo.est-active .hero__etiquette .hero__nom {
pointer-events: auto;
}
@media (hover: hover) and (min-width: 561px) {
.hero__etiquette,
.tableau-cible--lampe {
transition: opacity 0.5s var(--lent);
}
.hero__etiquette::before,
.tableau-cible--lampe::after {
transition-property: opacity, transform, background-color;
}
.hero__diapo:has(.hero__etiquette:hover) .tableau-cible:not(.tableau-cible--lampe)::before {
opacity: 1;
transform: none;
}
.hero__diapo.est-legendes:has(.tableau-cible:not(.tableau-cible--lampe):is(:hover, :focus-visible), .hero__etiquette:hover) .hero__etiquette::before,
.hero__diapo.est-legendes:has(.tableau-cible--lampe:is(:hover, :focus-visible)) .tableau-cible--lampe::after {
background-color: #fff;
transition-delay: 0s;
animation: legende-onde 0.9s var(--lent);
}
.hero__diapo.est-legendes:has(.tableau-cible:not(.tableau-cible--lampe):is(:hover, :focus-visible), .hero__etiquette:hover) .hero__etiquette .hero__nom::after,
.hero__diapo.est-legendes:has(.tableau-cible--lampe:is(:hover, :focus-visible)) .tableau-cible--lampe .hero__nom::after {
animation: legende-diagonale-montee 0.24s cubic-bezier(0.5, 0, 1, 1) both;
}
.hero__diapo.est-legendes:has(.tableau-cible:not(.tableau-cible--lampe):is(:hover, :focus-visible), .hero__etiquette:hover) .hero__etiquette.est-a-gauche .hero__nom::after,
.hero__diapo.est-legendes:has(.tableau-cible--lampe:is(:hover, :focus-visible)) :is(.tableau-cible--lampe.est-vers-gauche, .tableau-cible--lampe.est-en-bas) .hero__nom::after {
animation-name: legende-diagonale-descente;
}
.hero__diapo.est-legendes:has(.tableau-cible--lampe:is(:hover, :focus-visible)) .tableau-cible--lampe.est-en-bas.est-vers-gauche .hero__nom::after {
animation-name: legende-diagonale-montee;
}
.hero__diapo.est-legendes:has(.tableau-cible:not(.tableau-cible--lampe):is(:hover, :focus-visible), .hero__etiquette:hover) .hero__etiquette .hero__nom::before,
.hero__diapo.est-legendes:has(.tableau-cible--lampe:is(:hover, :focus-visible)) .tableau-cible--lampe .hero__nom::before {
animation: legende-horizontale 0.5s cubic-bezier(0, 0, 0.3, 1) 0.22s both;
}
.hero__diapo.est-legendes:has(.tableau-cible:not(.tableau-cible--lampe):is(:hover, :focus-visible), .hero__etiquette:hover) .tableau-cible--lampe,
.hero__diapo.est-legendes:has(.tableau-cible--lampe:is(:hover, :focus-visible)) .hero__etiquette {
opacity: 0.3;
}
}
@keyframes legende-onde {
from {
box-shadow: var(--legende-voile), 0 0 0 0 rgba(255, 255, 255, 0.6);
}
to {
box-shadow: var(--legende-voile), 0 0 0 11px rgba(255, 255, 255, 0);
}
}
@keyframes legende-diagonale-montee {
from {
transform: rotate(-45deg) scaleX(0);
}
to {
transform: rotate(-45deg) scaleX(1);
}
}
@keyframes legende-diagonale-descente {
from {
transform: rotate(45deg) scaleX(0);
}
to {
transform: rotate(45deg) scaleX(1);
}
}
@keyframes legende-horizontale {
from {
transform: scaleX(0);
}
to {
transform: scaleX(1);
}
}
.hero__nom.est-hors-cadre {
visibility: hidden;
}
.tableau-cible--lampe:has(.hero__nom.est-hors-cadre)::after {
display: none;
}
.hero__etiquette:has(.hero__nom.est-hors-cadre)::before {
display: none;
}
@media (max-width: 560px) {
.hero__etiquette,
.tableau-cible--lampe {
--fil: 26px;
}
.hero__etiquette::before,
.tableau-cible--lampe::after {
left: calc(var(--ax, 0px) - 2.5px);
top: calc(var(--ay, 0px) - 2.5px);
right: auto;
bottom: auto;
}
.hero__cible--noms .hero__nom {
--amorce: 12px;
left: calc(var(--ax, 0px) - 0.5px);
top: calc(var(--ay, 0px) + var(--fil) - 0.5px);
right: auto;
bottom: auto;
padding: 9px 0 0 var(--amorce);
letter-spacing: 0.3em;
}
.hero__cible--noms .hero__nom::before {
top: 0;
bottom: auto;
}
.hero__cible--noms .hero__nom::after {
left: 0;
right: auto;
top: calc(3px - var(--fil));
bottom: auto;
width: 1px;
height: calc(var(--fil) - 2px);
transform-origin: 50% 0;
transform: scaleY(0);
}
.hero__diapo.est-legendes .hero__cible--noms .hero__nom::after {
transform: none;
}
.hero__cible--noms .est-fil-haut .hero__nom {
top: calc(var(--ay, 0px) - var(--fil) + 0.5px);
padding: 0 0 9px var(--amorce);
transform: translateY(-100%);
}
.hero__cible--noms .est-fil-haut .hero__nom::before {
top: auto;
bottom: 0;
}
.hero__cible--noms .est-fil-haut .hero__nom::after {
top: calc(100% - 1px);
transform-origin: 50% 100%;
}
.hero__cible--noms .est-fil-gauche .hero__nom {
left: calc(var(--ax, 0px) + 0.5px);
padding-left: 0;
padding-right: var(--amorce);
text-align: right;
transform: translateX(-100%);
}
.hero__cible--noms .est-fil-gauche.est-fil-haut .hero__nom {
transform: translate(-100%, -100%);
}
.hero__cible--noms .est-fil-gauche .hero__nom::before {
transform-origin: 100% 50%;
}
.hero__cible--noms .est-fil-gauche .hero__nom::after {
left: auto;
right: 0;
}
.hero__cible--noms .est-fil-gauche .hero__nom > span {
transform: translateX(4px);
}
.hero__diapo.est-legendes .hero__cible--noms .hero__nom > span {
transform: none;
}
}
.seuil,
.espace__entete {
--fond: var(--nuit);
--fond-rgb: 12, 10, 9;
--lin: var(--nuit-2);
--encre: #f3eee6;
--ivoire: #0c0a09;
--gris: rgba(243, 238, 230, 0.76);
--trait: rgba(243, 238, 230, 0.2);
--sable: rgba(243, 238, 230, 0.4);
background: var(--fond);
color: var(--encre);
}
.seuil .champ :is(input, select, textarea),
.espace__entete .champ :is(input, select, textarea) {
border-bottom-color: rgba(243, 238, 230, 0.45);
}
.seuil .message-formulaire--erreur {
border-color: #e39a82;
color: #e39a82;
}
.seuil input:-webkit-autofill {
-webkit-text-fill-color: #f3eee6;
-webkit-box-shadow: 0 0 0 60px #0c0a09 inset;
caret-color: #f3eee6;
}
.seuil {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
align-content: center;
min-height: calc(100vh - var(--entete));
min-height: calc(100svh - var(--entete));
}
.seuil__photo {
position: relative;
justify-self: end;
align-self: stretch;
width: min(calc(100% - var(--marge)), clamp(340px, 30vw, 580px));
min-height: 420px;
margin: clamp(56px, 7vw, 112px) 0;
overflow: hidden;
background: var(--nuit-2);
}
.seuil__photo img {
position: absolute;
inset: 0;
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: 50% 40%;
}
.seuil__panneau {
align-self: center;
padding: clamp(56px, 7vw, 112px) var(--marge) clamp(56px, 7vw, 112px) clamp(48px, 6vw, 112px);
}
.seuil__contenu {
width: 100%;
max-width: 440px;
}
.seuil .fil-ariane {
margin-bottom: clamp(36px, 4vw, 52px);
}
.titre-compte {
margin: 0 0 clamp(30px, 3vw, 40px);
font-size: clamp(20px, 1.6vw, 25px);
line-height: 1.3;
letter-spacing: 0.34em;
}
.titre-compte em {
display: block;
margin-top: 16px;
font-size: clamp(21px, 1.5vw, 24px);
line-height: 1.3;
letter-spacing: 0.01em;
}
.seuil__texte {
margin: 0 0 34px;
font-size: 15px;
line-height: 1.75;
color: var(--gris);
}
.seuil__texte strong {
font-weight: 400;
color: var(--encre);
overflow-wrap: anywhere;
}
.seuil__texte--fort {
margin-bottom: 12px;
font-family: var(--serif);
font-size: 26px;
font-style: italic;
line-height: 1.3;
color: var(--encre);
}
.seuil__formulaire {
display: grid;
gap: 30px;
}
.seuil__formulaire .bouton {
margin-top: 4px;
}
.seuil__formulaire .message-formulaire {
margin-top: 0;
}
.seuil__code {
font-family: var(--serif);
font-size: 38px !important;
letter-spacing: 0.28em;
font-variant-numeric: lining-nums tabular-nums;
}
.seuil__code::placeholder {
color: var(--gris);
}
.seuil__liens {
display: flex;
flex-wrap: wrap;
gap: 10px 30px;
margin: 26px 0 0;
font-size: 13px;
}
.seuil__liens .compte__lien {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}
.seuil__attente {
margin: 0;
font-family: var(--serif);
font-size: 24px;
font-style: italic;
color: var(--gris);
}
.seuil__pied {
margin-top: clamp(48px, 6vw, 76px);
padding-top: 22px;
border-top: 1px solid var(--trait);
font-size: 13px;
line-height: 1.6;
color: var(--gris);
}
.seuil__pied p {
margin: 0 0 8px;
}
.seuil__pied p:last-child {
margin-bottom: 0;
}
.seuil__resultat {
margin-top: clamp(44px, 5vw, 64px);
}
.seuil__note {
margin: 22px 0 0;
font-size: 13px;
line-height: 1.65;
color: var(--gris);
}
@media (max-width: 900px) {
.seuil {
--fond: #e7dfd2;
--fond-rgb: 231, 223, 210;
--lin: #dcd2c2;
--encre: #141110;
--ivoire: #f3eee6;
--gris: #3d3935;
--trait: rgba(28, 25, 23, 0.14);
--sable: #6b6258;
grid-template-columns: minmax(0, 1fr);
grid-template-rows: minmax(clamp(230px, 64vw, 380px), auto) auto auto;
align-items: start;
min-height: 0;
padding-bottom: 72px;
}
.seuil .message-formulaire--erreur {
border-color: #9b3b2a;
color: #9b3b2a;
}
.seuil input:-webkit-autofill {
-webkit-text-fill-color: #141110;
-webkit-box-shadow: 0 0 0 60px #dcd2c2 inset;
caret-color: #141110;
}
.seuil__panneau,
.seuil__contenu {
display: contents;
}
.seuil__photo {
position: relative;
grid-row: 1 / 4;
grid-column: 1;
justify-self: stretch;
align-self: stretch;
width: auto;
min-height: 0;
aspect-ratio: auto;
margin: 0;
background: var(--nuit);
}
.seuil__photo img {
position: absolute;
inset: 0;
object-position: 50% 22%;
}
.seuil__photo::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(12, 10, 9, 0.92), rgba(12, 10, 9, 0.55) 38%, rgba(12, 10, 9, 0) 62%);
}
.seuil .fil-ariane,
.seuil .titre-compte {
--encre: #f3eee6;
--gris: rgba(243, 238, 230, 0.82);
position: relative;
z-index: 1;
grid-column: 1;
margin-inline: var(--marge);
color: var(--encre);
}
.seuil .fil-ariane {
grid-row: 2;
margin-bottom: 18px;
}
.seuil .titre-compte {
grid-row: 3;
margin-bottom: 0;
padding-bottom: 26px;
}
.seuil__contenu > :not(.fil-ariane, .titre-compte) {
grid-column: 1;
max-width: 560px;
margin-inline: var(--marge);
}
.seuil__contenu > [data-etat],
.seuil__contenu > .seuil__texte {
margin-top: 30px;
}
.seuil__texte {
margin-bottom: 26px;
color: var(--encre);
}
.seuil__formulaire {
gap: 22px;
}
.seuil .champ input {
padding: 15px 16px;
background: var(--lin);
border-bottom-color: var(--encre);
}
}
.compte__lien {
padding: 0;
border: 0;
background: none;
font: inherit;
color: inherit;
cursor: pointer;
}
.compte__lien:hover {
color: var(--encre);
}
.espace__entete {
--tableau-bord: 200px;
position: relative;
isolation: isolate;
overflow: hidden;
padding: clamp(40px, 4.4vw, 68px) 0 clamp(40px, 4.4vw, 68px);
}
.espace__entete-texte {
max-width: 640px;
min-width: 0;
}
.espace__photo {
position: absolute;
inset: 0;
z-index: -1;
margin: 0;
pointer-events: none;
}
.espace__photo img {
position: absolute;
top: 0;
left: calc(50% + min(var(--largeur) / 2, 50%) - var(--marge) - var(--tableau-bord));
width: auto;
max-width: none;
height: 100%;
transform: translateX(-70.59%);
}
.espace__entete--page .titre-compte {
margin-bottom: 26px;
}
.espace__chapo {
margin: 0;
font-size: 15px;
line-height: 1.75;
color: var(--gris);
}
.espace__entete .fil-ariane {
margin-bottom: clamp(30px, 3.4vw, 48px);
}
.espace__entete .titre-compte {
margin-bottom: 14px;
}
.espace__salut {
margin: 0;
font-family: var(--serif);
font-size: clamp(22px, 1.7vw, 27px);
font-style: italic;
font-weight: 400;
line-height: 1.3;
color: var(--gris);
overflow-wrap: anywhere;
}
.espace__email {
margin: 22px 0 0;
font-size: 12.5px;
letter-spacing: 0.04em;
color: var(--gris);
overflow-wrap: anywhere;
}
.espace__email::before {
content: '';
display: block;
width: 28px;
height: 1px;
margin-bottom: 16px;
background: var(--trait);
}
.espace__email:empty {
display: none;
}
.espace__corps {
display: grid;
grid-template-columns: 220px minmax(0, 1fr);
gap: clamp(48px, 8vw, 140px);
padding-top: clamp(52px, 6vw, 92px);
padding-bottom: clamp(88px, 10vw, 150px);
}
.espace__menu {
position: sticky;
top: calc(var(--entete) + 40px);
align-self: start;
}
.espace__rubriques {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--encre);
}
.espace__rubriques li {
border-bottom: 1px solid var(--trait);
}
.espace__rubriques li:has(> [hidden]) {
display: none;
}
.espace__rubriques button {
position: relative;
display: flex;
justify-content: space-between;
align-items: baseline;
width: 100%;
min-height: 56px;
padding: 19px 0 17px;
border: 0;
background: none;
font-family: var(--sans);
font-size: 11.5px;
font-weight: 400;
letter-spacing: 0.2em;
text-align: left;
text-transform: uppercase;
color: var(--gris);
cursor: pointer;
transition: color 0.4s var(--lent), padding 0.5s var(--lent);
}
.espace__rubriques button::before {
content: '';
position: absolute;
top: 50%;
left: 0;
width: 14px;
height: 1px;
background: var(--encre);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.5s var(--lent);
}
.espace__rubriques button:hover,
.espace__rubriques button[aria-current='true'] {
color: var(--encre);
}
.espace__rubriques button[aria-current='true'] {
padding-left: 26px;
}
.espace__rubriques button[aria-current='true']::before {
transform: scaleX(1);
}
.espace__nombre {
font-family: var(--serif);
font-size: 17px;
line-height: 1;
letter-spacing: 0;
font-variant-numeric: lining-nums;
}
.espace__aide {
margin-top: 36px;
font-size: 13px;
line-height: 1.6;
color: var(--gris);
}
.espace__aide p {
margin: 0 0 14px;
}
.espace__contenu {
max-width: 820px;
min-width: 0;
}
.espace__sous-titre {
margin: 0 0 18px;
font-family: var(--sans);
font-size: 12px;
font-weight: 400;
line-height: 1.4;
letter-spacing: 0.22em;
text-transform: uppercase;
color: var(--encre);
}
.espace__intro {
max-width: 60ch;
margin: 0 0 clamp(36px, 4vw, 52px);
font-size: 14.5px;
line-height: 1.7;
color: var(--gris);
}
.espace__groupe {
min-width: 0;
margin: 0 0 clamp(44px, 5vw, 60px);
padding: 0;
border: 0;
}
.espace__groupe > legend {
float: left;
width: 100%;
margin: 0 0 30px;
padding: 0 0 14px;
border-bottom: 1px solid var(--encre);
}
.espace__groupe > legend + * {
clear: both;
}
.espace__groupe .case {
font-size: 14px;
line-height: 1.6;
}
.espace__reglages {
margin-top: clamp(64px, 7vw, 96px);
}
.espace__reglage {
padding: 30px 0 34px;
border-top: 1px solid var(--trait);
}
.espace__reglage p {
max-width: 62ch;
margin: 0 0 22px;
font-size: 14px;
line-height: 1.7;
color: var(--gris);
}
.espace__reglage .boutons {
align-items: center;
gap: 14px 30px;
}
.espace__reglage .compte__lien {
font-size: 13px;
}
.espace__confirmer {
margin-top: 24px;
padding: 24px 26px;
background: var(--lin);
}
.espace__confirmer p {
margin: 0 0 18px;
color: var(--encre);
}
.carte-commande {
container: carte-commande / inline-size;
margin: 0 0 clamp(64px, 7vw, 96px);
padding-top: 26px;
border-top: 1px solid var(--encre);
}
.carte-commande:focus {
outline: none;
}
.carte-commande:last-child {
margin-bottom: 0;
}
.carte-commande__tete {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
align-items: center;
gap: 4px 24px;
}
.carte-commande__numero {
margin: 0;
font-family: var(--sans);
font-size: 13px;
font-weight: 400;
line-height: 1.4;
letter-spacing: 0.22em;
text-transform: uppercase;
font-variant-numeric: lining-nums;
}
.carte-commande__date {
grid-column: 1;
margin: 0;
font-size: 14px;
color: var(--gris);
}
.carte-commande__statut {
grid-column: 2;
grid-row: 1 / span 2;
margin: 0;
font-family: var(--serif);
font-size: clamp(21px, 1.8vw, 25px);
font-style: italic;
line-height: 1.2;
text-align: right;
}
.carte-commande__etapes {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
margin: clamp(32px, 3.6vw, 44px) 0 clamp(34px, 3.8vw, 48px);
padding: 0;
list-style: none;
}
.carte-commande__etapes li {
position: relative;
padding: 30px 14px 0 0;
color: var(--gris);
}
.carte-commande__etapes li::before {
content: '';
position: absolute;
top: 5px;
left: 0;
right: 0;
height: 1px;
background: var(--trait);
}
.carte-commande__etapes li:last-child::before {
display: none;
}
.carte-commande__etapes li::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 11px;
height: 11px;
border: 1px solid var(--sable);
border-radius: 50%;
background: var(--fond);
}
.carte-commande__etapes li.est-faite {
color: var(--encre);
}
.carte-commande__etapes li.est-faite::before,
.carte-commande__etapes li.est-faite::after {
border-color: var(--encre);
background: var(--encre);
}
.carte-commande__etapes li.est-courante::before {
background: var(--trait);
}
.carte-commande__etapes li.est-courante::after {
border-color: #e9a25c;
background: radial-gradient(circle at 50% 50%, #fff3dc 0%, #f6c27a 45%, #d9772f 100%);
box-shadow: 0 0 10px 3px rgba(240, 160, 80, 0.55), 0 0 26px 8px rgba(240, 160, 80, 0.22);
}
.carte-commande__etapes strong {
display: block;
font-size: 11.5px;
font-weight: 400;
line-height: 1.4;
letter-spacing: 0.18em;
text-transform: uppercase;
}
.carte-commande__etapes span {
display: block;
margin-top: 6px;
font-family: var(--serif);
font-size: 17px;
font-style: italic;
line-height: 1.3;
color: var(--gris);
}
.carte-commande__note {
margin: 26px 0 30px;
font-family: var(--serif);
font-size: 20px;
font-style: italic;
color: var(--gris);
}
.carte-commande__colis {
margin: 0 0 30px;
font-size: 14px;
font-variant-numeric: lining-nums;
color: var(--gris);
}
.carte-commande__colis a {
margin-left: 14px;
color: var(--encre);
}
.carte-commande__pieces {
border-top: 1px solid var(--trait);
}
.carte-commande__pieces .ligne-panier {
grid-template-columns: clamp(96px, 10vw, 132px) minmax(0, 1fr);
gap: clamp(20px, 2.6vw, 34px);
}
.carte-commande__pieces .ligne-panier__choix {
margin-top: 14px;
}
@media (max-width: 420px) {
.carte-commande__pieces .ligne-panier {
grid-template-columns: 76px minmax(0, 1fr);
gap: 16px;
}
}
.carte-commande__pieces .ligne-panier:last-child {
border-bottom: 0;
}
.carte-commande__recap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
gap: 18px 48px;
margin: 0;
padding-top: 24px;
border-top: 1px solid var(--trait);
font-size: 14px;
line-height: 1.6;
}
.carte-commande__recap div {
min-width: 0;
}
.carte-commande__recap dt {
margin-bottom: 4px;
color: var(--gris);
}
.carte-commande__recap dd {
margin: 0;
}
.carte-commande__total {
margin-left: auto;
text-align: right;
}
.carte-commande__total dd {
font-size: 22px;
line-height: 1.3;
font-variant-numeric: tabular-nums;
}
.carte-commande__pied {
display: flex;
flex-wrap: wrap;
gap: 6px 14px;
margin: 26px 0 0;
padding-top: 20px;
border-top: 1px solid var(--trait);
font-size: 13px;
color: var(--gris);
}
.carte-commande__pied a {
color: var(--encre);
}
@container carte-commande (max-width: 560px) {
.carte-commande__etapes {
grid-template-columns: minmax(0, 1fr);
}
.carte-commande__etapes li {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 2px 14px;
padding: 0 0 20px 32px;
}
.carte-commande__etapes li:last-child {
padding-bottom: 0;
}
.carte-commande__etapes li::before {
top: 16px;
bottom: -3px;
left: 5px;
right: auto;
width: 1px;
height: auto;
}
.carte-commande__etapes li::after {
top: 3px;
}
.carte-commande__etapes span {
margin: 0;
}
.carte-commande__tete {
grid-template-columns: minmax(0, 1fr);
}
.carte-commande__statut {
grid-column: 1;
grid-row: auto;
margin-top: 10px;
text-align: left;
}
}
.compte-vide {
padding-top: clamp(26px, 3vw, 34px);
border-top: 1px solid var(--encre);
}
.compte-vide p {
max-width: 56ch;
margin: 0 0 10px;
font-size: 14px;
line-height: 1.7;
color: var(--gris);
}
.compte-vide .compte-vide__titre {
margin-bottom: 12px;
font-family: var(--serif);
font-size: clamp(24px, 2vw, 30px);
font-style: italic;
line-height: 1.25;
color: var(--encre);
}
.compte-vide .compte-vide__note {
font-size: 13px;
}
.compte-panier {
margin-top: clamp(48px, 5vw, 72px);
padding: clamp(24px, 3vw, 40px);
background: var(--lin);
}
.compte-panier__tete {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
gap: 10px 20px;
}
.compte-panier__tete .lien-trait {
white-space: nowrap;
}
.compte-panier__tete .espace__sous-titre {
margin: 0;
}
.compte-panier__lignes {
margin: 8px 0 0;
padding: 0;
list-style: none;
}
.compte-panier__lignes li {
display: grid;
grid-template-columns: 72px minmax(0, 1fr) auto;
align-items: center;
gap: 22px;
padding: 18px 0;
}
.compte-panier__lignes li + li {
border-top: 1px solid var(--trait);
}
.compte-panier__image {
display: block;
}
.compte-panier__image img {
display: block;
width: 72px;
height: 90px;
object-fit: cover;
background: var(--pierre);
}
.compte-panier__nom {
margin: 0 0 6px;
font-family: var(--serif);
font-size: 21px;
line-height: 1.2;
}
.compte-panier__choix {
margin: 0;
font-size: 13px;
line-height: 1.5;
color: var(--gris);
}
.compte-panier__prix {
margin: 0;
font-size: 14px;
font-variant-numeric: lining-nums;
white-space: nowrap;
}
.compte-panier__pied {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
gap: 20px 30px;
padding-top: 20px;
border-top: 1px solid var(--trait);
}
.compte-panier__total {
display: flex;
align-items: baseline;
gap: 24px;
margin: 0;
font-size: 14px;
}
.compte-panier__total small {
display: block;
font-size: 12px;
color: var(--gris);
}
.compte-panier__total span:last-child {
font-family: var(--serif);
font-size: 26px;
font-variant-numeric: lining-nums;
}
.compte-galerie,
.compte-service {
margin-top: clamp(64px, 7vw, 104px);
}
.compte-galerie .espace__sous-titre,
.compte-service .espace__sous-titre {
margin-bottom: 24px;
}
.compte-galerie ul,
.compte-service ul {
margin: 0;
padding: 0;
list-style: none;
}
.compte-galerie ul {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: clamp(14px, 1.6vw, 24px);
}
.compte-galerie a {
display: block;
}
.compte-galerie img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
margin-bottom: 14px;
object-fit: cover;
background: var(--pierre);
transition: opacity 0.5s var(--lent);
}
.compte-galerie a:hover img {
opacity: 0.88;
}
.compte-galerie__numero {
display: block;
font-family: var(--serif);
font-size: 15px;
font-style: italic;
color: var(--gris);
}
.compte-galerie__nom {
display: block;
margin: 2px 0 4px;
font-size: 12px;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.compte-galerie__moment {
display: block;
font-size: 13px;
color: var(--gris);
}
.compte-service ul {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 0 32px;
}
.compte-service li {
border-top: 1px solid var(--encre);
}
.compte-service a {
display: block;
padding: 22px 0 8px;
font-size: 14px;
line-height: 1.65;
color: var(--gris);
}
.compte-service__titre {
display: block;
margin-bottom: 8px;
font-size: 12px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--encre);
transition: color 0.4s var(--lent);
}
.compte-service a:hover .compte-service__titre {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 4px;
}
.compte__retractations {
margin-top: clamp(56px, 6vw, 80px);
padding-top: 26px;
border-top: 1px solid var(--trait);
}
.compte__retractations ul {
margin: 0;
padding: 0;
list-style: none;
font-size: 14px;
line-height: 1.8;
color: var(--gris);
}
@media (max-width: 900px) {
.espace__corps {
display: flex;
flex-direction: column;
gap: 0;
padding-top: 0;
}
.espace__menu {
display: contents;
}
.espace__menu nav {
order: 1;
margin: 0 calc(var(--marge) * -1) clamp(36px, 6vw, 52px);
padding: 0 var(--marge);
border-bottom: 1px solid var(--trait);
}
.espace__contenu {
order: 2;
max-width: none;
}
.espace__aide {
order: 3;
margin-top: 56px;
padding-top: 22px;
border-top: 1px solid var(--trait);
}
.espace__rubriques {
display: flex;
gap: 0 28px;
overflow-x: auto;
border-top: 0;
scrollbar-width: none;
}
.espace__rubriques::-webkit-scrollbar {
display: none;
}
.espace__rubriques li {
flex: none;
border-bottom: 0;
}
.espace__rubriques button {
align-items: center;
gap: 8px;
min-height: 48px;
padding: 14px 0;
}
.espace__contenu .carte-commande:first-child,
.espace__contenu .compte-vide {
padding-top: 0;
border-top: 0;
}
.espace__rubriques button::before {
top: auto;
bottom: 0;
width: 100%;
}
.espace__rubriques button[aria-current='true'] {
padding-left: 0;
}
.espace__entete {
--tableau-bord: 52px;
padding-bottom: 28px;
}
.espace__salut,
.espace__email {
max-width: calc(100% - 150px);
}
@media (max-width: 359px) {
.espace__entete:not(.espace__entete--page) .titre-compte {
max-width: calc(100% - 150px);
}
}
.espace__entete--page .espace__photo {
display: none;
}
.espace__corps:has([data-rubrique='commandes']:not([hidden])) .espace__aide p:first-child,
.espace__corps:has([data-rubrique='informations']:not([hidden])) .espace__aide {
display: none;
}
}
@media (max-width: 640px) {
.espace__corps {
padding-top: 34px;
}
.espace__menu nav {
margin: 0 0 clamp(36px, 8vw, 48px);
padding: 0;
border-bottom: 0;
}
.espace__rubriques {
display: block;
overflow: visible;
border-top: 1px solid var(--encre);
}
.espace__rubriques li {
border-bottom: 1px solid var(--trait);
}
.espace__rubriques button {
justify-content: space-between;
align-items: baseline;
min-height: 52px;
padding: 18px 0 16px;
}
.espace__rubriques button::before {
top: 50%;
bottom: auto;
width: 14px;
}
.espace__rubriques button[aria-current='true'] {
padding-left: 26px;
}
}
@media (max-width: 640px) {
.compte-galerie ul {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 28px 14px;
}
.compte-service ul {
grid-template-columns: minmax(0, 1fr);
}
.compte-panier__lignes li {
grid-template-columns: 56px minmax(0, 1fr);
gap: 4px 16px;
}
.compte-panier__image {
grid-row: span 2;
}
.compte-panier__image img {
width: 56px;
height: 70px;
}
.compte-panier__prix {
grid-column: 2;
}
.compte-panier__pied .bouton {
width: 100%;
}
}
.retractation {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(280px, 400px);
gap: clamp(48px, 8vw, 140px);
align-items: start;
padding-top: clamp(52px, 6vw, 92px);
padding-bottom: clamp(88px, 10vw, 150px);
}
.retractation__formulaire {
max-width: 760px;
padding-top: 36px;
border-top: 1px solid var(--encre);
}
.retractation__recap {
padding: 18px 20px;
background: var(--lin);
}
.retractation__aide {
padding-top: 30px;
border-top: 1px solid var(--encre);
font-size: 14px;
line-height: 1.7;
color: var(--gris);
}
.retractation__aide ol {
margin: 0 0 22px;
padding-left: 20px;
}
.retractation__aide li {
margin-bottom: 10px;
padding-left: 4px;
}
.retractation__aide li::marker {
font-family: var(--serif);
font-size: 17px;
color: var(--encre);
}
.retractation__aide h3 {
margin: 36px 0 14px;
}
.retractation__aide blockquote {
margin: 18px 0;
padding: 18px 20px;
background: var(--lin);
font-size: 13.5px;
}
.retractation__aide a {
color: var(--encre);
}
@media (max-width: 900px) {
.retractation {
grid-template-columns: minmax(0, 1fr);
}
}
.gestion {
max-width: 1040px;
}
.geste {
display: grid;
grid-template-columns: minmax(0, 1fr);
grid-template-areas: 'tete' 'media' 'teintes' 'produits';
}
.geste__tete {
grid-area: tete;
margin-bottom: 36px;
}
.geste__tete .discret {
max-width: 340px;
margin-top: 20px;
}
.geste .comparateur {
grid-area: media;
width: 100%;
}
.geste .comparateur.comparateur--portrait {
margin: 0;
}
.geste__produits {
max-width: 640px;
}
.geste__teintes {
grid-area: teintes;
display: flex;
gap: 14px;
margin-top: 28px;
}
.geste__teinte {
position: relative;
width: 44px;
height: 44px;
padding: 0;
border: 0;
background: var(--nuit-2);
cursor: pointer;
}
.geste__teinte img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.geste__teinte::after {
content: '';
position: absolute;
inset: -5px;
border: 1px solid transparent;
transition: border-color 0.35s var(--lent);
}
.geste__teinte:hover::after {
border-color: rgba(238, 237, 233, 0.4);
}
.geste__teinte[aria-pressed='true']::after {
border-color: var(--ivoire);
}
.geste__produits {
grid-area: produits;
margin-top: 40px;
}
.geste__legende {
margin: 0 0 14px;
font-family: var(--serif);
font-size: 20px;
font-style: italic;
font-weight: 400;
letter-spacing: 0;
text-transform: none;
color: rgba(238, 237, 233, 0.76);
}
.geste__produits ul {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--trait-clair);
}
.geste__produit {
display: grid;
grid-template-columns: 64px minmax(0, 1fr) 12px;
grid-template-rows: auto auto auto;
column-gap: 20px;
align-items: center;
padding: 16px 0;
border-bottom: 1px solid var(--trait-clair);
color: var(--ivoire);
}
.geste__produit::after {
content: '';
grid-column: 3;
grid-row: 1 / span 3;
width: 7px;
height: 7px;
border-top: 1px solid currentColor;
border-right: 1px solid currentColor;
opacity: 0.6;
transform: rotate(45deg);
transition: transform 0.45s var(--lent), opacity 0.45s var(--lent);
}
.geste__produit:hover::after,
.geste__produit:focus-visible::after {
opacity: 1;
transform: translateX(4px) rotate(45deg);
}
.geste__vignette {
grid-row: 1 / span 3;
width: 64px;
height: 64px;
object-fit: cover;
background: var(--nuit-2);
}
.geste__vignette--lampe {
object-position: 50% 18%;
}
.geste__nom {
font-size: 13px;
letter-spacing: 0.18em;
text-transform: uppercase;
line-height: 1.3;
}
.geste__nom i {
margin-right: 4px;
font-family: var(--serif);
font-size: 17px;
letter-spacing: 0;
text-transform: none;
color: rgba(238, 237, 233, 0.76);
}
.geste__type {
margin-top: 4px;
font-size: 13px;
line-height: 1.4;
color: rgba(238, 237, 233, 0.76);
}
.geste__prix {
margin-top: 2px;
font-size: 14px;
line-height: 1.4;
}
.geste__nom,
.geste__type,
.geste__prix {
grid-column: 2;
}
.geste__repere {
position: absolute;
z-index: 2;
border: 1px solid rgba(249, 246, 240, 0.85);
box-shadow: 0 0 18px rgba(12, 10, 9, 0.25);
opacity: 0;
transform: scale(1.04);
transition: opacity 0.45s var(--lent), transform 0.45s var(--lent);
pointer-events: none;
}
.geste__repere--tableau {
left: 34.3%;
top: 20.4%;
width: 31.9%;
height: 25.5%;
}
.geste__repere--lampe {
left: 75.1%;
top: 34.2%;
width: 22.6%;
height: 48.5%;
}
.geste:has([data-repere='tableau']:is(:hover, :focus-visible)) .geste__repere--tableau,
.geste:has([data-repere='lampe']:is(:hover, :focus-visible)) .geste__repere--lampe {
opacity: 1;
transform: none;
}
.geste .comparateur img {
transition: opacity 0.3s var(--lent);
}
.geste .comparateur.est-en-change img {
opacity: 0.15;
}
@media (min-width: 861px) {
.geste {
grid-template-columns: minmax(0, 1fr) auto;
grid-template-rows: 1fr auto auto auto 1fr;
grid-template-areas: '. media' 'tete media' 'teintes media' 'produits media' '. media';
column-gap: clamp(40px, 6vw, 96px);
}
.geste__tete {
margin-bottom: clamp(36px, 4vw, 52px);
}
.geste__teintes {
margin-top: 0;
}
.geste__produits {
max-width: 420px;
margin-top: clamp(36px, 4vw, 52px);
}
}
@media (prefers-reduced-motion: reduce) {
.geste__repere,
.geste .comparateur img,
.geste__produit::after {
transition: none;
}
}
.entete--commande .entete__retour,
.entete__securise {
position: relative;
display: inline-flex;
align-items: center;
gap: 10px;
white-space: nowrap;
font-size: 11.5px;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.entete--commande .entete__retour::before {
content: '';
position: absolute;
inset: -14px -8px;
}
.entete__securise {
color: var(--gris);
}
.entete__retour svg,
.entete__securise svg {
flex: none;
width: 14px;
height: 14px;
fill: none;
stroke: currentColor;
stroke-width: 1.2;
}
.entete__court {
display: none;
}
.page-commande #contenu {
display: flex;
flex-direction: column;
min-height: calc(100vh - var(--entete) - 84px);
min-height: calc(100svh - var(--entete) - 84px);
}
.commande {
display: flex;
flex: 1;
flex-direction: column;
}
.commande__vide {
width: 100%;
max-width: calc(640px + 2 * var(--marge));
margin: 0 auto;
padding: clamp(48px, 7vw, 96px) var(--marge);
}
.commande__vide p {
margin-bottom: 28px;
font-family: var(--serif);
font-size: 26px;
font-style: italic;
color: var(--gris);
}
.commande__grille {
display: flex;
flex: 1;
flex-direction: column;
}
.commande__parcours {
width: 100%;
max-width: calc(600px + 2 * var(--marge));
margin: 0 auto;
padding: 32px var(--marge) clamp(72px, 9vw, 112px);
}
.express {
margin-bottom: 32px;
}
.express__ou {
display: flex;
align-items: center;
gap: 18px;
margin: 26px 0 0;
font-size: 13px;
color: var(--gris);
}
.express__ou::before,
.express__ou::after {
content: '';
flex: 1;
height: 1px;
background: var(--trait);
}
.commande__alerte {
margin: 0 0 28px;
}
.commande__alerte:focus {
outline: none;
}
.commande__formulaire {
border-bottom: 1px solid var(--trait);
}
.pas {
padding: 26px 0;
border-top: 1px solid var(--trait);
scroll-margin-top: calc(var(--entete) + 20px);
}
.pas:first-child {
padding-top: 0;
border-top: 0;
}
.pas.est-ouvert {
padding-bottom: 40px;
}
.pas__tete {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
align-items: center;
column-gap: 16px;
}
.pas__titre {
display: flex;
align-items: center;
gap: 16px;
margin: 0;
font-size: 15px;
font-weight: 400;
letter-spacing: 0.14em;
color: var(--gris);
}
.pas.est-ouvert .pas__titre,
.pas.est-fait .pas__titre {
color: var(--encre);
}
.pas__titre:focus {
outline: none;
}
.pas__numero {
position: relative;
display: inline-flex;
flex: none;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
border: 1px solid currentColor;
border-radius: 50%;
font-size: 13px;
line-height: 1;
letter-spacing: 0;
}
.pas.est-ouvert .pas__numero {
border-color: var(--encre);
background: var(--encre);
color: var(--ivoire);
}
.pas.est-fait .pas__numero {
border-color: var(--encre);
color: transparent;
}
.pas.est-fait .pas__numero::after {
content: '';
position: absolute;
top: 10px;
left: 9px;
width: 11px;
height: 6px;
border-bottom: 1.5px solid var(--encre);
border-left: 1.5px solid var(--encre);
transform: rotate(-45deg);
}
.pas__resume {
grid-column: 1 / -1;
margin: 10px 0 0 46px;
font-size: 15px;
line-height: 1.5;
color: var(--gris);
overflow-wrap: anywhere;
}
.pas:not(.est-fait) .pas__resume {
display: none;
}
.pas__modifier {
position: relative;
grid-column: 2;
grid-row: 1;
padding: 0;
border: 0;
background: none;
color: var(--encre);
font-family: var(--sans);
font-size: 14px;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 4px;
cursor: pointer;
}
.pas__modifier::before {
content: '';
position: absolute;
inset: -14px -10px;
}
.pas__modifier:focus-visible {
outline: 1px solid var(--encre);
outline-offset: 4px;
}
.pas__corps {
padding: 28px 0 0 46px;
}
.pas:not(.est-ouvert) .pas__corps {
height: 0;
padding-top: 0;
overflow: hidden;
visibility: hidden;
}
.page-commande .champs {
gap: 24px 20px;
}
.page-commande .champ label {
font-size: 14px;
letter-spacing: 0.01em;
text-transform: none;
color: var(--encre);
}
.page-commande .champ input,
.page-commande .champ textarea {
padding: 0 16px;
border: 1px solid #7d766d;
transition: border-color 0.2s, box-shadow 0.2s;
}
.page-commande .champ input {
height: 52px;
}
.page-commande .champ textarea {
min-height: 96px;
padding: 14px 16px;
}
.page-commande .champ input:focus,
.page-commande .champ textarea:focus {
border-color: var(--encre);
box-shadow: inset 0 0 0 1px var(--encre);
}
.page-commande .champ input[aria-invalid='true'] {
border-color: #9b3b2a;
box-shadow: inset 0 0 0 1px #9b3b2a;
}
.champ__aide,
.champ__erreur {
margin: 0;
font-size: 13px;
line-height: 1.5;
color: var(--gris);
}
.champ__erreur {
color: #9b3b2a;
}
.champ:has(.champ__erreur) .champ__aide {
display: none;
}
.pas__note {
margin: 22px 0 0;
font-size: 14px;
line-height: 1.6;
color: var(--gris);
}
.pas__cadeau {
margin-top: 24px;
font-size: 14px;
line-height: 1.5;
color: var(--encre);
}
.pas__mot {
margin-top: 20px;
}
.pas__mot .discret {
color: var(--gris);
}
.pas__suite,
.commande__payer {
width: 100%;
margin-top: 32px;
}
.stripe-zone.est-en-attente {
min-height: 236px;
background:
linear-gradient(var(--pierre), var(--pierre)) 0 30px / 100% 52px no-repeat,
linear-gradient(var(--pierre), var(--pierre)) 0 112px / 100% 52px no-repeat,
linear-gradient(var(--pierre), var(--pierre)) 0 184px / 100% 52px no-repeat;
animation: attente-stripe 1.4s var(--lent) infinite alternate;
}
@keyframes attente-stripe {
from {
opacity: 0.35;
}
}
.commande__payer {
gap: 10px;
}
.commande__payer [data-payer-montant] {
font-variant-numeric: tabular-nums;
}
.commande__payer.est-en-cours {
opacity: 0.8;
cursor: progress;
}
.commande__mentions {
margin: 16px 0 0;
font-size: 13px;
line-height: 1.6;
color: var(--gris);
}
.commande__mentions a {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}
.resume {
background: var(--lin);
}
.resume__bascule {
display: none;
}
.resume__titre {
margin: 0 0 8px;
font-size: 15px;
font-weight: 400;
letter-spacing: 0.14em;
}
.resume__ligne {
display: grid;
grid-template-columns: 68px minmax(0, 1fr) auto;
gap: 18px;
align-items: start;
padding: 20px 0;
border-bottom: 1px solid var(--trait);
}
.resume__image {
display: block;
aspect-ratio: 4 / 5;
overflow: hidden;
background: var(--pierre);
}
.resume__image img,
.resume__vignette img {
width: 100%;
height: 100%;
object-fit: cover;
}
.resume__nom {
margin: 0 0 4px;
font-size: 15px;
line-height: 1.4;
}
.resume__details {
margin: 0;
font-size: 13px;
line-height: 1.55;
color: var(--gris);
}
.resume__details span {
white-space: nowrap;
}
.resume__prix {
margin: 0;
font-size: 15px;
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.resume__totaux {
margin: 0;
padding: 18px 0 0;
}
.resume__totaux div {
display: flex;
justify-content: space-between;
gap: 16px;
padding: 6px 0;
font-size: 15px;
}
.resume__totaux dt,
.resume__totaux dd {
margin: 0;
}
.resume__totaux dt {
color: var(--gris);
}
.resume__totaux dd {
font-variant-numeric: tabular-nums;
}
.resume__totaux .resume__total {
margin-top: 10px;
padding-top: 18px;
border-top: 1px solid var(--trait);
font-size: 20px;
}
.resume__totaux .resume__total dt {
color: var(--encre);
}
.resume__note {
margin: 26px 0 0;
font-size: 13px;
line-height: 1.6;
color: var(--gris);
}
.resume__panier {
display: inline-block;
margin-top: 18px;
padding: 4px 0;
font-size: 14px;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 4px;
}
@media (min-width: 960px) {
.commande__grille {
display: grid;
grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
}
.commande__parcours {
grid-column: 1;
grid-row: 1;
justify-self: end;
max-width: calc(600px + 2 * clamp(48px, 5vw, 96px));
margin: 0;
padding: 64px clamp(48px, 5vw, 96px) 96px;
}
.resume {
grid-column: 2;
grid-row: 1;
}
.resume__corps {
max-width: calc(440px + 2 * clamp(48px, 5vw, 96px));
padding: 64px clamp(48px, 5vw, 96px);
}
.pas__note {
display: none;
}
}
@media (max-width: 959px) {
.resume {
border-bottom: 1px solid var(--trait);
}
.resume__bascule {
display: flex;
align-items: center;
gap: 14px;
width: 100%;
min-height: 72px;
padding: 12px var(--marge);
border: 0;
background: none;
color: var(--encre);
font-family: var(--sans);
text-align: left;
cursor: pointer;
}
.resume__bascule:focus-visible {
outline: 1px solid var(--encre);
outline-offset: -4px;
}
.resume__vignette {
flex: none;
width: 40px;
aspect-ratio: 4 / 5;
overflow: hidden;
background: var(--pierre);
}
.resume__libelle {
display: flex;
flex: 1;
flex-direction: column;
gap: 2px;
min-width: 0;
font-size: 15px;
}
.resume__libelle small {
overflow: hidden;
font-size: 13px;
color: var(--gris);
white-space: nowrap;
text-overflow: ellipsis;
}
.resume__montant {
font-size: 16px;
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.resume__bascule svg {
flex: none;
width: 14px;
height: 14px;
fill: none;
stroke: currentColor;
stroke-width: 1.3;
transition: transform 0.4s var(--lent);
}
.resume.est-ouvert .resume__bascule svg {
transform: rotate(180deg);
}
.resume__corps {
display: none;
padding: 0 var(--marge) 24px;
}
.resume.est-ouvert .resume__corps {
display: block;
}
.resume__titre {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
}
.resume__ligne:first-child {
border-top: 1px solid var(--trait);
}
}
.pied-commande {
padding: 28px 0 calc(28px + env(safe-area-inset-bottom));
border-top: 1px solid var(--trait);
font-size: 12px;
color: var(--gris);
}
.pied-commande .conteneur {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
gap: 12px 28px;
}
.pied-commande ul {
display: flex;
flex-wrap: wrap;
gap: 8px 24px;
margin: 0;
padding: 0;
list-style: none;
}
.pied-commande a {
display: inline-block;
padding: 6px 0;
}
.pied-commande a:hover {
color: var(--encre);
text-decoration: underline;
text-underline-offset: 3px;
}
.pied-commande p {
margin: 0;
padding: 6px 0;
}
@media (prefers-reduced-motion: reduce) {
.stripe-zone.est-en-attente {
animation: none;
}
.resume__bascule svg {
transition: none;
}
}
@media (max-width: 600px) {
.entete--commande .entete__long {
display: none;
}
.entete--commande .entete__court {
display: inline;
}
.entete__securise .entete__long {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
}
.pas__corps {
padding-left: 0;
}
.resume__ligne {
grid-template-columns: 56px minmax(0, 1fr) auto;
gap: 14px;
}
}
#collection-accueil .carte-piece__infos {
align-items: flex-end;
align-items: last baseline;
}
#collection-accueil .carte-piece__infos .lien-trait {
flex-shrink: 0;
font-size: 11px;
}
#collection-accueil .carte-piece:focus-visible .lien-trait::after {
transform: scaleX(0.35);
}
@media (hover: hover) {
#collection-accueil .carte-piece:hover .lien-trait::after {
transform: scaleX(0.35);
}
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
#collection-accueil .carte-piece__media img {
transition: transform 2s var(--lent), filter 1.2s var(--lent);
}
#collection-accueil .carte-piece:hover .carte-piece__media img {
transform: scale(1.015);
}
}
.maison-vitrine h1,
.maison-titre {
margin: 0;
font-size: clamp(20px, 1.7vw, 28px);
line-height: 1.3;
letter-spacing: 0.34em;
}
.maison-vitrine h1 em,
.maison-titre em {
display: block;
margin-top: 18px;
font-size: clamp(20px, 1.6vw, 25px);
letter-spacing: 0.01em;
}
.maison-titre {
font-size: clamp(17px, 1.35vw, 22px);
}
.maison-titre em {
margin-top: 14px;
font-size: clamp(19px, 1.45vw, 23px);
}
.maison-titre br {
display: none;
}
.maison-cartel {
margin: 0;
}
.maison-cartel img {
display: block;
width: 100%;
height: auto;
background: var(--pierre);
}
.maison-cartel figcaption {
margin-top: 16px;
padding: 0 var(--marge);
font-family: var(--serif);
font-size: 18px;
font-style: italic;
color: var(--gris);
}
.maison-ouverture {
padding-bottom: clamp(24px, 3vw, 48px);
}
.maison-nom__grille {
display: grid;
grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
gap: clamp(48px, 8vw, 140px);
align-items: center;
max-width: 1180px;
}
.maison-nom__photo {
margin: 0;
}
.maison-nom__photo img {
display: block;
width: 100%;
height: auto;
background: var(--pierre);
}
.maison-nom__texte {
max-width: 34em;
font-size: 17px;
line-height: 1.75;
}
.maison-nom__texte .maison-titre {
margin-bottom: clamp(32px, 3vw, 44px);
}
.maison-principes__grille {
display: grid;
grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
gap: clamp(40px, 6vw, 112px);
align-items: start;
max-width: 1180px;
}
.maison-principes__liste {
margin: 0;
border-top: 1px solid var(--trait);
}
.maison-principes__liste > div {
display: grid;
grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
gap: 24px;
padding: 28px 0;
border-bottom: 1px solid var(--trait);
}
.maison-principes__liste dt {
font-size: 12px;
line-height: 1.9;
letter-spacing: 0.22em;
text-transform: uppercase;
}
.maison-principes__liste dd {
margin: 0;
font-size: 17px;
line-height: 1.7;
color: var(--gris);
}
.section--nuit .maison-cartel figcaption {
color: rgba(var(--ivoire-rgb), 0.76);
}
.section--nuit .maison-cartel img {
background: var(--nuit-2);
}
.maison-nuit__regle {
max-width: 940px;
margin: clamp(72px, 8vw, 128px) auto 0;
text-align: center;
}
.maison-nuit__regle p {
text-wrap: balance;
font-family: var(--serif);
font-size: clamp(25px, 2.4vw, 36px);
font-style: italic;
line-height: 1.35;
}
.maison-nuit__regle footer {
margin-top: 26px;
font-size: 12px;
letter-spacing: 0.22em;
text-transform: uppercase;
color: rgba(var(--ivoire-rgb), 0.76);
}
.maison-nuit__boutons {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 14px;
margin-top: clamp(44px, 4vw, 60px);
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
.maison-produits__liste img {
transition: opacity 0.6s var(--lent);
}
.maison-produits__liste a:hover img {
opacity: 0.9;
}
}
@media (max-width: 860px) {
.maison-nom__grille,
.maison-principes__grille {
grid-template-columns: minmax(0, 1fr);
}
.maison-nom__photo {
max-width: 480px;
}
}
@media (max-width: 760px) {
.maison-cartel figcaption {
margin-top: 12px;
font-size: 16px;
}
.maison-principes__liste > div {
grid-template-columns: minmax(0, 1fr);
gap: 8px;
padding: 22px 0;
}
}
.maison-vitrine {
overflow: hidden;
padding: clamp(32px, 4vw, 56px) 0 clamp(80px, 9vw, 144px);
}
.maison-vitrine .fil-ariane {
color: rgba(var(--ivoire-rgb), 0.72);
}
.maison-vitrine .fil-ariane a:hover {
color: var(--ivoire);
}
.maison-vitrine__tete {
display: flex;
flex-wrap: wrap;
align-items: flex-end;
justify-content: space-between;
gap: 28px 48px;
margin-top: clamp(40px, 5vw, 80px);
}
.maison-vitrine__liste {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: clamp(20px, 3vw, 48px);
margin: clamp(56px, 6vw, 96px) 0 0;
padding: 0;
list-style: none;
}
.maison-vitrine__liste a {
display: block;
}
.maison-vitrine__face {
position: relative;
display: block;
aspect-ratio: 1;
}
.maison-vitrine__face img {
position: relative;
display: block;
width: 100%;
height: 100%;
background: var(--nuit-2);
}
.maison-vitrine__face .maison-vitrine__halo {
position: absolute;
inset: 0;
background: none;
opacity: 0.42;
filter: blur(clamp(24px, 3vw, 44px)) saturate(1.15);
transform: scale(1.12);
}
.maison-vitrine__nom {
display: block;
margin-top: 26px;
font-size: 12px;
line-height: 1.5;
letter-spacing: 0.22em;
text-transform: uppercase;
}
.maison-vitrine__heure {
display: block;
margin-top: 4px;
font-family: var(--serif);
font-size: 19px;
font-style: italic;
line-height: 1.3;
color: rgba(var(--ivoire-rgb), 0.76);
}
.maison-vitrine__prix {
display: block;
margin-top: 10px;
font-size: 14px;
letter-spacing: 0.02em;
color: rgba(var(--ivoire-rgb), 0.76);
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
.maison-vitrine__halo {
transition: opacity 0.8s var(--lent);
}
.maison-vitrine__liste a:hover .maison-vitrine__halo {
opacity: 0.7;
}
}
@media (max-width: 760px) {
.maison-vitrine__tete {
display: block;
}
.maison-vitrine__tete .lien-trait {
margin-top: 28px;
}
.maison-vitrine__liste {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 40px 16px;
}
.maison-vitrine__nom {
margin-top: 18px;
letter-spacing: 0.16em;
}
.maison-vitrine__heure {
font-size: 17px;
}
}
.maison-produits {
padding: clamp(72px, 8vw, 128px) 0;
}
.maison-lampes {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: clamp(20px, 3vw, 48px);
}
.maison-lampes__texte {
grid-column: span 2;
align-self: center;
max-width: 26em;
padding-bottom: 80px;
}
.maison-lampes__texte .maison-titre {
margin-bottom: clamp(24px, 2.4vw, 34px);
}
.maison-lampes__texte p {
margin: 0;
font-size: 17px;
line-height: 1.7;
color: var(--gris);
}
.maison-lampes__texte p + p {
margin-top: 26px;
}
.maison-produits__liste {
display: grid;
grid-column: span 2;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: clamp(20px, 3vw, 48px);
margin: 0;
padding: 0;
list-style: none;
}
.maison-produits__liste a {
display: block;
}
.maison-produits__liste img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
background: var(--pierre);
}
.maison-produits__nom {
display: block;
margin-top: 18px;
font-size: 12px;
line-height: 1.5;
letter-spacing: 0.2em;
text-transform: uppercase;
}
.maison-produits__sorte {
display: block;
margin-top: 4px;
font-family: var(--serif);
font-size: 18px;
font-style: italic;
line-height: 1.3;
color: var(--gris);
}
.maison-produits__prix {
display: block;
margin-top: 8px;
font-size: 14px;
letter-spacing: 0.02em;
color: var(--gris);
}
@media (max-width: 760px) {
.maison-lampes {
display: block;
}
.maison-lampes__texte {
max-width: none;
margin-bottom: 36px;
padding-bottom: 0;
}
.maison-produits__liste {
gap: 16px;
}
}
.pro-titre {
font-size: clamp(17px, 1.3vw, 22px);
line-height: 1.4;
letter-spacing: 0.32em;
}
.pro-titre em {
display: block;
margin-top: 12px;
font-size: 1.62em;
line-height: 1.2;
}
.page-entete--pro > .conteneur > p {
max-width: 520px;
margin: 28px auto 34px;
}
.pro-accueil__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 18px 36px;
}
.page-pro .section {
padding: clamp(56px, 6vw, 104px) 0;
}
.page-pro .section + .section {
padding-top: 0;
}
.pro-revente__grille {
display: grid;
grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
gap: clamp(36px, 5vw, 88px);
align-items: center;
}
.pro-revente--inverse .pro-revente__grille {
grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}
.pro-revente__photos {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(12px, 1.4vw, 20px);
align-items: start;
}
.pro-revente__photos img {
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
background: var(--pierre);
}
.pro-revente__photos img:last-child {
margin-top: clamp(32px, 4vw, 64px);
}
.pro-revente__intro {
max-width: 480px;
margin: 26px 0 32px;
color: var(--gris);
}
.pro-points {
margin: 0 0 40px;
border-top: 1px solid var(--trait);
}
.pro-points div {
display: grid;
grid-template-columns: minmax(0, 200px) minmax(0, 1fr);
gap: 8px 28px;
padding: 18px 0;
border-bottom: 1px solid var(--trait);
}
.pro-points dt {
font-size: 15px;
}
.pro-points dd {
margin: 0;
font-size: 15px;
color: var(--gris);
}
.pro-projet__grille {
display: grid;
grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
gap: clamp(40px, 8vw, 140px);
align-items: start;
}
.pro-projet__aside > p {
margin: 24px 0 0;
color: var(--gris);
}
.pro-projet__tirage {
display: block;
width: 220px;
max-width: 100%;
height: auto;
aspect-ratio: 4 / 5;
margin: 40px 0 0;
object-fit: cover;
background: var(--pierre);
}
.pro-projet__aside > .pro-projet__direct {
margin-top: 28px;
font-size: 14px;
}
.formulaire .champs {
gap: 24px 20px;
}
.formulaire .champ label {
font-size: 14px;
letter-spacing: 0.01em;
text-transform: none;
color: var(--encre);
}
.formulaire .champ input,
.formulaire .champ select,
.formulaire .champ textarea {
padding: 0 16px;
border: 1px solid #7d766d;
background-color: rgba(var(--ivoire-rgb), 0.45);
transition: border-color 0.2s, box-shadow 0.2s;
}
.formulaire .champ input,
.formulaire .champ select {
height: 52px;
}
.formulaire .champ select {
padding-right: 44px;
background-position: calc(100% - 23px) 23px, calc(100% - 18px) 23px;
}
.formulaire .champ textarea {
min-height: 150px;
padding: 14px 16px;
}
.formulaire .champ input:focus,
.formulaire .champ select:focus,
.formulaire .champ textarea:focus {
border-color: var(--encre);
box-shadow: inset 0 0 0 1px var(--encre);
}
.formulaire .case {
font-size: 14px;
}
.formulaire .bouton {
margin-top: 32px;
}
.pro-revente--inverse .pro-revente__photos {
order: 2;
}
@media (max-width: 860px) {
.pro-revente__grille,
.pro-revente--inverse .pro-revente__grille,
.pro-projet__grille {
grid-template-columns: minmax(0, 1fr);
}
.pro-revente--inverse .pro-revente__photos {
order: 0;
}
}
@media (max-width: 760px) {
.pro-points div {
grid-template-columns: minmax(0, 1fr);
}
.pro-projet__tirage {
display: none;
}
}
.maison-nuit__plus {
margin: 30px 0 0;
text-align: center;
font-size: 13px;
letter-spacing: 0.04em;
}
.maison-nuit__plus a {
margin: 0 10px;
}
.fiche__expedition--avant {
margin-top: 30px;
font-size: 14px;
color: var(--encre);
}
.fiche__achat--prevenir {
margin: 22px 0 30px;
scroll-margin: calc(var(--entete) + 24px) 0 120px;
}
.prevenir__texte {
margin-bottom: 22px;
font-size: 16px;
line-height: 1.65;
color: var(--encre);
}
.prevenir__formulaire .champs {
gap: 18px 14px;
}
.prevenir__formulaire .champ label {
font-size: 15px;
}
.prevenir__formulaire .case {
margin-top: 2px;
font-size: 15px;
line-height: 1.55;
color: var(--encre);
}
.prevenir__formulaire .bouton {
margin-top: 22px;
}
.prevenir__formulaire .formulaire-mentions {
margin-top: 14px;
font-size: 14px;
opacity: 1;
color: var(--gris);
}
.prevenir__formulaire .message-formulaire {
margin-top: 16px;
}
.prevenir__titre {
margin: 0 0 8px;
font-size: 17px;
line-height: 1.55;
color: var(--encre);
}
.prevenir__fini:focus {
outline: none;
}
.page-panier__recap .prevenir__formulaire .champs {
grid-template-columns: 1fr;
}
.page-panier__recap .prevenir {
margin-top: 22px;
}
.proposer-compte {
margin-top: 16px;
padding: 24px 24px 26px;
border: 1px solid var(--trait);
background: var(--lin);
}
.proposer-compte p {
margin: 0 0 18px;
font-size: 14px;
line-height: 1.65;
color: var(--gris);
}
.proposer-compte .proposer-compte__titre {
margin-bottom: 8px;
font-family: var(--serif);
font-size: clamp(22px, 1.9vw, 26px);
font-style: italic;
line-height: 1.25;
color: var(--encre);
}
.pied .proposer-compte {
border-color: var(--trait-clair);
background: transparent;
}
.pied .proposer-compte p {
color: rgba(238, 237, 233, 0.8);
}
.pied .proposer-compte .proposer-compte__titre {
color: var(--ivoire);
}
.pied .proposer-compte .bouton {
border-color: var(--ivoire);
background: var(--ivoire);
color: var(--encre);
}
.pied .proposer-compte .bouton:hover {
background: transparent;
color: var(--ivoire);
}
.compte-alertes {
margin-bottom: clamp(30px, 3.4vw, 44px);
padding-top: clamp(26px, 3vw, 34px);
border-top: 1px solid var(--encre);
}
.compte-alertes p {
max-width: 60ch;
margin: 0;
font-size: 15px;
line-height: 1.7;
color: var(--gris);
}
.compte-alertes__pieces {
color: var(--encre);
}
@media (max-width: 359px) {
.entete:not(.entete--commande) .entete__interieur {
column-gap: 12px;
}
.entete__gauche,
.entete__actions {
gap: 16px;
}
.entete:not(.entete--commande) .marque__logo {
height: 19px;
}
.entete:not(.entete--commande) .marque__signature {
margin-top: 7px;
font-size: 7px;
}
}
.bandeau-ouverture {
margin: 0;
padding: 12px var(--marge);
background: var(--nuit);
color: var(--ivoire);
font-size: 11px;
line-height: 1.6;
letter-spacing: 0.18em;
text-align: center;
text-transform: uppercase;
}
.bandeau-ouverture a {
text-decoration: underline;
text-underline-offset: 4px;
}
.bandeau-ouverture__lien {
white-space: nowrap;
}
.ouverture {
margin-top: 30px;
padding-top: 24px;
border-top: 1px solid var(--trait);
}
.ouverture__surtitre {
margin: 0 0 4px;
font-size: 16px;
color: var(--encre);
}
.ouverture__date {
margin: 6px 0 0;
font-size: clamp(16px, 1.45vw, 20px);
line-height: 1.5;
letter-spacing: 0.24em;
text-transform: uppercase;
color: var(--encre);
}
.ouverture .fiche__reception {
margin: 10px 0 0;
font-size: 15px;
}
@media (max-width: 360px) {
.ouverture__date {
font-size: 14.5px;
letter-spacing: 0.18em;
}
}
.entete--transparent,
.entete--transparent.est-defile {
top: var(--decalage-bandeau, 0px);
}
@media (max-width: 960px) {
.menu-mobile {
top: var(--decalage-bandeau, 0px);
}
}
@media (min-width: 961px) {
.menu-mobile {
top: calc(var(--entete) + var(--decalage-bandeau, 0px));
}
}
@media (max-width: 760px) {
.bouton {
font-size: 13px;
letter-spacing: 0.16em;
}
.hero__texte .boutons .bouton {
font-size: 12px;
}
.surtitre,
.carte-article__rubrique,
.accords__titre,
.accord__action,
.champ label,
.pied__colonnes h3,
.pied__rang h3,
.cookies__nom,
.cookies__bouton,
.retirer,
.ligne-panier__reservation,
.recherche__produits span,
.journal-themes a,
.zones thead th,
.fermer {
font-size: 12px;
}
.hero .surtitre {
font-size: 12px;
letter-spacing: 0.16em;
}
.lien-trait,
#collection-accueil .carte-piece__infos .lien-trait {
font-size: 12px;
}
.duo .lien-trait {
font-size: 12px;
letter-spacing: 0.08em;
}
.bandeau-ouverture {
font-size: 12px;
letter-spacing: 0.14em;
}
.galerie__legende,
.comparateur__etiquette,
.option legend,
.option__legende,
.format--piece small,
.format--cadre .format__detail,
.chiffres span {
font-size: 12px;
}
.galerie__choix-cadres span,
.pastille {
font-size: 12px;
}
.format small,
.accordeon summary,
.barre-mobile__nom small,
.carte-piece__infos p,
.engagements--rangee .engagement h3 {
font-size: 13px;
}
.lampes-maison__grille .carte-piece__infos :is(h2, h3) {
font-size: 12.5px;
}
.lampes-maison__grille .carte-piece__infos p {
font-size: 13px;
}
.prose .tableau-fiches td::before,
.tailles__detail .tailles__spec {
font-size: 12px;
}
}
@media (max-width: 360px) {
.bouton,
.barre-mobile__boutons .bouton {
padding: 0 18px;
font-size: 12px;
letter-spacing: 0.12em;
}
.hero .surtitre {
font-size: 11px;
letter-spacing: 0.14em;
}
.bandeau-ouverture {
font-size: 11px;
letter-spacing: 0.12em;
}
}
.galerie__traits,
.fiche__promesses {
display: none;
}
@media (max-width: 960px) {
.fiche-geste {
display: none;
}
.galerie__scene:not(.en-fondu) img[data-vue='face'].est-active {
z-index: 1;
}
.fil-ariane:has(+ .fiche--objet) {
display: none;
}
.fiche--objet,
.fil-ariane + .fiche--objet {
padding-top: 0;
}
.js .fil-ariane:has(+ .fiche fieldset.option ~ fieldset.option ~ fieldset.option) {
display: none;
}
.js .fil-ariane + .fiche:has(fieldset.option ~ fieldset.option ~ fieldset.option) {
padding-top: 0;
}
.fiche--objet .galerie {
row-gap: 0;
}
.fiche--objet .galerie__scene {
height: auto;
aspect-ratio: 4 / 5;
}
.fiche--objet .galerie__miniatures,
.fiche--objet .galerie__titre,
.fiche--objet .galerie__agrandir {
display: none;
}
.fiche--objet .galerie__fleche,
.fiche--objet .galerie__fleche:hover {
margin-top: -22px;
border: 0;
background: rgba(var(--ivoire-rgb), 0.8);
box-shadow: 0 2px 10px rgba(12, 10, 9, 0.14);
color: var(--encre);
}
.fiche--objet .galerie__fleche svg {
stroke-width: 1.4;
}
.fiche--objet .galerie__fleche--prec {
left: 12px;
}
.fiche--objet .galerie__fleche--suiv {
right: 12px;
}
.fiche--objet .galerie__fleche:focus-visible {
outline: 2px solid var(--encre);
outline-offset: 2px;
}
.fiche--objet .galerie__scene::before,
.fiche--objet .galerie__scene::after {
content: none;
}
.fiche--objet .galerie__legende {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
}
.fiche--objet .galerie__traits {
order: 1;
display: flex;
gap: 6px;
padding-top: 4px;
}
.galerie__trait {
position: relative;
flex: 1;
height: 28px;
padding: 0;
border: 0;
background: none;
cursor: pointer;
}
.galerie__trait::before {
content: '';
position: absolute;
left: 0;
right: 0;
top: 50%;
height: 1px;
background: rgba(20, 17, 16, 0.18);
transition: background 0.4s var(--lent);
}
.galerie__trait[aria-current='true']::before {
background: var(--encre);
}
.galerie__trait:focus-visible {
outline: 2px solid var(--encre);
outline-offset: -2px;
}
.fiche--objet .galerie > .fiche__titre {
order: 2;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
align-items: baseline;
column-gap: 16px;
margin: 0;
padding-top: 16px;
}
.fiche--objet .fiche__titre .fiche__numero {
grid-area: 1 / 1;
font-size: 19px;
}
.fiche--objet .fiche__titre .fiche__prix {
display: contents;
}
.fiche--objet .fiche__titre .fiche__prix strong {
grid-area: 1 / 2;
font-family: var(--sans);
font-size: 17px;
letter-spacing: 0.06em;
line-height: 1.4;
}
.fiche--objet .fiche__titre h1 {
grid-area: 2 / 1 / 3 / 3;
margin: 2px 0 0;
}
.fiche--objet .fiche__titre h1 .fiche__sous-titre {
margin-top: 10px;
font-size: 11px;
letter-spacing: 0.22em;
}
.fiche--objet .fiche__titre .fiche__mentions-prix {
display: none;
}
.fiche--objet .fiche__titre .fiche__accroche {
grid-area: 3 / 1 / 4 / 3;
margin: 20px 0 0;
font-size: 15px;
line-height: 1.7;
color: var(--gris);
}
.fiche--objet .galerie > .nuancier {
order: 4;
margin-top: 30px;
border-top: 0;
}
.fiche--objet .nuancier .option {
padding: 20px 0 22px;
border-top: 1px solid var(--trait);
border-bottom: 0;
}
.fiche--objet .nuancier .option legend {
float: left;
width: 100%;
margin-bottom: 14px;
padding: 0;
font-size: 12px;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--encre);
}
.fiche--objet .nuancier .option > :not(legend) {
clear: both;
}
.fiche--objet .nuancier .option legend span:last-child {
font-size: 14.5px;
letter-spacing: 0;
text-transform: none;
color: var(--encre);
}
.fiche--objet .nuancier .option:has(.formats--deux) legend span:last-child {
display: none;
}
.fiche--objet .nuancier .formats--deux,
.fiche--objet .nuancier .formats--deux.formats--cadres {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
}
.fiche--objet .nuancier .formats--deux .format,
.fiche--objet .nuancier .formats--deux input:checked + .format {
display: flex;
flex-flow: row wrap;
align-items: baseline;
justify-content: space-between;
gap: 2px 8px;
min-height: 54px;
padding: 16px 14px 15px;
border: 1px solid rgba(20, 17, 16, 0.24);
background: none;
color: var(--encre);
}
.fiche--objet .nuancier .formats--deux input:checked + .format {
border-color: var(--encre);
box-shadow: inset 0 0 0 1px var(--encre);
background: var(--lin);
}
.fiche--objet .nuancier .formats--deux input:focus-visible + .format {
outline: 2px solid var(--encre);
outline-offset: 3px;
}
.fiche--objet .nuancier .formats--deux .format strong,
.fiche--objet .nuancier .formats--deux .format--cadre strong {
position: static;
width: auto;
height: auto;
overflow: visible;
clip: auto;
font-family: var(--sans);
font-size: 16px;
font-weight: 400;
line-height: 1.4;
white-space: nowrap;
}
.fiche--objet .nuancier .formats--deux .format__apercu,
.fiche--objet .nuancier .formats--deux .format__carre,
.fiche--objet .nuancier .formats--deux .format__detail {
display: none;
}
.fiche--objet .nuancier .formats--deux [data-prix-taille],
.fiche--objet .nuancier .formats--deux [data-supplement-version] {
display: inline;
font-size: 14px;
color: var(--gris);
}
.fiche--objet .nuancier .option:not(:has(input[name='version'], input[name='cable'])) .option__detail {
display: none;
}
.fiche--objet .nuancier .option__detail:not(:empty) {
display: block;
margin-top: 12px;
font-size: 14px;
line-height: 1.55;
color: var(--encre-douce);
}
.fiche--objet .nuancier .formats--cadres:not(.formats--deux) {
display: flex;
gap: 18px;
}
.fiche--objet .nuancier input[name='cadre'] + .format .format__apercu {
display: block;
width: 30px;
height: 30px;
margin: 0;
overflow: hidden;
border-radius: 50%;
}
.fiche--objet .nuancier input[name='cadre'] + .format .format__apercu img {
display: none;
}
.fiche--objet .nuancier input[name='cadre'][value='noir'] + .format .format__apercu {
background: #1b1817;
}
.fiche--objet .nuancier input[name='cadre'][value='bois'] + .format .format__apercu {
background: linear-gradient(135deg, #c79a6b, #8d6643);
}
.fiche--objet .nuancier input[name='cadre'][value='dore'] + .format .format__apercu {
background: linear-gradient(135deg, #e3c47f, #a8813a);
}
.fiche--objet .option .assurances {
margin: 14px 0 0;
border: 0;
}
.fiche--objet .option .assurances li {
padding: 0;
border: 0;
font-size: 13px;
line-height: 1.5;
color: var(--gris);
}
.fiche--objet .option .assurances svg {
display: none;
}
.fiche--objet .galerie > .fiche__commande {
order: 5;
margin: 0 calc(-1 * var(--marge));
padding: 30px var(--marge) 28px;
}
.fiche--objet .fiche__commande .ouverture__date {
font-size: 15px;
letter-spacing: 0.16em;
}
.fiche--objet .galerie > .fiche__recit {
order: 8;
margin: 52px calc(-1 * var(--marge)) 0;
}
.fiche__recit img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 4 / 5;
object-fit: cover;
}
.fiche__recit figcaption {
padding: 12px var(--marge) 0;
font-size: 11px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--gris);
}
.fiche--objet .fiche__infos .onglets {
margin-top: 34px;
}
}
.fiche__commande {
margin: 30px 0 0;
padding: 28px 26px 26px;
background: var(--lin);
}
.fiche__commande .ouverture {
margin: 0;
padding: 0;
border: 0;
}
.fiche__commande .ouverture__surtitre {
margin: 0;
font-size: 12px;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--gris);
}
.fiche__commande .ouverture__date {
margin: 8px 0 0;
font-size: 17px;
letter-spacing: 0.18em;
}
.fiche__commande .fiche__reception {
margin: 6px 0 0;
font-size: 14px;
line-height: 1.55;
color: var(--encre-douce);
}
.fiche__commande .fiche__achat {
margin: 22px 0 0;
}
.fiche__commande > .fiche__achat:first-child {
margin-top: 0;
}
.fiche__commande .fiche__expedition {
margin-top: 18px;
}
.fiche__commande .fiche__promesses {
display: block;
margin: 24px 0 0;
padding: 20px 0 0;
border-top: 1px solid rgba(20, 17, 16, 0.16);
list-style: none;
}
.fiche__promesses li {
position: relative;
padding-left: 20px;
font-size: 14px;
line-height: 1.55;
color: var(--encre);
}
.fiche__promesses li + li {
margin-top: 8px;
}
.fiche__promesses li::before {
content: '';
position: absolute;
left: 0;
top: 0.78em;
width: 9px;
height: 1px;
background: var(--encre);
}
@media (max-width: 360px) {
.fiche--objet .fiche__commande .ouverture__date {
font-size: 14px;
letter-spacing: 0.14em;
}
}
.section.lampes-conseils {
padding-bottom: 0;
}
.lampes-conseils__tete {
display: flex;
justify-content: space-between;
align-items: flex-end;
gap: 32px;
margin-bottom: clamp(36px, 4vw, 60px);
}
.lampes-conseils__tete h2 em {
display: block;
margin-top: 8px;
font-size: 0.72em;
line-height: 1.2;
}
.lampes-conseils__tete a {
flex: none;
font-size: 14px;
}
.lampes-conseils__frise {
display: grid;
grid-template-columns: repeat(4, 1fr);
background: var(--nuit);
}
.lampes-conseils__article {
position: relative;
display: block;
overflow: hidden;
aspect-ratio: 4 / 5.4;
color: var(--ivoire);
}
.lampes-conseils__article:focus-visible {
outline-color: var(--ivoire);
outline-offset: -4px;
}
.lampes-conseils__article img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 1.8s var(--lent);
}
.lampes-conseils__article:hover img {
transform: scale(1.04);
}
.lampes-conseils__article::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(12, 10, 9, 0.97) 0, rgba(12, 10, 9, 0.84) 92px, rgba(12, 10, 9, 0.62) 132px, rgba(12, 10, 9, 0) 236px);
}
.lampes-conseils__article h3 {
position: absolute;
left: clamp(16px, 2vw, 28px);
right: clamp(16px, 2vw, 28px);
bottom: clamp(16px, 2vw, 28px);
z-index: 1;
min-height: 92px;
font-size: 13px;
line-height: 1.4;
letter-spacing: 0.16em;
}
.lampes-conseils__article h3 em {
display: block;
margin-top: 4px;
font-size: 21px;
line-height: 1.25;
color: var(--ivoire);
}
@media (max-width: 960px) {
.lampes-conseils__frise {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 760px) {
.lampes-conseils__tete {
display: block;
}
.lampes-conseils__tete a {
display: inline-block;
margin-top: 18px;
}
.lampes-conseils__article {
aspect-ratio: 4 / 6.2;
}
.lampes-conseils__article h3 {
left: 14px;
right: 12px;
bottom: 16px;
min-height: 0;
font-size: 11.5px;
letter-spacing: 0.13em;
}
.lampes-conseils__article h3 em {
font-size: 18px;
}
}
@media (prefers-reduced-motion: reduce) {
.lampes-conseils__article img {
transition: none;
}
}
