.elementor-913 .elementor-element.elementor-element-9735952{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-913 .elementor-element.elementor-element-9735952:not(.elementor-motion-effects-element-type-background), .elementor-913 .elementor-element.elementor-element-9735952 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://roestyd.com/wp-content/uploads/2026/08/tengyart-SYtyoEuhPuk-unsplash-1.jpg");background-repeat:no-repeat;background-size:auto;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-913 .elementor-element.elementor-element-4c0ccd7 .elementor-button{background-color:#B5BDB6D6;fill:#1A1919;color:#1A1919;}.elementor-913 .elementor-element.elementor-element-4c0ccd7{margin:50px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-913 .elementor-element.elementor-element-950f577{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:1025px){.elementor-913 .elementor-element.elementor-element-9735952:not(.elementor-motion-effects-element-type-background), .elementor-913 .elementor-element.elementor-element-9735952 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}/* Start custom CSS for html, class: .elementor-element-bf1e883 *//* COMPLETE NAV + BACK-TO-TOP UPDATE
   Paste into Elementor → Site Settings → Custom CSS (replace previous nav CSS) */

/* Theme variables (tweak these only) */
:root{
  --roestyd-nav-bg: rgba(255,255,255,0.92);
  --roestyd-accent: #b84b2a;
  --roestyd-brown: #6f4f36;
  --roestyd-nav-gap: 10px;

  /* Tweak these to control sidebar placement and spacing */
  --roestyd-nav-top: 100px;        /* distance from top of viewport */
  --roestyd-nav-width: 200px;      /* width of the right sidebar */
  --roestyd-menu-gap-right: 300px; /* space reserved on the right for the sidebar */
}

/* ---------------------------
   NAV POSITIONING (minimal, non‑destructive)
   --------------------------- */

/* Fixed sidebar on the right (desktop) */
.roestyd-nav{
  position: fixed;
  top: var(--roestyd-nav-top);
  right: 20px;
  z-index: 1400;
  width: var(--roestyd-nav-width);
  margin: 0;
  padding: 0;
  pointer-events: auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Nav list — vertical stack, keep visual treatment */
.roestyd-nav__list{
  display: flex;
  flex-direction: column;
  gap: var(--roestyd-nav-gap);
  list-style: none;
  padding: 12px 14px;
  margin: 0;
  background: var(--roestyd-nav-bg);
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
  align-items: stretch;
  max-width: 100%;
  overflow: visible;
}
.roestyd-nav__list li{ flex: 0 0 auto; }

/* Nav links (preserve original look) */
.roestyd-nav__list a{
  display:block;
  padding:10px 14px;
  text-decoration:none;
  color:var(--roestyd-brown);
  font-family:"Raleway", sans-serif !important;
  font-weight:600;
  font-size:13px;
  border-radius:6px;
  white-space:nowrap;
  text-transform:uppercase;
  letter-spacing:0.5px;
  transition: background .18s ease, color .18s ease, transform .08s ease, box-shadow .18s ease;
}
.roestyd-nav__list a:hover,
.roestyd-nav__list a:focus{
  background: rgba(184,75,42,0.08);
  color: var(--roestyd-accent);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(184,75,42,0.06);
}
.roestyd-nav__list a.active{
  background: linear-gradient(90deg, rgba(184,75,42,0.12), rgba(139,90,43,0.06));
  color: #8B5A2B;
  box-shadow: 0 8px 22px rgba(184,75,42,0.08);
}

/* Accessibility focus ring */
.roestyd-nav__list a:focus-visible{
  box-shadow:0 0 0 4px rgba(184,75,42,0.12);
  outline:none;
}

/* ---------------------------
   PREVENT OVERLAP: reserve space on the right
   Use padding-right so the menu remains centered
   --------------------------- */
.roestyd-menu{
  padding-top:48px !important;
  overflow: visible !important;
  box-sizing: border-box;
  padding-right: var(--roestyd-menu-gap-right); /* reserve space for sidebar */
}

/* Extra safety: ensure price column has breathing room on large screens */
@media (min-width: 1024px) {
  .roestyd-menu .grid-2 { padding-right: 8px; }
  .roestyd-menu .item-price { padding-right: 12px; }
}

/* ---------------------------
   Back-to-top button (unchanged)
   --------------------------- */
.roestyd-top{
  position: fixed;
  right: 18px;
  bottom: 22px;
  width:56px;
  height:56px;
  border-radius:999px;
  border:none;
  background:#8B5A2B;
  color:#fff;
  font-family:"Raleway", sans-serif;
  font-weight:700;
  font-size:13px;
  cursor:pointer;
  box-shadow:0 10px 30px rgba(0,0,0,0.18);
  opacity:0;
  transform:translateY(8px);
  transition:opacity .28s ease, transform .28s ease;
  z-index:1500;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  pointer-events: none;
}
.roestyd-top.show{ opacity:1; transform:translateY(0); pointer-events:auto; }
.roestyd-top:focus-visible{ box-shadow:0 0 0 4px rgba(184,75,42,0.12); outline:none; }

/* Corrected offset so titles clear nav (keeps previous behavior) */
.roestyd-menu .menu-section{
  scroll-margin-top: calc(var(--roestyd-nav-height, 88px) + 16px);
}

/* ---------------------------
   MOBILE: revert nav to inline/grid behavior
   --------------------------- */
@media (max-width:720px){
  .roestyd-nav {
    position: static;
    width: 100%;
    margin: 8px 0;
    padding: 0 8px;
  }
  .roestyd-nav__list{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    gap:8px;
    padding:8px 6px;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    max-width: 100%;
  }
  .roestyd-nav__list a{
    padding:8px 6px;
    font-size:13px;
    text-align:center;
    white-space:normal;
    border-radius:6px;
    background: rgba(255,255,255,0.96);
    box-shadow: 0 6px 14px rgba(0,0,0,0.04);
  }
  .roestyd-top{ width:48px; height:48px; right:12px; bottom:16px; }
  .roestyd-menu{ padding-right: 0; padding-top:44px !important; }
}

/* ---------------------------
   STRONG FALLBACKS + ORIGINAL MENU STYLES
   (kept intact from your original stylesheet)
   --------------------------- */

/* Strong fallbacks */
.roestyd-nav__list a{ color: var(--roestyd-brown) !important; }
.roestyd-nav__list a.active{ color:#8B5A2B !important; background: linear-gradient(90deg, rgba(184,75,42,0.12), rgba(139,90,43,0.06)) !important; }

/* Shared menu styles */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@300;400;600;700&display=swap');

.roestyd-menu {
  box-sizing: border-box;
  font-family: "Raleway", sans-serif;
  color: #222;
  max-width: 920px;
  margin: 28px auto;
  padding: 28px;
  background: rgba(255,255,255,0.94);
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(0,0,0,0.06);
  line-height: 1.45;
}
/* Header */
.menu-header { text-align: center; margin-bottom: 18px; }
.menu-header h1 {
  font-weight: 700;
  font-size: 34px;
  color: #8B5A2B;
  margin: 0;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.menu-header .tag { font-weight: 600; margin-top: 6px; color:#6a5a4a; }
.lead, .intro { color: #6a5a4a; font-size: 14px; margin: 6px 0; }

/* Section header */
.section-header { text-align: center; margin-bottom: 14px; }
.section-title {
  font-weight: 700;
  font-size: 34px;
  color: #8B5A2B;
  margin: 0 0 6px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.section-sub {
  font-size: 16px;
  color: #6a5a4a;
  font-weight: 600;
  margin: 4px 0;
}

/* Grid */
.grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 28px;
  align-items: start;
}
.col { display:flex; flex-direction:column; gap:8px; }

/* Items */
.item {
  display: grid;
  grid-template-columns: 1fr 84px;
  gap: 12px;
  align-items: start;
  padding: 10px 0;
  border-bottom: 1px dashed rgba(0,0,0,0.06);
}
.item-left { min-width:0; }
.item-name {
  margin: 0;
  font-weight: 600;
  font-size: 15.5px;
  color: #6f4f36;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
.item-desc {
  margin: 6px 0 0;
  color: #b84b2a;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.55;
}
.item-price {
  font-weight: 700;
  font-size: 16px;
  text-align: right;
  color: #222;
  padding-top: 2px;
}

/* Add-ons */
.addon-title,
.addon-title:empty {
  display:block;
  margin-top:18px;
  font-weight:700;
  font-size:16px;
  color:#8B5A2B;
  text-transform:uppercase;
  text-align:center;
  letter-spacing:0.6px;
}
.addons-list {
  color:#5b4a3f;
  font-size:15px;
  margin-top:8px;
  text-align:center;
}

/* Don Pedros heading */
.don-title {
  font-weight:700;
  font-size:20px;
  color:#8B5A2B;
  margin:12px 0 8px;
  text-transform:uppercase;
  text-align:center;
}

/* Tables for wines/spirits/drinks */
.table-compact {
  width:100%;
  border-collapse:collapse;
  margin-top:8px;
  font-size:14px;
}
.table-compact td, .table-compact th {
  padding:6px 8px;
  border-bottom:1px solid rgba(0,0,0,0.04);
  vertical-align:middle;
}
.table-compact tr td:first-child { width:70%; }
.table-compact tr td:last-child { text-align:right; width:30%; }

/* Strong fallbacks to avoid theme overrides */
.roestyd-menu .item-name { color: #6f4f36 !important; }
.roestyd-menu .item-desc { color: #b84b2a !important; font-size: 16px !important; }

/* Responsive overrides */
@media (max-width:760px) {
  .grid-2 { grid-template-columns: 1fr !important; }
  .item { grid-template-columns: 1fr 64px !important; }
  .section-title { font-size:30px !important; }
  .item-desc { font-size:15px !important; line-height:1.45 !important; }
  .menu-header h1 { font-size:28px !important; }
}/* End custom CSS */