{"id":2530,"date":"2026-04-15T09:10:34","date_gmt":"2026-04-15T09:10:34","guid":{"rendered":"https:\/\/hywoodfurniture.com\/?page_id=2530"},"modified":"2026-05-04T06:30:49","modified_gmt":"2026-05-04T06:30:49","slug":"wooden-ornament","status":"publish","type":"page","link":"https:\/\/hywoodfurniture.com\/pl\/wooden-ornament\/","title":{"rendered":"Wooden Ornament Manufacturer | Huayi"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2530\" class=\"elementor elementor-2530\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-af2aab8 e-con-full e-flex e-con e-parent\" data-id=\"af2aab8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-818ff6e elementor-widget elementor-widget-html\" data-id=\"818ff6e\" 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=\"en\">\r\n<head>\r\n  <meta charset=\"utf-8\" \/>\r\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/>\r\n  <title>Solid Wood Wooden Ornament Manufacturer | Huayi Intelligent Manufacturing<\/title>\r\n  <meta name=\"description\" content=\"Huayi manufactures solid wood wooden ornaments for B2B buyers, covering tabletop decor, wall accents, and display sculptures with stable material selection, fine sanding, and consistent finishing for retail and project use.\" \/>\r\n  <meta name=\"robots\" content=\"index,follow,max-image-preview:large\" \/>\r\n  <meta property=\"og:type\" content=\"website\" \/>\r\n  <meta property=\"og:site_name\" content=\"HUAYI Intelligent Manufacturing\" \/>\r\n  <meta property=\"og:title\" id=\"ogTitle\" content=\"Solid Wood Wooden Ornament Manufacturer | Huayi\" \/>\r\n  <meta property=\"og:description\" id=\"ogDescription\" content=\"Wooden ornament OEM\/ODM with shape development, surface detailing, and repeatable mass production for decorative collections.\" \/>\r\n  <meta property=\"og:image\" id=\"ogImage\" content=\"https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/04\/hy500.webp\" \/>\r\n  <meta property=\"og:url\" id=\"ogUrl\" content=\"https:\/\/hywoodfurniture.com\/wooden-ornament\/\" \/>\r\n  <meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n  <meta name=\"twitter:title\" id=\"twitterTitle\" content=\"Solid Wood Wooden Ornament Manufacturer | Huayi\" \/>\r\n  <meta name=\"twitter:description\" id=\"twitterDescription\" content=\"B2B wooden ornament factory for decor series with stable materials, craftsmanship control, and reliable batch delivery.\" \/>\r\n  <meta name=\"twitter:image\" id=\"twitterImage\" content=\"https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/04\/hy500.webp\" \/>\r\n  <link rel=\"preconnect\" href=\"https:\/\/images.unsplash.com\" crossorigin \/>\r\n  <link rel=\"preconnect\" href=\"https:\/\/hywoodfurniture.com\" crossorigin \/>\r\n  <link rel=\"canonical\" id=\"canonicalLink\" href=\"https:\/\/hywoodfurniture.com\/wooden-ornament\/\" \/>\r\n  <script type=\"application\/ld+json\" id=\"ldJson\"><\/script>\r\n  <style>\r\n    :root {\r\n      --home-font: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\r\n      --home-bg: #ECEEF1;\r\n      --home-bg-soft: #F4F5F7;\r\n\r\n      --brand: #8b1a1a;\r\n      --brand-dark: #6d1414;\r\n      --accent: #d6b38a;\r\n\r\n      --ink: #171715;\r\n      --ink-soft: #4d4a44;\r\n      --ink-faint: #7d786d;\r\n\r\n      --line: #cbc5b9;\r\n      --line-strong: #9d978a;\r\n\r\n      --turn-duration: 1400ms;\r\n      --autoplay-interval: 4200ms;\r\n\r\n      --breath-duration: 6.4s;\r\n      --breath-ease: cubic-bezier(0.37, 0, 0.2, 1);\r\n    }\r\n\r\n    * {\r\n      box-sizing: border-box;\r\n    }\r\n\r\n    html,\r\n    body {\r\n      margin: 0;\r\n      padding: 0;\r\n      overflow-x: hidden;\r\n    }\r\n\r\n    body {\r\n      font-family: var(--home-font);\r\n      color: var(--ink);\r\n      background:\r\n        radial-gradient(120% 90% at 50% 0%, rgba(255, 255, 255, 0.82) 0%, rgba(255, 255, 255, 0) 58%),\r\n        radial-gradient(90% 120% at 15% 18%, rgba(128, 48, 48, 0.06) 0%, rgba(128, 48, 48, 0) 44%),\r\n        radial-gradient(120% 140% at 86% 82%, rgba(109, 20, 20, 0.05) 0%, rgba(109, 20, 20, 0) 42%),\r\n        linear-gradient(180deg, var(--home-bg-soft) 0%, var(--home-bg) 58%, #e7eaef 100%);\r\n      min-height: 100vh;\r\n      overflow-x: hidden;\r\n    }\r\n\r\n    .catalog-app {\r\n      position: relative;\r\n      width: min(1360px, 100%);\r\n      margin: 0 auto;\r\n      padding: clamp(24px, 3vw, 46px) clamp(18px, 3.5vw, 42px) 54px;\r\n      z-index: 10;\r\n    }\r\n\r\n    .top-bar {\r\n      display: grid;\r\n      gap: 20px;\r\n      width: min(96vw, 1260px);\r\n      margin: 0 auto clamp(28px, 4.6vw, 58px);\r\n      justify-items: center;\r\n      text-align: center;\r\n    }\r\n\r\n    .brand-copy {\r\n      display: grid;\r\n      gap: 12px;\r\n      width: 100%;\r\n      max-width: none;\r\n      justify-items: center;\r\n    }\r\n\r\n    .brand-tag {\r\n      margin: 0;\r\n      font-size: 12px;\r\n      letter-spacing: 0.18em;\r\n      text-transform: uppercase;\r\n      color: var(--ink-faint);\r\n      font-weight: 600;\r\n    }\r\n\r\n    .brand-title {\r\n      margin: 0;\r\n      font-family: var(--home-font);\r\n      font-size: clamp(34px, 5.8vw, 72px);\r\n      line-height: 1.05;\r\n      letter-spacing: -0.02em;\r\n      font-weight: 820;\r\n      color: #11110f;\r\n      max-width: none;\r\n      transform-style: preserve-3d;\r\n      will-change: transform, text-shadow;\r\n      animation: titleEmbossBreath var(--breath-duration) var(--breath-ease) infinite;\r\n    }\r\n\r\n    .brand-title span {\r\n      display: block;\r\n      white-space: nowrap;\r\n    }\r\n\r\n    .brand-title .tone-dark {\r\n      color: #12110f;\r\n      text-shadow:\r\n        0 1px 0 rgba(255, 255, 255, 0.36),\r\n        0 10px 22px rgba(0, 0, 0, 0.16);\r\n    }\r\n\r\n    .brand-title .tone-brand {\r\n      color: var(--brand);\r\n      text-shadow:\r\n        0 1px 0 rgba(255, 255, 255, 0.26),\r\n        0 6px 14px rgba(77, 11, 11, 0.2);\r\n      animation: titleAccentBreath var(--breath-duration) var(--breath-ease) infinite;\r\n    }\r\n\r\n    .intro-panel {\r\n      width: 100%;\r\n      margin-top: 8px;\r\n      display: grid;\r\n      justify-items: center;\r\n      text-align: center;\r\n      padding: clamp(18px, 2.4vw, 28px) clamp(18px, 2.8vw, 36px);\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(151, 141, 131, 0.34);\r\n      background:\r\n        linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(232, 227, 220, 0.78)),\r\n        linear-gradient(130deg, rgba(139, 26, 26, 0.08), rgba(139, 26, 26, 0));\r\n      box-shadow:\r\n        0 18px 34px rgba(19, 18, 16, 0.1),\r\n        0 6px 16px rgba(19, 18, 16, 0.08),\r\n        inset 0 1px 0 rgba(255, 255, 255, 0.7);\r\n      backdrop-filter: blur(4px);\r\n      -webkit-backdrop-filter: blur(4px);\r\n    }\r\n\r\n    .brand-subtitle {\r\n      margin: 0;\r\n      font-size: clamp(15px, 1.6vw, 19px);\r\n      line-height: 1.7;\r\n      color: var(--ink-soft);\r\n      width: min(760px, 100%);\r\n      max-width: none;\r\n      font-weight: 450;\r\n      margin-left: auto;\r\n      margin-right: auto;\r\n      text-align: center;\r\n    }\r\n\r\n    .category-nav {\r\n      display: flex;\r\n      flex-wrap: nowrap;\r\n      align-items: center;\r\n      justify-content: center;\r\n      gap: 12px;\r\n      border-top: 1px solid rgba(157, 151, 138, 0.26);\r\n      padding: 16px 0 4px;\r\n      width: 100%;\r\n      margin-top: 14px;\r\n    }\r\n\r\n    .category-btn {\r\n      position: relative;\r\n      display: inline-flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n      white-space: nowrap;\r\n      text-decoration: none;\r\n      border: 1px solid rgba(155, 146, 135, 0.46);\r\n      background: linear-gradient(180deg, rgba(255,255,255,0.68), rgba(236,231,223,0.8));\r\n      color: #5f5a52;\r\n      padding: 9px 18px;\r\n      border-radius: 999px;\r\n      font-size: 13px;\r\n      letter-spacing: 0.13em;\r\n      text-transform: uppercase;\r\n      font-weight: 600;\r\n      cursor: pointer;\r\n      transition: all 0.22s ease;\r\n    }\r\n\r\n    .category-btn:hover {\r\n      color: #2a2925;\r\n      border-color: rgba(139, 26, 26, 0.42);\r\n      transform: translateY(-1px);\r\n    }\r\n\r\n    .category-btn.is-active {\r\n      color: #fff;\r\n      border-color: rgba(109, 20, 20, 0.9);\r\n      background: linear-gradient(160deg, #a42020 0%, var(--brand) 58%, var(--brand-dark) 100%);\r\n      box-shadow:\r\n        0 8px 18px rgba(139, 26, 26, 0.34),\r\n        inset 0 1px 0 rgba(255,255,255,0.32),\r\n        inset 0 -1px 0 rgba(67, 10, 10, 0.34);\r\n    }\r\n\r\n    .category-btn[aria-current=\"page\"] {\r\n      pointer-events: none;\r\n    }\r\n\r\n    .viewer {\r\n      display: grid;\r\n      gap: 18px;\r\n      justify-items: center;\r\n    }\r\n\r\n    .visual-wrap {\r\n      position: relative;\r\n      width: min(96vw, 1260px);\r\n      padding: clamp(22px, 2.9vw, 36px);\r\n      border-radius: 14px;\r\n      border: 1px solid rgba(142, 131, 122, 0.42);\r\n      background:\r\n        linear-gradient(180deg, rgba(255,255,255,0.95), rgba(234,231,224,0.98)),\r\n        linear-gradient(135deg, rgba(139,26,26,0.07), rgba(139,26,26,0));\r\n      box-shadow:\r\n        0 34px 72px rgba(18,18,17,0.16),\r\n        0 14px 30px rgba(18,18,17,0.11),\r\n        0 2px 0 rgba(255,255,255,0.42),\r\n        inset 0 2px 0 rgba(255,255,255,0.78),\r\n        inset 0 -3px 0 rgba(112,103,94,0.24);\r\n      isolation: isolate;\r\n      transform-style: preserve-3d;\r\n    }\r\n\r\n    .visual-wrap::after {\r\n      content: \"\";\r\n      position: absolute;\r\n      left: 5%;\r\n      right: 5%;\r\n      bottom: -18px;\r\n      height: 40px;\r\n      border-radius: 50%;\r\n      background: radial-gradient(closest-side, rgba(18,18,17,0.32), rgba(18,18,17,0));\r\n      filter: blur(22px);\r\n      opacity: 0.66;\r\n      pointer-events: none;\r\n      z-index: -1;\r\n    }\r\n\r\n    .spatial-stage {\r\n      position: relative;\r\n      width: 100%;\r\n      margin-inline: auto;\r\n      aspect-ratio: 1 \/ 1;\r\n      perspective: 2800px;\r\n      transform-style: preserve-3d;\r\n      isolation: isolate;\r\n      animation: none;\r\n    }\r\n\r\n    .layer-environment {\r\n      display: none !important;\r\n    }\r\n\r\n    .stage-visual {\r\n      position: relative;\r\n      display: block;\r\n      width: 100%;\r\n      height: 100%;\r\n      border: 0;\r\n      padding: 0;\r\n      margin: 0;\r\n      background: transparent;\r\n      cursor: default;\r\n      transform-style: preserve-3d;\r\n      isolation: isolate;\r\n      z-index: 2;\r\n    }\r\n\r\n    .stage-board {\r\n      position: absolute;\r\n      inset: 0;\r\n      aspect-ratio: 1 \/ 1;\r\n      overflow: hidden;\r\n      border-radius: 6px;\r\n      border: 1px solid rgba(120, 110, 101, 0.7);\r\n      background: #ffffff;\r\n      transform-style: preserve-3d;\r\n      z-index: 2;\r\n      will-change: transform;\r\n      animation: none;\r\n      box-shadow:\r\n        0 22px 44px rgba(17, 17, 16, 0.20),\r\n        0 10px 20px rgba(17, 17, 16, 0.14),\r\n        0 0 0 1px rgba(139, 26, 26, 0.08),\r\n        inset 0 2px 0 rgba(255,255,255,0.22);\r\n    }\r\n\r\n    .stage-image {\r\n      position: absolute;\r\n      inset: 0;\r\n      width: 100%;\r\n      height: 100%;\r\n      object-fit: contain;\r\n      object-position: center;\r\n      user-select: none;\r\n      -webkit-user-drag: none;\r\n      backface-visibility: hidden;\r\n    }\r\n\r\n    .stage-image-under {\r\n      opacity: 0;\r\n      filter: none;\r\n      transition: opacity 260ms linear;\r\n      z-index: 1;\r\n    }\r\n\r\n    .stage-image-base {\r\n      opacity: 1;\r\n      z-index: 2;\r\n    }\r\n\r\n    .turn-sheet {\r\n      position: absolute;\r\n      inset: 0;\r\n      aspect-ratio: 1 \/ 1;\r\n      opacity: 0;\r\n      pointer-events: none;\r\n      transform-style: preserve-3d;\r\n      \/* Constant speed turn logic: Linear timing *\/\r\n      transition: transform var(--turn-duration) linear, opacity 180ms linear;\r\n      z-index: 5;\r\n    }\r\n\r\n    .sheet-face {\r\n      position: absolute;\r\n      inset: 0;\r\n      aspect-ratio: 1 \/ 1;\r\n      overflow: hidden;\r\n      backface-visibility: hidden;\r\n      border-radius: 2px;\r\n    }\r\n\r\n    .sheet-back { transform: rotateY(180deg); }\r\n\r\n    .sheet-image {\r\n      width: 100%;\r\n      height: 100%;\r\n      object-fit: contain;\r\n      object-position: center;\r\n      display: block;\r\n    }\r\n\r\n    .sheet-shadow-layer {\r\n      position: absolute;\r\n      inset: 0;\r\n      pointer-events: none;\r\n      opacity: 0;\r\n      background: linear-gradient(90deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0));\r\n      transition: opacity 300ms linear;\r\n    }\r\n\r\n    .image-overlay {\r\n      position: absolute;\r\n      inset: 0;\r\n      display: grid;\r\n      place-items: end center;\r\n      padding: clamp(12px, 1.8vw, 20px);\r\n      pointer-events: none;\r\n      z-index: 6;\r\n      opacity: 0;\r\n      transition: opacity 0.28s ease;\r\n      transform: translateZ(72px);\r\n      transform-style: preserve-3d;\r\n      background: none;\r\n    }\r\n\r\n    .mobile-info-toggle {\r\n      display: none;\r\n      position: absolute;\r\n      right: 12px;\r\n      top: 12px;\r\n      bottom: auto;\r\n      z-index: 8;\r\n      border: 1px solid rgba(138, 132, 124, 0.58);\r\n      background: linear-gradient(180deg, rgba(255, 255, 255, 0.85), rgba(230, 225, 216, 0.92));\r\n      color: #3b3833;\r\n      border-radius: 999px;\r\n      padding: 7px 12px;\r\n      font-size: 11px;\r\n      letter-spacing: 0.1em;\r\n      text-transform: uppercase;\r\n      font-weight: 650;\r\n      cursor: pointer;\r\n      box-shadow: 0 6px 14px rgba(19, 18, 16, 0.2);\r\n    }\r\n\r\n    .image-overlay,\r\n    .mobile-info-toggle,\r\n    .mobile-meta {\r\n      display: none !important;\r\n    }\r\n\r\n    .overlay-plaque {\r\n      position: relative;\r\n      width: min(92%, 740px);\r\n      padding: clamp(10px, 1.2vw, 16px) clamp(12px, 1.5vw, 20px);\r\n      border-radius: 10px;\r\n      border: 1px solid rgba(170, 164, 154, 0.5);\r\n      background: rgba(255, 255, 255, 0.86);\r\n      opacity: 1;\r\n      transform-style: preserve-3d;\r\n      animation: none;\r\n      box-shadow: 0 8px 22px rgba(9, 9, 8, 0.18);\r\n    }\r\n\r\n    .overlay-inner {\r\n      display: grid;\r\n      justify-items: center;\r\n      gap: 6px;\r\n      max-width: 100%;\r\n      text-align: center;\r\n      transform-style: preserve-3d;\r\n      color: #1f1d1a;\r\n    }\r\n\r\n    .overlay-brand-logo {\r\n      width: clamp(44px, 5vw, 56px);\r\n      height: auto;\r\n      filter: none;\r\n      margin-bottom: 2px;\r\n    }\r\n\r\n    .overlay-name {\r\n      margin: 0;\r\n      font-size: clamp(18px, 2.1vw, 30px);\r\n      font-weight: 700;\r\n      line-height: 1.12;\r\n      letter-spacing: -0.01em;\r\n      color: #8b1a1a;\r\n      text-shadow: none;\r\n    }\r\n\r\n    .overlay-line {\r\n      margin: 0;\r\n      font-size: clamp(11px, 0.95vw, 15px);\r\n      color: #3f3a33;\r\n      text-transform: uppercase;\r\n      letter-spacing: 0.06em;\r\n    }\r\n\r\n    .meta-key { color: #8b1a1a; margin-right: 8px; font-weight: 700; }\r\n    .meta-value { color: #2e2a25; }\r\n\r\n    .controls-plinth {\r\n      width: min(96vw, 1260px);\r\n      margin-top: 12px;\r\n      padding: 12px 16px;\r\n      border-radius: 8px;\r\n      border: 1px solid rgba(157, 151, 138, 0.4);\r\n      background: linear-gradient(180deg, rgba(255, 255, 255, 0.6), rgba(232, 228, 220, 0.95));\r\n      box-shadow: 0 14px 28px rgba(17, 17, 16, 0.1);\r\n      transform: perspective(1200px) rotateX(4deg);\r\n      transition: all 0.3s ease;\r\n    }\r\n\r\n    .controls {\r\n      width: 100%;\r\n      display: flex;\r\n      align-items: center;\r\n      justify-content: space-between;\r\n    }\r\n\r\n    .arrow-btn {\r\n      border: 0;\r\n      background: transparent;\r\n      color: rgba(54, 48, 43, 0.6);\r\n      font-size: 32px;\r\n      cursor: pointer;\r\n      transition: color 0.22s ease;\r\n      padding: 0 10px;\r\n    }\r\n\r\n    .arrow-btn:hover { color: var(--brand); }\r\n    .arrow-btn:focus-visible {\r\n      outline: 2px solid rgba(139, 26, 26, 0.55);\r\n      outline-offset: 3px;\r\n    }\r\n\r\n    .arrow-btn:disabled {\r\n      opacity: 0.28;\r\n      cursor: default;\r\n      pointer-events: none;\r\n    }\r\n\r\n    .category-btn:disabled {\r\n      cursor: default;\r\n      pointer-events: none;\r\n    }\r\n\r\n    .stage-visual:focus-visible {\r\n      outline: 2px solid rgba(139, 26, 26, 0.42);\r\n      outline-offset: 4px;\r\n    }\r\n\r\n    .stage-visual:focus-visible .image-overlay {\r\n      opacity: 1;\r\n    }\r\n\r\n    .meta-line {\r\n      display: flex;\r\n      align-items: center;\r\n      gap: 14px;\r\n      font-size: 13px;\r\n      color: #736b5f;\r\n      font-weight: 600;\r\n      letter-spacing: 0.15em;\r\n      text-transform: uppercase;\r\n    }\r\n\r\n    .meta-sep { width: 40px; height: 1px; background: rgba(139, 26, 26, 0.3); }\r\n\r\n    \/* --- Animations --- *\/\r\n    @keyframes titleEmbossBreath {\r\n      0%, 100% { transform: perspective(1200px) translateZ(0); text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4); }\r\n      50% { transform: perspective(1200px) translateZ(12px) translateY(-1px); text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); }\r\n    }\r\n\r\n    @keyframes titleAccentBreath {\r\n      0%, 100% { transform: scale(1); }\r\n      50% { transform: scale(1.025) translateZ(6px); }\r\n    }\r\n\r\n    @keyframes stageBreath {\r\n      0%, 100% { transform: translateZ(0); }\r\n      50% { transform: translateZ(10px); }\r\n    }\r\n\r\n    @keyframes envBreath {\r\n      0%, 100% { opacity: 0.8; }\r\n      50% { opacity: 0.95; transform: translateZ(-20px); }\r\n    }\r\n\r\n    @keyframes boardBreath {\r\n      0%, 100% { transform: translateZ(0) rotateX(0.5deg); }\r\n      50% { transform: translateZ(20px) rotateX(1.2deg); }\r\n    }\r\n\r\n    @keyframes plaqueBreathStrong {\r\n      0%, 100% { transform: perspective(1200px) rotateX(4deg) translateZ(28px); }\r\n      50% { transform: perspective(1200px) rotateX(7deg) translateZ(54px); }\r\n    }\r\n\r\n    \/* Page Turn States *\/\r\n    .stage-visual.is-turning .stage-image-under { opacity: 1; }\r\n    .stage-visual.is-turning .stage-image-base { opacity: 0; }\r\n    .stage-visual.is-turning .turn-sheet { opacity: 1; }\r\n    .stage-visual.mobile-fading .stage-image-under { opacity: 1; }\r\n    .stage-visual.mobile-fading .stage-image-base { opacity: 0; }\r\n    .stage-visual.dir-next .turn-sheet { transform-origin: left center; }\r\n    .stage-visual.dir-prev .turn-sheet { transform-origin: right center; }\r\n    .stage-visual.is-turning.turn-active.dir-next .turn-sheet { transform: rotateY(-175deg); }\r\n    .stage-visual.is-turning.turn-active.dir-prev .turn-sheet { transform: rotateY(175deg); }\r\n    .stage-visual.is-turning .sheet-shadow-layer { opacity: 0; }\r\n\r\n    .lightbox {\r\n      position: fixed;\r\n      inset: 0;\r\n      z-index: 2147483647;\r\n      width: 100vw;\r\n      height: 100vh;\r\n      height: 100dvh;\r\n      background: rgba(9, 10, 11, 0.96);\r\n      display: block;\r\n      padding: 0;\r\n      overflow: hidden;\r\n      overscroll-behavior: contain;\r\n      opacity: 0;\r\n      pointer-events: none;\r\n      transition: opacity 0.35s ease;\r\n    }\r\n    .lightbox.is-open { opacity: 1; pointer-events: auto; }\r\n    .lightbox-image {\r\n      display: block;\r\n      width: 100%;\r\n      height: auto;\r\n      max-width: none;\r\n      max-height: none;\r\n      object-fit: contain;\r\n      object-position: center;\r\n      border-radius: 0;\r\n      background: #ece9e3;\r\n      box-shadow: 0 20px 60px rgba(0,0,0,0.5);\r\n      cursor: zoom-in;\r\n      transition: box-shadow 0.25s ease, transform 0.25s ease;\r\n    }\r\n    .lightbox-image.is-zoomed {\r\n      cursor: zoom-out;\r\n      box-shadow: 0 28px 80px rgba(0,0,0,0.58);\r\n    }\r\n    .lightbox-close {\r\n      position: fixed;\r\n      top: max(16px, env(safe-area-inset-top, 0px));\r\n      right: max(16px, env(safe-area-inset-right, 0px));\r\n      z-index: 2147483648;\r\n      background: none;\r\n      border: none;\r\n      color: #fff;\r\n      font-size: 44px;\r\n      cursor: pointer;\r\n    }\r\n\r\n    @media (hover: hover) {\r\n      .spatial-stage:hover .image-overlay { opacity: 1; }\r\n    }\r\n\r\n    @media (min-width: 921px) {\r\n      .lightbox {\r\n        display: grid;\r\n        place-items: center;\r\n        padding: 24px;\r\n        overflow: auto;\r\n      }\r\n      .lightbox-image {\r\n        width: auto;\r\n        max-width: 90vw;\r\n        max-height: 85vh;\r\n        border-radius: 8px;\r\n      }\r\n      .lightbox-image.is-zoomed {\r\n        max-width: none;\r\n        max-height: none;\r\n      }\r\n    }\r\n\r\n    @media (max-width: 920px) {\r\n      .catalog-app { padding: 12px 0 28px; }\r\n      .top-bar,\r\n      .visual-wrap,\r\n      .controls-plinth {\r\n        width: 100%;\r\n        max-width: none;\r\n      }\r\n      .visual-wrap {\r\n        padding: 8px;\r\n        border-radius: 8px;\r\n      }\r\n      .visual-wrap::after {\r\n        display: none;\r\n      }\r\n      .brand-title {\r\n        font-size: clamp(20px, 8vw, 30px);\r\n        line-height: 1.08;\r\n      }\r\n      .brand-title span {\r\n        white-space: normal;\r\n      }\r\n      .intro-panel { padding: 16px 12px 16px; border-radius: 12px; }\r\n      .brand-subtitle { max-width: 100%; font-size: 17px; }\r\n      .category-nav {\r\n        overflow: visible;\r\n        display: grid;\r\n        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;\r\n        grid-auto-flow: row;\r\n        flex-wrap: nowrap;\r\n        justify-content: center;\r\n        align-items: stretch;\r\n        gap: 8px;\r\n        padding-bottom: 4px;\r\n        transform: none;\r\n        transform-origin: initial;\r\n        width: 100%;\r\n        margin-top: 10px;\r\n        margin-bottom: 0;\r\n        max-width: 100%;\r\n      }\r\n      .category-btn {\r\n        min-width: 0;\r\n        width: 100%;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        grid-column: auto !important;\r\n        min-height: 36px;\r\n        padding: 8px 6px;\r\n        font-size: 11px;\r\n        letter-spacing: 0.05em;\r\n        white-space: normal;\r\n        line-height: 1.15;\r\n        text-align: center;\r\n      }\r\n      .image-overlay {\r\n        display: grid;\r\n        opacity: 0;\r\n        visibility: hidden;\r\n        place-items: end center;\r\n        padding: 12px;\r\n        transition: opacity 0.22s ease;\r\n      }\r\n      .spatial-stage.mobile-info-open .image-overlay {\r\n        opacity: 1;\r\n        visibility: visible;\r\n      }\r\n      .overlay-plaque {\r\n        width: min(94%, 680px);\r\n        padding: 12px 14px;\r\n        border-radius: 10px;\r\n      }\r\n      .lightbox {\r\n        display: block;\r\n        width: 100vw;\r\n        height: 100vh;\r\n        height: 100dvh;\r\n        min-height: 100vh;\r\n        min-height: 100dvh;\r\n        padding: 0 !important;\r\n        margin: 0 !important;\r\n        overflow-y: scroll !important;\r\n        overflow-x: hidden;\r\n        -webkit-overflow-scrolling: touch;\r\n        overscroll-behavior-y: contain;\r\n        touch-action: pan-y;\r\n      }\r\n      .lightbox-image {\r\n        display: block;\r\n        box-sizing: border-box;\r\n        width: 100vw !important;\r\n        min-width: 100vw !important;\r\n        max-width: 100vw !important;\r\n        height: auto !important;\r\n        max-height: none !important;\r\n        object-fit: contain;\r\n        border-radius: 0;\r\n        margin: 0 !important;\r\n        touch-action: pan-y;\r\n      }\r\n      .lightbox-image.is-zoomed {\r\n        width: 100vw !important;\r\n        min-width: 100vw !important;\r\n        max-width: 100vw !important;\r\n        height: auto !important;\r\n        max-height: none !important;\r\n        object-fit: contain;\r\n      }\r\n      .overlay-inner {\r\n        gap: 8px;\r\n        max-width: 100%;\r\n      }\r\n      .overlay-brand-logo { display: none; }\r\n      .overlay-name { font-size: clamp(20px, 6vw, 28px); }\r\n      .overlay-line { font-size: 11px; letter-spacing: 0.06em; }\r\n      .mobile-info-toggle { display: inline-flex; align-items: center; justify-content: center; }\r\n      .spatial-stage {\r\n        width: 100%;\r\n        max-width: 100%;\r\n        margin-inline: 0;\r\n        aspect-ratio: 1 \/ 1;\r\n        animation: none;\r\n      }\r\n      .controls-plinth {\r\n        margin-top: 8px;\r\n        padding: 10px 8px;\r\n        border-radius: 6px;\r\n        transform: none;\r\n      }\r\n      .layer-environment { animation: none; }\r\n      .stage-board { animation: none; }\r\n      .turn-sheet,\r\n      .sheet-shadow-layer {\r\n        display: none;\r\n      }\r\n      .mobile-meta { display: none; padding: 0; }\r\n      .mobile-name { font-size: 28px; font-weight: 750; margin: 0; color: #111; }\r\n      .mobile-line { font-size: 14px; color: var(--ink-soft); margin-top: 8px; text-transform: uppercase; letter-spacing: 0.05em; }\r\n      .mobile-line span { color: var(--ink-faint); margin-right: 8px; font-weight: 600; }\r\n      .controls { gap: 6px; }\r\n      .arrow-btn {\r\n        font-size: 28px;\r\n        padding: 0 6px;\r\n        flex: 0 0 auto;\r\n      }\r\n      .meta-line {\r\n        flex: 1 1 auto;\r\n        min-width: 0;\r\n        justify-content: center;\r\n        gap: 8px;\r\n        font-size: 12px;\r\n        letter-spacing: 0.08em;\r\n        white-space: normal;\r\n        flex-wrap: wrap;\r\n        row-gap: 4px;\r\n      }\r\n      .meta-sep { width: 28px; flex: 0 0 auto; }\r\n      #activeCategoryLabel,\r\n      #productCounter {\r\n        white-space: normal;\r\n        flex: 0 1 auto;\r\n        text-align: center;\r\n      }\r\n    }\r\n\r\n\r\n    @media (prefers-reduced-motion: reduce) {\r\n      *,\r\n      *::before,\r\n      *::after {\r\n        animation-duration: 1ms !important;\r\n        animation-iteration-count: 1 !important;\r\n        transition-duration: 1ms !important;\r\n        scroll-behavior: auto !important;\r\n      }\r\n    }\r\n\r\n    .i18n-source {\r\n      position: absolute;\r\n      width: 1px;\r\n      height: 1px;\r\n      margin: -1px;\r\n      padding: 0;\r\n      border: 0;\r\n      overflow: hidden;\r\n      clip: rect(0 0 0 0);\r\n      white-space: nowrap;\r\n      clip-path: inset(50%);\r\n    }\r\n\r\n    .mobile-meta { display: none; }\r\n  \r\n    @media (max-width: 920px) {\r\n      .lightbox {\r\n        display: block !important;\r\n        place-items: initial !important;\r\n        padding: 0 !important;\r\n        margin: 0 !important;\r\n        overflow-y: auto !important;\r\n        overflow-x: hidden !important;\r\n        background: rgba(9, 10, 11, 0.96) !important;\r\n      }\r\n      .lightbox-image,\r\n      .lightbox-image.is-zoomed {\r\n        display: block !important;\r\n        box-sizing: border-box !important;\r\n        width: 100vw !important;\r\n        min-width: 100vw !important;\r\n        max-width: 100vw !important;\r\n        height: auto !important;\r\n        max-height: none !important;\r\n        aspect-ratio: auto !important;\r\n        object-fit: contain !important;\r\n        object-position: center !important;\r\n        border-radius: 0 !important;\r\n        margin: 0 !important;\r\n        transform: none !important;\r\n        touch-action: pan-y !important;\r\n      }\r\n      .lightbox-close {\r\n        position: fixed !important;\r\n        top: max(16px, env(safe-area-inset-top, 0px)) !important;\r\n        right: max(16px, env(safe-area-inset-right, 0px)) !important;\r\n        z-index: 2147483648 !important;\r\n      }\r\n    }\r\n  <\/style>\r\n<\/head>\r\n<body data-page-key=\"wooden-ornament\">\r\n\r\n  <main class=\"catalog-app\" id=\"catalogApp\">\r\n    <header class=\"top-bar\">\r\n      <div class=\"brand-copy\">\r\n        <p class=\"brand-tag\">HUAYI Intelligent Manufacturing \/ Solid Wood OEM Factory<\/p>\r\n        <h1 class=\"brand-title\">\r\n          <span class=\"tone-dark\">Solid Wood Wooden Ornament<\/span>\r\n          <span class=\"tone-brand\">Manufacturer<\/span>\r\n        <\/h1>\r\n        <div class=\"intro-panel\">\r\n          <p class=\"brand-subtitle\">\r\n            Huayi develops wooden ornament programs for brands and wholesalers, from tabletop pieces to wall decor collections, with precise carving details, stable wood grading, and consistent finishing to balance visual appeal, durability, and scalable production.\r\n          <\/p>\r\n          <nav class=\"category-nav\" id=\"categoryNav\" aria-label=\"Product Categories\">\r\n            <a class=\"category-btn\" data-page-key=\"bedroom\" href=\"https:\/\/hywoodfurniture.com\/bedroom\/\">Bedroom<\/a>\r\n            <a class=\"category-btn\" data-page-key=\"living-room\" href=\"https:\/\/hywoodfurniture.com\/livingroom\/\">Living Room<\/a>\r\n            <a class=\"category-btn\" data-page-key=\"bathroom\" href=\"https:\/\/hywoodfurniture.com\/bathroom\/\">Bathroom<\/a>\r\n            <a class=\"category-btn\" data-page-key=\"study-room\" href=\"https:\/\/hywoodfurniture.com\/studyroom\/\">Study Room<\/a>\r\n            <a class=\"category-btn\" data-page-key=\"dining-room\" href=\"https:\/\/hywoodfurniture.com\/diningroom\/\">Dining Room<\/a>\r\n            <a class=\"category-btn\" data-page-key=\"wooden-ornament\" href=\"https:\/\/hywoodfurniture.com\/wooden-ornament\/\" aria-current=\"page\">Wooden Ornament<\/a>\r\n          <\/nav>\r\n        <\/div>\r\n      <\/div>\r\n    <\/header>\r\n\r\n    <section class=\"viewer\">\r\n      <div class=\"visual-wrap\">\r\n        <div class=\"spatial-stage\" id=\"spatialStage\">\r\n          <div class=\"layer-environment\" aria-hidden=\"true\"><\/div>\r\n\r\n          <button class=\"stage-visual\" id=\"stageVisual\" type=\"button\" aria-label=\"Open product image in fullscreen\" aria-controls=\"lightbox\">\r\n            <span class=\"stage-board\" id=\"stageBoard\">\r\n              <img class=\"stage-image stage-image-under\" id=\"stageImageUnder\" src=\"\" alt=\"\" decoding=\"async\" loading=\"eager\" \/>\r\n              <img class=\"stage-image stage-image-base\" id=\"stageImage\" src=\"\" alt=\"\" decoding=\"async\" loading=\"eager\" fetchpriority=\"high\" \/>\r\n\r\n              <span class=\"turn-sheet\" id=\"turnSheet\">\r\n                <span class=\"sheet-face sheet-front\">\r\n                  <img class=\"sheet-image\" id=\"sheetFrontImage\" src=\"\" alt=\"\" decoding=\"async\" loading=\"eager\" \/>\r\n                <\/span>\r\n                <span class=\"sheet-face sheet-back\">\r\n                  <img class=\"sheet-image\" id=\"sheetBackImage\" src=\"\" alt=\"\" decoding=\"async\" loading=\"eager\" \/>\r\n                <\/span>\r\n                <span class=\"sheet-shadow-layer\"><\/span>\r\n              <\/span>\r\n            <\/span>\r\n\r\n            <div class=\"image-overlay\" aria-hidden=\"true\">\r\n              <div class=\"overlay-plaque\">\r\n                <div class=\"overlay-inner\">\r\n                  <img loading=\"lazy\" class=\"overlay-brand-logo\" src=\"https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/04\/hy500.webp\" alt=\"HUAYI Logo\" width=\"500\" height=\"500\" loading=\"lazy\" decoding=\"async\" \/>\r\n                  <h2 class=\"overlay-name\" id=\"overlayName\"><\/h2>\r\n                  <p class=\"overlay-line\">\r\n                    <span class=\"meta-key\">Material<\/span>\r\n                    <span class=\"meta-value\" id=\"overlayMaterial\"><\/span>\r\n                  <\/p>\r\n                  <p class=\"overlay-line\">\r\n                    <span class=\"meta-key\">Dimensions<\/span>\r\n                    <span class=\"meta-value\" id=\"overlaySize\"><\/span>\r\n                  <\/p>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/button>\r\n          <button class=\"mobile-info-toggle\" id=\"mobileInfoToggle\" type=\"button\" aria-expanded=\"false\">Info<\/button>\r\n        <\/div>\r\n\r\n        <div class=\"mobile-meta\" id=\"mobileMeta\">\r\n          <h2 class=\"mobile-name\" id=\"mobileName\"><\/h2>\r\n          <p class=\"mobile-line\"><span>Material<\/span><span class=\"meta-value\" id=\"mobileMaterial\"><\/span><\/p>\r\n          <p class=\"mobile-line\"><span>Dimensions<\/span><span class=\"meta-value\" id=\"mobileSize\"><\/span><\/p>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"controls-plinth\">\r\n        <div class=\"controls\">\r\n          <button class=\"arrow-btn\" id=\"prevBtn\" type=\"button\" aria-label=\"Previous product\">&larr;<\/button>\r\n          <div class=\"meta-line\">\r\n            <span id=\"activeCategoryLabel\"><\/span>\r\n            <span class=\"meta-sep\"><\/span>\r\n            <span id=\"productCounter\" aria-live=\"polite\"><\/span>\r\n          <\/div>\r\n          <button class=\"arrow-btn\" id=\"nextBtn\" type=\"button\" aria-label=\"Next product\">&rarr;<\/button>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n  <\/main>\r\n\r\n  <div class=\"lightbox\" id=\"lightbox\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Fullscreen Product Preview\">\r\n    <button class=\"lightbox-close\" id=\"lightboxClose\" type=\"button\" aria-label=\"Close preview\">&times;<\/button>\r\n    <img class=\"lightbox-image\" id=\"lightboxImage\" src=\"\" alt=\"\" decoding=\"async\" loading=\"eager\" \/>\r\n  <\/div>\r\n\r\n  <section class=\"i18n-source\" id=\"i18nText\" aria-hidden=\"true\">\r\n    <p id=\"txtCategoryName\">Wooden Ornament<\/p>\r\n    <p id=\"txtOpenImagePrefix\">Open fullscreen image<\/p>\r\n    <p id=\"txtAltSuffix\">HUAYI OEM ODM<\/p>\r\n    <p id=\"txtPrevBtn\">Previous product<\/p>\r\n    <p id=\"txtNextBtn\">Next product<\/p>\r\n    <p id=\"txtLightboxLabel\">Fullscreen Product Preview<\/p>\r\n    <p id=\"txtClosePreview\">Close preview<\/p>\r\n    <p id=\"txtInfoShow\">Info<\/p>\r\n    <p id=\"txtInfoHide\">Hide Info<\/p>\r\n    <p id=\"txtSeoTitle\">Solid Wood Wooden Ornament Manufacturer | Huayi Intelligent Manufacturing<\/p>\r\n    <p id=\"txtSeoDescription\">Huayi is a solid wood wooden ornament manufacturer for OEM and ODM projects, supporting style development, sample confirmation, process traceability, export packaging plans, and after-sales coordination for B2B decorative programs.<\/p>\r\n    <p id=\"txtSchemaBrand\">HUAYI<\/p>\r\n  <\/section>\r\n\r\n    <section class=\"i18n-source\" id=\"catalogProductsData\" aria-hidden=\"true\">\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-1.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-1.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-4.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-4.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-10-2.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-10-2.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-9.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-9.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-15.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-15.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-6.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-6.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-7.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-7.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-3.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-3.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-13.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-13.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-10.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-10.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-12.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-12.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-5.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-5.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-8-2.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-8-2.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-8.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-8.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-11.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-11.webp<\/p>\r\n    <\/article>\r\n    <article class=\"product-item\">\r\n      <p class=\"product-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-5.webp<\/p>\r\n      <p class=\"product-detail-image\">https:\/\/hywoodfurniture.com\/wp-content\/uploads\/2026\/05\/Compress_1-5.webp<\/p>\r\n    <\/article>\r\n  <\/section>\r\n\r\n  <script>\r\n    (function () {\r\n      function t(id, fallback) {\r\n        var node = document.getElementById(id);\r\n        if (!node || !node.textContent) return fallback;\r\n        var value = node.textContent.trim();\r\n        return value || fallback;\r\n      }\r\n\r\n      function currentCategoryName() {\r\n        return t(\"txtCategoryName\", \"Wooden Ornament\");\r\n      }\r\n\r\n      function readProductList() {\r\n        return Array.prototype.map.call(\r\n          document.querySelectorAll(\"#catalogProductsData .product-item\"),\r\n          function (item) {\r\n            var fallbackImage = (item.querySelector(\".product-image\") || {}).textContent\r\n              ? item.querySelector(\".product-image\").textContent.trim()\r\n              : \"\";\r\n            var detailImage = (item.querySelector(\".product-detail-image\") || {}).textContent\r\n              ? item.querySelector(\".product-detail-image\").textContent.trim()\r\n              : \"\";\r\n\r\n            return {\r\n              name: \"\",\r\n              material: \"\",\r\n              size: \"\",\r\n              image: fallbackImage,\r\n              detailImage: detailImage || fallbackImage\r\n            };\r\n          }\r\n        ).filter(function (p) {\r\n          return p.image;\r\n        });\r\n      }\r\n\r\n      var productList = readProductList();\r\n\r\n      if (!productList.length) {\r\n        return;\r\n      }\r\n\r\n      var state = {\r\n        index: 0,\r\n        isAnimating: false,\r\n        isLightboxOpen: false,\r\n        isLightboxZoomed: false,\r\n        isHovering: false,\r\n        autoplayId: 0,\r\n        autoplayResumeId: 0,\r\n        turnDuration: 1400,\r\n        autoplayInterval: 4200,\r\n        touchStartX: 0,\r\n        touchStartY: 0,\r\n        suppressClickUntil: 0\r\n      };\r\n\r\n      var el = {\r\n        categoryNav: document.getElementById(\"categoryNav\"),\r\n        spatialStage: document.getElementById(\"spatialStage\"),\r\n        stageVisual: document.getElementById(\"stageVisual\"),\r\n        stageImage: document.getElementById(\"stageImage\"),\r\n        stageImageUnder: document.getElementById(\"stageImageUnder\"),\r\n        sheetFrontImage: document.getElementById(\"sheetFrontImage\"),\r\n        sheetBackImage: document.getElementById(\"sheetBackImage\"),\r\n        overlayName: document.getElementById(\"overlayName\"),\r\n        overlayMaterial: document.getElementById(\"overlayMaterial\"),\r\n        overlaySize: document.getElementById(\"overlaySize\"),\r\n        mobileName: document.getElementById(\"mobileName\"),\r\n        mobileMaterial: document.getElementById(\"mobileMaterial\"),\r\n        mobileSize: document.getElementById(\"mobileSize\"),\r\n        activeCategoryLabel: document.getElementById(\"activeCategoryLabel\"),\r\n        productCounter: document.getElementById(\"productCounter\"),\r\n        prevBtn: document.getElementById(\"prevBtn\"),\r\n        nextBtn: document.getElementById(\"nextBtn\"),\r\n        mobileInfoToggle: document.getElementById(\"mobileInfoToggle\"),\r\n        lightbox: document.getElementById(\"lightbox\"),\r\n        lightboxImage: document.getElementById(\"lightboxImage\"),\r\n        lightboxClose: document.getElementById(\"lightboxClose\"),\r\n        canonicalLink: document.getElementById(\"canonicalLink\"),\r\n        ldJson: document.getElementById(\"ldJson\"),\r\n        metaDescription: document.querySelector('meta[name=\"description\"]'),\r\n        ogTitle: document.getElementById(\"ogTitle\"),\r\n        ogDescription: document.getElementById(\"ogDescription\"),\r\n        ogImage: document.getElementById(\"ogImage\"),\r\n        ogUrl: document.getElementById(\"ogUrl\"),\r\n        twitterTitle: document.getElementById(\"twitterTitle\"),\r\n        twitterDescription: document.getElementById(\"twitterDescription\"),\r\n        twitterImage: document.getElementById(\"twitterImage\")\r\n      };\r\n\r\n      el.prevBtn.setAttribute(\"aria-label\", t(\"txtPrevBtn\", \"Previous product\"));\r\n      el.nextBtn.setAttribute(\"aria-label\", t(\"txtNextBtn\", \"Next product\"));\r\n      el.lightbox.setAttribute(\"aria-label\", t(\"txtLightboxLabel\", \"Fullscreen Product Preview\"));\r\n      el.lightboxClose.setAttribute(\"aria-label\", t(\"txtClosePreview\", \"Close preview\"));\r\n      if (el.mobileInfoToggle) {\r\n        el.mobileInfoToggle.textContent = t(\"txtInfoShow\", \"Info\");\r\n        el.mobileInfoToggle.setAttribute(\"aria-label\", t(\"txtInfoShow\", \"Info\"));\r\n      }\r\n\r\n      function readDuration(cssVarName, fallbackValue) {\r\n        var cssValue = getComputedStyle(document.documentElement).getPropertyValue(cssVarName) || \"\";\r\n        var parsed = parseInt(cssValue, 10);\r\n        return Number.isFinite(parsed) ? parsed : fallbackValue;\r\n      }\r\n\r\n      state.turnDuration = readDuration(\"--turn-duration\", state.turnDuration);\r\n      state.autoplayInterval = readDuration(\"--autoplay-interval\", state.autoplayInterval);\r\n\r\n      function isMobileView() {\r\n        return window.matchMedia(\"(max-width: 920px)\").matches;\r\n      }\r\n\r\n      function setMobileInfoOpen(open) {\r\n        if (!el.mobileInfoToggle || !el.spatialStage) return;\r\n        var nextOpen = !!open && isMobileView();\r\n        el.spatialStage.classList.toggle(\"mobile-info-open\", nextOpen);\r\n        el.mobileInfoToggle.setAttribute(\"aria-expanded\", nextOpen ? \"true\" : \"false\");\r\n        var txt = nextOpen ? t(\"txtInfoHide\", \"Hide Info\") : t(\"txtInfoShow\", \"Info\");\r\n        el.mobileInfoToggle.textContent = txt;\r\n        el.mobileInfoToggle.setAttribute(\"aria-label\", txt);\r\n\r\n        if (isMobileView()) {\r\n          if (nextOpen) {\r\n            window.clearTimeout(state.autoplayResumeId);\r\n            stopAutoplay();\r\n          } else if (!state.isLightboxOpen && !state.isHovering) {\r\n            startAutoplay();\r\n          }\r\n        }\r\n      }\r\n\r\n      function enforceMobileLightboxLayout() {\r\n        if (!el.lightbox || !el.lightboxImage) {\r\n          return;\r\n        }\r\n\r\n        if (isMobileView()) {\r\n          el.lightbox.style.setProperty(\"display\", \"block\", \"important\");\r\n          el.lightbox.style.setProperty(\"padding\", \"0\", \"important\");\r\n          el.lightbox.style.setProperty(\"margin\", \"0\", \"important\");\r\n          el.lightbox.style.setProperty(\"overflow-y\", \"auto\", \"important\");\r\n          el.lightbox.style.setProperty(\"overflow-x\", \"hidden\", \"important\");\r\n          el.lightbox.style.setProperty(\"place-items\", \"initial\", \"important\");\r\n\r\n          el.lightboxImage.style.setProperty(\"display\", \"block\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"box-sizing\", \"border-box\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"width\", \"100vw\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"min-width\", \"100vw\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"max-width\", \"100vw\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"height\", \"auto\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"max-height\", \"none\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"aspect-ratio\", \"auto\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"object-fit\", \"contain\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"object-position\", \"center\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"border-radius\", \"0\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"margin\", \"0\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"transform\", \"none\", \"important\");\r\n          el.lightboxImage.style.setProperty(\"touch-action\", \"pan-y\", \"important\");\r\n        } else {\r\n          el.lightbox.removeAttribute(\"style\");\r\n          el.lightboxImage.removeAttribute(\"style\");\r\n        }\r\n      }\r\n      function currentProduct() {\r\n        return productList[state.index];\r\n      }\r\n\r\n      function setImageSource(node, src, fallbackSrc) {\r\n        if (!node || !src) {\r\n          return;\r\n        }\r\n\r\n        var safeFallback = fallbackSrc && fallbackSrc !== src ? fallbackSrc : \"\";\r\n        if (safeFallback) {\r\n          node.onerror = function () {\r\n            node.onerror = null;\r\n            if (node.getAttribute(\"src\") !== safeFallback) {\r\n              node.setAttribute(\"src\", safeFallback);\r\n            }\r\n          };\r\n        } else {\r\n          node.onerror = null;\r\n        }\r\n\r\n        if (node.getAttribute(\"src\") !== src) {\r\n          node.setAttribute(\"src\", src);\r\n        }\r\n      }\r\n\r\n      function syncStageImages(src, fallbackSrc) {\r\n        setImageSource(el.stageImage, src, fallbackSrc);\r\n        setImageSource(el.stageImageUnder, src, fallbackSrc);\r\n        setImageSource(el.sheetFrontImage, src, fallbackSrc);\r\n        setImageSource(el.sheetBackImage, src, fallbackSrc);\r\n      }\r\n\r\n      function updateUI(product) {\r\n        var p = product || currentProduct();\r\n        if (!p) {\r\n          return;\r\n        }\r\n\r\n        var altText = currentCategoryName() + \" | \" + t(\"txtAltSuffix\", \"HUAYI OEM ODM\");\r\n\r\n        el.overlayName.textContent = \"\";\r\n        el.overlayMaterial.textContent = \"\";\r\n        el.overlaySize.textContent = \"\";\r\n\r\n        el.mobileName.textContent = \"\";\r\n        el.mobileMaterial.textContent = \"\";\r\n        el.mobileSize.textContent = \"\";\r\n\r\n        el.activeCategoryLabel.textContent = currentCategoryName();\r\n        el.productCounter.textContent = (state.index + 1) + \" \/ \" + productList.length;\r\n\r\n        el.stageImage.setAttribute(\"alt\", altText);\r\n        el.stageImageUnder.setAttribute(\"alt\", altText);\r\n        el.sheetFrontImage.setAttribute(\"alt\", altText);\r\n        el.sheetBackImage.setAttribute(\"alt\", altText);\r\n        el.lightboxImage.setAttribute(\"alt\", altText);\r\n\r\n        el.stageVisual.setAttribute(\"aria-label\", currentCategoryName() + \" image carousel\");\r\n\r\n        var navDisabled = productList.length < 2;\r\n        el.prevBtn.disabled = navDisabled;\r\n        el.nextBtn.disabled = navDisabled;\r\n      }\r\n\r\n      function prefetchNeighbors() {\r\n        if (productList.length < 2) {\r\n          return;\r\n        }\r\n\r\n        var nextIndex = (state.index + 1) % productList.length;\r\n        var prevIndex = (state.index - 1 + productList.length) % productList.length;\r\n\r\n        [productList[nextIndex].image, productList[prevIndex].image].forEach(function (src) {\r\n          var img = new Image();\r\n          img.decoding = \"async\";\r\n          img.src = src;\r\n        });\r\n      }\r\n\r\n      function applyStatic(product) {\r\n        syncStageImages(product.image, product.detailImage || product.image);\r\n        updateUI(product);\r\n        prefetchNeighbors();\r\n      }\r\n\r\n      function animateMobileSwap(nextProduct) {\r\n        state.isAnimating = true;\r\n\r\n        el.stageVisual.classList.remove(\"is-turning\", \"turn-active\", \"dir-next\", \"dir-prev\");\r\n        setImageSource(el.stageImageUnder, nextProduct.image, nextProduct.detailImage || nextProduct.image);\r\n        el.stageVisual.classList.add(\"mobile-fading\");\r\n\r\n        window.setTimeout(function () {\r\n          setImageSource(el.stageImage, nextProduct.image, nextProduct.detailImage || nextProduct.image);\r\n          updateUI(nextProduct);\r\n          prefetchNeighbors();\r\n        }, 160);\r\n\r\n        window.setTimeout(function () {\r\n          el.stageVisual.classList.remove(\"mobile-fading\");\r\n          state.isAnimating = false;\r\n        }, 340);\r\n      }\r\n\r\n      function animateTurn(dir, nextProduct) {\r\n        if (state.isAnimating) {\r\n          return;\r\n        }\r\n\r\n        if (isMobileView()) {\r\n          animateMobileSwap(nextProduct);\r\n          return;\r\n        }\r\n\r\n        state.isAnimating = true;\r\n\r\n        el.stageVisual.classList.remove(\"dir-next\", \"dir-prev\");\r\n        el.stageVisual.classList.add(dir === 1 ? \"dir-next\" : \"dir-prev\");\r\n\r\n        setImageSource(el.stageImageUnder, nextProduct.image, nextProduct.detailImage || nextProduct.image);\r\n        setImageSource(el.sheetFrontImage, el.stageImage.getAttribute(\"src\"));\r\n        setImageSource(el.sheetBackImage, nextProduct.image, nextProduct.detailImage || nextProduct.image);\r\n\r\n        el.stageVisual.classList.add(\"is-turning\");\r\n\r\n        requestAnimationFrame(function () {\r\n          requestAnimationFrame(function () {\r\n            el.stageVisual.classList.add(\"turn-active\");\r\n          });\r\n        });\r\n\r\n        window.setTimeout(function () {\r\n          setImageSource(el.stageImage, nextProduct.image, nextProduct.detailImage || nextProduct.image);\r\n          updateUI(nextProduct);\r\n          prefetchNeighbors();\r\n        }, Math.max(40, Math.round(state.turnDuration * 0.5)));\r\n\r\n        window.setTimeout(function () {\r\n          el.stageVisual.classList.remove(\"is-turning\", \"turn-active\");\r\n          state.isAnimating = false;\r\n        }, state.turnDuration + 60);\r\n      }\r\n\r\n      function navigate(dir) {\r\n        if (state.isAnimating || productList.length < 2) {\r\n          return false;\r\n        }\r\n\r\n        var nextIndex = (state.index + dir + productList.length) % productList.length;\r\n        state.index = nextIndex;\r\n        animateTurn(dir, productList[nextIndex]);\r\n        return true;\r\n      }\r\n\r\n      function stopAutoplay() {\r\n        if (state.autoplayId) {\r\n          window.clearInterval(state.autoplayId);\r\n          state.autoplayId = 0;\r\n        }\r\n      }\r\n\r\n      function startAutoplay() {\r\n        stopAutoplay();\r\n\r\n        if (productList.length < 2 || state.isLightboxOpen || state.isHovering) {\r\n          return;\r\n        }\r\n\r\n        state.autoplayId = window.setInterval(function () {\r\n          if (!state.isAnimating && !state.isLightboxOpen && !state.isHovering) {\r\n            navigate(1);\r\n          }\r\n        }, state.autoplayInterval);\r\n      }\r\n\r\n      function resumeAutoplayWithDelay() {\r\n        window.clearTimeout(state.autoplayResumeId);\r\n\r\n        if (productList.length < 2) {\r\n          return;\r\n        }\r\n\r\n        state.autoplayResumeId = window.setTimeout(function () {\r\n          if (!state.isLightboxOpen && !state.isHovering) {\r\n            startAutoplay();\r\n          }\r\n        }, state.autoplayInterval);\r\n      }\r\n\r\n      function handleManualNavigate(dir) {\r\n        if (isMobileView()) {\r\n          setMobileInfoOpen(false);\r\n        }\r\n        if (navigate(dir)) {\r\n          stopAutoplay();\r\n          resumeAutoplayWithDelay();\r\n        }\r\n      }\r\n\r\n      function openLightbox() {\r\n        var p = currentProduct();\r\n        if (!p) {\r\n          return;\r\n        }\r\n\r\n        setMobileInfoOpen(false);\r\n        resetLightboxZoom();\r\n        setImageSource(el.lightboxImage, p.detailImage || p.image);\r\n        enforceMobileLightboxLayout();\r\n        el.lightbox.classList.add(\"is-open\");\r\n        state.isLightboxOpen = true;\r\n        enforceMobileLightboxLayout();\r\n\r\n        if (!isMobileView()) {\r\n          document.documentElement.style.overflow = \"hidden\";\r\n          document.body.style.overflow = \"hidden\";\r\n        }\r\n        setLightboxZoom(hoverQuery.matches);\r\n        stopAutoplay();\r\n      }\r\n\r\n      function closeLightbox() {\r\n        if (!state.isLightboxOpen) {\r\n          return;\r\n        }\r\n\r\n        resetLightboxZoom();\r\n        el.lightbox.classList.remove(\"is-open\");\r\n        state.isLightboxOpen = false;\r\n        enforceMobileLightboxLayout();\r\n\r\n        if (!isMobileView()) {\r\n          document.documentElement.style.overflow = \"\";\r\n          document.body.style.overflow = \"\";\r\n        }\r\n\r\n        if (!state.isHovering) {\r\n          startAutoplay();\r\n        }\r\n      }\r\n\r\n      function resetLightboxZoom() {\r\n        setLightboxZoom(false);\r\n        el.lightbox.scrollTop = 0;\r\n        el.lightbox.scrollLeft = 0;\r\n      }\r\n\r\n      function setLightboxZoom(zoomed) {\r\n        state.isLightboxZoomed = !!zoomed;\r\n        el.lightboxImage.classList.toggle(\"is-zoomed\", state.isLightboxZoomed);\r\n      }\r\n\r\n      function toggleLightboxZoom() {\r\n        if (!state.isLightboxOpen || !hoverQuery.matches) {\r\n          return;\r\n        }\r\n\r\n        setLightboxZoom(!state.isLightboxZoomed);\r\n\r\n        if (!state.isLightboxZoomed) {\r\n          el.lightbox.scrollTop = 0;\r\n          el.lightbox.scrollLeft = 0;\r\n        }\r\n      }\r\n\r\n      function applySeoMeta() {\r\n        var primary = currentProduct();\r\n        if (!primary) {\r\n          return;\r\n        }\r\n\r\n        var pageTitle = t(\"txtSeoTitle\", document.title);\r\n        var pageDescription = t(\"txtSeoDescription\", (el.metaDescription ? el.metaDescription.getAttribute(\"content\") : \"\"));\r\n\r\n        document.title = pageTitle;\r\n\r\n        if (el.metaDescription) {\r\n          el.metaDescription.setAttribute(\"content\", pageDescription);\r\n        }\r\n\r\n        if (el.ogTitle) el.ogTitle.setAttribute(\"content\", pageTitle);\r\n        if (el.ogDescription) el.ogDescription.setAttribute(\"content\", pageDescription);\r\n        if (el.ogImage) el.ogImage.setAttribute(\"content\", primary.image);\r\n\r\n        if (el.twitterTitle) el.twitterTitle.setAttribute(\"content\", pageTitle);\r\n        if (el.twitterDescription) el.twitterDescription.setAttribute(\"content\", pageDescription);\r\n        if (el.twitterImage) el.twitterImage.setAttribute(\"content\", primary.image);\r\n\r\n        var canonicalUrl = \"https:\/\/hywoodfurniture.com\/wooden-ornament\/\";\r\n\r\n        if (el.canonicalLink && canonicalUrl) {\r\n          el.canonicalLink.setAttribute(\"href\", canonicalUrl);\r\n        }\r\n\r\n        if (el.ogUrl && canonicalUrl) {\r\n          el.ogUrl.setAttribute(\"content\", canonicalUrl);\r\n        }\r\n\r\n        if (el.ldJson) {\r\n          var ldPayload = {\r\n            \"@context\": \"https:\/\/schema.org\",\r\n            \"@type\": \"CollectionPage\",\r\n            \"name\": pageTitle,\r\n            \"description\": pageDescription,\r\n            \"url\": canonicalUrl,\r\n            \"mainEntity\": {\r\n              \"@type\": \"Product\",\r\n              \"name\": primary.name,\r\n              \"image\": primary.image,\r\n              \"material\": primary.material,\r\n              \"size\": primary.size,\r\n              \"category\": currentCategoryName(),\r\n              \"brand\": {\r\n                \"@type\": \"Brand\",\r\n                \"name\": t(\"txtSchemaBrand\", \"HUAYI\")\r\n              }\r\n            }\r\n          };\r\n\r\n          el.ldJson.textContent = JSON.stringify(ldPayload);\r\n        }\r\n      }\r\n\r\n      function syncGuideCategoryNav() {\r\n        var pageKey = (document.body.getAttribute(\"data-page-key\") || \"wooden-ornament\").toLowerCase();\r\n        var links = el.categoryNav.querySelectorAll(\".category-btn[data-page-key]\");\r\n\r\n        Array.prototype.forEach.call(links, function (link) {\r\n          var linkKey = (link.getAttribute(\"data-page-key\") || \"\").toLowerCase();\r\n          var isActive = linkKey === pageKey;\r\n          link.classList.toggle(\"is-active\", isActive);\r\n          if (isActive) {\r\n            link.setAttribute(\"aria-current\", \"page\");\r\n          } else {\r\n            link.removeAttribute(\"aria-current\");\r\n          }\r\n        });\r\n      }\r\n\r\n      function refreshTranslatedContent() {\r\n        var refreshed = readProductList();\r\n        if (refreshed.length) {\r\n          productList = refreshed;\r\n          if (state.index >= productList.length) {\r\n            state.index = 0;\r\n          }\r\n        }\r\n\r\n        el.prevBtn.setAttribute(\"aria-label\", t(\"txtPrevBtn\", \"Previous product\"));\r\n        el.nextBtn.setAttribute(\"aria-label\", t(\"txtNextBtn\", \"Next product\"));\r\n        el.lightbox.setAttribute(\"aria-label\", t(\"txtLightboxLabel\", \"Fullscreen Product Preview\"));\r\n        el.lightboxClose.setAttribute(\"aria-label\", t(\"txtClosePreview\", \"Close preview\"));\r\n        setMobileInfoOpen(el.spatialStage.classList.contains(\"mobile-info-open\"));\r\n\r\n        syncGuideCategoryNav();\r\n        applyStatic(currentProduct());\r\n        applySeoMeta();\r\n      }\r\n\r\n      var hoverQuery = window.matchMedia(\"(hover: hover) and (pointer: fine)\");\r\n      if (hoverQuery.matches) {\r\n        el.stageVisual.addEventListener(\"mouseenter\", function () {\r\n          state.isHovering = true;\r\n          stopAutoplay();\r\n        });\r\n\r\n        el.stageVisual.addEventListener(\"mouseleave\", function () {\r\n          state.isHovering = false;\r\n          if (!state.isLightboxOpen) {\r\n            startAutoplay();\r\n          }\r\n        });\r\n      }\r\n\r\n      el.nextBtn.addEventListener(\"click\", function () { handleManualNavigate(1); });\r\n      el.prevBtn.addEventListener(\"click\", function () { handleManualNavigate(-1); });\r\n\r\n      if (el.mobileInfoToggle) {\r\n        el.mobileInfoToggle.addEventListener(\"click\", function (event) {\r\n          event.preventDefault();\r\n          event.stopPropagation();\r\n          var isOpen = el.spatialStage.classList.contains(\"mobile-info-open\");\r\n          setMobileInfoOpen(!isOpen);\r\n        });\r\n      }\r\n\r\n      el.stageVisual.addEventListener(\"click\", function () {\r\n        if (Date.now() < state.suppressClickUntil) {\r\n          return;\r\n        }\r\n        if (isMobileView() && el.spatialStage.classList.contains(\"mobile-info-open\")) {\r\n          setMobileInfoOpen(false);\r\n        }\r\n      });\r\n\r\n      el.lightboxClose.addEventListener(\"click\", closeLightbox);\r\n      el.lightboxImage.addEventListener(\"click\", function (event) {\r\n        event.stopPropagation();\r\n        toggleLightboxZoom();\r\n      });\r\n      el.lightbox.addEventListener(\"click\", function (event) {\r\n        if (event.target === el.lightbox) {\r\n          closeLightbox();\r\n        }\r\n      });\r\n\r\n      el.spatialStage.addEventListener(\"touchstart\", function (event) {\r\n        if (!event.touches || event.touches.length !== 1) {\r\n          return;\r\n        }\r\n\r\n        state.touchStartX = event.touches[0].clientX;\r\n        state.touchStartY = event.touches[0].clientY;\r\n      }, { passive: true });\r\n\r\n      el.spatialStage.addEventListener(\"touchend\", function (event) {\r\n        if (!event.changedTouches || event.changedTouches.length !== 1) {\r\n          return;\r\n        }\r\n\r\n        var touch = event.changedTouches[0];\r\n        var dx = touch.clientX - state.touchStartX;\r\n        var dy = touch.clientY - state.touchStartY;\r\n\r\n        if (Math.abs(dx) > 46 && Math.abs(dx) > Math.abs(dy) * 1.15) {\r\n          state.suppressClickUntil = Date.now() + 320;\r\n          handleManualNavigate(dx < 0 ? 1 : -1);\r\n        }\r\n      }, { passive: true });\r\n\r\n      window.addEventListener(\"resize\", function () {\r\n        enforceMobileLightboxLayout();\r\n\r\n        if (!isMobileView()) {\r\n          setMobileInfoOpen(false);\r\n        }\r\n      });\r\n\r\n      document.addEventListener(\"keydown\", function (event) {\r\n        if (event.key === \"Escape\" && state.isLightboxOpen) {\r\n          closeLightbox();\r\n          return;\r\n        }\r\n\r\n        if (state.isLightboxOpen) {\r\n          return;\r\n        }\r\n\r\n        if (event.key === \"ArrowRight\") {\r\n          event.preventDefault();\r\n          handleManualNavigate(1);\r\n        } else if (event.key === \"ArrowLeft\") {\r\n          event.preventDefault();\r\n          handleManualNavigate(-1);\r\n        }\r\n      });\r\n\r\n      var i18nObserverTarget = document.getElementById(\"i18nText\");\r\n      var productsObserverTarget = document.getElementById(\"catalogProductsData\");\r\n      if (typeof MutationObserver !== \"undefined\") {\r\n        var localeObserver = new MutationObserver(function () {\r\n          refreshTranslatedContent();\r\n        });\r\n\r\n        if (i18nObserverTarget) {\r\n          localeObserver.observe(i18nObserverTarget, { childList: true, subtree: true, characterData: true });\r\n        }\r\n        if (productsObserverTarget) {\r\n          localeObserver.observe(productsObserverTarget, { childList: true, subtree: true, characterData: true });\r\n        }\r\n      }\r\n\r\n      refreshTranslatedContent();\r\n      startAutoplay();\r\n    })();\r\n  <\/script>\r\n<\/body>\r\n<\/html>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\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>Huayi produces wooden ornaments and decorative accessories for B2B collections, combining solid wood craftsmanship, consistent finishing, and scalable OEM supply.<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","footnotes":""},"class_list":["post-2530","page","type-page","status-publish","hentry"],"blocksy_meta":[],"acf":[],"_links":{"self":[{"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/pages\/2530","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/comments?post=2530"}],"version-history":[{"count":38,"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/pages\/2530\/revisions"}],"predecessor-version":[{"id":2987,"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/pages\/2530\/revisions\/2987"}],"wp:attachment":[{"href":"https:\/\/hywoodfurniture.com\/pl\/wp-json\/wp\/v2\/media?parent=2530"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}