/* Cellbay cinematic 1.0. All rules are confined to eligible storefront pages. */
.cb-store { --cb-ink:#141923; --cb-muted:#535e70; --cb-paper:#f7f8fa; --cb-line:#dce0e7; --cb-accent:#d8ff69; }
/* WoodMart's header/footer own the main landmark and its outer wrappers. */
.cb-cinematic-home .main-page-wrapper { padding-top:0; }
.cb-cinematic-home #main-content { display:block; width:100%; max-width:none; padding-inline:0; }
.cb-cinematic-home .cb-home { width:100%; margin-bottom:0; }
.cb-store .cb-home { color:var(--cb-ink); background:#fff; font-family:Inter,"Segoe UI",Arial,sans-serif; line-height:1.6; }
.cb-store .cb-home *, .cb-store .cb-home *::before, .cb-store .cb-home *::after { box-sizing:border-box; }
.cb-store .cb-home h1, .cb-store .cb-home h2, .cb-store .cb-home p { margin:0; }
.cb-store .cb-home a { text-decoration:none; }
.cb-store .cb-shell { width:min(1320px,calc(100% - 96px)); margin-inline:auto; }
.cb-store .cb-hero { position:relative; isolation:isolate; overflow:hidden; color:#fff; background:#0c111c; }
.cb-store .cb-hero-glow { position:absolute; z-index:-1; inset:0; background:radial-gradient(ellipse at 65% 20%,#283e69 0%,transparent 55%),radial-gradient(ellipse at 0 100%,#162a34,transparent 55%); }
.cb-store .cb-hero-grid { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:64px; padding-block:80px 72px; }
.cb-store .cb-eyebrow { font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.18em; }
.cb-store .cb-hero .cb-eyebrow { color:var(--cb-accent); }
.cb-store .cb-home h1 { color:#fff; font-size:clamp(42px,4.6vw,70px); font-weight:650; line-height:1.05; letter-spacing:-.055em; margin-block:24px; overflow-wrap:normal; }
.cb-store .cb-home h1 span { color:#a9b7d0; }
.cb-store .cb-lead { max-width:455px; color:#c4ccdb; font-size:16px; }
.cb-store .cb-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:36px; }
.cb-store .cb-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:52px; padding:14px 23px; border-radius:6px; background:var(--cb-accent); color:#141923; font-size:14px; font-weight:700; transition:background .2s,transform .2s; }
.cb-store .cb-button:hover { background:#e8ffa5; color:#141923; transform:translateY(-2px); }
.cb-store .cb-text-link { display:inline-flex; gap:18px; align-items:center; min-height:44px; color:inherit; font-size:13px; font-weight:650; }
.cb-store .cb-text-link:hover { text-decoration:underline; text-underline-offset:5px; }
.cb-store .cb-hero-product { position:relative; display:flex; flex-direction:column; padding:28px 32px 20px; border:1px solid #dbe2ec; border-radius:180px 180px 24px 24px; background:#fff; color:var(--cb-ink); box-shadow:0 32px 80px #0005; animation:cb-enter .7s ease-out both; }
.cb-store .cb-product-kicker { align-self:center; font-size:10px; font-weight:700; letter-spacing:.2em; color:#596477; padding-top:10px; }
.cb-store .cb-hero-image { display:block; width:100%; height:350px; object-fit:contain; margin-block:18px; }
.cb-store .cb-hero-caption { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-top:18px; border-top:1px solid var(--cb-line); color:var(--cb-ink); font-weight:650; font-size:16px; }
.cb-store .cb-round-arrow { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border-radius:50%; background:var(--cb-paper); font-size:20px; }
.cb-store .cb-hero-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-block:20px; border-top:1px solid #ffffff26; color:#b6c1d2; font-size:11px; letter-spacing:.06em; }
.cb-store .cb-section { padding-block:76px; }
.cb-store .cb-section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:32px; }
.cb-store .cb-section-heading .cb-eyebrow { color:var(--cb-muted); margin-bottom:10px; }
.cb-store .cb-home h2 { font-size:clamp(28px,3vw,42px); color:var(--cb-ink); font-weight:650; line-height:1.16; letter-spacing:-.04em; }
.cb-store .cb-category-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:16px; }
.cb-store .cb-category { display:flex; flex-direction:column; position:relative; min-height:210px; padding:20px; background:var(--cb-paper); border:1px solid transparent; border-radius:12px; color:var(--cb-ink); transition:border-color .2s,transform .2s; }
.cb-store .cb-category:hover { border-color:#9ba6b6; transform:translateY(-3px); color:var(--cb-ink); }
.cb-store .cb-category-number { color:#616b7b; font-size:10px; letter-spacing:.1em; }
.cb-store .cb-category img { width:100%; height:128px; object-fit:contain; margin:8px auto 16px; mix-blend-mode:multiply; }
.cb-store .cb-category-label { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; font-size:16px; font-weight:650; }
.cb-store .cb-collection { background:var(--cb-paper); }
.cb-store .cb-products .product-grid-item { border-radius:12px; background:#fff; padding:18px; }
.cb-store .cb-products .product-image-link img { aspect-ratio:1; object-fit:contain; }
.cb-store .cb-products .wd-entities-title { font-size:15px; line-height:1.5; }
.cb-store .cb-products .price { font-size:16px; }
.cb-store .cb-discover { position:relative; overflow:hidden; padding:56px; border-radius:18px; background:linear-gradient(115deg,#e9edee 0%,#f4f6ec 55%,#e0ebbf 100%); }
.cb-store .cb-discover h2 { margin-block:18px; font-size:clamp(36px,4vw,56px); }
.cb-store .cb-discover p:not(.cb-eyebrow) { color:var(--cb-muted); margin-bottom:26px; }
.cb-store .cb-home a:focus-visible, .cb-store .cb-spec-scroll:focus-visible { outline:3px solid #365ac9; outline-offset:5px; }
.cb-store .cb-hero a:focus-visible { outline-color:var(--cb-accent); }
/* Retain all native shop/search/filter and product form controls. */
.cb-store.woocommerce-shop .products, .cb-store.tax-product_cat .products { --wd-col-gap:24px; }
.cb-store.single-product .woocommerce-Tabs-panel--description table { width:100%; border-collapse:collapse; font-size:14px; line-height:1.6; }
.cb-store.single-product .woocommerce-Tabs-panel--description :is(td,th) { padding:14px 18px; border-bottom:1px solid var(--cb-line); vertical-align:top; text-align:start; overflow-wrap:anywhere; }
.cb-store.single-product .woocommerce-Tabs-panel--description th { background:var(--cb-paper); font-weight:650; }
.cb-store.single-product .woocommerce-Tabs-panel--description td p { margin:0; }
.cb-store .cb-spec-scroll { max-width:100%; overflow:auto; overscroll-behavior-inline:contain; margin-block:20px; border:1px solid var(--cb-line); border-radius:10px; }
.cb-store .cb-spec-scroll table { margin:0; min-width:320px; }
@keyframes cb-enter { from { opacity:.6; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:1024px) {
 .cb-store .cb-shell { width:calc(100% - 48px); }
 .cb-store .cb-hero-grid { gap:32px; padding-block:56px; }
 .cb-store .cb-hero-image { height:280px; }
 .cb-store .cb-hero-product { padding:24px; }
 .cb-store .cb-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .cb-store .cb-section { padding-block:56px; }
}
@media (max-width:767px) {
 .cb-store .cb-shell { width:calc(100% - 32px); }
 .cb-store .cb-hero-grid { grid-template-columns:1fr; gap:36px; padding-block:40px; }
 .cb-store .cb-home h1 { font-size:clamp(38px,10vw,64px); max-width:570px; }
 .cb-store .cb-hero-product { width:min(440px,100%); margin-inline:auto; }
 .cb-store .cb-hero-image { height:280px; }
 .cb-store .cb-hero-bottom { font-size:10px; }
 .cb-store .cb-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .cb-store .cb-category { padding:16px; min-height:176px; }
 .cb-store .cb-category img { height:100px; }
 .cb-store .cb-category-label { font-size:14px; }
 .cb-store .cb-section-heading { align-items:start; flex-direction:column; gap:12px; margin-bottom:24px; }
 .cb-store .cb-section { padding-block:42px; }
 .cb-store .cb-discover { padding:30px 24px; }
 .cb-store .cb-actions { gap:14px; margin-top:26px; }
}
@media (prefers-reduced-motion:reduce) {
 .cb-store .cb-home *, .cb-store .cb-home *::before, .cb-store .cb-home *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Native archive and product surfaces; do not replace vendor markup or hooks. */
.cb-store:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) .product-grid-item { border-radius:12px; background:#fff; border:1px solid #e4e7ec; }
.cb-store:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) .product-grid-item .product-wrapper { padding:16px; }
.cb-store:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) .product-image-link img { aspect-ratio:1; object-fit:contain; }
.cb-store:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) .wd-entities-title { line-height:1.5; font-weight:600; }
.cb-store.single-product .product-image-summary { border-radius:16px; }
.cb-store.single-product .product_title { letter-spacing:-.025em; line-height:1.2; }
.cb-store.single-product .woocommerce-tabs { margin-block:40px; }
.cb-store.single-product .woocommerce-Tabs-panel { line-height:1.7; }
.cb-store.single-product .woocommerce-product-attributes { border:1px solid var(--cb-line); border-radius:10px; }
.cb-store .whb-header .wd-header-nav { letter-spacing:.01em; }
.cb-store .footer-container { border-top:1px solid var(--cb-line); }

/* Comparison stays in document flow, leaving native purchase controls available. */
#cb-compare-tray{margin:24px auto;padding:20px;max-width:1200px;background:#15191f;color:#fff;border:1px solid #505863;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
#cb-compare-items{display:flex;flex-wrap:wrap;gap:8px;width:100%}
#cb-compare-tray button,.cb-compare-select,.cb-comparison button{background:#fff;color:#15191f;border:1px solid #687482;border-radius:6px;padding:9px 12px;height:auto;white-space:normal}
#cb-compare-tray a{color:#b6e8ff;text-decoration:underline}#cb-compare-tray a[aria-disabled=true]{color:#bbc0c6;text-decoration:none;cursor:default}
.cb-compare-select{margin:8px 0}.cb-compare-select[aria-pressed=true]{background:#d3f0ff}
.cb-compare-table{min-width:650px;width:100%;border-collapse:collapse}.cb-compare-table th,.cb-compare-table td{min-width:180px;max-width:300px;vertical-align:top;padding:16px;border:1px solid #637080;white-space:normal;overflow-wrap:anywhere}
.cb-compare-table img{display:block;width:100px;height:100px;object-fit:contain;margin:0 auto 12px}.cb-compare-table a,.cb-compare-table button{display:block;margin:8px 0}.cb-comparison{max-width:1400px}.cb-comparison .cb-spec-scroll{overflow-x:auto;width:100%}
@media(max-width:600px){#cb-compare-tray{margin:16px;padding:14px}.cb-comparison{padding-left:16px;padding-right:16px}.cb-compare-table th,.cb-compare-table td{min-width:160px}}
.cb-brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px}.cb-brand-grid a{display:flex;min-height:100px;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:16px;background:#fff;border-radius:10px;color:#181c24}.cb-brand-grid img{width:90px;height:60px;object-fit:contain}
/* Keep comparison copy and native price markup legible on its white surface. */
.cb-comparison p,.cb-comparison caption,.cb-compare-table td{color:#354050}
.cb-compare-table del{color:#535e70;opacity:1}.cb-compare-table del .amount{color:inherit}
.cb-compare-table ins,.cb-compare-table ins .amount{color:#b11922}
.cb-comparison caption::after{content:" — scroll horizontally to see all products"}
