/* ============================================================
   KRASH BAR — main.css v7.0  (CSS propre, sans doublons)
   ============================================================ */

/* ── VARIABLES ── */
:root {
  --or:          #FF5412;
  --or-dk:       #C03D0A;
  --or-lt:       #FF7040;
  --bk:          #0A0A0A;
  --bk2:         #111111;
  --bk3:         #161616;
  --bk4:         #1E1E1E;
  --gd:          #2A2A2A;
  --gm:          #444444;
  --gl:          #888888;
  --wh:          #FFFFFF;
  --ow:          #F0EAE0;
  --cr:          #C8BAA8;
  --ft:          'Barlow Condensed', sans-serif;
  --fb:          'Barlow', sans-serif;
  --fm:          'Space Mono', monospace;
  --nav-h:       66px;
  --hero-h:      70vh;   /* ecrase par <style> inline dans front-page.php */
}

/* ── RESET ── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  background:var(--bk); color:var(--ow);
  font-family:var(--fb); overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
body::after {
  content:''; position:fixed; inset:0;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.025) 2px,rgba(0,0,0,.025) 4px);
  pointer-events:none; z-index:9997;
}
img { display:block; max-width:100%; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }

/* ── NAV ── */
.krash-header {
  position:fixed; top:0; left:0; right:0; z-index:200;
  height:var(--nav-h); background:rgba(10,10,10,.97);
  border-bottom:1px solid rgba(255,84,18,.25);
  backdrop-filter:blur(10px);
}
.krash-header.scrolled { border-bottom-color:rgba(255,84,18,.5); }
.header-inner {
  max-width:1400px; margin:0 auto; padding:0 2.5rem;
  height:100%; display:flex; align-items:center;
  justify-content:space-between; gap:1.5rem;
}
.header-logo { display:flex; align-items:center; gap:.9rem; text-decoration:none; }
.header-logo img { height:38px; width:auto; }
.header-logo-text {
  font-family:var(--ft); font-weight:900;
  font-size:1.15rem; letter-spacing:.15em; line-height:1.1;
  display:flex; flex-direction:column;
}
.header-logo-text small { font-size:.55rem; letter-spacing:.25em; color:var(--or); font-weight:700; }
.header-nav { display:flex; gap:.25rem; }
.header-nav a {
  font-family:var(--fm); font-size:.65rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--gl); padding:.5rem 1rem;
  border-bottom:2px solid transparent; transition:all .2s;
}
.header-nav a:hover, .header-nav a.active { color:var(--or); border-bottom-color:var(--or); }
.header-burger { display:none; flex-direction:column; gap:5px; background:none; border:none; padding:.5rem; }
.header-burger span { display:block; width:22px; height:1px; background:var(--wh); transition:all .3s; }
.header-burger.open span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
.header-burger.open span:nth-child(2) { opacity:0; }
.header-burger.open span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
.header-translate { display:flex; align-items:center; }
.header-translate .goog-te-gadget { font-size:0 !important; }
.header-translate select {
  background:transparent; border:1px solid rgba(255,84,18,.4);
  color:var(--ow); font-family:var(--fm); font-size:.6rem;
  padding:.3rem .6rem; cursor:pointer;
}

/* ── BOUTONS ── */
.btn-p {
  font-family:var(--fm); font-size:.72rem; letter-spacing:.15em;
  text-transform:uppercase; background:var(--or); color:var(--wh);
  border:2px solid var(--or); padding:.85rem 2rem; display:inline-block; transition:all .2s;
}
.btn-p:hover { background:transparent; color:var(--or); }
.btn-o {
  font-family:var(--fm); font-size:.72rem; letter-spacing:.15em;
  text-transform:uppercase; background:transparent; color:var(--wh);
  border:2px solid rgba(255,255,255,.35); padding:.85rem 2rem; display:inline-block; transition:all .2s;
}
.btn-o:hover { border-color:var(--or); color:var(--or); }

/* ── HERO ── */
.hero {
  height: var(--hero-h);
  min-height: 300px;
  position:relative;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  padding-top:var(--nav-h); overflow:hidden;
}
.hero-bg {
  position:absolute; inset:0;
  background-size:cover; background-position:center 30%;
  z-index:0;
}
.hero-ovl {
  position:absolute; inset:0;
  background:linear-gradient(to bottom, rgba(10,10,10,.5) 0%, rgba(10,10,10,.72) 60%, var(--bk) 100%);
  z-index:1;
}
.hero-cnt {
  position:relative; z-index:2;
  text-align:center; padding:2rem 2rem 3rem;
  width:100%;
}
.hero-logo-img {
  width:100px; margin:0 auto 1.5rem;
  filter:drop-shadow(0 0 28px rgba(255,84,18,.35));
}
.hero-title {
  font-family:var(--ft); font-weight:900;
  font-size:clamp(4rem,10vw,8rem); line-height:.88;
  letter-spacing:.05em; text-transform:uppercase;
}
.hero-title span {
  display:block; font-size:clamp(1.1rem,3vw,2rem);
  color:var(--or); letter-spacing:.4em; font-weight:700; margin-top:.4rem;
}
.hero-tagline {
  font-family:var(--ft); font-size:clamp(.9rem,2vw,1.35rem);
  letter-spacing:.22em; color:var(--cr);
  margin:1.5rem auto 2.5rem; font-weight:700; text-transform:uppercase;
}
.hero-actions { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.hero-ticker {
  position:absolute; bottom:0; left:0; right:0; z-index:3;
  background:var(--or); padding:.55rem 0; overflow:hidden;
}
.ticker-track {
  display:flex; white-space:nowrap;
  animation:ticker 30s linear infinite;
  font-family:var(--fm); font-size:.62rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--wh);
}
.ts { color:rgba(255,255,255,.45); margin:0 1.2rem; }
@keyframes ticker { from{transform:translateX(0)} to{transform:translateX(-33.333%)} }

/* Hero sans photo : remonter tout le site */
.hero--no-photo {
  height:auto !important;
  min-height:auto !important;
  background:var(--bk);
  padding-top:var(--nav-h);
  padding-bottom:0;
}
.hero--no-photo .hero-cnt { padding:3rem 2rem 2rem; }
.hero--no-photo .hero-ovl,
.hero--no-photo .hero-bg,
.hero--no-photo .hero-ticker { display:none; }
/* Masquer aussi le logo quand pas de photo hero */
.hero--no-photo .hero-logo-img { display:none; }

/* ── HORAIRES STRIP ── */
.opening-strip {
  background:var(--bk2);
  border-top:1px solid var(--gd); border-bottom:1px solid var(--gd);
  padding:1.2rem 2rem;
}
.os-inner {
  max-width:1200px; margin:0 auto;
  display:flex; align-items:center; justify-content:center;
  gap:1rem; flex-wrap:wrap;
}
.os-item { text-align:center; }
.os-day {
  font-family:var(--fm); font-size:.58rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--gl); display:block; margin-bottom:.2rem;
}
.os-h { font-family:var(--ft); font-size:.95rem; font-weight:900; color:var(--wh); display:block; }
.os-hl .os-h { color:var(--or); }
.os-sep { color:var(--gd); font-size:1.5rem; }

/* ── SECTION COMMONS ── */
.sec-in { max-width:1200px; margin:0 auto; padding:4rem 2.5rem; }
.sec-head { margin-bottom:2.5rem; }
.sec-title {
  font-family:var(--ft); font-weight:900;
  font-size:clamp(1.8rem,4vw,2.5rem);
  letter-spacing:.1em; text-transform:uppercase;
}
.sec-bar { height:3px; background:var(--or); width:55px; margin-top:.5rem; }

/* ── SOIRÉES — LAYOUT COLONNES ── */
.sec-soirees { background:var(--bk); }

.soirees-layout {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border:1px solid rgba(255,84,18,.25);
}
.soirees-col {
  border-right:1px solid rgba(255,84,18,.2);
  display:flex; flex-direction:column;
}
.soirees-col:last-child { border-right:none; }

.soirees-day-label {
  background:rgba(255,84,18,.1);
  border-bottom:2px solid var(--or);
  padding:.85rem 1.2rem;
  display:flex; align-items:center; gap:.75rem;
  position:sticky; top:var(--nav-h); z-index:5;
}
.soirees-day-label span {
  font-family:var(--ft); font-weight:900;
  font-size:1.1rem; letter-spacing:.2em;
  text-transform:uppercase; color:var(--or);
}
.soirees-day-label--special { background:rgba(255,84,18,.18); }
.soirees-day-label--special span { color:var(--wh); }

/* ── CARTE SOIRÉE ── */
.soiree-card {
  border:none;
  border-bottom:1px solid rgba(255,84,18,.15);
  border-left:3px solid var(--or);
  background:var(--bk2);
  display:flex; flex-direction:column;
  position:relative; overflow:hidden;
  transition:background .2s;
}
.soiree-card:last-child { border-bottom:none; }
.soiree-card:hover { background:var(--bk3); }
.soiree-card--special { border-left-color:var(--wh); }

/* FLYER — affiché tel quel, proportion originale */
.sc-flyer-wrap { overflow:hidden; flex-shrink:0; }
.sc-flyer {
  width:100%;
  aspect-ratio:3/4;
  overflow:hidden;
  background:var(--bk3);
  display:flex;
  align-items:center;
  justify-content:center;
}
.sc-flyer img {
  width:100%;
  height:100%;
  object-fit:contain;  /* image entière visible, pas rognée */
  display:block;
}
.sc-flyer-empty {
  width:100%; height:120px;
  background:linear-gradient(135deg,var(--bk3) 0%,var(--bk4) 100%);
  display:flex; align-items:center; justify-content:center;
  border-bottom:1px solid rgba(255,84,18,.12);
}
.sc-flyer-empty span {
  font-family:var(--ft); font-weight:900;
  font-size:3rem; color:rgba(255,84,18,.15); letter-spacing:.1em;
}

/* CONTENU de la carte */
.sc-content {
  padding:1.1rem 1.2rem;
  flex:1; display:flex; flex-direction:column; gap:.5rem;
}
.sc-badge {
  position:absolute; top:0; right:0; z-index:2;
  background:var(--or); font-family:var(--fm);
  font-size:.52rem; letter-spacing:.15em; text-transform:uppercase;
  color:var(--wh); padding:.22rem .55rem;
}
.sc-when { display:flex; flex-direction:column; gap:.15rem; }

/* JOUR — plus grand */
.sc-day-txt {
  font-family:var(--fm); font-size:.82rem;
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--or); font-weight:700; display:block;
}
/* HEURE — plus grande */
.sc-time {
  font-family:var(--fm); font-size:.82rem;
  color:var(--gl); display:block; font-weight:600;
}
/* TITRE SOIRÉE — ORANGE, grand */
.sc-name {
  font-family:var(--ft); font-weight:900;
  font-size:1.5rem; letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--or) !important;   /* orange */
  line-height:1.05;
}
/* DESCRIPTION — plus grande */
.sc-desc {
  font-size:1rem; font-weight:400;
  color:var(--cr); line-height:1.55; flex:1;
}
.sc-tags { display:flex; gap:.4rem; flex-wrap:wrap; }
.sc-tag {
  font-family:var(--fm); font-size:.65rem;
  letter-spacing:.08em; text-transform:uppercase;
  color:var(--gl); border:1px solid rgba(255,84,18,.25);
  padding:.25rem .6rem;
}
.sc-ft {
  padding:.7rem 1.2rem;
  border-top:1px solid rgba(255,84,18,.15);
  background:rgba(255,84,18,.04);
}
.sc-price {
  font-family:var(--ft); font-size:1.1rem;
  font-weight:900; color:var(--or);
  text-transform:uppercase; letter-spacing:.05em;
}

/* ── ENCART SOIRÉE SPÉCIALE ── */
.special-banner {
  position:relative;
  background:linear-gradient(135deg,#8B2A00 0%,#C03D0A 50%,#8B2A00 100%);
  overflow:hidden;
  border-top:2px solid var(--or); border-bottom:2px solid var(--or);
}
.sb-inner {
  position:relative; z-index:1;
  max-width:1200px; margin:0 auto; padding:2.5rem;
  display:grid; grid-template-columns:90px 1fr auto;
  align-items:center; gap:2.5rem;
}
.sb-inner.has-img { grid-template-columns:90px 1fr 220px auto; }
.sb-day { font-family:var(--ft); font-weight:900; font-size:4rem; line-height:1; color:var(--wh); display:block; }
.sb-month { font-family:var(--fm); font-size:.58rem; letter-spacing:.25em; text-transform:uppercase; color:rgba(255,255,255,.65); display:block; margin-top:.25rem; }
.sb-day-text { font-family:var(--ft); font-weight:900; font-size:1.4rem; color:var(--wh); display:block; }
.sb-badge { font-family:var(--fm); font-size:.55rem; letter-spacing:.2em; text-transform:uppercase; background:rgba(255,255,255,.15); color:var(--wh); padding:.22rem .7rem; display:inline-block; margin-bottom:.7rem; }
.sb-title { font-family:var(--ft); font-weight:900; font-size:2rem; text-transform:uppercase; letter-spacing:.05em; color:var(--wh); line-height:1.05; margin-bottom:.4rem; }
.sb-desc { font-size:.85rem; font-weight:300; color:rgba(255,255,255,.75); line-height:1.5; max-width:560px; }
.sb-tags { display:flex; gap:.4rem; flex-wrap:wrap; margin-top:.65rem; }
.sb-tag { font-family:var(--fm); font-size:.5rem; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.6); border:1px solid rgba(255,255,255,.2); padding:.18rem .48rem; }
.sb-media { flex-shrink:0; width:220px; align-self:stretch; overflow:hidden; border-left:2px solid var(--or); border-right:2px solid var(--or); }
.sb-media img, .sb-media video { width:100%; height:100%; object-fit:cover; display:block; }
.sb-media iframe { width:100%; height:100%; border:0; display:block; }
.sb-time { font-family:var(--ft); font-weight:900; font-size:1.8rem; color:var(--wh); line-height:1; margin-bottom:.35rem; }
.sb-price { font-family:var(--fm); font-size:.58rem; letter-spacing:.15em; text-transform:uppercase; color:rgba(255,255,255,.6); }

/* ── TARIFS ── */
.sec-tarifs { background:var(--bk3); border-top:1px solid var(--gd); border-bottom:1px solid var(--gd); }
.tarif-unique {
  max-width:560px; margin:0 auto;
  background:var(--bk2); border:1px solid var(--or);
  padding:3rem 2.5rem; text-align:center; position:relative;
}
.tarif-unique::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--or); }
.tarif-unique-price { font-family:var(--ft); font-weight:900; font-size:clamp(2.5rem,6vw,4rem); color:var(--or); line-height:1; margin-bottom:.75rem; text-transform:uppercase; }
.tarif-unique-cond { font-family:var(--ft); font-weight:700; font-size:1.2rem; letter-spacing:.08em; text-transform:uppercase; color:var(--wh); margin-bottom:1.25rem; }
.tarif-unique-note { font-family:var(--fm); font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gl); padding-top:1rem; border-top:1px solid var(--gd); }
.tarifs-note { margin-top:1.5rem; font-size:.72rem; color:var(--gl); font-style:italic; text-align:center; }

/* ── ACCÈS ── */
.sec-acces { background:var(--bk2); border-top:1px solid var(--gd); }
.acces-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
.acces-info { display:flex; flex-direction:column; gap:1.75rem; }
.ab { display:flex; gap:1rem; align-items:flex-start; }
.ab-icon { font-size:1.4rem; flex-shrink:0; margin-top:.1rem; }
.ab strong { font-family:var(--ft); font-weight:900; font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; color:var(--wh); display:block; margin-bottom:.25rem; }
.ab p { font-size:.88rem; font-weight:300; color:var(--cr); line-height:1.6; }
.ab a { color:var(--or); transition:color .2s; }
.ab a:hover { color:var(--or-lt); }
.acces-itineraire { display:inline-block; margin-top:.5rem; font-family:var(--fm); font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; color:var(--or); border-bottom:1px solid rgba(255,84,18,.3); }
.acces-map { border:1px solid var(--gd); overflow:hidden; height:380px; }
.acces-map iframe { width:100%; height:100%; border:0; filter:grayscale(80%) invert(95%) contrast(1.05); }
.acces-social-block { margin-top:.5rem; }
.social-title { font-family:var(--ft); font-weight:900; font-size:.85rem; letter-spacing:.2em; text-transform:uppercase; color:var(--or); margin-bottom:1rem; }
.social-links-big { display:flex; flex-wrap:wrap; gap:.75rem; }
.social-btn { display:inline-flex; align-items:center; gap:.6rem; padding:.7rem 1.25rem; border:1px solid var(--gd); background:var(--bk3); color:var(--wh); font-family:var(--fm); font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; transition:all .25s; min-width:150px; }
.social-btn svg { width:18px; height:18px; flex-shrink:0; }
.social-btn:hover { border-color:var(--or); background:rgba(255,84,18,.08); color:var(--or); }
.social-btn--instagram:hover { border-color:#E1306C; background:rgba(225,48,108,.08); color:#E1306C; }
.social-btn--facebook:hover { border-color:#1877F2; background:rgba(24,119,242,.08); color:#1877F2; }

/* ── GALERIE ── */
.sec-gal { background:var(--bk); }
.galerie-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; }
.gal-item { position:relative; overflow:hidden; aspect-ratio:4/3; cursor:pointer; }
.gal-item img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; filter:saturate(.75); }
.gal-item:hover img { transform:scale(1.06); filter:saturate(1.1); }
.gal-ovl { position:absolute; inset:0; background:rgba(255,84,18,0); transition:background .25s; pointer-events:none; }
.gal-item:hover .gal-ovl { background:rgba(255,84,18,.1); }

/* ── FOOTER ── */
.krash-footer { background:var(--bk); border-top:1px solid var(--gd); padding:3rem 2.5rem 1.5rem; }
.footer-inner { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr 1fr; gap:3rem; padding-bottom:2.5rem; border-bottom:1px solid var(--gd); margin-bottom:1.5rem; }
.footer-logo { height:56px; width:auto; margin-bottom:1rem; }
.footer-tagline { font-size:.8rem; font-weight:300; color:var(--gl); line-height:1.7; }
.footer-social { display:flex; gap:.6rem; margin-top:1rem; flex-wrap:wrap; }
.footer-social a { width:36px; height:36px; border:1px solid var(--gd); display:flex; align-items:center; justify-content:center; color:var(--gl); transition:all .25s; }
.footer-social a svg { width:16px; height:16px; }
.footer-social a:hover { border-color:var(--or); color:var(--or); }
.footer-links h4, .footer-contact h4 { font-family:var(--ft); font-weight:900; font-size:.8rem; letter-spacing:.2em; text-transform:uppercase; color:var(--or); margin-bottom:1rem; }
.footer-links { display:flex; flex-direction:column; gap:.6rem; }
.footer-links a { font-size:.82rem; color:var(--gl); transition:color .25s; }
.footer-links a:hover { color:var(--or); }
.footer-contact p { font-size:.82rem; color:var(--cr); margin-bottom:.6rem; line-height:1.5; }
.footer-contact a { color:var(--or); }
.footer-bottom { max-width:1200px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; font-family:var(--fm); font-size:.52rem; letter-spacing:.08em; text-transform:uppercase; color:var(--gm); }
.footer-bottom a { color:var(--gm); }

/* ── CONTACT CF7 ── */
.page-contact-wrap { padding-top:calc(var(--nav-h) + 4rem); min-height:70vh; }
.page-contact-inner { max-width:680px; margin:0 auto; padding:0 2rem 5rem; }
.page-contact-inner h1 { font-family:var(--ft); font-weight:900; font-size:2.5rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:.5rem; }
.page-contact-inner p { font-size:.9rem; color:var(--cr); margin-bottom:2rem; line-height:1.7; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 textarea {
  width:100% !important; background:#ffffff !important; color:#1a1a1a !important;
  border:1px solid var(--gd) !important; padding:.85rem 1rem !important;
  font-family:var(--fb) !important; font-size:.95rem !important;
  outline:none !important; margin-bottom:.75rem !important; border-radius:0 !important;
}
.wpcf7 input:focus, .wpcf7 textarea:focus { border-color:var(--or) !important; }
.wpcf7 input[type="submit"] { background:var(--or) !important; border:none !important; color:var(--wh) !important; font-family:var(--fm) !important; font-size:.72rem !important; letter-spacing:.2em !important; text-transform:uppercase !important; padding:.9rem 2.5rem !important; cursor:pointer !important; }
.wpcf7-response-output { margin-top:1rem !important; padding:.75rem 1rem !important; font-size:.82rem !important; border:1px solid var(--or) !important; color:var(--cr) !important; }

/* ── PAGE GÉNÉRIQUE ── */
.krash-page-main { padding-top:calc(var(--nav-h) + 4rem); min-height:80vh; }
.page-inner { max-width:820px; margin:0 auto; padding:0 2.5rem 5rem; }
.page-title { font-family:var(--ft); font-weight:900; font-size:2.5rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:2rem; }
.page-content { font-size:.95rem; font-weight:300; line-height:1.9; color:var(--cr); }
.page-content a { color:var(--or); }

/* ── GTRANSLATE DANS NAV ── */
.header-translate { display:flex; align-items:center; }
.header-translate .gt-flags a { margin:0 2px; }
.header-translate .gt-flags img { height:20px; width:auto; opacity:.8; transition:opacity .2s; vertical-align:middle; }
.header-translate .gt-flags img:hover { opacity:1; }
.header-translate .goog-te-gadget-simple {
  background:transparent !important; border:1px solid rgba(255,84,18,.4) !important;
  padding:.3rem .6rem !important;
}
.header-translate .goog-te-menu-value span { color:var(--ow) !important; font-size:.6rem !important; font-family:var(--fm) !important; }

/* ── ANIMATIONS ── */
@keyframes fadeIn { from{opacity:0} to{opacity:1} }

/* ── RESPONSIVE ── */
@media(max-width:1024px) {
  .soirees-layout { grid-template-columns:1fr; }
  .soirees-col { border-right:none; border-bottom:1px solid rgba(255,84,18,.2); }
  .soirees-col:last-child { border-bottom:none; }
  .soirees-day-label { position:static; }
  .galerie-grid { grid-template-columns:repeat(2,1fr); }
  .footer-inner { grid-template-columns:1fr 1fr; }
  .sb-inner.has-img { grid-template-columns:1fr; }
  .sb-media { width:100%; height:200px; border-left:none; border-right:none; border-top:2px solid var(--or); }
}
@media(max-width:768px) {
  :root { --nav-h:58px; }
  .header-inner { padding:0 1.25rem; }
  .header-nav { display:none; position:absolute; top:var(--nav-h); left:0; right:0; background:var(--bk2); flex-direction:column; border-bottom:1px solid var(--gd); }
  .header-nav.open { display:flex; }
  .header-nav a { padding:1rem 1.5rem; border-left:none; }
  .header-burger { display:flex; }
  .header-logo-text { display:none; }
  .header-translate { display:none; }
  .hero-title { font-size:4rem; }
  .hero-logo-img { width:80px; }
  .sec-in { padding:3rem 1.5rem; }
  .acces-grid { grid-template-columns:1fr; }
  .acces-map { height:260px; }
  .social-links-big { flex-direction:column; }
  .social-btn { min-width:unset; width:100%; }
  .footer-inner { grid-template-columns:1fr; gap:2rem; }
  .footer-bottom { flex-direction:column; text-align:center; }
  .tarif-unique { padding:2rem 1.5rem; }
  .sb-inner { grid-template-columns:1fr; gap:1.25rem; }
}
@media(max-width:480px) {
  .hero-title { font-size:3rem; }
  .galerie-grid { grid-template-columns:1fr; }
}
