{"id":6,"date":"2026-01-15T20:54:18","date_gmt":"2026-01-15T19:54:18","guid":{"rendered":"https:\/\/app.menube.es\/cava-interactiva\/?page_id=6"},"modified":"2026-01-15T20:54:20","modified_gmt":"2026-01-15T19:54:20","slug":"cava-interactiva-basica","status":"publish","type":"page","link":"https:\/\/app.menube.es\/cava-interactiva\/","title":{"rendered":"Cava Interactiva B\u00e1sica"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"6\" class=\"elementor elementor-6\">\n\t\t\t\t<div class=\"elementor-element elementor-element-939d80d e-flex e-con-boxed e-con e-parent\" data-id=\"939d80d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1966cb8 elementor-widget elementor-widget-html\" data-id=\"1966cb8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\r\n<html lang=\"es\">\r\n<head>\r\n  <meta charset=\"utf-8\" \/>\r\n  <meta name=\"viewport\" content=\"width=device-width,initial-scale=1\" \/>\r\n  <title>WineRack \u00b7 Cava Digital<\/title>\r\n\r\n  <style>\r\n    :root{\r\n      --ink:#070405;\r\n      --velvet:#12070a;\r\n\r\n      --gold:#e7c98a;\r\n      --amber:#c7a26a;\r\n      --wine:#a10f2b;\r\n\r\n      --text:#fff7ee;\r\n      --muted: rgba(255,247,238,.72);\r\n\r\n      \/* madera \/ cava *\/\r\n      --wood1:#2a1710;\r\n      --wood2:#1c0f0b;\r\n      --wood3:#3a2116;\r\n\r\n      --line: rgba(231,201,138,.18);\r\n      --glass: rgba(255,255,255,.06);\r\n\r\n      --r:18px;\r\n    }\r\n\r\n    html,body{\r\n      margin:0;\r\n      background:\r\n        radial-gradient(900px 600px at 12% 0%, rgba(161,15,43,.22), transparent 60%),\r\n        radial-gradient(1000px 700px at 90% 15%, rgba(231,201,138,.12), transparent 62%),\r\n        radial-gradient(900px 700px at 50% 110%, rgba(199,162,106,.10), transparent 60%),\r\n        linear-gradient(180deg, var(--ink) 0%, var(--velvet) 100%);\r\n    }\r\n\r\n    .wr-wrap{\r\n      min-height:100vh;\r\n      padding: 14px 12px 140px;\r\n      color: var(--text);\r\n      font-family: ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", sans-serif;\r\n    }\r\n\r\n    \/* ===== Header ===== *\/\r\n    .wr-header{\r\n      max-width:1180px;\r\n      margin: 0 auto 12px;\r\n      padding: 14px;\r\n      border-radius: var(--r);\r\n      border: 1px solid var(--line);\r\n      background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04));\r\n      backdrop-filter: blur(14px);\r\n      -webkit-backdrop-filter: blur(14px);\r\n      box-shadow: 0 22px 70px rgba(0,0,0,.62);\r\n      position:relative;\r\n      overflow:hidden;\r\n    }\r\n    .wr-header:before{\r\n      content:\"\";\r\n      position:absolute; inset:0;\r\n      background: linear-gradient(90deg, transparent, rgba(231,201,138,.10), rgba(161,15,43,.10), transparent);\r\n      opacity:.8;\r\n      filter: blur(16px);\r\n      pointer-events:none;\r\n    }\r\n    .wr-title{\r\n      position:relative;\r\n      margin:0;\r\n      text-align:center;\r\n      letter-spacing:.22em;\r\n      text-transform:uppercase;\r\n      font-weight: 950;\r\n      font-size: 1.02rem;\r\n    }\r\n    .wr-sub{\r\n      position:relative;\r\n      margin:6px 0 0;\r\n      text-align:center;\r\n      color: var(--muted);\r\n      font-size: .92rem;\r\n    }\r\n\r\n    \/* Tabs (categor\u00edas) *\/\r\n    .wr-tabs{\r\n      position:relative;\r\n      margin-top: 10px;\r\n      display:flex;\r\n      gap: 8px;\r\n      overflow-x:auto;\r\n      -webkit-overflow-scrolling: touch;\r\n      white-space: nowrap;\r\n      padding: 8px;\r\n      border-radius: 999px;\r\n      border: 1px solid rgba(231,201,138,.14);\r\n      background: rgba(0,0,0,.18);\r\n    }\r\n    .wr-tabs::-webkit-scrollbar{display:none;}\r\n    .wr-tab{\r\n      border: 1px solid rgba(231,201,138,.16);\r\n      background: rgba(255,255,255,.04);\r\n      color: var(--text);\r\n      border-radius: 999px;\r\n      padding: 10px 12px;\r\n      font-weight: 900;\r\n      letter-spacing:.10em;\r\n      text-transform: uppercase;\r\n      font-size: .72rem;\r\n      cursor:pointer;\r\n      flex: 0 0 auto;\r\n      user-select:none;\r\n    }\r\n    .wr-tab.active{\r\n      border-color: rgba(231,201,138,.55);\r\n      background: linear-gradient(90deg, rgba(231,201,138,.14), rgba(161,15,43,.14));\r\n      box-shadow: 0 0 0 2px rgba(231,201,138,.12) inset;\r\n    }\r\n\r\n    \/* Sections *\/\r\n    .wr-section{ display:none; max-width:1180px; margin: 0 auto; }\r\n    .wr-section.active{ display:block; }\r\n\r\n    \/* =========================================================\r\n       SUBDOCK (subcategor\u00edas)\r\n       ========================================================= *\/\r\n    .wr-subdock{\r\n      position: sticky;\r\n      top: 10px;\r\n      z-index: 50;\r\n\r\n      margin: 10px 0 14px;\r\n      padding: 8px;\r\n\r\n      border-radius: 999px;\r\n      border: 1px solid rgba(231,201,138,.18);\r\n      background: linear-gradient(180deg, rgba(10,6,7,.86), rgba(10,6,7,.62));\r\n      backdrop-filter: blur(12px);\r\n      -webkit-backdrop-filter: blur(12px);\r\n      box-shadow: 0 16px 46px rgba(0,0,0,.45);\r\n    }\r\n\r\n    .wr-subdockInner{\r\n      display:flex;\r\n      gap:8px;\r\n      overflow-x:auto;\r\n      overflow-y:hidden;\r\n      white-space: nowrap;\r\n      -webkit-overflow-scrolling: touch;\r\n      padding-bottom: 2px;\r\n    }\r\n    .wr-subdockInner::-webkit-scrollbar{ display:none; }\r\n\r\n    .wr-subtab{\r\n      flex: 0 0 auto;\r\n      border: 1px solid rgba(231,201,138,.22);\r\n      background: rgba(255,255,255,.04);\r\n      color: #fff7ee;\r\n\r\n      border-radius: 999px;\r\n      padding: 10px 14px;\r\n\r\n      font-size: .72rem;\r\n      font-weight: 950;\r\n      letter-spacing: .10em;\r\n      text-transform: uppercase;\r\n\r\n      cursor:pointer;\r\n      white-space: nowrap;\r\n      user-select:none;\r\n\r\n      transition: transform .12s ease, border-color .2s ease, background .2s ease;\r\n    }\r\n    .wr-subtab:hover{\r\n      transform: translateY(-1px);\r\n      border-color: rgba(231,201,138,.28);\r\n      background: rgba(0,0,0,.22);\r\n    }\r\n    .wr-subtab.active{\r\n      border-color: rgba(231,201,138,.70);\r\n      background: linear-gradient(90deg, rgba(231,201,138,.18), rgba(161,15,43,.18));\r\n      box-shadow: 0 0 0 2px rgba(231,201,138,.12) inset;\r\n    }\r\n\r\n    \/* subsecciones *\/\r\n    .wr-subsection{ display:none; }\r\n    .wr-subsection.active{ display:block; }\r\n\r\n    @media (max-width: 520px){\r\n      .wr-subdock{ padding: 8px; }\r\n      .wr-subtab{ padding: 11px 14px; font-size: .72rem; }\r\n    }\r\n\r\n    \/* =========================================================\r\n       CAVA \/ MUEBLE\r\n       ========================================================= *\/\r\n    .wr-cellar{\r\n      margin-top: 12px;\r\n      border-radius: var(--r);\r\n      position: relative;\r\n      overflow:hidden;\r\n\r\n      background:\r\n        radial-gradient(900px 260px at 50% 0%, rgba(231,201,138,.10), transparent 70%),\r\n        linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.10));\r\n      box-shadow: 0 18px 70px rgba(0,0,0,.62);\r\n      border: 1px solid rgba(231,201,138,.18);\r\n    }\r\n\r\n    .wr-cellar:before{\r\n      content:\"\";\r\n      position:absolute; inset:0;\r\n      pointer-events:none;\r\n\r\n      background:\r\n        linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.20)),\r\n        repeating-linear-gradient(\r\n          90deg,\r\n          rgba(58,33,22,.55) 0px,\r\n          rgba(58,33,22,.55) 10px,\r\n          rgba(42,23,16,.55) 10px,\r\n          rgba(42,23,16,.55) 22px\r\n        );\r\n      mix-blend-mode: overlay;\r\n      opacity:.55;\r\n    }\r\n\r\n    .wr-frame{\r\n      position: relative;\r\n      border-radius: inherit;\r\n      padding: 12px;\r\n      background:\r\n        linear-gradient(180deg, rgba(42,23,16,.62), rgba(28,15,11,.62));\r\n      border: 1px solid rgba(0,0,0,.35);\r\n    }\r\n\r\n    .wr-shelfHead{\r\n      display:flex;\r\n      justify-content: space-between;\r\n      align-items: baseline;\r\n      gap: 10px;\r\n      flex-wrap: wrap;\r\n\r\n      padding: 10px 10px 8px;\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(231,201,138,.12);\r\n\r\n      background:\r\n        radial-gradient(700px 160px at 50% 0%, rgba(231,201,138,.10), transparent 70%),\r\n        rgba(0,0,0,.18);\r\n      box-shadow: 0 12px 30px rgba(0,0,0,.35);\r\n    }\r\n\r\n    .wr-shelfTitle{\r\n      font-weight: 950;\r\n      letter-spacing:.14em;\r\n      text-transform: uppercase;\r\n      color: var(--gold);\r\n      font-size: .84rem;\r\n    }\r\n    .wr-shelfTag{\r\n      color: var(--muted);\r\n      font-size:.78rem;\r\n      letter-spacing:.08em;\r\n    }\r\n\r\n    \/* Rack *\/\r\n    .wr-rack{\r\n      margin-top: 10px;\r\n      border-radius: 16px;\r\n      overflow:hidden;\r\n      border: 1px solid rgba(231,201,138,.10);\r\n      background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.16));\r\n\r\n      position: relative;\r\n      perspective: 1000px;\r\n    }\r\n\r\n    .wr-grid{\r\n      padding: 12px;\r\n      display:grid;\r\n      grid-template-columns: repeat(2, minmax(0,1fr));\r\n      gap: 10px;\r\n      position: relative;\r\n      z-index: 2;\r\n    }\r\n    @media (min-width: 980px){\r\n      .wr-grid{ grid-template-columns: repeat(4, minmax(0,1fr)); }\r\n    }\r\n    @media (max-width: 520px){\r\n      .wr-grid{ grid-template-columns: 1fr; }\r\n    }\r\n\r\n    .wr-grid:before{\r\n      content:\"\";\r\n      position:absolute;\r\n      inset:0;\r\n      pointer-events:none;\r\n      background:\r\n        repeating-linear-gradient(\r\n          90deg,\r\n          transparent 0,\r\n          transparent calc(25% - 1px),\r\n          rgba(231,201,138,.08) calc(25% - 1px),\r\n          rgba(231,201,138,.08) 25%\r\n        );\r\n      opacity:.55;\r\n    }\r\n    @media (max-width: 980px){\r\n      .wr-grid:before{\r\n        background:\r\n          repeating-linear-gradient(\r\n            90deg,\r\n            transparent 0,\r\n            transparent calc(50% - 1px),\r\n            rgba(231,201,138,.08) calc(50% - 1px),\r\n            rgba(231,201,138,.08) 50%\r\n          );\r\n      }\r\n    }\r\n    @media (max-width: 520px){\r\n      .wr-grid:before{ background:none; }\r\n    }\r\n\r\n    \/* Fondo cava *\/\r\n    .wr-rack::before{\r\n      content:\"\";\r\n      position:absolute;\r\n      inset: 0;\r\n      pointer-events:none;\r\n      z-index: 0;\r\n\r\n      background-image: url(\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-42.webp\");\r\n      background-repeat: repeat;\r\n      background-size: 160px auto;\r\n      background-position: 0 0;\r\n\r\n      opacity: .06;\r\n      filter: saturate(.80) contrast(1.00) brightness(.92);\r\n\r\n      box-shadow:\r\n        inset 0 20px 50px rgba(0,0,0,.28),\r\n        inset 0 -20px 60px rgba(0,0,0,.32);\r\n    }\r\n\r\n    \/* Cards *\/\r\n    .wr-slot{\r\n      position:relative;\r\n      display:flex;\r\n      gap: 10px;\r\n      align-items:center;\r\n\r\n      padding: 10px;\r\n      border-radius: 14px;\r\n\r\n      background: linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.12));\r\n      border: 1px solid rgba(231,201,138,.12);\r\n      box-shadow: 0 10px 26px rgba(0,0,0,.40);\r\n\r\n      cursor:pointer;\r\n      overflow:hidden;\r\n      z-index: 3;\r\n      transition: transform .12s ease, border-color .2s ease, box-shadow .2s ease;\r\n    }\r\n    .wr-slot:before{\r\n      content:\"\";\r\n      position:absolute; inset:0;\r\n      pointer-events:none;\r\n      background:\r\n        radial-gradient(240px 160px at 20% 10%, rgba(231,201,138,.10), transparent 60%),\r\n        radial-gradient(260px 180px at 110% 20%, rgba(161,15,43,.10), transparent 60%);\r\n      opacity:.9;\r\n    }\r\n    .wr-slot:hover{\r\n      transform: translateY(-1px);\r\n      border-color: rgba(231,201,138,.26);\r\n      box-shadow: 0 16px 40px rgba(0,0,0,.55);\r\n    }\r\n\r\n    .wr-thumb{\r\n      width: 58px;\r\n      height: 92px;\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(231,201,138,.12);\r\n      background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.18));\r\n      display:flex;\r\n      align-items:center;\r\n      justify-content:center;\r\n      overflow:hidden;\r\n      flex: 0 0 auto;\r\n      position: relative;\r\n      z-index: 1;\r\n    }\r\n    .wr-thumb img{\r\n      width: 100%;\r\n      height: 100%;\r\n      object-fit: cover;\r\n      object-position: center;\r\n      padding: 0;\r\n      filter: drop-shadow(0 14px 16px rgba(0,0,0,.45));\r\n      background:#fff;\r\n    }\r\n\r\n    .wr-info{ flex: 1; min-width: 0; position:relative; z-index:1; }\r\n    .wr-name{\r\n      font-weight: 950;\r\n      font-size: .92rem;\r\n      white-space: nowrap;\r\n      overflow:hidden;\r\n      text-overflow: ellipsis;\r\n    }\r\n    .wr-mini{\r\n      margin-top: 2px;\r\n      color: var(--muted);\r\n      font-size: .80rem;\r\n      white-space: nowrap;\r\n      overflow:hidden;\r\n      text-overflow: ellipsis;\r\n    }\r\n    .wr-price{\r\n      margin-top: 6px;\r\n      font-weight: 900;\r\n      color: var(--text);\r\n      font-size: .82rem;\r\n    }\r\n    .wr-cta{\r\n      border:none;\r\n      cursor:pointer;\r\n      border-radius: 999px;\r\n      padding: 8px 10px;\r\n      font-size: .72rem;\r\n      letter-spacing:.10em;\r\n      text-transform: uppercase;\r\n      background: linear-gradient(90deg, var(--amber), var(--wine));\r\n      color:#1b0b10;\r\n      font-weight: 950;\r\n      flex: 0 0 auto;\r\n      position:relative;\r\n      z-index: 1;\r\n    }\r\n    .wr-cta:active{ transform: translateY(1px); }\r\n\r\n    \/* ===== Modal (detalle) \u2014 coherente con carta ===== *\/\r\n    .wr-modal{\r\n      position: fixed;\r\n      inset: 0;\r\n      display: none;\r\n      align-items: center;\r\n      justify-content: center;\r\n      padding: 14px;\r\n      background: rgba(18,7,10,.78);\r\n      z-index: 2147483647;\r\n    }\r\n    .wr-modal.open{ display:flex; }\r\n\r\n    .wr-panel{\r\n      width: min(680px, 100%);\r\n      max-height: calc(100dvh - 28px);\r\n      border-radius: 18px;\r\n      overflow: auto;\r\n      -webkit-overflow-scrolling: touch;\r\n      background:\r\n        radial-gradient(900px 300px at 50% 0%, rgba(231,201,138,.10), transparent 65%),\r\n        linear-gradient(180deg, rgba(26,12,15,.96), rgba(18,7,10,.94));\r\n      border: 1px solid rgba(231,201,138,.30);\r\n      box-shadow: 0 28px 110px rgba(0,0,0,.78), inset 0 0 0 1px rgba(0,0,0,.35);\r\n    }\r\n    @supports not (height: 100dvh){\r\n      .wr-panel{ max-height: calc(100vh - 28px); }\r\n    }\r\n\r\n    .wr-panelTop{\r\n      position: sticky;\r\n      top: 0;\r\n      z-index: 3;\r\n      display:flex;\r\n      justify-content: space-between;\r\n      align-items:center;\r\n      gap: 10px;\r\n      padding: 10px 12px;\r\n      background: linear-gradient(180deg, rgba(30,14,18,.98), rgba(18,7,10,.96));\r\n      border-bottom: 1px solid rgba(231,201,138,.22);\r\n      backdrop-filter: blur(8px);\r\n      -webkit-backdrop-filter: blur(8px);\r\n    }\r\n    .wr-panelTag{\r\n      font-size:.72rem;\r\n      letter-spacing:.14em;\r\n      text-transform: uppercase;\r\n      padding: 4px 10px;\r\n      border-radius: 999px;\r\n      border: 1px solid rgba(231,201,138,.55);\r\n      color: var(--gold);\r\n      background: rgba(0,0,0,.22);\r\n      font-weight: 950;\r\n    }\r\n    .wr-close{\r\n      border: 1px solid rgba(231,201,138,.22);\r\n      background: rgba(0,0,0,.22);\r\n      color: #fff7ee;\r\n      border-radius: 999px;\r\n      padding: 8px 12px;\r\n      cursor:pointer;\r\n      font-size:.82rem;\r\n      font-weight: 900;\r\n    }\r\n\r\n    .wr-panelContent{\r\n      padding: 12px 12px 16px;\r\n      padding-bottom: max(16px, env(safe-area-inset-bottom));\r\n      color: rgba(255,247,238,.96);\r\n    }\r\n\r\n    \/* HERO MODAL: fondo blanco real *\/\r\n    .wr-hero{\r\n      border-radius: 16px;\r\n      overflow: hidden;\r\n      border: 1px solid rgba(231,201,138,.18);\r\n      background: #ffffff;\r\n      display:flex;\r\n      align-items:center;\r\n      justify-content:center;\r\n    }\r\n    .wr-hero img{\r\n      width: 100%;\r\n      height: 320px;         \/* PC *\/\r\n      display:block;\r\n      object-fit: contain;   \/* botella completa *\/\r\n      object-position: center;\r\n      padding: 0;\r\n      background: #ffffff;\r\n    }\r\n    @media (max-width: 520px){\r\n      .wr-hero img{ height: 240px; }\r\n    }\r\n\r\n    .wr-hTitle{ margin-top: 10px; font-weight: 950; font-size: 1.05rem; }\r\n    .wr-hSub{ margin-top: 4px; color: var(--muted); font-weight: 700; }\r\n    .wr-desc{ margin-top: 10px; color: var(--text); opacity: .95; }\r\n\r\n    .wr-box{\r\n      margin-top: 12px;\r\n      padding: 10px;\r\n      background: rgba(0,0,0,.18);\r\n      border: 1px solid rgba(231,201,138,.12);\r\n      border-radius: 14px;\r\n      display:none;\r\n    }\r\n    .wr-box .label{\r\n      color: var(--gold);\r\n      font-weight: 900;\r\n      letter-spacing:.12em;\r\n      text-transform:uppercase;\r\n      font-size:.74rem;\r\n    }\r\n    .wr-metaList{ margin: 10px 0 0; padding-left: 16px; color: rgba(255,247,238,.86); }\r\n    .wr-metaList li{ margin: 6px 0; }\r\n\r\n    .wr-all{ margin-top: 10px; color: rgba(255,247,238,.92); }\r\n    .wr-all strong{ color: var(--gold); }\r\n\r\n    .wr-prices{\r\n      display:flex;\r\n      flex-direction: column;\r\n      gap: 10px;\r\n      margin-top: 12px;\r\n    }\r\n    .wr-line{\r\n      display:flex;\r\n      align-items:center;\r\n      justify-content: space-between;\r\n      gap: 12px;\r\n      font-weight: 900;\r\n      padding: 10px;\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(231,201,138,.12);\r\n      background: rgba(0,0,0,.16);\r\n    }\r\n    .wr-line > span:first-child{ flex:1; white-space: nowrap; overflow:hidden; text-overflow: ellipsis; }\r\n    .wr-line > div{ display:flex; align-items:center; gap: 10px; white-space: nowrap; }\r\n    .wr-line > div span{ color:#fff; font-weight: 950; }\r\n\r\n    .wr-add{\r\n      border:none;\r\n      cursor:pointer;\r\n      border-radius: 999px;\r\n      padding: 8px 14px;\r\n      font-size: .72rem;\r\n      letter-spacing: .10em;\r\n      text-transform: uppercase;\r\n      background: linear-gradient(90deg,var(--amber),var(--wine));\r\n      color:#1b0b10;\r\n      font-weight: 950;\r\n    }\r\n    .wr-add.is-ok{ transform: translateY(1px); filter: brightness(1.05); }\r\n\r\n    \/* ===== Cart button ===== *\/\r\n    .wr-cartBtn{\r\n      position: fixed;\r\n      right: 16px; bottom: 16px;\r\n      z-index: 9999;\r\n      display:inline-flex;\r\n      gap:8px;\r\n      align-items:center;\r\n      padding: 10px 12px;\r\n      border-radius: 999px;\r\n      background: rgba(255,247,238,.94);\r\n      color:#1b0b10;\r\n      box-shadow: 0 16px 40px rgba(0,0,0,.55);\r\n      cursor:pointer;\r\n      font-weight: 900;\r\n      font-size: .82rem;\r\n      user-select:none;\r\n    }\r\n    .wr-pill{\r\n      background: linear-gradient(90deg,var(--amber),var(--wine));\r\n      color:#1b0b10;\r\n      border-radius:999px;\r\n      padding: 2px 8px;\r\n      font-size:.76rem;\r\n      font-weight: 950;\r\n    }\r\n\r\n    \/* ===== Cart drawer ===== *\/\r\n    .wr-drawerBg{\r\n      position: fixed; inset: 0;\r\n      background: rgba(0,0,0,.70);\r\n      display: none;\r\n      z-index: 99999;\r\n      align-items: center;\r\n      justify-content: center;\r\n      padding: 14px;\r\n    }\r\n    .wr-drawerBg.open{ display:flex; }\r\n\r\n    .wr-drawer{\r\n      width: min(520px, 100%);\r\n      max-height: calc(100dvh - 28px);\r\n      background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));\r\n      border: 1px solid rgba(231,201,138,.20);\r\n      border-radius: 18px;\r\n      box-shadow: 0 20px 80px rgba(0,0,0,.75);\r\n      overflow: hidden;\r\n      display:flex;\r\n      flex-direction: column;\r\n    }\r\n    @supports not (height: 100dvh){\r\n      .wr-drawer{ max-height: calc(100vh - 28px); }\r\n    }\r\n\r\n    .wr-dh{\r\n      display:flex;\r\n      align-items:center;\r\n      justify-content: space-between;\r\n      gap: 12px;\r\n      padding: 12px 12px 10px;\r\n      border-bottom: 1px solid rgba(231,201,138,.12);\r\n      background: rgba(10,6,7,.82);\r\n      backdrop-filter: blur(12px);\r\n      -webkit-backdrop-filter: blur(12px);\r\n    }\r\n    .wr-dh strong{\r\n      color: #fff7ee;\r\n      font-weight: 950;\r\n      letter-spacing:.16em;\r\n      text-transform: uppercase;\r\n      font-size:.78rem;\r\n    }\r\n    .wr-x{\r\n      display:inline-flex;\r\n      align-items:center;\r\n      justify-content:center;\r\n      padding: 6px 10px;\r\n      border-radius: 999px;\r\n      border: 1px solid rgba(231,201,138,.18);\r\n      background: rgba(0,0,0,.22);\r\n      color: #fff7ee;\r\n      line-height: 1;\r\n      white-space: nowrap;\r\n      cursor:pointer;\r\n      flex: 0 0 auto;\r\n    }\r\n\r\n    .wr-items{\r\n      flex:1;\r\n      overflow:auto;\r\n      -webkit-overflow-scrolling: touch;\r\n      padding: 10px 12px;\r\n      min-height: 120px;\r\n      border-bottom: 1px solid rgba(231,201,138,.10);\r\n      color: var(--text);\r\n    }\r\n    .wr-rowCart{\r\n      display:flex;\r\n      justify-content: space-between;\r\n      align-items:flex-start;\r\n      gap: 10px;\r\n      padding: 10px 0;\r\n      border-bottom: 1px solid rgba(231,201,138,.10);\r\n    }\r\n    .wr-rowCart .name{ flex:1; font-weight: 900; line-height: 1.25; }\r\n    .wr-rowCart .qty{ color: var(--gold); font-weight: 950; white-space: nowrap; }\r\n    .wr-rowCart .p{ color: #fff7ee; font-weight: 950; white-space: nowrap; }\r\n\r\n    .wr-foot{\r\n      display:flex;\r\n      justify-content: space-between;\r\n      align-items:center;\r\n      padding: 10px 12px 0;\r\n      font-weight: 900;\r\n      color: var(--text);\r\n    }\r\n    #wr-total{ color:#fff7ee; font-weight: 950; }\r\n\r\n    .wr-actions{ display:flex; gap:8px; padding: 10px 12px 0; }\r\n    .wr-btn{\r\n      flex:1;\r\n      border:none;\r\n      cursor:pointer;\r\n      border-radius:999px;\r\n      padding: 10px 10px;\r\n      font-weight: 950;\r\n      letter-spacing:.10em;\r\n      text-transform: uppercase;\r\n      font-size:.76rem;\r\n    }\r\n    .wr-btn.secondary{ background: rgba(255,247,238,.94); color:#1b0b10; }\r\n    .wr-btn.primary{ background: linear-gradient(90deg,var(--amber),var(--wine)); color:#1b0b10; }\r\n\r\n    .wr-note{\r\n      margin: 8px 0 12px;\r\n      text-align:center;\r\n      color: var(--muted);\r\n      font-weight:700;\r\n      padding: 0 12px 12px;\r\n    }\r\n\r\n    \/* Back to top *\/\r\n    .wr-top{\r\n      position: fixed;\r\n      right: 16px; bottom: 66px;\r\n      z-index: 9999;\r\n      border:none;\r\n      cursor:pointer;\r\n      border-radius: 999px;\r\n      padding: 10px 12px;\r\n      background: rgba(0,0,0,.22);\r\n      border: 1px solid rgba(231,201,138,.18);\r\n      color: var(--text);\r\n      box-shadow: 0 12px 30px rgba(0,0,0,.45);\r\n    }\r\n\r\n    \/* =========================\r\n       BUSCADOR SIMPLE\r\n       ========================= *\/\r\n    .wr-search{\r\n      margin: 12px 0 10px;\r\n    }\r\n    .wr-search input{\r\n      width: 100%;\r\n      padding: 14px 16px;\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(231,201,138,.25);\r\n      background: rgba(0,0,0,.28);\r\n      color: #fff7ee;\r\n      font-size: .95rem;\r\n      font-weight: 700;\r\n      outline: none;\r\n      backdrop-filter: blur(8px);\r\n    }\r\n    .wr-search input::placeholder{\r\n      color: rgba(255,247,238,.55);\r\n      font-weight: 600;\r\n    }\r\n    .wr-search input:focus{\r\n      border-color: rgba(231,201,138,.65);\r\n      background: rgba(0,0,0,.38);\r\n    }\r\n\r\n    \/* =========================\r\n       BUSCADOR \u2014 modo b\u00fasqueda (GLOBAL)\r\n       ========================= *\/\r\n    .wr-item.is-hidden{ display:none !important; }\r\n    .wr-subsection.is-empty{ display:none !important; }\r\n    .wr-section.is-empty{ display:none !important; }\r\n\r\n    \r\n    .wr-noresults{\r\n      display:none;\r\n      margin: 10px auto 0;\r\n      max-width:1180px;\r\n      padding: 10px 12px;\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(231,201,138,.18);\r\n      background: rgba(0,0,0,.22);\r\n      color: rgba(255,247,238,.88);\r\n      font-weight: 800;\r\n      text-align:center;\r\n    }\r\n    #wr-root.is-searching .wr-noresults.is-show{ display:block; }\r\n    \r\n    \r\n .wr-search, .wr-noresults{\r\n  max-width:1180px;\r\n  margin-left:auto;\r\n  margin-right:auto;\r\n}\r\n   \r\n\/* =========================\r\n   BUSCADOR \u2014 modo b\u00fasqueda (SOLO muestra donde hay coincidencias)\r\n========================= *\/\r\n\r\n\/* Oculta items que no coinciden *\/\r\n.wr-item.is-hidden{ display:none !important; }\r\n\r\n\/* En modo b\u00fasqueda: ocultamos TODO por defecto *\/\r\n#wr-root.is-searching .wr-section{ display:none !important; }\r\n#wr-root.is-searching .wr-subsection{ display:none !important; }\r\n\r\n\/* Y mostramos SOLO las que tengan resultados *\/\r\n#wr-root.is-searching .wr-section:not(.is-empty){ display:block !important; }\r\n#wr-root.is-searching .wr-subsection:not(.is-empty){ display:block !important; }\r\n\r\n\/* Si una secci\u00f3n\/subsecci\u00f3n est\u00e1 vac\u00eda, jam\u00e1s se muestra *\/\r\n.wr-section.is-empty{ display:none !important; }\r\n.wr-subsection.is-empty{ display:none !important; }\r\n    \r\n\/* =========================\r\n   [INICIO] WR \u00b7 MICRO-DETALLES VISUALES\r\n========================= *\/\r\n\r\n\/* Tipograf\u00eda + suavizado *\/\r\n.wr-wrap{\r\n  -webkit-font-smoothing: antialiased;\r\n  -moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\n\/* Header un pel\u00edn m\u00e1s \u201cpremium\u201d *\/\r\n.wr-header{\r\n  border-color: rgba(231,201,138,.22);\r\n  box-shadow: 0 18px 60px rgba(0,0,0,.58);\r\n}\r\n\r\n\/* Tabs: un poco m\u00e1s de contraste *\/\r\n.wr-tab{\r\n  border-color: rgba(231,201,138,.20);\r\n  background: rgba(255,255,255,.045);\r\n}\r\n.wr-tab.active{\r\n  border-color: rgba(231,201,138,.70);\r\n}\r\n\r\n\/* Subdock: m\u00e1s \u201cdock\u201d (menos bloque) *\/\r\n.wr-subdock{\r\n  border-radius: 999px;\r\n  border-color: rgba(231,201,138,.22);\r\n}\r\n\r\n\/* Shelf head: m\u00e1s legible *\/\r\n.wr-shelfHead{\r\n  border-color: rgba(231,201,138,.16);\r\n  background: rgba(0,0,0,.20);\r\n}\r\n\r\n\/* Slots: micro lift + definici\u00f3n *\/\r\n.wr-slot{\r\n  border-color: rgba(231,201,138,.14);\r\n  box-shadow: 0 10px 22px rgba(0,0,0,.42);\r\n}\r\n@media (hover:hover){\r\n  .wr-slot:hover{\r\n    box-shadow: 0 18px 44px rgba(0,0,0,.58);\r\n  }\r\n}\r\n\r\n\/* Miniaturas: que el \u201cmarco\u201d se vea m\u00e1s fino *\/\r\n.wr-thumb{\r\n  border-color: rgba(231,201,138,.16);\r\n}\r\n\r\n\/* Precio: un poquito m\u00e1s claro *\/\r\n.wr-price{\r\n  color: rgba(255,247,238,.95);\r\n}\r\n\r\n\/* CTA: m\u00e1s consistente *\/\r\n.wr-cta{\r\n  box-shadow: 0 10px 24px rgba(0,0,0,.35);\r\n}\r\n\r\n\/* Modal: subir legibilidad (menos \u201cvelo\u201d) *\/\r\n.wr-modal{\r\n  background: rgba(18,7,10,.86); \/* m\u00e1s opaco *\/\r\n}\r\n.wr-panel{\r\n  border-color: rgba(231,201,138,.32);\r\n}\r\n.wr-panelContent{\r\n  color: rgba(255,247,238,.98);\r\n}\r\n\r\n\/* =========================\r\n   [FIN] WR \u00b7 MICRO-DETALLES VISUALES\r\n========================= *\/\r\n\r\n\r\n\/* =========================\r\n   [INICIO] WR \u00b7 OPTIMIZACI\u00d3N M\u00d3VIL\r\n========================= *\/\r\n\r\n\/* Menos padding general para que \u201crespire\u201d mejor *\/\r\n@media (max-width: 520px){\r\n  .wr-wrap{ padding: 12px 10px 130px; }\r\n\r\n  \/* Header: menos alto *\/\r\n  .wr-header{ padding: 12px; }\r\n  .wr-title{ font-size: .96rem; }\r\n  .wr-sub{ font-size: .88rem; }\r\n\r\n  \/* Tabs: m\u00e1s c\u00f3modos *\/\r\n  .wr-tab{\r\n    padding: 10px 12px;\r\n    font-size: .70rem;\r\n  }\r\n\r\n  \/* Subdock: que no \u201ctape\u201d contenido y sea m\u00e1s fino *\/\r\n  .wr-subdock{\r\n    top: 8px;\r\n    padding: 7px;\r\n    box-shadow: 0 12px 34px rgba(0,0,0,.40);\r\n  }\r\n\r\n  \/* Rack: menos padding para ver m\u00e1s productos *\/\r\n  .wr-grid{ padding: 10px; gap: 10px; }\r\n\r\n  \/* Slot: ajustar layout en m\u00f3vil *\/\r\n  .wr-slot{ padding: 10px; gap: 10px; }\r\n  .wr-thumb{ width: 56px; height: 88px; border-radius: 13px; }\r\n  .wr-name{ font-size: .92rem; }\r\n  .wr-mini{ font-size: .78rem; }\r\n\r\n  \/* Bot\u00f3n \u201cVer\u201d un poco m\u00e1s peque\u00f1o *\/\r\n  .wr-cta{ padding: 8px 10px; font-size: .70rem; }\r\n\r\n  \/* Buscador: m\u00e1s compacto *\/\r\n  .wr-search{ margin: 10px 0 12px; }\r\n  .wr-search input{\r\n    padding: 13px 14px;\r\n    border-radius: 14px;\r\n    font-size: .92rem;\r\n  }\r\n\r\n  \/* Modal: m\u00e1s usable en m\u00f3vil *\/\r\n  .wr-panel{ width: min(640px, 100%); }\r\n  .wr-hero img{ height: 240px; } \/* ya lo tienes, lo refuerzo *\/\r\n  .wr-hTitle{ font-size: 1.02rem; }\r\n  .wr-desc{ font-size: .95rem; line-height: 1.35; }\r\n\r\n  \/* Drawer (pedido): mejor toque *\/\r\n  .wr-btn{ padding: 11px 10px; }\r\n  .wr-cartBtn{ right: 12px; bottom: 12px; }\r\n  .wr-top{ right: 12px; bottom: 64px; }\r\n}\r\n\r\n\/* Safe area iPhone *\/\r\n.wr-cartBtn{ padding-bottom: calc(10px + env(safe-area-inset-bottom)); }\r\n.wr-top{ margin-bottom: env(safe-area-inset-bottom); }\r\n\r\n\/* =========================\r\n   [FIN] WR \u00b7 OPTIMIZACI\u00d3N M\u00d3VIL\r\n========================= *\/\r\n\r\n\/* =========================\r\n   [INICIO] WR \u00b7 PEDIDO (DRAWER) M\u00c1S LEGIBLE\r\n========================= *\/\r\n\r\n\/* Fondo oscuro del overlay (m\u00e1s opaco) *\/\r\n.wr-drawerBg{\r\n  background: rgba(18,7,10,.86) !important;\r\n}\r\n\r\n\/* Panel del pedido: m\u00e1s s\u00f3lido (menos transparente) *\/\r\n.wr-drawer{\r\n  background:\r\n    radial-gradient(900px 300px at 50% 0%, rgba(231,201,138,.10), transparent 65%),\r\n    linear-gradient(180deg, rgba(26,12,15,.98), rgba(18,7,10,.96)) !important;\r\n\r\n  border: 1px solid rgba(231,201,138,.30) !important;\r\n  box-shadow: 0 28px 110px rgba(0,0,0,.82) !important;\r\n}\r\n\r\n\/* Cabecera del pedido *\/\r\n.wr-dh{\r\n  background:\r\n    linear-gradient(180deg, rgba(30,14,18,.99), rgba(18,7,10,.97)) !important;\r\n  border-bottom: 1px solid rgba(231,201,138,.22) !important;\r\n}\r\n\r\n\/* T\u00edtulo *\/\r\n.wr-dh strong{\r\n  color: rgba(255,247,238,.98) !important;\r\n}\r\n\r\n\/* Bot\u00f3n cerrar del drawer *\/\r\n.wr-x{\r\n  border-color: rgba(231,201,138,.26) !important;\r\n  background: rgba(0,0,0,.28) !important;\r\n  color: rgba(255,247,238,.98) !important;\r\n}\r\n\r\n\/* Lista items: texto + separaci\u00f3n m\u00e1s clara *\/\r\n.wr-items{\r\n  color: rgba(255,247,238,.98) !important;\r\n  border-bottom: 1px solid rgba(231,201,138,.14) !important;\r\n}\r\n\r\n\/* Cada fila *\/\r\n.wr-rowCart{\r\n  border-bottom: 1px solid rgba(231,201,138,.14) !important;\r\n}\r\n.wr-rowCart .name{\r\n  color: rgba(255,247,238,.98) !important;\r\n}\r\n.wr-rowCart .qty{\r\n  color: rgba(231,201,138,.95) !important;\r\n}\r\n.wr-rowCart .p{\r\n  color: rgba(255,247,238,.98) !important;\r\n}\r\n\r\n\/* Footer total *\/\r\n.wr-foot{\r\n  color: rgba(255,247,238,.92) !important;\r\n}\r\n#wr-total{\r\n  color: rgba(255,247,238,.98) !important;\r\n}\r\n\r\n\/* Botones *\/\r\n.wr-btn.secondary{\r\n  background: rgba(255,247,238,.92) !important;\r\n  color: #1b0b10 !important;\r\n}\r\n.wr-btn.primary{\r\n  filter: brightness(1.03);\r\n}\r\n\r\n\/* Nota *\/\r\n.wr-note{\r\n  color: rgba(255,247,238,.72) !important;\r\n}\r\n\r\n\/* =========================\r\n   [FIN] WR \u00b7 PEDIDO (DRAWER) M\u00c1S LEGIBLE\r\n========================= *\/\r\n  \r\n  \r\n  \r\n  \r\n  \r\n    \r\n  <\/style>\r\n<\/head>\r\n\r\n<body>\r\n\r\n  <div class=\"wr-wrap\" id=\"wr-root\">\r\n\r\n    <header class=\"wr-header\">\r\n      <h2 class=\"wr-title\">CARTA DE VINOS \u00b7 CAVA DIGITAL<\/h2>\r\n      <p class=\"wr-sub\">Dise\u00f1o tipo mueble + miniaturas \u00b7 detalle completo al tocar<\/p>\r\n\r\n      <nav class=\"wr-tabs\" aria-label=\"Categor\u00edas\">\r\n        <button class=\"wr-tab active\" data-wr-target=\"wr-tintos\" type=\"button\">Tintos<\/button>\r\n        <button class=\"wr-tab\" data-wr-target=\"wr-blancos\" type=\"button\">Blancos<\/button>\r\n        <button class=\"wr-tab\" data-wr-target=\"wr-rosados\" type=\"button\">Rosados<\/button>\r\n        <button class=\"wr-tab\" data-wr-target=\"wr-espumosos\" type=\"button\">Espumosos<\/button>\r\n        <button class=\"wr-tab\" data-wr-target=\"wr-cavas\" type=\"button\">Cavas<\/button>\r\n        <button class=\"wr-tab\" data-wr-target=\"wr-jerez\" type=\"button\">Jerez<\/button>\r\n        <button class=\"wr-tab\" data-wr-target=\"wr-dulces\" type=\"button\">Dulces<\/button>\r\n      <\/nav>\r\n    <\/header>\r\n    \r\n    <!-- =========================\r\n     BUSCADOR GLOBAL (todas las pesta\u00f1as)\r\n========================= -->\r\n<div class=\"wr-search\">\r\n  <input\r\n    type=\"search\"\r\n    id=\"wrSearch\"\r\n    placeholder=\"Busca vino, bodega o uva\u2026\"\r\n    autocomplete=\"off\"\r\n    aria-label=\"Buscar vino\"\r\n  >\r\n<\/div>\r\n\r\n<div class=\"wr-noresults\" id=\"wrNoResults\">\r\n  No hay resultados. Prueba con otro nombre, bodega o uva.\r\n<\/div>\r\n<!-- =========================\r\n     FIN BUSCADOR GLOBAL\r\n========================= -->\r\n\r\n\r\n    <!-- ======================================================\r\n                         TINTOS\r\n    ======================================================= -->\r\n    <section class=\"wr-section active\" id=\"wr-tintos\" data-title=\"Tintos\">\r\n\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Tintos\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-tintos-rioja\" type=\"button\">Rioja<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-tintos-ribera\" type=\"button\">Ribera<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-tintos-toro\" type=\"button\">Toro<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-tintos-otros\" type=\"button\">Otros<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n\r\n      <!-- RIOJA -->\r\n      <div class=\"wr-subsection active\" id=\"wr-tintos-rioja\">\r\n        <div class=\"wr-cellar\">\r\n          <div class=\"wr-frame\">\r\n            <div class=\"wr-shelfHead\">\r\n              <div class=\"wr-shelfTitle\">Rioja<\/div>\r\n              <div class=\"wr-shelfTag\">Tempranillo \u00b7 Crianza\/Reserva<\/div>\r\n            <\/div>\r\n\r\n            <div class=\"wr-rack\">\r\n              <div class=\"wr-grid\">\r\n\r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n                \r\n                \r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- RIBERA -->\r\n      <div class=\"wr-subsection\" id=\"wr-tintos-ribera\">\r\n        <div class=\"wr-cellar\">\r\n          <div class=\"wr-frame\">\r\n            <div class=\"wr-shelfHead\">\r\n              <div class=\"wr-shelfTitle\">Ribera del Duero<\/div>\r\n              <div class=\"wr-shelfTag\">Tinta fina \u00b7 Estructura<\/div>\r\n            <\/div>\r\n\r\n            <div class=\"wr-rack\">\r\n              <div class=\"wr-grid\">\r\n\r\n                <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Ribera Crianza\"\r\n                  data-sub=\"Fruta negra \u00b7 Tostados\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/BATALLA-DE-LA-BARROSA.webp\"\r\n                  data-desc=\"Crianza intenso, tanino fino y final largo.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: (tu bodega)\",\"DO: Ribera del Duero\",\"Uva: Tinta fina\",\"Maridaje: asados, ib\u00e9ricos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.90},{\"label\":\"Botella\",\"price\":21.00}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-39.webp\" alt=\"Ribera Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Ribera Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta negra \u00b7 Tostados<\/div>\r\n                    <div class=\"wr-price\">Botella 21,00 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- TORO -->\r\n      <div class=\"wr-subsection\" id=\"wr-tintos-toro\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Toro<\/div>\r\n            <div class=\"wr-shelfTag\">Potencia \u00b7 Car\u00e1cter<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- a\u00f1ade vinos -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <!-- OTROS -->\r\n      <div class=\"wr-subsection\" id=\"wr-tintos-otros\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Otros tintos<\/div>\r\n            <div class=\"wr-shelfTag\">Espa\u00f1a \u00b7 Francia \u00b7 Mundo<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- a\u00f1ade vinos -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n    <\/section>\r\n\r\n    <!-- ======================================================\r\n                         BLANCOS\r\n    ======================================================= -->\r\n    <section class=\"wr-section\" id=\"wr-blancos\" data-title=\"Blancos\">\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Blancos\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-blancos-rias\" type=\"button\">R\u00edas Baixas<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-blancos-rueda\" type=\"button\">Rueda<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-blancos-rioja\" type=\"button\">Rioja<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-blancos-otros\" type=\"button\">Otros<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n      <div class=\"wr-subsection active\" id=\"wr-blancos-rias\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">R\u00edas Baixas<\/div>\r\n            <div class=\"wr-shelfTag\">Albari\u00f1o \u00b7 Fresco<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- a\u00f1ade vinos -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-blancos-rueda\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Rueda<\/div>\r\n            <div class=\"wr-shelfTag\">Verdejo \u00b7 Arom\u00e1tico<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- a\u00f1ade vinos -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-blancos-rioja\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Rioja Blanco<\/div>\r\n            <div class=\"wr-shelfTag\">Barrica \u00b7 Textura<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\"><\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-blancos-otros\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Otros blancos<\/div>\r\n            <div class=\"wr-shelfTag\">Godello \u00b7 Chardonnay \u00b7 etc.<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\"><\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n       <!-- ======================================================\r\n                         ROSADOS\r\n    ======================================================= -->\r\n    <section class=\"wr-section\" id=\"wr-rosados\" data-title=\"Rosados\">\r\n\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Rosados\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-rosados-navarra\" type=\"button\">Navarra<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-rosados-provenza\" type=\"button\">Provenza<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-rosados-otros\" type=\"button\">Otros<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n      <div class=\"wr-subsection active\" id=\"wr-rosados-navarra\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Navarra<\/div>\r\n            <div class=\"wr-shelfTag\">Garnacha \u00b7 Floral<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS NAVARRA -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-rosados-provenza\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Provenza<\/div>\r\n            <div class=\"wr-shelfTag\">Seco \u00b7 Elegante<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS PROVENZA -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-rosados-otros\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Otros rosados<\/div>\r\n            <div class=\"wr-shelfTag\">Frutales \u00b7 Frescos<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS OTROS ROSADOS -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n    <\/section>\r\n\r\n    <!-- ======================================================\r\n                         ESPUMOSOS\r\n    ======================================================= -->\r\n    <section class=\"wr-section\" id=\"wr-espumosos\" data-title=\"Espumosos\">\r\n\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Espumosos\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-espumosos-brut\" type=\"button\">Brut<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-espumosos-rose\" type=\"button\">Ros\u00e9<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-espumosos-otros\" type=\"button\">Otros<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n      <div class=\"wr-subsection active\" id=\"wr-espumosos-brut\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Brut<\/div>\r\n            <div class=\"wr-shelfTag\">Burbuja fina<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS BRUT -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-espumosos-rose\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Ros\u00e9<\/div>\r\n            <div class=\"wr-shelfTag\">Fruta roja<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS ROS\u00c9 -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-espumosos-otros\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Otros<\/div>\r\n            <div class=\"wr-shelfTag\">Champagne, etc.<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS OTROS -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n    <\/section>\r\n\r\n    <!-- ======================================================\r\n                         CAVAS\r\n    ======================================================= -->\r\n    <section class=\"wr-section\" id=\"wr-cavas\" data-title=\"Cavas\">\r\n\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Cavas\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-cavas-brut\" type=\"button\">Brut<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-cavas-reserva\" type=\"button\">Reserva<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-cavas-rose\" type=\"button\">Ros\u00e9<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n      <div class=\"wr-subsection active\" id=\"wr-cavas-brut\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Cava Brut<\/div>\r\n            <div class=\"wr-shelfTag\">Aperitivo<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS CAVA BRUT -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-cavas-reserva\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Reserva<\/div>\r\n            <div class=\"wr-shelfTag\">M\u00e1s complejo<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS RESERVA -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-cavas-rose\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Ros\u00e9<\/div>\r\n            <div class=\"wr-shelfTag\">Fruta roja<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS ROS\u00c9 -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n    <\/section>\r\n\r\n    <!-- ======================================================\r\n                         JEREZ\r\n    ======================================================= -->\r\n    <section class=\"wr-section\" id=\"wr-jerez\" data-title=\"Jerez\">\r\n\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Jerez\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-jerez-fino\" type=\"button\">Fino<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-jerez-manzanilla\" type=\"button\">Manzanilla<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-jerez-amontillado\" type=\"button\">Amontillado<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-jerez-oloroso\" type=\"button\">Oloroso<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-jerez-px\" type=\"button\">Pedro Xim\u00e9nez<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n      <div class=\"wr-subsection active\" id=\"wr-jerez-fino\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Fino<\/div>\r\n            <div class=\"wr-shelfTag\">Seco \u00b7 Salino<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 FINO -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-jerez-manzanilla\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Manzanilla<\/div>\r\n            <div class=\"wr-shelfTag\">Marina \u00b7 Fresca<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 MANZANILLA -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-jerez-amontillado\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Amontillado<\/div>\r\n            <div class=\"wr-shelfTag\">Avellana \u00b7 Complejo<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AMONTILLADO -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-jerez-oloroso\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Oloroso<\/div>\r\n            <div class=\"wr-shelfTag\">C\u00e1lido \u00b7 Intenso<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 OLOROSO -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-jerez-px\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Pedro Xim\u00e9nez<\/div>\r\n            <div class=\"wr-shelfTag\">Dulce \u00b7 Pasas<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 PX -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n    <\/section>\r\n\r\n    <!-- ======================================================\r\n                         DULCES\r\n    ======================================================= -->\r\n    <section class=\"wr-section\" id=\"wr-dulces\" data-title=\"Dulces\">\r\n\r\n      <nav class=\"wr-subdock\" aria-label=\"Subcategor\u00edas Dulces\">\r\n        <div class=\"wr-subdockInner\">\r\n          <button class=\"wr-subtab active\" data-wr-subtarget=\"wr-dulces-moscatel\" type=\"button\">Moscatel<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-dulces-px\" type=\"button\">PX<\/button>\r\n          <button class=\"wr-subtab\" data-wr-subtarget=\"wr-dulces-hielo\" type=\"button\">Vendimia tard\u00eda<\/button>\r\n        <\/div>\r\n      <\/nav>\r\n\r\n      <div class=\"wr-subsection active\" id=\"wr-dulces-moscatel\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Moscatel<\/div>\r\n            <div class=\"wr-shelfTag\">Arom\u00e1tico \u00b7 Floral<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS MOSCATEL -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-dulces-px\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Pedro Xim\u00e9nez<\/div>\r\n            <div class=\"wr-shelfTag\">Pasas \u00b7 Muy dulce<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            <!-- \ud83d\udd01 AQU\u00cd PEGA ART\u00cdCULOS PX -->\r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-subsection\" id=\"wr-dulces-hielo\">\r\n        <div class=\"wr-cellar\"><div class=\"wr-frame\">\r\n          <div class=\"wr-shelfHead\">\r\n            <div class=\"wr-shelfTitle\">Vendimia tard\u00eda<\/div>\r\n            <div class=\"wr-shelfTag\">Postre \u00b7 Quesos<\/div>\r\n          <\/div>\r\n          <div class=\"wr-rack\"><div class=\"wr-grid\">\r\n            \r\n             <article class=\"wr-slot wr-item\"\r\n                  data-name=\"Rioja Crianza\"\r\n                  data-sub=\"Fruta roja \u00b7 Vainilla\"\r\n                  data-img=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\"\r\n                  data-desc=\"Crianza redondo, equilibrado y muy gastron\u00f3mico.\"\r\n                  data-all=\"Contiene sulfitos.\"\r\n                  data-meta-title=\"Ficha t\u00e9cnica\"\r\n                  data-meta='[\"Bodega: Godello\",\"DO: Rioja\",\"Uva: Tempranillo\",\"Maridaje: carnes blancas, tapas, embutidos\"]'\r\n                  data-prices='[{\"label\":\"Copa\",\"price\":3.50},{\"label\":\"Botella\",\"price\":17.50}]'>\r\n                  <div class=\"wr-thumb\">\r\n                    <img decoding=\"async\" src=\"http:\/\/menu4.local\/wp-content\/uploads\/2025\/12\/Proyecto-nuevo-43.webp\" alt=\"Rioja Crianza\">\r\n                  <\/div>\r\n                  <div class=\"wr-info\">\r\n                    <div class=\"wr-name\">Rioja Crianza<\/div>\r\n                    <div class=\"wr-mini\">Fruta roja \u00b7 Vainilla<\/div>\r\n                    <div class=\"wr-price\">Botella 17,50 \u20ac<\/div>\r\n                  <\/div>\r\n                  <button class=\"wr-cta\" type=\"button\">Ver<\/button>\r\n                <\/article>\r\n            \r\n          <\/div><\/div>\r\n        <\/div><\/div>\r\n      <\/div>\r\n\r\n    <\/section>\r\n\r\n  <\/div>\r\n\r\n<\/body>\r\n\r\n\r\n\r\n  <!-- Cart button -->\r\n  <div class=\"wr-cartBtn\" id=\"wr-cartBtn\">Ver pedido <span class=\"wr-pill\" id=\"wr-count\">0<\/span><\/div>\r\n\r\n  <!-- Cart drawer -->\r\n  <div class=\"wr-drawerBg\" id=\"wr-drawerBg\" aria-hidden=\"true\">\r\n    <div class=\"wr-drawer\" role=\"dialog\" aria-modal=\"true\">\r\n      <div class=\"wr-dh\">\r\n        <strong>Pedido<\/strong>\r\n        <span class=\"wr-x\" id=\"wr-x\" role=\"button\" tabindex=\"0\">Cerrar<\/span>\r\n      <\/div>\r\n\r\n      <div class=\"wr-items\" id=\"wr-items\"><\/div>\r\n\r\n      <div class=\"wr-foot\">\r\n        <div style=\"color:var(--muted);\">Total<\/div>\r\n        <div id=\"wr-total\">0,00 \u20ac<\/div>\r\n      <\/div>\r\n\r\n      <div class=\"wr-actions\">\r\n        <button class=\"wr-btn secondary\" id=\"wr-clear\" type=\"button\">Vaciar<\/button>\r\n        <button class=\"wr-btn primary\" id=\"wr-copy\" type=\"button\">Copiar<\/button>\r\n      <\/div>\r\n\r\n      <div class=\"wr-note\">Muestra el pedido al camarero o env\u00edalo por WhatsApp.<\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Back to top -->\r\n  <button class=\"wr-top\" id=\"wr-top\" type=\"button\" title=\"Volver arriba\">\u2191<\/button>\r\n\r\n  <!-- Modal detalle -->\r\n  <div class=\"wr-modal\" id=\"wr-modal\" aria-hidden=\"true\">\r\n    <div class=\"wr-panel\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Detalle del vino\">\r\n      <div class=\"wr-panelTop\">\r\n        <div class=\"wr-panelTag\" id=\"wr-mTag\">Detalle<\/div>\r\n        <button class=\"wr-close\" id=\"wr-close\" type=\"button\">Cerrar \u2715<\/button>\r\n      <\/div>\r\n\r\n      <div class=\"wr-panelContent\">\r\n        <div class=\"wr-hero\">\r\n          <img decoding=\"async\" id=\"wr-img\" src=\"\" alt=\"\">\r\n        <\/div>\r\n\r\n        <div class=\"wr-hTitle\" id=\"wr-name\"><\/div>\r\n        <div class=\"wr-hSub\" id=\"wr-sub\"><\/div>\r\n\r\n        <div class=\"wr-desc\" id=\"wr-desc\"><\/div>\r\n\r\n        <div class=\"wr-box\" id=\"wr-metaWrap\">\r\n          <div class=\"label\" id=\"wr-metaLabel\">Info<\/div>\r\n          <ul class=\"wr-metaList\" id=\"wr-metaList\"><\/ul>\r\n        <\/div>\r\n\r\n        <div class=\"wr-all\" id=\"wr-all\"><strong>Al\u00e9rgenos:<\/strong> \u2014<\/div>\r\n\r\n        <div class=\"wr-prices\" id=\"wr-prices\"><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n\r\n  const root     = document.getElementById('wr-root') || document;\r\n  const tabs     = root.querySelectorAll('.wr-tab');\r\n  const sections = root.querySelectorAll('.wr-section');\r\n\r\n  \/* =========================\r\n     TABS (categor\u00edas)\r\n  ========================= *\/\r\n  function showSection(id){\r\n    const sec = document.getElementById(id);\r\n    if(!sec){ console.warn('[WR] No existe secci\u00f3n:', id); return; }\r\n\r\n    tabs.forEach(t => t.classList.toggle('active', t.dataset.wrTarget === id));\r\n    sections.forEach(s => s.classList.toggle('active', s.id === id));\r\n\r\n    ensureFirstSubsection(sec);\r\n    document.getElementById('wr-root')?.scrollIntoView({behavior:'smooth', block:'start'});\r\n  }\r\n\r\n  \/* =========================\r\n     SUBTABS (subcategor\u00edas)\r\n  ========================= *\/\r\n  function showSubsection(sec, subId){\r\n    const subTabs = sec.querySelectorAll('.wr-subtab');\r\n    const subSecs = sec.querySelectorAll('.wr-subsection');\r\n\r\n    subTabs.forEach(b => b.classList.toggle('active', b.dataset.wrSubtarget === subId));\r\n    subSecs.forEach(s => s.classList.toggle('active', s.id === subId));\r\n  }\r\n\r\n  function ensureFirstSubsection(sec){\r\n    const subTabs = sec.querySelectorAll('.wr-subtab');\r\n    const subSecs = sec.querySelectorAll('.wr-subsection');\r\n    if(!subTabs.length || !subSecs.length) return;\r\n\r\n    const activeBtn = sec.querySelector('.wr-subtab.active') || subTabs[0];\r\n    const target = activeBtn?.dataset.wrSubtarget;\r\n    if(target) showSubsection(sec, target);\r\n  }\r\n\r\n  \/* =========================\r\n     BUSCADOR GLOBAL (FIX)\r\n  ========================= *\/\r\n  const rootEl   = document.getElementById('wr-root') || document;\r\n  const searchEl = document.getElementById('wrSearch');\r\n  const noResEl  = document.getElementById('wrNoResults');\r\n\r\n  function snapshotActiveState(){\r\n    return {\r\n      tabId: rootEl.querySelector('.wr-tab.active')?.dataset.wrTarget || null,\r\n      subIds: Array.from(rootEl.querySelectorAll('.wr-section')).reduce((acc, sec) => {\r\n        acc[sec.id] = sec.querySelector('.wr-subtab.active')?.dataset.wrSubtarget || null;\r\n        return acc;\r\n      }, {})\r\n    };\r\n  }\r\n\r\n  function restoreActiveState(state){\r\n    rootEl.classList.remove('is-searching');\r\n\r\n    rootEl.querySelectorAll('.wr-item').forEach(it => it.classList.remove('is-hidden'));\r\n    rootEl.querySelectorAll('.wr-subsection').forEach(s => s.classList.remove('is-empty'));\r\n    rootEl.querySelectorAll('.wr-section').forEach(s => s.classList.remove('is-empty'));\r\n    if(noResEl) noResEl.classList.remove('is-show');\r\n\r\n    if(state?.tabId){\r\n      const btn = rootEl.querySelector(`.wr-tab[data-wr-target=\"${state.tabId}\"]`);\r\n      btn?.click();\r\n    }\r\n    if(state?.subIds){\r\n      Object.entries(state.subIds).forEach(([secId, subId]) => {\r\n        if(!subId) return;\r\n        const sec = document.getElementById(secId);\r\n        const b = sec?.querySelector(`.wr-subtab[data-wr-subtarget=\"${subId}\"]`);\r\n        b?.click();\r\n      });\r\n    }\r\n  }\r\n\r\n  let __state = snapshotActiveState();\r\n\r\n  function normalizeText(s){\r\n    return (s || '')\r\n      .toLowerCase()\r\n      .normalize('NFD')\r\n      .replace(\/[\\u0300-\\u036f]\/g,'');\r\n  }\r\n\r\n  function runGlobalSearch(q){\r\n    const query = normalizeText(q).trim();\r\n\r\n    \/\/ reset base siempre (evita bloqueos)\r\n    rootEl.querySelectorAll('.wr-item').forEach(it => it.classList.remove('is-hidden'));\r\n    rootEl.querySelectorAll('.wr-subsection').forEach(s => s.classList.remove('is-empty'));\r\n    rootEl.querySelectorAll('.wr-section').forEach(s => s.classList.remove('is-empty'));\r\n    if(noResEl) noResEl.classList.remove('is-show');\r\n\r\n    if(!query){\r\n      restoreActiveState(__state);\r\n      return;\r\n    }\r\n\r\n    rootEl.classList.add('is-searching');\r\n\r\n    const allItems = Array.from(rootEl.querySelectorAll('.wr-item'));\r\n    let totalVisible = 0;\r\n\r\n    allItems.forEach(item => {\r\n      const haystack = normalizeText(\r\n        (item.getAttribute('data-name') || '') + ' ' +\r\n        (item.getAttribute('data-sub')  || '') + ' ' +\r\n        (item.getAttribute('data-desc') || '') + ' ' +\r\n        (item.getAttribute('data-meta') || '') + ' ' +\r\n        item.textContent\r\n      );\r\n\r\n      const match = haystack.includes(query);\r\n      item.classList.toggle('is-hidden', !match);\r\n      if(match) totalVisible++;\r\n    });\r\n\r\n    rootEl.querySelectorAll('.wr-subsection').forEach(sub => {\r\n      const visible = sub.querySelectorAll('.wr-item:not(.is-hidden)').length;\r\n      sub.classList.toggle('is-empty', visible === 0);\r\n    });\r\n\r\n    rootEl.querySelectorAll('.wr-section').forEach(sec => {\r\n      const visible = sec.querySelectorAll('.wr-item:not(.is-hidden)').length;\r\n      sec.classList.toggle('is-empty', visible === 0);\r\n    });\r\n\r\n    if(noResEl && totalVisible === 0){\r\n      noResEl.classList.add('is-show');\r\n    }\r\n  }\r\n\r\n  if(searchEl){\r\n    document.addEventListener('click', (e) => {\r\n      if(rootEl.classList.contains('is-searching')) return;\r\n      if(e.target.closest('.wr-tab') || e.target.closest('.wr-subtab')){\r\n        __state = snapshotActiveState();\r\n      }\r\n    });\r\n\r\n    searchEl.addEventListener('input', (e) => runGlobalSearch(e.target.value));\r\n    searchEl.addEventListener('search', () => runGlobalSearch(searchEl.value));\r\n  }\r\n\r\n  \/* =========================\r\n     Click categor\u00edas + subcategor\u00edas (delegado)\r\n  ========================= *\/\r\n  document.addEventListener('click', (e) => {\r\n    const main = e.target.closest('.wr-tab');\r\n    if(main){\r\n      const target = main.dataset.wrTarget;\r\n      if(target) showSection(target);\r\n      return;\r\n    }\r\n\r\n    const sub = e.target.closest('.wr-subtab');\r\n    if(sub){\r\n      const sec = sub.closest('.wr-section');\r\n      const target = sub.dataset.wrSubtarget;\r\n      if(sec && target) showSubsection(sec, target);\r\n      return;\r\n    }\r\n  });\r\n\r\n  \/\/ Init\r\n  const firstTab = root.querySelector('.wr-tab.active') || tabs[0];\r\n  if(firstTab?.dataset.wrTarget) showSection(firstTab.dataset.wrTarget);\r\n\r\n  \/* =========================\r\n     MODAL\r\n  ========================= *\/\r\n  const modal = document.getElementById('wr-modal');\r\n  const panel = modal ? modal.querySelector('.wr-panel') : null;\r\n  const closeBtn = document.getElementById('wr-close');\r\n\r\n  const mImg  = document.getElementById('wr-img');\r\n  const mName = document.getElementById('wr-name');\r\n  const mSub  = document.getElementById('wr-sub');\r\n  const mDesc = document.getElementById('wr-desc');\r\n  const mAll  = document.getElementById('wr-all');\r\n  const mTag  = document.getElementById('wr-mTag');\r\n\r\n  const metaWrap  = document.getElementById('wr-metaWrap');\r\n  const metaLabel = document.getElementById('wr-metaLabel');\r\n  const metaList  = document.getElementById('wr-metaList');\r\n\r\n  const mPrices = document.getElementById('wr-prices');\r\n\r\n  let __scrollY = 0;\r\n  function lockScroll(){\r\n    __scrollY = window.scrollY || 0;\r\n    document.body.style.position = 'fixed';\r\n    document.body.style.top = `-${__scrollY}px`;\r\n    document.body.style.left = '0';\r\n    document.body.style.right = '0';\r\n    document.body.style.width = '100%';\r\n  }\r\n  function unlockScroll(){\r\n    document.body.style.position = '';\r\n    document.body.style.top = '';\r\n    document.body.style.left = '';\r\n    document.body.style.right = '';\r\n    document.body.style.width = '';\r\n    window.scrollTo(0, __scrollY);\r\n  }\r\n\r\n  function openModalFromItem(item){\r\n    if(!modal) return;\r\n\r\n    const name = item.dataset.name || '';\r\n    const sub  = item.dataset.sub  || '';\r\n    const img  = item.dataset.img  || '';\r\n    const desc = item.dataset.desc || '';\r\n    const all  = item.dataset.all  || '';\r\n\r\n    mImg.src = '';\r\n    mImg.alt = '';\r\n    mName.textContent = name;\r\n    mSub.textContent  = sub;\r\n    mDesc.textContent = desc;\r\n    mTag.textContent  = 'Detalle';\r\n    mAll.innerHTML    = `<strong>Al\u00e9rgenos:<\/strong> ${String(all).trim() || '\u2014'}`;\r\n\r\n    metaList.innerHTML = '';\r\n    metaWrap.style.display = 'none';\r\n    mPrices.innerHTML = '';\r\n\r\n    if(img){\r\n      mImg.onload = () => {\r\n        requestAnimationFrame(() => { if(panel) panel.scrollTop = 0; });\r\n        setTimeout(() => { if(panel) panel.scrollTop = 0; }, 80);\r\n      };\r\n      mImg.src = img;\r\n      mImg.alt = name;\r\n    }\r\n\r\n    let meta = [];\r\n    try{ meta = JSON.parse(item.dataset.meta || '[]'); }catch(e){ meta=[]; }\r\n    if(meta.length){\r\n      metaLabel.textContent = item.dataset.metaTitle || 'Info';\r\n      metaList.innerHTML = meta.map(x => `<li>${x}<\/li>`).join('');\r\n      metaWrap.style.display = 'block';\r\n    }\r\n\r\n    let prices = [];\r\n    try{ prices = JSON.parse(item.dataset.prices || '[]'); }catch(e){ prices=[]; }\r\n    prices.forEach(p => {\r\n      const row = document.createElement('div');\r\n      row.className = 'wr-line';\r\n      row.innerHTML = `\r\n        <span>${p.label}<\/span>\r\n        <div>\r\n          <span>${Number(p.price).toFixed(2).replace('.',',')} \u20ac<\/span>\r\n          <button type=\"button\" class=\"wr-add\" data-label=\"${p.label}\" data-price=\"${p.price}\">A\u00f1adir<\/button>\r\n        <\/div>\r\n      `;\r\n      mPrices.appendChild(row);\r\n    });\r\n\r\n    modal.classList.add('open');\r\n    modal.setAttribute('aria-hidden','false');\r\n    lockScroll();\r\n\r\n    requestAnimationFrame(() => {\r\n      if(panel) panel.scrollTop = 0;\r\n      void panel?.offsetHeight;\r\n      if(panel) panel.scrollTop = 0;\r\n    });\r\n  }\r\n\r\n  function closeModal(){\r\n    if(!modal) return;\r\n    modal.classList.remove('open');\r\n    modal.setAttribute('aria-hidden','true');\r\n    unlockScroll();\r\n  }\r\n\r\n  closeBtn?.addEventListener('click', (e) => { e.stopPropagation(); closeModal(); });\r\n  modal?.addEventListener('click', (e) => { if(e.target === modal) closeModal(); });\r\n  document.addEventListener('keydown', (e) => { if(e.key === 'Escape' && modal?.classList.contains('open')) closeModal(); });\r\n\r\n  document.addEventListener('click', (e) => {\r\n    if(e.target.closest('.wr-add')) return;\r\n    const item = e.target.closest('.wr-item');\r\n    if(!item) return;\r\n    openModalFromItem(item);\r\n  });\r\n\r\n  \/* =========================\r\n     CARRITO\r\n  ========================= *\/\r\n  const cart = [];\r\n  const cartBtn  = document.getElementById('wr-cartBtn');\r\n  const drawerBg = document.getElementById('wr-drawerBg');\r\n  const x        = document.getElementById('wr-x');\r\n\r\n  const itemsEl = document.getElementById('wr-items');\r\n  const countEl = document.getElementById('wr-count');\r\n  const totalEl = document.getElementById('wr-total');\r\n  const clearBtn = document.getElementById('wr-clear');\r\n  const copyBtn  = document.getElementById('wr-copy');\r\n\r\n  function renderCart(){\r\n    itemsEl.innerHTML = '';\r\n    if(cart.length === 0){\r\n      itemsEl.innerHTML = '<div style=\"color:var(--muted);font-weight:700;padding:10px 0;\">A\u00fan no has a\u00f1adido nada.<\/div>';\r\n      countEl.textContent = '0';\r\n      totalEl.textContent = '0,00 \u20ac';\r\n      return;\r\n    }\r\n    let total = 0, units = 0;\r\n    cart.forEach(it => {\r\n      total += it.price * it.qty;\r\n      units += it.qty;\r\n      const row = document.createElement('div');\r\n      row.className = 'wr-rowCart';\r\n      row.innerHTML = `\r\n        <div class=\"name\">${it.name}<\/div>\r\n        <div class=\"qty\">x${it.qty}<\/div>\r\n        <div class=\"p\">${it.price.toFixed(2).replace('.',',')} \u20ac<\/div>\r\n      `;\r\n      itemsEl.appendChild(row);\r\n    });\r\n    countEl.textContent = String(units);\r\n    totalEl.textContent = total.toFixed(2).replace('.',',') + ' \u20ac';\r\n  }\r\n\r\n  function addToCart(name, price){\r\n    if(!name) return;\r\n    const p = isNaN(price) ? 0 : price;\r\n    const found = cart.find(x => x.name === name);\r\n    if(found) found.qty += 1;\r\n    else cart.push({name, price:p, qty:1});\r\n    renderCart();\r\n  }\r\n\r\n  document.addEventListener('click', (e) => {\r\n    const btn = e.target.closest('.wr-add');\r\n    if(!btn) return;\r\n    e.stopPropagation();\r\n\r\n    const old = btn.textContent;\r\n    btn.textContent = \"\u2714\";\r\n    btn.classList.add('is-ok');\r\n\r\n    const label = btn.getAttribute('data-label') || '';\r\n    const price = parseFloat(btn.getAttribute('data-price') || '0') || 0;\r\n    const title = mName?.textContent || '';\r\n    const finalName = label ? `${title} (${label})` : title;\r\n\r\n    addToCart(finalName, price);\r\n\r\n    setTimeout(() => {\r\n      btn.textContent = old || \"A\u00f1adir\";\r\n      btn.classList.remove('is-ok');\r\n    }, 650);\r\n  });\r\n\r\n  cartBtn?.addEventListener('click', () => {\r\n    drawerBg.classList.add('open');\r\n    drawerBg.setAttribute('aria-hidden','false');\r\n  });\r\n  x?.addEventListener('click', () => {\r\n    drawerBg.classList.remove('open');\r\n    drawerBg.setAttribute('aria-hidden','true');\r\n  });\r\n  drawerBg?.addEventListener('click', (e) => {\r\n    if(e.target === drawerBg){\r\n      drawerBg.classList.remove('open');\r\n      drawerBg.setAttribute('aria-hidden','true');\r\n    }\r\n  });\r\n\r\n  clearBtn?.addEventListener('click', () => { cart.length = 0; renderCart(); });\r\n\r\n  copyBtn?.addEventListener('click', async () => {\r\n    if(cart.length === 0) return;\r\n    let text = 'Pedido:\\n\\n';\r\n    cart.forEach(it => text += `- ${it.name} x${it.qty}\\n`);\r\n    text += `\\nTotal aproximado: ${totalEl.textContent}\\n`;\r\n    try{\r\n      await navigator.clipboard.writeText(text);\r\n      copyBtn.textContent = 'Copiado \u2714';\r\n      setTimeout(()=>copyBtn.textContent='Copiar', 1400);\r\n    }catch(e){\r\n      alert('No se pudo copiar autom\u00e1ticamente.');\r\n    }\r\n  });\r\n\r\n  renderCart();\r\n\r\n  \/* =========================\r\n     BACK TO TOP\r\n  ========================= *\/\r\n  const topBtn = document.getElementById('wr-top');\r\n  topBtn?.addEventListener('click', () => window.scrollTo({top:0, behavior:'smooth'}));\r\n\r\n});\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>WineRack \u00b7 Cava Digital CARTA DE VINOS \u00b7 CAVA DIGITAL Dise\u00f1o tipo mueble + miniaturas \u00b7 detalle completo al tocar Tintos Blancos Rosados Espumosos Cavas Jerez Dulces No hay resultados. Prueba con otro nombre, bodega o uva. Rioja Ribera Toro Otros Rioja Tempranillo \u00b7 Crianza\/Reserva Rioja Crianza Fruta roja \u00b7 Vainilla Botella 17,50 \u20ac Ver [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-6","page","type-page","status-publish","hentry"],"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"_links":{"self":[{"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/pages\/6","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/comments?post=6"}],"version-history":[{"count":4,"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/pages\/6\/revisions"}],"predecessor-version":[{"id":11,"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/pages\/6\/revisions\/11"}],"wp:attachment":[{"href":"https:\/\/app.menube.es\/cava-interactiva\/wp-json\/wp\/v2\/media?parent=6"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}