/* ==========================================================================
   CK LIVING — PDP STYLES
   All rules are prefixed .ck- to avoid collisions with Vessel defaults.
   Drop this file at /assets/ck-pdp.css in your theme.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400&family=Manrope:wght@300;400;500;600;700&display=swap');

:root {
  --ck-ink: #1a1612;
  --ck-ink-soft: #3a342e;
  --ck-ink-lighter: #6b6256;
  --ck-cream: #f5f0e8;
  --ck-cream-deep: #ede5d6;
  --ck-bone: #faf6ef;
  --ck-taupe: #b8a98f;
  --ck-taupe-deep: #8a7a60;
  --ck-clay: #c87d5a;
  --ck-sage: #6b7a5a;
  --ck-line: #d9cfbc;
  --ck-line-soft: #e8dfca;
  --ck-gold: #b8934a;
  --ck-success: #5a8a4f;
  --ck-alert: #c8632b;
  --ck-serif: "Fraunces", "Cormorant Garamond", Georgia, serif;
  --ck-sans: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Rating row -------------------------------------------------------------- */
.ck-rating {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 16px;
  font-family: var(--ck-sans);
  font-size: 13px;
  color: var(--ck-ink-soft);
}
.ck-rating__stars { color: var(--ck-gold); letter-spacing: 2px; font-size: 15px; }
.ck-rating__link {
  color: var(--ck-ink-soft);
  border-bottom: 1px solid var(--ck-line);
  padding-bottom: 1px;
  text-decoration: none;
  cursor: pointer;
}
.ck-rating__link:hover { color: var(--ck-ink); border-color: var(--ck-ink); }
.ck-rating__dot {
  width: 3px; height: 3px;
  border-radius: 50%;
  background: var(--ck-taupe);
  display: inline-block;
}

/* Price + finance -------------------------------------------------------- */
.ck-price {
  padding: 16px 0;
  border-top: 1px solid var(--ck-line);
  border-bottom: 1px solid var(--ck-line);
  margin: 0 0 16px;
  font-family: var(--ck-sans);
}
.ck-price__row {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.ck-price__now {
  font-family: var(--ck-serif);
  font-size: 32px;
  font-weight: 400;
  letter-spacing: -0.01em;
  color: var(--ck-ink);
  line-height: 1;
}
.ck-price__was {
  font-size: 18px;
  color: var(--ck-ink-lighter);
  text-decoration: line-through;
}
.ck-price__save {
  background: var(--ck-clay);
  color: var(--ck-cream);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
  padding: 5px 9px;
  align-self: center;
}
.ck-price__finance {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--ck-ink-soft);
  flex-wrap: wrap;
}
.ck-price__finance strong {
  color: var(--ck-ink);
  font-weight: 700;
  font-family: var(--ck-serif);
  font-size: 15px;
}
.ck-paylogos { display: inline-flex; gap: 6px; align-items: center; }
.ck-paylogo {
  font-size: 10px;
  font-weight: 700;
  padding: 3px 6px;
  letter-spacing: 0.02em;
  display: inline-block;
  white-space: nowrap;
}
.ck-paylogo--klarna { color: #000; background: #ffa8cd; }
.ck-paylogo--paypal { color: #003087; background: #fff; border: 1px solid var(--ck-line); }
.ck-paylogo--shop  { color: #5a31f4; background: #fff; border: 1px solid var(--ck-line); }

/* Swatch CTA strip ------------------------------------------------------- */
.ck-swatch-cta {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--ck-cream);
  padding: 10px 14px;
  margin: 0 0 14px;
  font-family: var(--ck-sans);
  font-size: 13px;
  color: var(--ck-ink-soft);
}
.ck-swatch-cta svg { width: 16px; height: 16px; flex-shrink: 0; stroke: var(--ck-ink); }
.ck-swatch-cta a {
  margin-left: auto;
  border-bottom: 1px solid var(--ck-ink);
  padding-bottom: 1px;
  font-weight: 600;
  color: var(--ck-ink);
  letter-spacing: 0.02em;
  text-decoration: none;
  white-space: nowrap;
}

/* Delivery card ---------------------------------------------------------- */
.ck-delivery {
  background: var(--ck-cream);
  padding: 13px 16px;
  margin: 0 0 14px;
  border-left: 3px solid var(--ck-success);
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--ck-sans);
}
.ck-delivery svg {
  width: 24px; height: 24px;
  stroke: var(--ck-success);
  flex-shrink: 0;
}
.ck-delivery__head {
  color: var(--ck-ink);
  font-weight: 600;
  font-family: var(--ck-serif);
  font-size: 16px;
  display: block;
  margin-bottom: 2px;
}
.ck-delivery__sub {
  color: var(--ck-ink-soft);
  font-size: 13px;
}
.ck-delivery__countdown {
  font-style: normal;
  color: var(--ck-alert);
  font-weight: 600;
}

/* Pay on delivery row ---------------------------------------------------- */
.ck-pod {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 0 0 16px;
  font-family: var(--ck-sans);
}
.ck-pod__btn {
  padding: 12px;
  border: 1px solid var(--ck-ink);
  background: transparent;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ck-ink);
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  font-family: var(--ck-sans);
}
.ck-pod__btn:hover { background: var(--ck-ink); color: var(--ck-cream); }
.ck-pod__btn svg { width: 14px; height: 14px; stroke: currentColor; }

/* Trust row -------------------------------------------------------------- */
.ck-trust {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin: 0 0 16px;
  padding: 14px 0;
  border-top: 1px solid var(--ck-line);
  border-bottom: 1px solid var(--ck-line);
  font-family: var(--ck-sans);
}
.ck-trust__cell {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
}
.ck-trust__cell svg {
  width: 20px; height: 20px;
  stroke: var(--ck-ink);
  margin-bottom: 4px;
}
.ck-trust__title {
  font-family: var(--ck-serif);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.15;
  color: var(--ck-ink);
}
.ck-trust__sub {
  font-size: 10px;
  color: var(--ck-ink-lighter);
  letter-spacing: 0.03em;
}
@media (max-width: 540px) {
  .ck-trust { grid-template-columns: 1fr 1fr; gap: 16px; }
}

/* Comfort meters (compact, no image) ------------------------------------- */
.ck-comfort {
  background: var(--ck-cream);
  padding: 48px 24px;
  margin: 40px 0;
  font-family: var(--ck-sans);
}
.ck-comfort__inner {
  max-width: 980px;
  margin: 0 auto;
}
.ck-comfort__head { margin-bottom: 24px; }
.ck-comfort__eyebrow {
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ck-taupe-deep);
  font-weight: 500;
  margin-bottom: 10px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.ck-comfort__eyebrow::before {
  content: "";
  width: 24px; height: 1px;
  background: var(--ck-taupe-deep);
}
.ck-comfort h2 {
  font-family: var(--ck-serif);
  font-weight: 300;
  font-size: clamp(24px, 3vw, 32px);
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0 0 8px;
  color: var(--ck-ink);
}
.ck-comfort h2 em { font-style: italic; color: var(--ck-clay); font-weight: 400; }
.ck-comfort__desc {
  color: var(--ck-ink-soft);
  font-size: 14px;
  max-width: 640px;
  margin: 0;
}
.ck-meters--row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px 28px;
}
.ck-meter {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ck-meter__lbl {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ck-ink-soft);
}
.ck-meter__bar {
  height: 4px;
  background: var(--ck-line);
  position: relative;
  overflow: hidden;
}
.ck-meter__bar::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  height: 100%;
  background: var(--ck-ink);
  width: var(--w, 0);
  transition: width 1.2s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.ck-meter.ck-in-view .ck-meter__bar::before { width: var(--w, 0); }
.ck-meter__val {
  font-family: var(--ck-serif);
  font-size: 14px;
  font-weight: 500;
  color: var(--ck-ink);
}
@media (max-width: 900px) {
  .ck-comfort { padding: 36px 20px; }
  .ck-meters--row { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}
@media (max-width: 480px) {
  .ck-meters--row { grid-template-columns: 1fr 1fr; gap: 16px; }
  .ck-meter { gap: 6px; }
}

/* Dimensions ------------------------------------------------------------- */
.ck-dims {
  background: var(--ck-ink);
  color: var(--ck-cream);
  padding: 80px 24px;
  margin: 60px 0;
  font-family: var(--ck-sans);
}
.ck-dims__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.ck-dims__eyebrow {
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ck-taupe);
  font-weight: 500;
  margin-bottom: 14px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.ck-dims__eyebrow::before {
  content: "";
  width: 24px; height: 1px;
  background: var(--ck-taupe);
}
.ck-dims h2 {
  font-family: var(--ck-serif);
  font-weight: 300;
  font-size: clamp(30px, 4vw, 46px);
  letter-spacing: -0.02em;
  line-height: 1;
  margin: 0 0 18px;
  color: var(--ck-cream);
}
.ck-dims h2 em { font-style: italic; color: var(--ck-taupe); font-weight: 400; }
.ck-dims__desc {
  color: var(--ck-taupe);
  font-size: 15px;
  margin: 0 0 30px;
  max-width: 440px;
}
.ck-dims__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 28px;
}
.ck-dims__list > div {
  border-top: 1px solid var(--ck-ink-soft);
  padding-top: 14px;
}
.ck-dims__k {
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ck-taupe);
  font-weight: 600;
  margin-bottom: 4px;
}
.ck-dims__v {
  font-family: var(--ck-serif);
  font-size: 20px;
  font-weight: 500;
  color: var(--ck-cream);
}
.ck-dims__svg { display: flex; align-items: center; justify-content: center; }
.ck-dims__svg svg { width: 100%; max-width: 420px; height: auto; }
@media (max-width: 900px) {
  .ck-dims { padding: 60px 20px; }
  .ck-dims__inner { grid-template-columns: 1fr; gap: 40px; }
}

/* Features strip --------------------------------------------------------- */
.ck-features {
  max-width: 1500px;
  margin: 44px auto;
  padding: 32px 24px;
  font-family: var(--ck-sans);
}
.ck-features__head { margin-bottom: 32px; max-width: 720px; }
.ck-features__eyebrow {
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ck-taupe-deep);
  font-weight: 500;
  margin-bottom: 12px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.ck-features__eyebrow::before {
  content: "";
  width: 24px; height: 1px;
  background: var(--ck-taupe-deep);
}
.ck-features h2 {
  font-family: var(--ck-serif);
  font-weight: 300;
  font-size: clamp(30px, 4vw, 46px);
  letter-spacing: -0.02em;
  line-height: 1;
  margin: 0;
  color: var(--ck-ink);
}
.ck-features h2 em { font-style: italic; font-weight: 400; }
.ck-features__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 900px) { .ck-features__grid { grid-template-columns: 1fr; } }
.ck-feature {
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
  background: var(--ck-ink);
}
.ck-feature img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.7s cubic-bezier(0.2, 0.7, 0.3, 1);
  display: block;
}
.ck-feature:hover img { transform: scale(1.04); }
.ck-feature::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(26, 22, 18, 0.75) 100%);
}
.ck-feature__text {
  position: absolute;
  left: 24px; right: 24px;
  bottom: 24px;
  color: var(--ck-cream);
  z-index: 2;
}
.ck-feature__num {
  font-family: var(--ck-serif);
  font-size: 13px;
  letter-spacing: 0.15em;
  color: var(--ck-taupe);
  margin-bottom: 8px;
  font-style: italic;
}
.ck-feature__text h3 {
  font-family: var(--ck-serif);
  font-weight: 400;
  font-size: 22px;
  line-height: 1.15;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
  color: var(--ck-cream);
}
.ck-feature__text p {
  font-size: 13px;
  color: rgba(245, 240, 232, 0.85);
  line-height: 1.5;
  margin: 0;
}

/* Social proof toast ----------------------------------------------------- */
.ck-toast {
  position: fixed;
  bottom: 24px;
  left: 24px;
  background: var(--ck-bone);
  border: 1px solid var(--ck-line);
  padding: 14px 20px 14px 16px;
  box-shadow: 0 12px 32px -12px rgba(26, 22, 18, 0.3);
  display: flex;
  align-items: center;
  gap: 12px;
  z-index: 44;
  max-width: 320px;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s cubic-bezier(0.2, 0.7, 0.3, 1);
  pointer-events: none;
  font-family: var(--ck-sans);
}
.ck-toast.ck-show { opacity: 1; transform: none; pointer-events: auto; }
.ck-toast__avatar {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: var(--ck-clay);
  color: var(--ck-cream);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--ck-serif);
  font-weight: 500;
  font-size: 14px;
  flex-shrink: 0;
}
.ck-toast__txt {
  font-size: 12px;
  color: var(--ck-ink-soft);
  line-height: 1.4;
}
.ck-toast__txt strong {
  color: var(--ck-ink);
  font-weight: 600;
  display: block;
  font-family: var(--ck-serif);
  font-size: 13px;
}
.ck-toast__close {
  position: absolute;
  top: 6px; right: 8px;
  cursor: pointer;
  background: transparent;
  border: none;
  color: var(--ck-taupe);
  font-size: 14px;
  font-family: inherit;
}
@media (max-width: 1000px) {
  .ck-toast { bottom: 92px; left: 16px; right: 16px; max-width: none; }
}

/* Floating hero badges (anchor into gallery/media) ----------------------- */
.ck-hero-badges {
  position: absolute;
  top: 16px; left: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  z-index: 5;
  pointer-events: none;
  font-family: var(--ck-sans);
}
.ck-badge {
  font-size: 10px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 600;
  padding: 6px 11px;
  color: var(--ck-cream);
  background: var(--ck-ink);
  display: inline-block;
}
.ck-badge--stock {
  background: var(--ck-success);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.ck-badge--stock::before {
  content: "";
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--ck-cream);
  animation: ck-pulse 2s infinite;
}
@keyframes ck-pulse {
  0% { box-shadow: 0 0 0 0 rgba(255,255,255,0.6); }
  70% { box-shadow: 0 0 0 6px rgba(255,255,255,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); }
}
.ck-badge--bestseller { background: var(--ck-clay); }
.ck-badge--sale { background: var(--ck-alert); }

/* ==========================================================================
   CK LIVING — 2026 SOFA PDP CONVERSION REBUILD
   Mobile-first decision zone, finance choices, fit summary and reassurance.
   ========================================================================== */
.template-product .product-information { --ck-pdp-border:#dedbd5; --ck-pdp-soft:#f7f7f5; }
.template-product .product-information .product-details { max-width: 620px; }
.template-product .product-information h1 { font-size: clamp(24px, 2.35vw, 34px) !important; line-height: 1.08 !important; letter-spacing: -.025em !important; }
.template-product .product-information .product-form-buttons { gap: 8px !important; }
.template-product .product-information .add-to-cart-button.button,
.template-product .product-information .add-to-cart-button.button-secondary {
  min-height: 58px; border-radius: 2px !important; background:#171717 !important; color:#fff !important; border-color:#171717 !important;
  font-weight:700 !important; letter-spacing:.015em; font-size:15px !important; box-shadow:none !important;
}
.template-product .product-information .add-to-cart-button:hover { background:#30302d !important; }
.template-product .product-information shopify-accelerated-checkout { margin-top:2px; }

.ck-tp-proof { margin:0 0 3px; font-family:var(--ck-sans); }
.ck-tp-proof__link { display:flex; align-items:center; gap:6px; flex-wrap:wrap; color:#272727; text-decoration:none; font-size:12px; line-height:1.2; }
.ck-tp-proof__stars { color:#00b67a; letter-spacing:1px; font-size:15px; }
.ck-tp-proof__link strong { font-size:13px; }
.ck-tp-proof__dot { color:#aaa; }
.ck-tp-proof__brand { font-weight:700; color:#171717; margin-left:2px; }

.ck-payment-options { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0; font-family:var(--ck-sans); }
.ck-payment-option { min-height:67px; padding:10px 11px; border:1px solid var(--ck-pdp-border); background:#fff; color:#202020; text-decoration:none; display:grid; grid-template-columns:30px 1fr auto; gap:9px; align-items:center; border-radius:8px; transition:border-color .18s, background .18s; }
.ck-payment-option:hover { border-color:#777; background:#fbfbfa; }
.ck-payment-option__icon { width:30px; height:30px; border-radius:50%; display:grid; place-items:center; background:#171717; color:#fff; font-size:13px; font-weight:700; }
.ck-payment-option strong { display:block; font-size:12px; line-height:1.25; margin-bottom:2px; }
.ck-payment-option small { display:block; color:#696969; font-size:10.5px; line-height:1.25; }
.ck-payment-option__arrow { color:#999; font-size:14px; }

.ck-fit-summary { border:1px solid var(--ck-pdp-border); background:#fff; border-radius:8px; overflow:hidden; font-family:var(--ck-sans); }
.ck-fit-summary__top { padding:12px 13px 10px; display:flex; align-items:flex-end; justify-content:space-between; gap:10px; }
.ck-fit-summary__eyebrow { display:block; color:#6c6c68; font-size:10px; text-transform:uppercase; letter-spacing:.1em; margin-bottom:4px; font-weight:700; }
.ck-fit-summary__dims { display:flex; flex-wrap:wrap; gap:5px 13px; font-size:13px; }
.ck-fit-summary__dims b { font-size:10px; color:#777; margin-right:2px; }
.ck-fit-summary__link { color:#1d1d1b; font-size:11px; font-weight:650; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.ck-fit-summary__access { border-top:1px solid var(--ck-pdp-border); padding:9px 12px; background:var(--ck-pdp-soft); display:flex; gap:8px; align-items:flex-start; color:#5f5f5b; font-size:10.5px; line-height:1.35; }
.ck-fit-summary__access svg { width:17px; height:17px; flex:0 0 17px; fill:none; stroke:currentColor; stroke-width:1.6; }
.ck-fit-summary__access strong { color:#262624; }

.ck-pdp-reassurance { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--ck-pdp-border); border-radius:8px; overflow:hidden; font-family:var(--ck-sans); background:#fff; }
.ck-pdp-reassurance__item { display:flex; align-items:flex-start; gap:8px; padding:10px 11px; color:#222; text-decoration:none; min-height:62px; }
.ck-pdp-reassurance__item:nth-child(odd) { border-right:1px solid var(--ck-pdp-border); }
.ck-pdp-reassurance__item:nth-child(-n+2) { border-bottom:1px solid var(--ck-pdp-border); }
.ck-pdp-reassurance__icon { width:24px; height:24px; border-radius:50%; display:grid; place-items:center; flex:0 0 24px; background:#f0efe9; font-size:12px; }
.ck-pdp-reassurance strong { display:block; font-size:11px; line-height:1.25; margin-bottom:2px; }
.ck-pdp-reassurance small { display:block; color:#777; font-size:9.5px; line-height:1.25; }

/* Upgrade existing footstool AOV card into a proper purchase-step upsell. */
[class^="footstool-bundle-"] { margin-top:2px !important; margin-bottom:2px !important; }
[class*="footstool-bundle-card-"] { border-color:#cfcac0 !important; background:#faf9f6 !important; padding:15px !important; border-radius:9px !important; box-shadow:0 1px 0 rgba(0,0,0,.02); }
[class*="footstool-bundle-badge-"] { background:#171717 !important; top:-9px !important; letter-spacing:.05em !important; }
[class*="footstool-bundle-heading-"] { font-weight:700 !important; font-size:13px !important; }
[class*="footstool-bundle-add-"] { min-height:42px !important; background:#fff !important; color:#171717 !important; border:1px solid #171717 !important; font-weight:700 !important; border-radius:5px !important; }
[class*="footstool-bundle-add-"]:hover { background:#171717 !important; color:#fff !important; }

@media (min-width: 990px) {
  .template-product .product-information .product-details { padding-top:12px; }
}
@media (max-width: 749px) {
  .template-product .product-information .product-details { max-width:none; }
  .template-product .product-information h1 { font-size:24px !important; }
  .ck-payment-options { grid-template-columns:1fr; }
  .ck-payment-option { min-height:58px; }
  .ck-fit-summary__top { align-items:center; }
  .ck-pdp-reassurance__item { min-height:58px; padding:9px; }
  .ck-pdp-reassurance strong { font-size:10.5px; }
  .ck-pdp-reassurance small { font-size:9px; }
  .template-product .product-information .add-to-cart-button.button,
  .template-product .product-information .add-to-cart-button.button-secondary { min-height:60px; position:relative; z-index:1; }
}

/* ==========================================================================
   CK LIVING — FULL SOFA PDP REDESIGN v2 · 01 SEP 2026
   Cleaner, more compact Sofa-Club-inspired buying flow, without copying UI.
   ========================================================================== */
.template-product {
  --ck2-ink:#171717;
  --ck2-muted:#666763;
  --ck2-line:#e1e2df;
  --ck2-soft:#f5f6f4;
  --ck2-soft-2:#fafafa;
  --ck2-green:#00b67a;
  --ck2-sale:#f0f5ef;
  --ck2-radius:8px;
}

/* Main PDP geometry */
.template-product .product-information { --ck-pdp-border:var(--ck2-line); --ck-pdp-soft:var(--ck2-soft); }
.template-product .product-information__grid { align-items:start; }
.template-product .product-information .product-details { max-width:600px; }
.template-product .product-information h1 { font-family:var(--font-body--family) !important; font-weight:600 !important; font-size:clamp(23px,2.15vw,32px) !important; line-height:1.12 !important; letter-spacing:-.025em !important; }
.template-product product-price { font-size:clamp(20px,2vw,27px); font-weight:650; letter-spacing:-.02em; }
.template-product .product-information .product-form-buttons { gap:7px !important; }
.template-product .product-information .add-to-cart-button.button,
.template-product .product-information .add-to-cart-button.button-secondary {
  min-height:58px !important; border-radius:6px !important; background:var(--ck2-ink) !important; color:#fff !important;
  border:1px solid var(--ck2-ink) !important; font-size:15px !important; font-weight:750 !important; letter-spacing:.01em !important;
  text-transform:none !important; box-shadow:none !important;
}
.template-product .product-information .add-to-cart-button:hover { background:#303030 !important; }
.template-product .product-media-gallery { background:#f4f5f4; }
.template-product .product-media-container { background:#f4f5f4; }

/* Keep the decision zone visually tight. */
.template-product .product-details .group-block-content { row-gap:10px !important; }
.template-product .ck-linked-option { margin-bottom:10px !important; }
.template-product .ck-linked-option__head { margin-bottom:5px !important; }
.template-product .ck-linked-option__head span { font-size:11px !important; letter-spacing:.055em !important; }
.template-product .ck-linked-option__head em { font-size:12px !important; }
.template-product .ck-fabric-row,.template-product .ck-pill-row { gap:6px !important; }
.template-product .ck-fabric-chip { min-height:42px; padding:8px 12px !important; border-radius:6px !important; font-size:12px !important; }
.template-product .ck-swatch-row { gap:6px !important; }
.template-product .ck-swatch { width:52px !important; height:52px !important; border-radius:6px !important; }
.template-product .ck-sofa-grid { gap:5px !important; }
.template-product .ck-sofa-card__media { border-radius:5px !important; background:#f4f5f3 !important; }
.template-product .ck-sofa-card__label { font-size:10px !important; }
.template-product .ck-pill { min-height:40px; padding:9px 13px !important; border-radius:5px !important; }

/* Trustpilot */
.ck-tp-proof { margin:0 !important; }
.ck-tp-proof__link { font-size:11.5px !important; gap:5px !important; }
.ck-tp-proof__stars { color:var(--ck2-green) !important; font-size:14px !important; }

/* Temporary sale card */
.ck-sale-promo { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 12px; background:#f7f7f6; border:1px solid var(--ck2-line); border-radius:7px; font-family:var(--ck-sans); }
.ck-sale-promo--qualifies { background:var(--ck2-sale); border-color:#ceddcc; }
.ck-sale-promo__copy { display:grid; gap:1px; min-width:0; }
.ck-sale-promo__eyebrow { font-size:9px; text-transform:uppercase; letter-spacing:.11em; color:#667164; font-weight:750; }
.ck-sale-promo__copy strong { font-size:13px; color:var(--ck2-ink); line-height:1.2; }
.ck-sale-promo__copy small { font-size:10px; color:var(--ck2-muted); line-height:1.25; }
.ck-sale-promo__code { flex:0 0 auto; border:1px dashed #7b8879; background:#fff; border-radius:5px; min-height:38px; padding:6px 9px; display:grid; place-items:center; cursor:pointer; color:var(--ck2-ink); }
.ck-sale-promo__code span { font-size:11px; font-weight:800; letter-spacing:.06em; }
.ck-sale-promo__code em { font-size:8px; color:#777; font-style:normal; }

/* Payment choices — Rowen-style visibility, CK wording. */
.ck-payment-options { display:grid !important; grid-template-columns:1fr !important; gap:6px !important; margin:0 !important; font-family:var(--ck-sans); }
.ck-payment-options__heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ck-payment-options__heading strong { font-size:11px; text-transform:uppercase; letter-spacing:.055em; }
.ck-payment-options__heading a { font-size:10px; color:var(--ck2-muted); text-decoration:underline; text-underline-offset:2px; }
.ck-payment-option { min-height:0 !important; padding:10px 11px !important; border:1px solid var(--ck2-line) !important; background:#fff !important; color:var(--ck2-ink) !important; text-decoration:none !important; display:grid !important; grid-template-columns:47px 1fr auto !important; gap:10px !important; align-items:center !important; border-radius:7px !important; box-shadow:none !important; }
.ck-payment-option--pod { border-color:#c9cbc7 !important; background:#fbfbfa !important; }
.ck-payment-option:hover { border-color:#999 !important; }
.ck-payment-option__brand { width:47px; min-height:28px; padding:5px 4px; display:grid; place-items:center; border-radius:4px; font-size:10px; line-height:1; font-weight:800; letter-spacing:-.02em; }
.ck-payment-option__brand--pod { background:#171717; color:#fff; font-size:11px; }
.ck-payment-option__brand--klarna { background:#ffb3c7; color:#111; }
.ck-payment-option__brand--shop { background:#5a31f4; color:#fff; font-size:12px; }
.ck-payment-option__copy strong { display:block; font-size:12px !important; margin:0 0 2px !important; }
.ck-payment-option__copy small { display:block; font-size:10px !important; line-height:1.3 !important; color:var(--ck2-muted) !important; }
.ck-payment-option__copy small b { color:var(--ck2-ink); font-weight:700; }
.ck-payment-option__instruction { margin-top:2px; }
.ck-payment-option__arrow { color:#8a8b87; font-size:20px !important; }
.ck-payment-options__split { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.ck-payment-options__split .ck-payment-option { grid-template-columns:47px 1fr !important; }
.ck-payment-options__terms { margin:0; font-size:8.5px; line-height:1.35; color:#8a8b87; }

/* Free swatches */
.template-product .ck-swatch-cta { margin:0 !important; padding:8px 10px !important; border:1px solid var(--ck2-line); border-radius:6px; background:#fafafa !important; font-size:11px !important; }
.template-product .ck-swatch-cta a { font-size:10px; }

/* Dimensions summary */
.ck-fit-summary { border:1px solid var(--ck2-line) !important; background:#fff !important; border-radius:7px !important; }
.ck-fit-summary__top { padding:10px 11px 8px !important; align-items:center !important; }
.ck-fit-summary__eyebrow { font-size:9px !important; margin-bottom:3px !important; }
.ck-fit-summary__dims { font-size:12px !important; gap:3px 10px !important; }
.ck-fit-summary__snippet { font-weight:650; }
.ck-fit-summary__link { font-size:10px !important; }
.ck-fit-summary__access { padding:8px 10px !important; font-size:9.5px !important; background:#f7f7f6 !important; }
.ck-fit-summary__access-icon { width:18px; height:18px; border:1px solid #bdbebb; border-radius:50%; display:grid; place-items:center; flex:0 0 18px; font-size:10px; color:#555; }

/* Bundle upsell */
.ck-bundle-upsell { border:1px solid #d4d6d1; background:#f9faf8; border-radius:8px; padding:11px; display:grid; gap:9px; }
.ck-bundle-upsell__head { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.ck-bundle-upsell__eyebrow { font-size:10px; text-transform:uppercase; letter-spacing:.055em; font-weight:750; }
.ck-bundle-upsell__save { background:#171717; color:#fff; border-radius:999px; padding:4px 8px; font-size:9px; font-weight:750; white-space:nowrap; }
.ck-bundle-upsell__row { display:grid; grid-template-columns:62px 1fr; gap:10px; align-items:center; }
.ck-bundle-upsell__media { width:62px; height:62px; background:#f0f1ef; border-radius:6px; overflow:hidden; }
.ck-bundle-upsell__media img { width:100%; height:100%; object-fit:cover; display:block; }
.ck-bundle-upsell__copy { display:grid; gap:1px; min-width:0; }
.ck-bundle-upsell__copy strong { font-size:12px; }
.ck-bundle-upsell__copy small { font-size:9px; color:var(--ck2-muted); line-height:1.25; }
.ck-bundle-upsell__copy span { font-size:10.5px; color:#555; }
.ck-bundle-upsell__copy b { color:var(--ck2-ink); }
.ck-bundle-upsell__button { min-height:43px; width:100%; border:1px solid #171717; border-radius:6px; background:#171717; color:#fff; font-size:12px; font-weight:750; cursor:pointer; }
.ck-bundle-upsell__button--secondary { background:#fff; color:#171717; }
.ck-bundle-upsell__micro { margin:0; font-size:8.5px; color:#83847f; line-height:1.3; }
.ck-bundle-upsell__error { color:#b42318; font-size:10px; }

/* Risk reversal row below the ATC */
.ck-pdp-reassurance { border:1px solid var(--ck2-line) !important; border-radius:7px !important; }
.ck-pdp-reassurance__item { min-height:54px !important; padding:8px 9px !important; }
.ck-pdp-reassurance__icon { width:22px !important; height:22px !important; flex-basis:22px !important; background:#f2f3f1 !important; }
.ck-pdp-reassurance strong { font-size:10.5px !important; }
.ck-pdp-reassurance small { font-size:8.8px !important; line-height:1.3 !important; }

/* Phone / WhatsApp support — remove the old beige visual language. */
.template-product .ck-pdp-help-booking { margin:0 !important; }
.template-product .ck-pdp-help__card { min-height:42px !important; padding:8px 9px !important; border-radius:6px !important; border-color:var(--ck2-line) !important; }
.template-product .ck-pdp-help__icon { width:26px !important; height:26px !important; flex-basis:26px !important; background:#171717 !important; }
.template-product .ck-pdp-help__card--whatsapp .ck-pdp-help__icon { background:#1f8f59 !important; }
.template-product .ck-pdp-help__copy strong { font-size:11px !important; }
.template-product .ck-pdp-help__copy small { font-size:9px !important; }
.template-product .ck-pdp-help__trustline { font-size:9px !important; margin-top:3px !important; }

/* Full lower-page information system */
.ck-sofa-info { background:#fff; color:var(--ck2-ink); border-top:1px solid #ececea; font-family:var(--ck-sans); }
.ck-sofa-info__inner { width:min(1240px,calc(100% - 40px)); margin:0 auto; padding:0 0 56px; }
.ck-sofa-info__jumpbar { position:sticky; top:0; z-index:12; display:flex; gap:24px; overflow:auto; scrollbar-width:none; background:rgba(255,255,255,.96); backdrop-filter:blur(10px); border-bottom:1px solid var(--ck2-line); padding:14px 0; white-space:nowrap; }
.ck-sofa-info__jumpbar::-webkit-scrollbar { display:none; }
.ck-sofa-info__jumpbar a { color:#555; text-decoration:none; font-size:11px; font-weight:650; }
.ck-sofa-info__jumpbar a:hover { color:#111; }
.ck-sofa-info section { scroll-margin-top:72px; padding:52px 0; border-bottom:1px solid #ececea; }
.ck-sofa-section-head { max-width:760px; margin-bottom:24px; }
.ck-sofa-section-head>span { display:block; margin-bottom:6px; text-transform:uppercase; letter-spacing:.09em; font-size:10px; font-weight:750; color:#7a7b77; }
.ck-sofa-section-head h2 { margin:0; font-family:var(--font-body--family); font-size:clamp(25px,3vw,39px); line-height:1.05; letter-spacing:-.035em; font-weight:550; color:#171717; }
.ck-sofa-section-head--row { max-width:none; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.ck-sofa-section-head__help { color:#171717; font-size:11px; font-weight:700; text-underline-offset:3px; }
.ck-sofa-overview__grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr); gap:56px; }
.ck-sofa-overview__description { max-width:720px; color:#4d4e4b; font-size:14px; line-height:1.72; }
.ck-sofa-overview__description h2,.ck-sofa-overview__description h3 { font-family:var(--font-body--family); font-size:16px; letter-spacing:-.015em; margin:24px 0 8px; color:#171717; }
.ck-sofa-overview__description ul { padding-left:18px; }
.ck-sofa-overview__quick { display:grid; align-content:start; border-top:1px solid var(--ck2-line); }
.ck-sofa-quick-card { padding:15px 0; border-bottom:1px solid var(--ck2-line); display:grid; gap:4px; }
.ck-sofa-quick-card__label { font-size:9px; text-transform:uppercase; letter-spacing:.08em; color:#7d7e7a; }
.ck-sofa-quick-card strong { font-size:13px; }
.ck-sofa-quick-card span:not(.ck-sofa-quick-card__label) { color:#62635f; font-size:10.5px; line-height:1.45; }
.ck-sofa-quick-card a { color:#171717; font-size:10px; font-weight:700; text-underline-offset:3px; }
.ck-dimension-hero { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); border:1px solid var(--ck2-line); border-radius:9px; overflow:hidden; background:#fafafa; }
.ck-dimension-hero>div { padding:20px 16px; min-height:104px; display:flex; flex-direction:column; justify-content:space-between; border-right:1px solid var(--ck2-line); }
.ck-dimension-hero>div:last-child { border-right:0; }
.ck-dimension-hero span { font-size:9px; text-transform:uppercase; letter-spacing:.07em; color:#767773; }
.ck-dimension-hero strong { font-size:30px; line-height:1; letter-spacing:-.04em; font-weight:550; }
.ck-dimension-hero strong small { margin-left:2px; font-size:11px; color:#71726e; font-weight:500; letter-spacing:0; }
.ck-dimension-hero__full { grid-column:1/-1; }
.ck-dimension-hero__full strong { font-size:22px; }
.ck-dimension-list { margin-top:12px; border-top:1px solid var(--ck2-line); }
.ck-dimension-list__row { display:grid; grid-template-columns:minmax(130px,.35fr) 1fr; gap:22px; padding:11px 0; border-bottom:1px solid var(--ck2-line); font-size:11px; }
.ck-dimension-list__row strong { color:#242424; }
.ck-dimension-list__row span { color:#5c5d59; }
.ck-access-check { margin-top:18px; padding:16px 18px; border:1px solid #dcded9; background:#f5f6f4; border-radius:8px; display:grid; grid-template-columns:34px 1fr; gap:12px; }
.ck-access-check__icon { width:34px; height:34px; display:grid; place-items:center; border:1px solid #bfc1bc; border-radius:50%; }
.ck-access-check strong { font-size:12px; }
.ck-access-check p { margin:4px 0 0; font-size:10.5px; line-height:1.5; color:#5b5c58; }
.ck-comfort-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.ck-comfort-card { border:1px solid var(--ck2-line); border-radius:8px; padding:15px; display:grid; gap:10px; }
.ck-comfort-card>div { display:flex; justify-content:space-between; gap:10px; font-size:11px; }
.ck-comfort-card>div span { color:#6c6d69; }
.ck-comfort-card i { height:4px; background:#e5e6e3; display:block; overflow:hidden; }
.ck-comfort-card i b { display:block; width:var(--ck-meter); height:100%; background:#171717; }
.ck-comfort-card small { display:flex; justify-content:space-between; font-size:8.5px; color:#878884; }
.ck-comfort-card small em { font-style:normal; }
.ck-sofa-accordion-area { padding:10px 0 52px !important; }
.ck-sofa-accordion { border-bottom:1px solid var(--ck2-line); }
.ck-sofa-accordion:first-child { border-top:1px solid var(--ck2-line); }
.ck-sofa-accordion summary { min-height:58px; padding:0 2px; display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; list-style:none; font-size:13px; font-weight:700; }
.ck-sofa-accordion summary::-webkit-details-marker,.ck-faq-list summary::-webkit-details-marker { display:none; }
.ck-sofa-accordion summary i,.ck-faq-list summary i { font-style:normal; font-size:20px; font-weight:300; transition:transform .2s ease; }
.ck-sofa-accordion[open] summary i,.ck-faq-list details[open] summary i { transform:rotate(45deg); }
.ck-sofa-accordion__content { padding:0 0 20px; max-width:830px; color:#5d5e5a; font-size:11.5px; line-height:1.65; }
.ck-sofa-accordion__content p:first-child { margin-top:0; }
.ck-inline-action { color:#171717; font-weight:700; text-underline-offset:3px; }
.ck-confidence-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.ck-confidence-card { min-height:220px; padding:17px; border:1px solid var(--ck2-line); border-radius:8px; color:#171717; text-decoration:none; display:flex; flex-direction:column; }
.ck-confidence-card>span { color:#9a9b97; font-size:9px; margin-bottom:auto; }
.ck-confidence-card strong { margin-top:36px; font-size:14px; }
.ck-confidence-card p { margin:7px 0 14px; color:#656662; font-size:10.5px; line-height:1.5; }
.ck-confidence-card em { margin-top:auto; font-style:normal; font-size:9.5px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.ck-confidence-card:hover { border-color:#9b9c98; background:#fafafa; }
.ck-faq-list { max-width:900px; border-top:1px solid var(--ck2-line); }
.ck-faq-list details { border-bottom:1px solid var(--ck2-line); }
.ck-faq-list summary { min-height:60px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; font-size:12px; font-weight:700; }
.ck-faq-list details p { max-width:760px; margin:0; padding:0 0 18px; font-size:11px; line-height:1.6; color:#62635f; }
.ck-range-cta { margin-top:26px; min-height:94px; border:1px solid #171717; border-radius:8px; padding:18px 20px; display:flex; align-items:center; justify-content:space-between; gap:24px; color:#171717; text-decoration:none; }
.ck-range-cta span { display:grid; gap:2px; }
.ck-range-cta small { font-size:9px; text-transform:uppercase; letter-spacing:.08em; color:#757672; }
.ck-range-cta strong { font-size:16px; }
.ck-range-cta>b { font-size:23px; font-weight:400; }
.ck-range-cta:hover { background:#171717; color:#fff; }
.ck-range-cta:hover small { color:#d2d2d0; }

/* Customer proof / recommendations made cleaner */
.template-product .cks-section { margin:0 !important; }
.template-product .cks-inner { max-width:1240px !important; }
.template-product .cks-tile { border-radius:8px !important; overflow:hidden; }
.template-product .product-recommendations { border-top:1px solid #ececea; }

@media (min-width:990px) {
  .template-product .product-information { padding-top:18px; }
  .template-product .product-information .product-details { padding-top:0 !important; }
}

@media (max-width:989px) {
  .template-product .product-information { --page-margin:14px; }
  .template-product .product-information__media { margin-inline:calc(var(--page-margin) * -1); width:calc(100% + (var(--page-margin) * 2)); }
  .template-product .product-information .product-details { padding-top:8px !important; padding-bottom:24px !important; }
  .template-product .ck-sofa-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
  .template-product .ck-sofa-grid.ck-sofa-grid--compact { grid-template-columns:repeat(4,60px) !important; }
  .ck-sofa-info__inner { width:min(100% - 28px,1240px); padding-bottom:38px; }
  .ck-sofa-info__jumpbar { gap:18px; padding:12px 0; }
  .ck-sofa-info section { padding:38px 0; }
  .ck-sofa-section-head { margin-bottom:18px; }
  .ck-sofa-section-head h2 { font-size:27px; }
  .ck-sofa-section-head--row { display:block; }
  .ck-sofa-section-head__help { display:inline-block; margin-top:10px; }
  .ck-sofa-overview__grid { grid-template-columns:1fr; gap:26px; }
  .ck-dimension-hero { grid-template-columns:repeat(3,1fr); }
  .ck-dimension-hero>div { min-height:90px; padding:14px 12px; border-bottom:1px solid var(--ck2-line); }
  .ck-dimension-hero>div:nth-child(3n) { border-right:0; }
  .ck-dimension-hero strong { font-size:25px; }
  .ck-dimension-list__row { grid-template-columns:1fr; gap:4px; padding:10px 0; }
  .ck-comfort-grid { grid-template-columns:1fr 1fr; }
  .ck-confidence-grid { grid-template-columns:1fr 1fr; }
  .ck-confidence-card { min-height:170px; }
  .ck-confidence-card strong { margin-top:24px; }
}

@media (max-width:749px) {
  .template-product .product-information h1 { font-size:22px !important; }
  .template-product product-price { font-size:23px !important; }
  .template-product .product-details .group-block-content { row-gap:8px !important; }
  .ck-payment-options__split { grid-template-columns:1fr; }
  .ck-payment-option { padding:9px 10px !important; }
  .ck-sale-promo { padding:9px 10px; }
  .ck-pdp-reassurance__item { min-height:52px !important; }
  .ck-sofa-info__jumpbar { margin-inline:-14px; padding-inline:14px; }
  .ck-sofa-overview__description { font-size:12.5px; line-height:1.65; }
  .ck-dimension-hero { grid-template-columns:repeat(3,1fr); }
  .ck-dimension-hero>div { min-height:80px; padding:12px 9px; }
  .ck-dimension-hero strong { font-size:22px; }
  .ck-access-check { padding:13px; }
  .ck-comfort-grid { grid-template-columns:1fr; }
  .ck-confidence-grid { grid-template-columns:1fr 1fr; gap:6px; }
  .ck-confidence-card { min-height:184px; padding:13px; }
  .ck-confidence-card strong { font-size:12px; margin-top:22px; }
  .ck-confidence-card p { font-size:9.5px; }
  .ck-sofa-accordion summary,.ck-faq-list summary { font-size:11.5px; min-height:55px; }
  .ck-range-cta { min-height:82px; padding:15px; }
  body { padding-bottom:72px !important; }
}

@media (max-width:420px) {
  .template-product .ck-swatch { width:48px !important; height:48px !important; }
  .ck-pdp-reassurance { grid-template-columns:1fr 1fr !important; }
  .ck-payment-option__brand { width:43px; }
  .ck-payment-option { grid-template-columns:43px 1fr auto !important; }
  .ck-payment-options__split .ck-payment-option { grid-template-columns:43px 1fr !important; }
  .ck-confidence-grid { grid-template-columns:1fr; }
  .ck-confidence-card { min-height:150px; }
}

/* ==========================================================================
   CK LIVING — PDP v6 compact decision zone + gallery finance / 3D tools
   ========================================================================== */
.template-product media-gallery { position:relative; }
.ck-gallery-tools {
  position:absolute; top:12px; right:12px; z-index:8; display:flex; gap:6px;
  font-family:var(--ck-sans); pointer-events:auto;
}
.ck-gallery-tool {
  min-height:40px; padding:7px 10px 7px 7px; border:1px solid rgba(20,20,20,.12); border-radius:999px;
  background:rgba(255,255,255,.93); color:#171717; display:flex; align-items:center; gap:6px; cursor:pointer;
  box-shadow:0 3px 16px rgba(0,0,0,.08); backdrop-filter:blur(8px); font:inherit;
}
.ck-gallery-tool:hover { background:#fff; border-color:rgba(20,20,20,.3); }
.ck-gallery-tool__icon { width:25px; height:25px; border-radius:50%; display:grid; place-items:center; background:#171717; color:#fff; font-size:12px; font-weight:800; }
.ck-gallery-tool__icon--cube { font-size:17px; line-height:1; }
.ck-gallery-tool__label { font-size:10.5px; font-weight:750; white-space:nowrap; }

.ck-gallery-dialog { width:min(760px,calc(100vw - 28px)); max-width:none; max-height:min(88vh,820px); border:0; border-radius:12px; padding:0; background:#fff; color:#171717; box-shadow:0 24px 80px rgba(0,0,0,.28); }
.ck-gallery-dialog::backdrop { background:rgba(0,0,0,.48); backdrop-filter:blur(2px); }
.ck-gallery-dialog__panel { position:relative; padding:28px; font-family:var(--ck-sans); overflow:auto; max-height:inherit; }
.ck-gallery-dialog__close { position:absolute; top:13px; right:13px; width:36px; height:36px; border-radius:50%; border:1px solid #ddd; background:#fff; color:#171717; font-size:22px; line-height:1; cursor:pointer; z-index:2; }
.ck-gallery-dialog__eyebrow { display:block; text-transform:uppercase; letter-spacing:.1em; color:#71726e; font-size:9px; font-weight:800; margin-bottom:7px; }
.ck-gallery-dialog h2 { margin:0 44px 20px 0; font-family:var(--font-body--family); font-size:28px; line-height:1.06; letter-spacing:-.03em; font-weight:600; }
.ck-gallery-dialog__link { display:inline-block; margin-top:18px; color:#171717; font-size:11px; font-weight:700; text-underline-offset:3px; }
.ck-finance-modal-grid { display:grid; grid-template-columns:1fr; gap:8px; }
.ck-finance-modal-card { border:1px solid #dedfdb; border-radius:8px; padding:14px; background:#fafafa; }
.ck-finance-modal-card--pod { background:#f2f6f1; border-color:#d4e0d2; }
.ck-finance-modal-card__brand { display:block; font-size:10px; font-weight:800; margin-bottom:7px; }
.ck-finance-modal-card strong { display:block; font-size:15px; margin-bottom:4px; }
.ck-finance-modal-card p { margin:0 0 4px; font-size:11.5px; line-height:1.4; color:#4f504d; }
.ck-finance-modal-card small { display:block; font-size:9.5px; line-height:1.4; color:#777; }

.ck-gallery-dialog--ar { width:min(920px,calc(100vw - 24px)); }
.ck-gallery-dialog__panel--ar { padding:22px; }
.ck-gallery-ar-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:14px; }
.ck-gallery-ar-head h2 { margin-bottom:6px; }
.ck-gallery-ar-head p { margin:0; max-width:560px; font-size:11px; color:#666; line-height:1.45; }
.ck-gallery-ar-button { flex:0 0 auto; min-height:42px; border:0; border-radius:6px; background:#171717; color:#fff; padding:10px 14px; font-size:11px; font-weight:750; cursor:pointer; }
.ck-gallery-ar-stage { aspect-ratio:16/10; min-height:320px; background:#f4f5f4; border-radius:8px; overflow:hidden; }
.ck-gallery-ar-stage model-viewer { width:100%; height:100%; display:block; }
.ck-gallery-ar-note { margin:8px 0 0; font-size:9px; color:#7b7c78; line-height:1.35; }

/* Variant picker should appear before finance/promo content. */
.template-product .product-details .group-block-content { row-gap:7px !important; }
.template-product .product-information .product-details { padding-top:5px !important; }

/* One-row fit control; extra access copy is only shown on demand. */
.ck-fit-summary--compact { border:1px solid var(--ck2-line) !important; border-radius:7px !important; overflow:hidden; background:#fff; }
.ck-fit-summary__summary { min-height:46px; padding:8px 10px; display:flex; align-items:center; gap:9px; list-style:none; cursor:pointer; }
.ck-fit-summary__summary::-webkit-details-marker { display:none; }
.ck-fit-summary__summary-icon { width:24px; height:24px; border:1px solid #c7c8c4; border-radius:50%; display:grid; place-items:center; font-size:11px; flex:0 0 24px; }
.ck-fit-summary__summary-copy { min-width:0; flex:1; display:grid; gap:1px; }
.ck-fit-summary__summary-copy strong { font-size:10.5px; line-height:1.2; }
.ck-fit-summary__summary-copy small { font-size:9px; color:#696a66; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ck-fit-summary__chev { font-size:15px; transition:transform .2s; }
.ck-fit-summary[open] .ck-fit-summary__chev { transform:rotate(180deg); }
.ck-fit-summary__drawer { border-top:1px solid var(--ck2-line); padding:9px 10px 10px 43px; background:#f8f8f7; }
.ck-fit-summary__drawer p { margin:0 0 5px; font-size:9.5px; color:#5f605c; line-height:1.4; }
.ck-fit-summary__drawer a { color:#171717; font-size:9.5px; font-weight:700; text-underline-offset:2px; }

/* Compact payment choices live immediately below ATC; full detail is in gallery Finance. */
.ck-payment-mini { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; font-family:var(--ck-sans); }
.ck-payment-mini__item { min-width:0; min-height:51px; padding:7px; border:1px solid var(--ck2-line); border-radius:6px; background:#fff; color:#171717; display:flex; align-items:center; gap:6px; text-align:left; text-decoration:none; }
.ck-payment-mini__button { cursor:pointer; font:inherit; }
.ck-payment-mini__button:hover { border-color:#aaa; background:#fafafa; }
.ck-payment-mini__brand { width:27px; height:27px; border-radius:50%; background:#171717; color:#fff; display:grid; place-items:center; flex:0 0 27px; font-size:8.5px; font-weight:800; }
.ck-payment-mini__brand--shop { background:#5a31f4; font-size:8px; }
.ck-payment-mini__brand--klarna { background:#ffb3c7; color:#111; font-size:12px; }
.ck-payment-mini__item>span:last-child { min-width:0; display:grid; gap:1px; }
.ck-payment-mini strong { font-size:9px; line-height:1.2; }
.ck-payment-mini small { font-size:7.8px; color:#73746f; line-height:1.25; }

/* Keep the AOV upsell visible, but remove the unnecessary vertical bulk. */
.ck-bundle-upsell { padding:9px !important; gap:7px !important; }
.ck-bundle-upsell__row { grid-template-columns:52px 1fr !important; gap:8px !important; }
.ck-bundle-upsell__media { width:52px !important; height:52px !important; }
.ck-bundle-upsell__copy small { display:none !important; }
.ck-bundle-upsell__button { min-height:38px !important; }
.ck-bundle-upsell__micro { display:none !important; }

/* Reassurance becomes a single compact icon strip. */
.ck-pdp-reassurance--compact { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
.ck-pdp-reassurance--compact .ck-pdp-reassurance__item { min-height:48px !important; padding:6px !important; gap:5px !important; align-items:center !important; border-bottom:0 !important; }
.ck-pdp-reassurance--compact .ck-pdp-reassurance__item:not(:last-child) { border-right:1px solid var(--ck2-line) !important; }
.ck-pdp-reassurance--compact .ck-pdp-reassurance__icon { width:20px !important; height:20px !important; flex-basis:20px !important; font-size:10px !important; }
.ck-pdp-reassurance--compact strong { font-size:8.5px !important; white-space:nowrap; }
.ck-pdp-reassurance--compact small { display:none !important; }

@media (max-width:749px) {
  .ck-gallery-tools { top:9px; right:9px; gap:5px; }
  .ck-gallery-tool { min-height:36px; padding:5px 8px 5px 5px; }
  .ck-gallery-tool__icon { width:24px; height:24px; }
  .ck-gallery-tool__label { font-size:9px; }
  .ck-gallery-dialog__panel { padding:21px 16px 18px; }
  .ck-gallery-dialog h2 { font-size:24px; margin-bottom:16px; }
  .ck-gallery-ar-head { display:block; padding-right:34px; }
  .ck-gallery-ar-button { width:100%; margin-top:11px; }
  .ck-gallery-ar-stage { aspect-ratio:1/1; min-height:280px; }
  .ck-payment-mini { grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; }
  .ck-payment-mini__item { min-height:48px; padding:6px 5px; gap:5px; }
  .ck-payment-mini__brand { width:24px; height:24px; flex-basis:24px; }
  .ck-payment-mini strong { font-size:8.5px; }
  .ck-payment-mini small { font-size:7.2px; }
  .ck-pdp-reassurance--compact .ck-pdp-reassurance__item { display:grid; place-items:center; text-align:center; gap:2px !important; }
  .ck-pdp-reassurance--compact .ck-pdp-reassurance__item>span:last-child { display:block; }
}

@media (max-width:420px) {
  .ck-gallery-tool__label { display:none; }
  .ck-gallery-tool { width:36px; padding:5px; justify-content:center; }
  .ck-payment-mini__item { display:grid; justify-items:center; text-align:center; }
  .ck-payment-mini__item>span:last-child { text-align:center; }
}
.ck-product-gallery-shell { position:relative; }

/* ========================================================================
   CK LIVING — 02 SEP 2026 COMPACT PURCHASE FLOW OVERRIDES
   Sofa Club-inspired hierarchy: configure first, details later.
   ======================================================================== */

/* Hero gallery actions: deliberately large enough to be obvious tap targets. */
.ck-gallery-tools{top:12px!important;right:12px!important;gap:8px!important;z-index:8!important}
.ck-gallery-tool{min-height:46px!important;padding:7px 12px 7px 7px!important;border-radius:24px!important;border:1px solid rgba(20,20,20,.16)!important;background:rgba(255,255,255,.94)!important;box-shadow:0 3px 14px rgba(0,0,0,.08)!important;gap:7px!important;backdrop-filter:blur(8px)}
.ck-gallery-tool__icon{width:32px!important;height:32px!important;flex:0 0 32px!important;font-size:14px!important}
.ck-gallery-tool__icon--cube{background:#f1efe9!important;color:#171717!important;border:1px solid #ddd9cf!important}
.ck-gallery-tool__label{font-size:11px!important;font-weight:750!important;display:inline!important;letter-spacing:.01em}
.ck-gallery-tool--ar{border-color:#c8c3b7!important}

/* Compact thumbnail rail remains visible on mobile. */
@media(max-width:749px){
  .media-gallery__mobile-controls[thumbnails]{--thumbnail-width:44px!important;margin-top:6px!important}
  .media-gallery__mobile-controls[thumbnails] slideshow-slide{border-radius:3px!important;overflow:hidden}
  .media-gallery__mobile-controls[thumbnails] img{object-fit:cover!important}
}

/* One-line finance directly beneath price — no large finance card before variants. */
.ck-finance-inline{width:100%;min-height:42px;border:1px solid #e3e1dc;background:#faf9f6;border-radius:7px;padding:7px 9px;display:grid;grid-template-columns:auto minmax(0,1fr) 1px auto auto;align-items:center;gap:8px;text-align:left;color:#171717;font:inherit;cursor:pointer}
.ck-finance-inline:hover{border-color:#c7c3ba;background:#fff}
.ck-finance-inline__shop{display:inline-flex;align-items:center;background:#5a31f4;color:#fff;border-radius:5px;padding:5px 6px;font-size:9px;font-weight:800;line-height:1;white-space:nowrap}.ck-finance-inline__shop span{font-weight:500;margin-left:1px}
.ck-finance-inline__text,.ck-finance-inline__pod{display:grid;gap:0;min-width:0}.ck-finance-inline strong{font-size:10.5px;line-height:1.2}.ck-finance-inline small{font-size:8.5px;line-height:1.2;color:#74746f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ck-finance-inline__sep{height:24px;background:#dedcd5}.ck-finance-inline__pod{padding-left:1px}.ck-finance-inline__chev{font-size:20px;color:#777;line-height:1}

/* Payment + delivery tiles after ATC: four colourful, compact confidence cues. */
.ck-payment-mini{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
.ck-payment-mini__item{min-height:58px!important;padding:8px!important;border-radius:8px!important;border:1px solid transparent!important;gap:7px!important;transition:.15s ease;background:#f8f8f6!important}
.ck-payment-mini__item--pod{background:#edf6ee!important;border-color:#d5e8d7!important}
.ck-payment-mini__item--shop{background:#f0ecff!important;border-color:#ded5ff!important}
.ck-payment-mini__item--klarna{background:#fff0f5!important;border-color:#ffd6e4!important}
.ck-payment-mini__item--delivery{background:#edf5fb!important;border-color:#d5e6f3!important}
.ck-payment-mini__brand{width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:7px!important;font-size:11px!important}
.ck-payment-mini__brand--pod{background:#2f6b43!important}.ck-payment-mini__brand--shop{background:#5a31f4!important}.ck-payment-mini__brand--klarna{background:#ffb3c7!important;color:#111!important;font-size:13px!important}.ck-payment-mini__brand--delivery{background:#3f6f91!important;color:#fff!important}
.ck-payment-mini strong{font-size:9.5px!important}.ck-payment-mini small{font-size:7.8px!important;line-height:1.28!important;color:#5f625f!important}

/* Finance modal provider colour without turning the page into a rainbow. */
.ck-finance-modal-card--pod{background:#f1f7f2!important;border-color:#d8e8db!important}.ck-finance-modal-card--shop{background:#f4f1ff!important;border-color:#e1d9ff!important}.ck-finance-modal-card--klarna{background:#fff3f7!important;border-color:#ffdae6!important}
.ck-finance-modal-delivery{margin-top:10px;border:1px solid #d9e7f1;background:#f3f8fb;border-radius:8px;padding:10px 12px;display:flex;gap:9px;align-items:center}.ck-finance-modal-delivery>span:last-child{display:grid}.ck-finance-modal-delivery strong{font-size:12px}.ck-finance-modal-delivery small{font-size:10px;color:#6b6e70}

/* Sofa fit helper is useful on desktop, redundant on mobile because size/dimensions
   are already shown inside the variant names. */
@media(max-width:749px){.ck-fit-summary{display:none!important}}

/* Tighten above-the-fold CK sofa controls. */
@media(max-width:749px){
  .ck-swatch-cta{min-height:32px!important;padding:5px 8px!important;margin:0!important;border-radius:6px!important;background:#f7f7f5!important;font-size:9.5px!important}
  .ck-swatch-cta svg{width:14px!important;height:14px!important}.ck-swatch-cta a{font-size:9px!important}
  .ck-sale-promo{min-height:48px!important;padding:7px 8px!important}.ck-sale-promo__copy strong{font-size:11.5px!important}.ck-sale-promo__copy small{font-size:8.5px!important}.ck-sale-promo__code{min-height:34px!important;padding:5px 7px!important}
  .ck-finance-inline{grid-template-columns:auto minmax(0,1fr) auto;padding:6px 8px;gap:7px;min-height:40px}.ck-finance-inline__sep,.ck-finance-inline__pod{display:none}.ck-finance-inline strong{font-size:10px}.ck-finance-inline small{font-size:8px}.ck-finance-inline__chev{justify-self:end}
  .ck-payment-mini{grid-template-columns:1fr 1fr!important;gap:5px!important}.ck-payment-mini__item{min-height:56px!important;padding:7px!important;display:flex!important;justify-items:initial!important;text-align:left!important}.ck-payment-mini__item>span:last-child{text-align:left!important}.ck-payment-mini__brand{width:28px!important;height:28px!important;flex-basis:28px!important}
}
@media(max-width:420px){
  .ck-gallery-tool{min-height:44px!important;padding:6px 10px 6px 6px!important}.ck-gallery-tool__icon{width:30px!important;height:30px!important;flex-basis:30px!important}.ck-gallery-tool__label{display:inline!important;font-size:10px!important}
}

/* Collection-card financing in the same decision zone as price. */
.ck-card-finance{font-family:var(--font-body--family);display:grid;gap:3px;margin-top:2px;color:var(--color-foreground)}
.ck-card-finance__line{display:flex;align-items:center;gap:5px;font-size:10.5px;line-height:1.2;flex-wrap:wrap}.ck-card-finance__line strong{font-weight:700}.ck-card-finance__shop{display:inline-flex;background:#5a31f4;color:#fff;border-radius:4px;padding:3px 4px;font-size:7.5px;font-weight:800;line-height:1}.ck-card-finance__shop span{font-weight:500;margin-left:1px}.ck-card-finance__sub{font-size:9px;color:#6f716d;line-height:1.25}.ck-card-finance__sub strong{font-weight:650;color:var(--color-foreground)}
@media(max-width:749px){.ck-card-finance__line{font-size:9.3px}.ck-card-finance__sub{font-size:8.2px}}

/* BED PDP — native size variant selector + CK base/delivery/mattress configurator. */
.ck-bed-pdp .ck-variant-picker [data-ck-option-name*="gas-lift"]{display:none!important}
.ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"]{margin:0!important;border:0!important;padding:0!important}
.ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"] legend{display:flex;align-items:center;gap:8px;font-size:12px!important;font-weight:750!important;margin-bottom:7px!important}
.ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"] legend:before{content:'1';width:22px;height:22px;border-radius:50%;background:#171717;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:800;flex:0 0 22px}
.ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"] .variant-option__button-label{min-height:44px!important;border-radius:6px!important;padding:8px 11px!important;font-size:11px!important;background:#fff!important;border:1px solid #dcdad5!important}
.ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"] .variant-option__button-label:has(input:checked){border-color:#171717!important;box-shadow:inset 0 0 0 1px #171717!important;background:#faf9f6!important}

.ck-bed-config{display:grid;gap:10px;font-family:var(--font-body--family);margin:0}
.ck-bed-config__step{border-top:1px solid #e7e5df;padding-top:10px;display:grid;gap:8px}
.ck-bed-config__head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.ck-bed-config__head>div{display:flex;align-items:center;gap:8px}.ck-bed-config__head h3{font-size:12px;margin:0;font-weight:750}.ck-bed-config__head>small{font-size:8.5px;color:#777870;text-align:right;line-height:1.2}.ck-bed-config__stepno{width:22px;height:22px;border-radius:50%;background:#171717;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:800;flex:0 0 22px}
.ck-bed-choice-grid{display:grid;gap:6px}.ck-bed-choice-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.ck-bed-choice{appearance:none;border:1px solid #dedcd7;background:#fff;border-radius:7px;min-height:76px;padding:8px;display:flex;align-items:center;gap:8px;text-align:left;color:#171717;cursor:pointer;font:inherit;transition:.15s ease}.ck-bed-choice:hover{border-color:#aaa}.ck-bed-choice.is-selected{border-color:#171717;box-shadow:inset 0 0 0 1px #171717;background:#faf9f6}.ck-bed-choice__icon{width:34px;height:34px;display:grid;place-items:center;background:#f3f2ee;border-radius:7px;flex:0 0 34px}.ck-bed-choice__icon svg{width:27px;height:21px;fill:none;stroke:#333;stroke-width:1.4}.ck-bed-choice__icon--delivery{font-size:16px}.ck-bed-choice>span:last-child{display:grid;gap:2px;min-width:0}.ck-bed-choice strong{font-size:10px;line-height:1.15}.ck-bed-choice small{font-size:7.8px;color:#767770;line-height:1.25}
.ck-bed-mattress-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(148px,30%);gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:1px 1px 5px}.ck-bed-mattress-card{position:relative;border:1px solid #dedcd7;background:#fff;border-radius:8px;overflow:hidden;padding:0;text-align:left;color:#171717;cursor:pointer;font:inherit;scroll-snap-align:start;min-height:176px}.ck-bed-mattress-card.is-selected{border-color:#171717;box-shadow:inset 0 0 0 1px #171717}.ck-bed-mattress-card.is-unavailable{opacity:.45;cursor:not-allowed}.ck-bed-mattress-card__media{height:92px;display:block;background:#f6f5f1;position:relative}.ck-bed-mattress-card__media img{width:100%;height:100%;object-fit:cover}.ck-bed-mattress-card__media em{position:absolute;left:6px;top:6px;background:rgba(255,255,255,.92);border-radius:4px;padding:3px 5px;font-size:7px;font-style:normal;font-weight:700}.ck-bed-mattress-card__copy{padding:8px;display:grid;gap:3px}.ck-bed-mattress-card__copy strong{font-size:9.5px;line-height:1.2}.ck-bed-mattress-card__copy small{font-size:8px;color:#64655f}.ck-bed-mattress-card__copy>span{font-size:7.5px;color:#777}.ck-bed-mattress-card--none{display:grid;place-content:center;text-align:center;padding:14px;background:#faf9f6}.ck-bed-mattress-card__none{font-size:11px;font-weight:750}.ck-bed-mattress-card--none small{font-size:8px;color:#777}
.ck-bed-config__summary{border:1px solid #d9e5da;background:#f3f8f3;border-radius:7px;padding:8px 10px;display:flex;justify-content:space-between;align-items:center;gap:10px}.ck-bed-config__summary>span:first-child{display:grid;gap:1px}.ck-bed-config__summary strong{font-size:9.5px}.ck-bed-config__summary small{font-size:8px;color:#697069;line-height:1.25}.ck-bed-config__summary>span:last-child{width:21px;height:21px;border-radius:50%;background:#356745;color:#fff;display:grid;place-items:center;font-size:10px}

@media(max-width:749px){
  .ck-bed-choice-grid--3{grid-template-columns:1fr}.ck-bed-choice{min-height:58px;padding:7px 8px}.ck-bed-choice__icon{width:30px;height:30px;flex-basis:30px}.ck-bed-choice__icon svg{width:24px;height:18px}.ck-bed-config__head{align-items:center}.ck-bed-config__head>small{max-width:46%;font-size:7.7px}.ck-bed-mattress-scroll{grid-auto-columns:minmax(145px,48%)}
  .ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"] .variant-option__button-label{min-height:42px!important;padding:7px 9px!important;font-size:10px!important}
}


/* v7 final mobile purchase polish ------------------------------------------------ */
.ck-gallery-tools{z-index:24!important;}
.ck-gallery-tool{min-height:48px!important;padding:7px 13px 7px 7px!important;gap:8px!important;}
.ck-gallery-tool--ar{min-height:50px!important;box-shadow:0 4px 18px rgba(0,0,0,.11)!important;}
.ck-gallery-tool__icon{width:34px!important;height:34px!important;flex-basis:34px!important;}
.ck-gallery-tool__label{font-size:11.5px!important;font-weight:800!important;}
.ck-gallery-ar-stage{position:relative;}
.ck-gallery-ar-loading{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;font-size:11px;color:#6b6c67;background:#f5f4f0;z-index:1;}
.ck-gallery-ar-loading[hidden]{display:none!important;}
.ck-gallery-ar-stage model-viewer{position:relative;z-index:2;background:#f5f4f0;}

.ck-payment-mini__brand{width:42px!important;height:30px!important;flex:0 0 42px!important;border-radius:6px!important;font-weight:800!important;letter-spacing:-.02em!important;}
.ck-payment-mini__brand--pod{background:#255b3c!important;color:#fff!important;font-size:15px!important;}
.ck-payment-mini__brand--shop{background:#5a31f4!important;color:#fff!important;font-size:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:1px!important;}
.ck-payment-mini__brand--shop>span{font-weight:500!important;}
.ck-payment-mini__brand--klarna{background:#ffb3c7!important;color:#111!important;font-size:8.5px!important;width:48px!important;flex-basis:48px!important;}
.ck-payment-mini__brand--delivery{background:#e6f0fb!important;color:#1f5b96!important;}
.ck-payment-mini__brand--delivery svg{width:19px;height:19px;}
.ck-payment-mini__item{grid-template-columns:auto 1fr!important;}

/* The desktop fit/access shortcut remains useful, but variants already carry dimensions on mobile. */
@media(max-width:749px){
  .ck-fit-summary{display:none!important;}
  .ck-gallery-tool{min-height:46px!important;padding:6px 10px 6px 6px!important;}
  .ck-gallery-tool--ar{min-height:48px!important;}
  .ck-gallery-tool__icon{width:32px!important;height:32px!important;flex-basis:32px!important;}
  .ck-gallery-tool__label{font-size:10.5px!important;}
  .media-gallery__mobile-controls[thumbnails]{display:block!important;visibility:visible!important;opacity:1!important;--thumbnail-width:44px!important;margin-top:5px!important;}
  .media-gallery__mobile-controls[thumbnails] .slideshow-controls__thumbnails{gap:5px!important;}
  .media-gallery__mobile-controls[thumbnails] .slideshow-controls__thumbnail{width:44px!important;min-width:44px!important;height:44px!important;}
  .ck-bundle-upsell{padding:8px!important;gap:6px!important;}
  .ck-bundle-upsell__head{min-height:20px!important;}
  .ck-bundle-upsell__eyebrow{font-size:9px!important;}
  .ck-bundle-upsell__row{grid-template-columns:46px 1fr!important;gap:7px!important;}
  .ck-bundle-upsell__media{width:46px!important;height:46px!important;}
  .ck-bundle-upsell__button{min-height:36px!important;font-size:10.5px!important;}
}

/* v10 — native bedroom finish selector, panel base upsell and stronger purchase CTA */
.ck-bedroom-finish{display:grid;gap:8px;border-top:1px solid #e6e4df;padding-top:10px;font-family:var(--font-body--family)}
.ck-bedroom-finish__heading{display:flex;align-items:center;gap:8px}.ck-bedroom-finish__step{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#171717;color:#fff;font-size:10px;font-weight:800;flex:0 0 22px}.ck-bedroom-finish__heading>div{display:grid;gap:1px}.ck-bedroom-finish__heading strong{font-size:12px}.ck-bedroom-finish__heading small{font-size:8.5px;color:#777}
.ck-bedroom-finish__label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;margin-top:2px}.ck-bedroom-finish__label span{font-weight:750}.ck-bedroom-finish__label b{font-weight:500;color:#696a66}
.ck-bedroom-fabric-scroll{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:1px 1px 4px}.ck-bedroom-fabric-scroll::-webkit-scrollbar{display:none}.ck-bedroom-fabric{appearance:none;white-space:nowrap;border:1px solid #dedcd7;background:#fff;color:#171717;border-radius:7px;min-height:36px;padding:7px 10px;font:650 9.5px/1 var(--font-body--family);cursor:pointer}.ck-bedroom-fabric.is-selected{background:#171717;color:#fff;border-color:#171717}
.ck-bedroom-colours{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.ck-bedroom-colour{appearance:none;border:0;background:transparent;padding:0;display:grid;gap:4px;color:#171717;font:inherit;cursor:pointer;min-width:0}.ck-bedroom-colour[hidden]{display:none!important}.ck-bedroom-colour__chip{display:block;aspect-ratio:1;border-radius:7px;background:var(--ck-fabric-colour);border:1px solid rgba(0,0,0,.10);position:relative;overflow:hidden}.ck-bedroom-colour__chip:before,.ck-bedroom-colour__chip:after{content:"";position:absolute;inset:0}.ck-bedroom-colour__chip:before{background:linear-gradient(120deg,rgba(255,255,255,.20),transparent 28%,rgba(0,0,0,.07) 62%,rgba(255,255,255,.08));mix-blend-mode:soft-light}.ck-bedroom-colour__chip:after{background:repeating-linear-gradient(92deg,rgba(255,255,255,.055) 0 1px,rgba(0,0,0,.025) 1px 3px);opacity:.55}.ck-texture-teddy:after{background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.22) 0 2px,transparent 3px),radial-gradient(circle at 70% 70%,rgba(0,0,0,.10) 0 2px,transparent 3px);background-size:12px 12px,14px 14px}.ck-texture-arlington:after,.ck-texture-chenille:after{background:repeating-linear-gradient(45deg,rgba(255,255,255,.09) 0 2px,rgba(0,0,0,.035) 2px 4px)}.ck-bedroom-colour.is-selected .ck-bedroom-colour__chip{box-shadow:0 0 0 2px #171717,0 0 0 4px #fff}.ck-bedroom-colour small{font-size:7.5px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ck-bedroom-finish__swatches{font-size:9px;color:#171717;text-decoration:underline;text-underline-offset:3px;font-weight:650;justify-self:start}

.ck-panel-base{border:1px solid #dedcd7;border-radius:10px;background:#faf9f6;padding:10px;font-family:var(--font-body--family);display:grid;gap:8px}.ck-panel-base__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.ck-panel-base__eyebrow{font-size:7px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#777}.ck-panel-base__head h3{font-size:11px;margin:2px 0 0}.ck-panel-base__toggle{appearance:none;border:0;border-radius:999px;background:#171717;color:#fff;min-height:34px;padding:7px 11px;font:750 9px/1 var(--font-body--family);cursor:pointer;white-space:nowrap}.ck-panel-base__toggle span{margin-left:4px}.ck-panel-base__body{display:grid;gap:10px;border-top:1px solid #e4e1db;padding-top:9px}.ck-panel-base__match{font-size:8.5px!important;color:#6f706c!important;margin:0!important}.ck-panel-base__group{border:0;padding:0;margin:0;display:grid;gap:6px}.ck-panel-base__group legend{font-size:9px;font-weight:750;display:flex;align-items:center;gap:5px}.ck-panel-base__group legend span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#171717;color:#fff;font-size:8px}.ck-panel-base__buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.ck-panel-base__button,.ck-panel-base__storage-card{appearance:none;background:#fff;border:1px solid #ddd9d2;color:#171717;border-radius:7px;cursor:pointer;font:inherit}.ck-panel-base__button{min-height:36px;font-size:9px}.ck-panel-base__button.is-selected,.ck-panel-base__storage-card.is-selected{border-color:#171717;box-shadow:inset 0 0 0 1px #171717;background:#fff}.ck-panel-base__storage{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.ck-panel-base__storage-card{min-height:58px;padding:7px;text-align:left;display:grid;gap:2px}.ck-panel-base__storage-card strong{font-size:8.5px;line-height:1.15}.ck-panel-base__storage-card small{font-size:7.2px;color:#777}.ck-panel-base__storage-card em{font-size:8px;font-style:normal;font-weight:750;margin-top:2px}.ck-panel-base__summary{display:flex;justify-content:space-between;align-items:end;gap:10px;background:#f0f5ef;border-radius:7px;padding:8px 9px}.ck-panel-base__summary>span:first-child{display:grid}.ck-panel-base__summary strong{font-size:9px}.ck-panel-base__summary small{font-size:7.5px;color:#697069}.ck-panel-base__summary>span:last-child{font-size:10px;font-weight:800}

/* Sofa Club-inspired prominence: rounded, full-width main CTA without price in the button. */
.template-product .product-information .add-to-cart-button.button,.template-product .product-information .add-to-cart-button.button-secondary{border-radius:999px!important;min-height:58px!important;font-weight:800!important;box-shadow:0 7px 18px rgba(0,0,0,.10)!important;transition:transform .15s ease,box-shadow .15s ease,background .15s ease!important}.template-product .product-information .add-to-cart-button:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(0,0,0,.14)!important}.template-product .product-information .add-to-cart-button:active{transform:translateY(0)}
/* Footstool action remains a dark primary add-on CTA. */
.ck-bundle-upsell__button,.ck-bundle-upsell__button--secondary,[class*="footstool-bundle-add-"]{background:#171717!important;color:#fff!important;border-color:#171717!important;border-radius:6px!important}.ck-bundle-upsell__button:hover,.ck-bundle-upsell__button--secondary:hover,[class*="footstool-bundle-add-"]:hover{background:#30302d!important;color:#fff!important}

/* Collection cards: cleaner Sofa Club-style single metadata line. */
.template-collection .ck-card-meta{display:flex!important;gap:0!important;margin-top:2px!important}.template-collection .ck-card-meta span{font-size:10px!important;line-height:1.2!important;color:#6f706b!important}.template-collection .ck-card-meta span+span{display:none!important}

@media(max-width:749px){.ck-bedroom-colours{grid-template-columns:repeat(6,minmax(0,1fr))}.ck-bedroom-fabric{min-height:34px;padding:7px 9px;font-size:9px}.ck-panel-base__storage{grid-template-columns:1fr}.ck-panel-base__storage-card{min-height:50px}.ck-panel-base__buttons{grid-template-columns:repeat(3,1fr)}.template-product .product-information .add-to-cart-button.button,.template-product .product-information .add-to-cart-button.button-secondary{min-height:60px!important}}
@media(max-width:749px){
  .template-product .ck-linked-option{margin-bottom:8px!important}
  .template-product .ck-linked-option__head{margin-bottom:4px!important}
  .template-product .ck-sofa-grid{grid-template-columns:repeat(var(--ck-cols-mobile,5),minmax(0,1fr))!important;gap:4px!important}
  .template-product .ck-sofa-grid.ck-sofa-grid--compact{grid-template-columns:repeat(var(--ck-cols-mobile,5),52px)!important}
  .template-product .ck-sofa-card__label{font-size:9px!important;line-height:1.1!important}
  .template-product .ck-swatch{width:44px!important;height:44px!important}
  .template-product .ck-fabric-chip{min-height:36px!important;padding:7px 9px!important;font-size:10.5px!important}
}

html.ck-bedroom-custom-finish .ck-bed-pdp .ck-variant-picker [data-ck-option-name="size"] legend:before{content:'2'!important}
.ck-bed-config__total{display:flex!important;align-items:center!important;gap:7px!important;width:auto!important;height:auto!important;background:transparent!important;color:#171717!important}.ck-bed-config__total b{font-size:10px;white-space:nowrap}.ck-bed-config__total i{width:21px;height:21px;border-radius:50%;background:#356745;color:#fff;display:grid;place-items:center;font-size:10px;font-style:normal}
.ck-finance-inline{text-decoration:none!important}
