/* Brandevois Theme Layer - sitewide facelift (bv-theme plugin).
   Tokens first: every bv-* module reads these vars, so setting --bv-pine to ink
   removes green everywhere without touching the modules. */
:root, #bvhp, #bvh, #bvf, #bvshop, #bvpdp, .bv-features, .bv-quote-page{
  --bv-font:"Archivo",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --bv-serif:"Fraunces",Georgia,"Times New Roman",serif;
  --bv-ink:#111113; --bv-charcoal:#2B2B2B; --bv-sub:#61616b; --bv-line:#e4e4e9; --bv-soft:#f6f6f8;
  --bv-paper:#F5F3EE; --bv-cream:#F5F1E8; --bv-gold:#B8975A;
  --bv-pine:#111113; --bv-pine-d:#000;
  --e-global-color-accent:#111113; --e-global-color-primary:#111113; --e-global-color-secondary:#61616b; --e-global-color-text:#3A3733;
  --e-global-typography-primary-font-family:"Fraunces"; --e-global-typography-primary-font-weight:500;
  --e-global-typography-secondary-font-family:"Archivo"; --e-global-typography-text-font-family:"Archivo"; --e-global-typography-accent-font-family:"Archivo";
}
/* legacy per-block vars used by the homepage / header / footer HTML widgets */
#bvhp, #bvh, #bvf{--pine:#111113; --pine-d:#000; --ink:#111113; --sub:#61616b; --line:#e4e4e9; --soft:#f6f6f8;}

/* ---------- base typography ---------- */
body, .elementor, .elementor *:not(i):not(svg), .site-main, #bvhp, #bvh, #bvf, #bvshop, #bvpdp, .bv-features, .bva, .woocommerce, .woocommerce *{font-family:var(--bv-font) !important;}
body{color:var(--bv-ink); background:#fff; -webkit-font-smoothing:antialiased;}
h1, h2, h3, .bv-serif, #bvhp h1, #bvhp h2, #bvhp h3, #bvshop h1, #bvpdp .bp-title, #bvpdp .bp-related h2, .bv-features h2, .bva-card h3, .bva-h, .bva-atelier h3, .bva-faq h3, .bva-proof blockquote, #bvf .bvf-sub-h, .entry-title, .woocommerce h1, .woocommerce h2,
.elementor-heading-title, .elementor-widget-heading .elementor-heading-title, .bvp h1, .bvp h2, .bvp h3, .bv-quote-page h1, .bv-quote-page h2, .ff_landing_page_4 .ff-el-group label.ff-el-form-check-label + h2{
  font-family:var(--bv-serif) !important; font-weight:500 !important; letter-spacing:-.015em; line-height:1.12;
}
h4, h5, h6{font-family:var(--bv-font) !important; font-weight:600;}
#bvhp .hp-kicker, #bvpdp .hp-kicker, .bvp-eyebrow, .bva-kicker, .bva-n{font-family:var(--bv-font) !important; font-weight:600; letter-spacing:.12em; text-transform:uppercase; font-size:12px; color:var(--bv-sub);}
a{color:inherit;}
::selection{background:var(--bv-cream); color:var(--bv-ink);}

/* ---------- buttons: one system (10px radius, ink) ---------- */
.bv-btn, #bvhp .hp-pill, #bvh .bvh-pill, #bvf .bvf-pill, #bvshop .bs-pill, #bvpdp .bs-pill, #bvpdp .bp-cta, .bva-cta,
.elementor-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce .button.alt,
.wc-block-components-button, .ff-btn-submit, .lf-btn, #bvf .bvf-pill, .fluentform .ff-btn-submit{
  font-family:var(--bv-font) !important; font-weight:600 !important; letter-spacing:.01em; border-radius:10px !important; text-transform:none !important;
  transition:background .2s, color .2s, border-color .2s, transform .12s;
}
.bv-btn, #bvhp .hp-pill, #bvshop .bs-pill, #bvpdp .bs-pill, #bvpdp .bp-cta, .bva-cta, .elementor-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce .button.alt, .wc-block-components-button, .ff-btn-submit, .fluentform .ff-btn-submit{
  background:var(--bv-ink) !important; color:#fff !important; border:1px solid var(--bv-ink) !important;
}
.bv-btn:hover, #bvhp .hp-pill:hover, #bvshop .bs-pill:hover, #bvpdp .bs-pill:hover, #bvpdp .bp-cta:hover, .elementor-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce .button.alt:hover, .ff-btn-submit:hover{background:#000 !important; color:#fff !important;}
.bv-btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 24px; font-size:15px; text-decoration:none !important; line-height:1; cursor:pointer;}
.bv-btn.ghost, #bvhp .hp-ghost{background:transparent !important; color:var(--bv-ink) !important; border-color:rgba(0,0,0,.28) !important;}
.bv-btn.ghost:hover, #bvhp .hp-ghost:hover{background:var(--bv-soft) !important; border-color:var(--bv-ink) !important;}
.bv-btn.light, #bvhp .hp-white, #bvh .bvh-pill.bvh-light, #bvf .bvf-pill{background:#fff !important; color:var(--bv-ink) !important; border-color:#fff !important;}
.bv-btn.light:hover, #bvhp .hp-white:hover, #bvf .bvf-pill:hover{background:#e9e9ea !important; border-color:#e9e9ea !important;}
.bv-btn.ghost-light{background:transparent !important; color:#fff !important; border-color:rgba(255,255,255,.5) !important;}
.bv-btn.ghost-light:hover{background:rgba(255,255,255,.12) !important; border-color:#fff !important;}
#bvh .bvh-pill{background:var(--bv-ink) !important; color:#fff !important;}
#bvh .bvh-search form, #bvh .bvh-search button{border-radius:10px !important;}
#bvh .bvh-search button{width:34px !important; height:34px !important;}

/* ---------- header / footer ---------- */
#bvh{font-family:var(--bv-font) !important;}
#bvh .bvh-top{background:#0c0c0d !important;}
#bvh .bvh-link{font-weight:500 !important;}
#bvh .bvh-mcta h4{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:20px !important;}
#bvh .bvh-mcta{background:var(--bv-paper) !important;}
#bvf{background:#0c0c0d !important;}
#bvf .bvf-bar{background:#050506 !important;}
#bvf .bvf-sub-h{font-size:26px !important;}
#bvf .bvf-form input[type="email"]{border-radius:10px !important;}
#bvf .bvf-col a{font-weight:400 !important;}

/* ---------- homepage widget (#bvhp) ---------- */
#bvhp{font-family:var(--bv-font) !important; color:var(--bv-ink);}
#bvhp h2{font-size:clamp(28px,3.6vw,42px) !important;}
#bvhp .fhb-h1{font-family:var(--bv-serif) !important; font-weight:500 !important;}
#bvhp .fhb-copy{background:var(--bv-paper) !important;}
#bvhp .fhb-copy .hp-kicker{color:var(--bv-gold) !important;}
#bvhp .fhb-note{color:var(--bv-sub) !important;}
#bvhp .hp-tile, #bvhp .fhb-img, #bvhp .fhb-copy, #bvhp .hp-shop-card, #bvhp .hp-ed-card, #bvhp .hp-split-card, #bvhp .hp-step, #bvhp .hp-quote, #bvhp .bva-atelier{border-radius:20px !important;}
#bvhp .hp-card, #bvhp .hp-cat, #bvhp .s2c-tile, #bvhp .hp-look-card, #bvhp .fhb-card{border-radius:14px !important;}
#bvhp .hp-badge{border-radius:6px !important; font-family:var(--bv-font) !important;}
#bvhp .b-new, #bvhp .b-hot, #bvhp .b-sale, #bvhp .b-low, #bvhp .b-trend, #bvhp .b-best{background:var(--bv-ink) !important;}
#bvhp .b-sale{background:var(--bv-gold) !important;}
#bvhp .hp-vals{background:#0c0c0d !important;}
#bvhp .hp-quote{background:var(--bv-paper) !important;}
#bvhp .hp-quote-body blockquote{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:clamp(24px,2.6vw,34px) !important;}
#bvhp .hp-step{background:var(--bv-paper) !important;}
#bvhp .hp-step-n{font-family:var(--bv-serif) !important; color:var(--bv-gold) !important;}
#bvhp .hp-trust svg circle{fill:var(--bv-ink) !important;}
#bvhp .hp-pop-chip{border-radius:8px !important;}
#bvhp .s2c-quote{background:var(--bv-ink) !important; border-color:var(--bv-ink) !important;}
#bvhp .hp-faq summary{font-family:var(--bv-font) !important; font-weight:600;}
#bvhp .hp-final h2{font-size:clamp(32px,4vw,50px) !important;}
#bvhp .hp-news{background:var(--bv-paper) !important;}
#bvhp .hp-form input[type="email"]{border-radius:10px !important;}
#bvhp .hp-tabs .hp-tab{font-family:var(--bv-font) !important;}

/* ---------- shop archive + cards ---------- */
#bvshop .bs-head h1{font-size:clamp(32px,4vw,48px) !important;}
#bvshop .bs-card, #bvpdp .bs-card{border-radius:14px !important;}
#bvshop .bs-badge, #bvpdp .bs-badge{border-radius:6px !important; color:var(--bv-ink) !important;}
#bvshop .bs-chip{border-radius:10px !important;}
#bvshop .bs-chip:hover{box-shadow:0 8px 18px rgba(0,0,0,.08) !important;}
#bvshop .bs-sort select, #bvshop .bs-filter-btn{border-radius:10px !important;}
#bvshop .bs-cta{background:#0c0c0d !important; border-radius:20px;}
#bvshop .bs-pages .page-numbers{border-radius:10px !important;}
#bvshop .bs-drawer-form input[type="checkbox"]{accent-color:var(--bv-ink) !important;}
#bvshop .bs-price-row span{border-radius:10px !important;}

/* ---------- product page (#bvpdp) ---------- */
#bvpdp .bp-title{font-size:clamp(30px,3vw,40px) !important; line-height:1.1 !important;}
#bvpdp .bp-from b, #bvpdp .bp-from .woocommerce-Price-amount{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:30px !important;}
#bvpdp .bp-from{font-size:14px;}
#bvpdp .bp-ticks span{font-weight:500 !important;}
#bvpdp .bp-ticks svg circle{fill:var(--bv-ink) !important;}
#bvpdp .bp-dot{background:var(--bv-gold) !important;}
#bvpdp .bp-main, #bvpdp .bp-thumb{border-radius:12px !important;}
#bvpdp .bp-main{background:#fff; border:0 !important;}
#bvpdp .bp-main{position:relative; overflow:hidden;}
/* mobile gallery slider: native scroll-snap, no arrows (2026-09-04) */
#bvpdp .bp-slides{display:none; transition:opacity .17s ease;}
#bvpdp .bp-slides.bp-jump{opacity:0;}
#bvpdp .bp-slides.bp-jump, #bvpdp .bp-rail.bp-jump{scroll-behavior:auto !important;}
@media (max-width:1023px){
  #bvpdp .bp-main #bp-main-img{visibility:hidden;}
  #bvpdp .bp-slides{display:flex; position:absolute; inset:0; width:100%; height:100%; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; overscroll-behavior-x:contain; touch-action:pan-x pan-y;}
  #bvpdp .bp-slides::-webkit-scrollbar{display:none;}
  #bvpdp .bp-slide{flex:0 0 100%; width:100%; height:100%; scroll-snap-align:start; scroll-snap-stop:always; background:#fff;}
  #bvpdp .bp-main .bp-slide img{display:block; width:100%; height:100%; object-fit:contain !important; padding:5%; animation:none !important;}
  #bvpdp .bp-main .bp-slide.is-life img{object-fit:cover !important; padding:0;}
}
#bvpdp .bp-main img{object-fit:contain !important; mix-blend-mode:normal; padding:5%; transition:none !important; transform:none !important;}
@keyframes bpfade{from{opacity:0;} to{opacity:1;}}
#bvpdp .bp-main img.bp-fade{animation:bpfade .3s ease;}
@media (prefers-reduced-motion:reduce){ #bvpdp .bp-main img.bp-fade{animation:none;} }
/* lifestyle photos (non-white edges, detected in JS) fill the frame edge to edge */
#bvpdp .bp-thumb{background:#fff;}
#bvpdp .bp-thumb img{object-fit:contain !important; padding:9%; background:#fff; box-sizing:border-box;}
#bvpdp .bp-thumb.is-life img{object-fit:cover !important; padding:0;}
#bvpdp .bp-main.is-life{background:#fff !important;}
#bvpdp .bp-main.is-life img{object-fit:cover !important; padding:0 !important; mix-blend-mode:normal;}
#bvpdp .bp-tiers{border-radius:12px !important;}
#bvpdp .bp-tiers-h{background:var(--bv-soft);}
#bvpdp .bp-tcell.best{background:var(--bv-cream) !important;}
#bvpdp .bp-tcell.best em{color:var(--bv-gold) !important; font-weight:700;}
#bvpdp .bp-cta{border-radius:10px !important; padding:16px 22px !important;}
#bvpdp .bp-acc summary{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:22px !important;}
#bvpdp .bvsw-pagelab, #bvpdp .lvpo-label{font-family:var(--bv-font) !important; font-weight:600; letter-spacing:.1em; text-transform:uppercase; font-size:12px !important; color:var(--bv-sub) !important;}
#bvpdp .bvsw-pagelab b{text-transform:none; letter-spacing:0; color:var(--bv-ink) !important; font-size:13px;}
.bvsw-btn, .bvsw-pill, .lvpo-szbtn{border-radius:8px !important;}
.bvsw-pill.on, .lvpo-szbtn.on{background:var(--bv-ink) !important; color:#fff !important; border-color:var(--bv-ink) !important;}
.bv-panel .bv-phd .t b{font-family:var(--bv-serif) !important; font-weight:500 !important;}
.bv-deco-box, .bva-deco2, .bv-feature-block, .bva-who-card{border-radius:14px !important;}
.bv-deco-box .bv-deco-ico{color:var(--bv-ink) !important;}
.bv-features ul.bv-check li::before, .brandevois-pdp ul.bv-check li::before{background-color:var(--bv-ink) !important;}
.bv-cta-strip, .bv-quality-box, .brandevois-pdp .bv-cta-strip, .brandevois-pdp .bv-quality-box{border-left-color:var(--bv-gold) !important; background:var(--bv-cream) !important;}
.bva-proof{background:#0c0c0d !important;}
.bva-proof blockquote{font-weight:500 !important;}
.bva-inter b{font-family:var(--bv-serif) !important; font-weight:500 !important;}
.bva-atelier{background:var(--bv-paper) !important;}
.bva-cell{border-radius:12px !important;}
.bva-ticker i{color:var(--bv-gold) !important;}
.bva-n{color:var(--bv-gold) !important;}
.brandevois-faq details, .bva-faq-list details, .hp-faq details{border-color:var(--bv-line) !important;}
.brandevois-faq details[open]{border-left-color:var(--bv-gold) !important;}
.brandevois-faq summary, .bva-faq-list summary{font-family:var(--bv-font) !important; font-weight:600;}
.bv-icon{display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:12px; background:var(--bv-soft); color:var(--bv-ink); flex:none;}
.bv-icon img, .bv-icon svg{width:22px; height:22px; display:block;}
.bv-icon.lg{width:56px; height:56px;} .bv-icon.lg img, .bv-icon.lg svg{width:28px; height:28px;}
.bv-icon.dark{background:rgba(255,255,255,.08); color:var(--bv-gold); border:1px solid rgba(255,255,255,.16);}
.bv-icon.gold{color:var(--bv-gold);}
.bv-deco-box .bv-icon, .bva-deco2 .bv-icon{margin-bottom:8px;}

/* ---------- generic pages (hello-elementor .site-main) ---------- */
.site-main{max-width:none; padding:0;}
.site-main > .page-header{display:none;}
.site-main > .page-content{margin:0;}
.site-main:has(.bvp), .page-content:has(> .bvp){max-width:none !important; width:100% !important; padding:0 !important; margin:0 !important;}
.bvp{color:var(--bv-ink); font-size:16px; line-height:1.6;}
.bvp *{box-sizing:border-box;}
.bvp img{max-width:100%; display:block;}
.bvp .bvp-wrap{max-width:1180px; margin:0 auto; padding:0 24px;}
.bvp .bvp-center{text-align:center;}
.bvp .bvp-center .bvp-lede, .bvp .bvp-center > p{margin-left:auto; margin-right:auto;}
.bvp h1{font-size:clamp(36px,5vw,58px); margin:12px 0 16px; max-width:20ch;}
.bvp h2{font-size:clamp(28px,3.4vw,40px); margin:10px 0 14px;}
.bvp h3{font-size:22px; margin:0 0 8px;}
.bvp p{margin:0 0 14px; color:#3d3d42;}
.bvp .bvp-lede{font-size:18px; color:var(--bv-sub); max-width:60ch;}
.bvp .bvp-hero{background:var(--bv-paper); padding:72px 0 64px;}
.bvp .bvp-hero .bvp-eyebrow{color:var(--bv-gold);}
.bvp .bvp-section{padding:72px 0;}
.bvp .bvp-section.paper{background:var(--bv-paper);}
.bvp .bvp-section.dark{background:#0c0c0d; color:#fff;}
.bvp .bvp-section.dark h2, .bvp .bvp-section.dark h3{color:#fff;}
.bvp .bvp-section.dark p{color:rgba(255,255,255,.78);}
.bvp .bvp-section.dark .bvp-eyebrow{color:var(--bv-gold);}
.bvp .bvp-section.dark .bv-icon{background:rgba(255,255,255,.08); color:var(--bv-gold);}
.bvp .bvp-grid-2{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:28px;}
.bvp .bvp-grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:28px;}
.bvp .bvp-grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:28px;}
.bvp .bvp-card{background:#fff; border:1px solid var(--bv-line); border-radius:16px; padding:26px 24px;}
.bvp .bvp-card .bv-icon{margin-bottom:16px;}
.bvp .bvp-card h3{font-size:19px;}
.bvp .bvp-card p{font-size:15px; margin:0; color:var(--bv-sub);}
.bvp .paper .bvp-card{border-color:transparent;}
.bvp .bvp-feature{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; margin-top:16px;}
.bvp .bvp-feature.flip .bvp-feature-img{order:2;}
.bvp .bvp-feature-img{border-radius:20px; overflow:hidden; aspect-ratio:4/3; background:var(--bv-soft);}
.bvp .bvp-feature-img img{width:100%; height:100%; object-fit:cover;}
.bvp .bvp-feature-body p{max-width:48ch;}
.bvp .bvp-feature + .bvp-feature{margin-top:72px;}
.bvp .bvp-stats{display:flex; gap:44px; flex-wrap:wrap; margin-top:30px;}
.bvp .bvp-stats b{display:block; font-family:var(--bv-serif); font-weight:500; font-size:34px; line-height:1;}
.bvp .bvp-stats i{font-style:normal; font-size:13px; color:var(--bv-sub); display:block; margin-top:8px;}
.bvp .bvp-steps{display:grid; grid-template-columns:repeat(4,1fr); gap:32px; margin-top:34px;}
.bvp .bvp-step b{display:block; font-size:16px; font-weight:600; margin:14px 0 6px;}
.bvp .bvp-step p{font-size:14.5px; color:var(--bv-sub); margin:0;}
.bvp .bvp-faq{max-width:820px; margin:26px auto 0;}
.bvp .bvp-faq details{border:1px solid var(--bv-line); border-radius:12px; margin-bottom:10px; background:#fff;}
.bvp .bvp-faq summary{list-style:none; cursor:pointer; padding:17px 44px 17px 18px; font-weight:600; font-size:15.5px; position:relative;}
.bvp .bvp-faq summary::-webkit-details-marker{display:none;}
.bvp .bvp-faq summary::after{content:"+"; position:absolute; right:18px; top:50%; transform:translateY(-50%); font-family:var(--bv-serif); font-size:22px; color:var(--bv-sub);}
.bvp .bvp-faq details[open] summary::after{content:"\2212";}
.bvp .bvp-faq details[open]{border-left:3px solid var(--bv-gold);}
.bvp .bvp-faq p{padding:0 18px 17px; font-size:14.5px; color:var(--bv-sub); margin:0;}
.bvp .bvp-faq-group{margin-top:44px;}
.bvp .bvp-faq-group h2{font-size:26px; text-align:left; margin-bottom:6px;}
.bvp .bvp-contact{display:grid; grid-template-columns:.9fr 1.1fr; gap:40px; margin-top:24px; align-items:start;}
.bvp .bvp-contact-info{display:grid; gap:14px;}
.bvp .bvp-contact-form{background:#fff; border:1px solid var(--bv-line); border-radius:20px; padding:32px;}
.bvp .bv-btn + .bv-btn{margin-left:10px;}
.bvp .bvp-intro{max-width:62ch; margin:0 auto 6px; color:var(--bv-sub); font-size:17px;}
.bvp .bvp-methods{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:30px;}
.bvp .bvp-methods + .bvp-methods{margin-top:18px;}
.bvp .bvp-method{background:#fff; border:1px solid var(--bv-line); border-radius:16px; overflow:hidden; display:flex; flex-direction:column;}
.bvp .bvp-method > img{width:100%; aspect-ratio:1/1; object-fit:cover; display:block;}
.bvp .bvp-method-b{padding:18px 20px 22px;}
.bvp .bvp-methods.compact .bvp-method-b{padding:22px 22px 24px;}
.bvp .bvp-method-b h3{font-size:18px; margin:0 0 8px; display:flex; align-items:center; gap:10px;}
.bvp .bvp-method-b h3 .bv-icon{margin:0; flex:none; width:36px; height:36px; border-radius:10px;}
.bvp .bvp-method-b h3 .bv-icon svg, .bvp .bvp-method-b h3 .bv-icon img{width:18px; height:18px;}
.bvp .bvp-method-b p{font-size:14.5px; margin:0; color:var(--bv-sub);}
.bvp .bvp-stats-c{justify-content:center; text-align:center; gap:64px; margin-top:0;}
@media (max-width:1000px){ .bvp .bvp-methods{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .bvp .bvp-methods{grid-template-columns:1fr;} .bvp .bvp-stats-c{gap:28px; justify-content:flex-start; text-align:left;} }
.bvp .bvp-section.dark .bv-btn.light{margin-top:8px;}
@media (max-width:1024px){
  .bvp .bvp-grid-4{grid-template-columns:1fr 1fr;}
  .bvp .bvp-grid-3{grid-template-columns:1fr 1fr;}
  .bvp .bvp-steps{grid-template-columns:1fr 1fr;}
  .bvp .bvp-feature{gap:30px;}
}
@media (max-width:720px){
  .bvp .bvp-hero{padding:48px 0 40px;}
  .bvp .bvp-section{padding:52px 0;}
  .bvp .bvp-grid-2, .bvp .bvp-grid-3, .bvp .bvp-grid-4, .bvp .bvp-steps, .bvp .bvp-feature, .bvp .bvp-contact{grid-template-columns:1fr;}
  .bvp .bvp-feature.flip .bvp-feature-img{order:0;}
  .bvp .bvp-stats{gap:24px;}
  .bvp .bv-btn{width:100%;}
  .bvp .bv-btn + .bv-btn{margin:10px 0 0;}
  .bvp .bvp-contact-form{padding:22px;}
}

/* ---------- blog ---------- */
.bvb{max-width:1180px; margin:0 auto; padding:56px 24px 80px;}
.bvb-head{margin-bottom:34px;}
.bvb-head h1{font-size:clamp(34px,4.5vw,52px); margin:10px 0 10px;}
.bvb-head p{color:var(--bv-sub); font-size:17px; max-width:60ch; margin:0;}
.bvb-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.bvb-card{display:block; text-decoration:none !important; color:inherit; border:1px solid var(--bv-line); border-radius:16px; overflow:hidden; background:#fff; transition:transform .2s, box-shadow .2s;}
.bvb-card:hover{transform:translateY(-3px); box-shadow:0 16px 36px rgba(0,0,0,.08);}
.bvb-card-img{aspect-ratio:16/10; background:var(--bv-soft); overflow:hidden;}
.bvb-card-img img{width:100%; height:100%; object-fit:cover;}
.bvb-card-b{padding:18px 20px 22px;}
.bvb-card-b .bvp-eyebrow{display:block; margin-bottom:8px;}
.bvb-card-b{display:flex; flex-direction:column; padding:18px 20px 24px;}
.bvb-card-b h2{font-size:18px !important; margin:0 0 8px; line-height:1.3; letter-spacing:-.01em;}
.bvb-card-b p{font-size:14.5px; color:var(--bv-sub); margin:0 0 16px;}
.bvb-more{display:inline-flex; align-items:center; gap:8px; margin-top:auto; align-self:flex-start; padding:10px 16px; border:1px solid var(--bv-ink); border-radius:4px; font-size:13.5px; font-weight:600; color:var(--bv-ink); background:#fff; transition:background .15s, color .15s;}
.bvb-more svg{flex:none;}
.bvb-card:hover .bvb-more{background:var(--bv-ink); color:#fff;}
.bvb-grid, .bvs-more-grid{padding-bottom:16px;}
.bvs-more{margin:64px auto 0; padding-bottom:64px;}
.bvb-empty{text-align:center; padding:60px 0; color:var(--bv-sub);}
.bvb-pages{display:flex; gap:8px; justify-content:center; margin-top:36px;}
.bvb-pages .page-numbers{display:inline-flex; align-items:center; justify-content:center; min-width:42px; height:42px; padding:0 14px; border:1px solid var(--bv-line); border-radius:10px; font-weight:600; text-decoration:none !important; color:var(--bv-ink);}
.bvb-pages .page-numbers.current{background:var(--bv-ink); color:#fff; border-color:var(--bv-ink);}
.bvs{max-width:1180px; margin:0 auto; padding:48px 24px 80px;}
.bvs-hero{max-width:820px; margin:0 auto; text-align:center;}
.bvs-hero h1{font-size:clamp(32px,4.4vw,52px); margin:10px 0 14px;}
.bvs-meta{color:var(--bv-sub); font-size:14px;}
.bvs-img{border-radius:20px; overflow:hidden; aspect-ratio:16/8; background:var(--bv-soft); margin:32px auto 40px; max-width:1080px;}
.bvs-img img{width:100%; height:100%; object-fit:cover;}
.bvs-body{max-width:760px; margin:0 auto; font-size:17px; line-height:1.7; color:#3d3d42;}
.bvs-body h2{font-size:30px; margin:40px 0 12px;}
.bvs-body h3{font-size:22px; margin:28px 0 8px;}
.bvs-body p{margin:0 0 18px;}
.bvs-body ul, .bvs-body ol{margin:0 0 18px 22px;}
.bvs-body li{margin-bottom:8px;}
.bvs-body a{color:var(--bv-ink); text-decoration:underline; text-underline-offset:3px;}
.bvs-body img{border-radius:14px; margin:20px 0;}
.bvs-body .brandevois-faq{margin-top:36px;}
.bvs-body .brandevois-faq details{border:1px solid var(--bv-line); border-radius:12px; margin-bottom:10px; padding:0;}
.bvs-body .brandevois-faq summary{padding:15px 18px; font-weight:600; cursor:pointer; list-style:none;}
.bvs-body .brandevois-faq summary::-webkit-details-marker{display:none;}
.bvs-body .brandevois-faq p{padding:0 18px 15px; margin:0; font-size:15.5px;}
.bvs-cta{max-width:760px; margin:48px auto 0; background:#0c0c0d; color:#fff; border-radius:20px; padding:36px; display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;}
.bvs-cta h2{font-size:26px; margin:0 0 6px;}
.bvs-cta p{margin:0; color:rgba(255,255,255,.72);}
.bvs-more{max-width:1180px; margin:64px auto 0;}
.bvs-more h2{font-size:28px; margin-bottom:18px;}
@media (max-width:1024px){ .bvb-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:640px){ .bvb-grid{grid-template-columns:1fr;} .bvb{padding:36px 20px 60px;} .bvs{padding:32px 20px 60px;} .bvs-body{font-size:16px;} }

/* ---------- WooCommerce: cart, checkout, account, notices ---------- */
.woocommerce-page .site-main{max-width:1180px; margin:0 auto; padding:40px 24px 80px;}
.woocommerce-page .site-main > .page-header{display:block;}
.woocommerce-page .page-header .entry-title{font-size:clamp(30px,4vw,44px); margin-bottom:22px;}
.woocommerce table.shop_table{border:1px solid var(--bv-line) !important; border-radius:14px; border-collapse:separate !important; overflow:hidden;}
.woocommerce table.shop_table th, .woocommerce table.shop_table td{border-color:var(--bv-line) !important; padding:14px 16px !important;}
.woocommerce table.shop_table th{background:var(--bv-soft); font-weight:600; font-size:13px; letter-spacing:.06em; text-transform:uppercase; color:var(--bv-sub);}
.woocommerce .cart_totals, .woocommerce-checkout #order_review, .woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2{border-radius:16px;}
.woocommerce-checkout #order_review{background:var(--bv-paper); padding:24px; border-radius:16px;}
.woocommerce-checkout #order_review table.shop_table{background:#fff;}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single{
  border:1px solid var(--bv-line) !important; border-radius:10px !important; padding:12px 14px !important; height:auto !important; font-family:var(--bv-font) !important; font-size:15px; background:#fff;}
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus{border-color:var(--bv-ink) !important; outline:none;}
/* FunnelKit checkout (2026-10-07): it draws the State dropdown's box on the inner select2 element, so the rule above
   added a second border around it. Hand the outer box back to FunnelKit and match the inner one to the other inputs. */
#wfacp-e-form .select2-container--default .select2-selection--single{border:0 !important; padding:0 !important; background:transparent !important; border-radius:0 !important;}
#wfacp-e-form .select2-container .select2-selection--single .select2-selection__rendered{border:1px solid #e4e4e9 !important; border-radius:10px !important;}
.woocommerce form .form-row label{font-weight:500; font-size:14px; color:var(--bv-ink);}
.woocommerce-message, .woocommerce-info, .woocommerce-error{border-top:0 !important; border-left:3px solid var(--bv-ink) !important; background:var(--bv-soft) !important; border-radius:10px; color:var(--bv-ink) !important;}
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before{color:var(--bv-ink) !important;}
.woocommerce-error{border-left-color:#b91c1c !important;}
.woocommerce .woocommerce-MyAccount-navigation ul{list-style:none; padding:0; margin:0; border:1px solid var(--bv-line); border-radius:14px; overflow:hidden;}
.woocommerce .woocommerce-MyAccount-navigation li a{display:block; padding:12px 16px; text-decoration:none; border-bottom:1px solid var(--bv-line); font-weight:500;}
.woocommerce .woocommerce-MyAccount-navigation li.is-active a{background:var(--bv-ink); color:#fff;}
.woocommerce-form-login, .woocommerce-form-register{border:1px solid var(--bv-line) !important; border-radius:16px !important; padding:28px !important;}
.woocommerce a.remove{color:var(--bv-sub) !important; border-radius:50%;}
.woocommerce a.remove:hover{background:var(--bv-ink) !important;}
.woocommerce .quantity .qty{border:1px solid var(--bv-line); border-radius:10px; padding:10px; font-family:var(--bv-font);}
.woocommerce .coupon input.input-text{border-radius:10px !important; border:1px solid var(--bv-line) !important; padding:12px 14px !important;}
.woocommerce-thankyou-order-received{font-family:var(--bv-serif) !important; font-size:28px;}
.wc-block-components-notice-banner{border-radius:12px !important;}

/* ---------- Fluent Forms (contact / quote) ---------- */
.fluentform .ff-el-form-control{border:1px solid var(--bv-line) !important; border-radius:10px !important; padding:12px 14px !important; font-family:var(--bv-font) !important; font-size:15px !important; background:#fff !important; box-shadow:none !important;}
.fluentform .ff-el-form-control:focus{border-color:var(--bv-ink) !important; outline:none !important;}
.fluentform .ff-el-input--label label{font-weight:500 !important; font-size:14px !important; color:var(--bv-ink) !important;}
.fluentform .ff-btn-submit{padding:14px 26px !important; font-size:15px !important;}
.fluentform .ff-message-success{border-radius:12px; border-left:3px solid var(--bv-gold); background:var(--bv-cream);}
.bv-quote-page *, .ff_landing_page_4 *{font-family:var(--bv-font) !important;}
.bv-quote-page h1, .bv-quote-page h2, .ff_landing_page_4 h1, .ff_landing_page_4 h2, .ff_landing_page_4 .ff-el-group > label{font-family:var(--bv-serif) !important;}

/* ---------- misc ---------- */
.error404 .site-main{max-width:720px; margin:0 auto; padding:80px 24px 120px; text-align:center;}
.error404 .site-main .entry-title{font-size:clamp(36px,5vw,56px);}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} }

/* ---------- product page v2 (fused concept, 2026-09-02) ---------- */
#bvpdp .bp-brand{display:block; font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bv-sub); margin-bottom:8px;}
#bvpdp .bp-lbl{font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--bv-sub); margin-bottom:10px;}
#bvpdp .bp-meth{margin:18px 0 6px;}
#bvpdp .bp-meth-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
#bvpdp .bp-mcard{border:1.5px solid var(--bv-line); border-radius:12px; padding:12px 14px; background:#fff; display:flex; gap:12px; align-items:flex-start;}
#bvpdp .bp-mcard .bv-icon{width:38px; height:38px; border-radius:10px; background:var(--bv-soft); color:var(--bv-ink); flex:none;}
#bvpdp .bp-mcard .bv-icon svg, #bvpdp .bp-mcard .bv-icon img{width:20px; height:20px;}
#bvpdp .bp-mcard b{display:block; font-size:14px; font-weight:600; color:var(--bv-ink);}
#bvpdp .bp-mcard i{display:block; font-style:normal; font-size:12px; color:var(--bv-sub); margin-top:2px; line-height:1.4;}
#bvpdp .bp-tcell{position:relative; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center;}
#bvpdp .bp-tcell small{display:block; font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--bv-sub); margin-bottom:3px;}
#bvpdp .bp-tcell.best small{color:var(--bv-gold);}
#bvpdp .bp-cta2{display:flex; align-items:center; justify-content:center; width:100%; margin-top:10px; background:#fff !important; color:var(--bv-ink) !important; border:1.5px solid var(--bv-ink); border-radius:4px; padding:0 22px; min-height:54px; box-sizing:border-box; font-size:15px; font-weight:600; text-decoration:none; line-height:1;}
#bvpdp .bp-cta{border-radius:4px !important; padding:0 22px !important; min-height:54px; box-sizing:border-box; font-size:15px !important;}
#bvpdp .bp-cta2:hover{background:var(--bv-soft) !important;}
#bvpdp .bp-ship{margin-top:18px; display:grid; gap:8px; font-size:13.5px; color:var(--bv-sub); line-height:1.5;}
#bvpdp .bp-ship div{padding-left:24px; position:relative;}
#bvpdp .bp-ship div::before{content:""; position:absolute; left:0; top:3px; width:15px; height:15px; border-radius:50%; background:var(--bv-ink) url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.5l2.5 2.5 4.5-5.5' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat;}
#bvpdp .bp-ship b{color:var(--bv-ink); font-weight:600;}
#bvpdp .bp-tabs{margin-top:64px; border-top:1px solid var(--bv-line); padding-top:36px; display:grid; grid-template-columns:1fr 1fr; gap:56px;}
#bvpdp .bp-tabs.single{grid-template-columns:1fr; max-width:820px;}
#bvpdp .bp-tabs h3{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:24px; letter-spacing:-.01em; margin:0 0 12px;}
#bvpdp .bp-tabs .bp-specs{padding:0;}
#bvpdp .bp-acc{margin-top:56px; border-top:1px solid var(--bv-line); display:grid; grid-template-columns:1fr 1fr; gap:0 56px;}
#bvpdp .bp-acc-i{border-bottom:1px solid var(--bv-line);}
#bvpdp .bp-acc-i summary{list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:22px 2px; font-family:var(--bv-font); font-size:19px; font-weight:500; color:var(--bv-ink); letter-spacing:-.005em;}
#bvpdp .bp-acc-i summary::-webkit-details-marker{display:none;}
#bvpdp .bp-acc-i summary svg{flex:none; color:var(--bv-ink); transition:transform .2s;}
#bvpdp .bp-acc-i[open] summary svg{transform:rotate(180deg);}
#bvpdp .bp-acc-i summary:hover{color:var(--bv-sub);}
#bvpdp .bp-acc-b{padding:0 2px 24px; font-size:15px; color:var(--bv-sub); line-height:1.6;}
#bvpdp .bp-acc-b p{margin:0 0 10px;}
#bvpdp .bp-acc-b p:last-child{margin-bottom:0;}
#bvpdp .bp-acc-b b{color:var(--bv-ink); font-weight:600;}
#bvpdp .bp-acc-b a{color:var(--bv-ink); text-decoration:underline; text-underline-offset:2px;}
#bvpdp .bp-acc-list{list-style:none; padding:0; margin:4px 0 0; display:grid; gap:9px;}
#bvpdp .bp-acc-list li{position:relative; padding-left:18px;}
#bvpdp .bp-acc-list li::before{content:""; position:absolute; left:2px; top:.62em; width:6px; height:6px; border-radius:50%; background:var(--bv-gold);}
#bvpdp .bp-acc-methods{display:grid; gap:14px;}
#bvpdp .bp-acc-m{display:flex; gap:12px; align-items:flex-start;}
#bvpdp .bp-acc-m .bv-icon{width:38px; height:38px; border-radius:10px; background:#fff; border:1px solid var(--bv-line); flex:none;}
#bvpdp .bp-acc-m .bv-icon svg, #bvpdp .bp-acc-m .bv-icon img{width:18px; height:18px;}
#bvpdp .bp-acc-m .bv-icon{display:inline-flex !important; align-items:center; justify-content:center; padding:0; margin:0;}
#bvpdp .bp-acc-m > div > b{display:block; margin-bottom:2px;}
#bvpdp .bp-acc-m > div > span{display:block;}
#bvpdp .bp-acc-m > div > i{display:block; font-style:normal; font-size:13px; color:var(--bv-ink); margin-top:4px;}
#bvpdp .bp-acc-note{margin-top:14px !important; font-size:14px;}
#bvpdp .bp-acc .bp-spec-tbl{margin-top:2px; border:0; font-size:15px;}
#bvpdp .bp-acc .bp-spec-tbl tr:nth-child(odd) td, #bvpdp .bp-acc .bp-spec-tbl tr:nth-child(even) td{background:transparent;}
#bvpdp .bp-acc .bp-spec-tbl td{padding:11px 0; border:0; border-bottom:1px solid var(--bv-line); vertical-align:top;}
#bvpdp .bp-acc .bp-spec-tbl tr:last-child td{border-bottom:0;}
#bvpdp .bp-acc .bp-spec-tbl td:first-child{width:38%; padding-right:16px; font-weight:600; color:var(--bv-ink);}
#bvpdp .bp-acc .bp-spec-tbl td:last-child{color:var(--bv-sub);}
#bvpdp .bp-acc-locs{list-style:none; padding:0; margin:4px 0 12px; display:grid; gap:9px;}
#bvpdp .bp-acc-locs li{position:relative; padding-left:18px;}
#bvpdp .bp-acc-locs li::before{content:""; position:absolute; left:2px; top:.62em; width:6px; height:6px; border-radius:50%; background:var(--bv-gold);}
#bvpdp .bp-acc-locs li b{color:var(--bv-ink);}
#bvpdp .bp-acc-locs li span{color:var(--bv-sub);}
#bvpdp .bp-acc-locs li span::before{content:" \00b7 ";}
#bvpdp .bp-pay-badge{display:flex; align-items:center; gap:12px; padding:2px 0 14px; margin-bottom:14px; border-bottom:1px solid var(--bv-line); color:var(--bv-ink);}
#bvpdp .bp-pay-badge svg{flex:none;}
#bvpdp .bp-pay-badge span{font-size:15.5px; color:var(--bv-ink);}
#bvpdp .bp-pay-badge span b{font-weight:700;}
#bvpdp .bp-pay-badge img{height:28px; width:auto; margin-left:auto; display:block;}
#bvpdp .bp-pay-icons + .bp-acc-list{margin-top:16px;}
#bvpdp .bp-trust{margin-top:18px; padding-top:16px; border-top:1px solid var(--bv-line);}
#bv-ovl .bv-pbody{overflow-x:hidden;} /* the swatch hover preview pops past the panel edge; never show a sideways scrollbar for it */
#bvpdp .bp-trust .bp-pay-badge{padding:0 0 12px; margin-bottom:12px; gap:10px;}
#bvpdp .bp-trust .bp-pay-badge span{font-size:14px;}
#bvpdp .bp-trust .bp-pay-badge img{height:24px;}
#bvpdp .bp-trust .bp-pay-icons{gap:6px;}
#bvpdp .bp-trust .bp-pay-icons img{height:22px; padding:2px 4px; border-radius:4px;}
#bvpdp .bp-pay-icons{display:flex; flex-wrap:wrap; gap:8px; margin-top:0;}
#bvpdp .bp-pay-icons img{height:26px; width:auto; display:block; background:#fff; border:1px solid var(--bv-line); border-radius:5px; padding:2px 5px; box-sizing:content-box;}
#bvpdp .bp-help{list-style:none; padding:0; margin:2px 0 0; display:grid; gap:14px;}
#bvpdp .bp-help a{display:inline-flex; align-items:center; gap:12px; font-weight:600; color:var(--bv-ink); text-decoration:none !important;}
#bvpdp .bp-help a:hover{text-decoration:underline !important; text-underline-offset:3px;}
#bvpdp .bp-help svg{flex:none; color:var(--bv-ink);}
#bvpdp .bp-hl{margin-top:64px; display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); background:var(--bv-paper); border-radius:24px; overflow:hidden;}
#bvpdp .bp-hl-copy{padding:56px 48px 44px; display:flex; flex-direction:column; min-height:540px;}
#bvpdp .bp-hl .bp-kicker{display:block; margin-bottom:12px;}
#bvpdp .bp-hl h2{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:clamp(28px,3.6vw,42px); line-height:1.12; letter-spacing:-.015em; margin:0 0 18px; max-width:16ch; color:var(--bv-ink);}
#bvpdp .bp-hl h2 em{font-style:italic; color:var(--bv-gold);}
#bvpdp .bp-hl p{color:#4a4a50; font-size:16px; line-height:1.65; max-width:44ch; margin:0;}
#bvpdp .bp-hl-notes{list-style:none; padding:44px 0 0; margin:auto 0 0; display:grid; gap:6px;}
#bvpdp .bp-hl-notes li{font-size:14px; font-weight:600; color:var(--bv-ink);}
#bvpdp .bp-hl-im{min-height:540px; background:var(--bv-soft);}
#bvpdp .bp-hl-im img{width:100%; height:100%; object-fit:cover; display:block;}
#bvpdp .bp-band > .bp-band-grid.flip:first-child{margin-top:0;}
/* Feature switcher (Option F) */
#bvpdp .bp-fx{display:grid; grid-template-columns:1fr 1fr; gap:0; margin-top:64px;}
#bvpdp .bp-fx-list{padding:8px 56px 0 0; display:flex; flex-direction:column;}
#bvpdp .bp-fx-list .bp-kicker{display:block; margin-bottom:12px;}
#bvpdp .bp-fx-list h2{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:clamp(30px,3.4vw,42px); line-height:1.1; letter-spacing:-.015em; max-width:15ch; margin:0 0 14px; color:var(--bv-ink);}
#bvpdp .bp-fx-list h2 em{font-style:italic; color:var(--bv-gold);}
#bvpdp .bp-fx-lede{font-size:16px; color:#4a4a50; max-width:46ch; margin:0 0 30px; line-height:1.6;}
#bvpdp .bp-fx-item{border-top:1px solid var(--bv-line); padding:22px 0; cursor:pointer; outline:none;}
#bvpdp .bp-fx-item:last-of-type{border-bottom:1px solid var(--bv-line);}
#bvpdp .bp-fx-item h3{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:24px; margin:0; display:flex; justify-content:space-between; align-items:center; gap:16px; color:var(--bv-sub); transition:color .2s; letter-spacing:-.01em; line-height:1.2;}
#bvpdp .bp-fx-item h3 i{font-family:var(--bv-font); font-style:normal; font-size:12px; letter-spacing:.12em; color:var(--bv-gold); font-weight:600; flex:none;}
#bvpdp .bp-fx-body{max-height:0; overflow:hidden; transition:max-height .35s ease, margin .2s;}
#bvpdp .bp-fx-body p{font-size:15px; color:#4a4a50; max-width:46ch; margin:0; line-height:1.6;}
#bvpdp .bp-fx-mim{display:none;}
#bvpdp .bp-fx-item.on h3, #bvpdp .bp-fx-item:focus-visible h3{color:var(--bv-ink);}
#bvpdp .bp-fx-item.on .bp-fx-body{max-height:900px; margin-top:10px;}
#bvpdp .bp-fx-notes{display:flex; flex-wrap:wrap; gap:8px; margin-top:28px;}
#bvpdp .bp-fx-notes span{font-size:13px; font-weight:600; padding:8px 12px; border:1px solid var(--bv-line); color:var(--bv-ink);}
#bvpdp .bp-fx-cta{margin-top:auto; padding-top:32px; display:flex; gap:10px; flex-wrap:wrap;}
#bvpdp .bp-fx-cta .bp-band-btn{border-radius:0 !important;}
#bvpdp .bp-fx-ghost{display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--bv-ink); color:var(--bv-ink) !important; padding:14px 24px; font-weight:600; font-size:15px; line-height:1; text-decoration:none !important; background:#fff;}
#bvpdp .bp-fx-ghost:hover{background:var(--bv-soft);}
#bvpdp .bp-fx-stage{position:relative; min-height:680px; background:var(--bv-soft); overflow:hidden;}
#bvpdp .bp-fx-stage img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:none !important; transform:none !important; margin:0;}
#bvpdp .bp-fx-item.hl h3{color:var(--bv-ink);}
#bvpdp .bp-fx-stage img.on{opacity:1;}
#bvpdp .bp-fx-cap{position:absolute; left:24px; bottom:20px; background:#fff; padding:8px 12px; font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--bv-ink);}
#bvpdp .bp-steps-k{display:block; margin-top:64px;}
#bvpdp .bp-steps-k + .bp-steps{margin-top:12px;}
#bvpdp .bp-steps{margin-top:64px; display:grid; grid-template-columns:repeat(4,1fr);}
#bvpdp .bp-steps > div{padding:28px 28px 30px; border-right:1px solid var(--bv-line);}
#bvpdp .bp-steps > div:first-child{padding-left:0;}
#bvpdp .bp-steps > div:last-child{border-right:0;}
#bvpdp .bp-steps .bv-icon{width:40px; height:40px; border-radius:0; border:1px solid var(--bv-line); background:#fff; color:var(--bv-ink); margin:0;}
#bvpdp .bp-steps .bv-icon svg, #bvpdp .bp-steps .bv-icon img{width:20px; height:20px;}
#bvpdp .bp-steps b{display:block; font-size:15.5px; font-weight:600; margin:14px 0 6px; color:var(--bv-ink);}
#bvpdp .bp-steps p{font-size:14.5px; color:var(--bv-sub); margin:0; line-height:1.55;}
@media (max-width:960px){
  #bvpdp .bp-fx{grid-template-columns:1fr; margin-top:48px;}
  #bvpdp .bp-fx-stage{display:none;}
  #bvpdp .bp-fx-mim{display:block; width:100%; aspect-ratio:4/3; object-fit:cover; margin:2px 0 12px; background:var(--bv-soft);}
  #bvpdp .bp-fx-list{padding:0;}
  #bvpdp .bp-fx-body{transition:none;}
  #bvpdp .bp-fx-item.on .bp-fx-body{max-height:none;}
  #bvpdp .bp-fx-item h3{font-size:21px;}
  #bvpdp .bp-steps{grid-template-columns:1fr 1fr; margin-top:48px;}
  #bvpdp .bp-steps > div{padding:20px 16px;}
  #bvpdp .bp-steps > div:first-child{padding-left:16px;}
  #bvpdp .bp-steps > div:nth-child(2){border-right:0;}
  #bvpdp .bp-steps > div:nth-child(-n+2){border-bottom:1px solid var(--bv-line);}
}
#bvpdp .bp-band{background:var(--bv-paper); border-radius:24px; margin-top:64px; padding:64px 48px;}
#bvpdp .bp-band .k{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:clamp(28px,4vw,44px); line-height:1.15; letter-spacing:-.015em; max-width:22ch; margin:0; color:var(--bv-ink);}
#bvpdp .bp-band .k em{font-style:italic; color:var(--bv-gold);}
#bvpdp .bp-band .k2{font-size:clamp(24px,3vw,34px); margin-bottom:16px;}
#bvpdp .bp-band-grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; margin-top:40px; align-items:center;}
#bvpdp .bp-band-grid.flip{margin-top:72px;}
#bvpdp .bp-band-grid.flip .im{order:2;}
#bvpdp .bp-band .im{border-radius:18px; overflow:hidden; aspect-ratio:4/3; background:#fff;}
#bvpdp .bp-band .im img{width:100%; height:100%; object-fit:cover; display:block;}
#bvpdp .bp-band p{color:#4a4a50; font-size:16px; line-height:1.65; max-width:48ch; margin:0 0 14px;}
#bvpdp .bp-stats{display:flex; gap:40px; flex-wrap:wrap; margin:24px 0 26px;}
#bvpdp .bp-stats b{display:block; font-family:var(--bv-serif) !important; font-weight:500; font-size:32px; line-height:1; color:var(--bv-ink);}
#bvpdp .bp-stats i{font-style:normal; display:block; font-size:13px; color:var(--bv-sub); margin-top:8px;}
#bvpdp .bp-band-btn{appearance:none; display:inline-flex; align-items:center; justify-content:center; background:var(--bv-ink) !important; color:#fff !important; border:1px solid var(--bv-ink); border-radius:10px; padding:14px 24px; font-family:var(--bv-font); font-size:15px; font-weight:600; line-height:1; cursor:pointer;}
#bvpdp .bp-band-btn:hover{background:#000 !important;}
#bvpdp .bp-craft{background:var(--bv-ink); color:var(--bv-paper); border-radius:24px; margin-top:24px; padding:64px 48px;}
#bvpdp .bp-craft h2{font-family:var(--bv-serif) !important; font-weight:500 !important; text-align:center; font-size:clamp(26px,3.4vw,38px); letter-spacing:-.015em; margin:0; color:#fff;}
#bvpdp .bp-craft-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:40px; max-width:1080px; margin:44px auto 0;}
#bvpdp .bp-craft .bv-icon{width:44px; height:44px; border-radius:12px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06); color:var(--bv-gold); margin-bottom:14px;}
#bvpdp .bp-craft .bv-icon svg, #bvpdp .bp-craft .bv-icon img{width:22px; height:22px;}
#bvpdp .bp-craft b{display:block; font-size:15px; font-weight:600; color:#fff;}
#bvpdp .bp-craft p{font-size:13.5px; color:#b9b6ae; margin:8px 0 0; line-height:1.55;}
#bvpdp .bva{margin-top:24px;}
@media (max-width:960px){
  #bvpdp .bp-tabs{grid-template-columns:1fr; gap:32px;}
  #bvpdp .bp-acc{grid-template-columns:1fr; gap:0; margin-top:44px;}
  #bvpdp .bp-hl{grid-template-columns:1fr; border-radius:20px; margin-top:48px;}
  #bvpdp .bp-hl-im{order:-1; min-height:0; aspect-ratio:4/3;}
  #bvpdp .bp-hl-copy{padding:32px 24px 30px; min-height:0;}
  #bvpdp .bp-hl-notes{padding-top:26px;}
  #bvpdp .bp-acc-col:first-child .bp-acc-i:last-child{border-bottom:1px solid var(--bv-line);}
  #bvpdp .bp-acc-i summary{font-size:17px; padding:18px 2px;}
  #bvpdp .bp-band{padding:44px 24px; border-radius:20px;}
  #bvpdp .bp-band-grid{grid-template-columns:1fr; gap:26px;}
  #bvpdp .bp-band-grid.flip{margin-top:48px;}
  #bvpdp .bp-band-grid.flip .im{order:0;}
  #bvpdp .bp-craft{padding:48px 24px; border-radius:20px;}
  #bvpdp .bp-craft-grid{grid-template-columns:1fr 1fr; gap:28px;}
}
@media (max-width:600px){
  #bvpdp .bp-craft-grid{grid-template-columns:1fr;}
  #bvpdp .bp-stats{gap:24px;}
}
@media (max-width:420px){
  #bvpdp .bp-meth-grid{grid-template-columns:1fr;}
}

/* ---------- product story: saved content in the fused design ---------- */
#bvpdp .bp-story{margin-top:72px;}
#bvpdp .bp-kicker{display:block; font-size:12px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--bv-sub); margin-bottom:10px;}
#bvpdp .bp-story-h{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:clamp(26px,3.2vw,36px); letter-spacing:-.015em; line-height:1.15; color:var(--bv-ink); margin:0 0 26px;}
#bvpdp .bp-story-lede{max-width:760px; margin:0 auto 64px; text-align:center;}
#bvpdp .bp-story-lede p{font-size:17px; line-height:1.7; color:#4a4a50; margin:0 0 14px;}
#bvpdp .bp-story-rows{display:grid; gap:24px; margin-bottom:72px;}
#bvpdp .bp-story-row{display:grid; grid-template-columns:1.1fr 1fr; gap:0; border:1px solid var(--bv-line); border-radius:20px; overflow:hidden; background:#fff; align-items:stretch;}
#bvpdp .bp-story-row.flip .im{order:2;}
#bvpdp .bp-story-row .im{min-height:380px; background:var(--bv-soft);}
#bvpdp .bp-story-row .im img{width:100%; height:100%; object-fit:cover; display:block;}
#bvpdp .bp-story-row .tx{display:flex; flex-direction:column; justify-content:center; padding:44px 48px;}
#bvpdp .bp-story-row h3{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:clamp(24px,2.6vw,32px); letter-spacing:-.015em; line-height:1.15; margin:0 0 12px; color:var(--bv-ink);}
#bvpdp .bp-story-row p{font-size:16px; line-height:1.65; color:#4a4a50; margin:0;}
#bvpdp .bp-story-sec{margin-top:72px;}
#bvpdp .bp-why-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 44px;}
#bvpdp .bp-why-row{display:flex; gap:12px; padding:16px 4px; border-top:1px solid var(--bv-line);}
#bvpdp .bp-why-row svg{flex:none; margin-top:2px;}
#bvpdp .bp-why-row b{display:block; font-size:15px; font-weight:600; color:var(--bv-ink); margin-bottom:3px;}
#bvpdp .bp-why-row span{font-size:14.5px; color:var(--bv-sub); line-height:1.55;}
#bvpdp .bp-who-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px;}
#bvpdp .bp-who-card{background:var(--bv-paper); border-radius:16px; padding:24px 22px; border-top:2px solid var(--bv-gold);}
#bvpdp .bp-who-card b{display:block; font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:19px; color:var(--bv-ink); margin-bottom:6px;}
#bvpdp .bp-who-card span{font-size:14.5px; color:var(--bv-sub); line-height:1.55;}
#bvpdp .bp-deco-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px;}
#bvpdp .bp-deco-card{border:1px solid var(--bv-line); border-radius:16px; padding:24px 22px; display:flex; flex-direction:column; align-items:flex-start; background:#fff;}
#bvpdp .bp-deco-card .bv-icon{margin-bottom:14px;}
#bvpdp .bp-deco-card h4{font-size:16.5px; font-weight:600; color:var(--bv-ink); margin:0 0 6px;}
#bvpdp .bp-deco-card p{font-size:14.5px; color:var(--bv-sub); line-height:1.6; margin:0;}
#bvpdp .bp-deco-card .spec{display:inline-block; margin-top:auto; padding-top:16px; font-size:12.5px; font-weight:600; color:var(--bv-ink);}
#bvpdp .bp-deco-card .spec i{font-style:normal; color:var(--bv-sub);}
#bvpdp .bp-deco-note{max-width:720px; margin:22px auto 0; text-align:center; font-size:14px; color:var(--bv-sub); line-height:1.65;}
#bvpdp .bp-glance{max-width:760px; margin-left:auto; margin-right:auto;}
#bvpdp .bp-gl-row{display:flex; justify-content:space-between; gap:26px; padding:14px 4px; border-top:1px solid var(--bv-line); font-size:14.5px;}
#bvpdp .bp-gl-row:last-child{border-bottom:1px solid var(--bv-line);}
#bvpdp .bp-gl-row b{font-weight:600; color:var(--bv-sub); flex:none;}
#bvpdp .bp-gl-row span{color:var(--bv-ink); text-align:right; line-height:1.55;}
#bvpdp .bp-story-rest{max-width:820px; margin-left:auto; margin-right:auto; font-size:15.5px; line-height:1.7; color:#4a4a50;}
#bvpdp .bp-story-rest h2, #bvpdp .bp-story-rest h3{font-family:var(--bv-serif) !important; font-weight:500 !important; color:var(--bv-ink); margin:28px 0 10px;}
#bvpdp .bp-story-rest ul{padding-left:22px; margin:0 0 14px;}
#bvpdp .bp-story-rest li{margin-bottom:8px;}
#bvpdp .bp-story-rest img{border-radius:14px;}
#bvpdp .bva-atelier{background:var(--bv-paper) !important; border-radius:24px !important; margin-top:72px !important; padding:64px 28px 72px !important;}
#bvpdp .bva-atelier h3{font-family:var(--bv-serif) !important; font-weight:500 !important; letter-spacing:-.015em !important; font-size:clamp(26px,3.2vw,36px) !important;}
#bvpdp .bva-cta{border-radius:10px !important; font-family:var(--bv-font) !important;}
/* colour studio stage: slide in from the side instead of the rise-and-zoom */
#bvpdp .bva-stage img.float{animation:bvslidein .38s cubic-bezier(.25,.8,.3,1) !important;}
@keyframes bvslidein{from{opacity:0; transform:translateY(28px);} to{opacity:1; transform:none;}}
@media (prefers-reduced-motion:reduce){ #bvpdp .bva-stage img.float{animation:none !important;} }
#bvpdp .bva-cell{flex:0 0 148px !important; background:transparent !important; border:0 !important; border-radius:0 !important; padding:0 4px !important; box-shadow:none !important; transform:none !important; display:flex; flex-direction:column; align-items:center;}
#bvpdp .bva-cell:hover, #bvpdp .bva-cell:focus{transform:none !important; box-shadow:none !important; background:transparent !important;}
#bvpdp .bva-cell img{width:100% !important; aspect-ratio:1/1 !important; object-fit:contain !important; border-radius:14px; padding:6px; box-sizing:border-box; border:2px solid transparent; transition:border-color .15s, transform .2s;}
#bvpdp .bva-cell:hover img{transform:translateY(-3px);}
#bvpdp .bva-cell.on img{border-color:var(--bv-ink);}
#bvpdp .bva-cell span{display:block !important; width:100%; margin-top:8px !important; font-size:12px !important; font-weight:600 !important; line-height:1.3 !important; white-space:normal !important; overflow-wrap:anywhere; min-height:2.6em; text-align:center;}
#bvpdp .bva-row{align-items:flex-start !important; gap:14px !important; padding:4px 2px !important; justify-content:flex-start !important; scroll-snap-type:x mandatory;}
#bvpdp .bva-rowwrap{max-width:820px !important; margin:34px auto 0 !important; padding:0 !important;}
#bvpdp .bva-rowwrap.scrolls .bva-row{padding:4px 2px !important;}
#bvpdp .bva-cell{flex:0 0 calc((100% - 42px) / 4) !important; scroll-snap-align:start;}
#bvpdp .bva-rownav{width:38px !important; height:38px !important;}
#bvpdp .bva-rowwrap.at-start .bva-rownav[data-dir="prev"], #bvpdp .bva-rowwrap.at-end .bva-rownav[data-dir="next"]{opacity:0 !important; visibility:hidden; pointer-events:none !important;}
#bvpdp .bva-rownav{transition:opacity .2s, background .2s;}
#bvpdp .bva-rownav{padding:0 !important; box-sizing:border-box; background:transparent !important; color:var(--bv-ink) !important; border:1px solid var(--bv-line) !important; box-shadow:none !important;}
#bvpdp .bva-rownav:hover, #bvpdp .bva-rownav:focus{background:#fff !important; border-color:var(--bv-ink) !important; color:var(--bv-ink) !important;}
#bvpdp .bva-rownav svg{flex:none; width:16px !important; min-width:16px; height:16px !important; stroke-width:2 !important;}
#bvpdp .bva-rownav[data-dir="prev"]{left:-52px !important;}
#bvpdp .bva-rownav[data-dir="next"]{right:-52px !important;}
@media (max-width:1100px){
  #bvpdp .bva-rowwrap{padding:0 54px !important;}
  #bvpdp .bva-rownav[data-dir="prev"]{left:0 !important;}
  #bvpdp .bva-rownav[data-dir="next"]{right:0 !important;}
}
@media (max-width:760px){
  #bvpdp .bva-atelier{padding:48px 10px 56px !important;}
  #bvpdp .bva-rowwrap{padding:0 46px !important;}
  #bvpdp .bva-rownav{width:44px !important; height:44px !important;}
  #bvpdp .bva-rownav svg{width:16px !important; min-width:16px; height:16px !important; stroke-width:2 !important;}
  #bvpdp .bva-cell{flex:0 0 calc((100% - 14px) / 2) !important;}
  #bvpdp .bva-stage{width:min(300px,70vw) !important;}
}
#bvpdp .bva-name{font-weight:600 !important;}
/* Color studio v3 (Studio 2, approved 2026-09-03): split header, full-view shade left, 3x3 paged grid right, hairline Previous/Next bars. */
#bvpdp #bva-atelier{background:#fff !important; border-radius:0 !important; padding:0 !important; margin-top:64px !important; text-align:left !important;}
#bvpdp .bva-head{display:grid; grid-template-columns:1fr auto; gap:40px; align-items:end; padding-bottom:22px; border-bottom:1px solid var(--bv-line);}
#bvpdp .bva-head .bva-kicker{display:block; color:var(--bv-gold) !important;}
#bvpdp .bva-head h3{margin:10px 0 0 !important; font-size:clamp(30px,3.4vw,42px) !important; line-height:1.1 !important; text-align:left !important;}
#bvpdp .bva-head h3 em{font:inherit; font-style:normal; color:inherit;} /* no gold italic accent (Lily, 2026-09-05) */
#bvpdp .bva-sel{text-align:right;}
#bvpdp .bva-sel i{display:block; font-style:normal; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--bv-gold); font-weight:600;}
#bvpdp .bva-sel .bva-name{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:24px !important; margin:2px 0 0 !important; text-align:right !important; letter-spacing:-.01em;}
#bvpdp .bva-body{display:grid; grid-template-columns:1.1fr 1fr;}
#bvpdp .bva-stage{width:auto !important; max-width:none !important; height:auto !important; min-height:560px; background:#fff !important; margin:0 !important; padding:0 !important; display:flex !important; align-items:center; justify-content:center; border-bottom:1px solid var(--bv-line); border-radius:0 !important; box-shadow:none !important; overflow:hidden;}
#bvpdp .bva-stage img{width:100% !important; height:100% !important; max-height:560px !important; object-fit:contain !important; margin:0 !important; border-radius:0 !important; display:block;}
#bvpdp .bva-side{border-left:1px solid var(--bv-line); border-bottom:1px solid var(--bv-line); display:flex; flex-direction:column; min-width:0;}
#bvpdp .bva-side .bva-rowwrap{max-width:none !important; margin:0 !important; padding:0 !important; position:relative; overflow:hidden;}
#bvpdp .bva-row.bva-pages{display:flex !important; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; gap:0 !important; padding:0 !important; margin:0 !important; align-items:stretch !important; justify-content:flex-start !important;}
#bvpdp .bva-row.bva-pages::-webkit-scrollbar{display:none;}
#bvpdp .bva-rowwrap.scrolls .bva-row.bva-pages{padding:0 !important;}
#bvpdp .bva-page{flex:0 0 100%; width:100%; min-width:0; max-width:100%; scroll-snap-align:start; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-content:start; box-sizing:border-box;}
#bvpdp .bva-page .bva-cell{min-width:0; max-width:100%; overflow:hidden; scroll-snap-align:none !important;}
#bvpdp .bva-row.bva-pages{scroll-snap-type:x mandatory !important; scroll-snap-stop:always; overscroll-behavior-x:contain;}
#bvpdp .bva-page{scroll-snap-align:start !important; scroll-snap-stop:always;}
#bvpdp .bva-page .bva-cell{flex:none !important; width:auto !important; padding:16px 14px 12px !important; border:0 !important; border-right:1px solid var(--bv-line) !important; border-bottom:1px solid var(--bv-line) !important; position:relative; margin:0 !important; border-radius:0 !important; background:#fff !important; cursor:pointer;}
#bvpdp .bva-page .bva-cell:nth-child(3n){border-right:0 !important;}
#bvpdp .bva-page{grid-auto-rows:1fr;}
#bvpdp .bva-page .bva-fill{display:block; border-right:1px solid var(--bv-line); border-bottom:1px solid var(--bv-line); background:#fff;}
#bvpdp .bva-page .bva-fill:nth-child(3n){border-right:0;}
#bvpdp .bva-page .bva-cell::after{content:""; position:absolute; inset:0; border:2px solid var(--bv-ink); opacity:0; pointer-events:none; transition:opacity .15s;}
#bvpdp .bva-page .bva-cell.on::after{opacity:1;}
#bvpdp .bva-page .bva-cell img{border:0 !important; padding:0 !important; border-radius:0 !important; transform:none !important; aspect-ratio:1/1 !important; object-fit:contain !important;}
#bvpdp .bva-page .bva-cell:hover img{transform:none !important;}
#bvpdp .bva-page .bva-cell span{min-height:0 !important; margin-top:8px !important; white-space:nowrap !important; overflow:hidden; text-overflow:ellipsis; color:var(--bv-sub); font-size:12px !important;}
#bvpdp .bva-page .bva-cell.on span{color:var(--bv-ink);}
#bvpdp .bva-nav{display:flex; margin-top:auto; border-top:1px solid var(--bv-line);}
#bvpdp .bva-nav .bva-rownav{position:static !important; flex:1; width:auto !important; height:auto !important; border:0 !important; border-right:1px solid var(--bv-line) !important; border-radius:0 !important; padding:16px !important; display:flex !important; align-items:center; justify-content:center; gap:10px; font-family:var(--bv-font) !important; font-weight:600; font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--bv-ink) !important; background:#fff !important; opacity:1 !important; visibility:visible !important; transform:none !important; box-shadow:none !important; left:auto !important; right:auto !important; top:auto !important; cursor:pointer;}
#bvpdp .bva-nav .bva-rownav:last-child{border-right:0 !important;}
#bvpdp .bva-nav .bva-rownav:hover{background:var(--bv-soft) !important;}
#bvpdp .bva-rowwrap.at-start + .bva-nav .bva-rownav[data-dir="prev"], #bvpdp .bva-rowwrap.at-end + .bva-nav .bva-rownav[data-dir="next"]{opacity:.35 !important; pointer-events:none;}
#bvpdp .bva-ctawrap{display:flex !important; gap:10px; margin:auto 0 0 !important; padding:24px 24px 24px; justify-content:flex-start !important; flex-wrap:wrap; border-top:1px solid var(--bv-line);}
#bvpdp .bva-nav{margin-top:0;}
#bvpdp .bva-nav + .bva-ctawrap{margin-top:0 !important;}
#bvpdp .bva-side > .bva-rowwrap{flex:1 0 auto;}
#bvpdp .bva-side .bva-ctawrap{padding:0 !important; gap:0 !important; border-top:0 !important; height:auto !important; min-height:0 !important; box-sizing:border-box; overflow:visible;}
#bvpdp .bva-side .bva-cta, #bvpdp .bva-side .bva-ghost{padding:18px 16px !important; font-size:14px !important; letter-spacing:.02em;}
#bvpdp .bva-side .bva-ghost{border:0 !important; border-left:1px solid var(--bv-line) !important;}
@media (max-width:760px){
  #bvpdp .bva-side .bva-ctawrap{padding:20px 0 0 !important; gap:10px !important;}
  #bvpdp .bva-side .bva-ghost{border:1px solid var(--bv-ink) !important;}
}
#bvpdp .bva-rowwrap + .bva-nav{border-top:0; border-bottom:1px solid var(--bv-line);}
#bvpdp .bva-side .bva-rowwrap{line-height:0;}
#bvpdp .bva-page .bva-cell{line-height:1.3;}
#bvpdp .bva-side .bva-cta, #bvpdp .bva-side .bva-ghost{flex:1 1 0; padding:14px 16px !important; height:auto !important; min-height:0 !important; white-space:nowrap; line-height:1 !important;}
#bvpdp .bva-cta{border-radius:0 !important; display:inline-flex !important; opacity:1 !important; visibility:visible !important; transform:none !important; margin:0 !important;}
#bvpdp .bva-ghost{display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--bv-ink); color:var(--bv-ink) !important; padding:14px 24px; font-weight:600; font-size:15px; line-height:1; text-decoration:none !important; background:#fff;}
#bvpdp .bva-ghost:hover{background:var(--bv-soft);}
/* Studio v3.1: buttons under the shade (left), swatch rows stretch to fill the column, paging bar pinned at the bottom (right). */
#bvpdp .bva-left{display:flex; flex-direction:column; border-bottom:1px solid var(--bv-line); min-width:0;}
#bvpdp .bva-left .bva-stage{flex:1 1 auto; border-bottom:0;}
#bvpdp .bva-left .bva-ctawrap{display:flex !important; gap:0 !important; margin:0 !important; padding:0 !important; border-top:1px solid var(--bv-line) !important; flex-wrap:nowrap;}
#bvpdp .bva-left .bva-cta, #bvpdp .bva-left .bva-ghost{flex:1 1 0; padding:18px 16px !important; font-size:14px !important; letter-spacing:.02em; border-radius:0 !important; height:auto !important; min-height:0 !important; line-height:1 !important; white-space:nowrap; margin:0 !important;}
#bvpdp .bva-left .bva-ghost{border:0 !important; border-left:1px solid var(--bv-line) !important;}
#bvpdp .bva-left .bva-cta{padding:19px 16px !important; font-size:15px !important; letter-spacing:.01em;}
#bvpdp .bva-quote{margin:12px 0 0 !important; font-size:14px; color:var(--bv-sub); max-width:46ch;}
#bvpdp .bva-quote a{color:var(--bv-ink); text-decoration:underline; text-underline-offset:3px;}
/* Studio v3.3: Start Order is a full-width bar under Previous/Next in the swatch column; shade column is image only. */
#bvpdp .bva-left .bva-stage{border-bottom:1px solid var(--bv-line);}
#bvpdp .bva-nav{margin-top:auto; border-top:1px solid var(--bv-line) !important;}
#bvpdp .bva-side .bva-ctawrap{margin:0 !important; padding:0 !important; border-top:1px solid var(--bv-line) !important; display:block !important;}
#bvpdp .bva-side .bva-cta{display:flex !important; width:100%; padding:19px 16px !important; font-size:15px !important; border-radius:0 !important; height:auto !important; min-height:0 !important; line-height:1 !important; margin:0 !important;}
#bvpdp .bva-side .bva-rowwrap{flex:1 1 auto;}
@media (max-width:760px){
  #bvpdp .bva-side .bva-ctawrap{padding:20px 0 0 !important; border-top:0 !important;}
  #bvpdp .bva-nav{margin-top:0;}
}
#bvpdp .bva-side .bva-rowwrap{display:flex; flex:1 1 auto; line-height:0;}
#bvpdp .bva-side .bva-row.bva-pages{flex:1 1 auto; height:auto;}
#bvpdp .bva-page{height:100%; align-content:stretch; grid-auto-rows:1fr;}
#bvpdp .bva-page .bva-cell{display:flex !important; flex-direction:column; justify-content:center; align-items:center;}
#bvpdp .bva-page .bva-cell img{max-height:150px;}
#bvpdp .bva-nav{margin-top:auto; border-bottom:0 !important;}
@media (max-width:760px){
  #bvpdp .bva-left{display:contents;}
  #bvpdp .bva-left .bva-stage{border-bottom:1px solid var(--bv-line);}
  #bvpdp .bva-left .bva-ctawrap{order:3; flex-wrap:wrap; padding:20px 0 0 !important; gap:10px !important; border-top:0 !important;}
  #bvpdp .bva-left .bva-cta, #bvpdp .bva-left .bva-ghost{flex:1 1 100%; padding:16px !important;}
  #bvpdp .bva-left .bva-ghost{border:1px solid var(--bv-ink) !important;}
  #bvpdp .bva-page{height:auto;}
  #bvpdp .bva-page .bva-cell img{max-height:none;}
}
@media (max-width:760px){
  #bvpdp #bva-atelier{margin-top:48px !important; padding:0 !important;}
  #bvpdp .bva-head{grid-template-columns:1fr; gap:10px; align-items:start;}
  #bvpdp .bva-sel, #bvpdp .bva-sel .bva-name{text-align:left !important;}
  #bvpdp .bva-body{grid-template-columns:1fr;}
  #bvpdp .bva-stage{min-height:0; aspect-ratio:1/1; width:100% !important;}
  #bvpdp .bva-stage img{max-height:none !important;}
  #bvpdp .bva-side{border-left:0;}
  #bvpdp .bva-page .bva-cell{padding:12px 8px 10px !important;}
  #bvpdp .bva-page .bva-cell span{font-size:11px !important;}
  #bvpdp .bva-ctawrap{padding:20px 0 0; border-top:0;}
  #bvpdp .bva-ctawrap .bva-cta, #bvpdp .bva-ghost{flex:1 1 100%;}
}
#bvpdp .bp-spec-tbl{width:100%; border-collapse:collapse; font-size:14px;}
#bvpdp .bp-spec-tbl td{padding:11px 12px; border-bottom:1px solid var(--bv-line); vertical-align:top; line-height:1.5;}
#bvpdp .bp-spec-tbl td:first-child{font-weight:600; width:40%; color:var(--bv-ink);}
#bvpdp .bp-spec-tbl td:last-child{color:var(--bv-sub);}
#bvpdp .bp-spec-tbl tr:nth-child(odd) td{background:var(--bv-soft);}
/* choice gallery (scent cards) in place of the colour studio, 2026-09-05 */
#bvpdp .bp-choices{margin-top:64px; text-align:left;}
#bvpdp .bp-choices-head{display:grid; grid-template-columns:1fr auto; gap:40px; align-items:end; padding-bottom:22px; border-bottom:1px solid var(--bv-line); margin-bottom:26px;}
#bvpdp .bp-choices-head .bp-kicker{display:block; color:var(--bv-gold);}
#bvpdp .bp-choices-head h3{margin:10px 0 0; font-family:var(--bv-serif); font-weight:500; letter-spacing:-.015em; font-size:clamp(30px,3.4vw,42px); line-height:1.1; text-align:left;}
#bvpdp .bp-choices-head h3 em{font:inherit; font-style:normal; color:inherit;}
#bvpdp .bp-choices-note{margin:0; max-width:360px; font-size:13.5px; line-height:1.55; color:var(--bv-sub);}
#bvpdp .bp-choices-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px;}
#bvpdp .bp-choice{position:relative; display:flex; flex-direction:column; align-items:stretch; text-align:left; padding:0; margin:0; border:1px solid var(--bv-line); border-radius:4px; background:#fff; cursor:pointer; overflow:hidden; transition:border-color .15s, transform .15s, box-shadow .15s; font:inherit; color:inherit;}
#bvpdp .bp-choice:hover, #bvpdp .bp-choice.on{border-color:var(--bv-ink); transform:translateY(-2px); box-shadow:0 14px 34px rgba(0,0,0,.08);}
#bvpdp .bp-choice-img{display:block; aspect-ratio:1/1; background:var(--bv-paper);}
#bvpdp .bp-choice-img img{width:100%; height:100%; object-fit:cover; display:block;}
#bvpdp .bp-choice-txt{display:block; padding:14px 16px 6px; flex:1 1 auto;} /* text grows, so every card in a row is the same height and the buttons line up */
#bvpdp .bp-choice-txt b{display:block; font-family:var(--bv-serif); font-weight:500; font-size:19px; line-height:1.2; color:var(--bv-ink);}
#bvpdp .bp-choice-txt small{display:block; margin-top:4px; font-size:13px; line-height:1.45; color:var(--bv-sub); white-space:normal;}
#bvpdp .bp-choice, #bvpdp .bp-choice-txt{white-space:normal;}
#bvpdp .bp-choice-go{display:block; margin:auto 16px 16px; padding:11px 14px; border:1.5px solid var(--bv-ink); border-radius:0; text-align:center; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--bv-ink); background:#fff; transition:background .15s, color .15s;}
#bvpdp .bp-choice:hover .bp-choice-go, #bvpdp .bp-choice.on .bp-choice-go{background:var(--bv-ink); color:#fff;}
@media (max-width:1024px){ #bvpdp .bp-choices-grid{grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;} }
@media (max-width:640px){ #bvpdp .bp-choices{margin-top:48px;} #bvpdp .bp-choices-head{grid-template-columns:1fr; gap:10px; align-items:start;} #bvpdp .bp-choices-grid{grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;} #bvpdp .bp-choice-txt b{font-size:16px;} #bvpdp .bp-choice-go{margin:auto 12px 12px; padding:9px 10px;} }
#bvpdp .bp-faq{max-width:860px; margin:80px auto 0; text-align:center;}
#bvpdp .bp-faq .bp-story-h{margin-bottom:26px;}
#bvpdp .bp-faq-list{text-align:left;}
#bvpdp .bp-faq-list details{border:1px solid var(--bv-line); border-radius:12px; margin-bottom:10px; background:#fff; padding:0;}
#bvpdp .bp-faq-list summary{list-style:none; cursor:pointer; padding:17px 44px 17px 18px; font-weight:600; font-size:15px; position:relative; color:var(--bv-ink);}
#bvpdp .bp-faq-list summary::-webkit-details-marker{display:none;}
#bvpdp .bp-faq-list summary::after{content:"+"; position:absolute; right:18px; top:50%; transform:translateY(-50%); font-family:var(--bv-serif); font-size:22px; color:var(--bv-sub);}
#bvpdp .bp-faq-list details[open] summary::after{content:"\2212";}
#bvpdp .bp-faq-list details > *:not(summary){padding:0 18px 17px; color:var(--bv-sub); font-size:14.5px; line-height:1.65; margin:0;}
@media (max-width:960px){
  #bvpdp .bp-story{margin-top:56px;}
  #bvpdp .bp-story-row, #bvpdp .bp-story-row.flip{grid-template-columns:1fr;}
  #bvpdp .bp-story-row.flip .im{order:0;}
  #bvpdp .bp-story-row .im{min-height:0; aspect-ratio:4/3;}
  #bvpdp .bp-story-row .tx{padding:26px 24px;}
  #bvpdp .bp-why-grid{grid-template-columns:1fr;}
  #bvpdp .bp-story-sec{margin-top:56px;}
}

/* ---------- shop: filters as a left sidebar on desktop, slide-out drawer stays on mobile ---------- */
@media (min-width:1024px){
  #bvshop .bs-wrap{display:grid; grid-template-columns:264px minmax(0,1fr); column-gap:36px; grid-template-areas:"crumb crumb" "head head" "chips chips" "side grid" "side pages" "side empty"; align-items:start;}
  #bvshop .bs-crumb{grid-area:crumb;}
  #bvshop .bs-head{grid-area:head;}
  #bvshop .bs-chips{grid-area:chips;}
  #bvshop .bs-grid{grid-area:grid; grid-template-columns:repeat(3,1fr);}
  #bvshop .bs-pages{grid-area:pages;}
  #bvshop .bs-empty{grid-area:empty;}
  #bvshop .bs-scrim{display:none !important;}
  #bvshop .bs-filter-btn{display:none !important;}
  #bvshop .bs-drawer{grid-area:side; position:static !important; top:auto; left:auto; bottom:auto; width:100% !important; max-width:264px; max-height:none !important; height:auto !important; overflow:visible !important; transform:none !important; box-shadow:none !important; padding:0 !important; margin-top:26px; z-index:1 !important; visibility:visible !important; display:block !important;}
  #bvshop .bs-drawer-top .bs-x{display:none;}
  #bvshop .bs-drawer-top{min-height:0; margin-bottom:10px;}
  #bvshop .bs-drawer-form{display:block; width:100%; min-width:0;}
  #bvshop .bs-drawer-form fieldset{min-width:0; width:100%;}
  #bvshop .bs-price-row span{min-width:0;}
  #bvshop .bs-price-row input{width:100%;}
  #bvshop .bs-drawer-actions{margin-top:18px; position:static; padding-bottom:0;}
  #bvshop .bs-drawer-top strong{font-family:var(--bv-serif) !important; font-weight:500 !important; font-size:24px !important;}
  #bvshop .bs-drawer-actions{margin-top:14px; position:sticky; bottom:0; background:#fff; padding-bottom:6px;}
}
@media (min-width:1400px){
  #bvshop .bs-grid{grid-template-columns:repeat(4,1fr);}
}

/* ---------- 2026-09-02 late: light steps box, swatch breathing room, audience icons ---------- */
#bvpdp .bp-craft{background:var(--bv-cream); color:var(--bv-ink); border:1px solid #ece7dc;}
#bvpdp .bp-craft h2{color:var(--bv-ink);}
#bvpdp .bp-craft .bv-icon{background:#fff; border:1px solid var(--bv-line); color:var(--bv-ink);}
#bvpdp .bp-craft b{color:var(--bv-ink);}
#bvpdp .bp-craft p{color:var(--bv-sub);}
#bvpdp .bvsw-grid{gap:6px !important;}
#bvpdp .bvsw-btn{width:52px !important; height:52px !important; padding:4px !important; background:#fff !important; border-radius:12px !important; margin:0 !important;}
#bvpdp .bvsw-btn img{padding:2px !important; border-radius:8px !important;}
#bvpdp .bp-made{margin-top:4px; padding-top:14px; border-top:1px solid var(--bv-line);}
/* production + delivery badges under the price (2026-09-04) */
#bvpdp .bp-badges{display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 18px;}
#bvpdp .bp-badge{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--bv-line); border-radius:8px; background:#fff; font-size:13px; line-height:1.2; color:var(--bv-ink);}
#bvpdp .bp-badge svg{flex:0 0 auto; color:var(--bv-gold);}
#bvpdp .bp-badge b{font-weight:600;}
/* size guide accordion (2026-09-05) */
#bvpdp .bp-sg-note{margin:0 0 10px; font-size:13.5px; color:#555;}
#bvpdp .bp-sg-wrap{overflow-x:auto;}
#bvpdp .bp-sg-tbl th{text-align:left; font-weight:600; font-size:13px; padding:8px 10px; border-bottom:1px solid var(--bv-line); white-space:nowrap;}
#bvpdp .bp-sg-tbl td{white-space:nowrap;}
#bvpdp .bp-sg-tbl td:first-child{font-weight:600;}
/* one-piece sample (2026-09-04) */
#bvpdp .bp-badge-sample{border-color:var(--bv-gold); }
#bvpdp .bp-sample-form{margin-top:10px; text-align:center;}
#bvpdp .bp-sample-btn{background:none !important; border:0; padding:6px 0; font:inherit; font-size:14px; font-weight:600; color:var(--bv-ink) !important; text-decoration:underline; text-underline-offset:3px; cursor:pointer;}
#bvpdp .bp-sample-btn:hover, #bvpdp .bp-sample-btn:focus{background:none !important; color:var(--bv-gold) !important;}
#bvpdp .bp-sample-note{display:block; margin-top:4px; font-size:13px; color:#b26a00;}
#bvpdp .bp-price-note{display:block; margin-top:4px; font-size:13px; color:var(--bv-muted, #5b5b5b);}
#bvpdp .bp-from i{font-style:normal; font-size:15px; color:var(--bv-muted, #5b5b5b);}
@media (min-width:1024px){ #bvpdp .bp-meth-grid{grid-template-columns:repeat(auto-fit, minmax(0, 1fr));} }
#bvpdp .bp-who-card .bv-icon{background:#fff; border:1px solid var(--bv-line); margin-bottom:14px; width:44px; height:44px;}
#bvpdp .bp-who-card .bv-icon svg, #bvpdp .bp-who-card .bv-icon img{width:22px; height:22px;}
#bvpdp .bp-mcard .bv-icon svg, #bvpdp .bp-mcard .bv-icon img{width:20px; height:20px;}
