:root {
  --gris-taupe: #77756a;
  --gris-brume: #c8c9bb;
  --gris-prune: #8b7b7c;
  --gris-ombre: #6a635d;
  --lierre-sec: #767665;
  --blanc-coquille: #f3ebe4;
  --blanc-lin: #e9e3d1;
  --ivoire: #ede3d4;
  --gres-clair: #ede1d1;
  --amande-douce: #e0d9c9;
  --beige-argile: #d1c9ac;
  --sable-humide: #bfb29b;
  --lin-dore: #ecdfcc;
  --sable-vieilli: #bda995;
  --ombre-lin: #d0bfa7;
  --taupe-ancien: #b79e8e;
  --argile-fumee: #a58d80;
  --rose-brume: #e2d3c4;
  --lin-rose: #dbc5b3;
  --terre-sechee: #c4ae92;
  --rose: #e4c8bc;
  --argile-rose: #e2c9bb;
  --vert-sauge-clair: #bec3a5;
  --vert-mousse: #97a687;
  --vert-lichen: #879379;
  --vert-avoine: #b7ba9d;
  --vert-argile: #8f997d;
  --vert-brume: #dad6c1;
  --vert-mineral: #7d7b6e;
  --amande-rosee: #8f917d;
  --vert-sauge-fonce: #566149;
  --vert-chene: #636e56;
  --vert-sapin-gris: #4A5C4A;
  --vert-foret-noire: #3C4D32;
  --brun-seigle: #998070;
  --brun-cuir: #755949;
  --brun-chateau: #5F493B;
  --brun-ardoise: #4D423C;
  --card-radius: 15px;
}

.vert-sauge-clair { color: #bec3a5; }
.vert-mousse { color: #97a687; }
.vert-lichen { color: #879379; }
.vert-chene { color: #636e56; }
.vert-brume { color: #dad6c1; }
.vert-avoine { color: #b7ba9d; }
.vert-argile { color: #8f997d; }
.vert-sauge-foncee { color: #566149; }
.blanc-lin { color: #e9e3d1; }
.beige-argile { color: #d1c9ac; }
.sable-humide { color: #bfb29b; }
.taupe-gris { color: #77756a; }
.rose-brume { color: #e2d3c4; }
.lin-rose { color: #dbc5b3; }
.terre-sechee { color: #c4ae92; }
.amande-rosee { color: #8f917d; }
.blanc-coquille { color: #f3ebe4; }
.lin-dore { color: #ecdfcc; }
.sable-vieilli { color: #bda995; }
.gris-prune { color: #8b7b7c; }
.ivoire { color: #ede3d4; }
.gres-clair { color: #ede1d1; }
.amande-douce { color: #e0d9c9; }
.brume-lilas { color: #c8c9bb; }
.taupe-ancien { color: #b79e8e; }
.argile-fumee { color: #a58d80; }
.lierre-sec { color: #767665; }
.poussiere-ombre { color: #6a635d; }
.rose { color: #e4c8bc; }
.argile-rose { color: #e2c9bb; }
.vert-gris { color: #c8c9bb; }
.ombre-lin { color: #d0bfa7; }
.vert-mineral { color: #7d7b6e; }
.vert-foret-noire { color: #3C4D32; }
.vert-sapin-gris { color: #4A5C4A; }
.vert-lichen-fonce { color: #566149; }
.brun-chateau { color: #5F493B; }
.brun-cuir { color: #755949; }
.brun-ardoise { color: #4D423C; }
.brun-seigle { color: #998070; }
.parking { color: #0750a4; }
.panneau-parking { color: #0000ff; }

.text-variant-blanc-coquille, .text-variant-blanc-coquille a { color: #797572; }
.text-variant-blanc-coquille a:hover { color: #484644; }
.text-titre-blanc-coquille { color: #615e5b; }

.text-variant-fumee-blanche, .text-variant-fumee-blanche a { color: #757675; }
.text-variant-fumee-blanche a:hover { color: #464746; }
.text-titre-fumee-blanche { color: #5e5e5d; }

.text-variant-gris-beige-clair, .text-variant-gris-beige-clair a { color: #6f6d6b; }
.text-variant-gris-beige-clair a:hover { color: #424140; }
.text-titre-gris-beige-clair { color: #595756; }

.text-variant-blanc-floral, .text-variant-blanc-floral a { color: #7b7975; }
.text-variant-blanc-floral a:hover { color: #4a4846; }
.text-titre-blanc-floral { color: #62605d; }

.text-variant-gris-clair, .text-variant-gris-clair a { color: #747677; }
.text-variant-gris-clair a:hover { color: #454647; }
.text-titre-gris-clair { color: #5d5e5f; }

.text-variant-bleu-ciel, .text-variant-bleu-ciel a { color: #0750a4; }
.text-variant-bleu-ciel a:hover { color: #054083; }
.text-titre-bleu-ciel { color: #054083; }

.text-variant-vert-clair, .text-variant-vert-clair a { color: #69745e; }
.text-variant-vert-clair a:hover { color: #4b5343; }
.text-titre-vert-clair { color: #5a6351; }

.text-variant-beige-perle, .text-variant-beige-perle a { color: #706b64; }
.text-variant-beige-perle a:hover { color: #43403c; }
.text-titre-beige-perle { color: #5a5550; }

.text-variant-beige-lin, .text-variant-beige-lin a { color: #76716a; }
.text-variant-beige-lin a:hover { color: #47443f; }
.text-titre-beige-lin { color: #5e5a54; }

.text-variant-gres-pale, .text-variant-gres-pale a { color: #747271; }
.text-variant-gres-pale a:hover { color: #454444; }
.text-titre-gres-pale { color: #5c5b5a; }

.text-variant-rose-rouge-clair, .text-variant-rose-rouge-clair a { color: #9e6e74; }
.text-variant-rose-rouge-clair a:hover { color: #765257; }
.text-titre-rose-rouge-clair { color: #8a6065; }

.text-variant-abricot-pale, .text-variant-abricot-pale a { color: #a35f1b; }
.text-variant-abricot-pale a:hover { color: #7a4714; }
.text-titre-abricot-pale { color: #8e5317; }

.text-variant-vert-sauge-pale, .text-variant-vert-sauge-pale a { color: #707c56; }
.text-variant-vert-sauge-pale a:hover { color: #545d40; }
.text-titre-vert-sauge-pale { color: #626d4b; }

.text-variant-rose-beige-pale, .text-variant-rose-beige-pale a { color: #8a5c45; }
.text-variant-rose-beige-pale a:hover { color: #7c523e; }
.text-titre-rose-beige-pale { color: #8a5c45; }

.text-vert-sauge-fonce { color: var(--vert-sauge-fonce); }
.text-vert-sauge-fonce a { color: var(--vert-sauge-fonce); }
.text-vert-sauge-fonce a:hover { color: #76826f; }
.text-taupe-gris { color: #53514a; }
.text-taupe-gris a { color: #53514a; }
.text-taupe-gris a:hover { color: #77756a; }
.text-vert-foret-fonce { color: var(--vert-foret-noire); }
.text-vert-foret-fonce a { color: var(--vert-foret-noire); }
.text-vert-foret-fonce a:hover { color: #2a3523; }
.text-brun-chateau { color: var(--brun-chateau); }
.text-brun-cuir { color: var(--brun-cuir); }
.text-brun-cuir a { color: #755949; }
.text-brun-cuir a:hover { color: #513e33; }
.text-vert-foret-noire { color: var(--vert-foret-noire); }
.text-gris-taupe { color: var(--gris-taupe); }
.text-brun-ardoise { color: var(--brun-ardoise); }
.text-vert-lichen { color: var(--vert-lichen); }
.text-beige-argile { color: var(--beige-argile); }
.text-sable-humide { color: var(--sable-humide); }
.text-rose-brume { color: var(--rose-brume); }
.text-lierre-sec { color: var(--lierre-sec); }
.text-brun-seigle { color: var(--brun-seigle); }
.text-amande-douce { color: var(--amande-douce); }
.text-ivoire { color: var(--ivoire); }
.text-blanc-lin { color: var(--blanc-lin); }

.bg-blanc-coquille { background-color: var(--blanc-coquille); }
.bg-vert-foret-noire { background-color: var(--vert-foret-noire); }
.bg-brun-ardoise { background-color: var(--brun-ardoise); }
.bg-brun-chateau { background-color: var(--brun-chateau); }
.bg-ivoire { background-color: var(--ivoire); }
.bg-blanc-lin { background-color: var(--blanc-lin); }
.bg-gris-brume { background-color: var(--gris-brume); }
.bg-amande-douce { background-color: var(--amande-douce); }
.bg-vert-sauge-clair { background-color: var(--vert-sauge-clair); }
.bg-beige-argile { background-color: var(--beige-argile); }
.bg-sable-humide { background-color: var(--sable-humide); }
.bg-rose-brume { background-color: var(--rose-brume); }
.bg-terre-sechee { background-color: var(--terre-sechee); }
.bg-vert-chene { background-color: var(--vert-chene); }
.bg-brun-cuir { background-color: var(--brun-cuir); }
.bg-gres-clair { background-color: var(--gres-clair); }
.bg-lin-dore { background-color: var(--lin-dore); }
.bg-lin-rose { background-color: var(--lin-rose); }
.bg-rose { background-color: var(--rose); }
.bg-argile-rose { background-color: var(--argile-rose); }
.bg-vert-brume { background-color: var(--vert-brume); }
.bg-amande-rosee { background-color: var(--amande-rosee); }
.bg-ombre-lin { background-color: var(--ombre-lin); }
.bg-fumee-blanche { background-color: #ebedea; }
.bg-gris-beige-clair { background-color: #dfdad7; }
.bg-bleu-ciel { background-color: #e6edf5; }
.bg-gris-clair { background-color: #e9ecef; }
.bg-blanc-floral { background-color: #f7f2ea; }
.bg-vert-clair { background-color: #e0e4db; }
.bg-beige-perle { background-color: #e1d6c8; }
.bg-beige-lin { background-color: #ede3d4; }
.bg-gres-pale { background-color: #e8e5e3; }
.bg-rose-rouge-clair { background-color: #eddbde; }
.bg-abricot-pale { background-color: #f4e3d2; }
.bg-vert-sauge-pale { background-color: #e8ebe1; }
.bg-rose-beige-pale { background-color: #e7ded9; }

.bg-gradient-blanc-coquille { background: linear-gradient(to bottom, #dad3cd, #f3ebe4); }
.bg-gradient-fumee-blanche { background: linear-gradient(to bottom, #d3d5d2, #ebedea); }
.bg-gradient-gris-beige-clair { background: linear-gradient(to bottom, #c8c4c1, #dfdad7); }
.bg-gradient-blanc-floral { background: linear-gradient(to bottom, #ded9d2, #f7f2ea); }
.bg-gradient-gris-clair { background: linear-gradient(to bottom, #d1d4d7, #e9ecef); }
.bg-gradient-bleu-ciel { background: linear-gradient(to bottom, #cddcec, #e6edf5); }
.bg-gradient-vert-clair { background: linear-gradient(to bottom, #c9cdc5, #e0e4db); }
.bg-gradient-beige-perle { background: linear-gradient(to bottom, #cac0b4, #e1d6c8); }
.bg-gradient-beige-lin { background: linear-gradient(to bottom, #d5ccbe, #ede3d4); }
.bg-gradient-gres-pale { background: linear-gradient(to bottom, #d0cecc, #e8e5e3); }
.bg-gradient-rose-rouge-clair { background: linear-gradient(to bottom, #e8d0d3, #eddbde); }
.bg-gradient-abricot-pale { background: linear-gradient(to bottom, #efd6bc, #f4e3d2); }
.bg-gradient-vert-sauge-pale { background: linear-gradient(to bottom, #dce1d2, #e8ebe1); }
.bg-gradient-rose-beige-pale { background: linear-gradient(to bottom, #dbcec7, #e7ded9); }
.bg-gradient-brun-clair { background: linear-gradient(to bottom, var(--amande-douce), var(--blanc-coquille)); }
.bg-gradient-brun-clair-variante { background: linear-gradient(to bottom, var(--sable-humide), var(--blanc-lin), var(--sable-humide)); }
.bg-gradient-noble { background: linear-gradient(to right, var(--brun-chateau), var(--brun-cuir)); }
.bg-gradient-moussue { background: linear-gradient(to bottom, var(--vert-foret-noire), var(--vert-lichen)); }
.bg-gradient-sable { background: linear-gradient(135deg, var(--sable-humide), var(--blanc-lin)); }
.bg-gradient-terre { background: linear-gradient(to top, var(--argile-fumee), var(--rose-brume)); }
.bg-gradient-ombre { background: linear-gradient(to bottom right, var(--gris-taupe), var(--gris-brume)); }
.bg-gradient-brume { background: linear-gradient(to bottom, var(--blanc-coquille), var(--gris-brume), var(--blanc-coquille)); }
.bg-gradient-cuir { background: linear-gradient(to right, var(--brun-seigle), var(--ombre-lin)); }
.bg-gradient-rose { background: linear-gradient(-45deg, var(--rose-brume), var(--lin-dore)); }
.bg-gradient-cendre { background: linear-gradient(to left, rgba(99, 110, 86, 0.8), var(--gris-ombre)); }
.bg-gradient-solide { background: linear-gradient(to right, var(--brun-chateau) 50%, var(--brun-chateau) 100%); }

/* Réseaux sociaux */
.facebook { color: #4267B2; }
.pinterest { color: #E60023; }
.linkedin { color: #0077B5; }
.instagram { color: #f77737; }
.xdotcom { color: #000000; }

/* Thème Boostrap Barrio */
.navbar-nav .nav-link {
  --bs-navbar-nav-link-padding-x: 0.25rem;
}

.chateau {
  font-size: 1.1em;
  font-family: 'Rosarivo', serif;
  color: #8f997d;
}

.rosarivo {
  font-family: 'Rosarivo', serif;
}

.chateau-reinhardstein {
  font-size: 1.8em;
  font-family: 'Rosarivo', serif;
  color: #5e5a54;
}

.hr-lin {
  color: var(--blanc-lin);
  width: 50%;
  margin-left: auto;
  margin-right: auto;
  opacity: 0.5;
}

.card-reinhardstein {
  border-radius: var(--card-radius) !important;
  background-color: transparent;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-reinhardstein:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0,0,0,0.15) !important;
}

.card-reinhardstein .img-reinhardstein {
  border-top-left-radius: var(--card-radius);
  border-top-right-radius: var(--card-radius);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  object-fit: cover;
}

.card-reinhardstein .card-header {
  border-radius: 0;
  border-bottom: none;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.card-reinhardstein .card-body {
  border-bottom-left-radius: var(--card-radius);
  border-bottom-right-radius: var(--card-radius);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.card-reinhardstein .card-title {
  font-family: 'Rosarivo', serif;
  font-weight: bold;
  letter-spacing: 1px;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
  font-size: 1.2rem;
  line-height: 1.4;
}

.card-reinhardstein .card-text {
  color: var(--brun-ardoise);
  font-size: 1.1rem;
}

.header-origine { background: linear-gradient(135deg, var(--vert-foret-noire), var(--vert-sapin-gris)); }
.titre-origine { color: var(--vert-sauge-clair); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-origine a { color: var(--vert-sauge-clair); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-origine a:hover { color: #ffffff; text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.body-origine { background: linear-gradient(to bottom, var(--vert-brume), #eef0eb); }

.header-forteresse { background: linear-gradient(135deg, var(--brun-ardoise), var(--gris-taupe)); }
.titre-forteresse { color: var(--gres-clair); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-forteresse a { color: var(--gres-clair); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-forteresse a:hover { color: #ffffff; text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.body-forteresse { background: linear-gradient(to bottom, var(--gris-brume), #f0f1f3); }

.header-reconstruction { background: linear-gradient(135deg, var(--brun-cuir), var(--taupe-ancien)); }
.titre-reconstruction { color: var(--lin-dore); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-reconstruction a { color: var(--lin-dore); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-reconstruction a:hover { color: #ffffff; text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.body-reconstruction { background: linear-gradient(to bottom, var(--beige-argile), var(--ivoire)); }

.header-aboutissement { background: linear-gradient(135deg, var(--brun-chateau), var(--argile-fumee)); }
.titre-aboutissement { color: var(--rose-brume); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-aboutissement a { color: var(--rose-brume); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-aboutissement a:hover { color: #ffffff; text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.body-aboutissement { background: linear-gradient(to bottom, var(--lin-rose), var(--rose-brume)); }

.slick--skin--fullwidth .slide__title { text-transform: none; }

.z-index-2 { z-index: 2; }

.footer-background {
  background-image: url('/sites/default/files/styles/webp/public/2025-11/chateau-reinhardstein-neige-hiver-forteresse-medievale-ovifat-waimes-vallee-warche-plateau-hautes-fagnes-foret-ardennaise-ardenne-belge-province-liege-belgique.jpg.webp');
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 400px;
  margin-top: -120px;
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .footer-background {
    height: 300px;
    margin-top: -80px;
  }
}

.social-link {
  display: inline-block;
  transition: all 0.3s ease;
  text-decoration: none;
}

.social-link:hover {
  color: var(--vert-foret-noire) !important;
  transform: translateY(-3px);
}

.banniere {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.banniere-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  min-height: 300px;
}

@media (min-width: 768px) {
  .banniere-image { min-height: 400px; }
}

@media (min-width: 1200px) {
  .banniere-image { min-height: 500px; }
}

.banniere-texte {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  color: var(--blanc-lin);
  font-size: 2.8rem;
  font-family: Rosarivo;
  font-weight: bold;
  text-align: left;
  padding: 15px 25px;
  background: rgba(60, 77, 50, 0.75);
  border-radius: 0 12px 12px 0;
  text-shadow: 1px 1px 3px rgba(0,0,0,0.7);
}

@media (max-width: 768px) {
  .banniere-texte {
    font-size: 2rem;
    padding: 10px 18px;
  }
}

.banner-background {
  background-image: url('/images/svg/illustration-2.svg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  min-height: 300px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: left;
}

@media (min-width: 768px) {
  .banner-background { min-height: 400px; }
}

@media (min-width: 1200px) {
  .banner-background { min-height: 500px; }
}

.banner-informations-pratiques {
  background-image: url('/sites/default/files/styles/webp/public/2025-11/tapisserie-2.jpg.webp');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  min-height: 300px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: right;
}

@media (min-width: 768px) {
  .banner-informations-pratiques { min-height: 400px; }
}

@media (min-width: 1200px) {
  .banner-informations-pratiques { min-height: 500px; }
}

.banner-castelflora {
  background-image: url('/sites/default/files/styles/webp/public/2025-11/castelflora-1.jpg.webp');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  min-height: 300px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: right;
}

@media (min-width: 768px) {
  .banner-castelflora { min-height: 400px; }
}

@media (min-width: 1200px) {
  .banner-castelflora { min-height: 500px; }
}

.banner-musee {
  background-image: url('/sites/default/files/styles/webp/public/2025-11/musee-1.jpg.webp');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  min-height: 300px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: right;
}

@media (min-width: 768px) {
  .banner-musee { min-height: 400px; }
}

@media (min-width: 1200px) {
  .banner-musee { min-height: 500px; }
}

.selecteur a {
  text-decoration: none;
  margin: -0.6rem;
  color: #3C4D32;
}

.selecteur a:hover {
  color: #8f997d;
}

.selecteur .is-active {
  color: #3C4D32;
  background-color: #f3ebe4;
}

.node__content {
  font-size: 1.2em;
  margin-top: 10px;
}

.node__meta {
  font-size: 1.1em;
  color: #44526e;
  margin-bottom: 0;
}

.site-footer .block { border: none; }
.site-footer__bottom { border-top: none; }
.site-footer .content { color: #3b3b3b; font-size: 1.1em; }

.site-footer .content a,
.site-footer .content a.is-active {
  color: #0071b3;
}

.site-footer .content a:hover,
.site-footer .content a:focus {
  color: #000;
}

.breadcrumb { font-size: 1.1em; }

.sidebar h2 {
  margin: 0 0 0.5em;
  border-bottom: none;
  padding-bottom: 5px;
  text-shadow: 0 1px 0 #fff;
  font-size: 1.4em;
}

.pricing-card {
  border: none;
  border-radius: 15px;
  transition: all 0.3s ease;
}

.pricing-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.pricing-header { border-radius: 15px 15px 0 0; color: white; }
.basic-header { background: linear-gradient(45deg, #3494E6, #EC6EAD); }
.pro-header { background: linear-gradient(45deg, #614385, #516395); }
.enterprise-header { background: linear-gradient(45deg, #1D976C, #93F9B9); }

.btn-custom {
  border-radius: 50px;
  padding: 10px 30px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.feature-list { list-style-type: none; padding-left: 0; }
.feature-list li { padding: 8px 0; border-bottom: 1px solid #e9ecef; }
.feature-list li:last-child { border-bottom: none; }

.text-shadow-light {
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.9), -1px -1px 2px rgba(255, 255, 255, 0.9);
}

.bouton-brun {
  color: #636e56 !important;
  background-color: #f3ebe4 !important;
  border-color: #636e56 !important;
}

.bouton-brun:hover {
  color: white !important;
  background-color: #3c4d32 !important;
  border-color: #3c4d32 !important;
}

[class*="btn-r-"] {
  font-family: 'Rosarivo', serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 400;
  border-radius: 50px;
  padding: 10px 25px;
  transition: all 0.3s ease;
  border: 1px solid transparent;
}

[class*="btn-r-"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.btn-r-chateau { background-color: var(--brun-chateau); color: var(--blanc-lin); border-color: var(--brun-chateau); }
.btn-r-chateau:hover { background-color: var(--brun-ardoise); color: #ffffff; border-color: var(--brun-ardoise); }

.btn-r-foret { background-color: var(--vert-foret-noire); color: var(--blanc-coquille); }
.btn-r-foret:hover { background-color: var(--vert-sapin-gris); color: #ffffff; }

.btn-r-pierre-outline { background-color: transparent; color: var(--gris-taupe); border: 1px solid var(--gris-taupe); }
.btn-r-pierre-outline:hover { background-color: var(--gris-taupe); color: var(--blanc-lin); }

.btn-r-cuir { background: linear-gradient(to right, var(--brun-chateau), var(--brun-cuir)); color: var(--lin-dore); border: none; }
.btn-r-cuir:hover { background: linear-gradient(to right, var(--brun-ardoise), var(--brun-chateau)); color: #ffffff; }

.btn-r-mousse { background: linear-gradient(to bottom, var(--vert-foret-noire), var(--vert-lichen)); color: var(--blanc-coquille); border: none; }
.btn-r-mousse:hover { background: linear-gradient(to bottom, var(--vert-sapin-gris), var(--vert-mousse)); color: #ffffff; }

.btn-r-terre { background-color: var(--terre-sechee); color: var(--brun-ardoise); }
.btn-r-terre:hover { background-color: var(--argile-fumee); color: var(--blanc-lin); }

.btn-r-sable { background-color: var(--sable-humide); color: var(--brun-ardoise); }
.btn-r-sable:hover { background-color: var(--blanc-lin); color: var(--brun-chateau); }

.btn-r-brume { background-color: rgba(255, 255, 255, 0.2); color: var(--blanc-lin); border: 1px solid var(--blanc-lin); backdrop-filter: blur(5px); }
.btn-r-brume:hover { background-color: var(--blanc-lin); color: var(--vert-foret-noire); }

.btn-r-lichen { background-color: var(--vert-lichen); color: #ffffff; }
.btn-r-lichen:hover { background-color: var(--vert-chene); color: var(--blanc-lin); }

.btn-r-link { background: transparent; color: var(--brun-chateau); border-radius: 0; padding: 5px 0; border-bottom: 2px solid var(--vert-lichen); text-transform: none; }
.btn-r-link:hover { color: var(--vert-foret-noire); border-bottom-color: var(--vert-foret-noire); transform: translateY(0); box-shadow: none; }

.btn-r-prestige { background-color: var(--lin-dore); color: var(--brun-ardoise); font-weight: bold; border: 1px solid var(--sable-vieilli); }
.btn-r-prestige:hover { background-color: var(--sable-vieilli); color: var(--brun-ardoise); }

.btn-r-ardoise { background-color: var(--brun-ardoise); color: var(--gris-brume); }
.btn-r-ardoise:hover { background-color: var(--gris-taupe); color: #ffffff; }

.chateau-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Rosarivo', serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  border-radius: 50px;
  padding: 0.75rem 2rem;
  font-size: 0.95rem;
  line-height: 1.4;
  text-decoration: none;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
  border: 1px solid transparent;
  position: relative;
  overflow: hidden;
}

.chateau-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.18);
}

.chateau-btn-lg { padding: 1rem 2.8rem; font-size: 1.1rem; }
.chateau-btn-sm { padding: 0.5rem 1.5rem; font-size: 0.85rem; }

.chateau-btn-primary { background-color: var(--brun-chateau); color: var(--blanc-lin); }
.chateau-btn-primary:hover { background-color: var(--brun-ardoise); color: #fff; border-color: var(--brun-ardoise); }

.chateau-btn-forest { background-color: var(--vert-foret-noire); color: var(--blanc-coquille); }
.chateau-btn-forest:hover { background-color: var(--vert-sapin-gris); color: #fff; }

.chateau-btn-outline-pierre { background: transparent; color: var(--gris-taupe); border: 2px solid var(--gris-taupe); }
.chateau-btn-outline-pierre:hover { background-color: var(--gris-taupe); color: var(--blanc-lin); }

.chateau-btn-cuir { background: linear-gradient(90deg, var(--brun-chateau), var(--brun-cuir)); color: var(--lin-dore); }
.chateau-btn-cuir:hover { background: linear-gradient(90deg, var(--brun-ardoise), var(--brun-chateau)); color: #fff; }

.chateau-btn-mousse { background: linear-gradient(to bottom, var(--vert-foret-noire), var(--vert-lichen)); color: var(--blanc-coquille); }
.chateau-btn-mousse:hover { background: linear-gradient(to bottom, var(--vert-sapin-gris), var(--vert-mousse)); color: #fff; }

.chateau-btn-terre { background-color: var(--terre-sechee); color: var(--brun-ardoise); }
.chateau-btn-terre:hover { background-color: var(--argile-fumee); color: var(--blanc-lin); }

.chateau-btn-sable { background-color: var(--sable-humide); color: var(--brun-ardoise); }
.chateau-btn-sable:hover { background-color: var(--blanc-lin); color: var(--brun-chateau); }

.chateau-btn-brume { background: rgba(255,255,255,0.22); color: var(--blanc-lin); border: 1px solid var(--blanc-lin); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.chateau-btn-brume:hover { background: var(--blanc-lin); color: var(--vert-foret-noire); }

.chateau-btn-lichen { background-color: var(--vert-lichen); color: #fff; }
.chateau-btn-lichen:hover { background-color: var(--vert-chene); color: var(--blanc-lin); }

.chateau-btn-prestige { background-color: var(--lin-dore); color: var(--brun-ardoise); border: 2px solid var(--sable-vieilli); font-weight: 600; }
.chateau-btn-prestige:hover { background-color: var(--sable-vieilli); }

.chateau-btn-ardoise { background-color: var(--brun-ardoise); color: var(--gris-brume); }
.chateau-btn-ardoise:hover { background-color: var(--gris-taupe); color: #fff; }

.chateau-btn-link { background: transparent; color: var(--brun-chateau); padding: 0.5rem 0; border-radius: 0; border: none; border-bottom: 2px solid var(--vert-lichen); text-transform: none; font-size: 1.05rem; }
.chateau-btn-link:hover { color: var(--vert-foret-noire); border-bottom-color: var(--vert-foret-noire); transform: none; box-shadow: none; }

.chateau-btn-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Rosarivo', serif;
  text-transform: uppercase;
  letter-spacing: 1.1px;
  border-radius: 999px;
  padding: 0.65rem 1.8rem;
  font-size: 0.95rem;
  line-height: 1.4;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid transparent;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.chateau-btn-foret-brume { background: linear-gradient(135deg, var(--vert-foret-noire), var(--vert-sapin-gris)); color: var(--blanc-coquille); border-color: rgba(0,0,0,0.15); }
.chateau-btn-foret-brume:hover { background: linear-gradient(135deg, var(--vert-sapin-gris), var(--vert-lichen)); color: #ffffff; }

.chateau-btn-pierre-claire { background: linear-gradient(to bottom, var(--blanc-coquille), var(--gres-clair)); color: var(--brun-ardoise); border-color: var(--beige-argile); }
.chateau-btn-pierre-claire:hover {
  background: linear-gradient(to bottom, var(--ombre-lin), var(--blanc-coquille));
  color: var(--brun-chateau);
  border-color: var(--blanc-coquille);
}

.chateau-btn-outline-foret { background: transparent; color: var(--vert-foret-noire); border: 2px solid var(--vert-foret-noire); }
.chateau-btn-outline-foret:hover { background: var(--vert-foret-noire); color: var(--blanc-lin); }

.chateau-btn-outline-sable { background: transparent; color: var(--sable-humide); border: 2px solid var(--sable-humide); }
.chateau-btn-outline-sable:hover { background: var(--sable-humide); color: var(--brun-ardoise); }

.chateau-btn-ruban { background: linear-gradient(90deg, var(--rose-brume), var(--lin-rose)); color: var(--brun-ardoise); border-radius: 999px 12px 12px 999px; padding-left: 2.5rem; padding-right: 2.5rem; }
.chateau-btn-ruban:hover { background: linear-gradient(90deg, var(--rose), var(--terre-sechee)); color: var(--brun-chateau); }

.chateau-btn-nocturne { background: linear-gradient(135deg, var(--brun-ardoise), var(--brun-chateau)); color: var(--blanc-lin); border-color: rgba(0,0,0,0.3); }
.chateau-btn-nocturne:hover { background: linear-gradient(135deg, var(--brun-chateau), var(--lierre-sec)); color: #ffffff; }

.chateau-btn-ivoire { background-color: rgba(237, 227, 212, 0.92); color: var(--brun-ardoise); border-color: var(--ombre-lin); }
.chateau-btn-ivoire:hover { background-color: #ffffff; color: var(--brun-chateau); }

.chateau-btn-ghost-foret { background: rgba(60, 77, 50, 0.1); color: var(--blanc-lin); border: 1px solid rgba(243, 235, 228, 0.7); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.chateau-btn-ghost-foret:hover { background: rgba(60, 77, 50, 0.75); color: var(--blanc-lin); }

.chateau-btn-lichen-texture { background: linear-gradient(to bottom, var(--vert-lichen), var(--vert-chene)); color: var(--blanc-lin); border: 1px solid rgba(0,0,0,0.2); }
.chateau-btn-lichen-texture:hover { background: linear-gradient(to bottom, var(--vert-chene), var(--vert-foret-noire)); }

.chateau-btn-seal { background: var(--blanc-coquille); color: var(--brun-chateau); border: 2px solid var(--brun-chateau); box-shadow: 0 0 0 3px rgba(95,73,59,0.18); }
.chateau-btn-seal:hover { background: var(--lin-dore); color: var(--brun-ardoise); }

.chateau-btn-arch-link { background: transparent; color: var(--brun-chateau); border-radius: 0 0 999px 999px; padding: 0.35rem 0; border-bottom: 2px solid var(--vert-lichen); text-transform: none; font-size: 1rem; }
.chateau-btn-arch-link:hover { color: var(--vert-foret-noire); border-bottom-color: var(--vert-foret-noire); box-shadow: none; transform: translateY(0); }

.chateau-btn-castelflora { background: radial-gradient(circle at 0% 0%, var(--rose-brume), var(--vert-sauge-clair)); color: var(--brun-ardoise); border: 1px solid var(--argile-rose); }
.chateau-btn-castelflora:hover { background: radial-gradient(circle at 100% 100%, var(--lin-rose), var(--vert-mousse)); }

.chateau-btn-tapisserie { background: linear-gradient(45deg, var(--taupe-ancien), var(--terre-sechee)); color: var(--blanc-lin); border-color: rgba(0,0,0,0.2); }
.chateau-btn-tapisserie:hover { background: linear-gradient(45deg, var(--argile-fumee), var(--brun-chateau)); }

.chateau-btn-visite { background: linear-gradient(to right, var(--vert-sauge-clair), var(--vert-mousse)); color: var(--brun-ardoise); border-color: var(--vert-argile); }
.chateau-btn-visite:hover { background: linear-gradient(to right, var(--vert-mousse), var(--vert-lichen)); }

.chateau-btn-reservation { background: linear-gradient(135deg, var(--sable-vieilli), var(--terre-sechee)); color: var(--brun-ardoise); border-color: var(--argile-fumee); font-weight: 600; }
.chateau-btn-reservation:hover { background: linear-gradient(135deg, var(--argile-fumee), var(--brun-chateau)); color: var(--blanc-lin); }

.chateau-btn-event-premium { background: linear-gradient(to right, var(--brun-ardoise), var(--brun-seigle)); color: var(--blanc-lin); border-color: rgba(0,0,0,0.3); }
.chateau-btn-event-premium:hover { background: linear-gradient(to right, var(--brun-chateau), var(--brun-ardoise)); }

.chateau-btn-parking-info { background: linear-gradient(90deg, var(--vert-foret-noire), #0750a4); color: var(--blanc-lin); border-color: rgba(0,0,0,0.3); }
.chateau-btn-parking-info:hover { background: linear-gradient(90deg, var(--vert-sapin-gris), #054083); }

.chateau-btn-agenda { background: rgba(237, 227, 212, 0.7); color: var(--brun-chateau); border: 1px solid var(--brun-chateau); }
.chateau-btn-agenda:hover { background: var(--lin-dore); color: var(--brun-ardoise); }

.chateau-btn-musee { background: linear-gradient(135deg, var(--gris-prune), var(--taupe-gris)); color: var(--blanc-lin); border-color: rgba(0,0,0,0.25); }
.chateau-btn-musee:hover { background: linear-gradient(135deg, var(--taupe-gris), var(--brun-ardoise)); }

.chateau-btn-inline { display: inline-block; background: transparent; color: var(--vert-foret-noire); padding: 0.15rem 0.4rem; border-radius: 999px; border: 1px solid rgba(99,110,86,0.4); text-transform: none; font-size: 0.95rem; }
.chateau-btn-inline:hover { background: rgba(99,110,86,0.08); color: var(--brun-chateau); }

.chateau-btn-with-icon { gap: 0.5rem; }
.chateau-btn-with-icon i, .chateau-btn-with-icon svg { font-size: 1.1em; }

.chateau-btn-airy { padding-top: 0.9rem; padding-bottom: 0.9rem; padding-left: 2.4rem; padding-right: 2.4rem; }

.chateau-btn-soft-border { border-width: 2px; box-shadow: 0 0 0 1px rgba(255,255,255,0.5) inset; }

/* --- Nouveaux Boutons Harmonisés --- */

/* 1. Bouton Origine (Tons Verts : Sauge/Foret)
   S'accorde avec header-origine et body-origine */
.chateau-btn-origine {
  background: linear-gradient(to bottom, #f1f5ef, var(--vert-brume));
  color: var(--vert-foret-noire);
  border-color: var(--vert-lichen);
}
.chateau-btn-origine:hover {
  background: linear-gradient(to bottom, var(--vert-brume), #eef0eb);
  color: var(--vert-sapin-gris);
  border-color: var(--vert-foret-noire);
}

/* 2. Bouton Forteresse (Tons Gris : Brume/Ardoise)
   Remplace le pierre-claire pour s'accorder au gris froid de la carte */
.chateau-btn-forteresse {
  background: linear-gradient(to bottom, #ffffff, var(--gris-brume));
  color: var(--brun-ardoise);
  border-color: var(--gris-taupe);
}
.chateau-btn-forteresse:hover {
  background: linear-gradient(to bottom, var(--gris-brume), #e2e4e8);
  color: var(--brun-chateau);
  border-color: var(--brun-ardoise);
}

/* 3. Bouton Reconstruction (Tons Chauds : Ivoire/Cuir)
   S'accorde avec header-reconstruction et body-reconstruction */
.chateau-btn-reconstruction {
  background: linear-gradient(to bottom, var(--ivoire), var(--lin-dore));
  color: var(--brun-cuir);
  border-color: var(--sable-vieilli);
}
.chateau-btn-reconstruction:hover {
  background: linear-gradient(to bottom, var(--lin-dore), var(--beige-argile));
  color: var(--brun-chateau);
  border-color: var(--brun-cuir);
}

/* 4. Bouton Aboutissement (CORRIGÉ) */
.chateau-btn-aboutissement {
  background: linear-gradient(to bottom, #fff5f0, var(--rose-brume));
  color: var(--brun-chateau);
  border-color: var(--argile-fumee);
}

.chateau-btn-aboutissement:hover {
  background: linear-gradient(to bottom, var(--rose-brume), var(--lin-rose));
  /* CORRECTION : Utilisation d'un brun très foncé pour la lisibilité */
  color: var(--brun-ardoise);
  border-color: var(--argile-fumee);
}

/* NEW FEATURES */
/* --- Conteneur Principal (Isolation totale) --- */
.menu-lateral-chateau {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 0; /* Important : les éléments se touchent */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  border-radius: var(--card-radius); /* 15px */
  margin-bottom: 2rem;
  /* On s'assure qu'aucun style de liste ne vient parasiter */
  list-style: none;
  padding: 0;
}

/* --- Style générique des liens (mlc-link) --- */
.mlc-link {
  position: relative;
  display: flex;
  align-items: center;
  padding: 18px 25px;
  text-decoration: none !important; /* Force la suppression du soulignement */
  font-family: 'Rosarivo', serif;
  font-size: 1.15rem;
  line-height: 1.2;

  /* Couleurs par défaut (Repos) */
  background-color: var(--blanc-coquille);
  color: var(--brun-ardoise);

  /* Bordure subtile */
  border: 1px solid rgba(119, 117, 106, 0.15);

  /* Astuce pour éviter les doubles bordures */
  margin-top: -1px;

  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  z-index: 1;
}

/* --- GESTION DES ARRONDIS (Monolithe) --- */

/* Le PREMIER élément (Château fort) */
.mlc-link:first-child {
  border-top-left-radius: var(--card-radius);
  border-top-right-radius: var(--card-radius);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  margin-top: 0;
}

/* Le DERNIER élément (Aboutissement) */
.mlc-link:last-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: var(--card-radius);
  border-bottom-right-radius: var(--card-radius);
}

/* Les éléments intermédiaires : coins carrés */
.mlc-link:not(:first-child):not(:last-child) {
  border-radius: 0;
}

/* --- INTERACTIONS (Hover & Active) --- */

/* Comportement général au survol */
.mlc-link:hover {
  z-index: 10; /* Passe au-dessus des voisins pour afficher ses bordures/ombres */
  padding-left: 30px; /* Décalage vers la droite */
}

/* 1. PARENT (Château fort) */
.mlc-parent {
  background-color: var(--blanc-lin); /* Légèrement différent pour marquer la hiérarchie */
  color: var(--brun-chateau);
  font-weight: bold;
}
.mlc-parent:hover {
  background-color: var(--blanc-coquille); /* Utilise un blanc cassé/ivoire */
  color: var(--vert-foret-noire); /* Couleur du texte au survol */
}

/* 2. ORIGINE (Verts) */
.mlc-origine:hover,
.mlc-origine.is-active {
  /* Dégradé repris de .header-origine */
  background: linear-gradient(135deg, var(--vert-foret-noire), var(--vert-sapin-gris));
  color: var(--vert-sauge-clair);
  border-color: rgba(0,0,0,0.1); /* Bordure discrète */
}

/* 3. FORTERESSE (Gris) */
.mlc-forteresse:hover,
.mlc-forteresse.is-active {
  /* Dégradé repris de .header-forteresse */
  background: linear-gradient(135deg, var(--brun-ardoise), var(--gris-taupe));
  color: var(--gres-clair);
  border-color: rgba(0,0,0,0.1);
}

/* 4. RECONSTRUCTION (Cuir) */
.mlc-reconstruction:hover,
.mlc-reconstruction.is-active {
  /* Dégradé repris de .header-reconstruction */
  background: linear-gradient(135deg, var(--brun-cuir), var(--taupe-ancien));
  color: var(--lin-dore);
  border-color: rgba(0,0,0,0.1);
}

/* 5. ABOUTISSEMENT (Rose/Brun) */
.mlc-aboutissement:hover,
.mlc-aboutissement.is-active {
  /* Dégradé repris de .header-aboutissement */
  background: linear-gradient(135deg, var(--brun-chateau), var(--argile-fumee));
  color: var(--rose-brume);
  border-color: rgba(0,0,0,0.1);
}

/* --- État Actif Spécifique (Fixe) --- */
.mlc-link.is-active {
  z-index: 5;
  font-weight: bold;
  box-shadow: inset 0 0 15px rgba(0,0,0,0.2); /* Effet de profondeur interne */
  padding-left: 25px; /* Reste aligné (ou 30px si vous voulez qu'il reste décalé) */
}


/* --- Nouveaux styles pour les cartes Mentions Légales --- */

/* 1. Conditions Générales d'Utilisation (Tons Ardoise/Pierre) */
.header-cgu { background: linear-gradient(135deg, var(--brun-ardoise), var(--gris-taupe)); }
.titre-cgu { color: var(--gres-clair); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-cgu a { color: var(--gres-clair); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-cgu a:hover { color: #ffffff; text-decoration: none; }
.body-cgu { background: linear-gradient(to bottom, var(--gris-brume), #e9ecef); }

.chateau-btn-cgu {
  background: linear-gradient(to bottom, var(--gris-taupe), var(--brun-ardoise));
  color: var(--blanc-coquille);
  border-color: var(--gris-ombre);
}
.chateau-btn-cgu:hover {
  background: linear-gradient(to bottom, var(--brun-ardoise), var(--brun-chateau));
  color: #ffffff;
  border-color: var(--brun-ardoise);
}

/* 2. Politique de Confidentialité (Tons Prune/Argile - Protection) */
.header-confidentialite { background: linear-gradient(135deg, var(--gris-prune), var(--brun-cuir)); }
.titre-confidentialite { color: var(--rose-brume); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-confidentialite a { color: var(--rose-brume); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-confidentialite a:hover { color: #ffffff; text-decoration: none; }
.body-confidentialite { background: linear-gradient(to bottom, var(--lin-rose), var(--rose-brume)); }

.chateau-btn-confidentialite {
  background: linear-gradient(to bottom, var(--gris-prune), var(--argile-fumee));
  color: var(--blanc-lin);
  border-color: var(--taupe-ancien);
}
.chateau-btn-confidentialite:hover {
  background: linear-gradient(to bottom, var(--argile-fumee), var(--brun-chateau));
  color: #ffffff;
  border-color: var(--brun-cuir);
}

/* 3. Politique Cookies (Tons Sauge Pâle/Lin - Transparence) */
.header-cookies { background: linear-gradient(135deg, var(--vert-sauge-fonce), var(--vert-argile)); }
.titre-cookies { color: var(--blanc-lin); text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-cookies a { color: var(--blanc-lin); text-decoration: none; text-transform: uppercase; font-family: 'Rosarivo', serif; }
.titre-cookies a:hover { color: #ffffff; text-decoration: none; }
.body-cookies { background: linear-gradient(to bottom, var(--vert-brume), var(--blanc-coquille)); }

.chateau-btn-cookies {
  background: linear-gradient(to bottom, var(--vert-argile), var(--vert-sauge-fonce));
  color: var(--blanc-coquille);
  border-color: var(--vert-lichen);
}
.chateau-btn-cookies:hover {
  background: linear-gradient(to bottom, var(--vert-sauge-fonce), var(--vert-foret-noire));
  color: #ffffff;
  border-color: var(--vert-sapin-gris);
}


/* Nouvelle classe pour les cartes statiques avec coins complets arrondis */
.card-static {
  /* Annule l'effet de mouvement du :hover de .card-reinhardstein */
  transform: none !important;
  transition: none !important;

  /* Supprime le débordement de l'en-tête et du corps pour forcer l'arrondi de la carte */
  overflow: hidden;

  /* Optionnel : Remplace l'ombre agressive par une ombre simple */
  box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
}

/* Force les coins du haut de l'en-tête à être arrondis (annule le border-radius: 0) */
.card-static .card-header {
  border-top-left-radius: var(--card-radius) !important;
  border-top-right-radius: var(--card-radius) !important;
}

/* Vous pouvez aussi annuler le box-shadow au survol si la ligne ci-dessus ne suffit pas */
.card-static:hover {
  transform: none !important;
  box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important; /* ou box-shadow: none !important; */
}

/* Classes personnalisées pour la rubrique "Musée" */

/* --- Classes Générales pour la Carte Musée --- */

/* Conteneur principal de la carte (similaire à la carte irréprochable) */
.carte-musee {
  border-color: var(--blanc-lin);
  /* Utilisation de l'ombre de la carte-static pour un style moins agressif */
  box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
}

/* Bloc texte général pour la carte musée */
.bloc-texte-musee {
  color: var(--gris-taupe); /* Couleur de texte plus foncée pour la lisibilité */
  font-family: 'Rosarivo', serif; /* Utilisation de la police vue dans style.css */
}

.bloc-texte-musee p {
  color: var(--gris-taupe);
}

/* --- Thème Armure (Texte à droite, Image à gauche) --- */

/* Arrière-plan pour le bloc texte de l'armure */
.bg-armure {
  background: var(--argile-fumee); /* Utilisation d'une couleur chaude/ancienne */
  color: var(--blanc-lin);
}

.bg-armure p {
  color: var(--blanc-lin);
}

/* --- Thème Meuble (Texte à gauche, Image à droite) --- */

/* Arrière-plan pour le bloc texte du meuble */
.bg-meuble {
  background: var(--ombre-lin); /* Utilisation d'une couleur neutre/boisée */
  color: var(--gris-ombre);
}

.bg-meuble p {
  color: var(--gris-ombre);
}

/* --- Thème Statue (Texte à droite, Image à gauche) --- */

/* Arrière-plan pour le bloc texte de la statue */
.bg-statue {
  background: var(--gris-prune); /* Utilisation d'une couleur "classique"/minérale */
  color: var(--blanc-coquille);
}

.bg-statue p {
  color: var(--blanc-coquille);
}

/* --- Thème Tapisserie (Texte à gauche, Image à droite) --- */

/* Arrière-plan pour le bloc texte de la tapisserie */
.bg-tapisserie {
  background: var(--vert-lichen); /* Utilisation d'une couleur "tissée"/naturelle */
  color: var(--blanc-coquille);
}

.bg-tapisserie p {
  color: var(--blanc-coquille);
}

/* --- Boutons personnalisés pour les thèmes du Musée --- */

/* Style général des boutons Musée */
.btn-musee {
  font-family: 'Rosarivo', serif; /* Cohérence avec le texte des cartes */
  font-weight: 700;
  text-transform: uppercase;
  border-width: 2px;
  padding: 0.5rem 1.25rem;
  transition: all 0.3s ease;
}

/* 1. Boutons Thème Armure (Basé sur var(--argile-fumee)) */

.btn-musee-armure {
  color: var(--blanc-lin);
  background-color: var(--argile-fumee);
  border-color: var(--argile-fumee);
}
.btn-musee-armure:hover {
  color: var(--argile-fumee);
  background-color: transparent;
  border-color: var(--argile-fumee);
}
.btn-outline-musee-armure {
  color: var(--argile-fumee);
  background-color: transparent;
  border-color: var(--argile-fumee);
}
.btn-outline-musee-armure:hover {
  color: var(--blanc-lin);
  background-color: var(--argile-fumee);
  border-color: var(--argile-fumee);
}

/* 2. Boutons Thème Meuble (Basé sur var(--ombre-lin)) */

.btn-musee-meuble {
  color: var(--gris-ombre);
  background-color: var(--ombre-lin);
  border-color: var(--ombre-lin);
}
.btn-musee-meuble:hover {
  color: var(--ombre-lin);
  background-color: transparent;
  border-color: var(--ombre-lin);
}
.btn-outline-musee-meuble {
  color: var(--ombre-lin);
  background-color: transparent;
  border-color: var(--ombre-lin);
}
.btn-outline-musee-meuble:hover {
  color: var(--gris-ombre);
  background-color: var(--ombre-lin);
  border-color: var(--ombre-lin);
}

/* 3. Boutons Thème Statue (Basé sur var(--gris-prune)) */

.btn-musee-statue {
  color: var(--blanc-coquille);
  background-color: var(--gris-prune);
  border-color: var(--gris-prune);
}
.btn-musee-statue:hover {
  color: var(--gris-prune);
  background-color: transparent;
  border-color: var(--gris-prune);
}
.btn-outline-musee-statue {
  color: var(--gris-prune);
  background-color: transparent;
  border-color: var(--gris-prune);
}
.btn-outline-musee-statue:hover {
  color: var(--blanc-coquille);
  background-color: var(--gris-prune);
  border-color: var(--gris-prune);
}

/* 4. Boutons Thème Tapisserie (Basé sur var(--vert-lichen)) */

.btn-musee-tapisserie {
  color: var(--blanc-coquille);
  background-color: var(--vert-lichen);
  border-color: var(--vert-lichen);
}
.btn-musee-tapisserie:hover {
  color: var(--vert-lichen);
  background-color: transparent;
  border-color: var(--vert-lichen);
}
.btn-outline-musee-tapisserie {
  color: var(--vert-lichen);
  background-color: transparent;
  border-color: var(--vert-lichen);
}
.btn-outline-musee-tapisserie:hover {
  color: var(--blanc-coquille);
  background-color: var(--vert-lichen);
  border-color: var(--vert-lichen);
}

/* --- Séparateurs horizontaux personnalisés pour les thèmes du Musée --- */

/* Style de base d'un séparateur horizontal dans les blocs de texte */
.hr-musee {
  /* Réinitialisation ou style minimal de base */
  margin-top: 1rem;
  margin-bottom: 1rem;
  margin-left: auto;
  margin-right: auto;
  width: 50%;
  opacity: 0.5; /* Rendre la ligne plus subtile */
  border-width: 0; /* Important pour utiliser height au lieu de border */
  height: 2px; /* Épaisseur du trait */
}

/* 1. Séparateur Thème Armure (Basé sur le fond var(--argile-fumee) mais plus clair) */
.hr-armure {
  background-color: rgba(255, 255, 255, 0.4); /* Blanc semi-transparent sur fond argile-fumee */
}

/* 2. Séparateur Thème Meuble (Basé sur le fond var(--ombre-lin) mais plus foncé) */
.hr-meuble {
  background-color: rgba(0, 0, 0, 0.2); /* Noir semi-transparent sur fond ombre-lin */
}

/* 3. Séparateur Thème Statue (Basé sur le fond var(--gris-prune) mais plus clair) */
.hr-statue {
  background-color: rgba(255, 255, 255, 0.4); /* Blanc semi-transparent sur fond gris-prune */
}

/* 4. Séparateur Thème Tapisserie (Basé sur le fond var(--vert-lichen) mais plus clair) */
.hr-tapisserie {
  background-color: rgba(255, 255, 255, 0.4); /* Blanc semi-transparent sur fond vert-lichen */
}

/* ==========================================================================
   Classes personnalisées - Offre Pédagogique
   ========================================================================== */

/* --- Cartes Offre Pédagogique --- */

/* Style commun à toutes les cartes de l'offre pédagogique */
.card-pedagogique {
  /* Assure que la bordure supérieure de l'image est bien arrondie */
  overflow: hidden;
  /* Coins arrondis en bas de la carte */
  border-radius: var(--bs-card-border-radius);
}

/* Style commun à toutes les images de l'offre pédagogique */
.img-pedagogique {
  /* Coins arrondis en haut de l'image */
  border-top-left-radius: var(--bs-card-border-radius);
  border-top-right-radius: var(--bs-card-border-radius);
}

/* Style commun au header de la carte */
.header-pedagogique {
  /* Supprimer l'arrondi par défaut pour les headers */
  border-radius: 0 !important;
  /* Garder la bordure entre header et body */
  border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

/* Style commun au titre */
.titre-pedagogique {
  /* Rendre le titre plus lisible */
  font-weight: 700;
}

/* Style commun au corps de la carte */
.body-pedagogique {
  /* Permettre au corps de prendre de la couleur si nécessaire */
  background-color: var(--blanc-coquille);
}


/* --- 1. Visite Classique (Basé sur gris-brume / gris-taupe) --- */
.card-visite-classique {
  border-color: var(--gris-taupe) !important;
}
.header-visite-classique {
  background-color: var(--gris-brume);
}
.titre-visite-classique {
  color: var(--gris-taupe);
}
.body-visite-classique {
  border-bottom-left-radius: var(--bs-card-border-radius);
  border-bottom-right-radius: var(--bs-card-border-radius);
}


/* --- 2. Visite Contée et Costumée (Basé sur amande-douce / sable-humide) --- */
.card-visite-contee {
  border-color: var(--sable-humide) !important;
}
.header-visite-contee {
  background-color: var(--amande-douce);
}
.titre-visite-contee {
  color: var(--sable-humide);
}
.body-visite-contee {
  border-bottom-left-radius: var(--bs-card-border-radius);
  border-bottom-right-radius: var(--bs-card-border-radius);
}


/* --- 3. Initiation au Tir à l'Arc (Basé sur vert-mousse / vert-lichen) --- */
.card-tir-arc {
  border-color: var(--vert-lichen) !important;
}
.header-tir-arc {
  background-color: var(--vert-mousse);
}
.titre-tir-arc {
  color: var(--blanc-coquille);
  /* Pour assurer la lisibilité du titre sur le fond vert-mousse */
}
.body-tir-arc {
  border-bottom-left-radius: var(--bs-card-border-radius);
  border-bottom-right-radius: var(--bs-card-border-radius);
}

.text-justify {
  text-align: justify !important;
}

/* Pour une meilleure justification (optionnel, surtout pour les longues lignes) */
.text-justify-all {
  text-align: justify;
  text-align-last: left; /* ou center, etc. selon le besoin */
}

/* --- Styles spécifiques aux Cartes Tarifaires --- */

.card-tarif {
  border: 1px solid var(--sable-vieilli);
  border-radius: var(--card-radius) !important;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  background-color: var(--blanc-coquille);
}

.header-tarif-sans {
  background: linear-gradient(135deg, var(--vert-foret-noire), var(--vert-sapin-gris));
  padding: 0.75rem;
  border-bottom: none;
}

.header-tarif-avec {
  background: linear-gradient(135deg, var(--brun-chateau), var(--brun-ardoise));
  padding: 0.75rem;
  border-bottom: none;
}

.titre-tarif {
  color: var(--blanc-lin);
  margin-bottom: 0;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 1px;
}

.body-tarif {
  padding: 2rem 1.5rem;
}

.sous-titre-tarif {
  color: var(--brun-chateau);
  font-weight: bold;
  font-size: 1.2rem;
  margin-bottom: 0.25rem;
}

.tarif-note {
  font-style: italic;
  font-size: 0.9rem;
  color: var(--gris-taupe);
}

.section-tarif li {
  padding: 8px 0;
  border-bottom: 1px dashed var(--gris-brume);
  font-size: 1.05rem;
}

.section-tarif li:last-child {
  border-bottom: none;
}

.hr-tarif {
  margin: 1.5rem 0;
  opacity: 0.15;
  color: var(--brun-chateau);
}

.alert-info-tarif {
  background-color: var(--ivoire);
  border-left: 4px solid var(--sable-humide);
  font-size: 0.9rem;
  padding: 0.75rem;
  color: var(--brun-ardoise);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .titre-tarif {
    font-size: 1.2rem;
  }
}

/* ==========================================================================
   Nouveaux Boutons pour Fonds Sombres (Cartes Bootstrap)
   ========================================================================== */

/* Structure de base commune */
[class*="btn-chateau-extra-"] {
  font-family: 'Rosarivo', serif;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  border-radius: 50px;
  padding: 0.6rem 1.6rem;
  transition: all 0.3s ease-in-out;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
}

[class*="btn-chateau-extra-"]:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

/* 1. Variante Or Ancien */
.btn-chateau-extra-or { background-color: var(--lin-dore); color: var(--brun-chateau); border-color: var(--sable-vieilli); }
.btn-chateau-extra-or:hover, .btn-chateau-extra-or:active { background-color: var(--blanc-lin); color: var(--brun-ardoise); }

/* 2. Variante Forêt Givrée */
.btn-chateau-extra-givre { background-color: transparent; color: var(--vert-brume); border-color: var(--vert-brume); }
.btn-chateau-extra-givre:hover { background-color: var(--vert-brume); color: var(--vert-foret-noire); }

/* 3. Variante Terre d'Hiver */
.btn-chateau-extra-terre { background-color: var(--terre-sechee); color: var(--brun-ardoise); border-color: var(--argile-fumee); }
.btn-chateau-extra-terre:hover { background-color: var(--blanc-coquille); color: var(--brun-chateau); }

/* 4. Variante Pierre de Lune */
.btn-chateau-extra-lune { background-color: var(--blanc-coquille); color: var(--gris-taupe); border-color: var(--gris-brume); }
.btn-chateau-extra-lune:hover { background-color: var(--gris-taupe); color: white; }

/* 5. Variante Sauge Lumineuse */
.btn-chateau-extra-sauge { background-color: var(--vert-sauge-clair); color: var(--vert-foret-noire); }
.btn-chateau-extra-sauge:hover { background-color: white; color: var(--vert-chene); }

/* 6. Variante Rose de Grès */
.btn-chateau-extra-gres-rose { background-color: var(--rose-brume); color: var(--brun-chateau); }
.btn-chateau-extra-gres-rose:hover { background-color: var(--argile-rose); color: var(--brun-ardoise); }

/* 7. Variante Lichen Cristallin */
.btn-chateau-extra-lichen { border-color: var(--vert-lichen); color: var(--vert-avoine); background: transparent; }
.btn-chateau-extra-lichen:hover { background: var(--vert-lichen); color: white; }

/* 8. Variante Ombre de Lin */
.btn-chateau-extra-ombre-lin { background-color: var(--ombre-lin); color: var(--brun-chateau); }
.btn-chateau-extra-ombre-lin:hover { background-color: var(--ivoire); color: var(--brun-cuir); }

/* 9. Variante Brume d'Amande */
.btn-chateau-extra-amande { background-color: var(--amande-douce); color: var(--lierre-sec); }
.btn-chateau-extra-amande:hover { background-color: white; color: var(--vert-mineral); }

/* 10. Variante Ardoise Douce */
.btn-chateau-extra-ardoise-soft { background-color: var(--gris-brume); color: var(--brun-ardoise); }
.btn-chateau-extra-ardoise-soft:hover { background-color: var(--blanc-lin); color: black; }

/* 11. Variante Argile de Feu */
.btn-chateau-extra-feu { background-color: var(--argile-fumee); color: var(--blanc-lin); border-color: var(--taupe-ancien); }
.btn-chateau-extra-feu:hover { background-color: var(--rose); color: var(--brun-chateau); }

/* 12. Variante Ivoire Pur */
.btn-chateau-extra-ivoire-royal { border-color: var(--ivoire); color: var(--ivoire); background: transparent; }
.btn-chateau-extra-ivoire-royal:hover { background: var(--ivoire); color: var(--brun-chateau); }

/* 13. Variante Mousse Matinale */
.btn-chateau-extra-mousse { background-color: var(--vert-mousse); color: white; }
.btn-chateau-extra-mousse:hover { background-color: var(--vert-avoine); color: var(--vert-foret-noire); }

/* 14. Variante Sable Doré */
.btn-chateau-extra-sable { background-color: var(--sable-humide); color: white; border-color: var(--sable-vieilli); }
.btn-chateau-extra-sable:hover { background-color: var(--lin-dore); color: var(--brun-chateau); }

/* 15. Variante Cuir de Selle */
.btn-chateau-extra-cuir { border: 2px solid var(--brun-seigle); color: var(--lin-rose); background: rgba(153, 128, 112, 0.2); }
.btn-chateau-extra-cuir:hover { background: var(--brun-seigle); color: white; }

/* 16. Variante Ghost Blanche */
.btn-chateau-extra-ghost { border: 1px solid rgba(255,255,255,0.5); color: white; background: rgba(255,255,255,0.1); }
.btn-chateau-extra-ghost:hover { background: white; color: var(--brun-ardoise); }

/* 17. Variante Lierre Luxuriant */
.btn-chateau-extra-lierre { background-color: var(--lierre-sec); color: var(--blanc-lin); }
.btn-chateau-extra-lierre:hover { background-color: var(--vert-avoine); color: var(--vert-mineral); }

/* 18. Variante Prune Polie */
.btn-chateau-extra-prune { background-color: var(--gris-prune); color: var(--blanc-coquille); }
.btn-chateau-extra-prune:hover { background-color: var(--rose-brume); color: var(--gris-prune); }

/* 19. Variante Écorce Claire */
.btn-chateau-extra-ecorce { background-color: var(--taupe-ancien); color: white; }
.btn-chateau-extra-ecorce:hover { background-color: var(--gres-clair); color: var(--brun-chateau); }

/* 20. Variante Horizon */
.btn-chateau-extra-horizon { background: linear-gradient(to right, var(--vert-avoine), var(--vert-sauge-clair)); color: var(--vert-foret-noire); border: none; }
.btn-chateau-extra-horizon:hover { background: white; box-shadow: 0 0 15px var(--vert-brume); }

/* ==========================================================================
   Nouveaux Boutons pour Fonds Foncés (30 variantes supplémentaires)
   ========================================================================== */

[class*="btn-chateau-dark-"] {
  font-family: 'Rosarivo', serif;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  border-radius: 50px;
  padding: 0.65rem 1.8rem;
  font-size: 0.95rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}

[class*="btn-chateau-dark-"]:hover,
[class*="btn-chateau-dark-"]:focus,
[class*="btn-chateau-dark-"]:active {
  box-shadow: 0 8px 20px rgba(0,0,0,0.25);
}

/* 1. Lin Doré Lumineux */
.btn-chateau-dark-lin-lumiere { background-color: var(--lin-dore); color: var(--brun-chateau); border-color: var(--sable-vieilli); }
.btn-chateau-dark-lin-lumiere:hover { background-color: var(--blanc-coquille); color: var(--brun-ardoise); }

/* 2. Coquille Éclatante */
.btn-chateau-dark-coquille-eclat { background-color: var(--blanc-coquille); color: var(--vert-foret-noire); border-color: var(--gris-brume); }
.btn-chateau-dark-coquille-eclat:hover { background-color: var(--blanc-lin); color: var(--brun-chateau); }

/* 3. Sauge Claire Illuminée */
.btn-chateau-dark-sauge-illum { background-color: var(--vert-sauge-clair); color: var(--vert-foret-noire); border-color: var(--vert-argile); }
.btn-chateau-dark-sauge-illum:hover { background-color: var(--blanc-coquille); color: var(--vert-chene); }

/* 4. Rose Brume Douce */
.btn-chateau-dark-rose-douce { background-color: var(--rose-brume); color: var(--brun-ardoise); border-color: var(--argile-rose); }
.btn-chateau-dark-rose-douce:hover { background-color: var(--blanc-lin); color: var(--brun-chateau); }

/* 5. Ivoire Royal */
.btn-chateau-dark-ivoire-royal { background-color: var(--ivoire); color: var(--brun-cuir); border-color: var(--ombre-lin); }
.btn-chateau-dark-ivoire-royal:hover { background-color: var(--blanc-coquille); color: var(--brun-ardoise); }

/* 6. Brume Verte Lumière */
.btn-chateau-dark-brume-lumiere { background-color: var(--vert-brume); color: var(--vert-mineral); border-color: var(--vert-avoine); }
.btn-chateau-dark-brume-lumiere:hover { background-color: var(--blanc-coquille); color: var(--vert-chene); }

/* 7. Amande Douce Éclat */
.btn-chateau-dark-amande-eclat { background-color: var(--amande-douce); color: var(--lierre-sec); border-color: var(--beige-argile); }
.btn-chateau-dark-amande-eclat:hover { background-color: var(--blanc-lin); color: var(--brun-seigle); }

/* 8. Gres Clair Brillant */
.btn-chateau-dark-gres-brillant { background-color: var(--gres-clair); color: var(--gris-taupe); border-color: var(--sable-humide); }
.btn-chateau-dark-gres-brillant:hover { background-color: var(--blanc-coquille); color: var(--brun-ardoise); }

/* 9. Lin Rose Lumineux */
.btn-chateau-dark-lin-rose-lum { background-color: var(--lin-rose); color: var(--brun-chateau); border-color: var(--terre-sechee); }
.btn-chateau-dark-lin-rose-lum:hover { background-color: var(--rose-brume); color: var(--brun-ardoise); }

/* 10. Argile Rose Claire */
.btn-chateau-dark-argile-claire { background-color: var(--argile-rose); color: var(--brun-cuir); border-color: var(--taupe-ancien); }
.btn-chateau-dark-argile-claire:hover { background-color: var(--blanc-coquille); color: var(--argile-fumee); }

/* 11. Mousse Pâle */
.btn-chateau-dark-mousse-pale { background-color: var(--vert-mousse); color: var(--blanc-coquille); border-color: var(--vert-lichen); }
.btn-chateau-dark-mousse-pale:hover { background-color: var(--blanc-lin); color: var(--vert-foret-noire); }

/* 12. Lichen Clair */
.btn-chateau-dark-lichen-clair { background-color: var(--vert-lichen); color: var(--blanc-coquille); border-color: var(--vert-chene); }
.btn-chateau-dark-lichen-clair:hover { background-color: var(--vert-brume); color: var(--vert-foret-noire); }

/* 13. Avoine Lumière */
.btn-chateau-dark-avoine-lumiere { background-color: var(--vert-avoine); color: var(--vert-mineral); border-color: var(--vert-sauge-clair); }
.btn-chateau-dark-avoine-lumiere:hover { background-color: var(--blanc-coquille); color: var(--vert-chene); }

/* 14. Sable Humide Doux */
.btn-chateau-dark-sable-doux { background-color: var(--sable-humide); color: var(--brun-ardoise); border-color: var(--sable-vieilli); }
.btn-chateau-dark-sable-doux:hover { background-color: var(--lin-dore); color: var(--brun-chateau); }

/* 15. Taupe Ancien Éclat */
.btn-chateau-dark-taupe-eclat { background-color: var(--taupe-ancien); color: var(--blanc-lin); border-color: var(--argile-fumee); }
.btn-chateau-dark-taupe-eclat:hover { background-color: var(--blanc-coquille); color: var(--brun-cuir); }

/* 16. Terre Sèche Lumineuse */
.btn-chateau-dark-terre-lumineuse { background-color: var(--terre-sechee); color: var(--brun-ardoise); border-color: var(--argile-fumee); }
.btn-chateau-dark-terre-lumineuse:hover { background-color: var(--lin-dore); color: var(--brun-chateau); }

/* 17. Rose Clair Brillant */
.btn-chateau-dark-rose-brillant { background-color: var(--rose); color: var(--brun-chateau); border-color: var(--lin-rose); }
.btn-chateau-dark-rose-brillant:hover { background-color: var(--blanc-coquille); color: var(--brun-ardoise); }

/* 18. Prune Douce */
.btn-chateau-dark-prune-douce { background-color: var(--gris-prune); color: var(--blanc-coquille); border-color: var(--taupe-ancien); }
.btn-chateau-dark-prune-douce:hover { background-color: var(--rose-brume); color: var(--brun-chateau); }

/* 19. Cuir Clair */
.btn-chateau-dark-cuir-clair { background-color: var(--brun-cuir); color: var(--blanc-lin); border-color: var(--brun-seigle); }
.btn-chateau-dark-cuir-clair:hover { background-color: var(--lin-dore); color: var(--brun-ardoise); }

/* 20. Seigle Lumineux */
.btn-chateau-dark-seigle-lum { background-color: var(--brun-seigle); color: var(--blanc-coquille); border-color: var(--ombre-lin); }
.btn-chateau-dark-seigle-lum:hover { background-color: var(--blanc-lin); color: var(--brun-chateau); }

/* 21. Outline Blanc Coquille */
.btn-chateau-dark-outline-coquille { background: transparent; color: var(--blanc-coquille); border-color: var(--blanc-coquille); }
.btn-chateau-dark-outline-coquille:hover { background-color: var(--blanc-coquille); color: var(--vert-foret-noire); }

/* 22. Outline Lin Doré */
.btn-chateau-dark-outline-lin { background: transparent; color: var(--lin-dore); border-color: var(--lin-dore); }
.btn-chateau-dark-outline-lin:hover { background-color: var(--lin-dore); color: var(--brun-ardoise); }

/* 23. Outline Sauge Clair */
.btn-chateau-dark-outline-sauge { background: transparent; color: var(--vert-sauge-clair); border-color: var(--vert-sauge-clair); }
.btn-chateau-dark-outline-sauge:hover { background-color: var(--vert-sauge-clair); color: var(--vert-foret-noire); }

/* 24. Ghost Brume */
.btn-chateau-dark-ghost-brume { background: rgba(255,255,255,0.15); color: var(--blanc-lin); border-color: rgba(243,235,228,0.6); backdrop-filter: blur(6px); }
.btn-chateau-dark-ghost-brume:hover { background: var(--blanc-lin); color: var(--brun-chateau); }

/* 25. Gradient Clair-Foncé Inverse */
.btn-chateau-dark-gradient-inverse { background: linear-gradient(to bottom, var(--blanc-coquille), var(--gres-clair)); color: var(--brun-ardoise); }
.btn-chateau-dark-gradient-inverse:hover { background: linear-gradient(to bottom, var(--gres-clair), var(--blanc-lin)); color: var(--brun-chateau); }

/* 26. Gradient Rose Clair */
.btn-chateau-dark-gradient-rose-clair { background: linear-gradient(135deg, var(--rose-brume), var(--lin-rose)); color: var(--brun-chateau); }
.btn-chateau-dark-gradient-rose-clair:hover { background: linear-gradient(135deg, var(--blanc-coquille), var(--rose-brume)); color: var(--brun-ardoise); }

/* 27. Gradient Vert Clair */
.btn-chateau-dark-gradient-vert-clair { background: linear-gradient(135deg, var(--vert-sauge-clair), var(--vert-mousse)); color: var(--vert-foret-noire); }
.btn-chateau-dark-gradient-vert-clair:hover { background: linear-gradient(135deg, var(--blanc-coquille), var(--vert-brume)); color: var(--vert-chene); }

/* 28. Blanc Lin Pur */
.btn-chateau-dark-blanc-lin-pur { background-color: var(--blanc-lin); color: var(--brun-ardoise); border-color: var(--ombre-lin); }
.btn-chateau-dark-blanc-lin-pur:hover { background-color: #ffffff; color: var(--brun-chateau); }

/* 29. Ombre Lin Lumineuse */
.btn-chateau-dark-ombre-lumineuse { background-color: var(--ombre-lin); color: var(--brun-chateau); border-color: var(--sable-vieilli); }
.btn-chateau-dark-ombre-lumineuse:hover { background-color: var(--blanc-coquille); color: var(--brun-ardoise); }

/* 30. Argile Fumée Claire */
.btn-chateau-dark-argile-claire { background-color: var(--argile-fumee); color: var(--blanc-coquille); border-color: var(--taupe-ancien); }
.btn-chateau-dark-argile-claire:hover { background-color: var(--blanc-lin); color: var(--brun-cuir); }

/* ==========================================================================
   Nouveaux Boutons Outline & Ghost pour Fonds Foncés (20 variantes)
   ========================================================================== */

[class*="btn-chateau-ghost-outline-"] {
  font-family: 'Rosarivo', serif;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  border-radius: 50px;
  padding: 0.65rem 1.8rem;
  font-size: 0.95rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}

[class*="btn-chateau-ghost-outline-"]:hover,
[class*="btn-chateau-ghost-outline-"]:focus,
[class*="btn-chateau-ghost-outline-"]:active {
  box-shadow: 0 8px 20px rgba(0,0,0,0.25);
}

/* Outline variantes */
.btn-chateau-ghost-outline-ivoire { background: transparent; color: var(--ivoire); border-color: var(--ivoire); }
.btn-chateau-ghost-outline-ivoire:hover { background-color: var(--ivoire); color: var(--brun-chateau); }

.btn-chateau-ghost-outline-gres { background: transparent; color: var(--gres-clair); border-color: var(--gres-clair); }
.btn-chateau-ghost-outline-gres:hover { background-color: var(--gres-clair); color: var(--brun-ardoise); }

.btn-chateau-ghost-outline-amande { background: transparent; color: var(--amande-douce); border-color: var(--amande-douce); }
.btn-chateau-ghost-outline-amande:hover { background-color: var(--amande-douce); color: var(--brun-seigle); }

.btn-chateau-ghost-outline-rose { background: transparent; color: var(--rose-brume); border-color: var(--rose-brume); }
.btn-chateau-ghost-outline-rose:hover { background-color: var(--rose-brume); color: var(--brun-chateau); }

.btn-chateau-ghost-outline-linrose { background: transparent; color: var(--lin-rose); border-color: var(--lin-rose); }
.btn-chateau-ghost-outline-linrose:hover { background-color: var(--lin-rose); color: var(--brun-ardoise); }

.btn-chateau-ghost-outline-saugeclair { background: transparent; color: var(--vert-sauge-clair); border-color: var(--vert-sauge-clair); }
.btn-chateau-ghost-outline-saugeclair:hover { background-color: var(--vert-sauge-clair); color: var(--vert-foret-noire); }

.btn-chateau-ghost-outline-mousse { background: transparent; color: var(--vert-mousse); border-color: var(--vert-mousse); }
.btn-chateau-ghost-outline-mousse:hover { background-color: var(--vert-mousse); color: var(--blanc-coquille); }

.btn-chateau-ghost-outline-lichen { background: transparent; color: var(--vert-lichen); border-color: var(--vert-lichen); }
.btn-chateau-ghost-outline-lichen:hover { background-color: var(--vert-lichen); color: var(--blanc-lin); }

.btn-chateau-ghost-outline-brumevert { background: transparent; color: var(--vert-brume); border-color: var(--vert-brume); }
.btn-chateau-ghost-outline-brumevert:hover { background-color: var(--vert-brume); color: var(--vert-mineral); }

.btn-chateau-ghost-outline-lindore { background: transparent; color: var(--lin-dore); border-color: var(--lin-dore); }
.btn-chateau-ghost-outline-lindore:hover { background-color: var(--lin-dore); color: var(--brun-chateau); }

/* Ghost variantes (semi-transparent + blur) */
.btn-chateau-ghost-outline-ghost-ivoire { background: rgba(237,227,212,0.15); color: var(--ivoire); border-color: rgba(237,227,212,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-ivoire:hover { background: var(--ivoire); color: var(--brun-ardoise); }

.btn-chateau-ghost-outline-ghost-coquille { background: rgba(243,235,228,0.15); color: var(--blanc-coquille); border-color: rgba(243,235,228,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-coquille:hover { background: var(--blanc-coquille); color: var(--vert-foret-noire); }

.btn-chateau-ghost-outline-ghost-lin { background: rgba(236,223,204,0.15); color: var(--lin-dore); border-color: rgba(236,223,204,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-lin:hover { background: var(--lin-dore); color: var(--brun-chateau); }

.btn-chateau-ghost-outline-ghost-rose { background: rgba(226,211,196,0.15); color: var(--rose-brume); border-color: rgba(226,211,196,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-rose:hover { background: var(--rose-brume); color: var(--brun-ardoise); }

.btn-chateau-ghost-outline-ghost-sauge { background: rgba(190,195,165,0.15); color: var(--vert-sauge-clair); border-color: rgba(190,195,165,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-sauge:hover { background: var(--vert-sauge-clair); color: var(--vert-chene); }

.btn-chateau-ghost-outline-ghost-mousse { background: rgba(151,166,135,0.15); color: var(--vert-mousse); border-color: rgba(151,166,135,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-mousse:hover { background: var(--vert-mousse); color: var(--blanc-coquille); }

.btn-chateau-ghost-outline-ghost-lichen { background: rgba(135,147,121,0.15); color: var(--vert-lichen); border-color: rgba(135,147,121,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-lichen:hover { background: var(--vert-lichen); color: var(--blanc-lin); }

.btn-chateau-ghost-outline-ghost-amande { background: rgba(224,217,201,0.15); color: var(--amande-douce); border-color: rgba(224,217,201,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-amande:hover { background: var(--amande-douce); color: var(--brun-seigle); }

.btn-chateau-ghost-outline-ghost-gres { background: rgba(237,225,209,0.15); color: var(--gres-clair); border-color: rgba(237,225,209,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.btn-chateau-ghost-outline-ghost-gres:hover { background: var(--gres-clair); color: var(--gris-taupe); }

.btn-chateau-ghost-outline-ghost-brumeclair { background: rgba(218,214,193,0.18); color: var(--vert-brume); border-color: rgba(218,214,193,0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.btn-chateau-ghost-outline-ghost-brumeclair:hover { background: var(--vert-brume); color: var(--vert-mineral); }
