/* Pages intérieures de La Maison Moreno. Les variables et les boutons viennent de site.css. */
.ph-barbier-client{--photo:url(/medias/photos/barbier-client.webp);--pos:center 30%}
.ph-salon-echecs{--photo:url(/medias/photos/salon-echecs.webp);--pos:35% center}
.ph-barbiers{--photo:url(/medias/photos/barbiers.webp);--pos:center 40%}
.ph-rr-echecs{--photo:url(/medias/photos/rr-echecs.webp);--pos:center 60%}
.ph-lavabos{--photo:url(/medias/photos/lavabos.webp);--pos:center}
.ph-rr-sofa-echecs{--photo:url(/medias/photos/rr-sofa-echecs.webp);--pos:center 70%}
.ph-mur-cadres{--photo:url(/medias/photos/mur-cadres.webp);--pos:center}
.ph-rr-sofa-tableau{--photo:url(/medias/photos/rr-sofa-tableau.webp);--pos:center 40%}
.fond-cuir-noir{--fond:url(/medias/fonds/cuir-noir.webp)}
.fond-boiserie-sarcelle{--fond:url(/medias/fonds/boiserie-sarcelle.webp)}
.fond-noyer{--fond:url(/medias/fonds/noyer.webp)}
.fond-marbre{--fond:url(/medias/fonds/marbre.webp)}
.fond-laiton{--fond:url(/medias/fonds/laiton.webp)}
.fond-brique{--fond:url(/medias/fonds/brique.webp)}
.fond-marqueterie{--fond:url(/medias/fonds/marqueterie.webp)}
.fond-plancher{--fond:url(/medias/fonds/plancher.webp)}
.fond-cuir-cognac{--fond:url(/medias/fonds/cuir-cognac.webp)}
.fond-damas-noir{--fond:url(/medias/fonds/damas-noir.webp)}
.r34{--ratio:3/4}
.r43{--ratio:4/3}
.haut-entete{padding-top:calc(var(--entete) + 26px)}
.deux.haut{align-items:start}
.tete-page{position:relative;display:grid;align-items:end;min-height:min(64vh,600px);min-height:min(64svh,600px);padding:calc(var(--entete) + 40px) var(--marge) clamp(26px,3.6vw,52px);background:#0b0a09 var(--photo) var(--pos,center)/cover}
.tete-page::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,10,9,.95) 0%,rgba(11,10,9,.55) 48%,rgba(11,10,9,.28) 100%),linear-gradient(90deg,rgba(11,10,9,.62),rgba(11,10,9,0) 68%)}
.tete-page > div{position:relative;max-width:1300px;width:100%;margin:0 auto}
.tete-page h1{font:500 clamp(46px,7vw,108px)/.98 var(--fin);margin:10px 0 12px;text-wrap:balance}
.sous{font:600 15px/1.3 var(--corps);color:var(--or-clair)}
.bloc .sous{color:var(--or-clair)}
.tete-page h1 em{font-style:normal;color:var(--or-clair)}
.tete-page .intro{max-width:58ch;font-size:18px;color:rgba(241,236,226,.94)}
.tete-page .actions{margin-top:20px}

.bloc{padding:var(--sec) var(--marge);background:var(--noir)}
.bloc.gris{background:var(--noir-2)}
.bloc.sarcelle{background:var(--sarcelle)}
.bloc.cedre{position:relative;background:#120b07 url(../medias/mur-cedre.webp) left center/cover}
.bloc.cedre::before{content:"";position:absolute;inset:0;background:rgba(11,10,9,.74)}
.bloc.damas{position:relative;background:#0c2326 url(../medias/mur-damas.webp) center top/cover}
.bloc.damas::before{content:"";position:absolute;inset:0;background:rgba(7,19,21,.86)}
.bloc > .large{position:relative;max-width:1300px;margin:0 auto}
.bloc h2{font:500 clamp(36px,4.6vw,68px)/1.02 var(--fin);text-transform:none;letter-spacing:-.005em;margin-bottom:12px}
.bloc h2 em{font-style:normal;color:var(--or-clair)}
.bloc h3{font:500 clamp(26px,2.4vw,36px)/1.08 var(--fin)}
.bloc p,.bloc li{color:rgba(241,236,226,.87)}
.bloc p + p{margin-top:12px}
.bloc a:not(.btn){color:var(--or-clair);text-underline-offset:3px}
.bloc .actions{margin-top:20px}
.deux{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);align-items:center}
.deux.tiers{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.deux.inverse > :first-child{order:2}
.photo-or{padding:9px;background:var(--dore);box-shadow:0 18px 40px rgba(0,0,0,.45)}
.photo-or img{width:100%;height:100%;object-fit:cover;aspect-ratio:var(--ratio,4/5)}

/* Un fond par page : la texture reste sombre et chaude, le texte reste lisible. */
.bloc:not(.sarcelle):not(.damas){position:relative;background:#0b0a09 var(--fond) center/cover no-repeat}
.bloc:not(.sarcelle):not(.damas)::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(11,10,9,.58) 0%,rgba(11,10,9,.76) 55%,rgba(11,10,9,.84) 100%)}
.bloc.gris:not(.sarcelle):not(.damas){background-position:right bottom}
.bloc.gris:not(.sarcelle):not(.damas)::before{background:rgba(11,10,9,.82)}
.texte-legal{position:relative}
.bloc:has(.texte-legal)::before{background:rgba(11,10,9,.86)!important}
.galerie video{display:block;width:100%;height:auto}

/* Soins */
.liste-soins{display:grid;gap:clamp(18px,2.4vw,34px);list-style:none}
.ligne-soin{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:clamp(18px,3vw,44px);align-items:center;padding-bottom:clamp(18px,2.4vw,34px);border-bottom:1px solid rgba(234,211,160,.18)}
.ligne-soin:last-child{border-bottom:0;padding-bottom:0}
.ligne-soin:nth-child(even){grid-template-columns:1fr minmax(150px,220px)}
.ligne-soin:nth-child(even) > .media{order:2}
.ligne-soin .media{aspect-ratio:3/4;overflow:hidden;background:#101c1e;border-radius:4px}
.ligne-soin .media video,.ligne-soin .media img{width:100%;height:100%;object-fit:cover}
.ligne-soin .media.outil{display:grid;place-items:center;background:radial-gradient(circle at 50% 38%,#1f4a51,#0a1c1f 75%)}
.ligne-soin .media.outil img{object-fit:contain;width:82%;height:82%}
.ligne-soin .duree{display:block;margin:6px 0 8px;font:800 14px/1 var(--gros);letter-spacing:.06em;color:var(--or)}
.lien-resa{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font:800 13px/1 var(--gros);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--or);color:var(--os)!important}
.etapes-platinum{columns:2;column-gap:40px;margin:14px 0 4px;list-style:none}
.etapes-platinum li{break-inside:avoid;padding:9px 0 9px 22px;position:relative;border-bottom:1px solid rgba(234,211,160,.16)}
.etapes-platinum li::before{content:"";position:absolute;left:0;top:17px;width:10px;height:11px;background:var(--or);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.court{max-width:62ch}

/* FAQ */
.faq{max-width:860px}
.faq details{border-top:1px solid rgba(234,211,160,.2)}
.faq details:last-child{border-bottom:1px solid rgba(234,211,160,.2)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:12px 0;font:600 18px/1.3 var(--corps);color:var(--os);cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:500 26px/1 var(--corps);color:var(--or);flex:none}
.faq details[open] summary::after{content:"\2212"}
.faq details p{padding:0 0 16px}

/* Salon */
.galerie{columns:3;column-gap:clamp(10px,1.4vw,18px);margin-top:18px}
.galerie figure{break-inside:avoid;margin-bottom:clamp(10px,1.4vw,18px);padding:6px;background:var(--dore)}
.galerie img{width:100%;height:auto}

/* Équipe */
.grille-equipe{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,28px);margin-top:18px}
.membre h3{margin-top:12px}
.membre p{font-size:15px}

/* Réservation */
.options{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(12px,1.6vw,22px);list-style:none}
.options > li{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:clamp(20px,2.2vw,30px);background:#1b1a18;border-radius:4px}
.options > li:first-child{background:var(--sarcelle)}
.options .btn,.options .lien-tel{margin-top:auto}
.lien-tel{display:inline-flex;align-items:center;min-height:44px;font:700 17px/1.2 var(--corps);color:var(--or-clair)!important}
.tableau-heures{width:100%;max-width:520px;border-collapse:collapse}
.tableau-heures th,.tableau-heures td{padding:11px 12px;border-bottom:1px solid rgba(241,236,226,.14);font:500 16px/1.2 var(--corps);text-align:left;color:var(--os)}
.tableau-heures td{text-align:right}
.tableau-heures tr.aujourdhui th,.tableau-heures tr.aujourdhui td{background:rgba(214,178,106,.14);color:var(--or-clair)}
.etapes-resa{list-style:none;counter-reset:n;display:grid;gap:12px;margin-top:10px}
.etapes-resa li{counter-increment:n;position:relative;padding-left:44px}
.etapes-resa li::before{content:counter(n);position:absolute;left:0;top:-3px;font:500 34px/1 var(--fin);color:var(--or)}

/* Villes */
.faits{display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border-block:1px solid rgba(234,211,160,.2)}
.faits div{padding:16px 16px 16px 0}
.faits b{display:block;font:800 clamp(28px,3vw,44px)/1 var(--gros);color:var(--or-clair)}
.faits span{font-size:15px;color:var(--gris)}

/* Fin de page */
.appel-fin{padding:clamp(40px,5vw,72px) var(--marge);text-align:center;background:var(--or);color:#120d04}
.appel-fin h2{font:800 clamp(34px,5.4vw,76px)/1 var(--gros);text-transform:uppercase;letter-spacing:-.02em}
.appel-fin p{margin:10px auto 18px;max-width:50ch}
.appel-fin .actions{justify-content:center}
.appel-fin .btn-or{background:#120d04;color:var(--or-clair)}
.appel-fin .btn-blanc{background:var(--os)}

/* Confidentialité */
.texte-legal{max-width:760px;margin:0 auto}
.texte-legal h1{font:500 clamp(44px,6vw,80px)/1 var(--fin);margin:6px 0 12px}
.texte-legal h2{font:500 clamp(28px,3vw,38px)/1.1 var(--fin);margin:28px 0 8px}
.texte-legal h3{font:700 18px/1.3 var(--corps);margin:16px 0 4px}
.texte-legal ul{margin:8px 0 8px 20px}
.texte-legal li{margin-bottom:6px}
.texte-legal .maj{font-size:14px;color:var(--gris)}
.texte-legal .chapeau{font-size:19px}
.en-bref{margin:18px 0;padding:18px 22px;background:var(--sarcelle);border-radius:4px}
.en-bref h2{margin-top:0}

@media (max-width:860px){
  .tete-page{min-height:430px;padding-bottom:22px}
  .tete-page .intro{font-size:16px}
  .tete-page .actions{display:grid;grid-template-columns:1.3fr 1fr}
  .deux,.deux.tiers{grid-template-columns:1fr;gap:16px}
  .deux.inverse > :first-child{order:0}
  .ligne-soin,.ligne-soin:nth-child(even){grid-template-columns:104px 1fr;gap:14px;align-items:start}
  .ligne-soin:nth-child(even) > .media{order:0}
  .etapes-platinum{columns:1}
  .galerie{columns:2}
  .grille-equipe{grid-template-columns:1fr 1fr}
  .options{grid-template-columns:1fr}
  .faits{grid-template-columns:1fr 1fr 1fr}
  .faits b{font-size:24px}
  .entete-droite .btn-or{display:none}
  .faits span{font-size:13px;line-height:1.3;display:block}
  .faq summary{font-size:17px}
  .appel-fin .actions{display:grid;grid-template-columns:1fr;max-width:300px;margin:0 auto}
}
