/* Cachet — ported from Shopify theme */
/* == cbm-base.css == */
@import"https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&display=swap";:root{--white: #FFFFFF;--ink: #23282D;--beige: #F1EADD;--orange: #C2643C;--teal: #B15A2E;--stone: #59616B;--rust: #C25E5E;--orange-dark: #A8512E;--teal-dark: #96471F;--bone: #FBF9F4;--sand: var(--beige);--clay: var(--teal);--clay-dark: var(--teal-dark);--sage: var(--teal);--line: rgba(35, 40, 45, .13);--cbm-serif: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--cbm-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--cbm-max: 1440px;--cbm-gutter: clamp(16px, 4vw, 56px);--radius: 12px;--cbm-radius: var(--radius);--cbm-radius-sm: 10px;--cbm-radius-pill: 999px;--cbm-section-y: clamp(56px, 7.5vw, 112px);--cbm-ease: cubic-bezier(.4, 0, .2, 1);--cbm-dur: .32s}.cbm,.cbm *{box-sizing:border-box}body{background:var(--bone)}.cbm{font-family:var(--cbm-sans);color:var(--ink);line-height:1.55;font-size:clamp(.92rem,.874rem + .184vw,.9775rem);-webkit-font-smoothing:antialiased}.cbm h1,.cbm h2,.cbm h3,.cbm h4,.cbm .cbm-h{font-family:var(--cbm-serif);font-weight:500;line-height:1.12;letter-spacing:-.015em;color:var(--ink);margin:0;text-wrap:balance}.cbm h1,.cbm .cbm-h1{font-size:clamp(2.76rem,5.52vw,4.83rem)}.cbm h2,.cbm .cbm-h2{font-size:clamp(2.208rem,4.048vw,3.588rem)}.cbm h3,.cbm .cbm-h3{font-size:clamp(1.748rem,2.852vw,2.392rem)}.cbm h4,.cbm .cbm-h4{font-size:clamp(1.334rem,2.024vw,1.748rem)}.cbm h5,.cbm .cbm-h5{font-size:clamp(1.104rem,1.564vw,1.334rem)}.cbm h6,.cbm .cbm-h6{font-size:1.012rem}.cbm p{margin:0 0 1em}.cbm p:last-child{margin-bottom:0}.cbm a{color:inherit;text-decoration:none}.cbm a:hover{color:var(--clay)}.cbm a.cbm-btn--clay,.cbm a.cbm-btn--teal,.cbm a.cbm-btn--ink,.cbm a.cbm-btn--clay:visited,.cbm a.cbm-btn--teal:visited,.cbm a.cbm-btn--ink:visited{color:var(--white)}.cbm a.cbm-btn--ghost,.cbm a.cbm-btn--ghost:visited{color:var(--ink)}.cbm a.cbm-btn--ghost-light,.cbm a.cbm-btn--ghost-light:visited,.cbm a.cbm-btn--clay:hover,.cbm a.cbm-btn--teal:hover,.cbm a.cbm-btn--ink:hover,.cbm a.cbm-btn--ghost:hover{color:var(--white)}.cbm a.cbm-btn--ghost-light:hover{color:var(--ink)}.cbm-eyebrow{font-family:var(--cbm-sans);font-size:.782rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--stone);margin:0 0 .85rem;display:inline-block}.cbm-eyebrow--stone{color:var(--stone)}.cbm-lede{font-size:clamp(1.012rem,1.38vw,1.196rem);color:var(--stone);max-width:60ch}.cbm-container{width:100%;max-width:var(--cbm-max);margin-inline:auto;padding-inline:var(--cbm-gutter)}.cbm-section{padding-block:var(--cbm-section-y)}.cbm-section--bone{background:var(--bone)}.cbm-section--sand{background:var(--sand)}.cbm-section--white{background:var(--white)}.cbm-section--ink{background:var(--ink);color:var(--bone)}.cbm-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:clamp(1.5rem,3vw,2.75rem);flex-wrap:wrap}.cbm-section-head__text{max-width:60ch}.cbm-viewall{font-family:var(--cbm-sans);font-size:.92rem;font-weight:600;color:var(--ink);border-bottom:1.5px solid var(--ink);padding-bottom:2px;white-space:nowrap;transition:color var(--cbm-dur) var(--cbm-ease),border-color var(--cbm-dur) var(--cbm-ease)}.cbm-viewall:hover{color:var(--clay);border-color:var(--clay)}.cbm-btn{font-family:var(--cbm-sans);font-weight:500;line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-size:.92rem;padding:.95rem 1.7rem;border-radius:var(--cbm-radius-pill);border:1.5px solid transparent;cursor:pointer;transition:background var(--cbm-dur) var(--cbm-ease),color var(--cbm-dur) var(--cbm-ease),border-color var(--cbm-dur) var(--cbm-ease),transform var(--cbm-dur) var(--cbm-ease);text-align:center;-webkit-appearance:none;appearance:none}.cbm-btn:active{transform:translateY(1px)}.cbm-btn--clay{background:var(--orange);color:var(--white);border-color:var(--orange)}.cbm-btn--clay:hover{background:var(--orange-dark);border-color:var(--orange-dark);color:var(--white)}.cbm-btn--teal{background:var(--teal);color:var(--white);border-color:var(--teal)}.cbm-btn--teal:hover{background:var(--teal-dark);border-color:var(--teal-dark);color:var(--white)}.cbm-btn--ink{background:var(--ink);color:var(--white);border-color:var(--ink)}.cbm-btn--ink:hover{background:#101418;color:var(--white)}.cbm-btn--ghost{background:transparent;color:var(--ink);border-color:currentColor}.cbm-btn--ghost:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}.cbm-section--ink .cbm-btn--ghost,.cbm-btn--ghost-light{color:var(--bone);border-color:#f6f4f08c}.cbm-section--ink .cbm-btn--ghost:hover,.cbm-btn--ghost-light:hover{background:var(--bone);color:var(--ink);border-color:var(--bone)}.cbm-btn--block{width:100%}.cbm-btn--lg{padding:1.1rem 2.1rem;font-size:.9775rem}.cbm-link{font-family:var(--cbm-sans);font-weight:600;font-size:.874rem;color:var(--clay);display:inline-flex;align-items:center;gap:.4em}.cbm-link svg{transition:transform var(--cbm-dur) var(--cbm-ease)}.cbm-link:hover svg{transform:translate(3px)}.cbm-badge{font-family:var(--cbm-sans);font-size:.6256rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.45em .8em;border-radius:var(--cbm-radius-pill);line-height:1;display:inline-flex;align-items:center;white-space:nowrap}.cbm-badge--new{background:var(--ink);color:var(--white)}.cbm-badge--new-size{background:var(--white);color:var(--ink);border:1px solid var(--ink)}.cbm-badge--best{background:var(--beige);color:var(--ink)}.cbm-badge--exclusive{background:var(--teal);color:var(--white)}.cbm-badge--sale{background:var(--rust);color:var(--white)}.cbm-badge--rts{color:var(--teal);background:#0f6e5c1f}.cbm-pill{font-family:var(--cbm-sans);font-size:.8096rem;font-weight:500;padding:.6em 1.1em;border-radius:var(--cbm-radius-pill);background:var(--white);border:1px solid var(--line);color:var(--ink);white-space:nowrap;transition:background var(--cbm-dur) var(--cbm-ease),border-color var(--cbm-dur) var(--cbm-ease),color var(--cbm-dur) var(--cbm-ease)}.cbm-pill:hover{background:var(--beige);border-color:var(--beige);color:var(--ink)}.cbm-pill[aria-pressed=true],.cbm-pill.is-active{background:var(--clay);border-color:var(--clay);color:var(--white)}.cbm-media{display:block;position:relative;width:100%;aspect-ratio:3 / 2;overflow:hidden;border-radius:var(--cbm-radius);background:var(--white)}.cbm-media>img,.cbm-media>video,.cbm-media>iframe,.cbm-media>svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.cbm-media--contain>img,.cbm-media--contain>video{object-fit:contain;padding:6%}.cbm-media--cover>img,.cbm-media--cover>video{object-fit:cover;padding:0}.cbm-media--reel{background:#efece7}.cbm-media--reel>video{object-fit:contain}.cbm-rating{display:inline-flex;align-items:center;gap:.35em;font-family:var(--cbm-sans);font-size:.782rem;color:var(--ink)}.cbm-rating__stars{--pct: 100%;display:inline-block;font-size:.95em;line-height:1;background:linear-gradient(90deg,var(--ink) var(--pct),rgba(89,97,107,.3) var(--pct));-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.05em}.cbm-rating__stars:before{content:"\2605\2605\2605\2605\2605"}.cbm-rating__count{color:var(--stone)}.cbm-swatches{display:flex;align-items:center;gap:.4rem;flex-wrap:nowrap}.cbm-swatch{width:18px;height:18px;border-radius:50%;border:1px solid var(--line);background-size:cover;background-position:center;cursor:pointer;padding:0;flex:0 0 auto;transition:transform var(--cbm-dur) var(--cbm-ease),box-shadow var(--cbm-dur) var(--cbm-ease)}.cbm-swatch.is-active,.cbm-swatch:hover{box-shadow:0 0 0 1.5px var(--white),0 0 0 3px var(--ink)}.cbm-swatch--more{width:auto;height:auto;border:0;border-radius:0;font-family:var(--cbm-sans);font-size:.7176rem;color:var(--stone);white-space:nowrap;background:none}.cbm-card{position:relative;display:flex;flex-direction:column;background:#f6f5f1;border:1px solid var(--line);border-radius:16px;padding:.75rem .75rem 1.125rem;transition:box-shadow var(--cbm-dur) var(--cbm-ease),transform var(--cbm-dur) var(--cbm-ease)}.cbm-card:hover{box-shadow:0 14px 32px #23282d1a;transform:translateY(-2px)}.cbm-card__media{position:relative;margin-bottom:.875rem}.cbm-card__media .cbm-media{aspect-ratio:3 / 2;background:#f6f5f1;border-radius:10px}.cbm-card:hover .cbm-card__media .cbm-media img{transform:scale(1.03)}.cbm-card__media .cbm-media img{transition:transform .5s var(--cbm-ease)}.cbm-card__badges{position:absolute;top:.85rem;left:.85rem;display:flex;flex-direction:column;gap:.4rem;z-index:2}.cbm-card__badge-br{position:absolute;bottom:.85rem;right:.85rem;z-index:2}.cbm-card__body{display:flex;flex-direction:column;gap:.4375rem}.cbm-card__body .cbm-swatches{order:-1}.cbm-card__titlerow{display:flex;flex-direction:column;align-items:flex-start;gap:.125rem}.cbm-card__title{font-family:var(--cbm-sans);font-size:.9775rem;font-weight:500;line-height:1.3;color:var(--ink)}.cbm-card__title a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.cbm-card__price{font-family:var(--cbm-sans);font-weight:400;font-size:.92rem;color:var(--stone);white-space:nowrap}.cbm-card__price .cbm-price__compare{color:var(--stone);text-decoration:line-through;margin-right:.4em;font-weight:400}.cbm-card__price .cbm-price__sale{color:var(--rust)}.cbm-card__subtitle{font-size:.782rem;color:var(--stone);margin:-.1rem 0 0}.cbm-card__rating{display:inline-flex;align-items:center;gap:.3em;font-size:.782rem;color:var(--ink)}.cbm-card__rating svg{color:var(--ink)}.cbm-card__rating-num{font-weight:500}.cbm-card__delivery{font-family:var(--cbm-sans);font-size:.7176rem;color:var(--ink);background:var(--sand);border-radius:var(--cbm-radius-pill);padding:.4em .85em;align-self:flex-start}.cbm-card .cbm-swatches,.cbm-card__delivery,.cbm-card__rating{position:relative;z-index:2}.cbm-card .cbm-swatch{width:22px;height:22px}.cbm-card .cbm-swatch--more{font-size:.736rem;margin-left:.15rem}.cbm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1a1a73;opacity:0;visibility:hidden;transition:opacity var(--cbm-dur) var(--cbm-ease),visibility var(--cbm-dur) var(--cbm-ease);z-index:60}.cbm-overlay.is-open{opacity:1;visibility:visible}body.cbm-no-scroll{overflow:hidden}.cbm-field{font-family:var(--cbm-sans);font-size:.874rem;width:100%;padding:.9rem 1.1rem;border:1px solid var(--line);border-radius:var(--cbm-radius-sm);background:var(--white);color:var(--ink)}.cbm-field:focus{outline:none;border-color:var(--clay);box-shadow:0 0 0 3px #b5764f26}.cbm-field::placeholder{color:var(--stone)}.cbm-label{font-family:var(--cbm-sans);font-size:.736rem;font-weight:600;color:var(--ink);display:block;margin-bottom:.4rem}.cbm-form-success{color:var(--sage);font-size:.828rem}.cbm-form-error{color:var(--rust);font-size:.828rem}.cbm :focus-visible,.cbm-focusable:focus-visible{outline:2px solid var(--clay);outline-offset:2px;border-radius:4px}.cbm-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.cbm *,.cbm *:before,.cbm *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.cbm-scroller{display:flex;gap:clamp(.75rem,2vw,1.5rem);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}.cbm-scroller::-webkit-scrollbar{display:none}.cbm-scroller>*{scroll-snap-align:start;flex:0 0 auto}
/*# sourceMappingURL=/cdn/shop/t/1/assets/cbm-base.css.map */

/* == cachet.css == */
@import"https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&display=swap";:root{--cb-ink: #23282d;--cb-body-c: #59616b;--cb-soft: #8c9299;--cb-canvas: #fbf9f4;--cb-porcelain: #f1eadd;--cb-sand: #f1eadd;--cb-line: rgba(35, 40, 45, .13);--cb-accent: #b15a2e;--cb-dark: #23282d;--cb-radius: 16px;--cb-radius-sm: 10px;--cb-shadow: 0 14px 32px rgba(35, 40, 45, .1);--cb-font-head: "DM Sans", -apple-system, "Helvetica Neue", sans-serif;--cb-font-body: "DM Sans", -apple-system, "Helvetica Neue", sans-serif;--cb-max: 1200px}h1,h2,h3,h4,.h1,.h2,.h3{font-family:var(--cb-font-head)!important;letter-spacing:-.02em}.cb-wrap{max-width:var(--cb-max);margin:0 auto;padding:0 24px}.cb-eyebrow{display:inline-flex;align-items:center;gap:8px;font:600 11px/1 var(--cb-font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--cb-accent);margin-bottom:18px}.cb-eyebrow:before{content:"";width:26px;height:1px;background:var(--cb-accent)}.cb-h1{font:500 clamp(34px,5.2vw,58px)/1.08 var(--cb-font-head);color:var(--cb-ink);letter-spacing:-.025em;margin:0 0 18px}.cb-h2{font:500 clamp(26px,3.4vw,40px)/1.15 var(--cb-font-head);color:var(--cb-ink);letter-spacing:-.02em;margin:0 0 14px}.cb-h3{font:600 20px/1.3 var(--cb-font-head);color:var(--cb-ink);margin:0 0 8px}.cb-lead{font:400 17px/1.65 var(--cb-font-body);color:var(--cb-body-c);max-width:640px;margin:0 0 8px}.cb-p{font:400 15px/1.7 var(--cb-font-body);color:var(--cb-body-c);margin:0}.cb-center{text-align:center}.cb-center .cb-lead{margin-inline:auto}.cb-section{padding:clamp(56px,8vw,96px) 0;background:var(--cb-canvas)}.cb-section--alt{background:var(--cb-porcelain)}.cb-section--dark{background:var(--cb-dark)}.cb-section--dark .cb-h2,.cb-section--dark .cb-h1{color:#fff}.cb-section--dark .cb-lead,.cb-section--dark .cb-p{color:#ffffffb8}.cb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 15px/1 var(--cb-font-body);letter-spacing:.01em;padding:17px 34px;border-radius:999px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}.cb-btn svg{width:16px;height:16px;transition:transform .18s ease}.cb-btn:hover svg{transform:translate(3px)}.cb-btn--primary{background:#c2643c;color:#fff!important}.cb-btn--primary:hover{transform:translateY(-2px);box-shadow:var(--cb-shadow);background:#a8512e}.cb-btn--light{background:#fff;color:var(--cb-ink)!important}.cb-btn--light:hover{transform:translateY(-2px);box-shadow:0 18px 45px -22px #00000080}.cb-btn--ghost{background:transparent;color:var(--cb-ink)!important;border-color:var(--cb-ink)}.cb-btn--ghost:hover{background:var(--cb-ink);color:#fff!important}.cb-btn--ghost-light{background:transparent;color:#fff!important;border-color:#ffffff8c}.cb-btn--ghost-light:hover{background:#fff;color:var(--cb-ink)!important;border-color:#fff}.cb-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--cb-line);border-radius:999px;padding:9px 16px;font:600 13px/1 var(--cb-font-body);color:var(--cb-ink)}.cb-badge .cb-stars{color:#eab308;letter-spacing:1px;font-size:12px}.cb-leaf{color:#c0392b}.cb-hero{position:relative;min-height:min(88vh,780px);display:flex;align-items:flex-end;overflow:hidden;background:var(--cb-dark)}.cb-hero__media,.cb-hero__media img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.cb-hero__media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0a0c0fd1,#0a0c0f59 45%,#0a0c0f2e)}.cb-hero__inner{position:relative;z-index:2;width:100%;padding:clamp(48px,7vw,88px) 0}.cb-hero__kicker{display:inline-flex;align-items:center;gap:10px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;padding:9px 18px;font:600 12px/1 var(--cb-font-body);letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:22px}.cb-hero h1{font:500 clamp(36px,5.6vw,64px)/1.06 var(--cb-font-head);color:#fff;letter-spacing:-.025em;margin:0 0 18px;max-width:720px}.cb-hero p{font:400 17px/1.6 var(--cb-font-body);color:#ffffffd9;max-width:560px;margin:0 0 30px}.cb-hero__cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.cb-hero__proof{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.2)}.cb-hero__proof-item{display:flex;align-items:center;gap:10px;color:#ffffffe6;font:500 13.5px/1.3 var(--cb-font-body)}.cb-hero__proof-item strong{display:block;font:700 17px/1.1 var(--cb-font-head);color:#fff}.cb-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cb-cat{position:relative;display:block;border-radius:var(--cb-radius);overflow:hidden;aspect-ratio:4 / 5;text-decoration:none;background:var(--cb-dark)}.cb-cat img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.6,.2,1)}.cb-cat:hover img{transform:scale(1.05)}.cb-cat:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0a0c0fc7,#0a0c0f0d 55%)}.cb-cat__body{position:absolute;z-index:2;inset-inline:0;bottom:0;padding:26px}.cb-cat__tag{font:600 11px/1 var(--cb-font-body);letter-spacing:.18em;text-transform:uppercase;color:#ffffffbf}.cb-cat__title{font:700 24px/1.2 var(--cb-font-head);color:#fff;margin:8px 0 6px}.cb-cat__desc{font:400 13.5px/1.55 var(--cb-font-body);color:#fffc;margin:0 0 14px}.cb-cat__link{display:inline-flex;align-items:center;gap:8px;font:600 13.5px/1 var(--cb-font-body);color:#fff}.cb-cat__link svg{width:15px;height:15px;transition:transform .18s ease}.cb-cat:hover .cb-cat__link svg{transform:translate(4px)}.cb-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cb-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cb-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.cb-card{background:#fff;border:1px solid var(--cb-line);border-radius:var(--cb-radius);padding:30px 26px;transition:transform .2s ease,box-shadow .2s ease}.cb-card:hover{transform:translateY(-4px);box-shadow:var(--cb-shadow)}.cb-card__icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--cb-sand);color:var(--cb-ink);margin-bottom:18px}.cb-card__icon svg{width:22px;height:22px}.cb-card h3{font:600 17px/1.3 var(--cb-font-head);color:var(--cb-ink);margin:0 0 8px}.cb-card p{font:400 14px/1.65 var(--cb-font-body);color:var(--cb-body-c);margin:0}.cb-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:cbstep}.cb-step{position:relative;background:#fff;border:1px solid var(--cb-line);border-radius:var(--cb-radius);padding:30px 24px}.cb-step__num{font:700 13px/1 var(--cb-font-head);color:var(--cb-accent);letter-spacing:.14em;margin-bottom:14px;display:block}.cb-step h3{font:600 17px/1.3 var(--cb-font-head);margin:0 0 8px;color:var(--cb-ink)}.cb-step p{font:400 13.5px/1.6 var(--cb-font-body);color:var(--cb-body-c);margin:0}.cb-reviews-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px;flex-wrap:wrap}.cb-rev-score{display:flex;align-items:center;gap:14px}.cb-rev-score__num{font:700 44px/1 var(--cb-font-head);color:var(--cb-ink)}.cb-rev-score__meta{font:500 13px/1.4 var(--cb-font-body);color:var(--cb-body-c)}.cb-rev-score__meta .cb-stars{color:#eab308;font-size:15px;letter-spacing:2px;display:block;margin-bottom:3px}.cb-rev-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(310px,380px);gap:18px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.cb-review{scroll-snap-align:start;background:#fff;border:1px solid var(--cb-line);border-radius:var(--cb-radius);padding:26px;display:flex;flex-direction:column;gap:12px}.cb-review .cb-stars{color:#eab308;letter-spacing:2px;font-size:14px}.cb-review p{font:400 14px/1.65 var(--cb-font-body);color:var(--cb-body-c);margin:0;flex:1}.cb-review footer{font:600 13.5px/1.3 var(--cb-font-body);color:var(--cb-ink);display:flex;align-items:center;gap:10px}.cb-review footer .cb-avatar{width:34px;height:34px;border-radius:50%;background:var(--cb-sand);color:var(--cb-ink);display:inline-flex;align-items:center;justify-content:center;font:700 13px/1 var(--cb-font-head)}.cb-review footer span small{display:block;font:400 11.5px/1.3 var(--cb-font-body);color:var(--cb-soft)}.cb-band{position:relative;border-radius:var(--cb-radius);overflow:hidden;background:var(--cb-dark)}.cb-band__media,.cb-band__media img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.cb-band__media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,#0a0c0fe6 25%,#0a0c0f73)}.cb-band__inner{position:relative;z-index:2;padding:clamp(44px,6vw,72px);max-width:620px}.cb-band__inner h2{font:500 clamp(26px,3.4vw,38px)/1.15 var(--cb-font-head);color:#fff;margin:0 0 12px;letter-spacing:-.02em}.cb-band__inner p{font:400 15.5px/1.6 var(--cb-font-body);color:#ffffffd1;margin:0 0 26px}.cb-crumbs{font:500 12.5px/1 var(--cb-font-body);color:var(--cb-soft);display:flex;gap:8px;align-items:center;padding:22px 0 0}.cb-crumbs a{color:var(--cb-soft);text-decoration:none}.cb-crumbs a:hover{color:var(--cb-ink)}.cb-pdp{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,60px);padding:26px 0 clamp(56px,7vw,80px);align-items:start}.cb-gallery{position:sticky;top:90px}.cb-gallery__main{border-radius:var(--cb-radius);overflow:hidden;background:var(--cb-porcelain);margin-bottom:12px;cursor:grab}.cb-gallery__main:active{cursor:grabbing}.cb-gallery__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.cb-gallery__track::-webkit-scrollbar{display:none}.cb-gallery__slide{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:4 / 3}.cb-gallery__slide img{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.cb-gallery__thumbs{display:flex;gap:10px;flex-wrap:wrap}.cb-gallery__thumb{width:72px;height:72px;border-radius:10px;overflow:hidden;border:2px solid transparent;cursor:pointer;padding:0;background:var(--cb-porcelain)}.cb-gallery__thumb img{width:100%;height:100%;object-fit:cover;display:block}.cb-gallery__thumb.is-active{border-color:var(--cb-ink)}.cb-pinfo .cb-eyebrow{margin-bottom:12px}.cb-pinfo h1{font:500 clamp(30px,3.6vw,42px)/1.1 var(--cb-font-head);color:var(--cb-ink);letter-spacing:-.02em;margin:0 0 14px}.cb-pinfo__desc{font:400 15.5px/1.7 var(--cb-font-body);color:var(--cb-body-c);margin-bottom:24px}.cb-pinfo__desc p{margin:0 0 10px}.cb-checks{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:11px}.cb-checks li{display:flex;gap:11px;align-items:flex-start;font:500 14.5px/1.5 var(--cb-font-body);color:var(--cb-ink)}.cb-checks li svg{width:18px;height:18px;color:var(--cb-accent);flex:none;margin-top:2px}.cb-pinfo__cta{display:flex;flex-direction:column;gap:12px;padding:22px;background:var(--cb-porcelain);border-radius:var(--cb-radius);margin-bottom:28px}.cb-pinfo__cta .cb-note{font:400 12.5px/1.5 var(--cb-font-body);color:var(--cb-soft);text-align:center;margin:0}.cb-pinfo__phone{text-align:center;font:500 13.5px/1.4 var(--cb-font-body);color:var(--cb-body-c)}.cb-pinfo__phone a{color:var(--cb-ink);font-weight:700;text-decoration:none}.cb-fabrics{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}.cb-fabric{width:64px;text-align:center}.cb-fabric img{width:64px;height:64px;object-fit:cover;border-radius:50%;border:1px solid var(--cb-line);display:block;margin-bottom:6px}.cb-fabric span{font:500 11px/1.2 var(--cb-font-body);color:var(--cb-soft)}.cb-acc{border-top:1px solid var(--cb-line)}.cb-acc details{border-bottom:1px solid var(--cb-line)}.cb-acc summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 2px;cursor:pointer;list-style:none;font:600 15px/1.3 var(--cb-font-head);color:var(--cb-ink)}.cb-acc summary::-webkit-details-marker{display:none}.cb-acc summary:after{content:"+";font:400 22px/1 var(--cb-font-body);color:var(--cb-soft);transition:transform .2s ease}.cb-acc details[open] summary:after{transform:rotate(45deg)}.cb-acc .cb-acc__body{padding:0 2px 20px;font:400 14px/1.7 var(--cb-font-body);color:var(--cb-body-c)}.cb-acc .cb-acc__body p{margin:0 0 10px}.cb-acc .cb-acc__body ul{margin:0 0 10px;padding-left:18px}.cb-more{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.cb-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cb-form .cb-field--full{grid-column:1 / -1}.cb-field label{display:block;font:600 12.5px/1 var(--cb-font-body);color:var(--cb-ink);margin-bottom:7px;letter-spacing:.02em}.cb-field label small{font-weight:400;color:var(--cb-soft)}.cb-field input,.cb-field select,.cb-field textarea{width:100%;box-sizing:border-box;padding:14px 16px;border-radius:var(--cb-radius-sm);border:1px solid var(--cb-line);background:#fff;color:var(--cb-ink);font:400 14.5px/1.4 var(--cb-font-body);transition:border-color .15s ease,box-shadow .15s ease}.cb-field input:focus,.cb-field select:focus,.cb-field textarea:focus{outline:none;border-color:var(--cb-ink);box-shadow:0 0 0 3px #16181c14}.cb-field textarea{min-height:120px;resize:vertical}.cb-form__foot{grid-column:1 / -1;display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:6px}.cb-form__foot .cb-note{font:400 12.5px/1.5 var(--cb-font-body);color:var(--cb-soft);margin:0}.cb-alert{grid-column:1 / -1;border-radius:var(--cb-radius-sm);padding:16px 18px;font:500 14px/1.5 var(--cb-font-body)}.cb-alert--ok{background:#eef6ee;color:#1e5631;border:1px solid #cfe6cf}.cb-alert--err{background:#fdf0ef;color:#92312a;border:1px solid #f3d3d0}.cb-pills{display:flex;gap:8px;flex-wrap:wrap}.cb-pill{position:relative}.cb-pill input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.cb-pill span{display:inline-block;padding:10px 18px;border-radius:999px;border:1px solid var(--cb-line);font:500 13.5px/1 var(--cb-font-body);color:var(--cb-body-c);background:#fff;transition:all .15s ease;cursor:pointer}.cb-pill input:checked+span{background:var(--cb-ink);color:#fff;border-color:var(--cb-ink)}.cb-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}.cb-split__media{border-radius:var(--cb-radius);overflow:hidden}.cb-split__media img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4 / 3.4}.cb-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cb-stat{text-align:center;padding:26px 14px;border-radius:var(--cb-radius);background:#ffffff0f;border:1px solid rgba(255,255,255,.12)}.cb-stat strong{display:block;font:500 clamp(26px,3vw,36px)/1.1 var(--cb-font-head);color:#fff;margin-bottom:6px}.cb-stat span{font:500 12.5px/1.4 var(--cb-font-body);color:#ffffffa6;letter-spacing:.06em;text-transform:uppercase}.cb-footer{background:var(--cb-dark);color:#ffffffb8}.cb-footer__main{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:40px;padding:clamp(48px,6vw,72px) 0 40px}.cb-footer__brand img{height:30px;width:auto;margin-bottom:18px}.cb-footer__brand p{font:400 13.5px/1.7 var(--cb-font-body);margin:0 0 20px;max-width:300px}.cb-footer h4{font:600 13px/1 var(--cb-font-head);letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:0 0 18px}.cb-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}.cb-footer ul a{font:400 14px/1.4 var(--cb-font-body);color:#ffffffb8;text-decoration:none;transition:color .15s ease}.cb-footer ul a:hover{color:#fff}.cb-footer__contact li{display:flex;gap:10px;font:400 13.5px/1.55 var(--cb-font-body);color:#ffffffb8}.cb-footer__contact svg{width:16px;height:16px;flex:none;margin-top:3px;color:var(--cb-accent)}.cb-footer__contact a{color:#ffffffd9;text-decoration:none}.cb-footer__contact a:hover{color:#fff}.cb-social{display:flex;gap:10px}.cb-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:inline-flex;align-items:center;justify-content:center;color:#fffc;transition:all .15s ease}.cb-social a:hover{background:#fff;color:var(--cb-dark);border-color:#fff}.cb-social svg{width:16px;height:16px}.cb-footer__bar{border-top:1px solid rgba(255,255,255,.12);padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font:400 12.5px/1.5 var(--cb-font-body);color:#ffffff73}.cb-footer__bar a{color:#ffffffa6;text-decoration:none}.cb-footer__bar a:hover{color:#fff}.cb-phero{background:var(--cb-porcelain);padding:clamp(48px,6vw,76px) 0}.cb-phero .cb-lead{max-width:700px}.cb-dealer-hero{position:relative;background:var(--cb-dark);overflow:hidden}.cb-dealer-hero__inner{position:relative;z-index:2;padding:clamp(56px,8vw,100px) 0;max-width:660px}.cb-dealer-hero__inner h1{font:500 clamp(32px,4.6vw,52px)/1.1 var(--cb-font-head);color:#fff;letter-spacing:-.025em;margin:0 0 16px}.cb-dealer-hero__inner p{font:400 16.5px/1.65 var(--cb-font-body);color:#fffc;margin:0 0 28px}.cb-mt-40{margin-top:40px}.cb-mt-24{margin-top:24px}.cb-head-gap{margin-bottom:clamp(30px,4vw,48px)}@media(max-width:990px){.cb-cats,.cb-grid-3,.cb-grid-4,.cb-steps,.cb-stats{grid-template-columns:1fr 1fr}.cb-pdp{grid-template-columns:1fr}.cb-gallery{position:static}.cb-split{grid-template-columns:1fr}.cb-footer__main{grid-template-columns:1fr 1fr}}@media(max-width:640px){.cb-cats,.cb-grid-3,.cb-grid-2,.cb-grid-4,.cb-steps,.cb-more,.cb-form{grid-template-columns:1fr}.cb-footer__main{grid-template-columns:1fr;gap:32px}.cb-hero{min-height:76vh}.cb-stats{grid-template-columns:1fr 1fr}.cb-rev-track{grid-auto-columns:86%}}body{background:var(--cb-canvas)}
/*# sourceMappingURL=/cdn/shop/t/1/assets/cachet.css.map */

/* == cbm-home.css == */
body:has(.cbm-hero) .cbm-container{max-width:none;padding-inline:clamp(16px,4vw,72px)}.cbm-hero{position:relative}.cbm-hero__media{position:relative;width:100%;height:clamp(440px,78vh,820px);overflow:hidden;background:var(--ink)}.cbm-hero__media img,.cbm-hero__media video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.cbm-hero__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1a1a1a26,#1a1a1a0d 40%,#1a1a1a8c)}.cbm-hero__content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:clamp(2.5rem,6vw,5rem);color:var(--white)}.cbm-hero__content .cbm-container{width:100%}.cbm-hero__inner{max-width:720px}.cbm-hero__eyebrow{color:var(--white);opacity:.9}.cbm .cbm-hero__title,.cbm-hero__title{color:var(--white);font-size:clamp(2.76rem,5.52vw,5.06rem);line-height:1.06;font-weight:500}.cbm-hero__sub{color:var(--white);font-size:clamp(1.012rem,1.38vw,1.196rem);max-width:52ch;margin:.9rem 0 1.4rem;opacity:.95}.cbm-hero__ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:clamp(1.125rem,2.4vw,1.625rem)}.cbm-hero__sub+.cbm-hero__ctas{margin-top:0}.cbm-hero[data-align=center] .cbm-hero__content{align-items:center;text-align:center}.cbm-hero[data-align=center] .cbm-hero__inner{margin:0 auto}.cbm-hero[data-align=center] .cbm-hero__ctas{justify-content:center}.cbm-collgrid__head{text-align:center;margin-bottom:clamp(1.5rem,3vw,2.5rem)}.cbm-collgrid__head .cbm-eyebrow{color:var(--teal)}.cbm-collgrid__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(.75rem,1.6vw,1.25rem)}@media(min-width:750px){.cbm-collgrid__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.cbm-collgrid__grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1160px){.cbm-collgrid__grid{grid-template-columns:repeat(4,1fr)}}.cbm-collgrid__tile{display:flex;flex-direction:column;background:var(--white);border-radius:16px;overflow:hidden;transition:transform var(--cbm-dur) var(--cbm-ease),box-shadow var(--cbm-dur) var(--cbm-ease)}.cbm-collgrid__tile:hover{transform:translateY(-4px);box-shadow:0 18px 40px #23282d1f}.cbm-collgrid__media{aspect-ratio:4 / 3.4;background:var(--beige);width:100%;border-radius:0}.cbm-collgrid__media img{padding:0;object-fit:cover}.cbm-collgrid__tile:hover .cbm-collgrid__media img{transform:scale(1.05)}.cbm-collgrid__media img{transition:transform .6s var(--cbm-ease)}.cbm-collgrid__title{font-family:var(--cbm-serif);font-size:clamp(1.38rem,1.932vw,1.725rem);font-weight:400;color:var(--teal);text-align:center;padding:.9375rem 1rem 1.1875rem;display:inline-flex;align-items:center;justify-content:center;gap:.4em}.cbm-collgrid__title:after{content:"\27f6";font-size:.6em;opacity:0;transform:translate(-6px);transition:opacity var(--cbm-dur) var(--cbm-ease),transform var(--cbm-dur) var(--cbm-ease)}.cbm-collgrid__tile:hover .cbm-collgrid__title{color:var(--teal-dark)}.cbm-collgrid__tile:hover .cbm-collgrid__title:after{opacity:1;transform:translate(0)}.cbm-swapshow__grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,3.5vw,3.5rem);align-items:center}@media(min-width:750px){.cbm-swapshow__grid{grid-template-columns:minmax(260px,.8fr) 1.4fr}}.cbm-swapshow__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(.5rem,1.2vw,1rem)}.cbm-swapshow__link{font-family:var(--cbm-serif);font-size:clamp(2.208rem,3.864vw,3.45rem);line-height:1.15;color:var(--ink);display:inline-flex;align-items:center;gap:.45em;transition:color var(--cbm-dur) var(--cbm-ease)}.cbm-swapshow__item.is-active .cbm-swapshow__link{color:var(--ink)}.cbm-swapshow__item:not(.is-active) .cbm-swapshow__link{color:#23282d8c}.cbm-swapshow__item:not(.is-active) .cbm-swapshow__link:hover{color:var(--ink)}.cbm-swapshow__arrow{font-size:.55em;opacity:0;transform:translate(-6px);transition:opacity var(--cbm-dur) var(--cbm-ease),transform var(--cbm-dur) var(--cbm-ease);color:var(--ink)}.cbm-swapshow__item.is-active .cbm-swapshow__arrow{opacity:1;transform:translate(0)}.cbm-swapshow__sub{font-family:var(--cbm-sans);font-size:.92rem;color:var(--stone);margin:.15rem 0 0 .1rem;display:block}.cbm-swapshow__media{position:relative;display:block}.cbm-swapshow__media .cbm-media{aspect-ratio:3/2}.cbm-swapshow__pane{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .45s var(--cbm-ease)}.cbm-swapshow__pane.is-active{opacity:1}.cbm-swapshow__pane img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.cbm-swapshow__caption{position:absolute;left:1.25rem;bottom:1rem;z-index:2;font-family:var(--cbm-serif);font-size:clamp(1.242rem,1.84vw,1.61rem);color:var(--white);text-shadow:0 2px 14px rgba(35,40,45,.45);pointer-events:none}.cbm-bestsellers__scroller .cbm-card{width:clamp(240px,60vw,340px)}@media(min-width:750px){.cbm-bestsellers__scroller .cbm-card{width:320px}}.cbm-trustbar__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.25rem,3vw,2.5rem)}.cbm-trustbar__item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem}.cbm-trustbar__item .cbm-trust-ic{color:var(--clay)}.cbm-trustbar__item p{font-family:var(--cbm-sans);font-size:.966rem;color:var(--ink);margin:0;max-width:22ch}@media(min-width:750px){.cbm-trustbar__grid{grid-template-columns:repeat(4,1fr)}}.cbm-collections__grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,3vw,2.5rem)}.cbm-collcard{display:block}.cbm-collcard .cbm-media{aspect-ratio:4/3;margin-bottom:1rem}.cbm-collcard:hover .cbm-media img{transform:scale(1.03)}.cbm-collcard .cbm-media img{transition:transform .6s var(--cbm-ease)}.cbm-collcard__title{font-family:var(--cbm-serif);font-size:clamp(1.472rem,2.208vw,1.84rem);color:var(--ink);margin:.25rem 0}.cbm-collcard__desc{color:var(--stone);font-size:.966rem;margin:0 0 .6rem;max-width:40ch}@media(min-width:750px){.cbm-collections__grid{grid-template-columns:repeat(3,1fr)}}.cbm-realhomes__row{display:grid;grid-template-columns:1fr;gap:clamp(.75rem,2vw,1.25rem);margin-bottom:clamp(1.5rem,3vw,2.5rem)}.cbm-realhomes__row:last-child{margin-bottom:0}.cbm-realhomes__pane{position:relative}.cbm-realhomes__tag{position:absolute;top:.75rem;left:.75rem;z-index:2;font-family:var(--cbm-sans);font-size:.6256rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.35em .7em;border-radius:var(--cbm-radius-pill);background:var(--white);color:var(--ink)}.cbm-realhomes__tag--real{background:var(--clay);color:var(--white)}.cbm-realhomes__caption{font-family:var(--cbm-sans);font-size:.874rem;color:var(--stone);margin-top:.6rem}@media(min-width:750px){.cbm-realhomes__row{grid-template-columns:1fr 1fr;align-items:start}.cbm-realhomes__row--reverse .cbm-realhomes__pane:first-child{order:2}}.cbm-reviews__stat{text-align:center;margin-bottom:clamp(1.5rem,3vw,2.5rem)}.cbm-reviews__stat-num{font-family:var(--cbm-serif);font-size:clamp(2.3rem,4.6vw,3.68rem);color:var(--ink);display:block;line-height:1}.cbm-reviews__grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,2vw,1.5rem)}.cbm-quote{background:var(--white);border-radius:var(--cbm-radius);padding:clamp(1.25rem,2.5vw,2rem);display:flex;flex-direction:column;gap:.85rem;border:1px solid var(--line)}.cbm-quote__text{font-family:var(--cbm-serif);font-size:1.288rem;line-height:1.4;color:var(--ink)}.cbm-quote__meta{font-family:var(--cbm-sans);font-size:.874rem;color:var(--stone);margin-top:auto}.cbm-quote__name{color:var(--ink);font-weight:600}@media(min-width:750px){.cbm-reviews__grid{grid-template-columns:repeat(3,1fr)}}.cbm-founder__grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.cbm-founder__media .cbm-media{aspect-ratio:4/5}.cbm-founder__body{max-width:52ch}.cbm-founder__body p{color:var(--stone)}.cbm-founder__sign{font-family:var(--cbm-serif);font-style:italic;color:var(--ink);margin-top:1rem}@media(min-width:750px){.cbm-founder__grid{grid-template-columns:.9fr 1.1fr}}.cbm-flagship{position:relative;overflow:hidden}.cbm-flagship__media{position:relative;height:clamp(380px,60vh,620px)}.cbm-flagship__media img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.cbm-flagship__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#141619cc,#14161959 60%,#1416191a)}.cbm-flagship__content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;color:var(--white)}.cbm-flagship__inner{max-width:520px}.cbm .cbm-flagship__inner h2,.cbm .cbm-flagship__inner p,.cbm-flagship__inner h2,.cbm-flagship__inner p{color:var(--white)}.cbm-flagship__inner p{opacity:.95;margin:.75rem 0 1.5rem}.cbm-flagship__addr{font-family:var(--cbm-sans);font-size:.874rem;display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.cbm-newsletter{text-align:center}.cbm-newsletter__inner{max-width:560px;margin:0 auto}.cbm-newsletter p{color:var(--stone);margin:.5rem 0 1.5rem}.cbm-newsletter__form{display:flex;gap:.6rem;max-width:460px;margin:0 auto}.cbm-newsletter__form .cbm-field{flex:1}.cbm-newsletter__msg{margin-top:.75rem}.cbm-scroll-arrows{display:none;gap:.4rem}.cbm-scroll-arrows button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--cbm-dur) var(--cbm-ease),border-color var(--cbm-dur) var(--cbm-ease)}.cbm-scroll-arrows button:hover{background:var(--sand)}.cbm-scroll-arrows button:disabled{opacity:.35;cursor:default}@media(min-width:990px){.cbm-scroll-arrows{display:flex}}@media(max-width:749px){.cbm-hero__media{height:auto;aspect-ratio:7 / 10;max-height:86vh}.cbm-hero__media img{object-position:center 35%}.cbm-hero__scrim{background:linear-gradient(180deg,#1a1a1a1a,#1a1a1a05 34%,#1a1a1a9e)}.cbm-hero__content{padding-bottom:clamp(1.875rem,8vw,2.75rem)}.cbm .cbm-hero__title,.cbm-hero__title{font-size:clamp(2.25rem,10vw,3.125rem)}.cbm-hero__ctas .cbm-btn{flex:1 1 auto;justify-content:center}}
/*# sourceMappingURL=/cdn/shop/t/1/assets/cbm-home.css.map */

/* == cbm-footer.css == */
.cbm-footer{background:var(--sand);color:var(--ink);border-top:1px solid var(--line);padding-block:clamp(2.5rem,5vw,4.5rem) 1.5rem}.cbm-footer a{color:var(--ink)}.cbm-footer a:hover{color:var(--clay)}.cbm-footer__newsletter{display:grid;grid-template-columns:1fr;gap:1.25rem;padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--line);margin-bottom:clamp(2rem,4vw,3rem)}.cbm-footer__news-text h2{color:var(--ink);margin-bottom:.4rem}.cbm-footer__news-text p{color:var(--stone);margin:0}.cbm-footer__news-inputwrap{display:flex;gap:.6rem;max-width:440px}.cbm-footer__news-inputwrap .cbm-field{flex:1}.cbm-footer__news-form .cbm-form-success,.cbm-footer__news-form .cbm-form-error{margin-top:.6rem}@media(min-width:750px){.cbm-footer__newsletter{grid-template-columns:1fr 1fr;align-items:center}}.cbm-footer__trust{display:flex;flex-wrap:wrap;gap:1rem 2rem;padding-bottom:clamp(2rem,4vw,3rem);margin-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--line)}.cbm-footer__trust-item{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--cbm-sans);font-size:.92rem;color:var(--ink)}.cbm-footer__trust-item svg{color:var(--teal);flex:0 0 auto}.cbm-footer__cols{display:grid;grid-template-columns:1fr;gap:0}.cbm-footer__brand{margin-bottom:1.5rem}.cbm-footer__logo{height:32px;width:auto;display:block}.cbm-footer__wordmark{font-family:var(--cbm-serif);font-size:1.472rem;color:var(--ink)}.cbm-footer__tagline{color:var(--stone);font-size:.92rem;max-width:36ch;margin-top:.75rem}.cbm-footer__col{border-top:1px solid var(--line)}.cbm-footer__col-head{width:100%;background:none;border:0;cursor:pointer;color:var(--ink);display:flex;align-items:center;justify-content:space-between;font-family:var(--cbm-sans);font-size:1.035rem;font-weight:600;padding:1.1rem 0}.cbm-footer__acc-icon{transition:transform var(--cbm-dur) var(--cbm-ease);color:var(--stone)}.cbm-footer__col-head[aria-expanded=true] .cbm-footer__acc-icon{transform:rotate(45deg)}.cbm-footer__links{list-style:none;margin:0;padding:0 0 1.1rem;display:flex;flex-direction:column;gap:.7rem;overflow:hidden}.cbm-footer__links a{font-size:.9775rem;color:var(--stone)}.cbm-footer__links a:hover{color:var(--clay)}.cbm-footer__visit p{color:var(--stone);font-size:.92rem;margin:0 0 .85rem;line-height:1.55}.cbm-footer__visit strong{color:var(--ink);font-weight:600}@media(max-width:749px){.cbm-footer__links{max-height:0;padding-bottom:0;transition:max-height var(--cbm-dur) var(--cbm-ease),padding var(--cbm-dur) var(--cbm-ease)}.cbm-footer__col.is-open .cbm-footer__links{max-height:600px;padding-bottom:1.1rem}}@media(min-width:750px){.cbm-footer__cols{grid-template-columns:1.4fr repeat(3,1fr) 1.3fr;gap:clamp(1.5rem,3vw,3rem);align-items:start}.cbm-footer__brand{grid-column:1;margin-bottom:0}.cbm-footer__col{border-top:0}.cbm-footer__col-head{cursor:default;padding:0 0 1.1rem;pointer-events:none}.cbm-footer__acc-icon{display:none}.cbm-footer__links{max-height:none!important;padding-bottom:0}}.cbm-footer__bottom{margin-top:clamp(2.5rem,5vw,4rem);padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:1rem;align-items:center;text-align:center}.cbm-footer__copy{color:var(--stone);font-size:.828rem;margin:0}.cbm-footer__social{display:flex;gap:.5rem}.cbm-footer__social a{color:var(--ink);width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center}.cbm-footer__social a:hover{background:var(--ink);border-color:var(--ink);color:var(--white)}.cbm-footer__legal{list-style:none;display:flex;flex-wrap:wrap;gap:1.25rem;margin:0;padding:0}.cbm-footer__legal a{color:var(--stone);font-size:.828rem}@media(min-width:750px){.cbm-footer__bottom{flex-direction:row;justify-content:space-between;text-align:left}.cbm-footer__social{order:3}}
/*# sourceMappingURL=/cdn/shop/t/1/assets/cbm-footer.css.map */

/* == cb-announce == */
.cbm-announce { background: #C2643C; color: #fff; font-size: 0.8375rem; font-family: var(--cbm-sans, 'DM Sans', sans-serif); }
  .cbm-announce__inner {
    display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
    gap: 1rem; min-height: 44px; max-width: 100%;
  }
  .cbm .cbm-announce__text,
  .cbm-announce__text {
    margin: 0; grid-column: 2; text-align: center; line-height: 1.3;
    font-weight: 600; display: inline-flex; align-items: center; gap: 0.44rem; color: #fff;
  }
  .cbm .cbm-announce__text a, .cbm-announce__text a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
  .cbm-announce__flag { font-size: 1.5em; line-height: 1; }
  .cbm .cbm-announce a, .cbm .cbm-announce a:hover,
  .cbm .cbm-announce a:focus, .cbm .cbm-announce a:active,
  .cbm-announce a:hover { color: #fff; }

  .cbm .cbm-announce__reviews, .cbm-announce__reviews {
    justify-self: start; display: inline-flex; align-items: center; gap: 0.56rem;
    color: inherit; text-decoration: none; white-space: nowrap;
  }
  .cbm-announce__word { font-weight: 700; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(255,255,255,0.55); }
  .cbm-announce__reviews:hover .cbm-announce__word { text-decoration-color: currentColor; }
  .cbm-announce__stars { position: relative; display: inline-block; letter-spacing: 0.1em; line-height: 1; font-size: 0.9rem; }
  .cbm-announce__stars-track { color: rgba(255,255,255,0.42); }
  .cbm-announce__stars-fill {
    position: absolute; inset: 0; overflow: hidden; white-space: nowrap;
    color: #FFC93C; text-shadow: 0 1px 0 rgba(0,0,0,0.08);
  }
  .cbm-announce__brand { display: inline-flex; align-items: center; gap: 0.3rem; font-weight: 600; }
  .cbm-announce__g { display: block; background: #fff; border-radius: 50%; padding: 1px; }
  .cbm-announce__count { opacity: 0.78; font-weight: 400; }

  .cbm .cbm-announce__cta, .cbm-announce__cta {
    justify-self: end; display: inline-flex; align-items: center; gap: 0.35rem;
    color: #C2643C; background: #fff; text-decoration: none; white-space: nowrap;
    font-weight: 700; font-size: 0.8125rem; padding: 0.42rem 0.9rem; border-radius: 999px;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
  }
  .cbm .cbm-announce__cta:hover, .cbm-announce__cta:hover { color: #A8512E; transform: translateY(-1px); box-shadow: 0 6px 16px rgba(0,0,0,0.18); }

  @media (max-width: 1099px) { .cbm-announce__count { display: none; } }
  @media (max-width: 989px) {
    .cbm-announce__inner { grid-template-columns: 1fr auto; gap: 0.75rem; }
    .cbm .cbm-announce__text, .cbm-announce__text { display: none; }
    .cbm .cbm-announce__cta, .cbm-announce__cta { grid-column: 2; }
  }
  @media (max-width: 749px) {
    .cbm-announce__inner { min-height: 38px; }
    .cbm .cbm-announce__reviews, .cbm-announce__reviews { gap: 0.44rem; font-size: 0.78rem; }
    .cbm-announce__count { display: inline; opacity: 0.85; }
    .cbm-announce__word { display: none; }
  }
/* == cb-factory == */
.cbfac { padding-block: clamp(2.5rem, 4.5vw, 4rem) !important; }
  .cbfac__grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: clamp(1.75rem, 3.5vw, 3.25rem); align-items: center; }
  .cbfac .cbm-h2 { margin-bottom: .75rem; }
  .cbfac__body { font-family: var(--cbm-sans); font-size: .96rem; line-height: 1.7; color: var(--stone); margin-bottom: 1.25rem; max-width: 46ch; }
  .cbfac__body p { margin: 0 0 .6rem; }
  .cbfac__body p:last-child { margin-bottom: 0; }

  .cbfac__facts { list-style: none; margin: 0 0 1.4rem; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: .85rem 1.4rem; }
  .cbfac__facts li { display: flex; gap: .85rem; align-items: flex-start; }
  .cbfac__fic { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 10px; background: var(--beige); color: var(--clay); }
  .cbfac__facts b { display: block; font-family: var(--cbm-sans); font-size: .88rem; font-weight: 600; color: var(--ink); margin-bottom: .12rem; }
  .cbfac__facts span { font-family: var(--cbm-sans); font-size: .8rem; line-height: 1.45; color: var(--stone); }

  .cbfac__ctas { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; }
  .cbfac__link { display: inline-flex; align-items: center; gap: .35rem; font-family: var(--cbm-sans); font-size: .9rem; font-weight: 600; color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--line); padding-bottom: 2px; }
  .cbfac__link:hover { color: var(--clay); border-color: var(--clay); }

  .cbfac__media { position: relative; display: flex; justify-content: center; }
  .cbfac__frame { position: relative; margin: 0; width: min(22rem, 100%); aspect-ratio: 4 / 5; border-radius: 18px; overflow: hidden; background: var(--beige); box-shadow: 0 24px 60px rgba(35,40,45,.16); }
  .cbfac__video, .cbfac__frame video { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
  .cbfac__label { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 2.4rem 1.1rem .9rem; font-family: var(--cbm-sans); font-size: .82rem; font-weight: 600; color: #fff; background: linear-gradient(180deg, rgba(20,22,24,0) 0%, rgba(20,22,24,.72) 100%); }

  .cbfac__badge { position: absolute; left: -.6rem; top: 1.4rem; z-index: 3; display: grid; gap: .1rem; background: var(--clay); color: #fff; border-radius: 14px; padding: .8rem 1.05rem; box-shadow: 0 14px 30px rgba(194,100,60,.34); }
  .cbfac__badge b { font-family: var(--cbm-serif); font-size: 1.45rem; line-height: 1; font-weight: 500; }
  .cbfac__badge span { font-family: var(--cbm-sans); font-size: .7rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; opacity: .92; }

  @media (max-width: 899px) {
    .cbfac__grid { grid-template-columns: 1fr; }
    .cbfac__facts { grid-template-columns: 1fr; }
    .cbfac__media { order: -1; }
    .cbfac__badge { left: auto; right: 1rem; top: 1rem; }
  }
/* == cb-google-reviews == */
.cbm .cbm-gr__heading, .cbm-gr-section .cbm-gr__heading { text-align: center; margin: 0 0 3.5rem; }
  .cbm-gr { display: flex; align-items: center; gap: 2rem; }

  .cbm-gr__summary { flex: 0 0 12.5rem; text-align: center; color: var(--ink); }
  .cbm-gr__badge { font-weight: 600; font-size: 1.25rem; letter-spacing: .04em; text-transform: uppercase; margin-bottom: .375rem; }
  .cbm-gr__score { font-size: 2.25rem; font-weight: 600; line-height: 1; margin-bottom: .3125rem; }
  .cbm-gr__score-out { font-size: 1rem; font-weight: 400; opacity: .55; }
  .cbm-gr__stars {
    position: relative; display: inline-block; font-size: 1.5rem; line-height: 1;
    letter-spacing: .1125rem; margin-bottom: .5rem; white-space: nowrap;
  }
  .cbm-gr__stars-bg { color: rgba(35, 40, 45, 0.18); }
  .cbm-gr__stars-fill {
    position: absolute; inset-inline-start: 0; top: 0; overflow: hidden;
    color: #F5A623; white-space: nowrap;
  }
  .cbm-gr__based { font-size: .9375rem; margin-bottom: .625rem; opacity: .8; }
  .cbm-gr__based strong { font-weight: 600; }
  .cbm-gr__google { font-weight: 700; font-size: 1.5rem; letter-spacing: -.02em; font-family: Arial, sans-serif; }
  .cbm-gr__review-link { display: inline-block; margin-top: .625rem; font-size: .875rem; color: var(--ink); border-bottom: 1.5px solid var(--ink); text-decoration: none; }

  .cbm-gr__slider { position: relative; flex: 1 1 auto; min-width: 0; width: 100%; max-width: 100%; }
  .cbm-gr__track {
    max-width: 100%;
    display: flex; gap: 1rem; overflow-x: auto; scroll-behavior: smooth;
    scroll-snap-type: x proximity; scrollbar-width: none; padding: .375rem .125rem .625rem;
  }
  .cbm-gr__track::-webkit-scrollbar { display: none; }

  .cbm-gr__card {
    flex: 0 0 min(21.25rem, 84%); scroll-snap-align: start;
    background: var(--white); color: var(--ink);
    border: 1px solid var(--line); border-radius: var(--cbm-radius);
    padding: 1.25rem; display: flex; flex-direction: column;
    transition: transform var(--cbm-dur) var(--cbm-ease), box-shadow var(--cbm-dur) var(--cbm-ease);
  }
  .cbm-gr__card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(35, 40, 45, 0.10); }

  .cbm-gr__card-head { display: flex; align-items: flex-start; gap: .6875rem; margin-bottom: .5625rem; }
  .cbm-gr__avatar {
    width: 2.5rem; height: 2.5rem; border-radius: 50%; color: var(--white); font-weight: 600;
    font-size: 1.0625rem; display: flex; align-items: center; justify-content: center;
    flex-shrink: 0; text-transform: uppercase;
  }
  .cbm-gr__who { display: flex; flex-direction: column; }
  .cbm-gr__name { font-weight: 600; font-size: .9375rem; }
  .cbm-gr__time { font-size: .78125rem; opacity: .6; }
  .cbm-gr__g { margin-inline-start: auto; width: 1.25rem; height: 1.25rem; flex-shrink: 0; }
  .cbm-gr__card-stars { display: flex; align-items: center; gap: .3125rem; margin-bottom: .5rem; color: #F5A623; font-size: 1rem; line-height: 1; }
  .cbm-gr__verified { width: 1rem; height: 1rem; }
  .cbm-gr__text {
    font-size: .90625rem; line-height: 1.6; margin: 0; opacity: .85;
    display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden;
  }

  .cbm-gr__arrow {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
    width: 2.5rem; height: 2.5rem; border-radius: var(--cbm-radius-pill);
    background: var(--white); border: 1px solid var(--line); color: var(--ink);
    display: flex; align-items: center; justify-content: center; cursor: pointer;
    transition: background var(--cbm-dur) var(--cbm-ease);
  }
  .cbm-gr__arrow:hover { background: var(--bone); }
  .cbm-gr__arrow svg { width: 1.0625rem; height: 1.0625rem; }
  .cbm-gr__arrow--prev { left: -.875rem; }
  .cbm-gr__arrow--next { right: -.875rem; }

  @media screen and (max-width: 900px) {
    .cbm-gr { flex-direction: column; gap: 1.375rem; }
    .cbm-gr__summary { flex: none; }
    .cbm-gr__arrow--prev { left: .125rem; }
    .cbm-gr__arrow--next { right: .125rem; }
  }
/* == cb-landing == */
/* ---- hero ---- */
  .cbl-hero { position: relative; overflow: hidden; isolation: isolate; padding-block: clamp(2.5rem, 6vw, 4.5rem); }
  .cbl-hero__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
  .cbl-hero__veil { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(20,22,24,.86) 0%, rgba(20,22,24,.72) 45%, rgba(20,22,24,.55) 100%); }
  .cbl-hero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 27rem); gap: clamp(2rem, 4vw, 3.5rem); align-items: center; }
  .cbl-badge { display: inline-block; font-family: var(--cbm-sans); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #23282D; background: #E7B79B; border-radius: 6px; padding: .35rem .7rem; margin-bottom: 1rem; }
  .cbl-hero__title { font-family: var(--cbm-serif); font-weight: 500; font-size: clamp(2rem, 4.2vw, 3.4rem); line-height: 1.1; letter-spacing: -.02em; color: #fff; margin: 0 0 .9rem; text-wrap: balance; }
  .cbl-hero__sub { font-family: var(--cbm-sans); font-size: clamp(.98rem, 1.4vw, 1.1rem); line-height: 1.6; color: rgba(255,255,255,.88); margin: 0 0 1.3rem; max-width: 34rem; }
  .cbl-hero__ticks { list-style: none; margin: 0 0 1.6rem; padding: 0; display: grid; gap: .55rem; }
  .cbl-hero__ticks li { display: flex; gap: .6rem; align-items: flex-start; font-family: var(--cbm-sans); font-size: .92rem; color: #fff; font-weight: 500; }
  .cbl-hero__ticks svg { color: #E7B79B; flex: none; margin-top: 3px; }
  .cbl-hero__ctas { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; }
  .cbl-phone { display: inline-flex; align-items: center; gap: .45rem; font-family: var(--cbm-sans); font-size: 1rem; font-weight: 700; color: #fff; text-decoration: none; }
  .cbl-phone:hover { color: #E7B79B; }
  .cbl-hero__note { font-family: var(--cbm-sans); font-size: .8rem; color: rgba(255,255,255,.66); margin: 1rem 0 0; }

  /* ---- hero form ---- */
  .cbl-form { background: #fff; border-radius: 18px; padding: 1.5rem; box-shadow: 0 26px 60px rgba(0,0,0,.3); }
  .cbl-form__head h2 { font-family: var(--cbm-serif); font-weight: 500; font-size: 1.4rem; line-height: 1.15; color: var(--ink); margin: 0 0 .3rem; }
  .cbl-form__head p { font-family: var(--cbm-sans); font-size: .84rem; color: var(--stone); margin: 0 0 1.1rem; }
  .cbl-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; margin-bottom: .9rem; }
  .cbl-form__full { grid-column: 1 / -1; }
  .cbl-form label { display: grid; gap: .28rem; }
  .cbl-form label span { font-family: var(--cbm-sans); font-size: .76rem; font-weight: 600; color: var(--ink); }
  .cbl-form input, .cbl-form select { font-family: var(--cbm-sans); font-size: .88rem; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: .6rem .75rem; width: 100%; box-sizing: border-box; }
  .cbl-form input:focus, .cbl-form select:focus { outline: none; border-color: var(--clay); box-shadow: 0 0 0 3px rgba(194,100,60,.14); }
  .cbl-form__fine { font-family: var(--cbm-sans); font-size: .72rem; color: var(--stone); text-align: center; margin: .6rem 0 0; }
  .cbl-form__err { font-family: var(--cbm-sans); font-size: .8rem; color: #A3392C; background: #FBEDE9; border-radius: 8px; padding: .55rem .75rem; margin: 0 0 .8rem; }
  .cbl-form__ok { text-align: center; padding: 1.2rem .5rem; }
  .cbl-form__ok span { display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: 50%; background: #EAF3EC; color: #2F6B43; margin-bottom: .6rem; }
  .cbl-form__ok b { display: block; font-family: var(--cbm-serif); font-weight: 500; font-size: 1.2rem; color: var(--ink); margin-bottom: .3rem; }
  .cbl-form__ok p { font-family: var(--cbm-sans); font-size: .86rem; color: var(--stone); margin: 0; }

  /* ---- trust strip ---- */
  .cbl-trust { background: var(--ink); padding: 1.1rem 0; }
  .cbl-trust__row { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
  .cbl-trust__item { display: flex; align-items: baseline; gap: .5rem; }
  .cbl-trust__item b { font-family: var(--cbm-serif); font-size: 1.15rem; font-weight: 500; color: #E7B79B; }
  .cbl-trust__item span { font-family: var(--cbm-sans); font-size: .82rem; color: rgba(255,255,255,.82); }

  /* ---- categories ---- */
  .cbl-cats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.1rem; }
  .cbl-cat { background: #fff; border: 1px solid var(--line); border-radius: var(--cbm-radius); overflow: hidden; display: flex; flex-direction: column; transition: transform var(--cbm-dur) var(--cbm-ease), box-shadow var(--cbm-dur) var(--cbm-ease); }
  .cbl-cat:hover { transform: translateY(-3px); box-shadow: 0 16px 34px rgba(35,40,45,.12); }
  .cbl-cat__media { display: block; aspect-ratio: 4 / 3; }
  .cbl-cat__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .cbl-cat__body { padding: 1rem 1.05rem 1.1rem; display: flex; flex-direction: column; gap: .35rem; flex: 1; }
  .cbl-cat__body h3 { font-family: var(--cbm-sans); font-size: .95rem; font-weight: 600; color: var(--ink); margin: 0; }
  .cbl-cat__body p { font-family: var(--cbm-sans); font-size: .82rem; line-height: 1.5; color: var(--stone); margin: 0 0 .6rem; flex: 1; }
  .cbl-cat__foot { display: flex; align-items: center; justify-content: space-between; gap: .6rem; }
  .cbl-cat__quote { font-family: var(--cbm-sans); font-size: .78rem; font-weight: 700; color: #fff; background: var(--clay); border-radius: 8px; padding: .45rem .7rem; text-decoration: none; }
  .cbl-cat__quote:hover { background: var(--clay-dark, #B15A2E); color: #fff; }
  .cbl-cat__more { display: inline-flex; align-items: center; gap: .25rem; font-family: var(--cbm-sans); font-size: .78rem; font-weight: 600; color: var(--stone); text-decoration: none; }
  .cbl-cat__more:hover { color: var(--clay); }

  /* ---- why ---- */
  .cbl-why { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
  .cbl-why__media { aspect-ratio: 4 / 4.4; border-radius: var(--cbm-radius); overflow: hidden; }
  .cbl-why__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .cbl-why__lede { font-family: var(--cbm-sans); font-size: 1rem; line-height: 1.7; color: var(--stone); margin: 0 0 1.4rem; max-width: 46ch; }
  .cbl-why__list { list-style: none; margin: 0 0 1.8rem; padding: 0; display: grid; gap: .95rem; }
  .cbl-why__list li { padding-left: 1.1rem; border-left: 2px solid var(--clay); }
  .cbl-why__list b { display: block; font-family: var(--cbm-sans); font-size: .92rem; font-weight: 600; color: var(--ink); margin-bottom: .15rem; }
  .cbl-why__list span { font-family: var(--cbm-sans); font-size: .85rem; line-height: 1.55; color: var(--stone); }

  /* ---- steps ---- */
  .cbl-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.1rem; }
  .cbl-step { background: #fff; border: 1px solid var(--line); border-radius: var(--cbm-radius); padding: 1.5rem 1.3rem; }
  .cbl-step > span { display: block; font-family: var(--cbm-sans); font-size: .74rem; font-weight: 700; letter-spacing: .14em; color: var(--clay); margin-bottom: .6rem; }
  .cbl-step h3 { font-family: var(--cbm-sans); font-size: .95rem; font-weight: 600; color: var(--ink); margin: 0 0 .35rem; }
  .cbl-step p { font-family: var(--cbm-sans); font-size: .84rem; line-height: 1.6; color: var(--stone); margin: 0; }

  /* ---- reviews ---- */
  .cbl-reviews { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem; }
  .cbl-reviews figure { margin: 0; background: #fff; border: 1px solid var(--line); border-radius: var(--cbm-radius); padding: 1.5rem 1.4rem; }
  .cbl-stars { color: #F5A623; letter-spacing: .12em; font-size: .95rem; margin-bottom: .7rem; }
  .cbl-reviews blockquote { margin: 0 0 .9rem; font-family: var(--cbm-sans); font-size: .88rem; line-height: 1.65; color: var(--ink); }
  .cbl-reviews figcaption { font-family: var(--cbm-sans); font-size: .8rem; font-weight: 600; color: var(--stone); }

  /* ---- showroom ---- */
  .cbl-showroom { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
  .cbl-showroom__media { aspect-ratio: 4 / 3.4; border-radius: var(--cbm-radius); overflow: hidden; }
  .cbl-showroom__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .cbl-showroom__list { list-style: none; margin: 0 0 1.8rem; padding: 0; display: grid; gap: .9rem; }
  .cbl-showroom__list li { display: flex; gap: .75rem; align-items: flex-start; font-family: var(--cbm-sans); font-size: .9rem; line-height: 1.55; color: var(--ink); }
  .cbl-showroom__list svg { color: var(--clay); flex: none; margin-top: 2px; }
  .cbl-showroom__list a { color: var(--ink); text-decoration: none; font-weight: 600; }

  /* ---- faq ---- */
  .cbl-faq__list { max-width: 52rem; border-top: 1px solid var(--line); }
  .cbl-faq__list details { border-bottom: 1px solid var(--line); }
  .cbl-faq__list summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.05rem .125rem; cursor: pointer; list-style: none; font-family: var(--cbm-sans); font-weight: 600; font-size: .95rem; color: var(--ink); }
  .cbl-faq__list summary::-webkit-details-marker { display: none; }
  .cbl-faq__list summary::after { content: "+"; font-size: 1.3rem; font-weight: 400; color: var(--stone); }
  .cbl-faq__list details[open] summary::after { content: "–"; }
  .cbl-faq__list details > div { padding: 0 .125rem 1.1rem; font-family: var(--cbm-sans); font-size: .88rem; line-height: 1.7; color: var(--stone); }
  .cbl-faq__list p { margin: 0; }

  /* ---- closing ---- */
  .cbl-close { position: relative; overflow: hidden; isolation: isolate; padding-block: clamp(3.5rem, 7vw, 6rem); text-align: center; }
  .cbl-close__veil { position: absolute; inset: 0; z-index: -1; background: rgba(20,22,24,.72); }
  .cbl-close__inner h2 { font-family: var(--cbm-serif); font-weight: 500; font-size: clamp(1.8rem, 3.4vw, 2.8rem); line-height: 1.12; color: #fff; margin: 0 0 .7rem; text-wrap: balance; }
  .cbl-close__inner p { font-family: var(--cbm-sans); font-size: 1rem; color: rgba(255,255,255,.85); margin: 0 auto 1.6rem; max-width: 40rem; }
  .cbl-close__ctas { justify-content: center; }

  @media (max-width: 1099px) { .cbl-cats { grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 989px) {
    .cbl-hero__inner { grid-template-columns: 1fr; }
    .cbl-why, .cbl-showroom { grid-template-columns: 1fr; }
    .cbl-why__media, .cbl-showroom__media { order: -1; aspect-ratio: 16 / 10; }
    .cbl-steps { grid-template-columns: repeat(2, 1fr); }
    .cbl-reviews { grid-template-columns: 1fr; }
  }
  @media (max-width: 649px) {
    .cbl-cats { grid-template-columns: 1fr 1fr; }
    .cbl-steps { grid-template-columns: 1fr; }
    .cbl-form__grid { grid-template-columns: 1fr; }
    .cbl-trust__row { justify-content: flex-start; gap: .75rem 1.5rem; }
  }
  @media (max-width: 420px) { .cbl-cats { grid-template-columns: 1fr; } }
/* == cb-lightband == */
.cbband { position: relative; overflow: hidden; isolation: isolate; min-height: clamp(26rem, 46vw, 36rem); display: flex; align-items: center; }
  .cbband__stage { position: absolute; inset: 0; z-index: -2; background: #23282D; }
  .cbband__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; animation-iteration-count: infinite; animation-timing-function: ease-in-out; will-change: opacity, transform; }
  .cbband__img:first-of-type { opacity: 1; animation-fill-mode: none; }
  .cbband__veil { position: absolute; inset: 0; z-index: -1; }
  .cbband--left .cbband__veil { background: linear-gradient(90deg, rgba(20,22,24,.74) 0%, rgba(20,22,24,.52) 42%, rgba(20,22,24,.12) 78%, rgba(20,22,24,0) 100%); }
  .cbband--right .cbband__veil { background: linear-gradient(270deg, rgba(20,22,24,.74) 0%, rgba(20,22,24,.52) 42%, rgba(20,22,24,.12) 78%, rgba(20,22,24,0) 100%); }
  .cbband--center .cbband__veil { background: radial-gradient(ellipse at center, rgba(20,22,24,.62) 0%, rgba(20,22,24,.42) 55%, rgba(20,22,24,.3) 100%); }


  .cbband__inner { position: relative; width: 100%; padding-block: clamp(3rem, 6vw, 5rem); }
  .cbband__text { max-width: 34rem; }
  .cbband--right .cbband__text { margin-left: auto; }
  .cbband--center .cbband__text { margin-inline: auto; text-align: center; }
  .cbband__eyebrow { display: block; font-family: var(--cbm-sans); font-size: .7rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #E7B79B; margin-bottom: .8rem; }
  .cbband__title { font-family: var(--cbm-serif); font-weight: 500; font-size: clamp(1.9rem, 3.8vw, 3.1rem); line-height: 1.12; letter-spacing: -.02em; color: #fff; margin: 0 0 .8rem; text-wrap: balance; }
  .cbband__sub { font-family: var(--cbm-sans); font-size: clamp(.95rem, 1.3vw, 1.05rem); line-height: 1.6; color: rgba(255,255,255,.86); margin: 0 0 1.6rem; max-width: 30rem; }
  .cbband--center .cbband__sub { margin-inline: auto; }
  .cbband__ctas { display: flex; align-items: center; gap: 1.1rem; flex-wrap: wrap; }
  .cbband--center .cbband__ctas { justify-content: center; }
  .cbband__link { display: inline-flex; align-items: center; gap: .35rem; font-family: var(--cbm-sans); font-size: .9rem; font-weight: 600; color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.45); padding-bottom: 2px; }
  .cbband__link:hover { border-color: #fff; }

  @media (prefers-reduced-motion: reduce) {
    .cbband__img { animation: none; }
    .cbband__img:first-child { opacity: 1; }
  }
  @media (max-width: 749px) {
    .cbband { min-height: 24rem; }
    .cbband--right .cbband__text { margin-left: 0; }
    .cbband--left .cbband__veil, .cbband--right .cbband__veil { background: linear-gradient(180deg, rgba(20,22,24,.34) 0%, rgba(20,22,24,.72) 68%, rgba(20,22,24,.82) 100%); }
  }
/* == cb-motorized == */
.cbmo__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(1.5rem, 3vw, 3rem); align-items: end; margin-bottom: clamp(1.6rem, 3vw, 2.4rem); }
  .cbmo__lede { font-family: var(--cbm-sans); font-size: .98rem; line-height: 1.7; color: var(--stone); margin: 0; }
  .cbmo__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.05rem; }
  .cbmo__card { background: var(--white); border: 1px solid var(--line); border-radius: var(--cbm-radius); padding: 1.5rem 1.35rem; transition: transform var(--cbm-dur) var(--cbm-ease), box-shadow var(--cbm-dur) var(--cbm-ease); }
  .cbmo__card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(35,40,45,.1); }
  .cbmo__ic { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: var(--beige); color: var(--clay); margin-bottom: .85rem; }
  .cbmo__card h3 { font-family: var(--cbm-sans); font-size: .95rem; font-weight: 600; color: var(--ink); margin: 0 0 .35rem; }
  .cbmo__card p { font-family: var(--cbm-sans); font-size: .84rem; line-height: 1.6; color: var(--stone); margin: 0; }

  .cbmo__foot { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(1.5rem, 3vw, 3rem); align-items: center; margin-top: 1.6rem; padding: 1.5rem clamp(1.4rem, 2.5vw, 2rem); background: var(--beige); border-radius: var(--cbm-radius); }
  .cbmo__optlabel { display: block; font-family: var(--cbm-sans); font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--stone); margin-bottom: .6rem; }
  .cbmo__opts ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .45rem; }
  .cbmo__opts li { font-family: var(--cbm-sans); font-size: .82rem; font-weight: 500; color: var(--ink); background: var(--white); border-radius: 8px; padding: .45rem .75rem; }
  .cbmo__cta { text-align: right; }
  .cbmo__note { font-family: var(--cbm-sans); font-size: .76rem; color: var(--stone); margin: .5rem 0 0; }

  @media (max-width: 989px) { .cbmo__grid { grid-template-columns: repeat(2, 1fr); } .cbmo__head, .cbmo__foot { grid-template-columns: 1fr; } .cbmo__cta { text-align: left; } }
  @media (max-width: 599px) { .cbmo__grid { grid-template-columns: 1fr; } }
/* == cb-product == */
.cbm-pdp-wrap { background: var(--bone); }
  .cbm-pdp__crumbs { font-size: 0.78rem; color: var(--stone); display: flex; gap: 0.5rem; align-items: center; padding: 1.375rem 0 0; font-family: var(--cbm-sans); flex-wrap: wrap; }
  .cbm-pdp__crumbs a { color: var(--stone); text-decoration: none; }
  .cbm-pdp__crumbs a:hover { color: var(--clay); }

  .cbm-pdp { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(1.75rem, 4vw, 3.75rem); padding: 1.625rem 0 clamp(3.5rem, 7vw, 5rem); align-items: start; }

  .cbm-pdp__gallery { position: sticky; top: 84px; }
  .cbm-pdp__main { aspect-ratio: 4 / 3.6; border-radius: var(--cbm-radius); overflow: hidden; background: var(--white); border: 1px solid var(--line); margin-bottom: 0.75rem; cursor: grab; }
  .cbm-pdp__main:active { cursor: grabbing; }
  .cbm-pdp__track { display: flex; height: 100%; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .cbm-pdp__track::-webkit-scrollbar { display: none; }
  .cbm-pdp__slide { flex: 0 0 100%; scroll-snap-align: center; height: 100%; }
  .cbm-pdp__slide img { width: 100%; height: 100%; object-fit: cover; display: block; user-select: none; -webkit-user-drag: none; }
  .cbm-pdp__thumbs { display: flex; gap: 0.625rem; flex-wrap: wrap; }
  .cbm-pdp__thumb { width: 74px; height: 74px; border-radius: 10px; overflow: hidden; border: 2px solid transparent; cursor: pointer; padding: 0; background: var(--white); outline: 1px solid var(--line); }
  .cbm-pdp__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .cbm-pdp__thumb.is-active { border-color: var(--clay); outline-color: var(--clay); }

  .cbm-pdp__info .cbm-eyebrow { margin-bottom: 0.75rem; color: var(--clay); }
  .cbm-pdp__title { font-family: var(--cbm-serif); font-weight: 500; letter-spacing: -0.02em; font-size: clamp(1.9rem, 3.2vw, 2.7rem); line-height: 1.1; color: var(--ink); margin: 0 0 0.5rem; }
  .cbm-pdp__lede { font-family: var(--cbm-sans); font-size: 1.0625rem; line-height: 1.55; color: var(--ink); margin: 0 0 0.875rem; font-weight: 500; }
  .cbm-pdp__rating { display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--cbm-sans); font-size: 0.875rem; color: var(--ink); text-decoration: none; margin-bottom: 1.125rem; }
  .cbm-pdp__rating:hover { color: var(--clay); }
  .cbm-pdp__stars { color: #F5A623; letter-spacing: 0.1em; font-size: 0.9375rem; }

  /* meters */
  .cbm-pdp__meters { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.75rem; padding: 1rem 1.125rem; background: var(--white); border: 1px solid var(--line); border-radius: var(--cbm-radius); margin-bottom: 1.25rem; }
  .cbm-pdp__meter-label { display: block; font-family: var(--cbm-sans); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--stone); margin-bottom: 0.45rem; }
  .cbm-pdp__dots { display: inline-flex; gap: 4px; }
  .cbm-pdp__dots i { width: 13px; height: 6px; border-radius: 3px; background: var(--line); display: inline-block; }
  .cbm-pdp__dots i.is-on { background: var(--clay); }
  .cbm-pdp__dots--sm i { width: 10px; height: 5px; }

  .cbm-pdp__desc { font-family: var(--cbm-sans); font-size: 0.95rem; line-height: 1.7; color: var(--stone); margin-bottom: 1.125rem; }
  .cbm-pdp__desc p { margin: 0 0 0.625rem; }
  .cbm-pdp__price { font-family: var(--cbm-sans); font-weight: 600; font-size: 0.95rem; color: var(--ink); margin: 0 0 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--line); }

  .cbm-pdp__bestfor { margin-bottom: 1.25rem; }
  .cbm-pdp__roomrow { display: flex; flex-wrap: wrap; gap: 0.4rem; }
  .cbm-pdp__room { font-family: var(--cbm-sans); font-size: 0.78rem; font-weight: 500; color: var(--ink); background: var(--beige); border-radius: 8px; padding: 0.4rem 0.7rem; }

  .cbm-pdp__swatches { margin-bottom: 1.375rem; }
  .cbm-pdp__swlabel { display: block; font-family: var(--cbm-sans); font-size: 0.78rem; font-weight: 600; color: var(--ink); margin-bottom: 0.5rem; }
  .cbm-pdp__swrow { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
  .cbm-pdp__sw { width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--line); background-size: cover; background-position: center; display: inline-block; transition: transform var(--cbm-dur) var(--cbm-ease), box-shadow var(--cbm-dur) var(--cbm-ease); }
  .cbm-pdp__sw:hover { box-shadow: 0 0 0 1.5px var(--white), 0 0 0 3px var(--ink); }
  .cbm-pdp__swmore { font-family: var(--cbm-sans); font-size: 0.72rem; color: var(--stone); margin-left: 0.25rem; }

  .cbm-pdp__checks { list-style: none; margin: 0 0 1.5rem; padding: 0; display: grid; gap: 0.625rem; }
  .cbm-pdp__checks li { display: flex; gap: 0.625rem; align-items: flex-start; font-family: var(--cbm-sans); font-size: 0.9rem; line-height: 1.5; color: var(--ink); font-weight: 500; }
  .cbm-pdp__checks li svg { color: var(--clay); flex: none; margin-top: 2px; }

  .cbm-pdp__cta { display: flex; flex-direction: column; gap: 0.625rem; padding: 1.25rem; background: var(--beige); border-radius: var(--cbm-radius); margin-bottom: 1.25rem; }
  .cbm-pdp__note { font-family: var(--cbm-sans); font-size: 0.78rem; line-height: 1.55; color: var(--stone); text-align: center; margin: 0.125rem 0 0; }

  .cbm-pdp__chips { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 1.625rem; }
  .cbm-pdp__chip { display: inline-flex; align-items: center; gap: 0.4rem; font-family: var(--cbm-sans); font-size: 0.75rem; font-weight: 600; color: var(--ink); background: var(--white); border: 1px solid var(--line); border-radius: 999px; padding: 0.45rem 0.8rem; }
  .cbm-pdp__chip svg { color: var(--clay); }

  .cbm-pdp__subhead { font-family: var(--cbm-sans); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--stone); margin: 0 0 0.875rem; }

  .cbm-pdp__specs { margin-bottom: 1.75rem; }
  .cbm-pdp__specs dl { margin: 0; border-top: 1px solid var(--line); }
  .cbm-pdp__specrow { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.3fr); gap: 1rem; padding: 0.7rem 0.125rem; border-bottom: 1px solid var(--line); }
  .cbm-pdp__specrow dt { font-family: var(--cbm-sans); font-size: 0.82rem; font-weight: 600; color: var(--stone); margin: 0; }
  .cbm-pdp__specrow dd { font-family: var(--cbm-sans); font-size: 0.86rem; color: var(--ink); margin: 0; }

  .cbm-pdp__acc { border-top: 1px solid var(--line); padding-top: 1.25rem; }
  .cbm-pdp__acc details { border-bottom: 1px solid var(--line); }
  .cbm-pdp__acc summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.0625rem 0.125rem; cursor: pointer; list-style: none; font-family: var(--cbm-sans); font-weight: 600; font-size: 0.9375rem; color: var(--ink); }
  .cbm-pdp__acc summary::-webkit-details-marker { display: none; }
  .cbm-pdp__acc summary::after { content: "+"; font-size: 1.25rem; font-weight: 400; color: var(--stone); transition: transform var(--cbm-dur) var(--cbm-ease); }
  .cbm-pdp__acc details[open] summary::after { transform: rotate(45deg); }
  .cbm-pdp__acc-body { padding: 0 0.125rem 1.125rem; font-family: var(--cbm-sans); font-size: 0.875rem; line-height: 1.7; color: var(--stone); }
  .cbm-pdp__acc-body p { margin: 0 0 0.625rem; }

  .cbm-pdp__features { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.125rem; }
  .cbm-pdp__feature { background: var(--white); border: 1px solid var(--line); border-radius: var(--cbm-radius); padding: 1.625rem 1.375rem; transition: transform var(--cbm-dur) var(--cbm-ease), box-shadow var(--cbm-dur) var(--cbm-ease); }
  .cbm-pdp__feature:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(35, 40, 45, 0.10); }
  .cbm-pdp__fic { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 12px; background: var(--beige); color: var(--clay); margin-bottom: 0.875rem; }
  .cbm-pdp__feature h3 { font-family: var(--cbm-sans); font-size: 0.9875rem; font-weight: 600; color: var(--ink); margin: 0 0 0.4rem; }
  .cbm-pdp__feature p { font-family: var(--cbm-sans); font-size: 0.84rem; line-height: 1.6; color: var(--stone); margin: 0; }

  /* comparison table */
  .cbm-pdp__compare-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; width: 100%; min-width: 0; border: 1px solid var(--line); border-radius: var(--cbm-radius); background: var(--white); }
  .cbm-pdp__compare-wrap::-webkit-scrollbar { height: 6px; }
  .cbm-pdp__compare-wrap::-webkit-scrollbar-thumb { background: var(--line); border-radius: 3px; }
  .cbm-pdp__compare { width: 100%; border-collapse: collapse; min-width: 760px; font-family: var(--cbm-sans); }
  .cbm-pdp__compare th, .cbm-pdp__compare td { text-align: left; padding: 0.9rem 1.125rem; border-bottom: 1px solid var(--line); vertical-align: middle; }
  .cbm-pdp__compare thead th { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--stone); background: var(--beige); }
  .cbm-pdp__compare tbody th { font-size: 0.9rem; font-weight: 600; color: var(--ink); white-space: nowrap; }
  .cbm-pdp__compare tbody th a { color: inherit; text-decoration: none; }
  .cbm-pdp__compare tbody th a:hover { color: var(--clay); }
  .cbm-pdp__compare tr.is-current { background: var(--beige); }
  .cbm-pdp__youare { display: inline-block; margin-left: 0.5rem; font-size: 0.65rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--white); background: var(--clay); border-radius: 5px; padding: 0.2rem 0.45rem; vertical-align: middle; }
  .cbm-pdp__compare-best { font-size: 0.8rem; color: var(--stone); }
  .cbm-pdp__compare-link a { display: inline-flex; align-items: center; gap: 0.3rem; font-size: 0.8rem; font-weight: 600; color: var(--clay); text-decoration: none; white-space: nowrap; }
  .cbm-pdp__compare-note { font-family: var(--cbm-sans); font-size: 0.85rem; color: var(--stone); margin: 1rem 0 0; }
  .cbm-pdp__compare-note a { color: var(--clay); font-weight: 600; }

  .cbm-pdp__steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.125rem; }
  .cbm-pdp__step { background: var(--white); border: 1px solid var(--line); border-radius: var(--cbm-radius); padding: 1.625rem 1.375rem; }
  .cbm-pdp__stepnum { display: block; font-family: var(--cbm-sans); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; color: var(--clay); margin-bottom: 0.75rem; }
  .cbm-pdp__step h3 { font-family: var(--cbm-sans); font-size: 0.9875rem; font-weight: 600; color: var(--ink); margin: 0 0 0.4rem; }
  .cbm-pdp__step p { font-family: var(--cbm-sans); font-size: 0.84rem; line-height: 1.6; color: var(--stone); margin: 0; }

  .cbm-pdp__more { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.25rem, 2.5vw, 2rem); }

  @media (max-width: 989px) {
    .cbm-pdp { grid-template-columns: 1fr; }
    .cbm-pdp__gallery { position: static; }
    .cbm-pdp__features, .cbm-pdp__steps { grid-template-columns: repeat(2, 1fr); }
    .cbm-pdp__more { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 989px) {
    .cbm-pdp__compare { min-width: 600px; }
    .cbm-pdp__compare th, .cbm-pdp__compare td { padding: .75rem .8rem; }
    .cbm-pdp__compare-best { display: none; }
    .cbm-pdp__compare thead th:nth-child(5) { display: none; }
  }
  /* below 650px the table becomes a stack of cards — nothing to scroll sideways */
  @media (max-width: 649px) {
    .cbm-pdp__features, .cbm-pdp__steps, .cbm-pdp__more { grid-template-columns: 1fr; }
    .cbm-pdp__compare-wrap { overflow: visible; border: 0; background: transparent; }
    .cbm-pdp__compare { min-width: 0; width: 100%; display: block; }
    .cbm-pdp__compare thead { display: none; }
    .cbm-pdp__compare tbody, .cbm-pdp__compare tr { display: block; width: 100%; }
    .cbm-pdp__compare tr { background: var(--white); border: 1px solid var(--line); border-radius: var(--cbm-radius); padding: .9rem 1rem; margin-bottom: .7rem; }
    .cbm-pdp__compare tr.is-current { border-color: var(--clay); background: var(--beige); }
    .cbm-pdp__compare tbody th { display: block; white-space: normal; padding: 0 0 .6rem; border: 0; font-size: 1rem; }
    .cbm-pdp__compare td { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .35rem 0; border: 0; }
    .cbm-pdp__compare td::before { content: attr(data-label); font-size: .78rem; font-weight: 600; color: var(--stone); }
    .cbm-pdp__compare-best { display: flex !important; font-size: .78rem; text-align: right; padding-top: .5rem !important; border-top: 1px dashed var(--line) !important; margin-top: .35rem; }
    .cbm-pdp__compare-link { padding-top: .6rem !important; }
    .cbm-pdp__compare-link::before { content: none; }
    .cbm-pdp__compare-link a { width: 100%; justify-content: center; border: 1px solid var(--clay); border-radius: 8px; padding: .5rem; }
  }
    .cbm-pdp__meters { grid-template-columns: 1fr; gap: 0.5rem; }
    .cbm-pdp__specrow { grid-template-columns: 1fr; gap: 0.15rem; }
  }
/* == cb-real-homes == */
.cbm-rw__head { text-align: center; max-width: 41.25rem; margin: 0 auto clamp(1.5rem, 3.6vw, 2.5rem); }
  .cbm .cbm-rw__heading { margin: 0.375rem 0 0.625rem; }

  .cbm-rw__grid {
    display: grid; gap: clamp(0.5rem, 1.2vw, 0.875rem);
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: clamp(6.875rem, 14vw, 11.875rem);
    max-width: 76.25rem; margin-inline: auto;
  }
  .cbm-rw__tile {
    position: relative; overflow: hidden; border-radius: var(--cbm-radius);
    background: var(--bone); display: block; text-decoration: none;
    grid-column: span 2; grid-row: span 1;
  }
  .cbm-rw__tile--lg { grid-column: span 4; grid-row: span 2; }
  .cbm-rw__tile--tall { grid-column: span 2; grid-row: span 2; }
  .cbm-rw__tile--wide { grid-column: span 4; grid-row: span 1; }
  .cbm-rw__tile img {
    width: 100%; height: 100%; object-fit: cover; display: block;
    transition: transform 600ms var(--cbm-ease);
  }
  .cbm-rw__tile:hover img { transform: scale(1.04); }

  .cbm-rw__caption {
    position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
    display: flex; align-items: center; justify-content: space-between; gap: 0.5rem;
    padding: 1.5rem 1rem 0.75rem;
    background: linear-gradient(180deg, rgba(35,40,45,0) 0%, rgba(35,40,45,0.55) 100%);
    color: var(--white);
    font-family: var(--cbm-sans); font-size: 0.85rem; font-weight: 500;
    opacity: 0; transition: opacity var(--cbm-dur) var(--cbm-ease);
  }
  .cbm-rw__tile:hover .cbm-rw__caption { opacity: 1; }

  .cbm-rw__foot {
    display: flex; flex-direction: column; align-items: center; gap: 1rem;
    margin-top: clamp(1.5rem, 3vw, 2.5rem); text-align: center;
  }
  .cbm-rw__stat { color: var(--stone); font-size: 0.92rem; margin: 0; }
  .cbm-rw__stat strong { color: var(--ink); }

  @media (max-width: 749px) {
    .cbm-rw__grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: clamp(8.125rem, 38vw, 11.25rem); }
    .cbm-rw__tile, .cbm-rw__tile--lg, .cbm-rw__tile--tall, .cbm-rw__tile--wide { grid-column: span 1; grid-row: span 1; }
    .cbm-rw__tile--lg { grid-column: span 2; }
    .cbm-rw__caption { opacity: 1; }
  }
/* == cb-roomguide == */
.cbrg__wrap { display: grid; grid-template-columns: minmax(0, 17rem) minmax(0, 1fr); gap: clamp(1.5rem, 3vw, 2.75rem); align-items: start; }
  .cbrg__tabs { display: grid; gap: .4rem; }
  .cbrg__tab { display: grid; gap: .12rem; text-align: left; padding: .85rem 1rem; border: 1px solid transparent; border-radius: 12px; background: transparent; cursor: pointer; font-family: var(--cbm-sans); transition: background var(--cbm-dur) var(--cbm-ease), border-color var(--cbm-dur) var(--cbm-ease); }
  .cbrg__tab:hover { background: var(--white); }
  .cbrg__tab.is-active { background: var(--white); border-color: var(--line); box-shadow: 0 8px 22px rgba(35,40,45,.07); }
  .cbrg__tab-name { font-size: .98rem; font-weight: 600; color: var(--ink); }
  .cbrg__tab-pick { font-size: .78rem; color: var(--stone); }
  .cbrg__tab.is-active .cbrg__tab-pick { color: var(--clay); font-weight: 600; }

  .cbrg__panel { display: none; grid-template-columns: minmax(0, .95fr) minmax(0, 1fr); gap: clamp(1.5rem, 3vw, 2.5rem); background: var(--white); border: 1px solid var(--line); border-radius: var(--cbm-radius); overflow: hidden; }
  .cbrg__panel.is-active { display: grid; }
  .cbrg__media { aspect-ratio: 4 / 3.7; }
  .cbrg__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .cbrg__body { padding: clamp(1.4rem, 2.4vw, 2.1rem) clamp(1.4rem, 2.4vw, 2.1rem) clamp(1.4rem, 2.4vw, 2.1rem) 0; display: flex; flex-direction: column; gap: .7rem; }
  .cbrg__problem { display: inline-flex; align-items: center; gap: .45rem; align-self: flex-start; font-family: var(--cbm-sans); font-size: .76rem; font-weight: 600; color: var(--stone); background: var(--beige); border-radius: 8px; padding: .4rem .7rem; }
  .cbrg__problem svg { color: var(--clay); }
  .cbrg__pick { font-family: var(--cbm-serif); font-weight: 500; font-size: clamp(1.3rem, 2.2vw, 1.75rem); line-height: 1.15; color: var(--ink); margin: 0; display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
  .cbrg__pick a { color: inherit; text-decoration: none; }
  .cbrg__pick a:hover { color: var(--clay); }
  .cbrg__pickbadge { font-family: var(--cbm-sans); font-size: .62rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #fff; background: var(--clay); border-radius: 5px; padding: .22rem .45rem; }
  .cbrg__why { font-family: var(--cbm-sans); font-size: .93rem; line-height: 1.65; color: var(--stone); margin: 0; }
  .cbrg__tips { list-style: none; margin: .2rem 0 0; padding: 0; display: grid; gap: .45rem; }
  .cbrg__tips li { display: flex; gap: .5rem; align-items: flex-start; font-family: var(--cbm-sans); font-size: .86rem; line-height: 1.5; color: var(--ink); }
  .cbrg__tips svg { color: var(--clay); flex: none; margin-top: 2px; }
  .cbrg__alt { font-family: var(--cbm-sans); font-size: .85rem; line-height: 1.6; color: var(--stone); margin: .2rem 0 0; padding-top: .7rem; border-top: 1px dashed var(--line); }
  .cbrg__alt b { color: var(--ink); }
  .cbrg__alt a { color: var(--clay); font-weight: 600; text-decoration: none; }
  .cbrg__ctas { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: auto; padding-top: .5rem; }
  .cbrg__quote { display: inline-flex; align-items: center; gap: .3rem; font-family: var(--cbm-sans); font-size: .85rem; font-weight: 600; color: var(--ink); text-decoration: none; }
  .cbrg__quote:hover { color: var(--clay); }

  @media (max-width: 989px) {
    .cbrg__wrap { grid-template-columns: 1fr; }
    .cbrg__tabs { grid-auto-flow: column; grid-auto-columns: minmax(11rem, 1fr); overflow-x: auto; padding-bottom: .3rem; scrollbar-width: none; }
    .cbrg__tabs::-webkit-scrollbar { display: none; }
    .cbrg__panel { grid-template-columns: 1fr; }
    .cbrg__media { aspect-ratio: 16 / 10; }
    .cbrg__body { padding: 1.4rem; }
  }
/* == cb-story == */
.cbm-story__grid {
    display: grid; gap: clamp(1.5rem, 5vw, 3.75rem); align-items: center;
    grid-template-columns: 1fr;
  }
  @media (min-width: 990px) {
    .cbm-story__grid { grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr); }
    .cbm-story__grid--flip .cbm-story__media { order: 2; }
  }

  .cbm-story__media { position: relative; padding-bottom: clamp(2rem, 5vw, 3.5rem); padding-right: clamp(1.5rem, 4vw, 3rem); }
  .cbm-story__media .cbm-story__main { aspect-ratio: 4 / 5; border-radius: var(--cbm-radius); overflow: hidden; }
  .cbm-story__media .cbm-story__main img { width: 100%; height: 100%; object-fit: cover; }
  .cbm-story__media .cbm-story__inset {
    position: absolute; right: 0; bottom: 0; width: 44%; aspect-ratio: 1 / 1; z-index: 2;
    border-radius: var(--cbm-radius); overflow: hidden;
    border: 6px solid var(--bone); box-shadow: 0 18px 40px rgba(26,26,26,0.14);
  }
  .cbm-story__media .cbm-story__inset img { width: 100%; height: 100%; object-fit: cover; }
  .cbm-story__media .cbm-story__badge {
    position: absolute; left: 0; z-index: 3; bottom: clamp(0.75rem, 3vw, 1.5rem);
    display: flex; flex-direction: column; gap: 0.125rem;
    background: var(--ink); color: var(--bone);
    padding: 0.75rem 1.125rem; border-radius: var(--cbm-radius);
    box-shadow: 0 18px 40px rgba(26,26,26,0.18);
  }
  .cbm-story__badge-num { font-family: var(--cbm-sans); font-size: 1.5rem; font-weight: 700; line-height: 1; }
  .cbm-story__badge-text { font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; opacity: 0.82; }

  .cbm .cbm-story__heading { margin: 0.5rem 0 0.875rem; }
  .cbm-story__rte p { font-size: 0.97rem; line-height: 1.7; }
  .cbm-story__rte p + p { margin-top: 0.75rem; }

  .cbm-story__facts {
    list-style: none; margin: clamp(1.25rem, 3vw, 1.75rem) 0 0; padding: 0;
    display: grid; gap: 0.75rem 1.5rem; grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr));
    border-top: 1px solid var(--line); padding-top: clamp(1.25rem, 3vw, 1.75rem);
  }
  .cbm-story__facts li { display: flex; flex-direction: column; gap: 0.1875rem; }
  .cbm-story__fact-k {
    font-family: var(--cbm-sans); font-size: 0.6875rem; font-weight: 600;
    letter-spacing: 0.1em; text-transform: uppercase; color: var(--clay);
  }
  .cbm-story__fact-v { font-size: 0.90625rem; line-height: 1.5; color: var(--ink); }

  .cbm-story__sign { margin: 0.875rem 0 0; font-style: italic; color: var(--stone); font-size: 0.90625rem; }
  .cbm-story__btns { display: flex; flex-wrap: wrap; gap: 0.625rem; margin-top: clamp(1.25rem, 3vw, 1.625rem); }

  @media (max-width: 749px) {
    .cbm-story__media { padding-right: 0; padding-bottom: 0; }
    .cbm-story__media .cbm-story__inset { position: relative; width: 100%; aspect-ratio: 16 / 10; border: 0; box-shadow: none; margin-top: 0.625rem; }
    .cbm-story__media .cbm-story__badge { position: static; align-self: flex-start; display: inline-flex; margin-top: 0.75rem; }
  }