{"id":4265,"date":"2026-06-08T11:37:10","date_gmt":"2026-06-08T09:37:10","guid":{"rendered":"https:\/\/www.norki.com\/sur-mesure\/?page_id=4265"},"modified":"2026-06-10T11:19:19","modified_gmt":"2026-06-10T09:19:19","slug":"bespoke-interior-design-studio-furniture-rugs","status":"publish","type":"page","link":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/","title":{"rendered":"Design Studio"},"content":{"rendered":"\n<style>\n    .norki-montage {\n        width: 100%;\n        position: relative;\n        background-color: var(--color-norki-beige);\n        overflow: hidden; \n        line-height: 0; \n        z-index: 10;\n    }\n\n    .norki-montage__img {\n        width: 100%;\n        height: auto;\n        display: block;\n        transform-origin: left top;\n    }\n\n    \/* ==========================================================================\n       INDICATEUR DE DEFILEMENT (SCROLL INDICATOR)\n       ========================================================================== *\/\n    .norki-montage__scroll {\n        position: fixed; \/* MODIFI\u00c9 : passe de absolute \u00e0 fixed *\/\n        bottom: 40px;\n        left: 50%;\n        transform: translateX(-50%);\n        display: inline-flex;\n        align-items: center;\n        gap: 12px;\n        padding: 14px 28px;\n        backdrop-filter: blur(10px);\n        -webkit-backdrop-filter: blur(10px);\n        border-radius: 50px;\n        text-decoration: none;\n        box-shadow: 0 10px 30px rgba(80, 66, 61, 0.18);\n        cursor: pointer;\n        z-index: 10; \/* \u00c9lev\u00e9 pour rester au-dessus du contenu au scroll *\/\n        transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s ease, visibility 0.3s ease;\n        animation: norkiFloat 3s ease-in-out infinite;\n        user-select: none;\n        opacity: 1;\n        visibility: visible;\n\n        background-color: var(--color-norki-brown);\n        color: #ffffff;\n        border: 1px solid var(--color-norki-brown);\n    }\n\n    .norki-montage__scroll.is-hidden {\n        opacity: 0;\n        visibility: hidden;\n        pointer-events: none; \/* Emp\u00eache le clic quand c'est cach\u00e9 *\/\n        transform: translateX(-50%) translateY(20px); \/* Glisse l\u00e9g\u00e8rement vers le bas en disparaissant *\/\n        animation: none; \/* Stoppe l'animation de flottaison *\/\n    }\n\n    .norki-montage__scroll:hover {\n        box-shadow: 0 15px 35px rgba(80, 66, 61, 0.3);\n        transform: translateX(-50%) translateY(-3px);\n\n        border: 1px solid rgba(80, 66, 61, 0.15);\n        color: var(--color-norki-brown);\n        background-color: rgba(248, 240, 234, 0.85); \n    }\n\n    .norki-montage__scroll-text {\n        font-family: \"AvenirBook\", \"Montserrat\", sans-serif;\n        font-size: 0.85rem;\n        font-weight: 500;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        line-height: 1;\n    }\n\n    .norki-montage__scroll-icon {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 14px;\n        height: 14px;\n        transition: transform 0.4s ease;\n    }\n\n    .norki-montage__scroll-icon svg {\n        width: 100%;\n        height: auto;\n        fill: currentColor;\n    }\n\n    .norki-montage__scroll:hover .norki-montage__scroll-icon {\n        transform: translateY(4px);\n    }\n\n    \/* Animations de flottaison \u00e9l\u00e9gante *\/\n    @keyframes norkiFloat {\n        0%, 100% {\n            transform: translateX(-50%) translateY(0);\n        }\n        50% {\n            transform: translateX(-50%) translateY(-10px);\n        }\n    }\n\n    \/* ==========================================================================\n       RESPONSIVE - TABLETTE & MOBILE\n       ========================================================================== *\/\n    @media (max-width: 1024px) {\n        .norki-montage__img {\n            width: 142%; \n            max-width: none;\n            margin-left: 0;\n        }\n        .norki-montage__scroll {\n            bottom: 30px;\n            padding: 12px 22px;\n        }\n        .norki-montage__scroll-text {\n            font-size: 0.75rem;\n            letter-spacing: 0.1em;\n        }\n    }\n\n    @media (max-width: 600px) {\n        .norki-montage__scroll {\n            bottom: 65px;\n            width: calc(100% - 40px); \/* Version pleine largeur sur petit mobile *\/\n            max-width: 290px;\n            justify-content: center;\n            box-shadow: 0 8px 25px rgba(80, 66, 61, 0.15);\n        }\n    }\n<\/style>\n\n<section class=\"norki-montage\" id=\"section-montage-bureau\">\n    <!-- L'image de marque principale (LCP) -->\n    <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Montage-Bureau-Etudes.jpg\" alt=\"Norki Design Studio Montage\" class=\"norki-montage__img\" fetchpriority=\"high\" loading=\"eager\">\n\n    <!-- Bouton interactif d'appel au scroll -->\n    <a href=\"#next-section\" class=\"norki-montage__scroll\" id=\"norki-scroll-trigger\" aria-label=\"Scroll down to site content\">\n        <span class=\"norki-montage__scroll-text\">Discover the Design Studio<\/span>\n        <span class=\"norki-montage__scroll-icon\">\n            <svg viewBox=\"0 0 24 24\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path d=\"M11 4v12.59l-5.3-5.3a1 1 0 10-1.4 1.42l7 7a1 1 0 001.4 0l7-7a1 1 0 00-1.4-1.42L13 16.59V4a1 1 0 10-2 0z\"><\/path>\n            <\/svg>\n        <\/span>\n    <\/a>\n<\/section>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function () {\n        const scrollBtn = document.getElementById(\"norki-scroll-trigger\");\n        \n        if (scrollBtn) {\n            scrollBtn.addEventListener(\"click\", function (e) {\n                e.preventDefault();\n                \n                const montageSection = document.getElementById(\"section-montage-bureau\");\n                const nextSection = document.getElementById(\"next-section\");\n                \n                if (montageSection && nextSection) {\n                    \/\/ Hauteur de la premi\u00e8re section (le montage)\n                    const montageHeight = montageSection.offsetHeight;\n                    \n                    \/\/ Hauteur de la fen\u00eatre d'affichage (viewport)\n                    const viewportHeight = window.innerHeight;\n                    \n                    \/\/ Calcul de la moiti\u00e9 de la hauteur de la section suivante (pour s'arr\u00eater \u00e0 moiti\u00e9 dessus)\n                    const nextSectionHalf = nextSection.offsetHeight \/ 4;\n                    \n                    \/\/ Position cible : Fin du montage + une petite marge esth\u00e9tique (environ 150px) pour d\u00e9voiler le d\u00e9but du contenu\n                    const scrollTarget = montageHeight - 150;\n\n                    window.scrollTo({\n                        top: scrollTarget,\n                        behavior: \"smooth\"\n                    });\n                }\n            });\n        }\n    });\n<\/script>\n\n\n\n<style>\n  \/* ==========================================================================\n     SECTION SLIDER OBJKETS NORKI\n     ========================================================================== *\/\n  .nk-slider-section {\n    z-index: 20;\n    position: relative;\n    background-color: var(--color-norki-beige, #f8f0ea);\n    color: #000000;\n    font-family: var(--font-montserrat, sans-serif);\n    padding-top: 40px;\n    padding-bottom: 40px;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  .nk-slider-section * {\n    box-sizing: border-box;\n  }\n\n  .nk-slider-container {\n    padding: 0 var(--section-pad-h-dt, 5vw);\n  }\n\n  .nk-slider-header {\n    display: flex;\n    justify-content: space-between;\n    align-items: flex-end;\n    margin-bottom: 40px;\n  }\n\n  .nk-slider-btn {\n    display: inline-block;\n    background-color: transparent;\n    color: #000000;\n    border: 1px solid #000000;\n    text-decoration: none;\n    padding: 6px 27px;\n    font-size: 0.9rem;\n    font-weight: 500;\n    transition: all 0.3s ease;\n  }\n\n  .nk-slider-btn:hover {\n    background-color: #000000;\n    color: #ffffff;\n  }\n\n  .nk-slider-arrows {\n    display: flex !important;\n    gap: 15px;\n    visibility: visible !important;\n    opacity: 1 !important;\n  }\n\n  .nk-slider-arrows button {\n    background: transparent;\n    border: none;\n    color: #000000;\n    cursor: pointer;\n    padding: 5px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    opacity: 1 !important;\n    transition: opacity 0.3s ease;\n  }\n\n  @media (hover: hover) {\n    .nk-slider-arrows button:hover {\n      opacity: 0.5 !important;\n    }\n  }\n\n  .nk-slider-arrows button:active {\n    opacity: 0.5 !important;\n  }\n\n  .nk-slider-arrows svg {\n    width: 28px;\n    height: 28px;\n    fill: none;\n    color: black;\n    stroke: currentColor;\n    stroke-width: 1.2;\n  }\n\n  .nk-slider-wrapper {\n    position: relative;\n    width: 100%;\n  }\n\n  .nk-slider-viewport {\n    overflow: hidden;\n    touch-action: pan-y;\n  }\n\n  .nk-slider-track {\n    display: flex;\n    will-change: transform;\n  }\n\n  .nk-slider-slide {\n    flex: 0 0 20%;\n    display: flex;\n    flex-direction: column;\n    padding: 0 4px;\n  }\n\n  \/* --- DA Zoom 1.03 au survol sur l'image parent --- *\/\n  .nk-slider-img-link {\n    display: block;\n    width: 100%;\n    text-decoration: none;\n    cursor: pointer;\n    overflow: hidden; \/* Masque le zoom sur les bords *\/\n  }\n\n  .nk-slider-slide img {\n    width: 100%;\n    aspect-ratio: 1 \/ 1.05;\n    object-fit: cover;\n    display: block;\n    background-color: #eee;\n    opacity: 0;\n    transform: scale(1); \/* Initialise la taille *\/\n    transition: opacity 0.5s ease-in-out, transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n  }\n\n  .nk-slider-slide img.nk-slider-loaded {\n    opacity: 1;\n  }\n\n  \/* Zoom interactif progressif de la DA *\/\n  .nk-slider-img-link:hover img {\n    transform: scale(1.03);\n  }\n\n  .nk-slider-caption {\n    display: flex;\n    justify-content: flex-start;\n    gap: 20px;\n    padding: 15px 0;\n    font-size: 0.85rem;\n    padding-left: 23px; \n  }\n\n  .nk-slider-caption span {\n    font-weight: 500;\n    color: #000000;\n  }\n\n  .nk-slider-caption a {\n    color: #000000;\n    text-decoration: underline;\n    text-underline-offset: 3px;\n    transition: text-decoration-color 0.3s ease,opacity 0.3s ease;\n  }\n\n  .nk-slider-caption a:hover {\n    opacity: 0.7;\n    text-decoration-color: #fff0;\n  }\n\n  \/* --- RESPONSIVE TABLETTE (< 1024px) --- *\/\n  @media (max-width: 1024px) {\n    .nk-slider-section {\n      padding-top: 40px;\n    }\n    .nk-slider-container {\n      padding: 0 var(--section-pad-h-tab, 4vw);\n    }\n    .nk-slider-slide {\n      flex: 0 0 50%;\n    }\n  }\n\n  \/* --- RESPONSIVE MOBILE (< 768px) --- *\/\n  @media (max-width: 768px) {\n    .nk-slider-section {\n      padding-top: 25px;\n    }\n    .nk-slider-container {\n      padding: 0 var(--section-pad-h-mob, 20px);\n    }\n    .nk-slider-header {\n      display: flex;\n      flex-direction: row;\n      align-items: center;\n      justify-content: space-between;\n      margin-bottom: 25px;\n      gap: 15px;\n    }\n    .nk-slider-slide {\n      flex: 0 0 100%;\n      padding: 0;\n    }\n    .nk-slider-slide img {\n      aspect-ratio: 1 \/ 1;\n    }\n    .nk-slider-caption {\n      flex-direction: row;\n      justify-content: space-between;\n      padding: 15px 20px;\n    }\n  }\n<\/style>\n\n<section class=\"nk-slider-section\">\n  <div class=\"nk-slider-container\">\n    \n    <div class=\"nk-slider-header\">\n      <a href=\"https:\/\/www.norki.com\/en\/\" class=\"nk-slider-btn\">Shop Norki Objects<\/a>\n      <div class=\"nk-slider-arrows\">\n        <button class=\"nk-slider-prev\" aria-label=\"Previous slide\">\n          <svg viewBox=\"0 0 24 24\"><path d=\"M15 18l-6-6 6-6\"><\/path><\/svg>\n        <\/button>\n        <button class=\"nk-slider-next\" aria-label=\"Next slide\">\n          <svg viewBox=\"0 0 24 24\"><path d=\"M9 18l6-6-6-6\"><\/path><\/svg>\n        <\/button>\n      <\/div>\n    <\/div>\n    \n  <\/div> \n\n  <div class=\"nk-slider-wrapper\">\n    <div class=\"nk-slider-viewport\">\n      <div class=\"nk-slider-track\">\n        \n        <!-- Slide 1 : Fauteuil Coco Blanc -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/119-coco-white-sheepskin-armchair-norki.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/Assise_Photo-Principale-Fauteuil-Coco-Blanc-rase_NORKI-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"White Coco Armchair\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>White Coco Armchair<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/119-coco-white-sheepskin-armchair-norki.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n        \n        <!-- Slide 2 : Coussin Fluxus Blanc -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/high-end-designer-cushion\/83-white-fluxus-cushion-norki-cloud-curly-lambskin.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/Coussin_Photo-Principale-Fluxus-blanc_NORKI-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"White Fluxus Cushion\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>White Fluxus Cushion<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/high-end-designer-cushion\/83-white-fluxus-cushion-norki-cloud-curly-lambskin.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n        \n        <!-- Slide 3 : Tapis Contemporain Asym\u00e9trique -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/225-fluxus-arty-rug-norki.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/tapis-contemporain-asymetrique-design-norki-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Asymmetric Contemporary Rug\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>Contemporary Rug<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/225-fluxus-arty-rug-norki.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n        \n        <!-- Slide 4 : Pouf Knokke -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/designer-ottomans-stools-collection-norki\/178-knokke-stool-norki-sheepskin-wood.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/Assise_Photo-Principale-Pouf-Knokke_NORKI-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Knokke Pouf\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>Knokke Pouf<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/designer-ottomans-stools-collection-norki\/178-knokke-stool-norki-sheepskin-wood.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n\n        <!-- Slide 5 : Tables Basses Brutalistes -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/2024-autumn-winter-collection-anja-bench-screen-rugs-throws-cushions\/641-brutalist-style-coffee-table-oak-blue-green-design.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/Tables-basses-brutalistes-norki-design-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Brutalist Coffee Tables\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>Coffee Tables<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/2024-autumn-winter-collection-anja-bench-screen-rugs-throws-cushions\/641-brutalist-style-coffee-table-oak-blue-green-design.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n\n        <!-- Slide 6 : Fauteuil Coco Beige -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/196-beige-coco-armchair-norki-velour-lambskin.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/Assise_Photo-Principale-Fauteuil-Coco-Beige_NORKI-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Beige Coco Armchair\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>Beige Coco Armchair<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/196-beige-coco-armchair-norki-velour-lambskin.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n\n        <!-- Slide 7 : Table basse Yaga -->\n        <div class=\"nk-slider-slide\">\n          <a href=\"https:\/\/www.norki.com\/en\/designer-haute-couture-furniture-collection-norki\/639-solid-oak-design-coffee-table.html\" class=\"nk-slider-img-link\" tabindex=\"-1\">\n            <img decoding=\"async\" data-src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/Mobilier-Photo-I-Yaga_NORKI-768x768.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Yaga Coffee Table\">\n          <\/a>\n          <div class=\"nk-slider-caption\">\n            <span>Yaga Coffee Table<\/span>\n            <a href=\"https:\/\/www.norki.com\/en\/designer-haute-couture-furniture-collection-norki\/639-solid-oak-design-coffee-table.html\">Buy<\/a>\n          <\/div>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n  document.addEventListener('DOMContentLoaded', () => {\n    const track = document.querySelector('.nk-slider-track');\n    if (!track) return;\n    const originalSlides = Array.from(document.querySelectorAll('.nk-slider-slide'));\n    const totalOriginal = originalSlides.length;\n\n    \/\/ Clonage infini (Pre-clones et Post-clones)\n    originalSlides.forEach(slide => {\n      const clone = slide.cloneNode(true);\n      clone.setAttribute('aria-hidden', 'true');\n      track.appendChild(clone);\n    });\n    originalSlides.slice().reverse().forEach(slide => {\n      const clone = slide.cloneNode(true);\n      clone.setAttribute('aria-hidden', 'true');\n      track.insertBefore(clone, track.firstChild);\n    });\n\n    const getSlidesPerView = () => {\n      if (window.innerWidth > 1024) return 5;\n      if (window.innerWidth > 768) return 2;\n      return 1;\n    };\n\n    let slidesPerView = getSlidesPerView();\n    let currentIndex = totalOriginal; \n    let isAnimating = false;\n\n    const updateCarousel = (instant = false) => {\n      const itemWidth = 100 \/ slidesPerView;\n      track.style.transition = instant ? 'none' : 'transform 0.5s cubic-bezier(0.4, 0.0, 0.2, 1)';\n      track.style.transform = `translateX(-${currentIndex * itemWidth}%)`;\n    };\n\n    \/\/ Initialisation\n    updateCarousel(true);\n\n    const moveNext = () => {\n      if (isAnimating) return;\n      isAnimating = true;\n      currentIndex++;\n      updateCarousel();\n    };\n\n    const movePrev = () => {\n      if (isAnimating) return;\n      isAnimating = true;\n      currentIndex--;\n      updateCarousel();\n    };\n\n    document.querySelector('.nk-slider-next').addEventListener('click', moveNext);\n    document.querySelector('.nk-slider-prev').addEventListener('click', movePrev);\n\n    track.addEventListener('transitionend', (e) => {\n      if (e.propertyName !== 'transform') return;\n      isAnimating = false;\n      \n      if (currentIndex <= 0) {\n        currentIndex = totalOriginal;\n        updateCarousel(true);\n      } \n      else if (currentIndex >= totalOriginal * 2) {\n        currentIndex = totalOriginal;\n        updateCarousel(true);\n      }\n    });\n\n    \/\/ Gestion propre du resize pour \u00e9viter les sauts hors-champ\n    window.addEventListener('resize', () => {\n      slidesPerView = getSlidesPerView();\n      updateCarousel(true);\n    });\n\n    \/\/ --- LOGIQUE DU BALAYAGE TACTILE (SWIPE) ---\n    let startX = 0;\n    let endX = 0;\n    const swipeThreshold = 40;\n\n    track.addEventListener('touchstart', (e) => {\n      startX = e.touches[0].clientX;\n    }, { passive: true });\n\n    track.addEventListener('touchend', (e) => {\n      endX = e.changedTouches[0].clientX;\n      handleSwipe();\n    });\n\n    const handleSwipe = () => {\n      const diff = startX - endX;\n      if (Math.abs(diff) > swipeThreshold) {\n        if (diff > 0) {\n          moveNext();\n        } else {\n          movePrev();\n        }\n      }\n    };\n\n    \/\/ --- LAZY LOADING OPTIMIS\u00c9 ---\n    const observerOptions = {\n      root: null,\n      rootMargin: '0px 100% 0px 100%', \n      threshold: 0\n    };\n\n    const imageObserver = new IntersectionObserver((entries, observer) => {\n      entries.forEach(entry => {\n        if (entry.isIntersecting) {\n          const img = entry.target;\n          \n          if (img.dataset.src) {\n            img.onload = () => {\n              img.classList.add('nk-slider-loaded');\n            };\n            img.src = img.dataset.src;\n            img.removeAttribute('data-src');\n            observer.unobserve(img);\n          }\n        }\n      });\n    }, observerOptions);\n    \n    document.querySelectorAll('.nk-slider-slide img').forEach(img => {\n      imageObserver.observe(img);\n    });\n  });\n<\/script>\n\n\n\n<style>\n    \/* ==========================================================================\n       SECTION BUREAU D'\u00c9TUDES\n       ========================================================================== *\/\n    .norki-be {\n        background-color: var(--color-norki-beige, #f8f0ea);\n        color: black;\n        padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n        overflow: hidden; \/* Emp\u00eache la boucle de broderie de cr\u00e9er un scroll horizontal *\/\n        position: relative;\n        z-index: 20;\n    }\n\n    .norki-be__container {\n        margin: 0 auto;\n        display: flex;\n        flex-direction: column; \/* Superposition naturelle *\/\n        position: relative;\n    }\n\n    \/* --- TEXTE (En haut \u00e0 gauche) --- *\/\n    .norki-be__content {\n        width: 100%;\n        max-width: 830px;\n        position: relative;\n        z-index: 10; \/* Toujours cliquable et au-dessus du plan *\/\n    }\n\n    .norki-be__title {\n        font-family: \"AvenirMedium\", sans-serif !important;\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        font-weight: 500;\n        margin: 0 0 5px 0;\n        line-height: 1.1;\n    }\n\n    .norki-be__subtitle {\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        font-weight: normal;\n        font-style: italic;\n        margin: 0 0 30px 0;\n        line-height: 1.2;\n    }\n\n    .norki-be__desc {\n        font-family: \"AvenirBook\", sans-serif;\n        font-size: 1.2rem;\n        line-height: 1.5;\n        margin: 0;\n        width: 80%;\n    }\n\n    \/* --- LIENS IN-TEXT (DA Harmonis\u00e9e) --- *\/\n    .norki-be__link {\n        color: inherit;\n        text-decoration: underline;\n        text-decoration-color: currentColor;\n        text-underline-offset: 3px;\n        text-decoration-thickness: 1px;\n        transition: text-decoration-color 0.3s ease, opacity 0.3s ease;\n    }\n\n    .norki-be__link:hover {\n        text-decoration-color: transparent;\n        opacity: 0.7;\n    }\n\n    \/* --- COMPOSITION VISUELLE (Plan + \u00c9chantillons) --- *\/\n    .norki-be__visuals {\n        position: relative;\n        width: 100%;\n        max-width: 1150px; \/* Plan agrandi selon demande *\/\n        align-self: flex-end; \/* Aligne tout le bloc image vers la droite *\/\n        z-index: 1;\n        pointer-events: none; \/* Emp\u00eache le plan de bloquer la s\u00e9lection du texte au-dessus *\/\n    }\n\n    \/* Plan (Base) *\/\n    .norki-be__plan {\n        width: 100%;\n        height: auto;\n        display: block;\n        mix-blend-mode: multiply; \n        opacity: 0.9;\n    }\n\n    \/* \u00c9chantillons (Positionn\u00e9s en % absolu sur le bloc visuals) *\/\n    .norki-be__swatch {\n        position: absolute;\n        z-index: 5;\n        pointer-events: auto; \/* Permet le clic sur l'\u00e9chantillon malgr\u00e9 le pointer-events none du parent *\/\n        transition: transform 0.3s ease, opacity 0.3s ease;\n        display: block;\n    }\n\n    .norki-be__swatch img {\n        width: 100%;\n        height: auto;\n        display: block;\n    }\n\n    .norki-be__swatch:hover {\n        opacity: 0.9;\n    }\n\n    .norki-be__swatch--vache {\n        width: 28%; \/* Tailles relatives au plan *\/\n        top: -56%;\n        left: 38%; \/* D\u00e9cal\u00e9 plus au centre comme sur la maquette *\/\n        transform: rotate(12deg);\n        z-index: 3; \/* Au-dessus du coyote *\/\n    }\n\n    .norki-be__swatch--vache:hover {\n        transform: rotate(12deg) scale(1.04); \/* Zoom fluide en pr\u00e9servant l'angle initial *\/\n    }\n\n    .norki-be__swatch--coyote {\n        width: 28%;\n        top: -67%;\n        right: 18%;\n        transform: rotate(0deg);\n    }\n\n    .norki-be__swatch--coyote:hover {\n        transform: scale(1.04);\n    }\n\n    \/* Fil broderie *\/\n    .norki-be__thread {\n        position: absolute;\n        width: 77%;\n        top: -87%;\n        right: -41%;\n        transform: rotate(39deg);\n        z-index: 4; \/* Derri\u00e8re les \u00e9chantillons *\/\n        mix-blend-mode: multiply; \n    }\n\n    \/* ==========================================================================\n       RESPONSIVE PROPRE\n       ========================================================================== *\/\n    @media (min-width: 1025px) and (max-width: 1670px) {\n        .norki-be__visuals {\n            margin-top: 17%; \/* R\u00e9duit la superposition sur les \u00e9crans plus petits *\/\n            max-width: 900px;\n        }\n    }\n    \n    \/* Tablette \/ Petit PC *\/\n    @media (max-width: 1024px) {\n        .norki-be {\n            padding: var(--section-pad-v-tab, 50px) var(--section-pad-h-tab, 4vw);\n        }\n        \n        .norki-be__content {\n            max-width: 80%;\n        }\n\n        .norki-be__visuals {\n            margin-top: 25%; \/* R\u00e9duit la superposition sur les \u00e9crans plus petits *\/\n            max-width: 900px;\n        }\n\n        .norki-be__swatch--vache {\n            left: 32%;\n        }\n    }\n\n    \/* Mobile *\/\n    @media (max-width: 767px) {\n        .norki-be {\n            padding: var(--section-pad-v-mob, 40px) var(--section-pad-h-mob, 20px);\n        }\n        .norki-be__desc {\n            font-size: 0.95rem;\n            width: 100%; \/* S'adapte sur toute la largeur sur mobile *\/\n        }\n\n        .norki-be__content {\n            max-width: 100%;\n            margin-bottom: 20vh; \/* Ajoute de l'espace avant l'image *\/\n        }\n\n        .norki-be__visuals {\n            margin-top: 0; \/* Annule la superposition sur mobile (empilement normal) *\/\n            align-self: center;\n        }\n\n        .norki-be__swatch {\n            width: 38%; \/* Agrandit l\u00e9g\u00e8rement les \u00e9chantillons sur mobile *\/\n        }\n\n        .norki-be__swatch--vache {\n            top: -14vh;\n            left: 19%;\n        }\n        \n        .norki-be__swatch--coyote {\n            top: -18vh;\n            right: 21%;\n        }\n\n        .norki-be__thread {\n            width: 80%;\n            top: -94%;\n            right: -42%;\n        }\n    }\n<\/style>\n\n<section id=\"next-section\" class=\"norki-be\">\n    <div class=\"norki-be__container\">\n        \n        <!-- Colonne Texte -->\n        <div class=\"norki-be__content\">\n            <h1 style=\"line-height: 0.8; margin-top: 0;\"><span class=\"norki-be__title\">Design Studio<\/span><br>\n            <span class=\"norki-be__subtitle avenirmedium-font\">Bespoke Concept & Engineering for Furniture, Seating, and Rugs<\/span><\/h1>\n            <p class=\"norki-be__desc\">\n                From the technical blueprints of your sofa to the initial sketches of <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-fur-leather-rugs\/\" class=\"norki-be__link\" title=\"Discover our custom rugs\">your rug<\/a> \u2014 from intricate <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-haute-couture-embroidery\/\" class=\"norki-be__link\" title=\"Discover our craftsmanship in embroidery\">embroidery design<\/a> to the curation of fine materials \u2014 our in-house Design Studio supports you in every aspect of <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/high-end-interior-design\/\" class=\"norki-be__link\" title=\"Discover our custom-made creations\">bespoke creation<\/a>.\n            <\/p>\n        <\/div>\n\n        <!-- Colonne Images (Montage recr\u00e9\u00e9 \u00e0 l'identique de la maquette) -->\n        <div class=\"norki-be__visuals\">\n            <!-- 1. Le Fil (Derri\u00e8re) -->\n            <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Boucle-broderie-scaled.png\" alt=\"Decorative embroidery thread\" class=\"norki-be__thread\" loading=\"lazy\">\n\n            <!-- 2. Le Plan (Base) -->\n            <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Plan_Montaigne.png\" alt=\"Technical blueprint of a sofa\" class=\"norki-be__plan\" loading=\"lazy\">\n            \n            <!-- 3. \u00c9chantillon Coyote (Haut Droit) -->\n            <a href=\"https:\/\/www.norki.com\/en\/content\/44-request-a-sample-rug-plaid-cushion-seating-norki\" class=\"norki-be__swatch norki-be__swatch--coyote\" title=\"Request a coyote fur sample\">\n                <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Echantillon-coyote.png\" alt=\"Coyote fur sample\" loading=\"lazy\">\n            <\/a>\n\n            <!-- 4. \u00c9chantillon Peau de Vache (Milieu) -->\n            <a href=\"https:\/\/www.norki.com\/en\/content\/44-request-a-sample-rug-plaid-cushion-seating-norki\" class=\"norki-be__swatch norki-be__swatch--vache\" title=\"Request a cowhide sample\">\n                <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Echantillon-peau-de-vache.png\" alt=\"Cowhide sample\" loading=\"lazy\">\n            <\/a>\n        <\/div>\n\n    <\/div>\n<\/section>\n\n\n\n<style>\n    \/* ==========================================================================\n       SECTION \u00c9QUIPE DE PROFESSIONNELS (Citation sur fond marron)\n       ========================================================================== *\/\n\n    .norki-equipe {\n        background-color: var(--color-norki-brown, #50423d);\n        color: var(--color-norki-beige, #f8f0ea);\n        padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n        overflow: hidden;\n        position: relative;\n        z-index: 20;\n    }\n\n    .norki-equipe__container {\n        margin: 0 auto;\n        display: flex;\n        flex-direction: column;\n    }\n\n    \/* --- Bloc Citation (Repris du mod\u00e8le) --- *\/\n    .norki-equipe__quote-wrapper {\n        position: relative;\n        width: 80%;\n        max-width: 750px;\n        padding: 0 50px; \/* Espace pour les gros guillemets *\/\n        margin: 0 auto; \/* Centrage horizontal *\/\n        box-sizing: border-box;\n        z-index: 2;\n    }\n\n    .norki-equipe__quote-wrapper::before,\n    .norki-equipe__quote-wrapper::after {\n        font-family: \"Pertili\", sans-serif !important;\n        font-size: 100px;\n        line-height: 0;\n        color: var(--color-norki-beige, #f8f0ea);\n        position: absolute;\n    }\n\n    .norki-equipe__quote-wrapper::before {\n        content: '\\201C'; \/* Guillemet ouvrant *\/\n        top: 40px;\n        left: 0;\n    }\n\n    .norki-equipe__quote-wrapper::after {\n        content: '\\201D'; \/* Guillemet fermant *\/\n        bottom: -15px;\n        right: 0;\n    }\n\n    .norki-equipe__quote {\n        font-size: clamp(1.2rem, 2.5vw, 32px);\n        line-height: 1.4;\n        margin: 0;\n        text-align: center;\n    }\n\n    \/* --- S\u00e9parateur --- *\/\n    .norki-equipe__separator {\n        width: 70%;\n        height: 1px;\n        background-color: var(--color-norki-beige, #f8f0ea);\n        opacity: 0.5; \/* Ligne fine et discr\u00e8te *\/\n        border: none;\n        margin: 60px auto;\n    }\n\n    \/* --- Bloc Bas Gauche (Titre + Texte) --- *\/\n    .norki-equipe__bottom-content {\n        max-width: 800px; \/* Limite la largeur pour une meilleure lisibilit\u00e9 *\/\n    }\n\n    .norki-equipe__title {\n        color: var(--color-norki-beige, #f8f0ea);\n        font-family: \"AvenirMedium\", sans-serif;\n        font-size: clamp(1.4rem, 2.2vw, 35px);\n        font-weight: 500;\n        line-height: 1.3;\n        margin: 0 0 25px 0;\n    }\n\n    .norki-equipe__desc {\n        font-size: clamp(1.1rem, 1.5vw, 1.3rem);\n        line-height: 1.5;\n        margin: 0;\n        max-width: 700px;\n    }\n\n    \/* ==========================================================================\n       SECTION PHOTO \u00c9QUIPE & FL\u00c8CHE ANIM\u00c9E (SOLUTION RATIO FIXE)\n       ========================================================================== *\/\n    .norki-equipe-visuel {\n        position: relative;\n        width: 100%;\n        background-color: #f6f6f6;\n        \/* L'overflow hidden est crucial : il coupe tout ce qui d\u00e9passe du wrapper interne *\/\n        overflow: hidden; \n        z-index: 20;\n    }\n\n    \/* Le conteneur interne verrouille les coordonn\u00e9es de la fl\u00e8che avec l'image *\/\n    .norki-equipe-visuel__inner {\n        position: relative;\n        width: 100%;\n        line-height: 0;\n        \/* Par d\u00e9faut (mobile\/tablette), l'image s'affiche en entier *\/\n        margin-top: 0;\n        margin-bottom: 0;\n    }\n\n    .norki-equipe-visuel__img {\n        width: 100%;\n        height: auto;\n        display: block;\n    }\n\n    \/* Fl\u00e8che positionn\u00e9e en % par rapport \u00e0 l'image compl\u00e8te non-rogn\u00e9e *\/\n    .norki-equipe-visuel__arrow {\n        position: absolute;\n        \/* Ces valeurs (%) restent fixes car calcul\u00e9es sur le wrapper interne, pas sur l'\u00e9cran *\/\n        top: 22%; \n        right: 23%; \n        width: 16%;\n        min-width: 100px;\n        pointer-events: none;\n        z-index: 5;\n        \/* \u00c9tat initial pour l'animation *\/\n        opacity: 0;\n        transform: translateY(-30px);\n        \/* 1.5s de transition fluide *\/\n        transition: opacity 1.5s ease-out, transform 1.5s cubic-bezier(.2,.8,.2,1);\n        \/* D\u00e9lai de 0.6s apr\u00e8s l'apparition sur \u00e9cran pour laisser l'oeil de l'utilisateur se caler *\/\n        transition-delay: 0.6s; \n    }\n\n    \/* Classe ajout\u00e9e par JS au scroll *\/\n    .norki-equipe-visuel__arrow.is-visible {\n        opacity: 1;\n        transform: translateY(0);\n    }\n\n    \/* ==========================================================================\n       SECTION TEXTE PIED (Suite sur fond marron)\n       ========================================================================== *\/\n    .norki-equipe-suite {\n        background-color: var(--color-norki-brown, #50423d);\n        color: var(--color-norki-beige, #f8f0ea);\n        padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n        z-index: 20;\n        position: relative;\n    }\n\n    .norki-equipe-suite__container {\n        max-width: 1600px;\n        margin: 0 auto;\n        display: flex;\n        justify-content: flex-end; \/* Pousse le texte sur la droite comme sur la maquette *\/\n    }\n\n    .norki-equipe-suite__content {\n        width: 35%;\n        max-width: 750px;\n    }\n\n    .norki-equipe-suite__content p {\n        font-family: var(--font-primary-regular, \"AvenirBook\", sans-serif);\n        font-size: 0.95rem;\n        line-height: 1.6;\n        margin-top: 0;\n        margin-bottom: 25px;\n    }\n\n    .norki-equipe-suite__content p:last-child {\n        margin-bottom: 0;\n    }\n\n    \/* Animation des liens in-text *\/\n    .norki-equipe__link {\n        color: inherit;\n        text-decoration: underline;\n        text-decoration-color: currentColor;\n        text-underline-offset: 3px;\n        text-decoration-thickness: 1px;\n        transition: text-decoration-color 0.3s ease, opacity 0.3s ease;\n    }\n\n    .norki-equipe__link:hover {\n        text-decoration-color: transparent;\n        opacity: 0.7;\n    }\n\n    \/* ==========================================================================\n       RESPONSIVE GLOBALE\n       ========================================================================== *\/\n    @media (min-width: 1024px) {\n        .norki-equipe-visuel__inner {\n            \/* Au lieu de height\/object-fit, on utilise des marges n\u00e9gatives \n               pour rogner l'image en haut et en bas. \n               Le ratio reste 100% parfait et la fl\u00e8che ne bouge plus d'un poil ! *\/\n            margin-top: -26%;\n            margin-bottom: -37%;\n        }\n    }\n\n    @media (max-width: 1024px) {\n        .norki-equipe {\n            padding: var(--section-pad-v-tab, 50px) var(--section-pad-h-tab, 4vw);\n        }\n        .norki-equipe__quote-wrapper {\n            width: 90%;\n            padding: 0 40px;\n        }\n        .norki-equipe__separator {\n            margin: 50px auto;\n        }\n        .norki-equipe-suite {\n            padding: var(--section-pad-v-tab, 50px) var(--section-pad-h-tab, 4vw);\n        }\n        .norki-equipe-suite__content {\n            width: 70%;\n        }\n    }\n\n    @media (max-width: 768px) {\n        .norki-equipe {\n            padding: var(--section-pad-v-mob, 40px) var(--section-pad-h-mob, 20px);\n        }\n        .norki-equipe__quote-wrapper {\n            width: 100%;\n            padding: 0 30px;\n        }\n        .norki-equipe__quote-wrapper::before,\n        .norki-equipe__quote-wrapper::after {\n            font-size: 90px;\n            bottom: -35px;\n        }\n        .norki-equipe__quote-wrapper::before {\n            top: 30px;\n            left: -10px;\n        }\n        .norki-equipe__separator {\n            margin: 40px auto;\n        }\n        .norki-equipe__title {\n            margin-bottom: 20px;\n        }\n\n        .norki-equipe-suite {\n            padding: var(--section-pad-v-mob, 40px) var(--section-pad-h-mob, 20px);\n        }\n        .norki-equipe-suite__container {\n            justify-content: flex-start;\n        }\n        .norki-equipe-suite__content {\n            width: 100%;\n        }\n        \n        \/* Ajustement tr\u00e8s fin de la fl\u00e8che si besoin sur mobile, \n           mais normalement elle reste cal\u00e9e gr\u00e2ce au wrapper ! *\/\n        .norki-equipe-visuel__arrow {\n            top: 2%;\n            right: 8%;\n            width: 47%;\n            \/* D\u00e9lai r\u00e9duit un peu sur mobile pour plus de r\u00e9activit\u00e9 tactile *\/\n            transition-delay: 0.3s;\n        }\n    }\n<\/style>\n\n<!-- Bloc Haut : Citation -->\n<section class=\"norki-equipe\">\n    <div class=\"norki-equipe__container\">\n        <!-- Bloc Haut : Citation Centr\u00e9e -->\n        <div class=\"norki-equipe__quote-wrapper\">\n            <p class=\"norki-equipe__quote baskerville-italic-font\">\n                Because every project is a unique story, we craft pieces that reflect your world\u2014where luxury meets emotion.\n            <\/p>\n        <\/div>\n\n        <!-- Ligne de s\u00e9paration -->\n        <hr class=\"norki-equipe__separator\" aria-hidden=\"true\">\n\n        <!-- Bloc Bas : Titre et Texte (Align\u00e9 \u00e0 gauche) -->\n        <div class=\"norki-equipe__bottom-content\">\n            <h2 class=\"norki-equipe__title\">\n                A Multi-Disciplinary Team Dedicated\n                to Bespoke Interior Design\n            <\/h2>\n            <p class=\"norki-equipe__desc baskerville-italic-font\">\n                Led by Sonia Linard, our Design Studio brings together a collaborative team of designers, graphic artists, interior architects, and technical draftsmen.\n            <\/p>\n        <\/div>\n    <\/div>\n<\/section>\n\n<!-- Bloc Milieu : Photo de l'\u00e9quipe et Fl\u00e8che anim\u00e9e -->\n<section class=\"norki-equipe-visuel\">\n    <!-- WRAPPER : Il assure que la fl\u00e8che et l'image grandissent\/r\u00e9tr\u00e9cissent de la m\u00eame fa\u00e7on -->\n    <div class=\"norki-equipe-visuel__inner\">\n        <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Equipe-Bureau-Etudes-Norki.jpg\" alt=\"The Norki Design Studio team\" class=\"norki-equipe-visuel__img\" loading=\"lazy\">\n        \n        <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Sonia-Linard-Fleche.png\" alt=\"Sonia Linard\" class=\"norki-equipe-visuel__arrow\" id=\"sonia-arrow\" loading=\"lazy\">\n    <\/div>\n<\/section>\n\n<!-- Bloc Bas : Suite du texte sur fond marron -->\n<section class=\"norki-equipe-suite\">\n    <div class=\"norki-equipe-suite__container\">\n        <div class=\"norki-equipe-suite__content\">\n            <p>\n                Every <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/high-end-interior-design\/\" class=\"norki-equipe__link\" title=\"Discover our bespoke furniture, seating, and rugs\">bespoke furniture, seating, or rug project<\/a>, \n                led by interior architects or private clients, benefits from personalized \n                support, from the initial concept to its production in our French Ateliers.\n            <\/p>\n            <p>\n                Creative audacity, meticulous attention to detail, and adaptability to technical \n                constraints are at the heart of our process. This collaborative approach \n                allows us to transform creative visions into concrete, perfectly mastered realities.\n            <\/p>\n        <\/div>\n    <\/div>\n<\/section>\n\n<!-- Script pour l'animation au d\u00e9filement (Scroll) -->\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const arrow = document.getElementById('sonia-arrow');\n        \n        if (arrow && 'IntersectionObserver' in window) {\n            const observer = new IntersectionObserver((entries) => {\n                entries.forEach(entry => {\n                    \/\/ Quand la fl\u00e8che entre \u00e0 45% dans l'\u00e9cran, on d\u00e9clenche l'animation\n                    if (entry.isIntersecting) {\n                        arrow.classList.add('is-visible');\n                        observer.unobserve(arrow); \/\/ L'animation ne se joue qu'une fois\n                    }\n                });\n            }, { \n                threshold: 0.45, \/\/ Se d\u00e9clenche quand l'image est bien pr\u00e9sente \u00e0 l'\u00e9cran\n                rootMargin: \"0px 0px -50px 0px\"\n            });\n\n            observer.observe(arrow);\n        } else if (arrow) {\n            \/\/ Fallback si IntersectionObserver n'est pas support\u00e9 (tr\u00e8s vieux navigateurs)\n            arrow.classList.add('is-visible');\n        }\n    });\n<\/script>\n\n\n\n<style>\n    \/* ==========================================================================\n       SECTION EXPERTISE (\u00c9TUDES, PLANS, 3D)\n       ========================================================================== *\/\n    .norki-expertise {\n        background-color: var(--color-norki-beige, #f8f0ea);\n        color: black;\n        padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n        position: relative;\n        z-index: 20;\n        \/* S\u00e9curisation absolue contre le d\u00e9passement horizontal (X)\n           d\u00fb aux translations des sous-titres PNG sur la droite. *\/\n        overflow-x: hidden;\n    }\n\n    .norki-expertise__container {\n        margin: 0 auto;\n        display: flex;\n        flex-direction: column;\n        gap: 60px;\n        width: 100%;\n        max-width: 1400px;\n    }\n\n    \/* --- GRILLE DES 3 \u00c9TAPES --- *\/\n    .norki-expertise__grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 3vw;\n        align-items: start;\n    }\n\n    .norki-expertise__step {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        width: 100%;\n        \n        \/* Pr\u00e9paration de l'animation : invisible et d\u00e9cal\u00e9 vers le bas *\/\n        opacity: 0;\n        transform: translateY(40px);\n        transition: opacity 0.8s ease-out, transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);\n        \/* La variable --delay est d\u00e9finie en ligne dans le HTML *\/\n        transition-delay: var(--delay, 0s);\n    }\n\n    \/* Classe ajout\u00e9e par Javascript lors du scroll global sur la grille *\/\n    .norki-expertise__step.is-visible {\n        opacity: 1;\n        transform: translateY(0);\n    }\n\n    \/* Conteneur de l'image principale cliquable *\/\n    .norki-expertise__img-link {\n        width: 100%;\n        display: flex;\n        flex-direction: column; \/* Permet d'englober l'image et le titre PNG *\/\n        align-items: center;\n        text-decoration: none;\n        cursor: pointer;\n    }\n\n    .norki-expertise__img-wrapper {\n        width: 100%;\n        background-color: #ffffff;\n        aspect-ratio: 1 \/ 1.05;\n        overflow: hidden;\n        display: flex;\n        justify-content: center;\n        align-items: center;\n        z-index: 1;\n        position: relative;\n    }\n\n    .norki-expertise__img-wrapper img {\n        width: 100%;\n        height: 100%;\n        object-fit: cover;\n        display: block;\n        transition: transform 0.6s ease; \/* Transition fluide pour le hover *\/\n    }\n\n    .norki-expertise__img-wrapper--contain img {\n        object-fit: contain;\n        padding: 5%;\n    }\n\n    \/* Effet Hover (Zoom discret) sur l'image interne *\/\n    .norki-expertise__img-link:hover .norki-expertise__img-wrapper img {\n        transform: scale(1.04);\n    }\n\n    \/* Titres manuscrits PNG ajust\u00e9s (Pente + Rehaussement) *\/\n    .norki-expertise__subtitle {\n        width: 90%;\n        max-width: 320px;\n        height: auto;\n        display: block;\n        margin: 0 auto;\n        position: relative;\n        z-index: 10;\n        \/* On adoucit les marges n\u00e9gatives pour \u00e9viter des bugs de clics inattendus *\/\n        margin-top: -15px; \n        transition: transform 0.4s ease; \/* Pour fluidit\u00e9 si on veut animer au hover *\/\n    }\n\n    \/* Inclinaisons et d\u00e9calages verticaux organiques (Maquette fid\u00e8le) *\/\n    .norki-expertise__step:nth-child(1) .norki-expertise__subtitle {\n        transform: translateX(2vw) rotate(-10deg);\n        width: 80%;\n    }\n    \n    .norki-expertise__step:nth-child(2) .norki-expertise__subtitle {\n        transform: translateX(1vw) rotate(-10deg) scale(1.2) translateY(10px);\n        width: 75%;\n    }\n\n    .norki-expertise__step:nth-child(3) .norki-expertise__subtitle {\n        transform: translateX(2vw) rotate(-10deg) translateY(5px);\n    }\n\n    \/* --- CONTENU TEXTE (Bas de section) --- *\/\n    .norki-expertise__content {\n        width: 100%;\n        max-width: 700px;\n    }\n\n    .norki-expertise__title {\n        font-family: \"AvenirMedium\", sans-serif;\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        font-weight: 500;\n        line-height: 1.2;\n        margin: 0 0 30px 0;\n    }\n\n    .norki-expertise__text p {\n        font-family: \"AvenirBook\", sans-serif;\n        font-size: 0.95rem;\n        line-height: 1.5;\n        margin-top: 0;\n        margin-bottom: 20px;\n    }\n\n    .norki-expertise__text p:last-child {\n        margin-bottom: 0;\n    }\n\n    \/* ==========================================================================\n       RESPONSIVE\n       ========================================================================== *\/\n    @media (max-width: 1024px) {\n        .norki-expertise {\n            padding: var(--section-pad-v-tab, 50px) var(--section-pad-h-tab, 4vw);\n        }\n        .norki-expertise__grid {\n            gap: 20px;\n        }\n        .norki-expertise__title {\n            margin-bottom: 25px;\n        }\n    }\n\n    @media (max-width: 768px) {\n        .norki-expertise {\n            padding: var(--section-pad-v-mob, 40px) var(--section-pad-h-mob, 20px);\n        }\n        .norki-expertise__container {\n            gap: 40px;\n        }\n        \/* Passage \u00e0 une seule colonne sur mobile *\/\n        .norki-expertise__grid {\n            grid-template-columns: 1fr;\n            gap: 40px;\n        }\n        .norki-expertise__img-wrapper {\n            aspect-ratio: 1 \/ 1;\n        }\n        .norki-expertise__content {\n            max-width: 100%;\n        }\n\n        \/* Ajustements des titres PNG pour mobile pour \u00e9viter les d\u00e9bordements (moins agressifs) *\/\n        .norki-expertise__step:nth-child(1) .norki-expertise__subtitle {\n            transform: translate(13vw, -2vw) rotate(-10deg);\n            width: 80%;\n        }\n        .norki-expertise__step:nth-child(2) .norki-expertise__subtitle {\n            transform: translateX(7vw) rotate(-10deg) scale(1.1) translateY(10px);\n            width: 75%;\n        }\n        .norki-expertise__step:nth-child(3) .norki-expertise__subtitle {\n            transform: translateX(9vw) rotate(-10deg);\n            width: 75%;\n        }\n    }\n<\/style>\n\n<section class=\"norki-expertise\">\n    <div class=\"norki-expertise__container\">\n        \n        <!-- GRILLE DES 3 \u00c9TAPES : C'est elle qui d\u00e9clenche l'animation globale -->\n        <div class=\"norki-expertise__grid js-animate-grid\">\n            \n            <!-- \u00c9TAPE 1 (D\u00e9lai 0s) -->\n            <div class=\"norki-expertise__step\" style=\"--delay: 0s;\">\n                <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/226-305-laszlo-rug-norki-bauhaus-modern.html#\/54-dimension-285_310_cm\" class=\"norki-expertise__img-link\" title=\"Discover the iconic Laszlo rug\">\n                    <div class=\"norki-expertise__img-wrapper\">\n                        <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Page-de-garde-Laszlo.jpg\" alt=\"Concept &amp; Sketches - Laszlo Rug\" loading=\"lazy\">\n                    <\/div>\n                    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/1.study_and_sketches.png\" alt=\"1. Study &amp; Sketches\" class=\"norki-expertise__subtitle\" loading=\"lazy\">\n                <\/a>\n            <\/div>\n\n            <!-- \u00c9TAPE 2 (D\u00e9lai 0.25s) -->\n            <div class=\"norki-expertise__step\" style=\"--delay: 0.25s;\">\n                <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/226-305-laszlo-rug-norki-bauhaus-modern.html#\/54-dimension-285_310_cm\" class=\"norki-expertise__img-link\" title=\"Discover the detailed technical drawing of the Laszlo rug\">\n                    <div class=\"norki-expertise__img-wrapper norki-expertise__img-wrapper--contain\">\n                        <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Plan_Tapis-Lazslo-Norki-1024x946.jpg\" alt=\"Detailed technical drawing of the Laszlo rug\" loading=\"lazy\">\n                    <\/div>\n                    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/2.plans_and_refinements.png\" alt=\"2. Plans &amp; Refinements\" class=\"norki-expertise__subtitle\" loading=\"lazy\">\n                <\/a>\n            <\/div>\n\n            <!-- \u00c9TAPE 3 (D\u00e9lai 0.6s) -->\n            <div class=\"norki-expertise__step\" style=\"--delay: 0.6s;\">\n                <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/226-305-laszlo-rug-norki-bauhaus-modern.html#\/54-dimension-285_310_cm\" class=\"norki-expertise__img-link\" title=\"Discover the 3D rendering of the Laszlo rug\">\n                    <div class=\"norki-expertise__img-wrapper\">\n                        <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/3D_Tapis-Laszlo.png\" alt=\"3D rendering of the Laszlo rug in an interior\" loading=\"lazy\">\n                    <\/div>\n                    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/uploads\/2026\/06\/3.3d_visualization.png\" alt=\"3. 3D Visualization\" class=\"norki-expertise__subtitle\" loading=\"lazy\">\n                <\/a>\n            <\/div>\n\n        <\/div>\n\n        <!-- CONTENU TEXTE (Bas) -->\n        <div class=\"norki-expertise__content\">\n            <h2 class=\"norki-expertise__title\">\n                Our Expertise in Bespoke Design:<br>\n                Concept, Drafting, and 3D Rendering\n            <\/h2>\n            <div class=\"norki-expertise__text\">\n                <p>Within the Norki Design Studio, every project begins with an in-depth research and design phase to provide tailored strategic solutions.<\/p>\n                <p>Our professional teams produce precise technical drawings and 3D models, guiding you through the meticulous selection of materials.<\/p>\n                <p>We develop exclusive blueprints for furniture, seating, and rugs, technically engineered down to the smallest detail.<\/p>\n            <\/div>\n        <\/div>\n\n    <\/div>\n<\/section>\n\n<!-- SCRIPT D'ANIMATION AU D\u00c9FILEMENT -->\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        \/\/ On cible le conteneur parent (la grille) pour d\u00e9clencher l'animation simultan\u00e9ment\n        const grid = document.querySelector('.js-animate-grid');\n        const steps = document.querySelectorAll('.norki-expertise__step');\n        \n        if ('IntersectionObserver' in window && grid) {\n            const observer = new IntersectionObserver((entries, obs) => {\n                entries.forEach(entry => {\n                    \/\/ Si on atteint la zone des images (seuil de 15%)\n                    if (entry.isIntersecting) {\n                        \/\/ On ajoute la classe \"is-visible\" \u00e0 TOUTES les \u00e9tapes d'un coup.\n                        \/\/ Gr\u00e2ce au \"transition-delay\" en CSS, elles s'afficheront en cascade (1-2-3).\n                        steps.forEach(step => step.classList.add('is-visible'));\n                        \/\/ On arr\u00eate l'observation\n                        obs.unobserve(entry.target);\n                    }\n                });\n            }, { \n                threshold: 0.15,\n                rootMargin: \"0px 0px -50px 0px\" \n            });\n\n            observer.observe(grid);\n        } else {\n            \/\/ Fallback pour les vieux navigateurs\n            steps.forEach(step => step.classList.add('is-visible'));\n        }\n    });\n<\/script>\n\n\n\n<style>\n    \/* ==========================================================================\n       SECTION CONCEPTION & FABRICATION (Sur-mesure Norki)\n       ========================================================================== *\/\n    .norki-conception {\n        z-index: 10;\n        position: relative;\n        background-color: var(--color-norki-brown, #50423d);\n        color: var(--color-norki-beige, #f8f0ea);\n        font-family: var(--font-primary-regular, \"AvenirBook\", sans-serif);\n        padding: var(--section-pad-v-dt, 80px) 0;\n        overflow: hidden;\n        box-sizing: border-box;\n        padding-bottom: 0;\n    }\n\n    .norki-conception * {\n        box-sizing: border-box;\n    }\n\n    \/* Conteneur fluide sans max-width restrictif *\/\n    .norki-conception__container {\n        padding: 0 var(--section-pad-h-dt, 5vw);\n        width: 100%;\n    }\n\n    \/* --- GRILLE D'EN-T\u00caTE (2 Colonnes sur PC) --- *\/\n    .norki-conception__header {\n        display: grid;\n        grid-template-columns: 1fr;\n        gap: 30px;\n        margin-bottom: 50px;\n    }\n\n    @media (min-width: 1025px) {\n        .norki-conception__header {\n            grid-template-columns: 1.2fr 0.9fr;\n            gap: 5vw;\n            max-width: 1150px;\n        }\n    }\n\n    \/* Colonne Gauche (Titre + Paragraphes Gauche) *\/\n    .norki-conception__header-left {\n        display: flex;\n        flex-direction: column;\n        gap: 25px;\n    }\n\n    .norki-conception__title {\n        font-family: var(--font-primary-bold, \"AvenirMedium\", sans-serif);\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        font-weight: 500;\n        line-height: 1.2;\n        margin: 0;\n        color: var(--color-norki-beige, #f8f0ea);\n    }\n\n    .norki-conception__text-col {\n        display: flex;\n        flex-direction: column;\n        gap: 20px;\n    }\n\n    .norki-conception__text-col p {\n        font-size: 0.95rem;\n        line-height: 1.6;\n        margin: 0;\n        color: var(--color-norki-beige, #f8f0ea);\n        opacity: 0.95;\n    }\n\n    \/* Alignement vertical de la colonne droite sur Desktop *\/\n    @media (min-width: 1025px) {\n        .norki-conception__header-right {\n            margin-top: auto; \/* Aligne le haut des paragraphes de droite avec ceux de gauche *\/\n            padding-bottom: 2px;\n        }\n    }\n\n    \/* --- NAVIGATION CARROUSEL --- *\/\n    .norki-conception__nav-bar {\n        display: flex;\n        justify-content: flex-end;\n        align-items: center;\n        margin-bottom: 30px;\n        padding: 0 var(--section-pad-h-dt, 5vw);\n    }\n\n    .norki-arrows {\n        display: none; \/* Masqu\u00e9 sur Desktop par d\u00e9faut *\/\n        gap: 15px;\n    }\n\n    @media (max-width: 1024px) {\n        .norki-arrows {\n            display: flex; \/* Affich\u00e9 uniquement sur Tablette & Mobile *\/\n        }\n    }\n\n    .norki-arrows button {\n        background: none;\n        border: none;\n        color: #ffffff;\n        cursor: pointer;\n        padding: 5px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        transition: opacity 0.3s ease;\n    }\n\n    \/* Limite l'effet de hover aux appareils avec pointeur (souris) *\/\n    @media (hover: hover) {\n        .norki-arrows button:hover {\n            opacity: 0.6;\n        }\n    }\n\n    \/* Ajoute un effet au moment du clic sur mobile *\/\n    .norki-arrows button:active {\n        opacity: 0.6;\n    }\n\n    .norki-arrows svg {\n        width: 28px;\n        height: 28px;\n        fill: none;\n        stroke: currentColor;\n        stroke-width: 1.2;\n    }\n\n    \/* --- COMPOSANT CARROUSEL --- *\/\n    .norki-carousel {\n        position: relative;\n        width: 100%;\n    }\n\n    .norki-carousel-viewport {\n        overflow: hidden;\n        touch-action: pan-y;\n    }\n\n    .norki-carousel-track {\n        display: flex;\n        will-change: transform;\n    }\n\n    \/* Configuration des slides *\/\n    .norki-slide {\n        flex: 0 0 25%; \/* 4 colonnes sur Desktop *\/\n        display: flex;\n        flex-direction: column;\n        align-items: center; \/* Assure le centrage horizontal des boutons non-flex *\/\n        padding: 0 4px; \/* Espace de s\u00e9paration fin et \u00e9l\u00e9gant *\/\n    }\n\n    \/* --- DA Zoom 1.03 au survol sur l'image parent --- *\/\n    .norki-slide__img-link {\n        display: block;\n        width: 100%;\n        text-decoration: none;\n        cursor: pointer;\n        overflow: hidden; \/* Masque le zoom sur les bords *\/\n    }\n\n    .norki-slide img {\n        width: 100%;\n        aspect-ratio: 1 \/ 1.05; \/* Ratio de la maquette *\/\n        object-fit: cover;\n        display: block;\n        background-color: #423b34;\n        opacity: 0;\n        transform: scale(1); \/* Initialise la taille *\/\n        transition: opacity 0.5s ease-in-out, transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n    }\n\n    .norki-slide img.norki-loaded {\n        opacity: 1;\n    }\n\n    \/* Zoom interactif progressif au survol *\/\n    .norki-slide__img-link:hover img {\n        transform: scale(1.03);\n    }\n\n    \/* Boutons sous les images (Ajust\u00e9s selon demandes) *\/\n    .norki-slide__btn {\n        display: inline-block; \/* Pas de largeur flex *\/\n        width: auto;\n        border: 1px solid rgba(248, 240, 234, 0.5);\n        background: transparent;\n        color: var(--color-norki-beige, #f8f0ea);\n        text-align: center;\n        padding: 4px 27px; \/* Obligatoire tout device *\/\n        font-family: var(--font-primary-bold, \"AvenirMedium\", sans-serif);\n        font-size: 0.9rem;\n        text-decoration: none;\n        transition: all 0.3s ease;\n        margin-top: 15px;\n        margin-bottom: 15px; \/* Marge en haut et en bas de 15px *\/\n    }\n\n    .norki-slide__btn:hover {\n        background-color: var(--color-norki-beige, #f8f0ea);\n        color: var(--color-norki-brown, #50423d);\n        border-color: var(--color-norki-beige, #f8f0ea);\n    }\n\n    \/* --- COMPORTEMENT SUR DESKTOP (> 1024px) --- *\/\n    @media (min-width: 1025px) {\n        .norki-carousel-track {\n            transform: none !important; \/* Pas de translation sur Desktop *\/\n        }\n        \n        .norki-slide.norki-clone {\n            display: none !important; \/* Masque les clones sur Desktop *\/\n        }\n\n        .norki-slide {\n            flex: 0 0 25% !important; \/* Force le 4 colonnes statique *\/\n        }\n    }\n\n    \/* --- RESPONSIVE TABLETTE (< 1024px) --- *\/\n    @media (max-width: 1024px) {\n        .norki-conception {\n            padding: var(--section-pad-v-tab, 50px) 0;\n            padding-bottom: 0;\n        }\n\n        .norki-conception__container {\n            padding: 0 var(--section-pad-h-tab, 4vw);\n        }\n\n        .norki-conception__nav-bar {\n            padding: 0 var(--section-pad-h-tab, 4vw);\n        }\n\n        .norki-slide {\n            flex: 0 0 50%; \/* 2 colonnes sur tablette *\/\n        }\n    }\n\n    \/* --- RESPONSIVE MOBILE (< 768px) --- *\/\n    @media (max-width: 768px) {\n        .norki-conception {\n            padding: var(--section-pad-v-mob, 40px) 0;\n            padding-bottom: 0;\n        }\n\n        .norki-conception__container {\n            padding: 0 var(--section-pad-h-mob, 20px);\n        }\n\n        .norki-conception__nav-bar {\n            padding: 0 var(--section-pad-h-mob, 20px);\n            margin-bottom: 20px;\n        }\n\n        .norki-slide {\n            flex: 0 0 100%; \/* 1 colonne sur mobile *\/\n            padding: 0;\n        }\n\n        .norki-slide img {\n            aspect-ratio: 1 \/ 1; \/* Carr\u00e9 parfait sur mobile *\/\n        }\n\n        .norki-slide__btn {\n            font-size: 0.9rem;\n            \/* Le padding 4px 27px reste appliqu\u00e9 ici gr\u00e2ce \u00e0 la r\u00e8gle principale *\/\n        }\n    }\n<\/style>\n\n<section class=\"norki-conception\">\n    <!-- En-t\u00eate -->\n    <div class=\"norki-conception__container\">\n        <div class=\"norki-conception__header\">\n            \n            <!-- Colonne Gauche -->\n            <div class=\"norki-conception__header-left\">\n                <h2 class=\"norki-conception__title\">\n                    From Concept to Creation: Norki's Mastery of Bespoke Manufacturing\n                <\/h2>\n                <div class=\"norki-conception__text-col\">\n                    <p>Thanks to our seamless internal organization, each project benefits from a dedicated project manager, ensuring consistency and uncompromising standards.<\/p>\n                    <p>Our Design Studio supports clients at every stage: identifying needs, drafting designs, selecting materials, and defining comfort and finishes.<\/p>\n                <\/div>\n            <\/div>\n\n            <!-- Colonne Droite -->\n            <div class=\"norki-conception__header-right\">\n                <div class=\"norki-conception__text-col\">\n                    <p>Every detail is studied, validated, and refined in close collaboration. This data is then precisely transmitted to our various production units where your piece comes to life.<\/p>\n                    <p>This uninterrupted continuity between design and production ensures total process control, guaranteeing the quality, accuracy, and integrity of the pieces we envision and craft.<\/p>\n                <\/div>\n            <\/div>\n\n        <\/div>\n    <\/div>\n\n    <!-- Barre de Navigation Carrousel (Masqu\u00e9e sur PC, visible sur Tablette\/Mobile) -->\n    <div class=\"norki-conception__nav-bar\">\n        <div class=\"norki-arrows\">\n            <button class=\"norki-prev\" aria-label=\"Previous slide\">\n                <svg viewBox=\"0 0 24 24\"><path d=\"M15 18l-6-6 6-6\"><\/path><\/svg>\n            <\/button>\n            <button class=\"norki-next\" aria-label=\"Next slide\">\n                <svg viewBox=\"0 0 24 24\"><path d=\"M9 18l6-6-6-6\"><\/path><\/svg>\n            <\/button>\n        <\/div>\n    <\/div>\n\n    <!-- Carrousel -->\n    <div class=\"norki-carousel\">\n        <div class=\"norki-carousel-viewport\">\n            <div class=\"norki-carousel-track\">\n                \n                <!-- P\u00f4le 1 : Couture d'ameublement -->\n                <div class=\"norki-slide\">\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-soft-furnishings-curtains\/\" class=\"norki-slide__img-link\" tabindex=\"-1\">\n                        <img decoding=\"async\" data-src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Couture-ameublement-scaled.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Norki soft furnishing &amp; curtains craftsmanship\">\n                    <\/a>\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-soft-furnishings-curtains\/\" class=\"norki-slide__btn\">Explore Our Soft Furnishing &amp; Curtain Atelier<\/a>\n                <\/div>\n\n                <!-- P\u00f4le 2 : Couture fourrure -->\n                <div class=\"norki-slide\">\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/sewing-fur-epv\/\" class=\"norki-slide__img-link\" tabindex=\"-1\">\n                        <img decoding=\"async\" data-src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/COUSSIN-RENARD_coin-scaled.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Norki luxury fur tailoring\">\n                    <\/a>\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/sewing-fur-epv\/\" class=\"norki-slide__btn\">Discover Our Luxury Fur Tailoring Department<\/a>\n                <\/div>\n\n                <!-- P\u00f4le 3 : Tapisserie d'ameublement -->\n                <div class=\"norki-slide\">\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-upholstery-services\/\" class=\"norki-slide__img-link\" tabindex=\"-1\">\n                        <img decoding=\"async\" data-src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/TABLE_YAGA-11791-scaled.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Norki bespoke upholstery\">\n                    <\/a>\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-upholstery-services\/\" class=\"norki-slide__btn\">Explore Our Bespoke Upholstery Artistry<\/a>\n                <\/div>\n\n                <!-- P\u00f4le 4 : Tapis sur-mesure -->\n                <div class=\"norki-slide\">\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-fur-leather-rugs\/\" class=\"norki-slide__img-link\" tabindex=\"-1\">\n                        <img decoding=\"async\" data-src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/TAPIS-PROMENADE_details06173-scaled.jpg\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 1 1.05'%3E%3C\/svg%3E\" alt=\"Norki custom rug design\">\n                    <\/a>\n                    <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-fur-leather-rugs\/\" class=\"norki-slide__btn\">Discover Our Custom Rug Expertise<\/a>\n                <\/div>\n\n            <\/div>\n        <\/div>\n    <\/div>\n<\/section>\n\n<script>\n    document.addEventListener('DOMContentLoaded', () => {\n        const track = document.querySelector('.norki-carousel-track');\n        if (!track) return;\n        const originalSlides = Array.from(document.querySelectorAll('.norki-slide'));\n        const totalOriginal = originalSlides.length;\n\n        \/\/ Clonage pour l'effet infini sur tablette et mobile\n        originalSlides.forEach(slide => {\n            const clone = slide.cloneNode(true);\n            clone.classList.add('norki-clone');\n            clone.setAttribute('aria-hidden', 'true');\n            track.appendChild(clone);\n        });\n        originalSlides.slice().reverse().forEach(slide => {\n            const clone = slide.cloneNode(true);\n            clone.classList.add('norki-clone');\n            clone.setAttribute('aria-hidden', 'true');\n            track.insertBefore(clone, track.firstChild);\n        });\n\n        \/\/ D\u00e9termination dynamique des slides visibles selon l'\u00e9cran\n        const getSlidesPerView = () => {\n            if (window.innerWidth > 1024) return 4; \/\/ Desktop (carousel statique)\n            if (window.innerWidth > 768) return 2;  \/\/ Tablette\n            return 1; \/\/ Mobile\n        };\n\n        let slidesPerView = getSlidesPerView();\n        let currentIndex = totalOriginal; \n        let isAnimating = false;\n\n        const updateCarousel = (instant = false) => {\n            if (slidesPerView === 4) {\n                track.style.transition = 'none';\n                track.style.transform = 'none';\n                return;\n            }\n            const itemWidth = 100 \/ slidesPerView;\n            track.style.transition = instant ? 'none' : 'transform 0.5s cubic-bezier(0.4, 0.0, 0.2, 1)';\n            track.style.transform = `translateX(-${currentIndex * itemWidth}%)`;\n        };\n\n        updateCarousel(true);\n\n        const moveNext = () => {\n            if (isAnimating || slidesPerView === 4) return;\n            isAnimating = true;\n            currentIndex++;\n            updateCarousel();\n        };\n\n        const movePrev = () => {\n            if (isAnimating || slidesPerView === 4) return;\n            isAnimating = true;\n            currentIndex--;\n            updateCarousel();\n        };\n\n        document.querySelector('.norki-next').addEventListener('click', moveNext);\n        document.querySelector('.norki-prev').addEventListener('click', movePrev);\n\n        track.addEventListener('transitionend', (e) => {\n            if (e.propertyName !== 'transform') return;\n            isAnimating = false;\n            \n            if (currentIndex <= 0) {\n                currentIndex = totalOriginal;\n                updateCarousel(true);\n            } \n            else if (currentIndex >= totalOriginal * 2) {\n                currentIndex = totalOriginal;\n                updateCarousel(true);\n            }\n        });\n\n        window.addEventListener('resize', () => {\n            const newSlidesPerView = getSlidesPerView();\n            if (newSlidesPerView !== slidesPerView) {\n                slidesPerView = newSlidesPerView;\n                updateCarousel(true);\n            }\n        });\n\n        \/\/ --- DETECTION TOUCH\/SWIPE SUR TABLETTE & MOBILE ---\n        let startX = 0;\n        let endX = 0;\n        const swipeThreshold = 40;\n\n        track.addEventListener('touchstart', (e) => {\n            startX = e.touches[0].clientX;\n        }, { passive: true });\n\n        track.addEventListener('touchend', (e) => {\n            endX = e.changedTouches[0].clientX;\n            handleSwipe();\n        });\n\n        const handleSwipe = () => {\n            if (slidesPerView === 4) return;\n            const diff = startX - endX;\n            if (Math.abs(diff) > swipeThreshold) {\n                if (diff > 0) {\n                    moveNext();\n                } else {\n                    movePrev();\n                }\n            }\n        };\n\n        \/\/ --- LAZY LOADING AVEC INTERSECTION OBSERVER ---\n        const observerOptions = {\n            root: null,\n            rootMargin: '0px 100% 0px 100%', \n            threshold: 0\n        };\n\n        const imageObserver = new IntersectionObserver((entries, observer) => {\n            entries.forEach(entry => {\n                if (entry.isIntersecting) {\n                    const img = entry.target;\n                    if (img.dataset.src) {\n                        img.onload = () => {\n                            img.classList.add('norki-loaded');\n                        };\n                        img.src = img.dataset.src;\n                        img.removeAttribute('data-src');\n                        observer.unobserve(img);\n                    }\n                }\n            });\n        }, observerOptions);\n        \n        document.querySelectorAll('.norki-slide img').forEach(img => {\n            imageObserver.observe(img);\n        });\n    });\n<\/script>\n\n\n\n<style>\n    \/* ==========================================================================\n       SECTION PR\u00c9SENCE INTERNATIONALE & CARTE\n       ========================================================================== *\/\n    .norki-decor {\n        z-index: 40;\n        position: relative;\n        background-color: var(--color-norki-beige, #f8f0ea);\n        color: black;\n        \/* Padding Desktop par d\u00e9faut *\/\n        padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n        display: flex;\n        flex-direction: column;\n        gap: 20px;\n        overflow: hidden; \/* Emp\u00eache le d\u00e9bordement horizontal de la carte agrandie *\/\n    }\n\n    \/* GESTION RESPONSIVE DES PADDINGS *\/\n    @media (max-width: 1024px) {\n        .norki-decor {\n            padding: var(--section-pad-v-tab, 60px) var(--section-pad-h-tab, 4vw);\n        }\n    }\n\n    @media (max-width: 600px) {\n        .norki-decor {\n            padding: var(--section-pad-v-mob, 40px) var(--section-pad-h-mob, 20px);\n        }\n    }\n\n    .norki-decor__title {\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        line-height: 1.2;\n        font-weight: 500;\n        margin: 0;\n        letter-spacing: -0.01em;\n    }\n\n    .norki-decor__content {\n        display: flex;\n        flex-direction: column;\n        gap: 20px;\n    }\n\n    .norki-decor__content p {\n        margin: 0;\n        font-size: 0.95rem;\n        line-height: 1.6;\n    }\n\n    \/* Style sp\u00e9cifique pour les liens de villes et bureau d'\u00e9tudes (Alignement DA) *\/\n    .norki-decor__link {\n        color: inherit;\n        text-decoration: underline;\n        text-decoration-color: currentColor;\n        text-underline-offset: 4px;\n        text-decoration-thickness: 1px;\n        transition: text-decoration-color 0.3s ease, opacity 0.3s ease;\n    }\n\n    .norki-decor__link:hover {\n        text-decoration-color: transparent;\n        opacity: 0.7;\n    }\n\n    .norki-decor__actions {\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n        margin-top: 20px;\n        width: 100%;\n        max-width: 320px;\n    }\n\n    .norki-decor__btn {\n        display: inline-flex;\n        justify-content: center;\n        align-items: center;\n        padding: 4px 27px; \/* Ajust\u00e9 pour une meilleure zone de clic tactile *\/\n        text-decoration: none;\n        font-size: 0.95rem;\n        font-weight: 500;\n        transition: all 0.3s ease;\n        border: 1px solid transparent;\n    }\n\n    .norki-decor__btn--primary {\n        background-color: black;\n        color: #ffffff;\n    }\n\n    .norki-decor__btn--primary:hover {\n        background-color: var(--color-norki-brown, #50423d); \/* Noir au survol *\/\n    }\n\n    .norki-decor__btn--secondary {\n        color: black;\n        border-color: black;\n        background-color: transparent;\n    }\n\n    .norki-decor__btn--secondary:hover {\n        background-color: black;\n        color: #ffffff;\n    }\n\n    \/* --- GESTION DE LA CARTE --- *\/\n    .norki-decor__map-container {\n        width: 113%;\n        display: flex;\n        justify-content: center;\n        align-items: center;\n        margin: 10px 0;\n    }\n    \n    @media (max-width: 1500px) {\n        .norki-decor__map-container {\n            width: 111%;\n        }\n    }\n    \n    @media (max-width: 1024px) {\n        .norki-decor__map-container {\n            width: 100%;\n        }\n    }\n\n    \/* WRAPPER COORDONN\u00c9 : Synchronise la position absolue des zones r\u00e9actives *\/\n    .norki-decor__map-wrapper {\n        position: relative;\n        width: 100%;\n        padding-left: 5px;\n        transform: scale(1.05) translateX(-3%);\n    }\n\n    @media (max-width: 1500px) {\n        .norki-decor__map-wrapper {\n            transform: scale(1.05) translateX(0);\n        }\n    }\n    \n    .norki-decor__map-img {\n        width: 100%;\n        height: auto;\n        object-fit: contain;\n        display: block;\n    }\n\n    \/* Logique d'affichage des sources (Triple Breakpoint) *\/\n    .norki-decor__img-default, \n    .norki-decor__img-responsive, \n    .norki-decor__img-mobile { \n        display: none; \n    }\n\n    \/* 1. Desktop Large (> 1500px) *\/\n    @media (min-width: 1501px) {\n        .norki-decor__img-default { display: block; }\n    }\n\n    \/* 2. Tablette & Desktop Moyen (601px - 1500px) *\/\n    @media (min-width: 601px) and (max-width: 1500px) {\n        .norki-decor__img-responsive { display: block; }\n    }\n\n    \/* 3. Mobile \u00e9troit (< 600px) *\/\n    @media (max-width: 600px) {\n        .norki-decor__img-mobile { display: block; }\n    }\n\n    \/* ZONES INTERACTIVES OVERLAYS (NEUTRES - SANS HOVER OU EFFETS DE TRANSITIONS MULTIPLES) *\/\n    .norki-decor__map-link-overlay {\n        position: absolute;\n        border-radius: 100px;\n        cursor: pointer;\n        z-index: 10;\n        background-color: rgba(255, 255, 255, 0);\n        \n    }\n\n    \/* --------------------------------------------------------------------------\n       POSITIONNEMENTS DES LIENS (SUR-MESURE SUR LES 3 BREAKPOINTS DE LA CARTE)\n       -------------------------------------------------------------------------- *\/\n\n    \/* Version Mobile \u00c9troite (ViewBox 1779.56 x 855.11) *\/\n    @media (max-width: 600px) {\n        .norki-decor__map-link-overlay--paris {\n            left: 31.5116%; top: 4.7117%; width: 13.4679%; height: 6.4319%;\n        }\n        .norki-decor__map-link-overlay--strasbourg {\n            left: 43.5539%; top: 13.3924%; width: 19.3368%; height: 6.4319%;\n        }\n        .norki-decor__map-link-overlay--gstaad {\n            left: 61.8309%; top: 23.5443%; width: 15.7994%; height: 6.4319%;\n        }\n        .norki-decor__map-link-overlay--megeve {\n            left: 73.2552%; top: 32.8776%; width: 16.9379%; height: 6.6588%;\n        }\n    }\n\n    \/* Version Tablette \/ Laptop (ViewBox 2056.89 x 858.67) *\/\n    @media (min-width: 601px) and (max-width: 1500px) {\n        .norki-decor__map-link-overlay--paris {\n            left: 35.0956%; top: 5.9348%; width: 11.6521%; height: 6.4053%;\n        }\n        .norki-decor__map-link-overlay--strasbourg {\n            left: 45.4392%; top: 14.5784%; width: 16.9027%; height: 6.4053%;\n        }\n        .norki-decor__map-link-overlay--gstaad {\n            left: 61.250%; top: 24.6893%; width: 13.6692%; height: 6.4053%;\n        }\n        .norki-decor__map-link-overlay--megeve {\n            left: 71.3564%; top: 33.9828%; width: 14.6542%; height: 6.6312%;\n        }\n    }\n\n    \/* Version Grand \u00c9cran \/ Bureau (ViewBox 2506.67 x 840.67) *\/\n    @media (min-width: 1501px) {\n        .norki-decor__map-link-overlay--paris {\n            left: 39.6211%; top: 4.7926%; width: 9.5613%; height: 6.5424%;\n        }\n        .norki-decor__map-link-overlay--strasbourg {\n            left: 48.1989%; top: 13.6225%; width: 13.6698%; height: 6.5424%;\n        }\n        .norki-decor__map-link-overlay--gstaad {\n            left: 61.1167%; top: 23.9488%; width: 11.2165%; height: 6.5424%;\n        }\n        .norki-decor__map-link-overlay--megeve {\n            left: 69.4397%; top: 33.4424%; width: 12.0247%; height: 6.7732%;\n        }\n    }\n\n    \/* --- RESPONSIVE DESKTOP (GRID LAYOUT) --- *\/\n    @media (min-width: 1024px) {\n        .norki-decor {\n            display: grid;\n            \/* Augmentation de la part allou\u00e9e \u00e0 l'image (65%) *\/\n            grid-template-columns: 35% 65%;\n            grid-template-areas:\n                \"title title\"   \/* Le titre s'\u00e9tend sur les 2 colonnes *\/\n                \"content map\";\n            column-gap: 30px;\n            row-gap: 40px;\n            align-items: center;\n        }\n\n        .norki-decor__title {\n            grid-area: title;\n            align-self: end;\n            z-index: 2;\n            position: relative;\n            max-width: 900px;\n        }\n\n        .norki-decor__content {\n            grid-area: content;\n            align-self: start;\n            max-width: 480px;\n            z-index: 2; \/* Prot\u00e8ge le texte du d\u00e9bordement de l'image *\/\n            position: relative;\n        }\n\n        .norki-decor__map-container {\n            grid-area: map;\n            margin: 0;\n            height: 100%;\n            position: relative;\n            z-index: 1;\n        }\n\n        \/* Ajustement sp\u00e9cifique \"PC Normal\" pour occuper l'espace \u00e0 gauche sans d\u00e9phaser les overlays *\/\n        .norki-decor__map-wrapper {\n            width: 125%; \/* Force le wrapper \u00e0 \u00eatre plus grand que son conteneur *\/\n            max-width: none;\n            \/* D\u00e9cale le wrapper vers la gauche pour combler le vide sans cr\u00e9er de scroll horizontal *\/\n            transform: translateX(-5%);\n            transform-origin: center left;\n        }\n    }\n\n    \/* Ajustement de la balance pour les \u00e9crans tr\u00e8s larges *\/\n    @media (min-width: 1501px) {\n        .norki-decor__map-wrapper {\n            width: 115%;\n            transform: translateX(-5%);\n        }\n    }\n<\/style>\n\n<section class=\"norki-decor\" id=\"section-decor\">\n    \n    <h2 class=\"norki-decor__title avenirmedium-font\">\n        Gstaad, Paris, Meg\u00e8ve, or Strasbourg<br>\n        \u2013 A Global Presence for Bespoke Excellence\n    <\/h2>\n\n    <div class=\"norki-decor__map-container\">\n        <!-- WRAPPER : Synchronise l'image et ses calques cliquables sans d\u00e9formation -->\n        <div class=\"norki-decor__map-wrapper\">\n            \n            <!-- 1. Source Bureau Large -->\n            <img decoding=\"async\" src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/images\/Carte-Monde_Paris-Gstaad-Megeve.svg\" alt=\"Map of Norki locations\" class=\"norki-decor__map-img norki-decor__img-default\" onerror=\"this.style.display='none';\">\n\n            <!-- 2. Source Tablette \/ Laptop (Carte-Monde-Responsive-2) -->\n            <img decoding=\"async\" src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/images\/Carte-Monde-Responsive-2_Paris-Gstaad-Megeve.svg\" alt=\"Map of Norki locations - Tablet\" class=\"norki-decor__map-img norki-decor__img-responsive\" onerror=\"this.style.display='none';\">\n\n            <!-- 3. Source Mobile \u00e9troit (Carte-Monde-Responsive) -->\n            <img decoding=\"async\" src=\"https:\/\/www.norki.com\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/images\/Carte-Monde-Responsive_Paris-Gstaad-Megeve.svg\" alt=\"Map of Norki locations - Mobile\" class=\"norki-decor__map-img norki-decor__img-mobile\" onerror=\"this.style.display='none';\">\n\n            <!-- OVERLAYS CLIQUEABLES (NEUTRES - SANS HOVER VISUEL CONFORM\u00c9MENT \u00c0 VOTRE DEMANDE) -->\n            <a href=\"https:\/\/www.norki.com\/en\/content\/15-norki-boutique-tapis-plaids-coussins-mobilier-paris\" class=\"norki-decor__map-link-overlay norki-decor__map-link-overlay--paris\" title=\"Discover our Paris boutique\"><\/a>\n               \n            <!-- LIEN STRASBOURG POINTANT VERS L'ATELIER (EN) -->\n            <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/\" class=\"norki-decor__map-link-overlay norki-decor__map-link-overlay--strasbourg\" title=\"Discover our Atelier\"><\/a>\n               \n            <a href=\"https:\/\/www.norki.com\/en\/content\/17-norki-boutique-decoration-tapis-plaids-coussins-mobilier-gstaad\" class=\"norki-decor__map-link-overlay norki-decor__map-link-overlay--gstaad\" title=\"Discover our Gstaad boutique\"><\/a>\n               \n            <a href=\"https:\/\/www.norki.com\/en\/content\/16-decoration-interieure-acheter-coussin-canape-fauteuil-plaid-megeve\" class=\"norki-decor__map-link-overlay norki-decor__map-link-overlay--megeve\" title=\"Discover our Meg\u00e8ve boutique\"><\/a>\n               \n        <\/div>\n    <\/div>\n\n    <div class=\"norki-decor__content\">\n        <p>\n            Our bespoke projects are deployed worldwide from our boutiques in \n            <a href=\"https:\/\/www.norki.com\/en\/content\/17-norki-boutique-decoration-tapis-plaids-coussins-mobilier-gstaad\" class=\"norki-decor__link\" title=\"Discover our Gstaad boutique\">Gstaad<\/a>, \n            <a href=\"https:\/\/www.norki.com\/en\/content\/15-norki-boutique-tapis-plaids-coussins-mobilier-paris\" class=\"norki-decor__link\" title=\"Discover our Paris boutique\">Paris<\/a>, and \n            <a href=\"https:\/\/www.norki.com\/en\/content\/16-decoration-interieure-acheter-coussin-canape-fauteuil-plaid-megeve\" class=\"norki-decor__link\" title=\"Discover our Meg\u00e8ve boutique\">Meg\u00e8ve<\/a>, \n            as well as from our <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/\" class=\"norki-decor__link\" title=\"Discover our Design Studio\">Design Studio<\/a> and manufacturing ateliers in Strasbourg.\n        <\/p>\n        \n        <p>\n            This international presence allows us to manage every project with meticulous precision, ensuring a constant dialogue between creative vision and technical production.\n        <\/p>\n        \n        <p>\n            Wherever our clients are located, NORKI designs, crafts, and delivers its creations across the globe, with the same unwavering attention to detail, noble materials, and technical accuracy.\n        <\/p>\n\n        <div class=\"norki-decor__actions\">\n            <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/contact-us\/\" class=\"norki-decor__btn norki-decor__btn--primary\" title=\"Send an email to our Design Studio\">Contact our Design Studio<\/a>\n            <a href=\"https:\/\/api.whatsapp.com\/send?phone=33647923857\" class=\"norki-decor__btn norki-decor__btn--secondary\" target=\"_blank\" rel=\"noopener\" title=\"Contact us directly on WhatsApp\">Whatsapp us<\/a>\n        <\/div>\n    <\/div>\n\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Discover the Design Studio Shop Norki Objects White Coco Armchair Buy White Fluxus Cushion Buy Contemporary Rug Buy Knokke Pouf Buy Coffee Tables Buy Beige Coco Armchair Buy Yaga Coffee Table Buy Design Studio Bespoke Concept &#038; Engineering for Furniture, Seating, and Rugs From the technical blueprints of your sofa to the initial sketches of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-page-builder-no-header-footer.php","meta":{"_uag_custom_page_level_css":"\/* A COPIER COLLER *\/\n\n:root {\n\t--wp--preset--color--contrast: black;\n    \/* Paddings de section standards *\/\n    --section-pad-v-dt: 80px;\n    --section-pad-h-dt: 5vw;\n    \n    --section-pad-v-tab: 50px;\n    --section-pad-h-tab: 4vw;\n    \n    --section-pad-v-mob: 40px;\n    --section-pad-h-mob: 20px;\n\n    \/* Couleurs  Polices *\/\n    --color-norki-brown: #50423d;\n    --color-norki-beige: #f8f0ea;\n    --font-baskerville: 'Baskerville', serif;\n    --font-montserrat: 'Montserrat', sans-serif;\n}\n\n@font-face {\n  font-family: 'LibreBaskervilleItalic';\n  src: url('\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/fonts\/Libre-Baskerville\/LibreBaskerville-Italic.ttf') format('truetype');\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: 'Bestermind';\n  src: url('\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/fonts\/Bestermind\/BestermindRegular.ttf') format('truetype');\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: 'AvenirBook';\n  src: url('\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/fonts\/Avenir\/Avenir-Book-01.otf') format('opentype');\n  font-weight: normal;\n  font-style: normal;\n}\n\n\n@font-face {\n  font-family: 'AvenirMedium';\n  src: url('\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/fonts\/Avenir\/Avenir-Medium-09.otf') format('opentype');\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: 'AvenirBookOblique';\n  src: url('\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/fonts\/Avenir\/Avenir-BookOblique-02.otf') format('opentype');\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: 'Pertili';\n  src: url('\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/fonts\/PERTILI.TTF') format('truetype');\n  font-weight: normal;\n  font-style: normal;\n}\n\n.pertili-font {\n\tfont-family: \"Pertili\", sans-serif !important;\n}\n\n.bestermind-font {\n\tfont-family: \"Bestermind\", sans-serif !important;\n}\n\n.avenirbookoblique-font {\n\tfont-family: \"AvenirBookOblique\", sans-serif !important;\n}\n\n.baskerville-italic-font {\n\tfont-family: \"LibreBaskervilleItalic\", sans-serif !important;\n}\n\n.avenirmedium-font {\n\tfont-family: \"AvenirMedium\", sans-serif !important;\n}\n\nbody:not(.wp-admin) * {\n  font-family: \"AvenirBook\", sans-serif;\n}\n\nbody {\n\tbackground-color: #f8f0ea !important;\n\tcolor: black;\n}\n\nh2 {\n\tfont-family: \"AvenirMedium\", sans-serif !important;\n}\n\n.components-sandbox {\n\tmax-height: 500px;\n}\n\n\/* A COPIER COLLER END *\/","_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-4265","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>NORKI Design Studio | Bespoke Furniture, Seating &amp; Custom Rugs<\/title>\n<meta name=\"description\" content=\"Bespoke furniture &amp; rug design: in-house studio, 3D rendering, and French craftsmanship. Experience the luxury of tailor-made interiors with NORKI.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"NORKI Design Studio | Bespoke Furniture, Seating &amp; Custom Rugs\" \/>\n<meta property=\"og:description\" content=\"Bespoke furniture &amp; rug design: in-house studio, 3D rendering, and French craftsmanship. Experience the luxury of tailor-made interiors with NORKI.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/\" \/>\n<meta property=\"og:site_name\" content=\"Norki\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/NorkiDecoration\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-10T09:19:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Montage-Bureau-Etudes.jpg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/\",\"url\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/\",\"name\":\"NORKI Design Studio | Bespoke Furniture, Seating & Custom Rugs\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/sur-mesure\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/norki.com\\\/sur-mesure\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Montage-Bureau-Etudes.jpg\",\"datePublished\":\"2026-06-08T09:37:10+00:00\",\"dateModified\":\"2026-06-10T09:19:19+00:00\",\"description\":\"Bespoke furniture & rug design: in-house studio, 3D rendering, and French craftsmanship. Experience the luxury of tailor-made interiors with NORKI.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/#primaryimage\",\"url\":\"https:\\\/\\\/norki.com\\\/sur-mesure\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Montage-Bureau-Etudes.jpg\",\"contentUrl\":\"https:\\\/\\\/norki.com\\\/sur-mesure\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Montage-Bureau-Etudes.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/custom-made-upholstery\\\/bespoke-interior-design-studio-furniture-rugs\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.norki.com\\\/sur-mesure\\\/fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Design Studio\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/sur-mesure\\\/#website\",\"url\":\"https:\\\/\\\/www.norki.com\\\/sur-mesure\\\/\",\"name\":\"Norki\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.norki.com\\\/sur-mesure\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"NORKI Design Studio | Bespoke Furniture, Seating & Custom Rugs","description":"Bespoke furniture & rug design: in-house studio, 3D rendering, and French craftsmanship. Experience the luxury of tailor-made interiors with NORKI.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/","og_locale":"fr_FR","og_type":"article","og_title":"NORKI Design Studio | Bespoke Furniture, Seating & Custom Rugs","og_description":"Bespoke furniture & rug design: in-house studio, 3D rendering, and French craftsmanship. Experience the luxury of tailor-made interiors with NORKI.","og_url":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/","og_site_name":"Norki","article_publisher":"https:\/\/facebook.com\/NorkiDecoration","article_modified_time":"2026-06-10T09:19:19+00:00","og_image":[{"url":"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Montage-Bureau-Etudes.jpg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/","url":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/","name":"NORKI Design Studio | Bespoke Furniture, Seating & Custom Rugs","isPartOf":{"@id":"https:\/\/www.norki.com\/sur-mesure\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/#primaryimage"},"image":{"@id":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/#primaryimage"},"thumbnailUrl":"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Montage-Bureau-Etudes.jpg","datePublished":"2026-06-08T09:37:10+00:00","dateModified":"2026-06-10T09:19:19+00:00","description":"Bespoke furniture & rug design: in-house studio, 3D rendering, and French craftsmanship. Experience the luxury of tailor-made interiors with NORKI.","breadcrumb":{"@id":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/#primaryimage","url":"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Montage-Bureau-Etudes.jpg","contentUrl":"https:\/\/norki.com\/sur-mesure\/wp-content\/uploads\/2026\/05\/Montage-Bureau-Etudes.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-interior-design-studio-furniture-rugs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.norki.com\/sur-mesure\/fr\/"},{"@type":"ListItem","position":2,"name":"Design Studio"}]},{"@type":"WebSite","@id":"https:\/\/www.norki.com\/sur-mesure\/#website","url":"https:\/\/www.norki.com\/sur-mesure\/","name":"Norki","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.norki.com\/sur-mesure\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"}]}},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"webmaster","author_link":"https:\/\/www.norki.com\/sur-mesure\/author\/webmaster\/"},"uagb_comment_info":0,"uagb_excerpt":"Discover the Design Studio Shop Norki Objects White Coco Armchair Buy White Fluxus Cushion Buy Contemporary Rug Buy Knokke Pouf Buy Coffee Tables Buy Beige Coco Armchair Buy Yaga Coffee Table Buy Design Studio Bespoke Concept & Engineering for Furniture, Seating, and Rugs From the technical blueprints of your sofa to the initial sketches of\u2026","_links":{"self":[{"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/pages\/4265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/comments?post=4265"}],"version-history":[{"count":11,"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/pages\/4265\/revisions"}],"predecessor-version":[{"id":4489,"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/pages\/4265\/revisions\/4489"}],"wp:attachment":[{"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/media?parent=4265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/categories?post=4265"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.norki.com\/sur-mesure\/wp-json\/wp\/v2\/tags?post=4265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}