/* =====================================================
   SOS PADEL — main.css
   Styles principaux du thème WordPress
   ===================================================== */
   /* ─── Barre admin WordPress ─── */

/* ─── Barre admin WordPress ─── */
.admin-bar #navbar { top: 32px; }
@media (max-width: 782px) { .admin-bar #navbar { top: 46px; } }

.admin-bar #navbar {
  top: 32px;
}
@media (max-width: 782px) {
  .admin-bar #navbar {
    top: 46px;
  }
}

/* ─── Barre admin WordPress ─── */
.admin-bar #navbar { top: 32px; }
@media (max-width: 782px) { .admin-bar #navbar { top: 46px; } }

/* ─── Variables ─── */
:root {
  --gold:       #c9a84c;
  --gold-light: #f0d060;
  --gold-dark:  #8b6914;
  --gold-glow:  rgba(201,168,76,.45);
  --black:      #000;
  --dark:       #0d0d0d;
  --dark-2:     #181818;
  --dark-3:     #222;
  --white:      #fff;
  --gray:       #999;
  --radius:     4px;
  --transition: .35s cubic-bezier(.25,.46,.45,.94);
}

/* ─── Reset ─── */
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  background:var(--black);
  color:var(--white);
  font-family:'Montserrat', sans-serif;
  line-height:1.6;
  overflow-x:hidden;
}
img { display:block; max-width:100%; }
a { text-decoration:none; color:inherit; }

/* ─── Utilitaires ─── */
.gold-text {
  background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold) 40%,var(--gold-light) 60%,var(--gold) 80%,var(--gold-dark) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.section-title {
  font-family:'Oswald', sans-serif;
  font-size:clamp(1.8rem,4vw,2.8rem);
  font-weight:700; letter-spacing:4px;
  text-transform:uppercase; text-align:center; margin-bottom:3rem;
}
.gold-divider {
  width:80px; height:3px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  margin:0 auto 3rem;
}

/* ─── Boutons ─── */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  position:relative; overflow:hidden;
  font-family:'Oswald', sans-serif; font-weight:600; font-size:.9rem;
  letter-spacing:3px; text-transform:uppercase;
  border:none; cursor:pointer; border-radius:var(--radius);
  transition:var(--transition); white-space:nowrap; padding:14px 38px; z-index:0;
}
.btn::after {
  content:''; position:absolute; top:0; left:-100%; width:60%; height:100%;
  background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);
  transform:skewX(-20deg); transition:none; pointer-events:none;
}
.btn:hover::after { animation:btn-shimmer .65s ease-out forwards; }
@keyframes btn-shimmer { to { left:160%; } }

.btn-gold {
  background:linear-gradient(135deg,#a06c10 0%,#c9a84c 35%,#f0d060 55%,#c9a84c 75%,#a06c10 100%);
  background-size:200% 200%; color:#1a0e00;
  box-shadow:0 4px 20px rgba(201,168,76,.35),inset 0 1px 0 rgba(255,255,255,.2);
}
.btn-gold:hover {
  background-position:right center;
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 8px 35px rgba(201,168,76,.65),0 0 20px rgba(201,168,76,.3),inset 0 1px 0 rgba(255,255,255,.3);
}
.btn-gold:active { transform:translateY(-1px) scale(1.01); }

.btn-outline {
  background:transparent; color:var(--gold); border:1.5px solid var(--gold);
}
.btn-outline:hover {
  background:rgba(201,168,76,.08);
  box-shadow:0 0 20px rgba(201,168,76,.35),inset 0 0 20px rgba(201,168,76,.05);
  transform:translateY(-2px); color:var(--gold-light); border-color:var(--gold-light);
}
.btn-dark {
  background:var(--dark-2); color:var(--white); border:1px solid #333;
}
.btn-dark:hover {
  background:var(--dark-3); border-color:var(--gold); color:var(--gold-light);
  box-shadow:0 4px 20px rgba(0,0,0,.5); transform:translateY(-2px);
}

/* ─── Navigation ─── */
#navbar {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 5%; height:72px;
  background:rgba(0,0,0,.92);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(201,168,76,.15);
  transition:background var(--transition),box-shadow var(--transition);
}
#navbar.scrolled { background:rgba(0,0,0,.98); box-shadow:0 2px 30px rgba(0,0,0,.7); }
.nav-logo { height:54px; width:auto; filter:drop-shadow(0 0 8px rgba(201,168,76,.3)); transition:filter var(--transition); }
.nav-logo:hover { filter:drop-shadow(0 0 14px rgba(201,168,76,.7)); }
.nav-links { display:flex; list-style:none; gap:2.5rem; align-items:center; }
.nav-links a {
  font-family:'Oswald', sans-serif; font-size:.78rem; font-weight:500;
  letter-spacing:2.5px; text-transform:uppercase; color:#ccc;
  position:relative; padding-bottom:4px; transition:color var(--transition);
}
.nav-links a::after {
  content:''; position:absolute; bottom:0; left:0; width:0; height:1.5px;
  background:linear-gradient(90deg,var(--gold),var(--gold-light));
  transition:width var(--transition);
}
.nav-links a:hover { color:var(--gold-light); }
.nav-links a:hover::after { width:100%; }

/* Icône panier */
.nav-cart-link {
  position:relative; display:flex; align-items:center;
  color:#ccc; transition:color var(--transition);
}
.nav-cart-link:hover { color:var(--gold-light); }
.cart-count {
  position:absolute; top:-8px; right:-10px;
  background:var(--gold); color:#1a0e00;
  font-size:.6rem; font-weight:800; font-family:'Oswald',sans-serif;
  width:18px; height:18px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}

/* Burger mobile */
.nav-burger {
  display:none; flex-direction:column; gap:5px;
  cursor:pointer; padding:4px; background:none; border:none;
}
.nav-burger span { display:block; width:24px; height:2px; background:var(--gold); border-radius:2px; transition:var(--transition); }

/* ─── Hero ─── */
#hero {
  min-height:100vh; background:var(--black);
  display:flex; align-items:center; padding:100px 5% 60px;
  position:relative; overflow:hidden;
}
#hero::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse 60% 60% at 80% 50%,rgba(201,168,76,.06) 0%,transparent 70%),
             radial-gradient(ellipse 40% 80% at 0% 100%,rgba(201,168,76,.04) 0%,transparent 60%);
  pointer-events:none;
}
#hero::after {
  content:''; position:absolute; inset:0; opacity:.025;
  background-image:repeating-linear-gradient(45deg,#fff 0px,#fff 1px,transparent 1px,transparent 8px),
                   repeating-linear-gradient(-45deg,#fff 0px,#fff 1px,transparent 1px,transparent 8px);
  pointer-events:none;
}
.hero-inner {
  position:relative; z-index:1; display:flex; align-items:center;
  justify-content:space-between; width:100%; max-width:1200px; margin:0 auto; gap:4rem;
}
.hero-logo-wrap { flex:0 0 auto; display:flex; align-items:center; justify-content:center; }
.hero-logo {
  width:clamp(160px,22vw,260px);
  filter:drop-shadow(0 0 30px rgba(201,168,76,.35));
  animation:hero-logo-float 4s ease-in-out infinite;
}
@keyframes hero-logo-float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
.hero-content { flex:1; text-align:right; }
.hero-tagline {
  display:block; font-family:'Oswald', sans-serif;
  font-size:clamp(2rem,5.5vw,4.2rem); font-weight:700; line-height:1.1;
  text-transform:uppercase; letter-spacing:2px;
}
.hero-tagline .line-white { color:var(--white); }
.hero-tagline .line-gold {
  background:linear-gradient(135deg,var(--gold-dark),var(--gold),var(--gold-light),var(--gold));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.hero-sub { margin-top:1rem; font-size:1rem; color:var(--gray); letter-spacing:1px; }
.hero-cta { margin-top:2.5rem; display:flex; gap:1rem; justify-content:flex-end; flex-wrap:wrap; }

/* ─── Bienvenue ─── */
#bienvenue {
  background:var(--dark); padding:80px 5%; text-align:center; position:relative;
}
#bienvenue::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.bienvenue-title {
  font-family:'Oswald', sans-serif; font-size:clamp(1.4rem,3vw,2rem);
  font-weight:600; letter-spacing:3px; text-transform:uppercase; color:var(--white); margin-bottom:.5rem;
}
.bienvenue-subtitle { font-size:1.05rem; color:var(--gray); max-width:540px; margin:.5rem auto 0; line-height:1.7; }

/* ─── Tarifs / Cards 3D ─── */
#tarifs {
  background:var(--black); padding:90px 5%; position:relative;
}
#tarifs::before,#tarifs::after {
  content:''; position:absolute; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,.4),transparent);
}
#tarifs::before{top:0} #tarifs::after{bottom:0}
.tarifs-grid { display:flex; justify-content:center; gap:3rem; flex-wrap:wrap; perspective:1200px; }

.product-card {
  flex:0 1 300px; position:relative;
  background:linear-gradient(160deg,#161616 0%,#0d0d0d 100%);
  border:1px solid rgba(201,168,76,.25); border-radius:8px;
  padding:2.5rem 2rem 2rem; text-align:center; cursor:pointer;
  transform-style:preserve-3d;
  transform:perspective(1200px) rotateX(0deg) rotateY(0deg);
  transition:transform .12s ease-out,box-shadow .3s ease;
  will-change:transform; overflow:hidden;
}
.product-card:hover {
  border-color:rgba(201,168,76,.55);
  box-shadow:0 25px 60px rgba(0,0,0,.7),0 0 30px rgba(201,168,76,.2),inset 0 0 40px rgba(201,168,76,.03);
}
.product-card::before {
  content:''; position:absolute; top:0; left:0; width:60px; height:60px;
  background:linear-gradient(135deg,rgba(201,168,76,.18) 0%,transparent 60%);
  border-radius:8px 0 0 0; pointer-events:none;
}
.product-card::after {
  content:''; position:absolute; bottom:0; right:0; width:60px; height:60px;
  background:linear-gradient(315deg,rgba(201,168,76,.12) 0%,transparent 60%);
  border-radius:0 0 8px 0; pointer-events:none;
}
.card-shine { position:absolute; inset:0; border-radius:8px; pointer-events:none; z-index:2; transition:background .1s ease; }
.card-img-wrap {
  position:relative; height:240px; display:flex; align-items:center; justify-content:center;
  margin-bottom:1.5rem; transform:translateZ(20px);
}
.card-img-wrap img {
  height:220px; width:auto; object-fit:contain;
  filter:drop-shadow(0 10px 25px rgba(0,0,0,.6)) drop-shadow(0 0 15px rgba(201,168,76,.12));
  transition:filter var(--transition),transform var(--transition);
}
.product-card:hover .card-img-wrap img {
  filter:drop-shadow(0 15px 35px rgba(0,0,0,.8)) drop-shadow(0 0 25px rgba(201,168,76,.3));
  transform:scale(1.06);
}
.card-badge {
  position:absolute; top:8px; right:8px;
  background:linear-gradient(135deg,var(--gold-dark),var(--gold));
  color:#1a0e00; font-family:'Oswald', sans-serif;
  font-size:.7rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  padding:4px 10px; border-radius:2px;
}
.card-title {
  font-family:'Oswald', sans-serif; font-size:1.1rem; font-weight:600;
  letter-spacing:3px; text-transform:uppercase; color:#ccc;
  transform:translateZ(10px); margin-bottom:.75rem;
}
.card-price {
  font-family:'Oswald', sans-serif; font-size:3rem; font-weight:700;
  line-height:1; transform:translateZ(15px); display:block; margin-bottom:.25rem;
  background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold) 40%,var(--gold-light) 60%,var(--gold) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.card-price-label { font-size:.78rem; color:var(--gray); letter-spacing:2px; text-transform:uppercase; margin-bottom:1.5rem; transform:translateZ(8px); }
.card-stars { display:flex; justify-content:center; gap:3px; margin-bottom:1.5rem; transform:translateZ(12px); }
.card-stars svg { width:16px; height:16px; fill:var(--gold); filter:drop-shadow(0 0 3px rgba(201,168,76,.5)); }
.card-btn-wrap { transform:translateZ(25px); }
.card-features { list-style:none; text-align:left; margin:0 0 1.5rem; transform:translateZ(8px); }
.card-features li {
  font-size:.82rem; color:#aaa; padding:5px 0;
  border-bottom:1px solid rgba(255,255,255,.04); display:flex; align-items:center; gap:8px;
}
.card-features li::before {
  content:''; display:inline-block; width:6px; height:6px; border-radius:50%;
  background:var(--gold); flex-shrink:0;
}

/* ─── Reviews ─── */
#reviews {
  background:var(--dark-2); padding:50px 5%;
  border-top:1px solid rgba(255,255,255,.04); border-bottom:1px solid rgba(255,255,255,.04);
}
.reviews-inner { max-width:1100px; margin:0 auto; display:flex; align-items:center; gap:3rem; flex-wrap:wrap; }
.reviews-global { flex:0 0 auto; text-align:center; }
.reviews-score { font-family:'Oswald', sans-serif; font-size:3.5rem; font-weight:700; line-height:1; color:var(--gold-light); }
.reviews-stars { display:flex; gap:3px; justify-content:center; margin:6px 0; }
.reviews-stars svg { width:20px; height:20px; fill:var(--gold); }
.reviews-count { font-size:.78rem; color:var(--gray); letter-spacing:1px; }
.reviews-google { display:flex; align-items:center; gap:6px; margin-top:8px; }
.reviews-google span { font-size:.8rem; color:#888; }
.reviews-divider { width:1px; height:80px; background:linear-gradient(to bottom,transparent,rgba(201,168,76,.4),transparent); flex-shrink:0; }
.review-cards {
  flex:1; display:flex; gap:1.5rem; overflow-x:auto; padding-bottom:4px;
  scrollbar-width:thin; scrollbar-color:rgba(201,168,76,.3) transparent;
}
.review-card {
  flex:0 0 220px; background:var(--dark-3); border:1px solid rgba(255,255,255,.06);
  border-radius:6px; padding:1rem 1.2rem; transition:border-color var(--transition),transform var(--transition);
}
.review-card:hover { border-color:rgba(201,168,76,.3); transform:translateY(-3px); }
.review-author { font-size:.82rem; font-weight:700; color:var(--white); margin-bottom:4px; }
.review-stars { display:flex; gap:2px; margin-bottom:6px; }
.review-stars svg { width:12px; height:12px; fill:var(--gold); }
.review-text { font-size:.78rem; color:#aaa; line-height:1.5; }

/* ─── Notre Méthode ─── */
#methode { background:var(--dark); padding:90px 5%; position:relative; }
#methode::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,.35),transparent);
}
.methode-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; }
.methode-text p { color:#bbb; line-height:1.9; font-size:.95rem; margin-bottom:1rem; }
.methode-text p strong { color:var(--gold-light); font-weight:600; }
.methode-highlight {
  border-left:3px solid var(--gold); padding-left:1.2rem; margin:1.5rem 0;
  color:#cc9; font-style:italic; font-size:.9rem; line-height:1.7;
}
.methode-images { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.methode-img-item { border-radius:6px; overflow:hidden; position:relative; aspect-ratio:1; border:1px solid rgba(201,168,76,.12); }
.methode-img-item img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease,filter .5s ease; filter:brightness(.85) saturate(.9); }
.methode-img-item:hover img { transform:scale(1.06); filter:brightness(1) saturate(1.1); }
.methode-img-item:first-child { grid-column:1 / -1; aspect-ratio:16/7; }

/* ─── Réalisations ─── */
#realisations { background:var(--black); padding:90px 5%; position:relative; }
#realisations::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,.35),transparent);
}
.gallery-grid { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.gallery-item { position:relative; overflow:hidden; border-radius:4px; cursor:pointer; border:1px solid rgba(201,168,76,.08); }
.gallery-item:nth-child(1) { grid-column:span 2; grid-row:span 2; }
.gallery-item:nth-child(5) { grid-column:span 2; }
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease,filter .4s ease; filter:brightness(.8) saturate(.85); aspect-ratio:1; }
.gallery-item:nth-child(5) img { aspect-ratio:2/1; }
.gallery-overlay {
  position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 50%);
  opacity:0; transition:opacity var(--transition); display:flex; align-items:flex-end; padding:14px;
}
.gallery-overlay span { font-family:'Oswald',sans-serif; font-size:.75rem; letter-spacing:2px; text-transform:uppercase; color:var(--gold-light); }
.gallery-item:hover img { transform:scale(1.08); filter:brightness(1) saturate(1.1); }
.gallery-item:hover .gallery-overlay { opacity:1; }
.gallery-item:hover { border-color:rgba(201,168,76,.35); }

/* ─── Contact ─── */
#contact { background:var(--dark); padding:90px 5%; position:relative; }
#contact::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,.4),transparent);
}
.contact-inner { max-width:1000px; margin:0 auto; display:grid; grid-template-columns:1fr 1.4fr; gap:4rem; align-items:start; }
.contact-info h2 {
  font-family:'Oswald', sans-serif; font-size:clamp(1.4rem,3vw,2rem);
  font-weight:700; letter-spacing:3px; text-transform:uppercase; line-height:1.3; margin-bottom:1.5rem;
}
.contact-info h2 .highlight { color:var(--gold-light); }
.contact-info p { color:#aaa; font-size:.9rem; line-height:1.8; margin-bottom:2rem; }
.contact-socials { display:flex; gap:1rem; }
.social-btn {
  display:flex; align-items:center; gap:8px; padding:10px 20px; border-radius:var(--radius);
  font-family:'Oswald', sans-serif; font-size:.8rem; letter-spacing:1.5px;
  text-transform:uppercase; font-weight:500; transition:var(--transition); border:1px solid;
}
.social-btn.fb { border-color:rgba(59,89,152,.5); color:#7aa1e0; background:rgba(59,89,152,.08); }
.social-btn.fb:hover { background:rgba(59,89,152,.2); border-color:#3b5998; transform:translateY(-2px); }
.social-btn.ig { border-color:rgba(225,48,108,.4); color:#e1306c; background:rgba(225,48,108,.06); }
.social-btn.ig:hover { background:rgba(225,48,108,.15); border-color:#e1306c; transform:translateY(-2px); }

.contact-form { display:flex; flex-direction:column; gap:1rem; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.form-group { display:flex; flex-direction:column; gap:6px; }
.form-group label { font-size:.72rem; letter-spacing:2px; text-transform:uppercase; color:var(--gray); font-weight:600; }
.form-group input,.form-group textarea,.form-group select {
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1);
  color:var(--white); font-family:'Montserrat', sans-serif; font-size:.88rem;
  padding:12px 14px; border-radius:var(--radius);
  transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);
  outline:none; resize:vertical;
}
.form-group input::placeholder,.form-group textarea::placeholder { color:#555; }
.form-group input:focus,.form-group textarea:focus,.form-group select:focus {
  border-color:rgba(201,168,76,.5); background:rgba(255,255,255,.06);
  box-shadow:0 0 0 3px rgba(201,168,76,.08),0 2px 12px rgba(201,168,76,.1);
}
.form-group textarea { min-height:120px; }
.form-group select { appearance:none; -webkit-appearance:none; cursor:pointer; }
.form-group select option { background:#1a1a1a; }
.form-submit { margin-top:.5rem; }

/* Photo upload */
.photo-upload-zone {
  border:1.5px dashed rgba(201,168,76,.3); border-radius:var(--radius);
  padding:1.2rem; background:rgba(255,255,255,.02);
  transition:border-color var(--transition),background var(--transition);
}
.photo-upload-zone.drag-over { border-color:var(--gold); background:rgba(201,168,76,.06); }
.photo-slots { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:.6rem; }
.photo-slot {
  position:relative; border:1px solid rgba(255,255,255,.08); border-radius:var(--radius);
  aspect-ratio:4/3; cursor:pointer; overflow:hidden; background:rgba(255,255,255,.03);
  transition:border-color var(--transition),background var(--transition),transform var(--transition);
}
.photo-slot:hover { border-color:rgba(201,168,76,.45); background:rgba(201,168,76,.04); transform:translateY(-2px); }
.photo-slot.has-photo { border-color:rgba(201,168,76,.4); cursor:default; }
.slot-placeholder {
  position:absolute; inset:0; display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:6px; color:#555;
  transition:color var(--transition); pointer-events:none;
}
.photo-slot:hover .slot-placeholder { color:var(--gold); }
.slot-placeholder span { font-family:'Oswald',sans-serif; font-size:.8rem; letter-spacing:2px; text-transform:uppercase; }
.slot-placeholder em { font-style:normal; font-size:.7rem; color:#444; }
.slot-preview { position:absolute; inset:0; }
.slot-preview img { width:100%; height:100%; object-fit:cover; border-radius:var(--radius); }
.slot-remove {
  position:absolute; top:6px; right:6px; width:26px; height:26px; border-radius:50%;
  background:rgba(0,0,0,.75); border:1px solid rgba(255,255,255,.2); color:#fff;
  cursor:pointer; display:flex; align-items:center; justify-content:center;
  transition:background var(--transition),transform var(--transition); z-index:2;
}
.slot-remove:hover { background:rgba(200,50,50,.85); transform:scale(1.1); }
.photo-hint { font-size:.7rem; color:#444; text-align:center; letter-spacing:.5px; margin:0; }

/* ─── Footer ─── */
#footer {
  background:#050505; border-top:1px solid rgba(201,168,76,.2);
  padding:40px 5%; text-align:center;
}
.footer-logo { width:70px; margin:0 auto 1rem; opacity:.7; }
.footer-nav { display:flex; justify-content:center; gap:2rem; list-style:none; flex-wrap:wrap; margin-bottom:1.5rem; }
.footer-nav a { font-family:'Oswald',sans-serif; font-size:.72rem; letter-spacing:2px; text-transform:uppercase; color:#666; transition:color var(--transition); }
.footer-nav a:hover { color:var(--gold); }
.footer-copy { font-size:.75rem; color:#444; letter-spacing:1px; line-height:1.8; }
.footer-copy a { color:var(--gold-dark); }
.footer-copy a:hover { color:var(--gold); }

/* ─── Animations scroll reveal ─── */
.reveal { opacity:0; transform:translateY(30px); transition:opacity .7s ease,transform .7s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-left { opacity:0; transform:translateX(-40px); transition:opacity .7s ease,transform .7s ease; }
.reveal-left.visible { opacity:1; transform:translateX(0); }
.reveal-right { opacity:0; transform:translateX(40px); transition:opacity .7s ease,transform .7s ease; }
.reveal-right.visible { opacity:1; transform:translateX(0); }
.delay-1 { transition-delay:.1s; }
.delay-2 { transition-delay:.2s; }
.delay-3 { transition-delay:.3s; }
.delay-4 { transition-delay:.4s; }

/* ─── Pages WooCommerce génériques ─── */
.woo-page-wrap { padding:120px 5% 80px; min-height:70vh; }
.woo-page-inner { max-width:900px; margin:0 auto; }
.woo-page-title {
  font-family:'Oswald',sans-serif; font-size:clamp(1.8rem,4vw,2.8rem);
  font-weight:700; letter-spacing:4px; text-transform:uppercase;
  text-align:center; margin-bottom:3rem;
}
.woo-page-content { color:#bbb; line-height:1.8; }
.wc-breadcrumb { font-size:.78rem; color:#666; margin-bottom:2rem; }
.wc-breadcrumb a { color:var(--gold-dark); }
.wc-breadcrumb a:hover { color:var(--gold); }

/* ─── Responsive ─── */
@media(max-width:900px){
  .hero-inner{flex-direction:column;text-align:center}
  .hero-content{text-align:center}
  .hero-cta{justify-content:center}
  .methode-inner{grid-template-columns:1fr}
  .contact-inner{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .gallery-item:nth-child(1){grid-column:span 1;grid-row:span 1}
  .gallery-item:nth-child(5){grid-column:span 1}
}
@media(max-width:680px){
  .nav-links{display:none}
  .nav-burger{display:flex}
  .nav-links.open{
    display:flex;flex-direction:column;
    position:fixed;top:72px;left:0;right:0;
    background:rgba(0,0,0,.97);padding:2rem;gap:1.5rem;
    border-bottom:1px solid rgba(201,168,76,.2);z-index:999;
  }
  .tarifs-grid{gap:1.5rem}
  .form-row{grid-template-columns:1fr}
  .reviews-inner{flex-direction:column}
  .reviews-divider{width:80px;height:1px}
}

/* Barre admin WordPress */
.admin-bar #navbar { top: 32px; }
@media (max-width: 782px) { .admin-bar #navbar { top: 46px; } }

.admin-bar #navbar { top: 32px; }
@media (max-width: 782px) { .admin-bar #navbar { top: 46px; } }
