/*
 * LeatherSofa Motion System — Level 1
 * The selector is scoped to .bps-motion-on, so OFF never changes the layout.
 */
html.bps-motion-js body.bps-motion-on .bh-header .bh-brand,
html.bps-motion-js body.bps-motion-on .bh-header .bh-nav,
html.bps-motion-js body.bps-motion-on .bh-header .bh-quote,
html.bps-motion-js body.bps-motion-on .bh-hero-inner > *,
html.bps-motion-js body.bps-motion-on .bc-hero-copy > *,
html.bps-motion-js body.bps-motion-on .oo-hero-copy > *,
html.bps-motion-js body.bps-motion-on .pp-hero-copy > *,
html.bps-motion-js body.bps-motion-on .au-hero-inner > div > *,
html.bps-motion-js body.bps-motion-on .cp-hero-inner > div > *,
html.bps-motion-js body.bps-motion-on .ct-copy > *,
html.bps-motion-js body.bps-motion-on .bps-intro > *,
html.bps-motion-js body.bps-motion-on .bps-gallery {
  opacity:0;
  transform:translate3d(0,30px,0);
  transition:opacity .72s cubic-bezier(.22,.61,.36,1),transform .72s cubic-bezier(.22,.61,.36,1);
}

html.bps-motion-js body.bps-motion-on .bh-header .bh-brand { transform:translate3d(-20px,0,0); }
html.bps-motion-js body.bps-motion-on .bh-header .bh-nav { transform:translate3d(0,-8px,0); }
html.bps-motion-js body.bps-motion-on .bh-header .bh-quote { transform:translate3d(10px,0,0); }
html.bps-motion-js body.bps-motion-on .bps-gallery { transform:translate3d(-25px,0,0) scale(.985); }

body.bps-motion-on .bps-motion-visible { opacity:1 !important; transform:translate3d(0,0,0) scale(1) !important; }

body.bps-motion-on .bh-header {
  position:sticky;
  top:0;
  transition:background-color .35s ease,box-shadow .35s ease,backdrop-filter .35s ease;
}
body.bps-motion-on .bh-header.bps-is-scrolled {
  background:rgba(255,252,247,.88);
  box-shadow:0 7px 22px rgba(50,29,17,.08);
  -webkit-backdrop-filter:blur(13px);
  backdrop-filter:blur(13px);
}
html.bps-motion-js body.bps-motion-on .bh-nav > a { opacity:0; transform:translate3d(0,-8px,0); transition:opacity .42s ease,transform .42s ease; }
html.bps-motion-js body.bps-motion-on .bh-nav > a.bps-motion-nav-visible { opacity:1; transform:none; }

body.bps-motion-on .bps-motion-hero-ready { position:relative; overflow:hidden; background-image:none !important; }
body.bps-motion-on .bps-motion-hero-ready > :not(.bps-motion-hero-backdrop) { position:relative; z-index:1; }
body.bps-motion-on .bps-motion-hero-backdrop { position:absolute; z-index:0; inset:-3%; display:block; transform:scale(1.08); transform-origin:center; transition:transform 1.5s cubic-bezier(.22,.61,.36,1); }
body.bps-motion-on .bps-motion-hero-ready.bps-motion-hero-visible .bps-motion-hero-backdrop { transform:scale(1); }

html.bps-motion-js body.bps-motion-on .bps-motion-reveal,
html.bps-motion-js body.bps-motion-on .bps-motion-from-left,
html.bps-motion-js body.bps-motion-on .bps-motion-from-right,
html.bps-motion-js body.bps-motion-on .bps-motion-process-line,
html.bps-motion-js body.bps-motion-on .bh-footer,
html.bps-motion-js body.bps-motion-on .ct-footer {
  opacity:0;
  transform:translate3d(0,34px,0);
  transition:opacity .72s cubic-bezier(.22,.61,.36,1),transform .72s cubic-bezier(.22,.61,.36,1);
}
html.bps-motion-js body.bps-motion-on .bps-motion-from-left { transform:translate3d(-32px,0,0); }
html.bps-motion-js body.bps-motion-on .bps-motion-from-right { transform:translate3d(42px,0,0); }

body.bps-motion-on .bh-card,
body.bps-motion-on .bc-category-card,
body.bps-motion-on .bc-product-card,
body.bps-motion-on .pp-card { transition:transform .35s ease,box-shadow .35s ease; }
body.bps-motion-on .bh-card:hover,
body.bps-motion-on .bc-category-card:hover,
body.bps-motion-on .bc-product-card:hover,
body.bps-motion-on .pp-card:hover { transform:translateY(-8px); box-shadow:0 15px 28px rgba(56,32,17,.12); }
body.bps-motion-on .bc-category-card a:not(.bc-card-image) i,
body.bps-motion-on .bc-product-card a:not(.bc-card-image) i,
body.bps-motion-on .pp-link span { display:inline-block; transition:transform .25s ease; }
body.bps-motion-on .bc-category-card:hover a:not(.bc-card-image) i,
body.bps-motion-on .bc-product-card:hover a:not(.bc-card-image) i,
body.bps-motion-on .pp-card:hover .pp-link span { transform:translateX(8px); }

html.bps-motion-js body.bps-motion-on .bps-motion-mask-grid .bh-app-card { clip-path:inset(0 100% 0 0); transition:clip-path .8s cubic-bezier(.22,.61,.36,1); }
html.bps-motion-js body.bps-motion-on .bps-motion-mask-grid.bps-motion-visible .bh-app-card { clip-path:inset(0 0 0 0); }
html.bps-motion-js body.bps-motion-on .bps-motion-mask-grid.bps-motion-visible .bh-app-card:nth-child(2) { transition-delay:.09s; }
html.bps-motion-js body.bps-motion-on .bps-motion-mask-grid.bps-motion-visible .bh-app-card:nth-child(3) { transition-delay:.18s; }
html.bps-motion-js body.bps-motion-on .bps-motion-mask-grid.bps-motion-visible .bh-app-card:nth-child(4) { transition-delay:.27s; }

body.bps-motion-on .bh-process-grid,
body.bps-motion-on .oo-process-grid,
body.bps-motion-on .cp-process { position:relative; }
body.bps-motion-on .bh-process-grid::before,
body.bps-motion-on .oo-process-grid::before,
body.bps-motion-on .cp-process::before { content:''; position:absolute; left:0; top:17px; width:0; height:1px; background:#a8642b; transition:width 1.05s cubic-bezier(.22,.61,.36,1); z-index:0; }
body.bps-motion-on .oo-process-grid::before { top:14px; }
body.bps-motion-on .cp-process::before { top:0; }
body.bps-motion-on .bps-motion-process-line.bps-motion-visible::before { width:100%; }
body.bps-motion-on .bh-process-grid article,
body.bps-motion-on .oo-process-grid article,
body.bps-motion-on .cp-process article { position:relative; z-index:1; }

body.bps-motion-on .ct-contact input,
body.bps-motion-on .ct-contact textarea,
body.bps-motion-on .ct-contact select { transition:border-color .2s ease,box-shadow .2s ease; }
body.bps-motion-on .ct-contact input:hover,
body.bps-motion-on .ct-contact textarea:hover,
body.bps-motion-on .ct-contact select:hover,
body.bps-motion-on .ct-contact input:focus,
body.bps-motion-on .ct-contact textarea:focus,
body.bps-motion-on .ct-contact select:focus { border-color:#985924; outline:0; box-shadow:0 0 0 3px rgba(152,89,36,.10); }

@media (max-width:680px) {
  body.bps-motion-on .bh-header { position:relative; }
  body.bps-motion-on .bh-process-grid::before,
  body.bps-motion-on .oo-process-grid::before,
  body.bps-motion-on .cp-process::before { display:none; }
}

/*
 * Level 2 — Premium Interactive.
 * This section is deliberately scoped to the Level 2 body class. Level 1 and
 * OFF therefore preserve their existing visual and interaction behaviour.
 */
.bps-l2-card-info { display:none; }
@media (min-width:681px) and (prefers-reduced-motion:no-preference) {
  body.bps-motion-level-2 .bps-l2-hero { isolation:isolate; }
  body.bps-motion-level-2 .bps-l2-hero .bps-motion-hero-backdrop { z-index:0; }
  body.bps-motion-level-2 .bps-l2-hero.bps-motion-hero-visible .bps-motion-hero-backdrop { animation:bps-l2-hero-drift 13s ease-in-out 1.55s infinite alternate; }
  body.bps-motion-level-2 .bps-l2-hero-mask { position:absolute; z-index:2; inset:0; display:block; background:#f4e7d7; transform:translateX(0); transition:transform 1.05s cubic-bezier(.76,0,.24,1) .15s; pointer-events:none; }
  body.bps-motion-level-2 .bps-l2-hero-revealed .bps-l2-hero-mask { transform:translateX(101%); }
  body.bps-motion-level-2 .bps-l2-hero > :not(.bps-motion-hero-backdrop):not(.bps-l2-hero-mask) { z-index:3; }
  body.bps-motion-level-2 .bps-l2-title-line { display:block; overflow:hidden; }
  body.bps-motion-level-2 .bps-l2-title-line > span { display:block; opacity:0; transform:translate3d(0,105%,0); transition:opacity .72s cubic-bezier(.22,.61,.36,1),transform .72s cubic-bezier(.22,.61,.36,1); }
  body.bps-motion-level-2 .bps-l2-title-revealed .bps-l2-title-line > span { opacity:1; transform:none; }
  body.bps-motion-level-2 .bps-l2-title-revealed .bps-l2-title-line:nth-child(2) > span { transition-delay:.13s; }
  body.bps-motion-level-2 .bps-l2-title-revealed .bps-l2-title-line:nth-child(3) > span { transition-delay:.26s; }

  body.bps-motion-level-2 .bps-l2-product-card .bc-card-image { isolation:isolate; }
  body.bps-motion-level-2 .bps-l2-product-card .bc-card-image::after { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(23,13,7,.02),rgba(23,13,7,.78)); opacity:0; transition:opacity .4s ease; }
  body.bps-motion-level-2 .bps-l2-product-card .bps-l2-card-info { position:absolute; z-index:2; top:auto; right:20px; bottom:19px; left:20px; width:auto; height:auto; border-radius:0; background:transparent; display:block; color:#fff; opacity:0; transform:translate3d(0,16px,0); transition:opacity .35s ease,transform .45s cubic-bezier(.22,.61,.36,1); }
  body.bps-motion-level-2 .bps-l2-product-card .bps-l2-card-info b,body.bps-motion-level-2 .bps-l2-product-card .bps-l2-card-info small { display:block; }
  body.bps-motion-level-2 .bps-l2-product-card .bps-l2-card-info b { font-family:Georgia,'Times New Roman',serif; font-size:24px; line-height:1.12; font-weight:500; }
  body.bps-motion-level-2 .bps-l2-product-card .bps-l2-card-info small { margin-top:6px; font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
  body.bps-motion-level-2 .bps-l2-product-card:hover .bc-card-image::after,body.bps-motion-level-2 .bps-l2-product-card:focus-within .bc-card-image::after { opacity:1; }
  body.bps-motion-level-2 .bps-l2-product-card:hover .bps-l2-card-info,body.bps-motion-level-2 .bps-l2-product-card:focus-within .bps-l2-card-info { opacity:1; transform:none; }
  body.bps-motion-level-2 .bps-l2-product-card .bc-card-arrow { z-index:3; }

  body.bps-motion-level-2 .bh-card .bh-image-link { isolation:isolate; }
  body.bps-motion-level-2 .bh-card .bh-image-link::after { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,rgba(31,16,7,.03),rgba(31,16,7,.8)); opacity:0; transition:opacity .4s ease; }
  body.bps-motion-level-2 .bh-card .bps-l2-home-card-info { position:absolute; z-index:2; top:auto; right:16px; bottom:15px; left:16px; display:block; width:auto; height:auto; border-radius:0; background:transparent; color:#fff; opacity:0; transform:translate3d(0,17px,0); transition:opacity .35s ease,transform .45s cubic-bezier(.22,.61,.36,1); }
  body.bps-motion-level-2 .bh-card .bps-l2-home-card-info b,body.bps-motion-level-2 .bh-card .bps-l2-home-card-info small { display:block; }
  body.bps-motion-level-2 .bh-card .bps-l2-home-card-info b { font-family:Georgia,'Times New Roman',serif; font-size:23px; line-height:1.1; font-weight:500; }
  body.bps-motion-level-2 .bh-card .bps-l2-home-card-info small { margin-top:5px; font-size:9px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
  body.bps-motion-level-2 .bh-card:hover .bh-image-link::after,body.bps-motion-level-2 .bh-card:focus-within .bh-image-link::after { opacity:1; }
  body.bps-motion-level-2 .bh-card:hover .bps-l2-home-card-info,body.bps-motion-level-2 .bh-card:focus-within .bps-l2-home-card-info { opacity:1; transform:none; }
  body.bps-motion-level-2 .bh-card .bh-card-arrow { z-index:3; }

  body.bps-motion-level-2 .bps-l2-gallery .bps-main-image { position:relative; }
  body.bps-motion-level-2 .bps-l2-gallery .bps-main-image img { transition:opacity .16s ease,transform .6s cubic-bezier(.22,.61,.36,1); }
  body.bps-motion-level-2 .bps-l2-gallery .bps-main-image img.bps-l2-image-changing { opacity:0; transform:scale(1.025); }
  body.bps-motion-level-2 .bps-l2-gallery .bps-thumbnails button { transition:border-color .25s ease,transform .25s ease; }
  body.bps-motion-level-2 .bps-l2-gallery .bps-thumbnails button:hover { transform:translateY(-3px); }

  body.bps-motion-level-2 .pp-l2-story { position:relative; height:230vh; background:#f2ebe2; border-top:1px solid #e2d6ca; border-bottom:1px solid #e2d6ca; }
  body.bps-motion-level-2 .pp-l2-story-sticky { position:sticky; top:94px; min-height:calc(100vh - 94px); display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(48px,7vw,110px); align-items:center; padding:52px 0; }
  body.bps-motion-level-2 .pp-l2-story-copy .bh-eyebrow { margin-bottom:14px; }
  body.bps-motion-level-2 .pp-l2-story-copy h2 { margin:0; font:500 clamp(43px,4vw,64px)/.98 Georgia,'Times New Roman',serif; letter-spacing:-.055em; color:#281b17; }
  body.bps-motion-level-2 .pp-l2-story-copy>p:not(.bh-eyebrow) { max-width:360px; margin:23px 0; color:#675a50; line-height:1.65; }
  body.bps-motion-level-2 .pp-l2-story-count { color:#9b5c26; font:700 12px Inter,Arial,sans-serif; letter-spacing:.1em; }
  body.bps-motion-level-2 .pp-l2-story-count b { font:500 30px Georgia,'Times New Roman',serif; }
  body.bps-motion-level-2 .pp-l2-story-stage figure { position:relative; margin:0; overflow:hidden; aspect-ratio:1.2/1; background:#ded1c4; }
  body.bps-motion-level-2 .pp-l2-story-stage img { width:100%; height:100%; display:block; object-fit:cover; transition:opacity .28s ease,transform .75s cubic-bezier(.22,.61,.36,1); }
  body.bps-motion-level-2 .pp-l2-story-stage img.bps-l2-stage-changing { opacity:0; transform:scale(1.035); }
  body.bps-motion-level-2 .pp-l2-story-stage figcaption { position:absolute; right:0; bottom:0; left:0; padding:46px 32px 24px; color:#fff; background:linear-gradient(transparent,rgba(23,13,8,.75)); }
  body.bps-motion-level-2 .pp-l2-story-stage figcaption strong,.pp-l2-story-stage figcaption span { display:block; }
  body.bps-motion-level-2 .pp-l2-story-stage figcaption strong { font:500 28px Georgia,'Times New Roman',serif; }
  body.bps-motion-level-2 .pp-l2-story-stage figcaption span { margin-top:7px; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
  body.bps-motion-level-2 .pp-l2-story-list { display:flex; gap:0; margin-top:15px; border-top:1px solid #d8c9ba; }
  body.bps-motion-level-2 .pp-l2-story-list button { flex:1; padding:14px 8px; border:0; border-right:1px solid #d8c9ba; background:transparent; color:#78695e; text-align:left; cursor:pointer; transition:color .25s ease,background .25s ease; }
  body.bps-motion-level-2 .pp-l2-story-list button:last-child { border-right:0; }
  body.bps-motion-level-2 .pp-l2-story-list button span,.pp-l2-story-list button b { display:block; }
  body.bps-motion-level-2 .pp-l2-story-list button span { margin-bottom:7px; color:#a26a37; font-size:9px; font-weight:800; }
  body.bps-motion-level-2 .pp-l2-story-list button b { font:600 12px/1.3 Georgia,'Times New Roman',serif; }
  body.bps-motion-level-2 .pp-l2-story-list button.is-active { background:#fffaf4; color:#281b17; }

  body.bps-motion-level-2 .cp-l2-tour { position:relative; height:230vh; background:#f7f2ec; border-top:1px solid #e5dcd2; border-bottom:1px solid #e5dcd2; }
  body.bps-motion-level-2 .cp-l2-tour-sticky { position:sticky; top:94px; min-height:calc(100vh - 94px); display:grid; grid-template-columns:.75fr 1.25fr; align-items:center; gap:clamp(48px,8vw,125px); padding:50px 0; }
  body.bps-motion-level-2 .cp-l2-tour-copy h2 { max-width:390px; margin:0; font:500 clamp(44px,4vw,62px)/1 Georgia,'Times New Roman',serif; letter-spacing:-.05em; color:#281b17; }
  body.bps-motion-level-2 .cp-l2-tour-copy>p:not(.cp-eyebrow) { max-width:360px; margin:21px 0; color:#675a50; line-height:1.65; }
  body.bps-motion-level-2 .cp-l2-tour-copy>span { display:block; margin:0 0 21px; color:#9a5d29; font:800 11px Inter,Arial,sans-serif; letter-spacing:.1em; }
  body.bps-motion-level-2 .cp-l2-tour-list { display:grid; border-top:1px solid #d8cabd; }
  body.bps-motion-level-2 .cp-l2-tour-list button { display:flex; align-items:center; gap:13px; padding:11px 0; border:0; border-bottom:1px solid #d8cabd; background:transparent; color:#78695e; text-align:left; font:600 12px Inter,Arial,sans-serif; cursor:pointer; transition:color .25s ease,padding-left .25s ease; }
  body.bps-motion-level-2 .cp-l2-tour-list button span { display:grid; width:24px; height:24px; place-items:center; border-radius:50%; color:#9a5d29; border:1px solid #bf9979; font-size:9px; font-weight:800; }
  body.bps-motion-level-2 .cp-l2-tour-list button.is-active { padding-left:10px; color:#281b17; }
  body.bps-motion-level-2 .cp-l2-tour-list button.is-active span { background:#985924; border-color:#985924; color:#fff; }
  body.bps-motion-level-2 .cp-l2-tour figure { margin:0; overflow:hidden; aspect-ratio:1.16/1; background:#d8cabb; }
  body.bps-motion-level-2 .cp-l2-tour figure img { width:100%; height:100%; display:block; object-fit:cover; transition:opacity .28s ease,transform .75s cubic-bezier(.22,.61,.36,1); }
  body.bps-motion-level-2 .cp-l2-tour figure img.bps-l2-stage-changing { opacity:0; transform:scale(1.035); }

  body.bps-motion-level-2 .oo-process.bps-l2-oem-scene { height:185vh; overflow:hidden; }
  body.bps-motion-level-2 .oo-process.bps-l2-oem-scene>.oo-wrap { position:sticky; top:94px; overflow:hidden; padding:56px 0; }
  body.bps-motion-level-2 .oo-process.bps-l2-oem-scene .oo-process-grid { width:200%; grid-template-columns:repeat(6,minmax(0,1fr)); transition:transform .1s linear; will-change:transform; }
  body.bps-motion-level-2 .oo-process.bps-l2-oem-scene .oo-process-grid article { opacity:.38; transform:scale(.96); transition:opacity .3s ease,transform .3s ease; }
  body.bps-motion-level-2 .oo-process.bps-l2-oem-scene .oo-process-grid article.is-active { opacity:1; transform:scale(1); }
}

@media (max-width:980px) { .pp-l2-story,.cp-l2-tour { display:none; } }

@keyframes bps-l2-hero-drift { from { transform:scale(1); } to { transform:scale(1.035) translate3d(-.7%,-.4%,0); } }

@media (prefers-reduced-motion:reduce) {
  html.bps-motion-js body.bps-motion-on *,html.bps-motion-js body.bps-motion-on *::before,html.bps-motion-js body.bps-motion-on *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
  html.bps-motion-js body.bps-motion-on .bh-header .bh-brand,html.bps-motion-js body.bps-motion-on .bh-header .bh-nav,html.bps-motion-js body.bps-motion-on .bh-header .bh-quote,html.bps-motion-js body.bps-motion-on .bh-hero-inner > *,html.bps-motion-js body.bps-motion-on .bc-hero-copy > *,html.bps-motion-js body.bps-motion-on .oo-hero-copy > *,html.bps-motion-js body.bps-motion-on .pp-hero-copy > *,html.bps-motion-js body.bps-motion-on .au-hero-inner > div > *,html.bps-motion-js body.bps-motion-on .cp-hero-inner > div > *,html.bps-motion-js body.bps-motion-on .ct-copy > *,html.bps-motion-js body.bps-motion-on .bps-intro > *,html.bps-motion-js body.bps-motion-on .bps-gallery,html.bps-motion-js body.bps-motion-on .bps-motion-reveal,html.bps-motion-js body.bps-motion-on .bps-motion-from-left,html.bps-motion-js body.bps-motion-on .bps-motion-from-right,html.bps-motion-js body.bps-motion-on .bps-motion-process-line,html.bps-motion-js body.bps-motion-on .bh-footer,html.bps-motion-js body.bps-motion-on .ct-footer { opacity:1 !important; transform:none !important; }
}
