{"id":2697,"date":"2026-07-30T09:06:01","date_gmt":"2026-07-30T07:06:01","guid":{"rendered":"https:\/\/www.norki.com\/studio-chalet\/?page_id=2697"},"modified":"2026-07-31T12:35:13","modified_gmt":"2026-07-31T10:35:13","slug":"jackson-hole","status":"publish","type":"page","link":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/","title":{"rendered":"Moreta"},"content":{"rendered":"\n<style>\n\/* Variables locales au composant *\/\n:root {\n  --nk-hero-padding-desk: 0 40px 40px 40px;\n  --nk-hero-padding-tab: 0 30px 30px 30px;\n  --nk-hero-padding-mob: 0 20px 24px 20px;\n}\n\n.nk-hero {\n  position: relative;\n  width: 100%;\n  height: 120vh; \n  min-height: 700px;\n  overflow: hidden;\n  background-color: #000000;\n}\n\n.nk-hero__bg {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  z-index: 1;\n}\n\n.nk-hero__bg img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  object-position: center center;\n  display: block;\n}\n\n\/* Fondu d\u00e9grad\u00e9 inf\u00e9rieur pour assurer la lisibilit\u00e9 optimale des textes blancs *\/\n.nk-hero__overlay {\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  width: 100%;\n  height: 40%;\n  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);\n  z-index: 2;\n  pointer-events: none;\n}\n\n.nk-hero__content {\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  width: 100%;\n  z-index: 3;\n  padding: var(--nk-hero-padding-desk);\n  color: #ffffff;\n  box-sizing: border-box;\n}\n\n\/* En-t\u00eate Textes (Titre + Sous-titre) *\/\n.nk-hero__header {\n  display: flex;\n  justify-content: space-between;\n  align-items: flex-end;\n  margin-bottom: 35px;\n  gap: 20px;\n  width: 100%;\n}\n\n.nk-hero__title-wrapper {\n  flex: 1 1 65%;\n  max-width: calc(100% - 250px);\n}\n\n.nk-hero__subtitle-wrapper {\n  flex: 0 0 auto;\n  text-align: right;\n  min-width: max-content;\n}\n\n.nk-hero__title {\n  color: #ffffff;\n  font-size: clamp(2.2rem, 3.2vw, 3.2rem);\n  letter-spacing: 0.02em;\n  line-height: 1.1;\n  font-weight: normal;\n  margin: 0;\n}\n\n.nk-hero__subtitle {\n  font-size: clamp(2.2rem, 3.2vw, 3.2rem);\n  line-height: 1.1;\n  font-weight: normal;\n  display: block;\n  color: #ffffff;\n}\n\n\/* Ligne de s\u00e9paration fine *\/\n.nk-hero__divider {\n  width: 100%;\n  height: 1px;\n  background-color: rgba(255, 255, 255, 0.6);\n  border: none;\n  margin: 0 0 16px 0;\n}\n\n\/* Informations M\u00e9tadonn\u00e9es *\/\n.nk-hero__meta {\n  display: flex;\n  justify-content: flex-start;\n  gap: 40px;\n}\n\n.nk-hero__meta-item {\n  font-size: 0.75rem;\n  letter-spacing: 0.05em;\n  text-transform: capitalize;\n}\n\n\/* ============================================\n   RESPONSIVE TABLETTE (\u2264 1024px)\n============================================ *\/\n@media (max-width: 1024px) {\n  .nk-hero__content {\n    padding: var(--nk-hero-padding-tab);\n  }\n  .nk-hero__title-wrapper {\n    max-width: 100%;\n  }\n  .nk-hero__title,\n  .nk-hero__subtitle {\n    font-size: clamp(1.8rem, 2.8vw, 2.4rem);\n  }\n  .nk-hero__meta {\n    gap: 30px;\n  }\n}\n\n\/* ============================================\n   RESPONSIVE MOBILE (\u2264 640px)\n============================================ *\/\n@media (max-width: 640px) {\n  .nk-hero {\n    height: 110vh; \n  }\n\n  .nk-hero__bg img {\n    object-position: 50% center;\n  }\n\n  .nk-hero__content {\n    padding: var(--nk-hero-padding-mob);\n  }\n\n  .nk-hero__header {\n    flex-direction: column;\n    align-items: flex-start;\n    gap: 8px;\n    margin-bottom: 20px;\n  }\n\n  .nk-hero__title-wrapper,\n  .nk-hero__subtitle-wrapper {\n    flex: none;\n    max-width: 100%;\n    min-width: 0;\n  }\n\n  .nk-hero__subtitle-wrapper {\n    text-align: left;\n  }\n\n  .nk-hero__title {\n    font-size: 1.8rem;\n  }\n\n  .nk-hero__subtitle {\n    font-size: 1.7rem;\n  }\n\n  .nk-hero__meta {\n    flex-wrap: nowrap;\n    gap: 25px;\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch;\n    scrollbar-width: none;\n    -ms-overflow-style: none;\n    padding-bottom: 2px;\n    padding-left: 8px;\n    padding-right: 8px;\n  }\n  \n  .nk-hero__meta::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nk-hero__meta-item {\n    white-space: nowrap;\n    flex-shrink: 0;\n  }\n\n  .nk-hero__meta-item:nth-child(3) {\n    margin-left: 0;\n    flex-basis: auto;\n    margin-top: 0;\n  }\n}\n<\/style>\n\n<section class=\"nk-hero\">\n  <div class=\"nk-hero__bg\">\n    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2025_10_21_Pool.jpg\" alt=\"American West Log House in Jackson Hole\" loading=\"eager\">\n    <div class=\"nk-hero__overlay\" aria-hidden=\"true\"><\/div>\n  <\/div>\n  \n  <div class=\"nk-hero__content\">\n    <div class=\"nk-hero__header\">\n      <!-- Wrapper Titre Principal -->\n      <div class=\"nk-hero__title-wrapper\">\n        <h1 class=\"nk-hero__title avenirmedium-font\">American West Log House<\/h1>\n      <\/div>\n      <!-- Wrapper Sous-titre Stylis\u00e9 -->\n      <div class=\"nk-hero__subtitle-wrapper\">\n        <span class=\"nk-hero__subtitle baskerville-italic-font\">Chalet in Jackson Hole<\/span>\n      <\/div>\n    <\/div>\n    \n    <hr class=\"nk-hero__divider\" aria-hidden=\"true\">\n    \n    <!-- Meta informations avec scroll automatique mobile -->\n    <div class=\"nk-hero__meta\">\n      <span class=\"nk-hero__meta-item avenirmedium-font\">Jackson Hole<\/span>\n      <span class=\"nk-hero__meta-item avenirmedium-font\">Rustic Contemporary<\/span>\n      <span class=\"nk-hero__meta-item avenirmedium-font\">800 sqm<\/span>\n      <span class=\"nk-hero__meta-item avenirmedium-font\">2025<\/span>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', () => {\n  const metaContainer = document.querySelector('.nk-hero__meta');\n  if (!metaContainer) return;\n\n  let isAnimating = false;\n  let animationFrameId;\n  let direction = 1;\n  let speed = 0.5;\n  let resumeTimeout;\n  let extremityTimeout;\n  let isInteracting = false;\n  let isPausedAtExtremity = false;\n  let currentScroll = metaContainer.scrollLeft;\n\n  function autoScroll() {\n    if (isInteracting) return;\n    if (isPausedAtExtremity) {\n       animationFrameId = requestAnimationFrame(autoScroll);\n       return;\n    }\n    \n    if (metaContainer.scrollWidth <= metaContainer.clientWidth) {\n       animationFrameId = requestAnimationFrame(autoScroll);\n       return;\n    }\n\n    currentScroll += speed * direction;\n    metaContainer.scrollLeft = Math.round(currentScroll);\n\n    const maxScroll = metaContainer.scrollWidth - metaContainer.clientWidth;\n\n    if (direction === 1) {\n      if (metaContainer.scrollLeft >= maxScroll - 1) {\n        isPausedAtExtremity = true;\n        extremityTimeout = setTimeout(() => {\n          direction = -1;\n          currentScroll = metaContainer.scrollLeft;\n          isPausedAtExtremity = false;\n        }, 2000);\n      }\n    } else if (direction === -1) {\n      if (metaContainer.scrollLeft <= 1) {\n        isPausedAtExtremity = true;\n        extremityTimeout = setTimeout(() => {\n          direction = 1;\n          currentScroll = metaContainer.scrollLeft;\n          isPausedAtExtremity = false;\n        }, 2000);\n      }\n    }\n\n    animationFrameId = requestAnimationFrame(autoScroll);\n  }\n\n  function startAnimation() {\n    if (!isAnimating) {\n      isAnimating = true;\n      currentScroll = metaContainer.scrollLeft;\n      \n      isPausedAtExtremity = true;\n      clearTimeout(extremityTimeout);\n      extremityTimeout = setTimeout(() => {\n        isPausedAtExtremity = false;\n      }, 2000);\n\n      autoScroll();\n    }\n  }\n\n  function stopAnimation() {\n    isAnimating = false;\n    cancelAnimationFrame(animationFrameId);\n  }\n\n  function handleInteraction() {\n    isInteracting = true;\n    isPausedAtExtremity = false;\n    clearTimeout(extremityTimeout);\n    stopAnimation();\n    clearTimeout(resumeTimeout);\n    \n    resumeTimeout = setTimeout(() => {\n      isInteracting = false;\n      if (window.innerWidth <= 640) {\n        currentScroll = metaContainer.scrollLeft;\n        startAnimation();\n      }\n    }, 3000);\n  }\n\n  const observer = new IntersectionObserver((entries) => {\n    entries.forEach(entry => {\n      if (entry.isIntersecting) {\n        if (window.innerWidth <= 640) {\n          startAnimation();\n        }\n      } else {\n        stopAnimation();\n      }\n    });\n  }, { threshold: 0 });\n\n  observer.observe(metaContainer);\n\n  metaContainer.addEventListener('touchstart', () => {\n    currentScroll = metaContainer.scrollLeft; \n    handleInteraction();\n  }, { passive: true });\n  \n  metaContainer.addEventListener('touchmove', () => {\n    currentScroll = metaContainer.scrollLeft; \n    handleInteraction();\n  }, { passive: true });\n  \n  metaContainer.addEventListener('wheel', handleInteraction, { passive: true });\n\n  window.addEventListener('resize', () => {\n    if (window.innerWidth > 640) {\n       stopAnimation();\n       metaContainer.scrollLeft = 0;\n       currentScroll = 0;\n    } else {\n       if (!isInteracting) {\n         startAnimation();\n       }\n    }\n  });\n});\n<\/script>\n\n\n\n<style>\n\/* ==========================================================================\n   COMPOSANT : INTRO CHALET JACKSON HOLE\n   ========================================================================== *\/\n\n:root {\n  --color-norki-beige: #f8f0ea;\n  --text-main: #000000;\n}\n\n.nk-intro-jh {\n  background-color: var(--color-norki-beige, #f8f0ea);\n  padding: 80px 5vw;\n  width: 100%;\n  display: flex;\n  justify-content: center;\n  box-sizing: border-box;\n}\n\n.nk-intro-jh__inner {\n  width: 100%;\n  display: grid;\n  grid-template-columns: 1fr 1.6fr;\n  gap: clamp(40px, 6vw, 100px);\n  align-items: start;\n}\n\n\/* ==========================================================================\n   TYPOGRAPHIE ET EN-T\u00caTE\n   ========================================================================== *\/\n.nk-intro-jh__header {\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-start;\n}\n\n.nk-intro-jh__title {\n  font-size: clamp(1.4rem, 2.2vw, 28px);\n  line-height: 1.25;\n  color: var(--text-main, #000000);\n  font-weight: normal;\n  letter-spacing: -0.01em;\n  margin: 0 !important;\n}\n\n.nk-intro-jh__title-accent {\n  display: block;\n  font-size: 1em;\n  color: var(--text-main, #000000);\n  margin-top: 4px;\n}\n\n.nk-intro-jh__content {\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-start;\n}\n\n.nk-intro-jh__paragraph {\n  font-size: 0.95rem;\n  line-height: 1.5;\n  color: var(--text-main, #000000);\n  letter-spacing: 0.01em;\n  max-width: 100%;\n  margin: 0 !important;\n}\n\n\/* Lien \u00e9ditorial inline Norki *\/\n.nk-editorial-inline-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.nk-editorial-inline-link:hover {\n  text-decoration-color: transparent;\n  opacity: 0.7;\n}\n\n\/* ==========================================================================\n   RESPONSIVE TABLETTE (\u2264 1024px)\n   ========================================================================== *\/\n@media (max-width: 1024px) {\n  .nk-intro-jh {\n    padding: 50px 4vw;\n  }\n  \n  .nk-intro-jh__inner {\n    grid-template-columns: 1fr;\n    gap: 28px;\n  }\n}\n\n\/* ==========================================================================\n   RESPONSIVE MOBILE (\u2264 640px)\n   ========================================================================== *\/\n@media (max-width: 640px) {\n  .nk-intro-jh {\n    padding: 40px 20px;\n  }\n  \n  .nk-intro-jh__inner {\n    gap: 20px;\n  }\n}\n<\/style>\n\n<section class=\"nk-intro-jh\">\n  <div class=\"nk-intro-jh__inner\">\n    \n    <!-- Colonne Gauche : Titres -->\n    <div class=\"nk-intro-jh__header\">\n      <h2 class=\"nk-intro-jh__title avenirmedium-font\">\n        Wyoming\u2019s Legendary Heritage\n        <span class=\"nk-intro-jh__title-accent baskerville-italic-font\">and the Majesty of the Open West<\/span>\n      <\/h2>\n    <\/div>\n    \n    <!-- Colonne Droite : Description -->\n    <div class=\"nk-intro-jh__content\">\n      <p class=\"nk-intro-jh__paragraph\">\n        Set in the state of Wyoming, near the Idaho border, the <a href=\"https:\/\/www.office-tourisme-usa.com\/etat\/wyoming\/jackson-hole\/\" class=\"nk-editorial-inline-link\" target=\"_blank\" rel=\"noopener\">Jackson Hole<\/a> valley commands a spectacular presence. Named after the early 19th-century trapper <a href=\"https:\/\/en.wikipedia.org\/wiki\/David_Edward_Jackson\" class=\"nk-editorial-inline-link\" target=\"_blank\" rel=\"noopener\">David Edward Jackson<\/a>, this enclave preserves an intact pioneer spirit: wooden boardwalks, covered pathways, and hand-carved timber structures. Facing the dramatic mineral backdrop of the Teton Range, where nature reigns supreme, <a href=\"https:\/\/www.norki.com\/en\/studio-chalet\/\" class=\"nk-editorial-inline-link\">Studio Chalet<\/a> delivers a sophisticated, contemporary reinterpretation of the American mountain refuge.\n      <\/p>\n    <\/div>\n    \n  <\/div>\n<\/section>\n\n\n\n<style>\n\/* ==========================================================================\n   DESIGN SYSTEM & VARIABLES DE BASE NORKI\n   ========================================================================== *\/\n:root {\n    --color-norki-beige: #f8f0ea;\n    --color-norki-brown: #50423d;\n    --text-main: #000000;\n}\n\n\/* ==========================================================================\n   COMPOSANT : SECTION IMAGE UNIQUE IMMERSIVE\n   ========================================================================== *\/\n.nk-simple-image {\n    width: 100%;\n    background-color: var(--color-norki-beige, #f8f0ea);\n    line-height: 0; \/* \u00c9vite un d\u00e9calage de pixel parasite sous l'image *\/\n    overflow: hidden;\n    padding-bottom: 15px; \/* Espace de respiration sous la l\u00e9gende *\/\n}\n\n.nk-simple-image__wrapper {\n    width: 100%;\n    height: 85vh; \/* Hauteur immersive et \u00e9l\u00e9gante sur PC *\/\n    min-height: 500px;\n    overflow: hidden;\n    position: relative;\n}\n\n.nk-simple-image__img {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    object-position: center center; \/* Centrage \u00e9quilibr\u00e9 par d\u00e9faut sur PC *\/\n    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);\n}\n\n\/* L\u00e9ger effet de zoom luxueux et fluide au survol de la zone image *\/\n.nk-simple-image__wrapper:hover .nk-simple-image__img {\n    transform: scale(1.02);\n}\n\n\/* Styles des l\u00e9gendes sous les images *\/\n.nk-simple-image__caption {\n    display: block;\n    font-size: 0.8rem; \n    margin-top: 10px;\n    text-align: right;\n    color: var(--text-main, #000000);\n    line-height: normal; \/* Annule le line-height 0 du parent pour l'affichage du texte *\/\n    padding-right: var(--section-pad-h-dt, 5vw); \/* Alignement sur la grille \u00e0 droite *\/\n}\n\n\/* Style de lien \u00e9ditorial Norki *\/\n.nk-editorial-inline-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.nk-editorial-inline-link:hover {\n    text-decoration-color: transparent;\n    opacity: 0.7;\n}\n\n\/* ==========================================================================\n   RESPONSIVE MOBILE ET TABLETTE\n   ========================================================================== *\/\n@media (max-width: 1024px) {\n    .nk-simple-image__caption {\n        padding-right: var(--section-pad-h-tab, 4vw);\n    }\n}\n\n@media (max-width: 767px) {\n    .nk-simple-image__caption {\n        padding-right: var(--section-pad-h-mob, 20px);\n    }\n}\n\n@media (max-width: 640px) {\n    .nk-simple-image__wrapper {\n        height: 60vh; \/* Hauteur ajust\u00e9e pour un cadrage id\u00e9al sur mobile *\/\n        min-height: 350px;\n    }\n}\n<\/style>\n\n<!-- STRUCTURE HTML DU COMPOSANT -->\n<section class=\"nk-simple-image\">\n    <div class=\"nk-simple-image__wrapper\">\n        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-Moreta_Living-room_Norki.jpg\" alt=\"Grand contemporary bespoke alpine chalet living room with panoramic sofa, Norki white lambskin Coco Armchair, beige Rue de Seine Rug, and Qu\u00e9bec Coyote Throw\" class=\"nk-simple-image__img\" loading=\"lazy\">\n    <\/div>\n\n    <!-- L\u00e9gende avec les 3 liens de produits -->\n    <div class=\"nk-simple-image__caption\">\n        <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/121-coco-white-shearling-armchair-norki.html\" class=\"nk-editorial-inline-link\" target=\"_blank\" title=\"Discover the Coco Armchair\">Coco Armchair<\/a> \n        | \n        <a href=\"https:\/\/www.norki.com\/en\/timless-rugs-hides-norki\/318-rue-de-seine-rug-norki-classic-curly-shearling.html\" class=\"nk-editorial-inline-link\" target=\"_blank\" title=\"Discover the Bespoke Rue de Seine Rug\">Rue de Seine Rug<\/a> \n        | \n        <a href=\"https:\/\/www.norki.com\/en\/timeless-throws-collection-norki\/255-quebec-throw.html\" class=\"nk-editorial-inline-link\" target=\"_blank\" title=\"Discover the Qu\u00e9bec Throw\">Qu\u00e9bec Throw<\/a>\n    <\/div>\n<\/section>\n\n\n\n<style>\n\/* ==========================================================================\n   COMPOSANT : ARCHITECTURE COURCHEVEL (IMAGE + PLAN + TEXTE)\n   ========================================================================== *\/\n\n.archi-courchevel {\n    position: relative;\n    background-color: var(--color-norki-beige, #f8f0ea);\n    padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n    padding-right: 0;\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 6vw;\n    align-items: stretch;\n    color: #000000;\n    box-sizing: border-box;\n    overflow-x: hidden;\n}\n\n.archi-courchevel * {\n    box-sizing: border-box;\n}\n\n\/* --- Colonne Gauche : Grande Image --- *\/\n.archi-courchevel__col-left {\n    width: 100%;\n    position: relative;\n    z-index: 2;\n}\n\n.archi-courchevel__main-img {\n    width: 100%;\n    height: 100%;\n    max-height: 85vh;\n    object-fit: cover;\n    display: block;\n}\n\n\/* --- Colonne Droite : Plan + Textes --- *\/\n.archi-courchevel__col-right {\n    position: relative;\n    display: flex;\n    flex-direction: column;\n    justify-content: flex-end;\n    z-index: 1;\n}\n\n\/* Plan architectural *\/\n.archi-courchevel__plan-img {\n    position: absolute;\n    top: 0;\n    right: 0;\n    width: 50%;\n    max-width: 500px;\n    height: auto;\n    object-fit: contain;\n    z-index: -1;\n    opacity: 0.9;\n    transform: translateX(30%);\n}\n\n\/* Conteneur des textes *\/\n.archi-courchevel__content {\n    position: relative;\n    z-index: 2;\n    max-width: 480px;\n    width: 60%;\n}\n\n.archi-courchevel__title {\n    font-size: clamp(1.4rem, 2.5vw, 35px);\n    line-height: 1.25;\n    color: var(--wp--preset--color--contrast, #000000);\n    margin: 0 0 35px 0;\n    letter-spacing: -0.01em;\n    font-weight: 500;\n}\n\n.archi-courchevel__title-sub {\n    display: block;\n    font-weight: normal;\n}\n\n.archi-courchevel__desc {\n    font-size: 0.95rem;\n    line-height: 1.5;\n    color: #000000;\n    margin: 0 0 1rem 0;\n}\n\n.archi-courchevel__desc:last-child {\n    margin-bottom: 0;\n}\n\n\/* ==========================================================================\n   LAYOUT TABLETTE\n   ========================================================================== *\/\n@media (max-width: 1024px) {\n    .archi-courchevel {\n        padding: var(--section-pad-v-tab, 50px) var(--section-pad-h-tab, 4vw);\n        padding-right: 0;\n        gap: 4vw;\n    }\n    \n    .archi-courchevel__plan-img {\n        width: 55%;\n    }\n}\n\n\/* ==========================================================================\n   LAYOUT MOBILE\n   ========================================================================== *\/\n@media (max-width: 900px) {\n    .archi-courchevel {\n        display: flex;\n        flex-direction: column;\n        padding: var(--section-pad-v-mob, 40px) var(--section-pad-h-mob, 20px);\n        gap: 0;\n    }\n\n    .archi-courchevel__main-img {\n        max-height: 60vh;\n        width: 80%;\n        max-width: 500px;\n    }\n\n    .archi-courchevel__col-right {\n        justify-content: flex-start;\n        margin-top: 0;\n    }\n\n    .archi-courchevel__plan-img {\n        position: relative;\n        top: auto;\n        right: auto;\n        margin-left: 30%;\n        width: 50%;\n        margin-top: -15%;\n        margin-bottom: 30px;\n        z-index: 1;\n        opacity: 1;\n    }\n\n    .archi-courchevel__content {\n        max-width: 100%;\n        padding-bottom: 0;\n        width: 100%;\n    }\n}\n<\/style>\n\n<!-- STRUCTURE HTML DU COMPOSANT -->\n<section class=\"archi-courchevel\">\n    \n    <!-- Colonne Gauche : Image du chalet -->\n    <div class=\"archi-courchevel__col-left\">\n        <img decoding=\"async\" class=\"archi-courchevel__main-img\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-exterieur-enneige.jpg\" alt=\"Contemporary exterior facade of the snow-covered chalet\" loading=\"lazy\">\n    <\/div>\n\n    <!-- Colonne Droite : Plan et Textes -->\n    <div class=\"archi-courchevel__col-right\">\n        \n        <!-- Image du plan -->\n        <img decoding=\"async\" class=\"archi-courchevel__plan-img\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Plan.jpg\" alt=\"Architectural floor plan of the chalet levels\" loading=\"lazy\" aria-hidden=\"true\">\n        \n        <!-- Textes -->\n        <div class=\"archi-courchevel__content\">\n            <h2 class=\"archi-courchevel__title\">\n                Exterior Architecture\n                <span class=\"archi-courchevel__title-sub baskerville-italic-font\">Reimagining the Vernacular Log House<\/span>\n            <\/h2>\n            \n            <p class=\"archi-courchevel__desc\">\n                Rooted in its natural biotope, the chalet\u2019s envelope offers a fresh take on the vernacular log house. Smooth river stones were thoughtfully selected to harmonize with the raw, structural timber logs.\n            <\/p>\n            <p class=\"archi-courchevel__desc\">\n                Expansive floor-to-ceiling glass panels structure the facade, seamlessly blurring the boundary between indoor sanctuary and surrounding landscape. The architecture champions an essential form of luxury: pure structural lines and absolute immersion in nature.\n            <\/p>\n        <\/div>\n\n    <\/div>\n\n<\/section>\n\n\n\n<script data-wp-block-html=\"js\">\ndocument.addEventListener('DOMContentLoaded', () => {\n\n    \/* =========================================================\n       GESTION DU CARROUSEL (Adaptatif 3 \/ 2 \/ 1)\n       ========================================================= *\/\n    const container = document.getElementById('sfa-slider');\n    if (!container) return;\n\n    const section = container.closest('.nk-sfa');\n    const track = container.querySelector('.nk-sfa__carousel-track');\n    const originalSlides = Array.from(container.querySelectorAll('.nk-sfa__slide'));\n    const totalOriginal = originalSlides.length;\n    const navBar = section.querySelector('.nk-sfa__nav-bar');\n\n    \/\/ Clonage pour l'effet de boucle infinie\n    originalSlides.forEach(slide => {\n        const clone = slide.cloneNode(true);\n        clone.classList.add('norki-clone');\n        clone.setAttribute('aria-hidden', 'true');\n        clone.querySelectorAll('a, button').forEach(el => el.setAttribute('tabindex', '-1'));\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        clone.querySelectorAll('a, button').forEach(el => el.setAttribute('tabindex', '-1'));\n        track.insertBefore(clone, track.firstChild);\n    });\n\n    const allSlides = Array.from(container.querySelectorAll('.nk-sfa__slide'));\n\n    const getSlidesPerView = () => {\n        if (window.innerWidth > 1024) return 3; \/\/ PC\n        if (window.innerWidth > 768) return 2;  \/\/ Tablette\n        return 1;                               \/\/ Mobile\n    };\n\n    let itemsPerView = getSlidesPerView();\n    let itemWidthPct = 100 \/ itemsPerView;\n    allSlides.forEach(s => s.style.flex = `0 0 ${itemWidthPct}%`);\n    \n    let currentIndex = totalOriginal; \n    let isAnimating = false;\n\n    const updateCarousel = (instant = false) => {\n        const clones = track.querySelectorAll('.norki-clone');\n\n        if (itemsPerView >= totalOriginal) {\n            navBar.style.display = 'none'; \n            clones.forEach(c => c.style.display = 'none'); \n            track.style.transition = 'none';\n            track.style.transform = `translateX(0)`; \n            return;\n        }\n\n        navBar.style.display = 'flex';\n        clones.forEach(c => c.style.display = ''); \n        \n        track.style.transition = instant ? 'none' : 'transform 0.5s cubic-bezier(0.4, 0.0, 0.2, 1)';\n        track.style.transform = `translateX(-${currentIndex * itemWidthPct}%)`;\n    };\n\n    updateCarousel(true);\n\n    const moveNext = () => {\n        if (isAnimating || itemsPerView >= totalOriginal) return;\n        isAnimating = true;\n        currentIndex++;\n        updateCarousel();\n    };\n\n    const movePrev = () => {\n        if (isAnimating || itemsPerView >= totalOriginal) return;\n        isAnimating = true;\n        currentIndex--;\n        updateCarousel();\n    };\n\n    section.querySelector('.nk-sfa__next').addEventListener('click', moveNext);\n    section.querySelector('.nk-sfa__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 newItemsPerView = getSlidesPerView();\n        if (newItemsPerView !== itemsPerView) {\n            itemsPerView = newItemsPerView;\n            itemWidthPct = 100 \/ itemsPerView;\n            allSlides.forEach(s => s.style.flex = `0 0 ${itemWidthPct}%`);\n            currentIndex = totalOriginal;\n            updateCarousel(true);\n        }\n    });\n\n    let startX = 0, endX = 0;\n    const swipeThreshold = 40;\n\n    track.addEventListener('touchstart', (e) => {\n        if (itemsPerView >= totalOriginal) return; \n        startX = e.touches[0].clientX;\n    }, { passive: true });\n    \n    track.addEventListener('touchend', (e) => {\n        if (itemsPerView >= totalOriginal) return;\n        endX = e.changedTouches[0].clientX;\n        const diff = startX - endX;\n        if (Math.abs(diff) > swipeThreshold) {\n            if (diff > 0) moveNext();\n            else movePrev();\n        }\n    });\n\n    \/* =========================================================\n       LAZY LOADING DES IMAGES\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 = () => img.classList.add('norki-loaded');\n                    img.src = img.dataset.src;\n                    img.removeAttribute('data-src');\n                    observer.unobserve(img);\n                }\n            }\n        });\n    }, { root: null, rootMargin: '0px 100% 0px 100%', threshold: 0 });\n    \n    document.querySelectorAll('.norki-lazy').forEach(img => {\n        imageObserver.observe(img);\n    });\n\n    \/* =========================================================\n       GESTION DES HOTSPOTS (Tactile\/Mobile)\n       ========================================================= *\/\n    const hotspots = document.querySelectorAll('.nk-sfa__hotspot');\n    \n    hotspots.forEach(hotspot => {\n        const btn = hotspot.querySelector('.nk-sfa__hotspot-btn');\n        btn.addEventListener('click', (e) => {\n            e.preventDefault(); \n            \/\/ Fermer les autres tooltips\n            hotspots.forEach(h => {\n                if (h !== hotspot) h.classList.remove('is-active');\n            });\n            \/\/ Basculer l'\u00e9tat du tooltip cliqu\u00e9\n            hotspot.classList.toggle('is-active');\n        });\n    });\n\n    \/\/ Fermer les tooltips si on clique \u00e0 l'ext\u00e9rieur\n    document.addEventListener('click', (e) => {\n        if (!e.target.closest('.nk-sfa__hotspot')) {\n            hotspots.forEach(h => h.classList.remove('is-active'));\n        }\n    });\n\n});\n<\/script>\n\n<style>\n.nk-sfa {\n    padding-top: 0;\n    padding-bottom: var(--section-pad-v-dt, 80px);\n    padding-left: var(--section-pad-h-dt, 5vw);\n    padding-right: var(--section-pad-h-dt, 5vw);\n    background-color: var(--color-norki-beige, #f8f0ea);\n    color: #000000;\n    box-sizing: border-box;\n    overflow-x: clip; \/* Emp\u00eache le scroll horizontal des slides *\/\n    overflow-y: visible; \/* Permet aux tooltips de d\u00e9passer en hauteur *\/\n    font-family: Arial, Helvetica, sans-serif;\n}\n\n.nk-sfa * {\n    box-sizing: border-box;\n}\n\n.nk-sfa__container {\n    margin: 0 auto;\n    width: 100%;\n}\n\n.nk-sfa__header {\n    display: flex;\n    justify-content: space-between;\n    align-items: flex-end;\n    margin-bottom: 50px;\n}\n\n.nk-sfa__title {\n    font-size: clamp(1.4rem, 2.5vw, 35px);\n    font-weight: normal;\n    margin: 0;\n    letter-spacing: -0.01em;\n    line-height: 1.25;\n    color: #000000;\n}\n\n.nk-sfa__nav-bar {\n    display: flex;\n    align-items: center;\n}\n\n\/* Fl\u00e8ches masqu\u00e9es sur PC (> 1024px) *\/\n.nk-sfa__arrows {\n    display: none;\n    gap: 15px;\n    margin-right: -12px;\n}\n\n.nk-sfa__arrows button {\n    background: none;\n    border: none;\n    color: #000000;\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.nk-sfa__arrows button:hover { opacity: 0.6; }\n\n.nk-sfa__arrows svg {\n    width: 26px;\n    height: 26px;\n    fill: none;\n    stroke: currentColor;\n    stroke-width: 1.2;\n}\n\n.nk-sfa__slider-area {\n    position: relative;\n    width: 100%;\n}\n\n.nk-sfa__carousel-viewport {\n    overflow-x: clip;\n    overflow-y: visible;\n    touch-action: pan-y;\n    margin: 0 -6px;\n}\n\n.nk-sfa__carousel-track {\n    display: flex;\n    will-change: transform;\n    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);\n}\n\n.nk-sfa__slide {\n    padding: 0 6px;\n    display: flex;\n    flex-direction: column;\n    flex-shrink: 0;\n    flex-grow: 0;\n    width: 33.333%; \/* Rendu 3 colonnes desktop par d\u00e9faut *\/\n    min-width: 0; \n}\n\n\/* --- ENCAPSULATION DES IMAGES --- *\/\n.nk-sfa__image-wrapper {\n    display: block;\n    width: 100%;\n    padding-bottom: 133.33%; \/* Ratio 3:4 *\/\n    overflow: visible; \n    background-color: rgba(0, 0, 0, 0.05);\n    position: relative;\n}\n\n.nk-sfa__slide img.norki-main-img {\n    position: absolute; \n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    object-position: center;\n    display: block;\n    opacity: 1;\n    transition: opacity 0.5s ease-in-out;\n    will-change: opacity, transform;\n}\n\n.nk-sfa__hotspot {\n    position: absolute;\n    z-index: 10;\n    width: 0;\n    height: 0;\n}\n\n.nk-sfa__hotspot-btn {\n    position: absolute;\n    width: 36px;\n    height: 36px;\n    background-color: rgba(255, 255, 255, 0.95);\n    border: 1px solid #eaeaea;\n    border-radius: 50%;\n    box-shadow: 0 4px 10px rgba(0,0,0,0.15);\n    cursor: pointer;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    transform: translate(-50%, -50%);\n    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s, box-shadow 0.3s;\n    padding: 0;\n    color: #000000;\n}\n\n.nk-sfa__hotspot-btn svg {\n    width: 16px;\n    height: 16px;\n    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.nk-sfa__hotspot:hover .nk-sfa__hotspot-btn,\n.nk-sfa__hotspot.is-active .nk-sfa__hotspot-btn {\n    transform: translate(-50%, -50%) scale(1.1);\n    background-color: #ffffff;\n    box-shadow: 0 6px 15px rgba(0,0,0,0.25);\n}\n\n.nk-sfa__hotspot:hover .nk-sfa__hotspot-btn svg,\n.nk-sfa__hotspot.is-active .nk-sfa__hotspot-btn svg {\n    transform: rotate(90deg); \n}\n\n\/* Tooltip (Infobulle align\u00e9e au centre exact) *\/\n.nk-sfa__hotspot-tooltip {\n    position: absolute;\n    bottom: 25px;\n    left: 0;\n    transform: translateX(-50%) translateY(10px);\n    width: 200px;\n    background: #ffffff;\n    padding: 12px;\n    box-shadow: 0 10px 30px rgba(0,0,0,0.15);\n    opacity: 0;\n    visibility: hidden;\n    pointer-events: none;\n    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    border-radius: 2px;\n    z-index: 20;\n}\n\n.nk-sfa__hotspot-tooltip::before {\n    content: '';\n    position: absolute;\n    top: 100%;\n    left: 0;\n    width: 100%;\n    height: 35px;\n    background: transparent;\n}\n\n.nk-sfa__hotspot-tooltip::after {\n    content: '';\n    position: absolute;\n    top: 100%;\n    left: 50%;\n    transform: translateX(-50%);\n    border-width: 8px;\n    border-style: solid;\n    border-color: #ffffff transparent transparent transparent;\n}\n\n.nk-sfa__hotspot:hover .nk-sfa__hotspot-tooltip,\n.nk-sfa__hotspot.is-active .nk-sfa__hotspot-tooltip {\n    opacity: 1;\n    visibility: visible;\n    pointer-events: auto;\n    transform: translateX(-50%) translateY(0);\n}\n\n.nk-sfa__hotspot-link-wrap {\n    text-decoration: none;\n    display: flex;\n    flex-direction: column;\n    gap: 10px;\n}\n\n.nk-sfa__hotspot-thumb {\n    width: 100%;\n    height: 140px;\n    object-fit: cover;\n    background-color: #f5f5f5;\n}\n\n.nk-sfa__hotspot-info {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 8px;\n}\n\n.nk-sfa__hotspot-title-text {\n    font-size: 13px;\n    font-weight: 600;\n    color: #000000;\n    line-height: 1.3;\n    margin: 0;\n    text-align: center;\n}\n\n.nk-sfa__hotspot-action {\n    font-size: 11px;\n    text-transform: uppercase;\n    letter-spacing: 0.05em;\n    color: #666666;\n    text-decoration: none;\n    text-align: center;\n    display: block;\n    width: 100%;\n    padding-top: 8px;\n    border-top: 1px solid #eeeeee;\n    transition: color 0.2s;\n}\n\n.nk-sfa__hotspot-link-wrap:hover .nk-sfa__hotspot-action {\n    color: #000000;\n}\n\n@media (max-width: 1024px) {\n    .nk-sfa {\n        padding-bottom: var(--section-pad-v-tab, 60px);\n        padding-left: var(--section-pad-h-tab, 4vw);\n        padding-right: var(--section-pad-h-tab, 4vw);\n    }\n    \n    .nk-sfa__slide {\n        width: 50%;\n    }\n\n    .nk-sfa__header {\n        margin-bottom: 30px;\n    }\n\n    \/* Activation des fl\u00e8ches uniquement sur tablette et mobile *\/\n    .nk-sfa__arrows {\n        display: flex;\n    }\n\n    .nk-sfa__arrows button:hover,\n    .nk-sfa__arrows button:active,\n    .nk-sfa__arrows button:focus {\n        opacity: 1 !important;\n    }\n}\n\n@media (max-width: 768px) {\n    .nk-sfa {\n        padding-bottom: var(--section-pad-v-mob, 50px);\n        padding-left: var(--section-pad-h-mob, 20px);\n        padding-right: var(--section-pad-h-mob, 20px);\n    }\n\n    .nk-sfa__slide {\n        width: 100%;\n    }\n\n    .nk-sfa__header {\n        align-items: center;\n        margin-bottom: 25px;\n    }\n\n    .nk-sfa__title {\n        font-size: clamp(1.1rem, 4.5vw, 1.4rem);\n    }\n\n    .nk-sfa__arrows {\n        margin-right: -5px;\n        gap: 10px;\n    }\n\n    .nk-sfa__arrows svg {\n        width: 22px;\n        height: 22px;\n    }\n\n    .nk-sfa__carousel-viewport {\n        margin: 0 -5px;\n    }\n\n    .nk-sfa__slide {\n        padding: 0 5px;\n    }\n    \n    .nk-sfa__image-wrapper {\n        padding-bottom: 125%; \/* Ratio adapt\u00e9 mobile *\/\n    }\n    \n    .nk-sfa__hotspot-tooltip {\n        width: 160px;\n    }\n    .nk-sfa__hotspot-thumb {\n        height: 110px;\n    }\n}\n<\/style>\n\n<section class=\"nk-sfa\">\n    <div class=\"nk-sfa__container\">\n        \n        <div class=\"nk-sfa__header\">\n            <h2 class=\"nk-sfa__title avenirmedium-font\">Our Projects &amp; Selections<\/h2>\n            <div class=\"nk-sfa__nav-bar\">\n                <div class=\"nk-sfa__arrows\">\n                    <button class=\"nk-sfa__prev\" aria-label=\"Previous image\">\n                        <svg viewBox=\"0 0 24 24\"><path d=\"M15 18l-6-6 6-6\"><\/path><\/svg>\n                    <\/button>\n                    <button class=\"nk-sfa__next\" aria-label=\"Next image\">\n                        <svg viewBox=\"0 0 24 24\"><path d=\"M9 18l6-6-6-6\"><\/path><\/svg>\n                    <\/button>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <div class=\"nk-sfa__slider-area\" id=\"sfa-slider\">\n            <div class=\"nk-sfa__carousel-viewport\">\n                <div class=\"nk-sfa__carousel-track\">\n                    \n                    <!-- SLIDE 1 : Dining room -->\n                    <article class=\"nk-sfa__slide\">\n                        <div class=\"nk-sfa__image-wrapper\">\n                            <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-Moreta_Dining-room_NORKI.jpg\" alt=\"Chalet Moreta - Exceptional dining room\" class=\"norki-main-img\">\n                            \n                            <!-- HOTSPOT 1 : Andante Chair -->\n                            <div class=\"nk-sfa__hotspot\" style=\"top: 52%; left: 53%;\">\n                                <button class=\"nk-sfa__hotspot-btn\" aria-label=\"View details of the Andante Chair\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-sfa__hotspot-tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/649-white-chair-white-shearling-luxury-dining-room-decoration.html\" class=\"nk-sfa__hotspot-link-wrap\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/chaise-blanche-agneau-blanc-luxe-decoration-salle-a-manger-300x300.jpg\" alt=\"Andante Chair\" class=\"nk-sfa__hotspot-thumb\">\n                                        <div class=\"nk-sfa__hotspot-info\">\n                                            <span class=\"nk-sfa__hotspot-title-text\">Andante Chair<\/span>\n                                            <span class=\"nk-sfa__hotspot-action\">Discover the product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n\n                            <!-- HOTSPOT 2 : Forest Rug -->\n                            <div class=\"nk-sfa__hotspot\" style=\"top: 85%; left: 28%;\">\n                                <button class=\"nk-sfa__hotspot-btn\" aria-label=\"View details of the Forest Rug\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-sfa__hotspot-tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/476-forest-norki-rug-blue-green-cowhide-contemporary.html\" class=\"nk-sfa__hotspot-link-wrap\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/tapis-forest-norki-contemporain-peau-lainee-bleu-vert-300x300.jpg\" alt=\"Forest Rug\" class=\"nk-sfa__hotspot-thumb\">\n                                        <div class=\"nk-sfa__hotspot-info\">\n                                            <span class=\"nk-sfa__hotspot-title-text\">Forest Rug<\/span>\n                                            <span class=\"nk-sfa__hotspot-action\">Discover the product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/article>\n\n                    <!-- SLIDE 2 : Kitchen \/ Dining area -->\n                    <article class=\"nk-sfa__slide\">\n                        <div class=\"nk-sfa__image-wrapper\">\n                            <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2026_01_22_Moreta_Kitchen_001.jpg\" alt=\"Chalet Moreta - Kitchen &amp; Dining Area\" class=\"norki-main-img\">\n                            \n                            <!-- HOTSPOT 3 : Jan Rock Throw -->\n                            <div class=\"nk-sfa__hotspot\" style=\"top: 48%; left: 45%;\">\n                                <button class=\"nk-sfa__hotspot-btn\" aria-label=\"View details of the Jan Rock Throw\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-sfa__hotspot-tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/iconic-throws-collection-norki\/253-plaid-peau-lainee-jan-rock-norki.html\" class=\"nk-sfa__hotspot-link-wrap\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/plaid-peau-lainee-jan-rock-norki-300x300.jpg\" alt=\"Jan Rock Throw\" class=\"nk-sfa__hotspot-thumb\">\n                                        <div class=\"nk-sfa__hotspot-info\">\n                                            <span class=\"nk-sfa__hotspot-title-text\">Jan Rock Throw<\/span>\n                                            <span class=\"nk-sfa__hotspot-action\">Discover the product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/article>\n                    \n                    <!-- SLIDE 3 : Master Bedroom -->\n                    <article class=\"nk-sfa__slide\">\n                        <div class=\"nk-sfa__image-wrapper\">\n                            <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-Moreta_MasterBedroom_NORKI.jpg\" alt=\"Chalet Moreta - Master Suite\" class=\"norki-main-img\">\n                            \n                            <!-- HOTSPOT 4 : Edmond Armchair -->\n                            <div class=\"nk-sfa__hotspot\" style=\"top: 33%; left: 65%;\">\n                                <button class=\"nk-sfa__hotspot-btn\" aria-label=\"View details of the Edmond Armchair\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-sfa__hotspot-tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/124-edmond-wingback-armchair-norki-shearling.html\" class=\"nk-sfa__hotspot-link-wrap\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/fauteuil-edmond-peau-lainee-norki-300x300.jpg\" alt=\"Edmond Armchair\" class=\"nk-sfa__hotspot-thumb\">\n                                        <div class=\"nk-sfa__hotspot-info\">\n                                            <span class=\"nk-sfa__hotspot-title-text\">Edmond Armchair<\/span>\n                                            <span class=\"nk-sfa__hotspot-action\">Discover the product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/article>\n                    \n                <\/div>\n            <\/div>\n        <\/div>\n\n    <\/div>\n<\/section>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n    const section = document.querySelector('.nk-sfa');\n    if (!section) return;\n\n    const track = section.querySelector('.nk-sfa__carousel-track');\n    const slides = section.querySelectorAll('.nk-sfa__slide');\n    const btnNext = section.querySelector('.nk-sfa__next');\n    const btnPrev = section.querySelector('.nk-sfa__prev');\n    const hotspots = section.querySelectorAll('.nk-sfa__hotspot');\n\n    let currentIndex = 0;\n\n    function getVisibleSlidesCount() {\n        if (window.innerWidth <= 768) return 1;\n        if (window.innerWidth <= 1024) return 2;\n        return 3;\n    }\n\n    function updateSlider() {\n        const visibleCount = getVisibleSlidesCount();\n        const maxIndex = Math.max(0, slides.length - visibleCount);\n        \n        if (currentIndex > maxIndex) currentIndex = maxIndex;\n        if (currentIndex < 0) currentIndex = 0;\n\n        const slideWidthPercent = 100 \/ visibleCount;\n        track.style.transform = `translateX(-${currentIndex * slideWidthPercent}%)`;\n    }\n\n    if (btnNext) {\n        btnNext.addEventListener('click', function() {\n            const visibleCount = getVisibleSlidesCount();\n            const maxIndex = Math.max(0, slides.length - visibleCount);\n            if (currentIndex < maxIndex) {\n                currentIndex++;\n            } else {\n                currentIndex = 0; \/\/ Boucle\n            }\n            updateSlider();\n        });\n    }\n\n    if (btnPrev) {\n        btnPrev.addEventListener('click', function() {\n            const visibleCount = getVisibleSlidesCount();\n            const maxIndex = Math.max(0, slides.length - visibleCount);\n            if (currentIndex > 0) {\n                currentIndex--;\n            } else {\n                currentIndex = maxIndex; \/\/ Boucle\n            }\n            updateSlider();\n        });\n    }\n\n    \/\/ Gestion de la bascule tactile des Hotspots sur Mobile\/Tablette\n    hotspots.forEach(hotspot => {\n        const btn = hotspot.querySelector('.nk-sfa__hotspot-btn');\n        if (!btn) return;\n\n        btn.addEventListener('click', function(e) {\n            e.preventDefault();\n            e.stopPropagation();\n\n            const isActive = hotspot.classList.contains('is-active');\n            \n            \/\/ Ferme tous les autres\n            hotspots.forEach(h => h.classList.remove('is-active'));\n\n            if (!isActive) {\n                hotspot.classList.add('is-active');\n            }\n        });\n    });\n\n    document.addEventListener('click', function(e) {\n        if (!e.target.closest('.nk-sfa__hotspot')) {\n            hotspots.forEach(h => h.classList.remove('is-active'));\n        }\n    });\n\n    window.addEventListener('resize', updateSlider);\n    updateSlider();\n});\n<\/script>\n\n\n\n<style>\n\/* ==========================================================================\n   COMPOSANT : ARCHITECTURE INT\u00c9RIEURE (Texte 2 colonnes + Image)\n   ========================================================================== *\/\n\n.nk-arch-interieure {\n    background-color: var(--color-norki-beige, #f8f0ea);\n    padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n    color: #000000;\n    box-sizing: border-box;\n    overflow: hidden;\n    padding-top: 0;\n}\n\n.nk-arch-interieure * {\n    box-sizing: border-box;\n}\n\n.nk-arch-interieure__inner {\n    display: flex;\n    justify-content: space-between;\n    align-items: flex-start;\n    width: 100%;\n}\n\n\/* --- Bloc Texte (Gauche sur PC) --- *\/\n.nk-arch-interieure__content {\n    flex: 1.1; \/* Prend l\u00e9g\u00e8rement plus de place que l'image *\/\n    display: flex;\n    flex-direction: column;\n}\n\n.nk-arch-interieure__title {\n    font-size: clamp(1.4rem, 2.5vw, 35px);\n    line-height: 1.25;\n    margin: 0 0 40px 0;\n    font-weight: normal;\n    color: #000000;\n}\n\n.nk-arch-interieure__title span {\n    display: block;\n}\n\n.nk-arch-interieure__text-grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 2vw;\n}\n\n.nk-arch-interieure__paragraph {\n    font-size: 0.95rem;\n    line-height: 1.5;\n    margin: 0 0 1.5rem 0;\n    color: #000000;\n}\n\n.nk-arch-interieure__paragraph:last-child {\n    margin-bottom: 0;\n}\n\n.nk-arch-interieure__subtitle {\n    display: block;\n    font-size: clamp(14px, 1.1vw, 16px);\n    margin-bottom: 1rem;\n    line-height: 1.3;\n    color: #000000;\n}\n\n\/* --- Bouton Voir Plus (Cach\u00e9 sur PC par d\u00e9faut) --- *\/\n.nk-arch-interieure__btn-more {\n    font-style: italic;\n    font-size: 0.95rem;\n    display: none; \/* Masqu\u00e9 sur PC *\/\n    background: transparent;\n    border: none;\n    color: inherit;\n    font-family: inherit;\n    cursor: pointer;\n    text-decoration: underline;\n    text-decoration-color: currentColor;\n    text-underline-offset: 4px;\n    transition: text-decoration-color 0.3s ease, opacity 0.3s ease;\n    padding: 0;\n    margin-top: 15px;\n    align-self: flex-start;\n}\n\n.nk-arch-interieure__btn-more:hover {\n    text-decoration-color: transparent;\n    opacity: 0.7;\n}\n\n\/* --- Bloc Image (Droite sur PC) --- *\/\n.nk-arch-interieure__image-wrapper {\n    flex: 0.9;\n    margin-left: 4vw; \n    position: relative;\n    overflow: visible;\n}\n\n.nk-arch-interieure__img {\n    width: 100%;\n    height: auto;\n    object-fit: cover;\n    display: block;\n}\n\n\/* ==========================================================================\n   S\u00c9CURIT\u00c9 DESKTOP (Neutralise la transition de grille sur grand \u00e9cran)\n   ========================================================================== *\/\n@media (min-width: 769px) {\n    .nk-arch-interieure__collapsible {\n        display: block !important;\n        grid-template-rows: none !important;\n        overflow: visible !important;\n    }\n}\n\n\/* ==========================================================================\n   LAYOUT TABLETTE (\u2264 1024px)\n   ========================================================================== *\/\n@media (max-width: 1024px) {\n    .nk-arch-interieure {\n        padding: var(--section-pad-v-tab, 60px) var(--section-pad-h-tab, 4vw);\n        padding-top: 0;\n    }\n\n    .nk-arch-interieure__inner {\n        flex-direction: column;\n        gap: 50px;\n    }\n\n    .nk-arch-interieure__image-wrapper {\n        width: 80%;\n        margin-left: auto; \/* Align\u00e9 \u00e0 droite sur tablette *\/\n    }\n}\n\n\/* ==========================================================================\n   LAYOUT MOBILE (\u2264 768px)\n   ========================================================================== *\/\n@media (max-width: 768px) {\n    .nk-arch-interieure {\n        padding: var(--section-pad-v-mob, 50px) var(--section-pad-h-mob, 20px);\n        padding-top: 0;\n    }\n\n    .nk-arch-interieure__inner {\n        gap: 40px;\n    }\n\n    .nk-arch-interieure__title {\n        margin-bottom: 25px;\n    }\n\n    .nk-arch-interieure__text-grid {\n        grid-template-columns: 1fr;\n    }\n\n    \/* Le bouton de lecture s'active sur mobile *\/\n    .nk-arch-interieure__btn-more {\n        display: inline-block;\n    }\n\n    \/* Accord\u00e9on en transition de grille (z\u00e9ro saut de hauteur) *\/\n    .nk-arch-interieure__collapsible {\n        display: grid; \n        grid-template-rows: 0fr; \n        transition: grid-template-rows 0.4s ease-out;\n        overflow: hidden;\n    }\n\n    .nk-arch-interieure__collapsible.is-open { \n        grid-template-rows: 1fr;\n    }\n\n    .nk-arch-interieure__collapsible-inner {\n        overflow: hidden;\n    }\n\n    \/* Marge de 10% \u00e0 gauche sur l'image *\/\n    .nk-arch-interieure__image-wrapper {\n        width: 90%;\n        margin-left: 10%;\n        margin-right: 0;\n    }\n}\n<\/style>\n\n<section class=\"nk-arch-interieure\">\n    <div class=\"nk-arch-interieure__inner\">\n        \n        <!-- Bloc Texte -->\n        <div class=\"nk-arch-interieure__content\">\n            <h2 class=\"nk-arch-interieure__title avenirmedium-font\">\n                Interior Architecture\n                <span class=\"baskerville-italic-font\">Spatial Drama and European Alpine Allusions<\/span>\n            <\/h2>\n            \n            <div class=\"nk-arch-interieure__text-grid\">\n                <!-- Colonne 1 -->\n                <div class=\"nk-arch-interieure__col\">\n                    <p class=\"nk-arch-interieure__paragraph\">\n                        Inside, dark-toned timber extends the cozy, cocoon-like atmosphere of the exterior facades. Here, Studio Chalet executes a bold typological shift to honor the owners&rsquo; vision: bridging the rugged soul of Wyoming with the cozy sophistication of European Alpine chalets. The cavernous volumes are skillfully rhythmized by small internal gabled sub-roofs, bringing an intimate scale to the grand living spaces. In a poetic design statement, interior ceilings feature traditional wooden shingles (tavaillons)\u2014a technique historically reserved for exterior roofing\u2014reimagined here as an extraordinary indoor wall cladding.\n                    <\/p>\n                <\/div>\n                \n                <!-- Colonne 2 (D\u00e9roulante sur Mobile) -->\n                <div class=\"nk-arch-interieure__col nk-arch-interieure__collapsible\" id=\"nk-arch-read-more-content\">\n                    <div class=\"nk-arch-interieure__collapsible-inner\">\n                        <span class=\"nk-arch-interieure__subtitle avenirmedium-font\">A Symphony of Materials: Bespoke Craftsmanship by Maison Norki<\/span>\n                        <p class=\"nk-arch-interieure__paragraph\">\n                            The curated material palette orchestrates a tactile, highly refined dialogue: weathered timber sits alongside raku ceramics, artisanal pottery, and raw natural stone. Textiles from Europe&rsquo;s most prestigious design houses create a tailored backdrop, elevated by Maison Norki\u2019s signature touch\u2014exceptional fur and shearling creations that infuse the space with unmatched warmth and tactile richness.\n                        <\/p>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <!-- Bouton Voir Plus (Mobile uniquement) -->\n            <button type=\"button\" class=\"nk-arch-interieure__btn-more\" id=\"nk-arch-read-more-btn\">See more<\/button>\n        <\/div>\n\n        <!-- Bloc Image -->\n        <div class=\"nk-arch-interieure__image-wrapper\">\n            <img decoding=\"async\" class=\"nk-arch-interieure__img\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/element-1.jpg\" alt=\"Luxury chalet kitchen with dark wood details and natural stone\" loading=\"lazy\">\n        <\/div>\n\n    <\/div>\n<\/section>\n\n<script>\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n    \/* =========================================================\n       ACCORD\u00c9ON DE LECTURE (Texte mobile)\n       ========================================================= *\/\n    const btn = document.getElementById(\"nk-arch-read-more-btn\");\n    const content = document.getElementById(\"nk-arch-read-more-content\");\n\n    if (btn && content) {\n        btn.addEventListener(\"click\", () => {\n            const isOpen = content.classList.toggle(\"is-open\");\n            btn.textContent = isOpen ? \"See less\" : \"See more\";\n        });\n    }\n});\n<\/script>\n\n\n\n<style>\n\/* ==========================================================================\n   COMPOSANT : ESPACE DE VIE PRINCIPAL (Image 50% + Texte \u00e0 droite)\n   ========================================================================== *\/\n\n.nk-evp {\n    background-color: var(--color-norki-beige, #f8f0ea);\n    padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n    color: #000000;\n    box-sizing: border-box;\n    overflow: hidden;\n    padding-top: 0;\n}\n\n.nk-evp * {\n    box-sizing: border-box;\n}\n\n\/* --- Layout Desktop (CSS Grid 50% \/ 50%) --- *\/\n.nk-evp__inner {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 0 5vw;\n    align-items: center;\n    width: 100%;\n}\n\n\/* --- Colonne Image (Gauche sur PC) --- *\/\n.nk-evp__col-img {\n    width: 100%;\n    position: relative;\n    overflow: visible;\n}\n\n.nk-evp__img {\n    width: 100%;\n    height: auto;\n    object-fit: cover;\n    display: block;\n}\n\n\/* --- Colonne Contenu (Droite sur PC) --- *\/\n.nk-evp__content {\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    max-width: 540px;\n}\n\n\/* --- Typographie & Titre --- *\/\n.nk-evp__title {\n    font-size: clamp(1.3rem, 2.2vw, 28px);\n    line-height: 1.25;\n    margin: 0 0 25px 0;\n    font-weight: 500;\n    color: #000000;\n}\n\n.nk-evp__paragraph {\n    font-size: 0.95rem;\n    line-height: 1.5;\n    margin: 0 0 1.5rem 0;\n    color: #000000;\n}\n\n.nk-evp__paragraph:last-child {\n    margin-bottom: 0;\n}\n\n\/* --- Liens \u00c9ditoriaux --- *\/\n.nk-editorial-inline-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.nk-editorial-inline-link:hover {\n    text-decoration-color: transparent;\n    opacity: 0.7;\n}\n\n\/* --- BLOC CTA BUREAU D'\u00c9TUDES --- *\/\n.nk-evp__cta {\n    display: flex;\n    flex-direction: column;\n    align-items: flex-start;\n    margin-top: 35px;\n    gap: 15px;\n}\n\n.nk-evp__cta-title {\n    font-size: clamp(1.1rem, 1.8vw, 1.3rem);\n    color: #000000;\n    margin: 0;\n}\n\n.nk-evp__cta-btn {\n    display: inline-flex;\n    justify-content: center;\n    align-items: center;\n    padding: 6px 35px;\n    text-decoration: none;\n    font-size: 0.9rem;\n    font-weight: 500;\n    color: #ffffff;\n    background-color: #000000;\n    border: 1px solid #000000;\n    transition: all 0.3s ease;\n    text-align: center;\n}\n\n.nk-evp__cta-btn:hover {\n    background-color: transparent;\n    color: #000000;\n}\n\n\/* ==========================================================================\n   LAYOUT TABLETTE (\u2264 1024px)\n   ========================================================================== *\/\n@media (max-width: 1024px) {\n    .nk-evp {\n        padding: var(--section-pad-v-tab, 60px) var(--section-pad-h-tab, 4vw);\n        padding-top: 0;\n    }\n\n    .nk-evp__inner {\n        gap: 0 4vw;\n    }\n}\n\n\/* ==========================================================================\n   LAYOUT MOBILE (\u2264 768px)\n   ========================================================================== *\/\n@media (max-width: 768px) {\n    .nk-evp {\n        padding: var(--section-pad-v-mob, 50px) var(--section-pad-h-mob, 20px);\n        padding-top: 0;\n    }\n\n    .nk-evp__inner {\n        display: flex;\n        flex-direction: column;\n        gap: 30px;\n    }\n\n    .nk-evp__content {\n        order: 1;\n        width: 90%;\n        max-width: 100%;\n    }\n\n    .nk-evp__col-img {\n        order: 2;\n        width: 100%;\n    }\n\n    .nk-evp__cta {\n        align-items: center;\n        text-align: center;\n        margin-top: 25px;\n    }\n}\n<\/style>\n\n<section class=\"nk-evp\">\n    <div class=\"nk-evp__inner\">\n        \n        <!-- Bloc Image (\u00c0 gauche sur PC, intercal\u00e9 sur Mobile) -->\n        <div class=\"nk-evp__col-img\">\n            <img decoding=\"async\" class=\"nk-evp__img\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-Moreta_Dining-room_NORKI-1.jpg\" alt=\"Chalet Moreta - Main living space and exceptional dining room\" loading=\"lazy\">\n        <\/div>\n\n        <!-- Bloc Texte & CTA (\u00c0 droite sur PC) -->\n        <div class=\"nk-evp__content\">\n            <h2 class=\"nk-evp__title avenirmedium-font\">\n                The Main Living Space: The Sculptural Presence of Norki&rsquo;s \u00ab\u00a0Forest\u00a0\u00bb &amp; \u00ab\u00a0Rue de Seine\u00a0\u00bb Rugs\n            <\/h2>\n            \n            <p class=\"nk-evp__paragraph\">\n                In the expansive main salon, the architecture is visually anchored by monumental creations from our <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/\" class=\"nk-editorial-inline-link\">Bespoke Rug Atelier<\/a>. The iconic <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/476-forest-norki-rug-blue-green-cowhide-contemporary.html\" class=\"nk-editorial-inline-link\">Forest<\/a> and <a href=\"https:\/\/www.norki.com\/en\/timless-rugs-hides-norki\/318-rue-de-seine-rug-norki-classic-curly-shearling.html\" class=\"nk-editorial-inline-link\">Rue de Seine<\/a> rugs define the living zones with their graphic language and rich tactile depth, engaging in a silent dialogue with custom furniture crafted by our <a href=\"https:\/\/www.norki.com\/en\/custom-made-upholstery\/bespoke-upholstery-services\/\" class=\"nk-editorial-inline-link\">Upholstery Atelier<\/a>.\n            <\/p>\n\n            <!-- Bloc CTA Contacter notre bureau d'\u00e9tudes -->\n            <div class=\"nk-evp__cta\">\n                <span class=\"nk-evp__cta-title baskerville-italic-font\">Would you like to discuss your project?<\/span>\n                <a href=\"https:\/\/www.norki.com\/en\/studio-chalet\/contact-us\/\" class=\"nk-evp__cta-btn\">\n                    Contact our design studio\n                <\/a>\n            <\/div>\n        <\/div>\n\n    <\/div>\n<\/section>\n\n\n\n<style>\n    \/* ==========================================================================\n       COMPOSANT : SPA CADRAGE (Grille asym\u00e9trique & Image Panoramique)\n       ========================================================================== *\/\n\n    .nk-spa-cadrage {\n        background-color: var(--color-norki-beige, #f8f0ea);\n        padding: var(--section-pad-v-dt, 80px) var(--section-pad-h-dt, 5vw);\n        color: black;\n        box-sizing: border-box;\n        overflow: hidden;\n        padding-right: 0; \/* Permet \u00e0 l'image de d\u00e9border sur la droite *\/\n        padding-top: 0 !important;\n    }\n\n    .nk-spa-cadrage * {\n        box-sizing: border-box;\n    }\n\n    \/* Conteneur d\u00e9cal\u00e9 sur la droite sur PC *\/\n    .nk-spa-cadrage__inner {\n        width: 85%; \/* Laisse 15% d'espace vide \u00e0 gauche *\/\n        margin-left: auto;\n    }\n\n    \/* --- Grille Principale PC --- *\/\n    .nk-spa-cadrage__grid {\n        display: grid;\n        grid-template-columns: 1fr 1fr; \n        grid-template-rows: auto auto auto;\n        gap: 0 1vw; \/* Espacement horizontal structurel *\/\n    }\n\n    \/* --- Titre (Align\u00e9 sur la 2\u00e8me colonne) --- *\/\n    .nk-spa-cadrage__title {\n        grid-column: 2;\n        grid-row: 1;\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        line-height: 1.25;\n        margin: 0 0 2rem 0;\n        color: black;\n    }\n\n    .nk-spa-cadrage__title-sans {\n        font-weight: 500;\n        display: block;\n    }\n\n    .nk-spa-cadrage__title-serif {\n        font-weight: normal;\n        display: block;\n    }\n\n    \/* --- Image Unique : S'\u00e9tend sur les 2 colonnes --- *\/\n    .nk-spa-cadrage__img-wrapper {\n        grid-column: 1 \/ 3;\n        grid-row: 2;\n        width: 100%;\n        \/* Ratio 3:2 (1.5) = Exactement l'espace de deux images 3:4 c\u00f4te \u00e0 c\u00f4te *\/\n        aspect-ratio: 1.5; \n        overflow: hidden; \n    }\n\n    .nk-spa-cadrage__img-wrapper img {\n        width: 100%;\n        height: 100%;\n        object-fit: cover;\n        object-position: center;\n        display: block;\n    }\n\n    \/* --- Texte : Colonne Droite (Sous l'image) --- *\/\n    .nk-spa-cadrage__text {\n        grid-column: 2;\n        grid-row: 3;\n        font-size: 0.95rem;\n        line-height: 1.5; \/* Strictement 1.5 selon le Design System Norki *\/\n        margin: 1.5rem var(--section-pad-h-dt, 5vw) 0 0;\n        color: black;\n        width: 85%;\n    }\n\n    \/* ==========================================================================\n       LAYOUT TABLETTE (Transition)\n       ========================================================================== *\/\n    @media (max-width: 1024px) {\n        .nk-spa-cadrage {\n            padding: var(--section-pad-v-tab, 60px) var(--section-pad-h-tab, 4vw);\n            padding-right: 0;\n        }\n        \n        .nk-spa-cadrage__inner {\n            width: 100%;\n        }\n        .nk-spa-cadrage__text {\n            width: 100%;\n            margin-right: var(--section-pad-h-tab, 4vw);\n        }\n        .nk-spa-cadrage__title {\n            margin-right: var(--section-pad-h-tab, 4vw);\n        }\n    }\n\n    \/* ==========================================================================\n       LAYOUT MOBILE (R\u00e9organisation Compl\u00e8te)\n       ========================================================================== *\/\n    @media (max-width: 768px) {\n        .nk-spa-cadrage {\n            padding: var(--section-pad-v-mob, 50px) 0; \/* Supprime le padding pour le plein \u00e9cran image *\/\n        }\n\n        .nk-spa-cadrage__inner {\n            width: 100%;\n        }\n\n        .nk-spa-cadrage__grid {\n            grid-template-columns: 1fr;\n            gap: 0;\n        }\n\n        .nk-spa-cadrage__title {\n            grid-column: 1;\n            grid-row: 1;\n            text-align: right;\n            padding: 0 var(--section-pad-h-mob, 20px);\n            margin-bottom: 25px;\n        }\n\n        .nk-spa-cadrage__img-wrapper {\n            grid-column: 1;\n            grid-row: 2;\n            aspect-ratio: 4 \/ 3; \/* Ratio l\u00e9g\u00e8rement plus haut sur mobile *\/\n        }\n\n        .nk-spa-cadrage__text {\n            grid-column: 1;\n            grid-row: 3;\n            margin-top: 25px;\n            padding: 0 var(--section-pad-h-mob, 20px);\n            width: 100%;\n        }\n    }\n<\/style>\n\n<section class=\"nk-spa-cadrage\">\n    <div class=\"nk-spa-cadrage__inner\">\n        <div class=\"nk-spa-cadrage__grid\">\n            \n            <!-- Titre (PC : Colonne 2 \/ Mobile : Pleine largeur align\u00e9 \u00e0 droite) -->\n            <h2 class=\"nk-spa-cadrage__title\">\n                <span class=\"nk-spa-cadrage__title-sans avenirmedium-font\">The Spa Sanctuary<\/span>\n                <span class=\"nk-spa-cadrage__title-serif baskerville-italic-font\">A Spectacle of Framing and Light<\/span>\n            <\/h2>\n\n            <!-- Image Panoramique (PC : S'\u00e9tend sur les colonnes 1 et 2) -->\n            <div class=\"nk-spa-cadrage__img-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/element-2.jpg\" alt=\"Luxury indoor chalet swimming pool surrounded by fixed glass windows overlooking mountain scenery\" loading=\"lazy\">\n            <\/div>\n\n            <!-- Texte (PC : Colonne 2 sous l'image) -->\n            <p class=\"nk-spa-cadrage__text\">\n                The ultimate architectural showstopper, the wellness zone invites itself directly into the main living volume. Seamlessly connected to the living room, the spa is revealed through monumental fixed glass walls, acting as a living, hypnotic aquatic canvas. This striking visual opening dissolves traditional room boundaries, allowing water, light, and architectural space to flow together in effortless harmony.\n            <\/p>\n\n        <\/div>\n    <\/div>\n<\/section>\n\n\n\n<style>\n    \/* ==========================================================================\n       COMPOSANT : S\u00c9LECTION D'OBJETS CHALET MORETA\n       ========================================================================== *\/\n    .norki-sel-objets {\n        padding-top: var(--section-pad-v-dt, 80px);\n        padding-bottom: var(--section-pad-v-dt, 80px);\n        padding-left: var(--section-pad-h-dt, 5vw);\n        padding-right: var(--section-pad-h-dt, 5vw);\n        background-color: var(--color-norki-beige, #f8f0ea);\n        color: #000000;\n        box-sizing: border-box;\n        overflow: hidden;\n    }\n\n    .norki-sel-objets * {\n        box-sizing: border-box;\n    }\n\n    .norki-sel-objets__container {\n        margin: 0 auto;\n        width: 100%;\n    }\n\n    \/* --- EN-T\u00caTE --- *\/\n    .norki-sel-objets__header {\n        display: flex;\n        justify-content: space-between;\n        align-items: flex-end;\n        margin-bottom: 40px;\n        gap: 15px;\n    }\n\n    .norki-sel-objets__title {\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        font-weight: normal;\n        margin: 0;\n        letter-spacing: -0.01em;\n        line-height: 1.25;\n    }\n\n    \/* --- NAVIGATION --- *\/\n    .norki-sel-objets__nav-bar {\n        display: flex;\n        align-items: center;\n    }\n\n    .norki-sel-objets__arrows {\n        display: flex;\n        gap: 15px;\n        margin-right: -12px;\n    }\n\n    .norki-sel-objets__arrows button {\n        background: none;\n        border: none;\n        color: #000000;\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    .norki-sel-objets__arrows button:hover { opacity: 0.6; }\n\n    .norki-sel-objets__arrows svg {\n        width: 26px;\n        height: 26px;\n        fill: none;\n        stroke: currentColor;\n        stroke-width: 1.2;\n    }\n\n    \/* --- CARROUSEL --- *\/\n    .norki-sel-objets__slider-area {\n        position: relative;\n        width: 100%;\n    }\n\n    .norki-sel-objets__carousel-viewport {\n        overflow-x: clip;\n        overflow-y: visible;\n        touch-action: pan-y;\n        margin: 0 -15px;\n    }\n\n    .norki-sel-objets__carousel-track {\n        display: flex;\n        will-change: transform;\n    }\n\n    .norki-sel-objets__slide {\n        padding: 0 15px;\n        display: flex;\n        flex-direction: column;\n        position: relative;\n        z-index: 1;\n    }\n\n    .norki-sel-objets__slide:hover,\n    .norki-sel-objets__slide:focus-within {\n        z-index: 100;\n    }\n\n    \/* --- ENCAPSULATION DES IMAGES --- *\/\n    .norki-sel-objets__image-wrapper {\n        position: relative;\n        width: 100%;\n        overflow: visible;\n    }\n\n    .norki-sel-objets__image-link {\n        display: block;\n        width: 100%;\n        aspect-ratio: 4 \/ 5;\n        overflow: hidden;\n        border-radius: 2px;\n        background-color: rgba(0, 0, 0, 0.04);\n        position: relative;\n    }\n\n    .norki-sel-objets__slide img.norki-main-img {\n        width: 100%;\n        height: 100%;\n        object-fit: cover;\n        object-position: center;\n        display: block;\n        transition: transform 0.6s ease;\n    }\n\n    .norki-sel-objets__image-link:hover img.norki-main-img {\n        transform: scale(1.03);\n    }\n\n    \/* ==========================================================================\n       HOTSPOTS (POINTS FLOTTANTS - PIXEL-PERFECT)\n       ========================================================================== *\/\n    .nk-hotspot {\n        position: absolute;\n        z-index: 10;\n        width: 0;\n        height: 0;\n    }\n\n    .nk-hotspot__btn {\n        position: absolute;\n        width: 36px;\n        height: 36px;\n        background-color: rgba(255, 255, 255, 0.95);\n        border: 1px solid #eaeaea;\n        border-radius: 50%;\n        box-shadow: 0 4px 10px rgba(0,0,0,0.15);\n        cursor: pointer;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        transform: translate(-50%, -50%);\n        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s, box-shadow 0.3s;\n        padding: 0;\n        color: #000000;\n    }\n\n    .nk-hotspot__btn svg {\n        width: 16px;\n        height: 16px;\n        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n    }\n\n    .nk-hotspot__btn::before {\n        content: '';\n        position: absolute;\n        inset: -6px;\n        border-radius: 50%;\n        border: 1px solid rgba(255, 255, 255, 0.8);\n        animation: nk-pulse-wave 2s infinite cubic-bezier(0.4, 0, 0.2, 1);\n        pointer-events: none;\n    }\n\n    @keyframes nk-pulse-wave {\n        0% { transform: scale(0.8); opacity: 1; }\n        100% { transform: scale(1.6); opacity: 0; }\n    }\n\n    .nk-hotspot__btn:hover,\n    .nk-hotspot.is-active .nk-hotspot__btn {\n        transform: translate(-50%, -50%) scale(1.1);\n        background-color: #ffffff;\n        box-shadow: 0 6px 15px rgba(0,0,0,0.25);\n    }\n\n    .nk-hotspot__btn:hover svg,\n    .nk-hotspot.is-active .nk-hotspot__btn svg {\n        transform: rotate(90deg);\n    }\n\n    .nk-hotspot__tooltip {\n        position: absolute;\n        bottom: 25px;\n        left: 0;\n        transform: translateX(-50%) translateY(10px);\n        width: 200px;\n        background: #ffffff;\n        padding: 12px;\n        box-shadow: 0 10px 30px rgba(0,0,0,0.15);\n        opacity: 0;\n        visibility: hidden;\n        pointer-events: none;\n        transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n        border-radius: 2px;\n        z-index: 20;\n    }\n\n    .nk-hotspot__tooltip::before {\n        content: '';\n        position: absolute;\n        top: 100%;\n        left: 0;\n        width: 100%;\n        height: 35px;\n        background: transparent;\n    }\n\n    .nk-hotspot__tooltip::after {\n        content: '';\n        position: absolute;\n        top: 100%;\n        left: 50%;\n        transform: translateX(-50%);\n        border-width: 8px;\n        border-style: solid;\n        border-color: #ffffff transparent transparent transparent;\n    }\n\n    .nk-hotspot:hover .nk-hotspot__tooltip,\n    .nk-hotspot.is-active .nk-hotspot__tooltip {\n        opacity: 1;\n        visibility: visible;\n        pointer-events: auto;\n        transform: translateX(-50%) translateY(0);\n    }\n\n    .nk-hotspot__link {\n        text-decoration: none;\n        display: flex;\n        flex-direction: column;\n        gap: 10px;\n    }\n\n    .nk-hotspot__thumb {\n        width: 100%;\n        height: 140px;\n        object-fit: cover;\n        background-color: #f5f5f5;\n    }\n\n    .nk-hotspot__info {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        gap: 8px;\n    }\n\n    .nk-hotspot__title {\n        font-size: 13px;\n        font-weight: 600;\n        color: #000000;\n        line-height: 1.3;\n        margin: 0;\n        text-align: center;\n    }\n\n    .nk-hotspot__action {\n        font-size: 11px;\n        text-transform: uppercase;\n        letter-spacing: 0.05em;\n        color: #666666;\n        text-align: center;\n        display: block;\n        width: 100%;\n        padding-top: 8px;\n        border-top: 1px solid #eeeeee;\n        transition: color 0.2s;\n    }\n\n    .nk-hotspot__link:hover .nk-hotspot__action {\n        color: #000000;\n    }\n\n    \/* ============================================\n       RESPONSIVE TABLETTE (\u2264 1024px)\n       ============================================ *\/\n    @media (max-width: 1024px) {\n        .norki-sel-objets {\n            padding-top: var(--section-pad-v-tab, 60px);\n            padding-bottom: var(--section-pad-v-tab, 60px);\n            padding-left: var(--section-pad-h-tab, 4vw);\n            padding-right: var(--section-pad-h-tab, 4vw);\n        }\n\n        .norki-sel-objets__header {\n            margin-bottom: 30px;\n        }\n    }\n\n    \/* ============================================\n       RESPONSIVE MOBILE (\u2264 768px)\n       ============================================ *\/\n    @media (max-width: 768px) {\n        .norki-sel-objets {\n            padding-top: var(--section-pad-v-mob, 50px);\n            padding-bottom: var(--section-pad-v-mob, 50px);\n            padding-left: var(--section-pad-h-mob, 20px);\n            padding-right: var(--section-pad-h-mob, 20px);\n        }\n\n        .norki-sel-objets__title {\n            font-size: clamp(1.1rem, 4.5vw, 1.4rem);\n        }\n\n        .norki-sel-objets__header {\n            align-items: center;\n            margin-bottom: 25px;\n        }\n\n        .norki-sel-objets__arrows {\n            margin-right: -5px;\n            gap: 10px;\n        }\n\n        .norki-sel-objets__arrows svg {\n            width: 22px;\n            height: 22px;\n        }\n\n        .norki-sel-objets__carousel-viewport {\n            margin: 0 -5px;\n        }\n\n        .norki-sel-objets__slide {\n            padding: 0 5px;\n        }\n\n        .nk-hotspot__tooltip {\n            width: 160px;\n        }\n\n        .nk-hotspot__thumb {\n            height: 110px;\n        }\n    }\n<\/style>\n\n<section class=\"norki-sel-objets\">\n    <div class=\"norki-sel-objets__container\">\n\n        <!-- En-t\u00eate : Titre (Gauche) + Fl\u00e8ches (Droite) -->\n        <div class=\"norki-sel-objets__header\">\n            <h2 class=\"norki-sel-objets__title avenirmedium-font\">\n                Our Selection of <span class=\"baskerville-italic-font\">objects<\/span>\n            <\/h2>\n            \n            <div class=\"norki-sel-objets__nav-bar\">\n                <div class=\"norki-sel-objets__arrows\">\n                    <button class=\"norki-sel-objets__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-sel-objets__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        <\/div>\n\n        <!-- Section Carrousel -->\n        <div class=\"norki-sel-objets__slider-area\" id=\"norki-sel-objets-slider\">\n            <div class=\"norki-sel-objets__carousel-viewport\">\n                <div class=\"norki-sel-objets__carousel-track\">\n                    \n                    <!-- SLIDE 1 : Orange Living Room & Coco Armchair -->\n                    <article class=\"norki-sel-objets__slide\">\n                        <div class=\"norki-sel-objets__image-wrapper\">\n                            <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/121-coco-white-shearling-armchair-norki.html\" class=\"norki-sel-objets__image-link\" aria-label=\"Discover the White Coco Armchair\">\n                                <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Assise_Photo-Survol-Fauteuil-Bao-Blanc_NORKI-1.jpg\" alt=\"Chalet Moreta - Orange living room and Norki white Coco armchair\" class=\"norki-main-img\" loading=\"lazy\">\n                            <\/a>\n                            \n                            <!-- HOTSPOT 1 : Coco Armchair -->\n                            <div class=\"nk-hotspot\" style=\"top: 78%; left: 40%;\">\n                                <button class=\"nk-hotspot__btn\" aria-label=\"View details of the Coco Armchair\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-hotspot__tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/luxury-modern-armchairs-collection-norki\/121-coco-white-shearling-armchair-norki.html\" class=\"nk-hotspot__link\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/chaise-blanche-agneau-blanc-luxe-decoration-salle-a-manger-300x300.jpg\" alt=\"White Coco Armchair\" class=\"nk-hotspot__thumb\">\n                                        <div class=\"nk-hotspot__info\">\n                                            <span class=\"nk-hotspot__title\">White Coco Armchair<\/span>\n                                            <span class=\"nk-hotspot__action\">View product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/article>\n\n                    <!-- SLIDE 2 : Master Suite & Aspen Rug -->\n                    <article class=\"norki-sel-objets__slide\">\n                        <div class=\"norki-sel-objets__image-wrapper\">\n                            <a href=\"https:\/\/www.norki.com\/en\/timless-rugs-hides-norki\/310-tapis-aspen-norki-fourrure-laine.html\" class=\"norki-sel-objets__image-link\" aria-label=\"Discover the Aspen Rug\">\n                                <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/E02_2683_\u252c\u00ae_Studio_Erick_Saillet-1.jpg\" alt=\"Chalet Moreta - Master suite and Norki Aspen rug\" class=\"norki-main-img\" loading=\"lazy\">\n                            <\/a>\n\n                            <!-- HOTSPOT 2 : Aspen Rug -->\n                            <div class=\"nk-hotspot\" style=\"top: 88%; left: 28%;\">\n                                <button class=\"nk-hotspot__btn\" aria-label=\"View details of the Aspen Rug\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-hotspot__tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/timless-rugs-hides-norki\/310-tapis-aspen-norki-fourrure-laine.html\" class=\"nk-hotspot__link\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/tapis-aspen-norki-fourrure-laine-300x300.jpg\" alt=\"Norki Aspen Rug\" class=\"nk-hotspot__thumb\">\n                                        <div class=\"nk-hotspot__info\">\n                                            <span class=\"nk-hotspot__title\">Aspen Rug<\/span>\n                                            <span class=\"nk-hotspot__action\">View product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/article>\n\n                    <!-- SLIDE 3 : Fireplace Corner, Qu\u00e9bec Throw & Forest Rug -->\n                    <article class=\"norki-sel-objets__slide\">\n                        <div class=\"norki-sel-objets__image-wrapper\">\n                            <a href=\"https:\/\/www.norki.com\/en\/timeless-throws-collection-norki\/255-quebec-throw.html\" class=\"norki-sel-objets__image-link\" aria-label=\"Discover details of the living area\">\n                                <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-Moreta_Dining-room_NORKI-2.jpg\" alt=\"Chalet Moreta - Fireplace area with Qu\u00e9bec Throw and Forest Rug\" class=\"norki-main-img\" loading=\"lazy\">\n                            <\/a>\n\n                            <!-- HOTSPOT 3A : Qu\u00e9bec Throw -->\n                            <div class=\"nk-hotspot\" style=\"top: 45%; left: 42%;\">\n                                <button class=\"nk-hotspot__btn\" aria-label=\"View details of the Qu\u00e9bec Throw\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-hotspot__tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/timeless-throws-collection-norki\/255-quebec-throw.html\" class=\"nk-hotspot__link\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/plaid-peau-lainee-jan-rock-norki-300x300.jpg\" alt=\"Norki Qu\u00e9bec Throw\" class=\"nk-hotspot__thumb\">\n                                        <div class=\"nk-hotspot__info\">\n                                            <span class=\"nk-hotspot__title\">Qu\u00e9bec Throw<\/span>\n                                            <span class=\"nk-hotspot__action\">View product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n\n                            <!-- HOTSPOT 3B : Forest Rug -->\n                            <div class=\"nk-hotspot\" style=\"top: 88%; left: 75%;\">\n                                <button class=\"nk-hotspot__btn\" aria-label=\"View details of the Forest Rug\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\n                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\n                                    <\/svg>\n                                <\/button>\n                                <div class=\"nk-hotspot__tooltip\">\n                                    <a href=\"https:\/\/www.norki.com\/en\/iconic-rugs-hides-norki\/476-forest-norki-rug-blue-green-cowhide-contemporary.html\" class=\"nk-hotspot__link\">\n                                        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/tapis-forest-norki-contemporain-peau-lainee-bleu-vert-300x300.jpg\" alt=\"Norki Forest Rug\" class=\"nk-hotspot__thumb\">\n                                        <div class=\"nk-hotspot__info\">\n                                            <span class=\"nk-hotspot__title\">Forest Rug<\/span>\n                                            <span class=\"nk-hotspot__action\">View product<\/span>\n                                        <\/div>\n                                    <\/a>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/article>\n\n                <\/div>\n            <\/div>\n        <\/div>\n\n    <\/div>\n<\/section>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', () => {\n\n    const container = document.getElementById('norki-sel-objets-slider');\n    if (!container) return;\n\n    const section = container.closest('.norki-sel-objets');\n    const track = container.querySelector('.norki-sel-objets__carousel-track');\n    const originalSlides = Array.from(container.querySelectorAll('.norki-sel-objets__slide'));\n    const totalOriginal = originalSlides.length;\n    const navBar = section.querySelector('.norki-sel-objets__nav-bar');\n\n    \/\/ Clonage pour effet de boucle infinie\n    originalSlides.forEach(slide => {\n        const clone = slide.cloneNode(true);\n        clone.classList.add('norki-sel-objets-clone');\n        clone.setAttribute('aria-hidden', 'true');\n        clone.querySelectorAll('a').forEach(link => link.setAttribute('tabindex', '-1'));\n        track.appendChild(clone);\n    });\n    originalSlides.slice().reverse().forEach(slide => {\n        const clone = slide.cloneNode(true);\n        clone.classList.add('norki-sel-objets-clone');\n        clone.setAttribute('aria-hidden', 'true');\n        clone.querySelectorAll('a').forEach(link => link.setAttribute('tabindex', '-1'));\n        track.insertBefore(clone, track.firstChild);\n    });\n\n    const allSlides = Array.from(container.querySelectorAll('.norki-sel-objets__slide'));\n\n    const getSlidesPerView = () => {\n        if (window.innerWidth > 1024) return 3; \/\/ PC\n        if (window.innerWidth > 768) return 2;  \/\/ Tablette\n        return 1;                               \/\/ Mobile\n    };\n\n    let itemsPerView = getSlidesPerView();\n    let itemWidthPct = 100 \/ itemsPerView;\n    allSlides.forEach(s => s.style.flex = `0 0 ${itemWidthPct}%`);\n    \n    let currentIndex = totalOriginal; \n    let isAnimating = false;\n    let fallbackTimeout;\n\n    const updateNavVisibility = () => {\n        if (itemsPerView >= totalOriginal && navBar) {\n            navBar.style.display = 'none';\n        } else if (navBar) {\n            navBar.style.display = 'flex';\n        }\n    };\n\n    const updateCarousel = (instant = false) => {\n        updateNavVisibility();\n        \n        if (itemsPerView >= totalOriginal) {\n            currentIndex = totalOriginal; \n            track.style.transition = 'none';\n            track.style.transform = `translateX(-${currentIndex * itemWidthPct}%)`;\n            isAnimating = false;\n            clearTimeout(fallbackTimeout);\n            return;\n        }\n\n        track.style.transition = instant ? 'none' : 'transform 0.5s cubic-bezier(0.4, 0.0, 0.2, 1)';\n        track.style.transform = `translateX(-${currentIndex * itemWidthPct}%)`;\n\n        if (instant) {\n            isAnimating = false;\n            clearTimeout(fallbackTimeout);\n        } else {\n            clearTimeout(fallbackTimeout);\n            fallbackTimeout = setTimeout(() => {\n                if (isAnimating) handleTransitionEnd();\n            }, 550);\n        }\n    };\n\n    updateCarousel(true);\n\n    const moveNext = () => {\n        if (isAnimating || itemsPerView >= totalOriginal) return;\n        isAnimating = true;\n        currentIndex++;\n        updateCarousel();\n    };\n\n    const movePrev = () => {\n        if (isAnimating || itemsPerView >= totalOriginal) return;\n        isAnimating = true;\n        currentIndex--;\n        updateCarousel();\n    };\n\n    const btnNext = section.querySelector('.norki-sel-objets__next');\n    const btnPrev = section.querySelector('.norki-sel-objets__prev');\n\n    if (btnNext) btnNext.addEventListener('click', moveNext);\n    if (btnPrev) btnPrev.addEventListener('click', movePrev);\n\n    const handleTransitionEnd = () => {\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    track.addEventListener('transitionend', (e) => {\n        if (e.target !== track || e.propertyName !== 'transform') return;\n        clearTimeout(fallbackTimeout);\n        handleTransitionEnd();\n    });\n\n    window.addEventListener('resize', () => {\n        const newItemsPerView = getSlidesPerView();\n        if (newItemsPerView !== itemsPerView) {\n            itemsPerView = newItemsPerView;\n            itemWidthPct = 100 \/ itemsPerView;\n            allSlides.forEach(s => s.style.flex = `0 0 ${itemWidthPct}%`);\n            updateCarousel(true);\n        }\n    });\n\n    \/\/ Gestion du Touch \/ Swipe sur mobile & tablette\n    let startX = 0, endX = 0;\n    const swipeThreshold = 40;\n\n    track.addEventListener('touchstart', (e) => {\n        if (itemsPerView >= totalOriginal) return; \n        startX = e.touches[0].clientX;\n    }, { passive: true });\n    \n    track.addEventListener('touchend', (e) => {\n        if (itemsPerView >= totalOriginal) return;\n        endX = e.changedTouches[0].clientX;\n        const diff = startX - endX;\n        if (Math.abs(diff) > swipeThreshold) {\n            if (diff > 0) moveNext();\n            else movePrev();\n        }\n    });\n\n    \/* =========================================================\n       GESTION INTERACTIVE DES HOTSPOTS\n       ========================================================= *\/\n    document.addEventListener('click', (e) => {\n        const btnHotspot = e.target.closest('.nk-hotspot__btn');\n        const hotspots = document.querySelectorAll('.nk-hotspot');\n\n        if (btnHotspot) {\n            e.preventDefault();\n            e.stopPropagation();\n\n            const currentHotspot = btnHotspot.closest('.nk-hotspot');\n            \n            \/\/ Ferme les autres hotspots\n            hotspots.forEach(h => {\n                if (h !== currentHotspot) h.classList.remove('is-active');\n            });\n\n            \/\/ Toggle le hotspot s\u00e9lectionn\u00e9\n            currentHotspot.classList.toggle('is-active');\n        } else if (!e.target.closest('.nk-hotspot')) {\n            \/\/ Clic ext\u00e9rieur : Fermeture globale\n            hotspots.forEach(h => h.classList.remove('is-active'));\n        }\n    });\n\n});\n<\/script>\n\n\n\n<div class=\"nk-hotels-showcase\">\n    \n    <!-- Image Sup\u00e9rieure avec D\u00e9grad\u00e9 -->\n    <section class=\"nk-hs-hero\">\n        <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/Chalet-Moreta_MasterBedroom_bas.jpg\" alt=\"Exceptional mountain chalet by Norki\" class=\"nk-hs-hero__img\">\n        <div class=\"nk-hs-hero__fade\"><\/div>\n    <\/section>\n\n    <!-- ==========================================\n         BLOC HTML - S\u00c9MANTIQUE & INDEXABILIT\u00c9\n         ========================================== -->\n    <section id=\"wp-custom-projects-slider\" class=\"wp-custom-projects-slider-container\" aria-label=\"Our Mountain Projects\">\n        \n        <!-- Bloc Information -->\n        <div class=\"projects-info\">\n            <h2 class=\"avenirmedium-font\">Explore Other <br><span class=\"baskerville-italic-font\">Projects<\/span><\/h2>\n            <a href=\"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/\" class=\"link-voir-tout\">View All<\/a>\n        <\/div>\n\n        <!-- Zone Slider -->\n        <div class=\"projects-slider\">\n            <button class=\"nav-arrow left-arrow\" aria-label=\"Previous project\">\n                <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/images\/arrow-right.svg\" alt=\"\" aria-hidden=\"true\">\n            <\/button>\n            <button class=\"nav-arrow right-arrow\" aria-label=\"Next project\">\n                <img decoding=\"async\" src=\"https:\/\/norki.com\/sur-mesure\/wp-content\/themes\/twentytwentyfour\/assets\/images\/arrow-right.svg\" alt=\"\" aria-hidden=\"true\">\n            <\/button>\n\n            <!-- Slide 1 : Courchevel (Actif - Lien valide) -->\n            <article class=\"slide active\">\n                <div class=\"slide__img-wrapper\">\n                    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/06\/Untitled-1.jpg\" alt=\"Refined Contemporary Chalet in Courchevel\">\n                <\/div>\n                <div class=\"slide-content\">\n                    <div class=\"slide-content-text\">\n                        <span class=\"slide-city avenirmedium-font\">Courchevel<\/span>\n                        <h3 class=\"avenirmedium-font\">Refined Contemporary Chalet<\/h3>\n                        <p class=\"baskerville-italic-font\">Chalet in Courchevel<\/p>\n                    <\/div>\n                    <a href=\"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/courchevel-french-alps\/\" class=\"link-voir\">View<\/a>\n                <\/div>\n            <\/article>\n\n            <!-- Slide 2 : Aspen (COMING SOON) -->\n            <article class=\"slide is-coming-soon\">\n                <div class=\"slide__img-wrapper\">\n                    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/06\/Aspen_temp.png\" alt=\"Contemporary Luxury - Chalet in Aspen\">\n                <\/div>\n                <div class=\"slide-content\">\n                    <div class=\"slide-content-text\">\n                        <span class=\"slide-city avenirmedium-font\">Aspen<\/span>\n                        <h3 class=\"avenirmedium-font\">Contemporary Luxury<\/h3>\n                        <p class=\"baskerville-italic-font\">Chalet in Aspen<\/p>\n                    <\/div>\n                    <a href=\"#\" class=\"link-voir\">View<\/a>\n                <\/div>\n            <\/article>\n\n            <!-- Slide 3 : Meg\u00e8ve (Actif - Lien valide) -->\n            <article class=\"slide\">\n                <div class=\"slide__img-wrapper\">\n                    <img decoding=\"async\" src=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/06\/2026_01_22_Sicoria_Living.jpg\" alt=\"The Henry-Jacques Le M\u00eame Heritage - Chalet in Meg\u00e8ve\">\n                <\/div>\n                <div class=\"slide-content\">\n                    <div class=\"slide-content-text\">\n                        <span class=\"slide-city avenirmedium-font\">Meg\u00e8ve<\/span>\n                        <h3 class=\"avenirmedium-font\">The Henry-Jacques Le M\u00eame Heritage<\/h3>\n                        <p class=\"baskerville-italic-font\">Chalet in Meg\u00e8ve<\/p>\n                    <\/div>\n                    <a href=\"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/megeve-mont-d-arbois\/\" class=\"link-voir\">View<\/a>\n                <\/div>\n            <\/article>\n\n        <\/div>\n    <\/section>\n\n<\/div>\n\n<!-- ==========================================\n     BLOC CSS - STYLES INITIAUX & CORRECTIONS GPU\n     ========================================== -->\n<style>\n    \/* ==========================================\n       HERO TOP IMAGE\n       ========================================== *\/\n    .nk-hotels-showcase {\n        width: 100%;\n        background-color: var(--color-norki-brown, #50423d);\n    }\n\n    .nk-hs-hero {\n        position: relative;\n        width: 100%;\n        height: 75vh;\n        background-color: #000;\n    }\n\n    .nk-hs-hero__img {\n        width: 100%;\n        height: 100%;\n        object-fit: cover;\n        object-position: center 67%;\n        display: block;\n    }\n\n    .nk-hs-hero__fade {\n        position: absolute;\n        bottom: 0;\n        left: 0;\n        width: 100%;\n        height: 45%;\n        background: linear-gradient(to bottom, rgba(80, 66, 61, 0) 0%, var(--color-norki-brown, #50423d) 100%);\n        z-index: 2;\n        pointer-events: none;\n    }\n\n    \/* ==========================================\n       VARIABLES CSS & SLIDER\n       ========================================== *\/\n    .wp-custom-projects-slider-container {\n        --bg-section: var(--color-norki-brown, #50423d);\n        --text-light: #ffffff;\n        --text-muted: #d3ccc7;\n        --text-dark: var(--color-norki-beige, #f8f0ea);\n        --font-primary: Arial, sans-serif;\n        --font-secondary: serif;\n        --radius-img: 4px;\n        \n        box-sizing: border-box;\n        position: relative;\n        background-color: var(--bg-section);\n        width: 100%;\n        height: 100vh;\n        min-height: 850px;\n        color: var(--text-light);\n        font-family: var(--font-primary);\n        overflow: hidden;\n    }\n\n    .wp-custom-projects-slider-container *, \n    .wp-custom-projects-slider-container *::before, \n    .wp-custom-projects-slider-container *::after {\n        box-sizing: inherit;\n        margin: 0;\n        padding: 0;\n    }\n\n    .wp-custom-projects-slider-container .projects-info {\n        position: absolute;\n        top: 130px;\n        left: 50px;\n        width: 360px;\n        z-index: 10;\n    }\n\n    .wp-custom-projects-slider-container .projects-info h2 {\n        font-size: clamp(1.4rem, 2.5vw, 35px);\n        font-weight: normal; \n        line-height: 1.15; \n        margin-bottom: 20px;\n        color: var(--text-dark);\n    }\n\n    .wp-custom-projects-slider-container .link-voir-tout {\n        font-size: 0.95rem;\n        color: var(--text-light);\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    .wp-custom-projects-slider-container .link-voir-tout:hover {\n        text-decoration-color: transparent;\n        opacity: 0.7;\n    }\n\n    \/* --- NAVIGATION --- *\/\n    .wp-custom-projects-slider-container .nav-arrow {\n        position: absolute;\n        top: 33%;\n        transform: translateY(-50%);\n        background: transparent;\n        border: none;\n        cursor: pointer;\n        z-index: 15;\n        transition: opacity 0.2s ease, transform 0.2s ease;\n        padding: 10px;\n        opacity: 0.7;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n    }\n\n    .wp-custom-projects-slider-container .nav-arrow img {\n        width: 20px; \n        height: 20px;\n        display: block;\n        filter: brightness(0) invert(1);\n    }\n\n    .wp-custom-projects-slider-container .left-arrow img {\n        transform: scaleX(-1);\n    }\n\n    @media (hover: hover) {\n        .wp-custom-projects-slider-container .nav-arrow:hover {\n            opacity: 1;\n            transform: translateY(-50%) scale(1.1);\n        }\n    }\n\n    .wp-custom-projects-slider-container .nav-arrow:active {\n        opacity: 0.4 !important;\n        transform: translateY(-50%) scale(0.9) !important;\n        transition: none !important;\n    }\n\n    .wp-custom-projects-slider-container .left-arrow { left: 30px; }\n    .wp-custom-projects-slider-container .right-arrow { right: 30px; }\n\n    \/* Zone du Slider *\/\n    .wp-custom-projects-slider-container .projects-slider {\n        position: absolute;\n        bottom: 40px; \n        width: 100vw;\n        height: 80vh; \n        display: flex;\n        align-items: flex-end;\n        justify-content: center;\n    }\n\n    .wp-custom-projects-slider-container .slide {\n        position: absolute;\n        bottom: 0;\n        height: 50vh;\n        width: auto;\n        aspect-ratio: 1272 \/ 1140;\n        transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1);\n        opacity: 0;\n        visibility: hidden;\n        z-index: 0;\n    }\n\n    .wp-custom-projects-slider-container .slide__img-wrapper {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: hidden; \n        border-radius: var(--radius-img);\n        -webkit-mask-image: -webkit-radial-gradient(white, black);\n        mask-image: radial-gradient(white, black);\n        -webkit-transform: translateZ(0);\n        transform: translateZ(0);\n        -webkit-backface-visibility: hidden;\n        backface-visibility: hidden;\n        z-index: 0;\n    }\n\n    .wp-custom-projects-slider-container .slide img {\n        width: 100%;\n        height: 100%;\n        object-fit: cover;\n        display: block;\n        transition: transform 0.5s ease;\n        -webkit-transform: translateZ(0);\n        transform: translateZ(0);\n        -webkit-backface-visibility: hidden;\n        backface-visibility: hidden;\n    }\n\n    \/* --- CLASSES HOVER & COMING SOON --- *\/\n    .wp-custom-projects-slider-container .slide.active:not(.is-coming-soon):hover img {\n        transform: scale(1.03) translateZ(0);\n    }\n\n    .wp-custom-projects-slider-container .slide.is-coming-soon,\n    .wp-custom-projects-slider-container .slide.active.is-coming-soon {\n        cursor: not-allowed !important;\n    }\n\n    .wp-custom-projects-slider-container .slide.is-coming-soon img {\n        opacity: 0.7;\n    }\n\n    .wp-custom-projects-slider-container .slide.active.is-coming-soon:hover::before {\n        content: \"Page under creation\";\n        position: absolute;\n        bottom: 30px;\n        left: 50%;\n        transform: translateX(-50%);\n        background: rgba(31, 41, 55, 0.95);\n        color: #fff;\n        padding: 8px 14px;\n        font-size: 0.75rem;\n        border-radius: 6px;\n        white-space: nowrap;\n        pointer-events: none;\n        z-index: 50;\n        box-shadow: 0 4px 6px -1px rgb(0 0 0 \/ 0.1);\n    }\n\n    .wp-custom-projects-slider-container .slide.is-coming-soon .link-voir {\n        display: none;\n    }\n\n    .wp-custom-projects-slider-container .slide::after {\n        content: '';\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 40%; \n        background: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.5) 30%, rgba(0,0,0,0.15) 65%, transparent 100%);\n        border-radius: var(--radius-img) var(--radius-img) 0 0;\n        opacity: 0;\n        transition: opacity 0.4s ease;\n        pointer-events: none;\n        z-index: 1;\n    }\n\n    .wp-custom-projects-slider-container .slide.active::after { opacity: 1; }\n\n    .wp-custom-projects-slider-container .slide-content {\n        text-align: left;\n        position: absolute;\n        top: 30px;\n        left: 30px;\n        right: 30px;\n        display: flex;\n        justify-content: space-between;\n        align-items: flex-start;\n        opacity: 0;\n        transition: opacity 0.4s ease;\n        pointer-events: none;\n        z-index: 2;\n        -webkit-transform: translateZ(0);\n        transform: translateZ(0);\n    }\n\n    .wp-custom-projects-slider-container .slide-content-text {\n        -webkit-font-smoothing: antialiased;\n        -moz-osx-font-smoothing: grayscale;\n    }\n    .wp-custom-projects-slider-container .slide-content-text span,\n    .wp-custom-projects-slider-container .slide-content-text h3,\n    .wp-custom-projects-slider-container .slide-content-text p {\n        border: none !important;\n        outline: none !important;\n        background: transparent !important;\n        box-shadow: none !important;\n    }\n\n    .wp-custom-projects-slider-container .slide-content-text .slide-city {\n        display: block;\n        color: var(--text-muted);\n        font-size: 0.75rem;\n        text-transform: uppercase;\n        letter-spacing: 0.05em;\n        margin-bottom: 6px;\n        font-weight: 600;\n        text-shadow: 0 1px 3px rgba(0,0,0,0.5);\n    }\n\n    .wp-custom-projects-slider-container .slide-content-text h3 {\n        color: var(--text-light);\n        font-size: clamp(1.3rem, 2vw, 24px); \n        font-weight: normal;\n        margin-bottom: 5px;\n        line-height: 1.3;\n        text-shadow: 0 1px 3px rgba(0,0,0,0.5);\n    }\n\n    .wp-custom-projects-slider-container .slide-content-text p {\n        font-size: 0.95rem; \n        color: white;\n        line-height: 1.5;\n    }\n\n    .wp-custom-projects-slider-container .link-voir {\n        position: relative;\n        color: var(--text-light);\n        text-decoration: none;\n        border-bottom: 1px solid var(--text-light);\n        font-size: 0.8rem;\n        opacity: 0;\n        transform: translateY(10px);\n        transition: all 0.4s ease;\n        pointer-events: auto;\n        transform-origin: right center;\n        text-shadow: 0 1px 3px rgba(0,0,0,0.5);\n    }\n\n    .wp-custom-projects-slider-container .slide.active .link-voir {\n        opacity: 1;\n        transform: translateY(0) scale(1);\n    }\n\n    @media (hover: hover) {\n        .wp-custom-projects-slider-container .slide.active:hover .link-voir {\n            transform: translateY(0) scale(1.15);\n        }\n    }\n\n    \/* \u00c9tats du slider (PC > 1700px) *\/\n    .wp-custom-projects-slider-container .slide.prev {\n        opacity: 1;\n        visibility: visible;\n        transform: translateX(calc(50px - 50vw + 50%));\n        z-index: 5;\n        cursor: pointer;\n    }\n\n    .wp-custom-projects-slider-container .slide.active {\n        opacity: 1;\n        visibility: visible;\n        transform: translateX(calc(90px + (50vh * 1272 \/ 1140) - 50vw + 50%));\n        z-index: 10;\n        height: 76vh;\n        cursor: pointer;\n    }\n\n    .wp-custom-projects-slider-container .slide.next {\n        opacity: 1;\n        visibility: visible;\n        transform: translateX(calc(130px + (126vh * 1272 \/ 1140) - 50vw + 50%));\n        z-index: 5;\n        cursor: pointer;\n    }\n\n    .wp-custom-projects-slider-container .slide.active .slide-content {\n        opacity: 1;\n        transition-delay: 0.4s;\n    }\n\n    \/* ==========================================\n       RESPONSIVE DESIGN\n       ========================================== *\/\n    @media (max-width: 1700px) {\n        .wp-custom-projects-slider-container .slide.prev, \n        .wp-custom-projects-slider-container .slide.next { filter: brightness(0.9); }\n        \n        .wp-custom-projects-slider-container {\n            height: auto;\n            min-height: 65vh;\n            display: flex;\n            flex-direction: column;\n            justify-content: flex-start;\n            padding-bottom: 40px; \n            text-align: center;\n        }\n        \n        .wp-custom-projects-slider-container .projects-info {\n            position: relative;\n            top: 0; left: 0; width: 100%;\n            padding: 60px 20px 20px;\n        }\n        \n        .wp-custom-projects-slider-container .projects-slider {\n            position: relative; top: auto; bottom: auto; left: 50%;\n            transform: translateX(-50%); height: 55cqi; max-height: 75vh;\n        }\n        \n        .wp-custom-projects-slider-container .slide { \n            width: 45vw; \n            height: auto; \n            max-height: 60vh; \n        }\n        \n        .wp-custom-projects-slider-container .slide.active { \n            width: 60vw; \n            height: auto; \n            max-height: 75vh; \n            transform: translateX(0); \n        }\n        \n        .wp-custom-projects-slider-container .slide.prev { transform: translateX(-50vw); } \n        .wp-custom-projects-slider-container .slide.next { transform: translateX(50vw); } \n        \n        .wp-custom-projects-slider-container .nav-arrow {\n            top: auto;\n            bottom: calc(min(45vw * (1140 \/ 1272), 60vh) + 15px);\n            transform: none;\n            transition: opacity 0.2s ease, transform 0.2s ease;\n        }\n\n        @media (hover: hover) {\n            .wp-custom-projects-slider-container .nav-arrow:hover { \n                transform: scale(1.1); \n                opacity: 1;\n            }\n        }\n\n        .wp-custom-projects-slider-container .nav-arrow:active {\n            opacity: 0.4 !important;\n            transform: scale(0.9) !important;\n            transition: none !important;\n        }\n\n        .wp-custom-projects-slider-container .left-arrow { left: 2vw; }\n        .wp-custom-projects-slider-container .right-arrow { right: 2vw; }\n    }\n\n    @media (max-width: 720px) {\n        .wp-custom-projects-slider-container .projects-info h2 { font-size: 1.4rem; }\n        .wp-custom-projects-slider-container .projects-slider { height: 75vw; }\n        .wp-custom-projects-slider-container .slide { \n            width: 65vw; \n            height: auto; \n        }\n        .wp-custom-projects-slider-container .slide.active { \n            width: 85vw; \n            height: auto; \n        }\n        .wp-custom-projects-slider-container .slide::after {\n            height: 60%;\n            background: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.5) 30%, rgba(0,0,0,0.35) 65%, transparent 100%);\n        }\n        .wp-custom-projects-slider-container .slide.prev { transform: translateX(-75vw); }\n        .wp-custom-projects-slider-container .slide.next { transform: translateX(75vw); }\n        .wp-custom-projects-slider-container .nav-arrow { bottom: calc(min(65vw * (1140 \/ 1272), 60vh) + 15px); }\n        .wp-custom-projects-slider-container .left-arrow { left: 0; }\n        .wp-custom-projects-slider-container .right-arrow { right: 0; }\n\n        .wp-custom-projects-slider-container .slide-content {\n            top: 20px; bottom: 30px; text-align: center;\n            flex-direction: column; align-items: center; justify-content: space-between;\n        }\n        .wp-custom-projects-slider-container .slide-content-text h3 { margin-bottom: 5px; }\n        .wp-custom-projects-slider-container .link-voir {\n            transform-origin: center center;\n        }\n    }\n\n    @media (max-width: 420px) {\n        .wp-custom-projects-slider-container .projects-slider { height: 95vw; max-height: none; }\n        .wp-custom-projects-slider-container .nav-arrow { bottom: calc(85vw * (1140 \/ 1272) + 10px); }\n        .wp-custom-projects-slider-container .left-arrow { left: 5vw; }\n        .wp-custom-projects-slider-container .right-arrow { right: 5vw; }\n    }\n<\/style>\n\n<!-- ==========================================\n     BLOC JAVASCRIPT - COMPORTEMENT\n     ========================================== -->\n<script>\n(function() {\n    const CONFIG_COMPOSANT = {\n        delaiAutoPlay: 8000,\n        delaiPauseApresClic: 15000\n    };\n\n    const container = document.getElementById('wp-custom-projects-slider');\n    if (!container) return; \n\n    const slidesElements = Array.from(container.querySelectorAll('.slide'));\n    let currentIndex = slidesElements.findIndex(slide => slide.classList.contains('active'));\n    if (currentIndex === -1) currentIndex = 0;\n\n    let autoplayInterval;\n    let pauseTimeout;\n\n    function renderSlider() {\n        slidesElements.forEach(slide => slide.classList.remove('active', 'prev', 'next'));\n        \n        slidesElements[currentIndex].classList.add('active');\n        \n        let prevIndex = currentIndex - 1 < 0 ? slidesElements.length - 1 : currentIndex - 1;\n        let nextIndex = currentIndex + 1 >= slidesElements.length ? 0 : currentIndex + 1;\n        \n        slidesElements[prevIndex].classList.add('prev');\n        slidesElements[nextIndex].classList.add('next');\n    }\n\n    function goToNextSlide() {\n        currentIndex = currentIndex + 1 >= slidesElements.length ? 0 : currentIndex + 1;\n        renderSlider();\n    }\n\n    function goToPrevSlide() {\n        currentIndex = currentIndex - 1 < 0 ? slidesElements.length - 1 : currentIndex - 1;\n        renderSlider();\n    }\n\n    function startAutoplay() {\n        clearInterval(autoplayInterval);\n        autoplayInterval = setInterval(goToNextSlide, CONFIG_COMPOSANT.delaiAutoPlay); \n    }\n\n    function pauseAutoplayTemporarily() {\n        clearInterval(autoplayInterval); \n        clearTimeout(pauseTimeout); \n        pauseTimeout = setTimeout(startAutoplay, CONFIG_COMPOSANT.delaiPauseApresClic);\n    }\n\n    container.querySelector('.left-arrow').addEventListener('click', () => {\n        goToPrevSlide();\n        pauseAutoplayTemporarily();\n    });\n\n    container.querySelector('.right-arrow').addEventListener('click', () => {\n        goToNextSlide();\n        pauseAutoplayTemporarily();\n    });\n\n    slidesElements.forEach(slide => {\n        slide.addEventListener('click', (e) => {\n            if (slide.classList.contains('active')) {\n                if (!e.target.classList.contains('link-voir')) {\n                    const linkElement = slide.querySelector('.link-voir');\n                    if (linkElement) {\n                        const linkHref = linkElement.getAttribute('href');\n                        if (linkHref && linkHref !== '#') window.location.href = linkHref;\n                    }\n                }\n            } else if (slide.classList.contains('prev')) {\n                goToPrevSlide();\n                pauseAutoplayTemporarily();\n            } else if (slide.classList.contains('next')) {\n                goToNextSlide();\n                pauseAutoplayTemporarily();\n            }\n        });\n    });\n\n    let touchStartX = 0;\n    let touchEndX = 0;\n    const sliderContainer = container.querySelector('.projects-slider');\n\n    function handleSwipeGesture() {\n        const swipeThreshold = 50; \n        if (touchEndX < touchStartX - swipeThreshold) {\n            goToNextSlide();\n            pauseAutoplayTemporarily();\n        }\n        if (touchEndX > touchStartX + swipeThreshold) {\n            goToPrevSlide();\n            pauseAutoplayTemporarily();\n        }\n    }\n\n    sliderContainer.addEventListener('touchstart', (e) => {\n        touchStartX = e.changedTouches[0].screenX;\n    }, { passive: true });\n\n    sliderContainer.addEventListener('touchend', (e) => {\n        touchEndX = e.changedTouches[0].screenX;\n        handleSwipeGesture();\n    });\n\n    renderSlider();\n    startAutoplay();\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>American West Log House Chalet in Jackson Hole Jackson Hole Rustic Contemporary 800 sqm 2025 Wyoming\u2019s Legendary Heritage and the Majesty of the Open West Set in the state of Wyoming, near the Idaho border, the Jackson Hole valley commands a spectacular presence. Named after the early 19th-century trapper David Edward Jackson, this enclave preserves [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1883,"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('\/studio-chalet\/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('\/studio-chalet\/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('\/studio-chalet\/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('\/studio-chalet\/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('\/studio-chalet\/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('\/studio-chalet\/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":""},"class_list":["post-2697","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>D\u00e9coration d&#039;Int\u00e9rieur Meg\u00e8ve | Chalet Luxe Mont d&#039;Arbois | Norki<\/title>\n<meta name=\"description\" content=\"D\u00e9couvrez l&#039;int\u00e9rieur d&#039;un chalet d&#039;exception au Mont d&#039;Arbois, Meg\u00e8ve. Design, mobilier et tapis sur-mesure, mati\u00e8res nobles et luxe contemporain.\" \/>\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\/studio-chalet\/luxury-interior-design\/jackson-hole\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"D\u00e9coration d&#039;Int\u00e9rieur Meg\u00e8ve | Chalet Luxe Mont d&#039;Arbois | Norki\" \/>\n<meta property=\"og:description\" content=\"D\u00e9couvrez l&#039;int\u00e9rieur d&#039;un chalet d&#039;exception au Mont d&#039;Arbois, Meg\u00e8ve. Design, mobilier et tapis sur-mesure, mati\u00e8res nobles et luxe contemporain.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/\" \/>\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-07-31T10:35:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2025_10_21_Pool.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=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/\",\"url\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/\",\"name\":\"D\u00e9coration d'Int\u00e9rieur Meg\u00e8ve | Chalet Luxe Mont d'Arbois | Norki\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/2025_10_21_Pool.jpg\",\"datePublished\":\"2026-07-30T07:06:01+00:00\",\"dateModified\":\"2026-07-31T10:35:13+00:00\",\"description\":\"D\u00e9couvrez l'int\u00e9rieur d'un chalet d'exception au Mont d'Arbois, Meg\u00e8ve. Design, mobilier et tapis sur-mesure, mati\u00e8res nobles et luxe contemporain.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/2025_10_21_Pool.jpg\",\"contentUrl\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/2025_10_21_Pool.jpg\",\"width\":1920,\"height\":1536},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/jackson-hole\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.norki.com\\\/fr\\\/studio-chalet\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Our projects\",\"item\":\"https:\\\/\\\/www.norki.com\\\/en\\\/studio-chalet\\\/luxury-interior-design\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Moreta\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/#website\",\"url\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/\",\"name\":\"Norki\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/#organization\",\"name\":\"Norki | Studio Chalet\",\"url\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/logo-simple-noir_NORKI-e1777530636585.png\",\"contentUrl\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/logo-simple-noir_NORKI-e1777530636585.png\",\"width\":300,\"height\":74,\"caption\":\"Norki | Studio Chalet\"},\"image\":{\"@id\":\"https:\\\/\\\/www.norki.com\\\/studio-chalet\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/facebook.com\\\/NorkiDecoration\",\"https:\\\/\\\/instagram.com\\\/norkiofficial\\\/\",\"https:\\\/\\\/fr.linkedin.com\\\/company\\\/norki-decoration\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCLwZSkdXDYvZx68leltWTMw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"D\u00e9coration d'Int\u00e9rieur Meg\u00e8ve | Chalet Luxe Mont d'Arbois | Norki","description":"D\u00e9couvrez l'int\u00e9rieur d'un chalet d'exception au Mont d'Arbois, Meg\u00e8ve. Design, mobilier et tapis sur-mesure, mati\u00e8res nobles et luxe contemporain.","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\/studio-chalet\/luxury-interior-design\/jackson-hole\/","og_locale":"fr_FR","og_type":"article","og_title":"D\u00e9coration d'Int\u00e9rieur Meg\u00e8ve | Chalet Luxe Mont d'Arbois | Norki","og_description":"D\u00e9couvrez l'int\u00e9rieur d'un chalet d'exception au Mont d'Arbois, Meg\u00e8ve. Design, mobilier et tapis sur-mesure, mati\u00e8res nobles et luxe contemporain.","og_url":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/","og_site_name":"Norki","article_publisher":"https:\/\/facebook.com\/NorkiDecoration","article_modified_time":"2026-07-31T10:35:13+00:00","og_image":[{"url":"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2025_10_21_Pool.jpg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/","url":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/","name":"D\u00e9coration d'Int\u00e9rieur Meg\u00e8ve | Chalet Luxe Mont d'Arbois | Norki","isPartOf":{"@id":"https:\/\/www.norki.com\/studio-chalet\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/#primaryimage"},"image":{"@id":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/#primaryimage"},"thumbnailUrl":"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2025_10_21_Pool.jpg","datePublished":"2026-07-30T07:06:01+00:00","dateModified":"2026-07-31T10:35:13+00:00","description":"D\u00e9couvrez l'int\u00e9rieur d'un chalet d'exception au Mont d'Arbois, Meg\u00e8ve. Design, mobilier et tapis sur-mesure, mati\u00e8res nobles et luxe contemporain.","breadcrumb":{"@id":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/#primaryimage","url":"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2025_10_21_Pool.jpg","contentUrl":"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/07\/2025_10_21_Pool.jpg","width":1920,"height":1536},{"@type":"BreadcrumbList","@id":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/jackson-hole\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.norki.com\/fr\/studio-chalet\/"},{"@type":"ListItem","position":2,"name":"Our projects","item":"https:\/\/www.norki.com\/en\/studio-chalet\/luxury-interior-design\/"},{"@type":"ListItem","position":3,"name":"Moreta"}]},{"@type":"WebSite","@id":"https:\/\/www.norki.com\/studio-chalet\/#website","url":"https:\/\/www.norki.com\/studio-chalet\/","name":"Norki","description":"","publisher":{"@id":"https:\/\/www.norki.com\/studio-chalet\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.norki.com\/studio-chalet\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/www.norki.com\/studio-chalet\/#organization","name":"Norki | Studio Chalet","url":"https:\/\/www.norki.com\/studio-chalet\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.norki.com\/studio-chalet\/#\/schema\/logo\/image\/","url":"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/04\/logo-simple-noir_NORKI-e1777530636585.png","contentUrl":"https:\/\/www.norki.com\/studio-chalet\/wp-content\/uploads\/2026\/04\/logo-simple-noir_NORKI-e1777530636585.png","width":300,"height":74,"caption":"Norki | Studio Chalet"},"image":{"@id":"https:\/\/www.norki.com\/studio-chalet\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/facebook.com\/NorkiDecoration","https:\/\/instagram.com\/norkiofficial\/","https:\/\/fr.linkedin.com\/company\/norki-decoration\/","https:\/\/www.youtube.com\/channel\/UCLwZSkdXDYvZx68leltWTMw"]}]}},"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\/studio-chalet\/inspiration-decoration-montagne\/author\/webmaster\/"},"uagb_comment_info":0,"uagb_excerpt":"American West Log House Chalet in Jackson Hole Jackson Hole Rustic Contemporary 800 sqm 2025 Wyoming\u2019s Legendary Heritage and the Majesty of the Open West Set in the state of Wyoming, near the Idaho border, the Jackson Hole valley commands a spectacular presence. Named after the early 19th-century trapper David Edward Jackson, this enclave preserves\u2026","_links":{"self":[{"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/pages\/2697","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/comments?post=2697"}],"version-history":[{"count":5,"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/pages\/2697\/revisions"}],"predecessor-version":[{"id":2781,"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/pages\/2697\/revisions\/2781"}],"up":[{"embeddable":true,"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/pages\/1883"}],"wp:attachment":[{"href":"https:\/\/www.norki.com\/studio-chalet\/wp-json\/wp\/v2\/media?parent=2697"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}