{"product_id":"spring-back-parking-sign-stands-112cm-2-pack","title":"Soportes para señales de estacionamiento con retorno por resorte de 112 cm, paquete de 2","description":"\u003cp\u003eOrienta a conductores y peatones en estacionamientos, entradas y rutas de acceso a instalaciones con este paquete de 2 soportes de señal de estacionamiento con retorno por resorte. Cada soporte mide aproximadamente 112 cm de alto y utiliza una articulación inferior flexible con una base de montaje en superficie de perfil bajo.\u003c\/p\u003e\n\u003ch2\u003eCaracterísticas principales\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003eDos soportes de señal por paquete en la versión con el mensaje seleccionado.\u003c\/li\u003e\n\u003cli\u003eLa articulación inferior con retorno por resorte está diseñada para volver hacia su posición vertical después de un contacto accidental.\u003c\/li\u003e\n\u003cli\u003eLas opciones con mensajes impresos utilizan lámina reflectante de alta intensidad para mejorar la visibilidad cuando reciben iluminación.\u003c\/li\u003e\n\u003cli\u003eMarco estrecho y conjunto de señal desmontable para facilitar la instalación, el reemplazo y el almacenamiento.\u003c\/li\u003e\n\u003cli\u003eBase con orificios de anclaje para montarla en una superficie adecuada.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch2\u003eElige tu señal\u003c\/h2\u003e\u003cul\u003e\n\u003cli\u003eSin lámina de señal: dos soportes sin lámina de señal impresa.\u003c\/li\u003e\n\u003cli\u003eEstacionamiento ADA: el diseño gráfico de estacionamiento ADA mostrado en las imágenes del producto.\u003c\/li\u003e\n\u003cli\u003eEstacionamiento con valet.\u003c\/li\u003e\n\u003cli\u003ePaso peatonal.\u003c\/li\u003e\n\u003cli\u003eNo estacionar.\u003c\/li\u003e\n\u003cli\u003eEstacionamiento.\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eEl texto y los gráficos suministrados corresponden a la variante seleccionada. La opción Estacionamiento ADA describe el diseño gráfico; no certifica el cumplimiento de los requisitos europeos de accesibilidad ni de señalización vial.\u003c\/p\u003e\u003ch2\u003eEspecificaciones\u003c\/h2\u003e\u003cdiv style=\"overflow-x:auto\"\u003e\u003ctable\u003e\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eCantidad por paquete\u003c\/th\u003e\n\u003ctd\u003e2 soportes de señal de estacionamiento con retorno por resorte\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eAltura total\u003c\/th\u003e\n\u003ctd\u003eAproximadamente 112 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eAncho máximo del marco\u003c\/th\u003e\n\u003ctd\u003eAproximadamente 241 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eTamaño de la lámina de señal\u003c\/th\u003e\n\u003ctd\u003eAproximadamente 838 × 216 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eAncho de la base\u003c\/th\u003e\n\u003ctd\u003eAproximadamente 203 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eColor del marco y la base\u003c\/th\u003e\n\u003ctd\u003eNegro\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eInstalación\u003c\/th\u003e\n\u003ctd\u003eBase de montaje en superficie con orificios de anclaje\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\u003c\/table\u003e\u003c\/div\u003e\u003ch2\u003eInstalación y uso\u003c\/h2\u003e\u003cp\u003eElige fijaciones adecuadas para la superficie de instalación y las condiciones del lugar. La opción Sin lámina de señal no incluye una lámina con mensaje impreso. Las opciones impresas se suministran con el diseño seleccionado. Este producto está diseñado para orientar en estacionamientos e instalaciones y no se presenta como un dispositivo para zonas de trabajo con clasificación de resistencia a impactos.\u003c\/p\u003e\n\u003c!-- ORANLITE_US_TIKTOK_IMPORT_20261001_START --\u003e\n\u003csection id=\"oranlite-vertical-panel-message-slider\" data-oranlite-tiktok-slider=\"vertical-panel-messages\" aria-labelledby=\"oranlite-vertical-panel-message-heading\"\u003e\n \u003cstyle\u003e\n    #oranlite-vertical-panel-message-slider {\n      --oranlite-ink: #222;\n      --oranlite-muted: #626262;\n      --oranlite-line: #d7d7d7;\n      margin: 32px 0;\n    }\n\n    #oranlite-vertical-panel-message-slider * {\n      box-sizing: border-box;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slider-intro {\n      margin-bottom: 22px;\n    }\n\n    #oranlite-vertical-panel-message-slider h2 {\n      margin: 0 0 8px;\n      color: var(--oranlite-ink);\n      font-size: 24px;\n      line-height: 1.25;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slider-intro p,\n    #oranlite-vertical-panel-message-slider .oranlite-slide-copy {\n      margin: 0;\n      color: var(--oranlite-muted);\n      line-height: 1.55;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slider-layout {\n      display: grid;\n      grid-template-columns: minmax(260px, 400px) minmax(220px, 1fr);\n      gap: 28px;\n      align-items: center;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-player {\n      position: relative;\n      width: 100%;\n      max-width: 400px;\n      margin: 0 auto;\n      aspect-ratio: 9 \/ 16;\n      overflow: hidden;\n      border-radius: 6px;\n      background: #000;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-player iframe {\n      position: absolute;\n      inset: 0;\n      width: 100%;\n      height: 100%;\n      border: 0;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slide-kicker {\n      margin: 0 0 6px;\n      color: var(--oranlite-muted);\n      font-size: 13px;\n      font-weight: 700;\n      letter-spacing: 0;\n      text-transform: uppercase;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slide-title {\n      margin: 0 0 8px;\n      color: var(--oranlite-ink);\n      font-size: 22px;\n      line-height: 1.25;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-video-tabs {\n      display: grid;\n      gap: 8px;\n      margin: 22px 0;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-video-tab {\n      display: flex;\n      width: 100%;\n      min-height: 46px;\n      align-items: center;\n      gap: 10px;\n      padding: 10px 12px;\n      border: 1px solid var(--oranlite-line);\n      border-radius: 4px;\n      background: #fff;\n      color: var(--oranlite-ink);\n      font: inherit;\n      font-weight: 650;\n      line-height: 1.25;\n      text-align: left;\n      cursor: pointer;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-video-tab:hover {\n      border-color: #777;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-video-tab:focus-visible,\n    #oranlite-vertical-panel-message-slider .oranlite-slider-arrow:focus-visible,\n    #oranlite-vertical-panel-message-slider .oranlite-tiktok-link:focus-visible {\n      outline: 3px solid rgba(0, 104, 183, 0.35);\n      outline-offset: 2px;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-video-tab[aria-selected=\"true\"] {\n      border-color: var(--oranlite-ink);\n      background: #f5f5f5;\n      box-shadow: inset 4px 0 0 var(--tab-color);\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-color-swatch {\n      flex: 0 0 16px;\n      width: 16px;\n      height: 16px;\n      border: 1px solid rgba(0, 0, 0, 0.22);\n      border-radius: 50%;\n      background: var(--tab-color);\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slider-controls {\n      display: grid;\n      grid-template-columns: 44px 1fr 44px;\n      gap: 10px;\n      align-items: center;\n      margin-top: 18px;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slider-arrow {\n      display: inline-flex;\n      width: 44px;\n      height: 44px;\n      align-items: center;\n      justify-content: center;\n      padding: 0;\n      border: 1px solid var(--oranlite-ink);\n      border-radius: 4px;\n      background: #fff;\n      color: var(--oranlite-ink);\n      font: inherit;\n      font-size: 24px;\n      line-height: 1;\n      cursor: pointer;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slider-arrow:hover {\n      background: var(--oranlite-ink);\n      color: #fff;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-slide-counter {\n      color: var(--oranlite-muted);\n      font-variant-numeric: tabular-nums;\n      text-align: center;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-tiktok-link-wrap {\n      margin: 16px 0 0;\n      text-align: center;\n    }\n\n    #oranlite-vertical-panel-message-slider .oranlite-tiktok-link {\n      color: var(--oranlite-ink);\n      font-weight: 700;\n      text-underline-offset: 3px;\n    }\n\n    @media (max-width: 699px) {\n      #oranlite-vertical-panel-message-slider {\n        margin: 28px 0;\n      }\n\n      #oranlite-vertical-panel-message-slider .oranlite-slider-layout {\n        grid-template-columns: minmax(0, 1fr);\n        gap: 22px;\n      }\n\n      #oranlite-vertical-panel-message-slider .oranlite-slider-details {\n        min-width: 0;\n      }\n\n      #oranlite-vertical-panel-message-slider .oranlite-video-tabs {\n        display: flex;\n        width: 100%;\n        gap: 8px;\n        overflow-x: auto;\n        overscroll-behavior-inline: contain;\n        padding: 2px 2px 8px;\n        scroll-snap-type: inline mandatory;\n        scrollbar-width: thin;\n        -webkit-overflow-scrolling: touch;\n      }\n\n      #oranlite-vertical-panel-message-slider .oranlite-video-tab {\n        flex: 0 0 auto;\n        width: auto;\n        min-width: max-content;\n        scroll-snap-align: start;\n      }\n\n      #oranlite-vertical-panel-message-slider .oranlite-video-tab[aria-selected=\"true\"] {\n        box-shadow: inset 0 -4px 0 var(--tab-color);\n      }\n    }\n  \u003c\/style\u003e\n \u003cdiv class=\"oranlite-slider-intro\"\u003e\n \u003ch2 id=\"oranlite-vertical-panel-message-heading\"\u003eMira los cinco mensajes de señal en acción\u003c\/h2\u003e\n \u003cp\u003eSelecciona un mensaje de señal para ver su demostración del producto. El estilo de la base se selecciona por separado.\u003c\/p\u003e\n \u003c\/div\u003e\n \u003cdiv class=\"oranlite-slider-layout\"\u003e\n \u003cdiv class=\"oranlite-player\" id=\"oranlite-vertical-panel-message-player\"\u003e\n \u003ciframe data-role=\"player\" src=\"https:\/\/www.tiktok.com\/player\/v1\/7687327573180828958?controls=1\u0026amp;description=0\u0026amp;rel=0\u0026amp;autoplay=0\" title=\"OranLite Pedestrian Crosswalk vertical traffic panel sign demonstration\" loading=\"lazy\" allow=\"fullscreen; autoplay; encrypted-media; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\n \u003c\/div\u003e\n \u003cdiv class=\"oranlite-slider-details\" aria-live=\"polite\"\u003e\n \u003cp class=\"oranlite-slide-kicker\"\u003eMensaje actual\u003c\/p\u003e\n \u003ch3 class=\"oranlite-slide-title\" data-role=\"title\"\u003eSeñal de paso peatonal\u003c\/h3\u003e\n \u003cp class=\"oranlite-slide-copy\" data-role=\"copy\"\u003eAyuda a alertar a los conductores sobre las zonas de cruce peatonal en estacionamientos y áreas de tráfico controlado.\u003c\/p\u003e\n \u003cdiv class=\"oranlite-video-tabs\" role=\"tablist\" aria-label=\"Choose a traffic panel sign video\"\u003e\n \u003cbutton class=\"oranlite-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"true\" aria-controls=\"oranlite-vertical-panel-message-player\" data-slide-index=\"0\" style=\"--tab-color: #f2c300;\"\u003e\n \u003cspan class=\"oranlite-color-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003ePaso peatonal\u003c\/span\u003e\n \u003c\/button\u003e\n \u003cbutton class=\"oranlite-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"false\" aria-controls=\"oranlite-vertical-panel-message-player\" data-slide-index=\"1\" tabindex=\"-1\" style=\"--tab-color: #222222;\"\u003e\n \u003cspan class=\"oranlite-color-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eEstacionamiento con valet\u003c\/span\u003e\n \u003c\/button\u003e\n \u003cbutton class=\"oranlite-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"false\" aria-controls=\"oranlite-vertical-panel-message-player\" data-slide-index=\"2\" tabindex=\"-1\" style=\"--tab-color: #d92027;\"\u003e\n \u003cspan class=\"oranlite-color-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eNo estacionar\u003c\/span\u003e\n \u003c\/button\u003e\n \u003cbutton class=\"oranlite-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"false\" aria-controls=\"oranlite-vertical-panel-message-player\" data-slide-index=\"3\" tabindex=\"-1\" style=\"--tab-color: #1f8a4c;\"\u003e\n \u003cspan class=\"oranlite-color-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eEstacionamiento\u003c\/span\u003e\n \u003c\/button\u003e\n \u003cbutton class=\"oranlite-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"false\" aria-controls=\"oranlite-vertical-panel-message-player\" data-slide-index=\"4\" tabindex=\"-1\" style=\"--tab-color: #1f67c1;\"\u003e\n \u003cspan class=\"oranlite-color-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eEstacionamiento ADA\u003c\/span\u003e\n \u003c\/button\u003e\n \u003c\/div\u003e\n \u003cdiv class=\"oranlite-slider-controls\" aria-label=\"Video slideshow controls\"\u003e\n \u003cbutton class=\"oranlite-slider-arrow\" type=\"button\" data-action=\"previous\" aria-label=\"Previous video\" title=\"Previous video\"\u003e←\u003c\/button\u003e\n \u003cspan class=\"oranlite-slide-counter\" data-role=\"counter\" aria-live=\"polite\"\u003e1 \/ 5\u003c\/span\u003e\n \u003cbutton class=\"oranlite-slider-arrow\" type=\"button\" data-action=\"next\" aria-label=\"Next video\" title=\"Next video\"\u003e→\u003c\/button\u003e\n \u003c\/div\u003e\n \u003cp class=\"oranlite-tiktok-link-wrap\"\u003e\u003ca class=\"oranlite-tiktok-link\" data-role=\"link\" href=\"https:\/\/www.tiktok.com\/@oranlite\/video\/7687327573180828958\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eVer en TikTok\u003c\/a\u003e\u003c\/p\u003e\n \u003c\/div\u003e\n \u003c\/div\u003e\n \u003cscript\u003e\n    (() =\u003e {\n      const root = document.getElementById(\"oranlite-vertical-panel-message-slider\");\n      if (!root || root.dataset.initialized === \"true\") return;\n      root.dataset.initialized = \"true\";\n\n      const slides = [\n        {\n          id: \"7687327573180828958\",\n          label: \"Pedestrian Crosswalk Sign\",\n          copy: \"Helps alert drivers to pedestrian crossing areas in parking lots and managed traffic zones.\",\n          frameTitle: \"OranLite Pedestrian Crosswalk vertical traffic panel sign demonstration\"\n        },\n        {\n          id: \"7687327825447128350\",\n          label: \"Valet Parking Sign\",\n          copy: \"Directs drivers to valet parking service areas at hotels, restaurants, venues, and parking facilities.\",\n          frameTitle: \"OranLite Valet Parking vertical traffic panel sign demonstration\"\n        },\n        {\n          id: \"7687330008334896414\",\n          label: \"No Parking Sign\",\n          copy: \"Marks restricted parking areas and helps keep access points, lanes, and reserved spaces clear.\",\n          frameTitle: \"OranLite No Parking vertical traffic panel sign demonstration\"\n        },\n        {\n          id: \"7687383385181932830\",\n          label: \"Park Sign\",\n          copy: \"Guides drivers toward designated parking areas at commercial, residential, and event locations.\",\n          frameTitle: \"OranLite Park vertical traffic panel sign demonstration\"\n        },\n        {\n          id: \"7687383838359588127\",\n          label: \"ADA Parking Sign\",\n          copy: \"Identifies accessible parking areas with a clear, highly visible parking message.\",\n          frameTitle: \"OranLite ADA Parking vertical traffic panel sign demonstration\"\n        }\n      ];\n\n      const frame = root.querySelector(\"[data-role='player']\");\n      const title = root.querySelector(\"[data-role='title']\");\n      const copy = root.querySelector(\"[data-role='copy']\");\n      const link = root.querySelector(\"[data-role='link']\");\n      const counter = root.querySelector(\"[data-role='counter']\");\n      const tabs = Array.from(root.querySelectorAll(\"[data-slide-index]\"));\n      let index = 0;\n\n      function render(nextIndex, bringTabIntoView) {\n        index = (nextIndex + slides.length) % slides.length;\n        const slide = slides[index];\n\n        title.textContent = slide.label;\n        copy.textContent = slide.copy;\n        frame.title = slide.frameTitle;\n        if (!frame.src.includes(slide.id)) {\n          frame.src = `https:\/\/www.tiktok.com\/player\/v1\/${slide.id}?controls=1\u0026description=0\u0026rel=0\u0026autoplay=0`;\n        }\n        link.href = `https:\/\/www.tiktok.com\/@oranlite\/video\/${slide.id}`;\n        counter.textContent = `${index + 1} \/ ${slides.length}`;\n\n        tabs.forEach((tab, tabIndex) =\u003e {\n          const isActive = tabIndex === index;\n          tab.setAttribute(\"aria-selected\", isActive ? \"true\" : \"false\");\n          tab.tabIndex = isActive ? 0 : -1;\n        });\n\n        if (bringTabIntoView) {\n          tabs[index].scrollIntoView({ behavior: \"smooth\", block: \"nearest\", inline: \"center\" });\n        }\n      }\n\n      tabs.forEach((tab) =\u003e {\n        tab.addEventListener(\"click\", () =\u003e render(Number(tab.dataset.slideIndex), true));\n      });\n\n      root.querySelector(\"[data-action='previous']\").addEventListener(\"click\", () =\u003e render(index - 1, true));\n      root.querySelector(\"[data-action='next']\").addEventListener(\"click\", () =\u003e render(index + 1, true));\n\n      root.addEventListener(\"keydown\", (event) =\u003e {\n        if (event.key === \"ArrowLeft\") {\n          event.preventDefault();\n          render(index - 1, true);\n        }\n        if (event.key === \"ArrowRight\") {\n          event.preventDefault();\n          render(index + 1, true);\n        }\n      });\n\n      render(0, false);\n    })();\n  \u003c\/script\u003e\n\u003c\/section\u003e\n\u003csection id=\"oranlite-vertical-panel-base-slider\" data-oranlite-tiktok-slider=\"vertical-panel-bases\" aria-labelledby=\"oranlite-vertical-panel-base-heading\"\u003e\n \u003cstyle\u003e\n    #oranlite-vertical-panel-base-slider {\n      --oranlite-ink: #222;\n      --oranlite-muted: #626262;\n      --oranlite-line: #d7d7d7;\n      margin: 32px 0;\n    }\n\n    #oranlite-vertical-panel-base-slider * {\n      box-sizing: border-box;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-intro {\n      margin-bottom: 22px;\n    }\n\n    #oranlite-vertical-panel-base-slider h2 {\n      margin: 0 0 8px;\n      color: var(--oranlite-ink);\n      font-size: 24px;\n      line-height: 1.25;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-intro p,\n    #oranlite-vertical-panel-base-slider .oranlite-base-slide-copy {\n      margin: 0;\n      color: var(--oranlite-muted);\n      line-height: 1.55;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-layout {\n      display: grid;\n      grid-template-columns: minmax(260px, 400px) minmax(220px, 1fr);\n      gap: 28px;\n      align-items: center;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-player {\n      position: relative;\n      width: 100%;\n      max-width: 400px;\n      margin: 0 auto;\n      aspect-ratio: 9 \/ 16;\n      overflow: hidden;\n      border-radius: 6px;\n      background: #000;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-player iframe {\n      position: absolute;\n      inset: 0;\n      width: 100%;\n      height: 100%;\n      border: 0;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slide-kicker {\n      margin: 0 0 6px;\n      color: var(--oranlite-muted);\n      font-size: 13px;\n      font-weight: 700;\n      letter-spacing: 0;\n      text-transform: uppercase;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slide-title {\n      margin: 0 0 8px;\n      color: var(--oranlite-ink);\n      font-size: 22px;\n      line-height: 1.25;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-video-tabs {\n      display: grid;\n      gap: 8px;\n      margin: 22px 0;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-video-tab {\n      display: flex;\n      width: 100%;\n      min-height: 46px;\n      align-items: center;\n      gap: 10px;\n      padding: 10px 12px;\n      border: 1px solid var(--oranlite-line);\n      border-radius: 4px;\n      background: #fff;\n      color: var(--oranlite-ink);\n      font: inherit;\n      font-weight: 650;\n      line-height: 1.25;\n      text-align: left;\n      cursor: pointer;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-video-tab:hover {\n      border-color: #777;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-video-tab:focus-visible,\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-arrow:focus-visible,\n    #oranlite-vertical-panel-base-slider .oranlite-base-tiktok-link:focus-visible {\n      outline: 3px solid rgba(0, 104, 183, 0.35);\n      outline-offset: 2px;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-video-tab[aria-selected=\"true\"] {\n      border-color: var(--oranlite-ink);\n      background: #f5f5f5;\n      box-shadow: inset 4px 0 0 var(--tab-color);\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-swatch {\n      flex: 0 0 16px;\n      width: 16px;\n      height: 16px;\n      border: 1px solid rgba(0, 0, 0, 0.22);\n      border-radius: 50%;\n      background: var(--tab-color);\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-controls {\n      display: grid;\n      grid-template-columns: 44px 1fr 44px;\n      gap: 10px;\n      align-items: center;\n      margin-top: 18px;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-arrow {\n      display: inline-flex;\n      width: 44px;\n      height: 44px;\n      align-items: center;\n      justify-content: center;\n      padding: 0;\n      border: 1px solid var(--oranlite-ink);\n      border-radius: 4px;\n      background: #fff;\n      color: var(--oranlite-ink);\n      font: inherit;\n      font-size: 24px;\n      line-height: 1;\n      cursor: pointer;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slider-arrow:hover {\n      background: var(--oranlite-ink);\n      color: #fff;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-slide-counter {\n      color: var(--oranlite-muted);\n      font-variant-numeric: tabular-nums;\n      text-align: center;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-tiktok-link-wrap {\n      margin: 16px 0 0;\n      text-align: center;\n    }\n\n    #oranlite-vertical-panel-base-slider .oranlite-base-tiktok-link {\n      color: var(--oranlite-ink);\n      font-weight: 700;\n      text-underline-offset: 3px;\n    }\n\n    @media (max-width: 699px) {\n      #oranlite-vertical-panel-base-slider {\n        margin: 28px 0;\n      }\n\n      #oranlite-vertical-panel-base-slider .oranlite-base-slider-layout {\n        grid-template-columns: minmax(0, 1fr);\n        gap: 22px;\n      }\n\n      #oranlite-vertical-panel-base-slider .oranlite-base-slider-details {\n        min-width: 0;\n      }\n\n      #oranlite-vertical-panel-base-slider .oranlite-base-video-tabs {\n        display: grid;\n        grid-template-columns: minmax(0, 1fr);\n        width: 100%;\n      }\n\n      #oranlite-vertical-panel-base-slider .oranlite-base-video-tab[aria-selected=\"true\"] {\n        box-shadow: inset 4px 0 0 var(--tab-color);\n      }\n    }\n  \u003c\/style\u003e\n \u003cdiv class=\"oranlite-base-slider-intro\"\u003e\n \u003ch2 id=\"oranlite-vertical-panel-base-heading\"\u003eCompara las opciones de base en acción\u003c\/h2\u003e\n \u003cp\u003eCambia entre las demostraciones de las bases y la demostración de la señal de no estacionar. El mensaje de la señal y la base se seleccionan por separado.\u003c\/p\u003e\n \u003c\/div\u003e\n \u003cdiv class=\"oranlite-base-slider-layout\"\u003e\n \u003cdiv class=\"oranlite-base-player\" id=\"oranlite-vertical-panel-base-player\"\u003e\n \u003ciframe data-role=\"player\" src=\"https:\/\/www.tiktok.com\/player\/v1\/7686521804805967134?controls=1\u0026amp;description=0\u0026amp;rel=0\u0026amp;autoplay=0\" title=\"OranLite vertical traffic panel with surface mount fixed base\" loading=\"lazy\" allow=\"fullscreen; autoplay; encrypted-media; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\n \u003c\/div\u003e\n \u003cdiv class=\"oranlite-base-slider-details\" aria-live=\"polite\"\u003e\n \u003cp class=\"oranlite-base-slide-kicker\"\u003eDemostración actual\u003c\/p\u003e\n \u003ch3 class=\"oranlite-base-slide-title\" data-role=\"title\"\u003eBase fija de montaje en superficie\u003c\/h3\u003e\n \u003cp class=\"oranlite-base-slide-copy\" data-role=\"copy\"\u003eConfiguración de base fija y de perfil bajo para colocación permanente.\u003c\/p\u003e\n \u003cdiv class=\"oranlite-base-video-tabs\" role=\"tablist\" aria-label=\"Choose a traffic panel demonstration video\"\u003e\n \u003cbutton class=\"oranlite-base-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"true\" aria-controls=\"oranlite-vertical-panel-base-player\" data-slide-index=\"0\" style=\"--tab-color: #333333;\"\u003e\n \u003cspan class=\"oranlite-base-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eBase fija de montaje en superficie\u003c\/span\u003e\n \u003c\/button\u003e\n \u003cbutton class=\"oranlite-base-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"false\" aria-controls=\"oranlite-vertical-panel-base-player\" data-slide-index=\"1\" tabindex=\"-1\" style=\"--tab-color: #f36b21;\"\u003e\n \u003cspan class=\"oranlite-base-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eBase rellenable con agua\u003c\/span\u003e\n \u003c\/button\u003e\n \u003cbutton class=\"oranlite-base-video-tab\" type=\"button\" role=\"tab\" aria-selected=\"false\" aria-controls=\"oranlite-vertical-panel-base-player\" data-slide-index=\"2\" tabindex=\"-1\" style=\"--tab-color: #d92828;\"\u003e\n \u003cspan class=\"oranlite-base-swatch\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n \u003cspan\u003eDemostración de la señal de no estacionar\u003c\/span\u003e\n \u003c\/button\u003e\n \u003c\/div\u003e\n \u003cdiv class=\"oranlite-base-slider-controls\" aria-label=\"Product video slideshow controls\"\u003e\n \u003cbutton class=\"oranlite-base-slider-arrow\" type=\"button\" data-action=\"previous\" aria-label=\"Previous product video\" title=\"Previous product video\"\u003e←\u003c\/button\u003e\n \u003cspan class=\"oranlite-base-slide-counter\" data-role=\"counter\" aria-live=\"polite\"\u003e1 \/ 3\u003c\/span\u003e\n \u003cbutton class=\"oranlite-base-slider-arrow\" type=\"button\" data-action=\"next\" aria-label=\"Next product video\" title=\"Next product video\"\u003e→\u003c\/button\u003e\n \u003c\/div\u003e\n \u003cp class=\"oranlite-base-tiktok-link-wrap\"\u003e\u003ca class=\"oranlite-base-tiktok-link\" data-role=\"link\" href=\"https:\/\/www.tiktok.com\/@oranlite\/video\/7686521804805967134\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eVer en TikTok\u003c\/a\u003e\u003c\/p\u003e\n \u003c\/div\u003e\n \u003c\/div\u003e\n \u003cscript\u003e\n    (() =\u003e {\n      const root = document.getElementById(\"oranlite-vertical-panel-base-slider\");\n      if (!root || root.dataset.initialized === \"true\") return;\n      root.dataset.initialized = \"true\";\n\n      const slides = [\n        {\n          id: \"7686521804805967134\",\n          account: \"oranlite\",\n          label: \"Surface Mount Fixed Base\",\n          copy: \"A low-profile fixed-base configuration for permanent placement.\",\n          frameTitle: \"OranLite vertical traffic panel with surface mount fixed base\"\n        },\n        {\n          id: \"7686525081756912927\",\n          account: \"eastseagroupltd\",\n          label: \"Water-Filled Base\",\n          copy: \"A portable base configuration that can be filled for added stability.\",\n          frameTitle: \"OranLite vertical traffic panel with water-filled base\"\n        },\n        {\n          id: \"7688907696296217886\",\n          account: \"oranlite\",\n          label: \"No Parking Sign Demo\",\n          copy: \"See the highly visible No Parking sign panel in a real product demonstration.\",\n          frameTitle: \"OranLite No Parking vertical traffic panel sign demonstration\"\n        }\n      ];\n\n      const frame = root.querySelector(\"[data-role='player']\");\n      const title = root.querySelector(\"[data-role='title']\");\n      const copy = root.querySelector(\"[data-role='copy']\");\n      const link = root.querySelector(\"[data-role='link']\");\n      const counter = root.querySelector(\"[data-role='counter']\");\n      const tabs = Array.from(root.querySelectorAll(\"[data-slide-index]\"));\n      let index = 0;\n\n      function render(nextIndex) {\n        index = (nextIndex + slides.length) % slides.length;\n        const slide = slides[index];\n\n        title.textContent = slide.label;\n        copy.textContent = slide.copy;\n        frame.title = slide.frameTitle;\n        if (!frame.src.includes(slide.id)) {\n          frame.src = `https:\/\/www.tiktok.com\/player\/v1\/${slide.id}?controls=1\u0026description=0\u0026rel=0\u0026autoplay=0`;\n        }\n        link.href = `https:\/\/www.tiktok.com\/@${slide.account}\/video\/${slide.id}`;\n        counter.textContent = `${index + 1} \/ ${slides.length}`;\n\n        tabs.forEach((tab, tabIndex) =\u003e {\n          const isActive = tabIndex === index;\n          tab.setAttribute(\"aria-selected\", isActive ? \"true\" : \"false\");\n          tab.tabIndex = isActive ? 0 : -1;\n        });\n      }\n\n      tabs.forEach((tab) =\u003e {\n        tab.addEventListener(\"click\", () =\u003e render(Number(tab.dataset.slideIndex)));\n      });\n\n      root.querySelector(\"[data-action='previous']\").addEventListener(\"click\", () =\u003e render(index - 1));\n      root.querySelector(\"[data-action='next']\").addEventListener(\"click\", () =\u003e render(index + 1));\n\n      root.addEventListener(\"keydown\", (event) =\u003e {\n        if (event.key === \"ArrowLeft\") {\n          event.preventDefault();\n          render(index - 1);\n        }\n        if (event.key === \"ArrowRight\") {\n          event.preventDefault();\n          render(index + 1);\n        }\n      });\n\n      render(0);\n    })();\n  \u003c\/script\u003e\n\u003c\/section\u003e\n\u003c!-- ORANLITE_US_TIKTOK_IMPORT_20261001_END --\u003e","brand":"Oranlite Europe","offers":[{"title":"Hoja sin señal","offer_id":67617493549250,"sku":"DH-VB-17X4","price":59.55,"currency_code":"EUR","in_stock":true},{"title":"Estacionamiento ADA","offer_id":67617493582018,"sku":"DH-VB-17X4-ADA","price":64.76,"currency_code":"EUR","in_stock":true},{"title":"Aparcacoches","offer_id":67617493614786,"sku":"DH-VB-17X4-VALETT","price":64.76,"currency_code":"EUR","in_stock":true},{"title":"Paso de peatones","offer_id":67617493647554,"sku":"DH-VB-17X4-CROSS","price":69.73,"currency_code":"EUR","in_stock":true},{"title":"No estacionar","offer_id":67617493680322,"sku":"DH-VB-17X4-NOPARK","price":64.76,"currency_code":"EUR","in_stock":true},{"title":"Aparcamiento","offer_id":67617493713090,"sku":"DH-VB-17X4-PARK","price":64.76,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0714\/4092\/4866\/files\/DH-VB-16X2-01.jpg?v=1790859897","url":"https:\/\/www.oranlite.eu\/es\/products\/spring-back-parking-sign-stands-112cm-2-pack","provider":"Oranlite Europe","version":"1.0","type":"link"}