/* ==========================================================================
   Studio Auralis Production — feuille de style Boutique & Collaboration
   Thème clair (blanc cassé / anthracite / or), aligné sur la page d'accueil.
   À charger APRÈS votre style.css existant si vous en avez un.
   ========================================================================== */

:root{
  --aur-fond-clair:     #f7f4ee;  /* blanc cassé, fond par défaut */
  --aur-fond-carte:     #ffffff;  /* blanc pur, cartes / sections alternées */
  --aur-anthracite:     #232220;  /* texte principal */
  --aur-anthracite-mute:#6b675e;  /* texte secondaire / légendes */
  --aur-or:             #c9a227;  /* accent doré (fonds, boutons) */
  --aur-or-clair:       #e6c869;  /* doré clair, sur fond photo sombre */
  --aur-or-fonce:       #a8801c;  /* doré assombri, lisible sur fond clair */
  --aur-bordure:        rgba(35,34,32,.12);
  --aur-serif-display:  'Playfair Display', Georgia, 'Times New Roman', serif;
  --aur-serif-corps:    'Cormorant Garamond', Georgia, serif;
  --aur-transition:     .25s ease;
}
html{
  font-size: 120%; /* 18px au lieu de 16px par défaut, tout le site suit proportionnellement */
}
.aur-page{ 
  background:var(--aur-fond-clair); 
  color:var(--aur-anthracite); 
  font-family:var(--aur-serif-corps); 
}
    *, *::before, *::after{
  box-sizing: border-box;}

/* ---------- En-tête de section ---------- */
.aur-hero{
  position:relative;
  background:var(--aur-fond-carte);
  color:var(--aur-anthracite);
  padding:110px 8vw 80px;
  overflow:hidden;
}
.aur-hero__eyebrow {
  font-family: var(--aur-serif-corps);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--aur-or-fonce);
  font-size: .85rem;
  margin: 0 auto 18px;
  
  /* Centrage du surtitre */
  display: inline-block;
}

.aur-hero h1 {
  font-family: var(--aur-serif-display);
  font-weight: 600;
  font-size: clamp(2.2rem, 5vw, 3.6rem);
  letter-spacing: .02em;
  line-height: 1.12;
  margin: 0 0 20px;
}

.aur-banniere-texte p:not(.aur-hero__eyebrow) {
  max-width: 640px;
  font-size: 1.2rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
  margin: 0 auto;
}

/* Bordure "papier déchiré" en transition vers la section suivante */
.aur-dechire{
  position:absolute;
  left:0; right:0; bottom:-1px;
  height:34px;
  background:var(--aur-fond-clair);
  clip-path: polygon(
    0% 100%, 0% 30%, 2% 55%, 4% 20%, 6% 60%, 8% 15%, 10% 50%, 12% 25%,
    14% 65%, 16% 10%, 18% 45%, 20% 20%, 22% 55%, 24% 30%, 26% 60%, 28% 10%,
    30% 50%, 32% 25%, 34% 65%, 36% 15%, 38% 55%, 40% 20%, 42% 60%, 44% 10%,
    46% 50%, 48% 25%, 50% 65%, 52% 15%, 54% 55%, 56% 20%, 58% 60%, 60% 10%,
    62% 50%, 64% 25%, 66% 65%, 68% 15%, 70% 55%, 72% 20%, 74% 60%, 76% 10%,
    78% 50%, 80% 25%, 82% 65%, 84% 15%, 86% 55%, 88% 20%, 90% 60%, 92% 10%,
    94% 50%, 96% 25%, 98% 65%, 100% 15%, 100% 100%
  );
}

/* ---------- Conteneur général ---------- */
.aur-section{ padding:70px 8vw; background:var(--aur-fond-clair); }
.aur-section--sombre{ background:var(--aur-fond-carte); } /* alternance douce, plus de fond sombre */
.aur-section__titre{
  font-family:var(--aur-serif-display);
  font-size:clamp(1.6rem, 3vw, 2.2rem);
  margin:0 0 8px;
  color:var(--aur-anthracite);
}
.aur-section__soustitre{
  color:var(--aur-anthracite-mute);
  font-size:1.05rem;
  margin:0 0 40px;
  max-width:620px;
}

/* ---------- Grille de cartes (boutique) ---------- */
.aur-grille{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));
  gap:28px;
}
.aur-carte{
  background:var(--aur-fond-carte);
  color:var(--aur-anthracite);
  border-radius:2px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  border:1px solid var(--aur-bordure);
  box-shadow:0 18px 40px -28px rgba(35,34,32,.25);
  transition:transform var(--aur-transition), border-color var(--aur-transition);
}
.aur-carte:hover{ transform:translateY(-4px); border-color:var(--aur-or); }
.aur-carte__cover{
  aspect-ratio:1/1;
  background:#eee9dd center/cover no-repeat;
  position:relative;
}
.aur-carte__type{
  position:absolute; top:12px; left:12px;
  font-size:.7rem; letter-spacing:.12em; text-transform:uppercase;
  background:var(--aur-or); color:var(--aur-anthracite);
  padding:4px 10px; border-radius:2px; font-family:var(--aur-serif-corps); font-weight:600;
}
.aur-carte__corps{ padding:20px 20px 22px; flex:1; display:flex; flex-direction:column; }
.aur-carte__titre{ font-family:var(--aur-serif-display); font-size:1.25rem; margin:0 0 4px; }
.aur-carte__meta{ color:var(--aur-anthracite-mute); font-size:.95rem; margin:0 0 16px; }
.aur-carte__bas{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.aur-carte__prix{ font-family:var(--aur-serif-display); font-size:1.3rem; color:var(--aur-or-fonce); }

.aur-audio{ width:100%; margin:0 0 14px; height:34px; }

/* Case à cocher "Ajouter" */
.aur-check{
  display:flex; align-items:center; gap:8px; cursor:pointer;
  font-size:.95rem; user-select:none; color:var(--aur-anthracite);
}
.aur-check input{ accent-color:var(--aur-or); width:18px; height:18px; cursor:pointer; }

/* ---------- Barre panier / total flottante ---------- */
.aur-barre-flottante{
  position:fixed; left:0; right:0; bottom:0; z-index:50;
  background:var(--aur-fond-carte);
  border-top:1px solid var(--aur-or);
  color:var(--aur-anthracite);
  padding:16px 8vw;
  box-shadow:0 -12px 30px -20px rgba(35,34,32,.35);
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  transform:translateY(100%);
  transition:transform var(--aur-transition);
}
.aur-barre-flottante.est-visible{ transform:translateY(0); }
.aur-barre-flottante__total{ font-family:var(--aur-serif-display); font-size:1.15rem; }
.aur-barre-flottante__total strong{ color:var(--aur-or-fonce); }

/* ---------- Boutons ---------- */
.aur-btn{
  display:inline-block;
  font-family:var(--aur-serif-corps);
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:.85rem;
  padding:13px 28px;
  border-radius:2px;
  border:1px solid var(--aur-or);
  background:var(--aur-or);
  color:var(--aur-anthracite);
  cursor:pointer;
  text-decoration:none;
  transition:background var(--aur-transition), color var(--aur-transition);
}
.aur-btn:hover{ background:transparent; color:var(--aur-or-fonce); }
.aur-btn--fantome{ background:transparent; color:var(--aur-anthracite); border-color:var(--aur-bordure); }
.aur-btn--fantome:hover{ border-color:var(--aur-or); color:var(--aur-or-fonce); }
.aur-btn:disabled{ opacity:.4; cursor:not-allowed; }

/* ---------- Formulaire ---------- */
.aur-formulaire{ max-width:640px; }
.aur-champ{ margin-bottom:20px; }
.aur-champ label{ display:block; font-size:.85rem; letter-spacing:.06em; text-transform:uppercase; margin-bottom:6px; color:var(--aur-anthracite-mute); }
.aur-champ input[type=text], .aur-champ input[type=email], .aur-champ input[type=tel], .aur-champ textarea{
  width:100%; padding:12px 14px; font-family:var(--aur-serif-corps); font-size:1.05rem;
  background:var(--aur-fond-carte); border:1px solid var(--aur-bordure); color:var(--aur-anthracite);
  border-radius:2px;
}
.aur-champ input:focus, .aur-champ textarea:focus{ outline:2px solid var(--aur-or); outline-offset:1px; }
.aur-champ textarea{ min-height:110px; resize:vertical; }
.aur-recap{
  background:rgba(201,162,39,.08); border:1px solid rgba(201,162,39,.35);
  padding:16px 18px; border-radius:2px; margin-bottom:24px; font-size:.98rem; color:var(--aur-anthracite);
}
.aur-recap ul{ margin:8px 0 0; padding-left:20px; }
.aur-recap__vide{ color:var(--aur-anthracite-mute); font-style:italic; }

/* ---------- Calculateur collaboration ---------- */
.aur-options-groupe{ margin-bottom:36px; }
.aur-options-groupe h3{ font-family:var(--aur-serif-display); font-size:1.3rem; margin:0 0 16px; color:var(--aur-or-fonce); }
.aur-option-ligne{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:14px 0; border-bottom:1px solid var(--aur-bordure);
}
.aur-option-ligne__label{ display:flex; align-items:center; gap:10px; font-size:1.02rem; color:var(--aur-anthracite); }
.aur-option-ligne__prix{ color:var(--aur-anthracite-mute); white-space:nowrap; font-family:var(--aur-serif-display); }
.aur-qte{ display:flex; align-items:center; gap:8px; }
.aur-qte input[type=number]{
  width:60px; text-align:center; padding:6px 4px; background:var(--aur-fond-carte);
  border:1px solid var(--aur-bordure); color:var(--aur-anthracite); border-radius:2px; font-family:var(--aur-serif-corps);
}
.aur-delais-liste{ display:flex; flex-direction:column; gap:10px; margin-bottom:30px; }
.aur-delais-ligne{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:12px 16px; border:1px solid var(--aur-bordure); border-radius:2px; cursor:pointer;
  background:var(--aur-fond-carte); color:var(--aur-anthracite);
}
.aur-delais-ligne:has(input:checked){ border-color:var(--aur-or); background:rgba(201,162,39,.08); }
.aur-delais-ligne input{ accent-color:var(--aur-or); }

.aur-total-panneau{
  width: 60vh;
  position:sticky; top:24px;
  background:var(--aur-fond-carte); border:1px solid var(--aur-or);
  padding:24px; border-radius:2px; color:var(--aur-anthracite);
  box-shadow:0 18px 40px -28px rgba(35,34,32,.25);
}
.aur-total-panneau__ligne{ display:flex; justify-content:space-between; font-size:.98rem; margin-bottom:8px; color:var(--aur-anthracite-mute); }
.aur-total-panneau__final{ display:flex; justify-content:space-between; align-items:baseline; margin-top:14px; padding-top:14px; border-top:1px solid var(--aur-bordure); }
.aur-total-panneau__final span:last-child{ font-family:var(--aur-serif-display); font-size:1.8rem; color:var(--aur-or-fonce); }

.aur-grille-2col{ display:grid; grid-template-columns:1.4fr .9fr; gap:44px; align-items:start; }
@media (max-width: 880px){ .aur-grille-2col{ grid-template-columns:1fr; } .aur-total-panneau{ position:static; } }

/* ---------- Bandeau de confirmation ---------- */
.aur-confirmation{ text-align:center; padding:140px 8vw; }
.aur-confirmation h1{ font-family:var(--aur-serif-display); font-size:2.4rem; margin-bottom:16px; }
.aur-confirmation p{ color:var(--aur-anthracite-mute); font-size:1.1rem; margin-bottom:32px; }

/* ---------- Bannière image (page contact) ---------- */
.aur-banniere {
  position: relative;
  height: 56vh;
  min-height: 380px;
  background-size: cover;
  background-position: center;
  background-color: var(--aur-fond-carte);
  
  /* Flexbox centré verticalement et horizontalement */
  display: flex;
  align-items: center;
  justify-content: center;
  
  /* Espace de sécurité sous la barre de navigation si elle est fixe/sticky */
  padding-top: 80px;
  box-sizing: border-box;
}

.aur-banniere::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,14,12,.15) 0%, rgba(15,14,12,.55) 100%);
}

.aur-banniere-texte {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 880px;
  width: 100%;
  
  /* Remplacement du padding de 200px par des marges fluides */
  margin: 0 auto;
  padding: 20px 8vw;
  box-sizing: border-box;
  color: #ffffff;
  /* Décale le bloc vers le haut de manière fluide */
  transform: translateY(-45px);
}
.aur-banniere-texte .aur-hero__eyebrow{ justify-content:center; color:var(--aur-or-clair); }
.aur-banniere-texte h1{
  font-family:var(--aur-serif-display); font-weight:600;
  font-size:clamp(2rem, 4.5vw, 3rem); margin:0 0 18px; color:#ffffff;
}
.aur-banniere-texte p{
  font-size:1.15rem; line-height:1.65; color:#f1efe8; margin:0;
}

.aur-banniere-texteB{
  position:relative;
  z-index:1;
  text-align:center;
  max-width:880px;
  margin:0 auto;
  padding:0 8vw 80px;
  color:#ffffff;
}
.aur-banniere-texteB .aur-hero__eyebrow{ justify-content:center; color:var(--aur-or-clair); }
.aur-banniere-texteB h1{
  font-family:var(--aur-serif-display); font-weight:600;
  font-size:clamp(2rem, 4.5vw, 3rem); margin:0 0 18px; color:#ffffff;
}
.aur-banniere-texteB p{
  font-size:1.15rem; line-height:1.65; color:#f1efe8; margin:0;
}
.aur-formulaire--centre{ max-width:560px; margin:0 auto; }
.aur-contact-info{
  text-align:center; margin:0 0 40px; color:var(--aur-anthracite-mute); font-size:1.05rem;
}
.aur-contact-info a{ color:var(--aur-or-fonce); text-decoration:none; border-bottom:1px solid var(--aur-or-fonce); }

/* ---------- Espace admin ---------- */
.aur-admin-barre{
  background:var(--aur-anthracite); 
  color:#fff;
  padding:18px 6vw; 
  display:flex; 
  justify-content:space-between; 
  align-items:center;
  font-family:var(--aur-serif-corps); 
  flex-wrap:wrap; gap:14px;
}
.aur-admin-barre__marque{ 
  font-family:var(--aur-serif-display); 
  letter-spacing:.06em; 
}
.aur-admin-barre__onglets{ 
  display:flex; gap:22px; 
  align-items:center; 
  font-size:.9rem; }
.aur-admin-barre__onglets a{ 
  color:#e8e5da; 
  text-decoration:none; 
  opacity:.85; 
  padding-bottom:3px; 
  border-bottom:1px solid transparent; 
}
.aur-admin-barre__onglets a:hover{ 
  opacity:1; 
}
.aur-admin-barre__onglets a.aur-actif{ 
  color:var(--aur-or-clair); 
  border-color:var(--aur-or-clair); 
  opacity:1; 
}
.aur-admin-barre__deconnexion{ 
  color:#cfcabd; 
  font-size:.85rem; 
  text-decoration:none; 
}
.aur-admin-barre__deconnexion:hover{ 
  color:#fff; 
}

.aur-admin-corps{ 
  padding:50px 6vw 90px; 
  max-width:1400px !important; 
  margin:0 auto; 
;
}
.aur-admin-corps h1{ 
  font-family:var(--aur-serif-display); 
  font-size:1.9rem; margin:0 0 6px; 
  color:var(--aur-anthracite); 
}
.aur-admin-corps__soustitre{ 
  color:var(--aur-anthracite-mute); 
  margin:0 0 36px; 
}

.aur-fiche{
  background:var(--aur-fond-carte); 
  border:1px solid var(--aur-bordure); 
  border-radius:2px;
  padding:26px 28px; 
  margin-bottom:18px; 
  box-shadow:0 14px 30px -26px rgba(35,34,32,.3);
}
.aur-fiche__entete{ 
  display:flex; 
  justify-content:space-between; 
  align-items:baseline; 
  flex-wrap:wrap; 
  gap:10px; 
  margin-bottom:6px; 
}
.aur-fiche h2{ 
  font-family:var(--aur-serif-display); 
  margin:0; font-size:1.25rem; 
  color:var(--aur-anthracite); 
}
.aur-fiche__meta{ 
  color:var(--aur-anthracite-mute); 
  font-size:.85rem; 
  margin:0 0 18px; 
}
.aur-fiche dl{ 
  display:grid; 
  grid-template-columns:140px 1fr; 
  gap:8px 14px; 
  margin:0; 
}
.aur-fiche dt{ 
  color:var(--aur-anthracite-mute); 
  font-size:.78rem; 
  text-transform:uppercase; 
  letter-spacing:.05em; padding-top:2px; 
}
.aur-fiche dd{ 
  margin:0 0 4px; 
  color:var(--aur-anthracite); 
}
.aur-fiche a{ 
  color:var(--aur-or-fonce); 
}
.aur-badge{
  display:inline-block; 
  padding:4px 12px; 
  border-radius:20px; 
  font-size:.72rem;
  text-transform:uppercase; 
  letter-spacing:.05em; 
  background:rgba(201,162,39,.15); 
  color:var(--aur-or-fonce);
  font-family:var(--aur-serif-corps); 
  font-weight:600;
}
.aur-admin-vide{ 
  color:var(--aur-anthracite-mute); 
  font-style:italic; 
  padding:30px 0; 
}

/* Onglets admin en forme de boutons */
.aur-admin-barre__onglets a{
  padding:8px 18px; 
  border:1px solid rgba(255,255,255,.25); 
  border-radius:20px;
  border-bottom:1px solid rgba(255,255,255,.25);
}
.aur-admin-barre__onglets a.aur-actif{
  background:var(--aur-or); 
  color:var(--aur-anthracite); 
  border-color:var(--aur-or);
}
.aur-admin-barre__onglets a:not(.aur-actif):hover{ 
  border-color:var(--aur-or-clair); 
}

/* Tableau admin */
.aur-table-conteneur{
  background:var(--aur-fond-carte); 
  border:1px solid var(--aur-bordure); 
  border-radius:2px;
  overflow-x:auto; 
  box-shadow:0 14px 30px -26px rgba(35,34,32,.3);
}
.aur-table{ width:1400px; 
  border-collapse:collapse; 
  font-family:var(--aur-serif-corps); 
}
.aur-table th, .aur-table td{
  padding:14px 16px; 
  text-align:left; 
  border-bottom:1px solid var(--aur-bordure);
  font-size:.92rem; 
  vertical-align:top; 
  color:var(--aur-anthracite);
}
.aur-table th{
  text-transform:uppercase; 
  letter-spacing:.05em; 
  font-size:.72rem;
  color:var(--aur-anthracite-mute); 
  background:rgba(35,34,32,.03); 
  white-space:nowrap;
  
}
.aur-table tr:last-child td{ 
  border-bottom:none; 
}
.aur-table tr:hover td{ 
  background:rgba(201,162,39,.06); 
}
.aur-table td.aur-table__description{ 
  max-width:480px; 
}
.aur-table a{ 
  color:var(--aur-or-fonce); 
}

@media (prefers-reduced-motion: reduce){
  .aur-carte, .aur-barre-flottante{ 
    transition:none; 
  }
}
.aur-btn:focus-visible, .aur-check input:focus-visible, a:focus-visible{
  outline:2px solid var(--aur-or-fonce); 
  outline-offset:2px;
}

/* ---------- En-tête / navigation responsive ---------- */
.aur-entete__barre{
  display:flex; 
  align-items:center; 
  justify-content:space-between;
  padding:20px 8vw; 
  background:#0b0b0c; 
  color:#ece9df;
  font-family:var(--aur-serif-corps); 
  position:relative; 
  z-index:100;
}
.aur-entete__marque{ 
  display:flex; 
  flex-direction:column; 
  align-items:center; 
  gap:6px; 
  text-decoration:none; 
  color:inherit; 
}
.aur-entete__logo{ 
  height:100px; 
  width:auto; 
}
.aur-entete__nom{ 
  font-family:var(--aur-serif-display); 
  letter-spacing:.08em; 
  font-size:.95rem; 
}

.aur-entete__menu{
  display:flex; 
  gap:26px; 
  list-style:none; 
  margin:0; 
  padding:0;
  font-size:.85rem; 
  letter-spacing:.05em; 
  text-transform:uppercase;
}
.aur-entete__menu a{ 
  color:inherit; 
  text-decoration:none; 
  padding-bottom:3px; 
  border-bottom:1px solid transparent;
 }
.aur-entete__menu a:hover{ 
  color:var(--aur-or-clair); 
}
.aur-entete__menu a.aur-actif{ 
  color:var(--aur-or-fonce); 
  border-color:var(--aur-or-fonce); 
}

/* Bouton hamburger, caché en grand écran */
.aur-hamburger{
  display:none; 
  flex-direction:column; 
  justify-content:center; 
  gap:5px;
  width:32px; 
  height:32px; 
  background:none; 
  border:none; 
  cursor:pointer; 
  padding:0;
}
.aur-hamburger span{
  display:block; 
  height:2px; 
  width:100%; 
  background:#ece9df; 
  transition:transform .25s ease, opacity .25s ease;
}
.aur-hamburger.est-ouvert span:nth-child(1){ 
  transform:translateY(7px) rotate(45deg); 
}
.aur-hamburger.est-ouvert span:nth-child(2){ 
  opacity:0; 
}
.aur-hamburger.est-ouvert span:nth-child(3){ 
  transform:translateY(-7px) rotate(-45deg);
}

@media (max-width: 880px){
  .aur-hamburger{ display:flex; }

  .aur-entete__menu{
    position:absolute; top:100%; left:0; right:0;
    flex-direction:column; gap:0;
    background:#0b0b0c;
    max-height:0; overflow:hidden;
    transition:max-height .3s ease;
  }
  .aur-entete__menu.est-ouvert{ max-height:520px; }
  .aur-entete__menu li{ border-top:1px solid rgba(255,255,255,.08); }
  .aur-entete__menu a{
    display:block; padding:16px 8vw; border-bottom:none;
  }
  .aur-entete__menu a.aur-actif{ background:rgba(201,162,39,.08); }
}

.aur-text-card {
  text-align: center;
  position: relative;
  padding: 20px;
  top: 10px;
  
  /* Largeur responsive */
  width: 90%;
  max-width: 1400px;
  
  /* Centrage automatique */
  margin: 0 auto;
  
  /* Empêche les débordements */
  box-sizing: border-box;
  
  border: 1px solid var(--aur-or);
  border-radius: 10px;
  box-shadow: 0px 10px 13px -7px #000000, 5px 5px 15px 5px rgba(0, 0, 0, 0);
}