/* MORFA Paris : mises en page propres à chaque page. Cotes en px de maquette × var(--u). */

/* Accueil */
.page--accueil .entete--video .barre-haut { opacity: .96; }
.chouchous { padding-top: calc(28 * var(--u)); padding-bottom: calc(40 * var(--u)); }
.chouchous .produit__texte { padding-top: calc(9 * var(--u)); }

.concept { padding: calc(27 * var(--u)) 0 calc(36 * var(--u)); color: var(--rose); }
.concept__titre { color: var(--rose); margin-bottom: calc(26 * var(--u)); }
.concept__numero { font-family: var(--f-titre); font-size: calc(48 * var(--u)); line-height: calc(67 * var(--u)); margin-bottom: calc(7 * var(--u)); }
.concept__colonnes { gap: calc(21 * var(--u)); }
.concept__colonnes > div { padding-right: calc(10 * var(--u)); }
.concept__cta { margin-top: calc(50 * var(--u)); }
.concept .btn--rose { color: var(--creme); }

.look { padding-top: calc(32 * var(--u)); padding-bottom: calc(5 * var(--u)); }
.look__bande { width: 100%; overflow: hidden; background: #e6cfd2; }
.look__visuel { position: relative; width: 100%; max-width: var(--largeur); margin: 0 auto; height: calc(328 * var(--u)); }
.look__visuel > img { position: absolute; left: calc(-14 * var(--u)); top: 0; height: 100%; width: auto; max-width: none; }
.look__point { position: absolute; width: calc(31 * var(--u)); height: calc(31 * var(--u)); transition: transform .2s; }
.look__point:hover { transform: scale(1.15); }
.look__point img { width: 100%; height: 100%; }
.look__btn { position: absolute; bottom: calc(20 * var(--u)); min-width: calc(124 * var(--u)); padding: 0 calc(12 * var(--u)); }

.ambiance { padding-top: calc(16 * var(--u)); padding-bottom: calc(14 * var(--u)); }
.ambiance .titre-section { margin-bottom: calc(22 * var(--u)); }
.ambiance__cartes { gap: calc(21 * var(--u)); }
.ambiance__carte {
  display: flex; align-items: center; justify-content: center;
  aspect-ratio: 170 / 230; border-radius: calc(16 * var(--u));
  font-family: var(--f-titre); font-style: italic; font-size: calc(24 * var(--u)); line-height: calc(33 * var(--u));
  transition: transform .2s;
}
.ambiance__carte:hover { transform: translateY(-3px); }
.ambiance__carte.carte--bordeaux { color: var(--fond); }
.ambiance__carte.carte--bleu { color: var(--creme); }

.reassurance { padding: calc(29 * var(--u)) 0; }
.reassurance__liste { display: grid; grid-template-columns: repeat(4, 1fr); text-align: center; color: var(--creme); font-family: var(--f-titre); font-size: calc(13 * var(--u)); line-height: calc(18 * var(--u)); }

.frustration { padding: calc(45 * var(--u)) 0 calc(35 * var(--u)); }
.frustration__contenu { position: relative; }
.frustration__titre { color: var(--creme); margin-bottom: calc(50 * var(--u)); font-size: calc(26 * var(--u)); line-height: calc(31 * var(--u)); }
.frustration__phrase { color: var(--creme); font-size: calc(31 * var(--u)); line-height: calc(43 * var(--u)); text-align: center; max-width: calc(500 * var(--u)); margin: 0 auto; }
.frustration__sous { font-size: calc(14.3 * var(--u)); line-height: calc(20 * var(--u)); text-align: center; margin-top: calc(4 * var(--u)); }
.frustration__cta { margin-top: calc(30 * var(--u)); }
.frustration .btn--bleu { color: var(--creme); }
.frustration__doodle { position: absolute; pointer-events: none; }
.frustration__doodle--culotte { left: calc(79 * var(--u)); top: calc(98 * var(--u)); width: calc(104 * var(--u)); }
.frustration__doodle--coeur { left: calc(470 * var(--u)); top: calc(50 * var(--u)); width: calc(64 * var(--u)); }
.frustration__doodle--guillemets { left: calc(356 * var(--u)); top: calc(51 * var(--u)); width: calc(90 * var(--u)); }
.frustration__doodle--machine { left: calc(608 * var(--u)); top: calc(62 * var(--u)); width: calc(109 * var(--u)); }
.frustration__doodle--curseur { left: calc(479 * var(--u)); top: calc(117 * var(--u)); width: calc(123 * var(--u)); }

.club { padding-top: calc(20 * var(--u)); padding-bottom: calc(96 * var(--u)); }
.club__texte { font-size: calc(12.7 * var(--u)); line-height: calc(17 * var(--u)); margin: calc(18 * var(--u)) 0 calc(27 * var(--u)); }
.club__formulaire { max-width: calc(560 * var(--u)); margin: 0 auto; }
.club__champ { width: calc(310 * var(--u)); margin: 0 auto; text-align: left; }
.club__mention { font-size: calc(14 * var(--u)); line-height: calc(19 * var(--u)); margin: calc(20 * var(--u)) 0 calc(27 * var(--u)); }
.club__bouton { min-width: calc(140 * var(--u)); height: calc(46 * var(--u)); }

/* Boutique */
.boutique__tete { padding-top: calc(6 * var(--u)); }
.boutique__tete .titre-page { font-size: calc(36 * var(--u)); line-height: calc(50 * var(--u)); margin-top: calc(4 * var(--u)); }
.boutique__chapeau { margin: calc(3 * var(--u)) 0 calc(15 * var(--u)); }
.boutique__filtres { display: flex; justify-content: space-between; align-items: center; gap: calc(16 * var(--u)); margin: calc(21 * var(--u)) 0 calc(18 * var(--u)); font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); }
.boutique__filtres strong { font-weight: 700; }
.filtre { position: relative; display: inline-block; margin-right: calc(12 * var(--u)); }
.filtre > button { font-weight: 700; }
.filtre > button::after { content: ' ▾'; }
.filtre__liste { display: none; position: absolute; top: 100%; left: 0; z-index: 5; background: var(--blanc); border: 1px solid var(--rose); border-radius: calc(8 * var(--u)); padding: calc(6 * var(--u)) 0; min-width: calc(140 * var(--u)); }
.filtre.ouvert .filtre__liste { display: block; }
.filtre__liste button { display: block; width: 100%; text-align: left; padding: calc(5 * var(--u)) calc(14 * var(--u)); }
.filtre__liste button:hover, .filtre__liste button.actif { background: var(--fond); font-weight: 700; }
.boutique__grille { margin-top: calc(25 * var(--u)); row-gap: calc(70 * var(--u)); }
.boutique__grille .produit__texte { padding-top: calc(8 * var(--u)); }
.boutique__plus { text-align: center; margin: calc(80 * var(--u)) 0 calc(60 * var(--u)); }
.boutique__vide { padding: calc(60 * var(--u)) 0; text-align: center; }
.pas-sure { padding: calc(18 * var(--u)) 0 calc(35 * var(--u)); text-align: center; }
.pas-sure .titre-section--34 { margin-bottom: calc(2 * var(--u)); }
.pas-sure p { font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); margin-bottom: calc(26 * var(--u)); }

/* Fiche produit */
.fiche { display: grid; grid-template-columns: calc(361 * var(--u)) 1fr; gap: calc(46 * var(--u)); padding-top: calc(16 * var(--u)); }
.fiche__galerie { margin-left: calc(7 * var(--u)); }
.fiche__principale { aspect-ratio: 361 / 463; overflow: hidden; background: var(--rose-pale); }
.fiche__principale img { width: 100%; height: 100%; object-fit: cover; }
.fiche__vignettes { display: flex; gap: calc(12 * var(--u)); margin: calc(27 * var(--u)) 0 0 calc(-7 * var(--u)); }
.fiche__vignettes button { width: calc(86 * var(--u)); height: calc(86 * var(--u)); overflow: hidden; border: 2px solid transparent; }
.fiche__vignettes button.actif { border-color: var(--bordeaux); }
.fiche__vignettes img { width: 100%; height: 100%; object-fit: cover; }
.fiche__infos .titre-section--30 { margin-top: calc(-3 * var(--u)); }
.fiche__sous { font-style: italic; margin-top: calc(2 * var(--u)); }
.fiche__prix { font-size: calc(20 * var(--u)); line-height: calc(28 * var(--u)); margin-top: calc(7 * var(--u)); }
.fiche__description { margin-top: calc(12 * var(--u)); max-width: calc(304 * var(--u)); }
.fiche__libelle { font-family: var(--f-titre); font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); text-transform: uppercase; margin-top: calc(15 * var(--u)); }
.fiche__couleurs { margin-top: calc(8 * var(--u)); }
.fiche__ligne { display: flex; justify-content: space-between; align-items: baseline; margin-top: calc(19 * var(--u)); max-width: calc(304 * var(--u)); }
.fiche__ligne .champ-libelle { margin: 0; text-transform: uppercase; }
.fiche__ligne a { font-size: calc(12 * var(--u)); text-decoration: underline; }
.fiche .choix { margin-top: calc(9 * var(--u)); }
.fiche__achat { display: flex; gap: calc(8 * var(--u)); margin-top: calc(28 * var(--u)); align-items: center; }
.fiche__achat .btn { min-width: calc(248 * var(--u)); height: calc(50 * var(--u)); font-family: var(--f-arimo); }
.fiche__coeur { width: calc(48 * var(--u)); height: calc(50 * var(--u)); border-radius: 50%; background: var(--bordeaux); display: inline-flex; align-items: center; justify-content: center; }
.fiche__coeur img { width: calc(20 * var(--u)); }
.fiche__coeur.actif img { filter: sepia(1) saturate(5) hue-rotate(300deg); }
.fiche__services { margin-top: calc(14 * var(--u)); font-family: var(--f-arimo); font-size: calc(10 * var(--u)); line-height: calc(14 * var(--u)); }
.fiche__accordeon { margin-top: calc(22 * var(--u)); max-width: calc(304 * var(--u)); }
.fiche__accordeon summary { font-family: var(--f-titre); font-weight: 400; padding: calc(12 * var(--u)) 0 calc(14 * var(--u)); }
.positions { padding: calc(32 * var(--u)) 0 calc(36 * var(--u)); text-align: center; }
.positions__titre { font-family: var(--f-arimo); font-size: calc(28 * var(--u)); line-height: calc(39 * var(--u)); color: var(--fond); font-weight: 700; margin-bottom: calc(24 * var(--u)); }
.positions__cartes { gap: calc(21 * var(--u)); }
.positions__carte { background: var(--rose); border-radius: calc(14 * var(--u)); padding: calc(11 * var(--u)) calc(11 * var(--u)) calc(10 * var(--u)); }
.positions__carte img { width: 100%; aspect-ratio: 147 / 188; object-fit: cover; }
.positions__note { margin-top: calc(50 * var(--u)); font-family: var(--f-arimo); font-size: calc(10 * var(--u)); color: var(--bordeaux); }
.pourquoi { display: grid; grid-template-columns: calc(370 * var(--u)) 1fr; gap: calc(24 * var(--u)); padding: calc(50 * var(--u)) 0 calc(40 * var(--u)); align-items: start; }
.pourquoi__photo { aspect-ratio: 320 / 280; overflow: hidden; justify-self: end; width: calc(320 * var(--u)); }
.pourquoi__photo img { width: 100%; height: 100%; object-fit: cover; }
.pourquoi h2 { margin-bottom: calc(22 * var(--u)); }
.pourquoi p { margin-top: 0; }
.pourquoi .espace { margin-top: calc(19 * var(--u)); }
.complete { padding-bottom: calc(40 * var(--u)); }
.complete .titre-section { margin-bottom: calc(22 * var(--u)); }
.avis { text-align: center; padding: calc(30 * var(--u)) 0 calc(50 * var(--u)); }
.avis p { margin: calc(20 * var(--u)) 0 calc(30 * var(--u)); }

/* Trouve ta taille */
.taille__tete { padding-top: calc(4 * var(--u)); }
.taille__chapeau { max-width: calc(600 * var(--u)); margin-top: calc(4 * var(--u)); }
.systeme { padding: calc(48 * var(--u)) 0 calc(40 * var(--u)); }
.systeme .sous-titre--18 { text-transform: uppercase; margin-bottom: calc(17 * var(--u)); }
.systeme__cartes { gap: calc(20 * var(--u)); }
.systeme__cartes .carte { min-height: calc(170 * var(--u)); border-radius: calc(16 * var(--u)); padding: calc(23 * var(--u)) calc(20 * var(--u)); }
.systeme__cartes .carte h3 { font-family: var(--f-texte); font-size: calc(16 * var(--u)); line-height: calc(22 * var(--u)); font-weight: 700; margin-bottom: calc(18 * var(--u)); }
.mesurer { padding: calc(22 * var(--u)) 0 calc(40 * var(--u)); }
.mesurer .titre-section { margin-bottom: calc(22 * var(--u)); }
.mesurer__etapes { display: grid; grid-template-columns: 1fr 1fr; gap: calc(40 * var(--u)); }
.mesurer__etape { display: grid; grid-template-columns: calc(150 * var(--u)) 1fr; gap: calc(15 * var(--u)); }
.mesurer__dessin { height: calc(200 * var(--u)); border-radius: calc(16 * var(--u)); background: var(--creme); display: flex; align-items: center; justify-content: center; font-size: calc(12 * var(--u)); }
.mesurer__etape h3 { font-weight: 400; font-size: calc(13 * var(--u)); line-height: calc(19 * var(--u)); margin: calc(18 * var(--u)) 0; }
.mesurer__conseils { text-align: center; font-weight: 700; font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); margin-top: calc(44 * var(--u)); }
.calcul { padding: calc(42 * var(--u)) 0 calc(40 * var(--u)); text-align: center; }
.calcul .titre-section { margin-bottom: calc(38 * var(--u)); }
.calcul__champs { display: grid; grid-template-columns: repeat(2, calc(270 * var(--u))); gap: calc(20 * var(--u)); justify-content: center; text-align: left; }
.calcul__champs .champ { border: calc(1.5 * var(--u)) solid var(--rose); }
.calcul__bouton { margin-top: calc(25 * var(--u)); }
.calcul__resultat { max-width: calc(400 * var(--u)); margin: calc(26 * var(--u)) auto 0; background: var(--rose); border-radius: calc(16 * var(--u)); padding: calc(13 * var(--u)) calc(20 * var(--u)) calc(14 * var(--u)); }
.calcul__resultat .taille { font-size: calc(24 * var(--u)); line-height: calc(33 * var(--u)); font-weight: 700; }
.calcul__resultat .bande { font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); margin-top: calc(11 * var(--u)); }
.guide { padding: calc(30 * var(--u)) 0 calc(80 * var(--u)); text-align: center; }
.guide__titre { font-family: var(--f-texte); font-weight: 700; font-size: calc(26 * var(--u)); line-height: calc(36 * var(--u)); margin-bottom: calc(49 * var(--u)); }
.guide__cadre { max-width: calc(629 * var(--u)); margin: 0 auto; background: var(--creme); border-radius: calc(16 * var(--u)); padding: calc(24 * var(--u)); min-height: calc(298 * var(--u)); }
.guide table { width: 100%; border-collapse: collapse; font-size: calc(13 * var(--u)); }
.guide th, .guide td { padding: calc(8 * var(--u)) calc(6 * var(--u)); border-bottom: 1px solid #ead7d9; }
.guide th { font-family: var(--f-titre); font-weight: 400; text-transform: uppercase; font-size: calc(12 * var(--u)); }
.guide caption { font-size: calc(12 * var(--u)); margin-bottom: calc(10 * var(--u)); font-weight: 700; }
.entre-deux { padding: calc(27 * var(--u)) 0 calc(40 * var(--u)); text-align: center; }
.entre-deux p { font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); color: var(--rose); margin: calc(3 * var(--u)) 0 calc(31 * var(--u)); }
.entre-deux .btn + .btn { margin-left: calc(20 * var(--u)); }
.faq { padding: calc(38 * var(--u)) 0 calc(50 * var(--u)); }
.faq .titre-section, .faq .sous-titre { margin-bottom: calc(19 * var(--u)); }
.faq .sous-titre { text-transform: uppercase; }

/* Essayage */
.essayage__tete { padding-top: calc(16 * var(--u)); }
.essayage__badge { display: inline-block; height: calc(24 * var(--u)); padding: 0 calc(20 * var(--u)); border-radius: calc(12 * var(--u)); background: var(--rose); font-size: calc(12 * var(--u)); line-height: calc(24 * var(--u)); font-weight: 700; }
.essayage__tete .titre-page { margin-top: calc(10 * var(--u)); }
.essayage__chapeau { max-width: calc(600 * var(--u)); margin: calc(3 * var(--u)) 0 calc(28 * var(--u)); }
.confidentialite { padding: calc(18 * var(--u)) 0; text-align: center; font-size: calc(12 * var(--u)); line-height: calc(16 * var(--u)); font-weight: 700; }
.avant { padding: calc(27 * var(--u)) 0 calc(45 * var(--u)); }
.avant .sous-titre { text-transform: uppercase; margin-bottom: calc(14 * var(--u)); }
.avant__cartes { gap: calc(21 * var(--u)); }
.avant__cartes .carte { min-height: calc(90 * var(--u)); border-radius: calc(16 * var(--u)); padding: calc(22 * var(--u)) calc(15 * var(--u)); font-size: calc(13 * var(--u)); line-height: calc(18 * var(--u)); }
.cabine { display: grid; grid-template-columns: calc(430 * var(--u)) calc(264 * var(--u)); gap: calc(20 * var(--u)); }
.cabine__panneau { border-radius: calc(16 * var(--u)); height: calc(520 * var(--u)); position: relative; overflow: hidden; }
.cabine__camera { background: var(--bordeaux); color: var(--creme); }
.cabine__avatar { background: var(--blanc); border: calc(2 * var(--u)) solid var(--rose); color: var(--bordeaux); }
.cabine__titre { position: absolute; top: calc(19 * var(--u)); left: 0; right: 0; text-align: center; font-family: var(--f-titre); font-size: calc(12 * var(--u)); text-transform: uppercase; z-index: 2; }
.cabine__camera .cabine__titre { color: var(--rose); }
.cabine__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scaleX(-1); display: none; }
.cabine__camera.active .cabine__video { display: block; }
.cabine__silhouette { position: absolute; left: 50%; top: calc(65 * var(--u)); transform: translateX(-50%); width: calc(130 * var(--u)); height: calc(385 * var(--u)); z-index: 2; pointer-events: none; }
.cabine__silhouette .tete { width: calc(70 * var(--u)); height: calc(70 * var(--u)); border-radius: 50%; border: calc(2 * var(--u)) solid var(--creme); margin: 0 auto; }
.cabine__silhouette .corps { width: calc(130 * var(--u)); height: calc(260 * var(--u)); border-radius: calc(65 * var(--u)) / calc(60 * var(--u)); border: calc(2 * var(--u)) solid var(--creme); margin-top: calc(10 * var(--u)); }
.cabine__consigne { position: absolute; left: 0; right: 0; top: calc(421 * var(--u)); text-align: center; font-family: var(--f-arimo); font-size: calc(12 * var(--u)); z-index: 2; }
.cabine__camera .cabine__consigne { color: var(--creme); }
.cabine__action { position: absolute; left: 0; right: 0; top: calc(460 * var(--u)); text-align: center; z-index: 2; }
.cabine__erreur { position: absolute; left: calc(20 * var(--u)); right: calc(20 * var(--u)); top: calc(380 * var(--u)); text-align: center; font-size: calc(12 * var(--u)); display: none; z-index: 3; }
.cabine__erreur.visible { display: block; }
.cabine__personnage { position: absolute; left: 50%; top: calc(50 * var(--u)); transform: translateX(-50%); height: calc(330 * var(--u)); width: calc(200 * var(--u)); }
.cabine__personnage img { position: absolute; }
.cabine__personnage .tenue { left: 50%; bottom: 0; height: 100%; width: auto; transform: translateX(-50%); }
.cabine__personnage .tete-img { left: 50%; top: calc(-6 * var(--u)); height: calc(78 * var(--u)); width: auto; transform: translateX(-50%); }
.cabine__personnage .piece { left: 50%; top: calc(74 * var(--u)); width: calc(70 * var(--u)); transform: translateX(-50%); border-radius: calc(8 * var(--u)); opacity: .92; }
.cabine__legende { position: absolute; left: 0; right: 0; top: calc(374 * var(--u)); text-align: center; font-family: var(--f-arimo); font-size: calc(11 * var(--u)); line-height: calc(15 * var(--u)); font-style: italic; z-index: 2; }
.cabine__vues { position: absolute; left: 0; right: 0; top: calc(465 * var(--u)); display: flex; justify-content: center; gap: calc(6 * var(--u)); z-index: 2; }
.cabine__vues button { width: calc(70 * var(--u)); height: calc(30 * var(--u)); border-radius: calc(15 * var(--u)); border: calc(1.5 * var(--u)) solid var(--bordeaux); font-family: var(--f-arimo); font-size: calc(11 * var(--u)); font-weight: 700; background: var(--blanc); color: var(--bordeaux); }
.cabine__vues button.actif { background: var(--bordeaux); color: var(--creme); }
.cabine__choix-avatar { position: absolute; left: 0; right: 0; top: calc(405 * var(--u)); display: flex; justify-content: center; gap: calc(6 * var(--u)); z-index: 2; }
.cabine__choix-avatar button { width: calc(30 * var(--u)); height: calc(30 * var(--u)); border-radius: 50%; overflow: hidden; border: calc(1.5 * var(--u)) solid var(--rose); background: var(--blanc); }
.cabine__choix-avatar button.actif { border-color: var(--bordeaux); }
.cabine__choix-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.essayage__lien { text-align: center; font-family: var(--f-arimo); font-size: calc(11 * var(--u)); margin-top: calc(10 * var(--u)); text-decoration: underline; display: block; }
.pieces { padding: calc(38 * var(--u)) 0 calc(45 * var(--u)); }
.pieces .sous-titre { text-transform: uppercase; margin-bottom: calc(15 * var(--u)); }
.pieces__liste { display: flex; gap: calc(20 * var(--u)); }
.pieces__liste button { width: calc(118 * var(--u)); height: calc(118 * var(--u)); padding: calc(4 * var(--u)); border: calc(2 * var(--u)) solid transparent; border-radius: calc(12 * var(--u)); }
.pieces__liste button.actif { border-color: var(--bordeaux); }
.pieces__liste img { width: 100%; height: 100%; object-fit: cover; }
.mesures { padding: calc(22 * var(--u)) 0 calc(38 * var(--u)); text-align: center; }
.mesures .titre-section--28 { margin-bottom: calc(6 * var(--u)); }
.mesures__intro { margin-bottom: calc(27 * var(--u)); }
.mesures__champs { display: grid; grid-template-columns: repeat(2, calc(280 * var(--u))); gap: calc(50 * var(--u)) calc(40 * var(--u)); justify-content: center; text-align: left; }
.mesures__bouton { margin-top: calc(30 * var(--u)); }
.mesures__note { margin-top: calc(20 * var(--u)); font-size: calc(12 * var(--u)); }
.resultat { padding: calc(30 * var(--u)) 0 calc(36 * var(--u)); }
.resultat__carte { max-width: calc(560 * var(--u)); margin: 0 auto; background: var(--blanc); border: calc(1.5 * var(--u)) solid var(--bordeaux); border-radius: calc(16 * var(--u)); text-align: center; padding: calc(17 * var(--u)) calc(20 * var(--u)) calc(24 * var(--u)); }
.resultat__libelle { font-size: calc(12 * var(--u)); font-weight: 700; color: var(--rose); text-transform: uppercase; }
.resultat__taille { font-size: calc(46 * var(--u)); line-height: calc(64 * var(--u)); font-weight: 700; }
.resultat__bande { margin: calc(7 * var(--u)) 0 calc(16 * var(--u)); }

/* Notre histoire */
.histoire__heros { position: relative; }
.histoire__citation { padding: calc(27 * var(--u)) var(--marge) calc(20 * var(--u)); text-align: center; }
.histoire__citation .titre-section--28 { max-width: calc(678 * var(--u)); margin: 0 auto; }
.histoire__signature { font-size: calc(25.3 * var(--u)); line-height: calc(35 * var(--u)); margin-top: calc(0 * var(--u)); }
.chapitre { display: grid; grid-template-columns: calc(440 * var(--u)) 1fr; gap: calc(24 * var(--u)); padding: calc(36 * var(--u)) 0 calc(40 * var(--u)); align-items: start; }
.chapitre--inverse { grid-template-columns: calc(336 * var(--u)) 1fr; }
.chapitre__numero { font-family: var(--f-titre); font-size: calc(12 * var(--u)); text-transform: uppercase; margin-bottom: calc(12 * var(--u)); }
.chapitre h2 { margin-bottom: calc(24 * var(--u)); }
.chapitre p + p { margin-top: calc(22 * var(--u)); }
.chapitre__illustration { justify-self: end; }
.chapitre__illustration img { width: 100%; }
.chapitre--1 { display: block; position: relative; min-height: calc(487 * var(--u)); padding: calc(36 * var(--u)) 0 0; }
.chapitre--1 .chapitre__texte { width: calc(440 * var(--u)); position: relative; z-index: 1; }
.chapitre--1 .chapitre__illustration { position: absolute; left: calc(397 * var(--u)); top: 0; width: calc(474 * var(--u)); height: calc(487 * var(--u)); overflow: hidden; }
.chapitre--1 .chapitre__illustration img { position: absolute; left: calc(-20 * var(--u)); top: calc(-156 * var(--u)); width: calc(515 * var(--u)); max-width: none; }
.chapitre--2 { padding: 0; grid-template-columns: calc(336 * var(--u)) 1fr; gap: calc(44 * var(--u)); align-items: center; }
.chapitre--2 .chapitre__texte { padding: calc(49 * var(--u)) var(--marge) calc(49 * var(--u)) 0; }
.chapitre--3 { display: block; text-align: center; padding: calc(49 * var(--u)) 0 calc(60 * var(--u)); }
.chapitre--3 h2 { margin-bottom: calc(66 * var(--u)); }
.chiffres { display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(21 * var(--u)); }
.chiffres strong { display: block; font-size: calc(40 * var(--u)); line-height: calc(56 * var(--u)); font-weight: 700; }
.chiffres span { display: block; margin-top: calc(17 * var(--u)); font-size: calc(13 * var(--u)); line-height: calc(18 * var(--u)); }
.engagements { padding: calc(49 * var(--u)) 0 calc(60 * var(--u)); text-align: center; }
.engagements .chapitre__numero { color: var(--bordeaux); margin-bottom: calc(7 * var(--u)); }
.engagements h2 { margin-bottom: calc(28 * var(--u)); }
.engagements p { max-width: calc(560 * var(--u)); margin: 0 auto calc(65 * var(--u)); }
.engagements .btn + .btn { margin-left: calc(20 * var(--u)); }
.engagements .btn--bleu { color: var(--bordeaux); }
.chapitre--5 { display: block; position: relative; min-height: calc(450 * var(--u)); padding: calc(79 * var(--u)) 0 0; }
.chapitre--5 .chapitre__texte { width: calc(460 * var(--u)); position: relative; z-index: 1; }
.chapitre--5 .chapitre__illustration { position: absolute; left: calc(372 * var(--u)); top: calc(50 * var(--u)); width: calc(422 * var(--u)); height: calc(401 * var(--u)); overflow: hidden; }
.chapitre--5 .chapitre__illustration img { position: absolute; left: 0; top: calc(-197 * var(--u)); width: calc(525 * var(--u)); max-width: none; }
.prete { padding: calc(29 * var(--u)) 0 calc(51 * var(--u)); text-align: center; }
.prete .titre-section--28 { margin-bottom: calc(27 * var(--u)); }
.prete .btn + .btn { margin-left: calc(20 * var(--u)); }

/* Pages secondaires */
.panier__ligne { display: grid; grid-template-columns: calc(80 * var(--u)) 1fr auto; gap: calc(16 * var(--u)); align-items: center; padding: calc(12 * var(--u)) 0; border-bottom: 1px solid var(--rose); }
.panier__ligne img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.panier__total { text-align: right; margin-top: calc(16 * var(--u)); font-weight: 700; }
.formulaire { display: grid; gap: calc(14 * var(--u)); max-width: calc(400 * var(--u)); }

@media (max-width: 760px) {
  .concept__colonnes, .reassurance__liste, .chiffres { grid-template-columns: 1fr; }
  .reassurance__liste li + li { margin-top: 10px; }
  .look__visuel { height: 42vw; }
  .look__visuel > img { left: 50%; transform: translateX(-50%); }
  .look__btn { display: none; }
  .frustration__doodle { display: none; }
  .club__champ { width: 100%; }
  .fiche, .pourquoi, .mesurer__etapes, .cabine, .chapitre, .chapitre--2, .chapitre--5 { grid-template-columns: 1fr; }
  .pourquoi__photo { width: 100%; justify-self: stretch; }
  .calcul__champs, .mesures__champs { grid-template-columns: 1fr; }
  .cabine__panneau { height: 70vw; min-height: 360px; }
  .chapitre--1, .chapitre--5 { min-height: 0; padding-top: 24px; }
  .chapitre--1 .chapitre__texte, .chapitre--5 .chapitre__texte { width: 100%; }
  .chapitre--1 .chapitre__illustration, .chapitre--5 .chapitre__illustration { position: static; width: 100%; height: auto; margin-top: 16px; }
  .chapitre--1 .chapitre__illustration img, .chapitre--5 .chapitre__illustration img { position: static; width: 100%; }
  .chapitre--2 .chapitre__texte { padding: 24px 0; }
  .pieces__liste { flex-wrap: wrap; }
  .boutique__filtres { flex-direction: column; align-items: flex-start; gap: 8px; }
  .boutique__filtres > div { display: flex; flex-wrap: wrap; gap: 6px 10px; }
  .filtre { margin-right: 0; }
  .entre-deux .btn + .btn, .engagements .btn + .btn, .prete .btn + .btn { margin-left: 0; margin-top: 12px; }
}

/* Accueil : blocs de la spécification absents de la maquette dessinée */
.realite { padding-top: calc(44 * var(--u)); padding-bottom: calc(10 * var(--u)); }
.realite .titre-section { margin-bottom: calc(26 * var(--u)); }
.realite__cotes { gap: calc(21 * var(--u)); }
.realite__cote { display: block; }
.realite__photo { display: block; aspect-ratio: 366 / 240; overflow: hidden; border-radius: calc(16 * var(--u)); background: var(--rose-pale); }
.realite__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.realite__cote:hover .realite__photo img { transform: scale(1.03); }
.realite__legende { display: block; padding: calc(12 * var(--u)) calc(4 * var(--u)) 0; font-size: calc(13 * var(--u)); line-height: calc(19 * var(--u)); }
.realite__legende .libelle { display: block; margin-bottom: calc(4 * var(--u)); }

.creatif { display: block; position: relative; height: calc(300 * var(--u)); overflow: hidden; margin-top: calc(30 * var(--u)); background: var(--rose-pale); }
.creatif__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; transition: transform .6s; }
.creatif:hover .creatif__photo { transform: scale(1.02); }
.creatif__texte { position: absolute; left: 0; right: 0; top: 0; bottom: 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: calc(10 * var(--u)); color: var(--creme); text-shadow: 0 2px 18px rgba(80, 20, 30, .45); }
.creatif__titre { font-size: calc(44 * var(--u)); line-height: calc(52 * var(--u)); font-style: italic; }
.creatif__sous { font-size: calc(14 * var(--u)); line-height: calc(21 * var(--u)); max-width: calc(380 * var(--u)); }
.creatif .btn { text-shadow: none; margin-top: calc(6 * var(--u)); }

.surtitre { font-family: var(--f-script); font-size: calc(24 * var(--u)); line-height: calc(30 * var(--u)); color: var(--rose); margin-bottom: calc(-4 * var(--u)); }

.instagram { padding-top: calc(40 * var(--u)); padding-bottom: calc(10 * var(--u)); }
.instagram__phrase { max-width: calc(560 * var(--u)); margin: calc(10 * var(--u)) auto calc(24 * var(--u)); }
.instagram__grille { display: grid; grid-template-columns: repeat(6, 1fr); gap: calc(8 * var(--u)); margin-bottom: calc(26 * var(--u)); }
.instagram__grille a { display: block; aspect-ratio: 1; overflow: hidden; background: var(--rose-pale); }
.instagram__grille img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.instagram__grille a:hover img { transform: scale(1.05); }

.faq-accueil { padding: calc(36 * var(--u)) 0 calc(44 * var(--u)); }
.faq-accueil .section__tete { margin-bottom: calc(18 * var(--u)); }

.paiements { padding: calc(30 * var(--u)) 0 calc(40 * var(--u)); }
.paiements__titre { margin-bottom: calc(14 * var(--u)); }
.paiements__liste { display: flex; flex-wrap: wrap; justify-content: center; gap: calc(10 * var(--u)); }
.paiements__liste li { height: calc(34 * var(--u)); padding: 0 calc(18 * var(--u)); border: calc(1.5 * var(--u)) solid var(--bordeaux); border-radius: calc(17 * var(--u)); display: inline-flex; align-items: center; font-weight: 700; font-size: calc(12 * var(--u)); letter-spacing: .02em; }
.paiements__note { margin-top: calc(14 * var(--u)); color: var(--gris); }

/* Essayage : fenêtre caméra, pièce sur l'image caméra, taille choisie */
.dialogue { border: 0; border-radius: calc(16 * var(--u)); padding: calc(28 * var(--u)) calc(32 * var(--u)); width: min(calc(460 * var(--u)), calc(100vw - 32px)); background: var(--blanc); color: var(--bordeaux); box-shadow: 0 20px 60px rgba(128, 37, 52, .25); }
.dialogue::backdrop { background: rgba(128, 37, 52, .45); }
.dialogue__titre { font-size: calc(26 * var(--u)); line-height: calc(34 * var(--u)); margin-bottom: calc(10 * var(--u)); }
.dialogue p { margin-bottom: calc(20 * var(--u)); }
.dialogue__actions { display: flex; flex-wrap: wrap; gap: calc(10 * var(--u)); }
.cabine__piece-camera { position: absolute; left: 50%; top: calc(158 * var(--u)); width: calc(96 * var(--u)); transform: translateX(-50%); transform-origin: top center; z-index: 3; border-radius: calc(8 * var(--u)); opacity: .95; box-shadow: 0 0 0 2px rgba(250, 246, 235, .5); transition: transform .3s; }
.cabine__personnage .piece { transform-origin: top center; transition: transform .3s; }
.cabine__personnage .contour { display: none; position: absolute; left: 50%; top: calc(74 * var(--u)); width: calc(70 * var(--u)); aspect-ratio: 1; transform: translateX(-50%); transform-origin: top center; border: 2px dashed var(--bordeaux); border-radius: calc(8 * var(--u)); pointer-events: none; z-index: 2; }
.mesures__choisie { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: calc(10 * var(--u)); margin-top: calc(26 * var(--u)); }
.mesures__choisie .champ-libelle { margin: 0; }
.champ--select { width: auto; min-width: calc(110 * var(--u)); padding-right: calc(30 * var(--u)); appearance: none; background: var(--blanc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23802534' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right calc(12 * var(--u)) center / 10px 6px; }
.resultat__alerte { margin: calc(4 * var(--u)) 0 calc(16 * var(--u)); padding: calc(10 * var(--u)) calc(16 * var(--u)); border-radius: calc(10 * var(--u)); background: var(--rose-pale); text-align: left; }
.club__formulaire--gauche { margin: calc(16 * var(--u)) 0; }
.club__formulaire--gauche .club__champ { margin: 0; }

@media (max-width: 760px) {
  .realite__cotes { grid-template-columns: 1fr; }
  .creatif { height: 70vw; }
  .creatif__titre { font-size: 32px; line-height: 38px; }
  .instagram__grille { grid-template-columns: repeat(3, 1fr); }
}
