*{box-sizing:border-box}html,body{margin:0}:root{--navy:#062d5b;--blue:#0b4388;--gold:#d8ab45;--red:#c92d2d}
body{font-family:Arial,sans-serif;color:#10263d;background:#f7edda}.page{min-height:100vh;background:linear-gradient(rgba(255,250,239,.89),rgba(255,250,239,.89)),url('assets/recto.jpg') center top/cover fixed no-repeat}
.wrap{max-width:1180px;margin:auto;padding:16px 16px 32px}.hero{text-align:center}.official-logo-link{display:block;width:min(74vw,520px);margin:auto;line-height:0;background:transparent!important}.official-logo{display:block;width:100%;background:transparent!important;border:0;box-shadow:none}.subtitle{font:italic clamp(18px,3vw,28px) Georgia,serif;color:var(--navy);margin:5px 0}.language-title{font-weight:700;color:var(--navy);margin:8px 0 15px}.content-grid{columns:2;column-gap:26px}.section{break-inside:avoid;background:rgba(255,252,245,.82);border:1px solid rgba(197,147,72,.45);border-radius:14px;padding:14px 17px;margin:0 0 18px;box-shadow:0 7px 20px rgba(0,0,0,.06)}
h2{width:max-content;max-width:100%;margin:0 auto 14px;padding:7px 18px;color:#fff;background:var(--navy);font:italic 500 clamp(23px,3vw,30px) Georgia,serif;border-radius:42% 11% 42% 12%}.item{margin-bottom:12px}.line,.mini-line{display:flex;align-items:baseline;gap:7px}.name{font-weight:800;color:var(--blue);font-size:16px}.dots{flex:1;border-bottom:2px dotted #8b96a3;min-width:10px}.price{font-weight:900;color:var(--red);font-size:18px;white-space:nowrap}.desc{font-size:13px;line-height:1.35;color:#111;margin-top:4px}
.beer{margin-bottom:12px}.mini-line{font-size:13px;margin-top:4px}.mini-line strong{color:var(--red)}.wine-group{margin-bottom:17px}.wine-group h3{color:var(--blue);font-size:20px;margin:5px 0}.wine-head,.wine-row{display:grid;grid-template-columns:1fr 78px 68px;gap:8px}.wine-head{font-size:13px}.wine-row{font-size:13px;padding:5px 0;border-bottom:1px solid rgba(2,39,83,.08)}.wine-row strong{color:var(--red);text-align:right;font-size:16px}.extra{margin:11px 0}
.bottom-back{width:100%;display:flex;justify-content:center;align-items:center;padding:26px 12px 16px}.back{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--navy);color:#fff;border:2px solid var(--gold);border-radius:10px;padding:10px 16px;font-weight:800;text-decoration:none}footer{background:var(--navy);color:#fff;text-align:center;padding:15px;font-size:14px}
@media(max-width:740px){.page{background:linear-gradient(rgba(255,250,239,.91),rgba(255,250,239,.91)),url('assets/recto.jpg') center top/auto 100% scroll no-repeat}.wrap{padding:10px}.official-logo-link{width:min(84vw,420px)}.content-grid{columns:1}.section{padding:13px;margin-bottom:13px}.name{font-size:15px}.desc{font-size:13.5px}.price{font-size:17px}.wine-head,.wine-row{grid-template-columns:1fr 64px 58px;gap:5px}.wine-row{font-size:12.5px}}

/* =========================================================
   BOUTON RETOUR LANGUES — POSITION UNIFIÉE
   ========================================================= */
.bottom-back{
  display:none !important;
}

.hero{
  text-align:center !important;
}

.unified-language-return{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:34px !important;
  margin:9px auto 7px !important;
  padding:7px 12px !important;
  border:1.3px solid #d8ab45 !important;
  border-radius:8px !important;
  background:#062d5b !important;
  color:#ffffff !important;
  text-decoration:none !important;
  font-family:Arial,sans-serif !important;
  font-size:.72rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.025em !important;
  white-space:nowrap !important;
  box-shadow:0 4px 11px rgba(2,39,83,.14) !important;
}

.unified-language-return:visited,
.unified-language-return:hover,
.unified-language-return:active{
  color:#ffffff !important;
  text-decoration:none !important;
}

@media(max-width:740px){
  .unified-language-return{
    min-height:32px !important;
    margin:8px auto 6px !important;
    padding:6px 10px !important;
    font-size:.66rem !important;
    border-radius:7px !important;
  }
}

/* FINAL RETURN BUTTON OVERRIDE */
.hero{text-align:center !important;}
.unified-language-return{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:auto !important;min-height:32px !important;margin:9px auto 7px !important;padding:7px 12px !important;background:#062d5b !important;color:#fff !important;border:1.5px solid #d8ab45 !important;border-radius:8px !important;text-decoration:none !important;font-family:Arial,sans-serif !important;font-size:.68rem !important;font-weight:800 !important;line-height:1 !important;letter-spacing:.02em !important;box-shadow:0 3px 9px rgba(2,39,83,.16) !important;white-space:nowrap !important;}
.unified-language-return:visited,.unified-language-return:hover,.unified-language-return:active{color:#fff !important;text-decoration:none !important;background:#062d5b !important;}
.bottom-back{display:none !important;}
@media(max-width:740px){.unified-language-return{font-size:.64rem !important;padding:6px 10px !important;min-height:30px !important;margin:8px auto 6px !important;}}


/* =========================================================
   Ô CAP — NAVIGATION SITE RESPONSIVE
   Desktop : barre horizontale
   Mobile  : menu hamburger dépliant
   ========================================================= */
.ocap-site-nav{
  --ocap-nav-navy:#022753;
  --ocap-nav-cream:#fae4c5;
  position:relative;
  z-index:9999;
  width:100%;
  background:var(--ocap-nav-navy);
  color:#fff;
  box-shadow:0 3px 16px rgba(0,0,0,.14);
}

.ocap-nav-inner{
  width:min(1600px,100%);
  min-height:92px;
  margin:0 auto;
  padding:8px clamp(18px,3vw,48px) 13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  position:relative;
  z-index:2;
}

.ocap-nav-logo-link{
  flex:0 0 auto;
  display:block;
  width:clamp(190px,22vw,330px);
  line-height:0;
  text-decoration:none;
  background:transparent!important;
}

.ocap-nav-logo{
  display:block;
  width:100%;
  height:auto;
  max-height:74px;
  object-fit:contain;
  object-position:left center;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.ocap-nav-links{
  display:flex;
  align-items:stretch;
  justify-content:flex-end;
  gap:clamp(12px,2.2vw,38px);
  margin-left:auto;
}

.ocap-nav-links a{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 2px;
  color:#fff!important;
  text-decoration:none!important;
  font-family:Arial,sans-serif;
  font-size:clamp(.76rem,1vw,.95rem);
  font-weight:800;
  line-height:1;
  white-space:nowrap;
  text-transform:uppercase;
}

.ocap-nav-links a::after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:4px;
  height:3px;
  background:var(--ocap-nav-cream);
  transition:left .18s ease,right .18s ease;
}

.ocap-nav-links a:hover::after,
.ocap-nav-links a:focus-visible::after,
.ocap-nav-links a[href="/carte/"]::after{
  left:0;
  right:0;
}

.ocap-nav-toggle{
  display:none;
  width:54px;
  height:50px;
  padding:8px;
  border:0;
  border-radius:8px;
  background:transparent;
  cursor:pointer;
}

.ocap-nav-toggle span{
  display:block;
  width:100%;
  height:5px;
  margin:6px 0;
  border-radius:999px;
  background:var(--ocap-nav-cream);
  transition:transform .22s ease,opacity .18s ease;
}

.ocap-nav-brush{
  display:block;
  position:absolute;
  z-index:1;
  left:0;
  bottom:-18px;
  width:100%;
  height:28px;
  object-fit:cover;
  object-position:center bottom;
  pointer-events:none;
}

@media(max-width:820px){
  .ocap-site-nav{
    margin-bottom:14px;
  }

  .ocap-nav-inner{
    min-height:84px;
    padding:8px 18px 12px;
    gap:12px;
  }

  .ocap-nav-logo-link{
    width:min(52vw,250px);
  }

  .ocap-nav-logo{
    max-height:61px;
  }

  .ocap-nav-toggle{
    display:block;
    flex:0 0 54px;
  }

  .ocap-nav-links{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    z-index:100;
    width:100%;
    margin:0;
    padding:15px 0 0;
    flex-direction:column;
    gap:0;
    background:var(--ocap-nav-navy);
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 14px 28px rgba(0,0,0,.20);
  }

  .ocap-site-nav.is-open .ocap-nav-links{
    display:flex;
  }

  .ocap-nav-links a{
    width:100%;
    min-height:60px;
    padding:0 20px;
    font-size:1rem;
    letter-spacing:.01em;
  }

  .ocap-nav-links a::after{
    display:none;
  }

  .ocap-nav-links .ocap-reservation-link{
    background:var(--ocap-nav-cream);
    color:var(--ocap-nav-navy)!important;
  }

  .ocap-site-nav.is-open .ocap-nav-toggle span:nth-child(1){
    transform:translateY(11px) rotate(45deg);
  }
  .ocap-site-nav.is-open .ocap-nav-toggle span:nth-child(2){
    opacity:0;
  }
  .ocap-site-nav.is-open .ocap-nav-toggle span:nth-child(3){
    transform:translateY(-11px) rotate(-45deg);
  }

  .ocap-nav-brush{
    bottom:-13px;
    height:21px;
  }
}

@media(max-width:420px){
  .ocap-nav-inner{
    min-height:78px;
    padding-left:14px;
    padding-right:12px;
  }
  .ocap-nav-logo-link{
    width:min(58vw,220px);
  }
  .ocap-nav-toggle{
    width:50px;
    height:48px;
    flex-basis:50px;
  }
}


/* === OCAP FINAL HEADER GAP / ACTIVE NAV FIX === */
html,body{margin:0!important;padding:0!important}
body{padding-top:0!important}
.ocap-site-nav{margin-bottom:0!important}
.ocap-nav-brush{bottom:-12px!important}
.page,.landing-page,main,.wrap{margin-top:0!important}
body>.page,body>.landing-page{position:relative!important;top:-1px!important}

@media(max-width:820px){
  .ocap-site-nav{margin-bottom:0!important}
  .ocap-nav-brush{bottom:-10px!important;height:20px!important}
  body>.page,body>.landing-page{margin-top:-1px!important;padding-top:1px!important}
}

/* hide duplicate hero/body logos only */
.logo-link,.logo-main,.official-logo-link,.official-logo{display:none!important}
.ocap-nav-logo-link,.ocap-nav-logo{display:block!important}

/* no permanent beige item */
.ocap-nav-links a,
.ocap-nav-links .ocap-reservation-link{
  background:transparent!important;
  color:#fff!important;
}

/* hover only */
.ocap-nav-links a:hover,
.ocap-nav-links a:focus-visible{
  background:#fae4c5!important;
  color:#022753!important;
}

/* active state only when explicitly marked */
.ocap-nav-links a.active{
  background:#fae4c5!important;
  color:#022753!important;
}

@media(max-width:820px){
  .ocap-nav-links a,
  .ocap-nav-links .ocap-reservation-link{
    background:transparent!important;
    color:#fff!important;
  }
  .ocap-nav-links a:hover,
  .ocap-nav-links a:focus-visible,
  .ocap-nav-links a.active{
    background:#fae4c5!important;
    color:#022753!important;
  }
}
