.bwbe{font:inherit;color:inherit;max-width:1180px;margin:0 auto;padding:0 18px}.bwbe *{box-sizing:border-box}.bwbe button,.bwbe input,.bwbe textarea,.bwbe select{font:inherit}.bwbe button{-webkit-tap-highlight-color:transparent}.bwbe-muted{color:#6b6b68}.bwbe-eyebrow{margin:0 0 6px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:#4d7e8b}.bwbe-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:28px;align-items:start}.bwbe-section-head{margin:0 0 12px}.bwbe-section-head h2,.bwbe-cart h2{margin:20px 0 10px}.bwbe-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.bwbe-product{border:1px solid #deded9;border-radius:12px;padding:16px;background:#fff}.bwbe-product h3{margin:0 0 6px;font-size:1.05rem}.bwbe-product p{margin:6px 0}.bwbe-product .bwbe-price{font-weight:700}.bwbe-product .bwbe-route{font-size:.85rem;opacity:.72}.bwbe-product button,.bwbe-primary,.bwbe-secondary{min-height:44px;border:0;border-radius:9px;padding:10px 15px;cursor:pointer;font-weight:800}.bwbe-product button,.bwbe-primary{background:#2b2b2b;color:#fff}.bwbe-secondary{background:#f1f0eb;color:#2b2b2b}.bwbe-primary{width:100%;margin-top:10px}.bwbe-primary:disabled,.bwbe-add-button:disabled{opacity:.45;cursor:not-allowed}.bwbe-cart{position:sticky;top:24px;border:1px solid #deded9;border-radius:12px;padding:18px;background:#fff}.bwbe-field{display:grid;gap:6px;margin:10px 0;font-weight:700}.bwbe-field input,.bwbe-field textarea,.bwbe-field select,.bwbe-option-select{width:100%;font-weight:400;border:1px solid #c8c7c0;border-radius:9px;padding:11px 12px;min-height:44px;background:#fff;color:#2b2b2b}.bwbe-field input:focus,.bwbe-field textarea:focus,.bwbe-search input:focus,.bwbe-option-select:focus{outline:3px solid rgba(65,170,205,.18);border-color:#41aacd}.bwbe-cart-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px 0;border-bottom:1px solid #eee}.bwbe-cart-row button{border:0;background:transparent;text-decoration:underline;cursor:pointer}.bwbe-totals{margin:14px 0;padding-top:8px;border-top:1px solid #d9d8d2}.bwbe-totals>div{display:flex;justify-content:space-between;gap:12px;margin:7px 0}.bwbe-totals .bwbe-total{font-weight:850;font-size:1.08rem;padding-top:6px}.bwbe-message{margin-top:10px;font-size:.93rem}.bwbe-error{color:#9b1c1c}.bwbe-success-text{color:#256c36}.bwbe-warning-text{color:#805f00}.bwbe-notice{border:1px solid #d7d5cc;border-radius:10px;padding:12px 14px;margin-bottom:16px;background:#fff}.bwbe-success{border-color:#aad4b5;background:#f3faf5}.bwbe-loading{opacity:.65;padding:18px 0}.bwbe-category{margin:18px 0 8px}.bwbe-category h3{margin:0 0 8px}.bwbe-status-check{margin:0 0 16px}.bwbe-status-card{border:1px solid #deded9;border-radius:10px;padding:12px}.bwbe-minimum{font-size:.9rem;color:#7a5700}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Branch A — warm minimal catalog */
.bwbe-browse{--bw-blue:#41aacd;--bw-yellow:#ffc000;--bw-green:#7ed6a7;--bw-charcoal:#2b2b2b;--bw-cream:#faf8f3;--bw-border:#e2dfd6;--bw-muted:#6c6a64;padding-bottom:96px}.bwbe-browse-intro{max-width:760px;margin:10px 0 30px}.bwbe-browse-intro h1{margin:0 0 8px;font-size:clamp(2.15rem,5vw,4rem);line-height:1;letter-spacing:-.045em;color:var(--bw-charcoal)}.bwbe-browse-intro>p:last-child{margin:0;color:var(--bw-muted);font-size:1.06rem}.bwbe-catalog-tools{display:grid;gap:14px;margin-bottom:22px}.bwbe-search{display:block}.bwbe-search input{width:100%;min-height:50px;border:1px solid #cbc8be;border-radius:999px;padding:11px 18px;background:#fff;color:var(--bw-charcoal)}.bwbe-group-filters,.bwbe-subgroup-filters{display:flex;gap:8px;flex-wrap:wrap}.bwbe-group-filters button,.bwbe-subgroup-filters button{border:1px solid #d3d0c7;border-radius:999px;background:#fff;color:var(--bw-charcoal);padding:8px 14px;min-height:40px;font-weight:750;cursor:pointer}.bwbe-group-filters button.is-active{background:var(--bw-charcoal);border-color:var(--bw-charcoal);color:#fff}.bwbe-subgroup-filters button.is-active{background:#e9f5f8;border-color:#b9dce5;color:#245b68}.bwbe-event-context{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:11px 0;margin-bottom:20px;border-top:1px solid var(--bw-border);border-bottom:1px solid var(--bw-border);color:#494943}.bwbe-event-context>div{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.bwbe-event-context span{color:var(--bw-muted);font-size:.86rem}.bwbe-link-button{border:0;background:transparent;color:#26768a;text-decoration:underline;text-underline-offset:3px;font-weight:800;cursor:pointer;padding:6px 0}.bwbe-catalog-count{font-size:.83rem;color:#7a7871;margin-bottom:10px}.bwbe-store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bwbe-store-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--bw-border);border-radius:16px;overflow:hidden}.bwbe-store-media{appearance:none;border:0;padding:0;position:relative;aspect-ratio:4/3;background:#f2f0ea;overflow:hidden;cursor:pointer}.bwbe-store-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s ease}.bwbe-store-media:hover img{transform:scale(1.015)}.bwbe-image-placeholder{position:absolute;inset:0;display:grid;place-items:center;padding:22px;text-align:center;font-weight:800;color:#7e817c}.bwbe-store-body{display:flex;flex-direction:column;flex:1;padding:16px}.bwbe-card-title{border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:var(--bw-charcoal);font-weight:850;font-size:1.08rem;line-height:1.25}.bwbe-store-description{margin:7px 0 10px;color:#66645e;font-size:.9rem;line-height:1.4;min-height:2.55em}.bwbe-store-price{margin:auto 0 8px;font-weight:850;color:#24383e}.bwbe-availability-status{display:block;margin:0 0 8px;font-size:.78rem;font-weight:800;color:#28703d}.bwbe-availability-status.is-unavailable{color:#9b1c1c}.bwbe-availability-status.is-quote{color:#7a5b00}.bwbe-add-button{width:100%;min-height:44px;border:0;border-radius:10px;background:var(--bw-blue);color:#fff;font-weight:850;cursor:pointer;padding:10px 12px}.bwbe-add-button:not(:disabled):hover{filter:brightness(.96)}.bwbe-empty{padding:34px;border:1px dashed #ccc8bd;border-radius:14px;text-align:center;color:#716f68}

.bwbe-event-dock{position:fixed;left:50%;bottom:var(--bwbe-dock-bottom,20px);transform:translateX(-50%);z-index:9996;width:min(720px,calc(100% - 28px));display:flex;align-items:center;justify-content:space-between;gap:16px;background:#2b2b2b;color:#fff;border-radius:14px;padding:12px 14px 12px 18px;box-shadow:0 10px 30px rgba(0,0,0,.18)}.bwbe-event-dock-copy{display:flex;gap:10px;align-items:baseline;min-width:0}.bwbe-event-dock-copy span{color:#dad8d0;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bwbe-event-dock button{border:0;border-radius:10px;background:var(--bw-yellow);color:#2b2b2b;font-weight:900;min-height:42px;padding:9px 14px;cursor:pointer}

.bwbe-dialog{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;margin:auto}.bwbe-dialog::backdrop{background:rgba(27,31,32,.48);backdrop-filter:blur(2px)}.bwbe-dialog-card{position:relative;width:min(560px,calc(100% - 28px));max-height:calc(100% - 40px);overflow:auto;margin:20px auto;background:var(--bw-cream);border:1px solid var(--bw-border);border-radius:18px;padding:24px;box-shadow:0 22px 60px rgba(0,0,0,.18)}.bwbe-dialog-card h2{margin:0 36px 8px 0;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.05;letter-spacing:-.03em}.bwbe-dialog-card h3{margin:20px 0 8px;font-size:1rem}.bwbe-dialog-lead,.bwbe-detail-text{color:#65635d;line-height:1.55}.bwbe-dialog-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:999px;background:#ece9e1;color:#2b2b2b;font-size:1.55rem;line-height:1;cursor:pointer}.bwbe-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bwbe-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.bwbe-dialog-actions .bwbe-primary,.bwbe-dialog-actions .bwbe-secondary{width:auto;margin-top:0}.bwbe-detail-card{width:min(920px,calc(100% - 28px));padding:0;overflow:auto;background:#fff}.bwbe-detail-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:480px}.bwbe-detail-media{position:relative;background:#f1efe9;min-height:420px}.bwbe-detail-media img{width:100%;height:100%;object-fit:cover;display:block}.bwbe-detail-copy{padding:28px}.bwbe-detail-price{font-weight:900;font-size:1.25rem;margin:10px 0}.bwbe-detail-list{padding-left:20px;color:#595851;line-height:1.55}.bwbe-option-select{margin:4px 0 8px}.bwbe-detail-status{font-size:.86rem;font-weight:750;color:#596b69}.bwbe-related-block{margin-top:22px;padding-top:16px;border-top:1px solid var(--bw-border)}.bwbe-related-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #efede7}.bwbe-cart-card{width:min(620px,calc(100% - 28px))}.bwbe-cart-event-line{color:#6f6c65;margin-bottom:8px}.bwbe-shop-cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #ebe8e0}.bwbe-shop-cart-row strong{display:block;font-size:.94rem}.bwbe-cart-unit{display:block;margin-top:3px;font-size:.8rem;color:#6d6b64}.bwbe-qty-controls{display:grid;grid-template-columns:31px 26px 31px;align-items:center;text-align:center}.bwbe-qty-controls button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #cbc8bf;border-radius:8px;background:#fff;cursor:pointer;font-weight:900}.bwbe-smart-suggestion{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0;padding:12px 13px;background:#edf8f1;border:1px solid #cde8d5;border-radius:10px}.bwbe-route-panel{border-radius:10px;padding:11px 12px;margin:12px 0;font-size:.86rem}.bwbe-route-panel.is-book{background:#eef8f1;border:1px solid #cde7d4}.bwbe-route-panel.is-quote{background:#fff7df;border:1px solid #eddda7}.bwbe-route-panel p{margin:5px 0 0}.bwbe-route-reason{font-weight:700}.bwbe-savings-note{font-size:.78rem;color:#39714a;margin:4px 0}.bwbe-minimum-suggestions{display:grid;gap:8px;margin:14px 0}.bwbe-suggestion-chip{width:100%;text-align:left;border:1px solid #d9d6cd;border-radius:9px;background:#fff;padding:9px 11px;cursor:pointer}.bwbe-check{display:flex;gap:10px;align-items:flex-start;margin:14px 0;font-size:.91rem;color:#585751}.bwbe-check input{margin-top:4px}.bwbe-confirm-card{width:min(500px,calc(100% - 28px))}.bwbe-confirm-card p{line-height:1.5;color:#5c5a54}

@media(max-width:960px){.bwbe-store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bwbe-detail-layout{grid-template-columns:1fr}.bwbe-detail-media{min-height:300px;aspect-ratio:16/9}}
@media(max-width:760px){.bwbe-layout{grid-template-columns:1fr}.bwbe-cart{position:static}.bwbe-product-grid{grid-template-columns:1fr 1fr}.bwbe-group-filters,.bwbe-subgroup-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.bwbe-group-filters button,.bwbe-subgroup-filters button{flex:0 0 auto}.bwbe-dialog-card{margin:12px auto;max-height:calc(100% - 24px)}.bwbe-event-context{align-items:flex-start}.bwbe-event-context>div{display:grid;gap:3px}.bwbe-event-dock-copy{display:grid;gap:2px}.bwbe-event-dock{--bwbe-dock-bottom:10px}}
@media(max-width:560px){.bwbe{padding-left:14px;padding-right:14px}.bwbe-store-grid,.bwbe-product-grid{grid-template-columns:1fr}.bwbe-browse-intro{margin-bottom:24px}.bwbe-browse-intro h1{font-size:2.35rem}.bwbe-dialog-grid{grid-template-columns:1fr}.bwbe-detail-copy{padding:22px 18px}.bwbe-detail-media{min-height:240px}.bwbe-store-description{min-height:0}.bwbe-event-dock{width:calc(100% - 20px);padding:10px 10px 10px 14px}.bwbe-event-dock button{padding:8px 11px}.bwbe-related-row,.bwbe-smart-suggestion{align-items:flex-start}.bwbe-related-row{display:grid}.bwbe-smart-suggestion{display:grid}}
.bwbe-related-hint{font-size:.78rem;color:#77746c;text-align:right}

/* Branch B — guided event planner */
.bwbe-planner{--bw-blue:#41aacd;--bw-yellow:#ffc000;--bw-green:#7ed6a7;--bw-charcoal:#2b2b2b;--bw-cream:#faf8f3;--bw-border:#e2dfd6;--bw-muted:#6c6a64;max-width:920px;padding-top:18px;padding-bottom:54px}.bwbe-planner-shell{min-height:520px;position:relative}.bwbe-planner-screen{display:none;max-width:760px;margin:0 auto;padding:38px 0;scroll-margin-top:118px}.bwbe-planner-screen.is-active{display:block}.bwbe-planner-screen h1,.bwbe-planner-screen h2{margin:0 0 12px;color:var(--bw-charcoal);font-size:clamp(2rem,5vw,3.8rem);line-height:1.02;letter-spacing:-.045em}.bwbe-planner-screen h2{font-size:clamp(1.85rem,4vw,3rem)}.bwbe-planner-lead{max-width:650px;margin:0 0 10px;color:var(--bw-muted);font-size:1.1rem;line-height:1.55}.bwbe-planner-reassurance,.bwbe-planner-question-note{margin:10px 0 24px;color:#77746d;font-size:.92rem}.bwbe-planner-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:26px}.bwbe-planner-actions .bwbe-primary,.bwbe-planner-actions .bwbe-secondary{width:auto;margin:0;min-width:180px}.bwbe-anchor-button{text-decoration:none;display:inline-grid;place-items:center}.bwbe-planner-progress{max-width:760px;margin:0 auto;padding-top:10px}.bwbe-planner-progress>span{display:block;margin-bottom:8px;color:#77746d;font-size:.82rem;font-weight:800}.bwbe-planner-dots{display:flex;gap:7px}.bwbe-planner-dots span{display:block;width:28px;height:4px;border-radius:99px;background:#e1ded5}.bwbe-planner-dots span.is-active{background:var(--bw-blue)}.bwbe-planner-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.bwbe-planner-choices button{min-height:62px;border:1px solid #d9d5ca;border-radius:14px;background:#fff;color:var(--bw-charcoal);padding:14px 16px;text-align:left;font-weight:800;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.bwbe-planner-choices button:hover{border-color:#9ecbd7}.bwbe-planner-choices button:focus-visible,.bwbe-planner-mini-choices button:focus-visible{outline:3px solid rgba(65,170,205,.22);outline-offset:2px}.bwbe-planner-choices button.is-selected{border-color:var(--bw-blue);background:#edf8fb}.bwbe-planner-choices-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.bwbe-planner-nav{max-width:760px;margin:4px auto 0;border-top:1px solid var(--bw-border);padding-top:14px}.bwbe-planner-inline-fieldset{border:0;padding:0;margin:20px 0}.bwbe-planner-inline-fieldset legend{font-weight:800;margin-bottom:9px}.bwbe-planner-mini-choices{display:flex;gap:8px}.bwbe-planner-mini-choices button{min-height:42px;border:1px solid #d9d5ca;border-radius:999px;background:#fff;padding:8px 15px;font-weight:800;cursor:pointer}.bwbe-planner-mini-choices button.is-selected{border-color:var(--bw-blue);background:#edf8fb}.bwbe-planner-screen[data-bwbe-planner-screen="when_where"] form{max-width:620px}.bwbe-planner-result-card{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr);overflow:hidden;border:1px solid var(--bw-border);border-radius:18px;background:#fff}.bwbe-planner-result-image{width:100%;height:100%;min-height:390px;object-fit:cover;display:block;background:#f1eee7}.bwbe-planner-result-body{padding:26px}.bwbe-planner-result-body h2,.bwbe-planner-result-body h3{font-size:clamp(1.7rem,4vw,2.7rem);margin-bottom:8px}.bwbe-planner-result-price{margin:0 0 14px;font-size:1.22rem;font-weight:900;color:#24434b}.bwbe-planner-result-reason{color:#5f5d57;line-height:1.6}.bwbe-planner-includes-label{display:block;margin:20px 0 8px}.bwbe-planner-result-components{padding-left:20px;margin:0 0 18px;color:#55534d;line-height:1.55}.bwbe-planner-route-note{padding:10px 12px;border-radius:10px;background:#fff6dc;border:1px solid #ead79a;color:#765a00;font-size:.88rem}.bwbe-planner-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0}.bwbe-planner-summary-item{padding:10px 12px;border:1px solid var(--bw-border);border-radius:12px;background:#fff}.bwbe-planner-summary-item span,.bwbe-planner-summary-item strong{display:block}.bwbe-planner-summary-item span{margin-bottom:4px;color:#77746d;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.bwbe-planner-summary-item strong{font-size:.9rem;line-height:1.35}.bwbe-planner-alternative{margin-top:30px;padding-top:22px;border-top:1px solid var(--bw-border)}.bwbe-planner-alt-card{display:flex;justify-content:space-between;gap:20px;align-items:center}.bwbe-planner-alt-card .bwbe-planner-result-body{padding:0;flex:1}.bwbe-planner-alt-card .bwbe-planner-result-body h3{font-size:1.25rem}.bwbe-planner-alt-card .bwbe-planner-result-reason,.bwbe-planner-alt-card .bwbe-planner-result-price{font-size:.92rem}.bwbe-planner-alt-card .bwbe-secondary{width:auto}.bwbe-planner-support-note{margin:16px 0;padding:12px 14px;border-radius:10px;background:#edf8f1;border:1px solid #cde8d5;color:#315f40}.bwbe-planner-custom-result{max-width:720px}.bwbe-planner-custom-result>.bwbe-primary{width:auto;min-width:190px}.bwbe-planner-reset{margin-top:24px}.bwbe-planner-quote-success{padding:18px 4px}.bwbe-planner-quote-success h2{margin-bottom:10px}.bwbe-planner-quote-dialog .bwbe-dialog-card{background:var(--bw-cream)}

@media(max-width:760px){.bwbe-planner-screen{padding:28px 0}.bwbe-planner-choices,.bwbe-planner-choices-compact{grid-template-columns:1fr}.bwbe-planner-result-card{grid-template-columns:1fr}.bwbe-planner-result-image{min-height:240px;aspect-ratio:16/9}.bwbe-planner-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bwbe-planner-alt-card{display:block}.bwbe-planner-alt-card .bwbe-secondary{width:100%;margin-top:10px}.bwbe-planner-actions{display:grid}.bwbe-planner-actions .bwbe-primary,.bwbe-planner-actions .bwbe-secondary{width:100%}}
@media(max-width:480px){.bwbe-planner{padding-left:16px;padding-right:16px}.bwbe-planner-screen h1{font-size:2.45rem}.bwbe-planner-screen h2{font-size:2rem}.bwbe-planner-summary{grid-template-columns:1fr}.bwbe-planner-dots span{flex:1;width:auto}.bwbe-planner-result-body{padding:20px 18px}}

.bwbe-planner-reserve-screen{max-width:860px}.bwbe-planner-reserve-package-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:start;margin:20px 0 26px;padding:16px;border:1px solid var(--bw-border);border-radius:16px;background:#fff}.bwbe-planner-reserve-image{width:150px;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#f1eee7}.bwbe-planner-reserve-package-copy h3{margin:0 0 6px;font-size:1.35rem}.bwbe-planner-reserve-package-copy .bwbe-planner-result-components{margin-bottom:0}.bwbe-planner-reserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:8px}.bwbe-planner-reserve-grid h3{font-size:1rem;margin:0 0 14px}.bwbe-planner-reserve-event{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#f7f4ed}.bwbe-planner-reserve-event strong,.bwbe-planner-reserve-event span{display:block}.bwbe-planner-reserve-event span{color:var(--bw-muted)}.bwbe-planner-reserve-pricing{margin:26px 0 14px}.bwbe-planner-payment-summary{border-top:1px solid var(--bw-border);border-bottom:1px solid var(--bw-border);padding:8px 0}.bwbe-planner-payment-summary>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.bwbe-planner-payment-summary>div.is-due{font-size:1.08rem}.bwbe-planner-payment-summary>div.is-due strong{color:#24434b}.bwbe-planner-reserve-screen .bwbe-primary{width:100%;margin-top:10px}

@media(max-width:760px){.bwbe-planner-reserve-grid{grid-template-columns:1fr}.bwbe-planner-reserve-package-card{grid-template-columns:1fr}.bwbe-planner-reserve-image{width:100%;aspect-ratio:16/9}}


/* v0.6.1 — mobile product-detail modal hardening */
.bwbe-dialog,.bwbe-dialog-card,.bwbe-detail-card{box-sizing:border-box}
.bwbe-dialog{max-width:100vw;max-height:100dvh;overflow:hidden}
.bwbe-dialog-card{max-width:calc(100vw - 28px);overscroll-behavior:contain}
.bwbe-detail-card{max-width:min(920px,calc(100vw - 28px));overflow-y:auto;overflow-x:hidden}
.bwbe-dialog-close{z-index:30}
.bwbe-dialog-back{display:none}
@media(max-width:560px){
  .bwbe-detail-dialog{padding:0 10px}
  .bwbe-detail-card{width:100%;max-width:100%;max-height:calc(100dvh - 24px);margin:12px auto;border-radius:20px}
  .bwbe-detail-card>.bwbe-dialog-close{display:none}
  .bwbe-detail-card>.bwbe-dialog-back{display:inline-flex;position:sticky;top:10px;z-index:40;align-items:center;justify-content:center;min-height:42px;margin:10px 0 -52px 10px;padding:8px 14px;border:1px solid #d8d3ca;border-radius:999px;background:rgba(255,255,255,.96);color:#2b2b2b;font:inherit;font-weight:800;line-height:1;box-shadow:0 5px 18px rgba(0,0,0,.10);cursor:pointer;backdrop-filter:blur(8px)}
  .bwbe-detail-layout{width:100%;min-width:0}
  .bwbe-detail-media{width:100%;min-width:0;min-height:190px;aspect-ratio:16/9}
  .bwbe-detail-media.is-placeholder{min-height:150px;aspect-ratio:auto}
  .bwbe-detail-copy{min-width:0;padding:20px 18px 24px;overflow-wrap:anywhere}
  .bwbe-detail-copy h2{font-size:clamp(1.85rem,8vw,2.35rem);line-height:1.06}
  .bwbe-detail-copy .bwbe-primary{width:100%}
  .bwbe-related-row{grid-template-columns:minmax(0,1fr);gap:8px}
  .bwbe-related-row .bwbe-link-button{justify-self:start}
}

/* v0.7.0 — catalog merchandising + customer-experience polish */
.bwbe-card-eyebrow{margin:0 0 6px;color:#4d7e8b;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.bwbe-store-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.bwbe-package-savings{margin:-2px 0 10px;color:#39714a;font-size:.76rem;font-weight:800}
.bwbe-package-value{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:2px 0 14px;padding:9px 11px;border:1px solid #cde8d5;border-radius:10px;background:#edf8f1;color:#315f40;font-size:.82rem}
.bwbe-package-value strong{font-size:.9rem}.bwbe-package-value span{color:#55725d}
.bwbe-cart-summary{margin:-2px 0 5px;color:#6f6c65;font-size:.9rem}
.bwbe-cart-line-price{display:block;margin-top:4px;color:#3f4f52;font-size:.82rem;font-weight:750}
.bwbe-cart-back{display:none;border:0;background:transparent;color:#26768a;text-decoration:underline;text-underline-offset:3px;font-weight:800;cursor:pointer;padding:0}
.bwbe-planner-why-label{display:block;margin:17px 0 5px;color:#2b2b2b;font-size:.9rem}
.bwbe-planner-value-note{display:inline-block;margin:-3px 0 12px;padding:7px 10px;border:1px solid #cde8d5;border-radius:999px;background:#edf8f1;color:#315f40;font-size:.8rem;font-weight:800}
.bwbe-planner-more{color:#77746d;font-style:italic}
.bwbe-planner-alt-card{padding:14px 0}.bwbe-planner-alt-card .bwbe-planner-result-reason{max-width:620px;color:#706e67}
.bwbe-planner-alternative>.bwbe-eyebrow{margin-bottom:8px}

@media(max-width:560px){
  .bwbe-store-body{padding:15px}
  .bwbe-card-title{font-size:1.06rem}
  .bwbe-store-description{font-size:.88rem;line-height:1.38}
  .bwbe-detail-copy h3{margin-top:17px}
  .bwbe-detail-list{margin-top:6px;margin-bottom:12px;line-height:1.45}
  .bwbe-related-block{margin-top:17px;padding-top:13px}
  .bwbe-related-row{padding:9px 0}
  .bwbe-cart-card>.bwbe-dialog-close{display:none}
  .bwbe-cart-back{display:inline-block;margin:0 0 16px}
  .bwbe-cart-card{width:100%;max-width:100%;max-height:calc(100dvh - 24px);margin:12px auto;border-radius:20px;padding:20px 18px 24px}
  .bwbe-cart-dialog{padding:0 10px}
  .bwbe-shop-cart-row{gap:8px;padding:12px 0}
  .bwbe-planner-result-card{border-radius:16px}
  .bwbe-planner-result-body{padding:20px 18px}
  .bwbe-planner-result-reason{margin-top:0;line-height:1.5}
  .bwbe-planner-includes-label{margin-top:16px}
  .bwbe-planner-result-components{line-height:1.45;margin-bottom:14px}
  .bwbe-planner-summary{margin-top:14px}
  .bwbe-planner-alternative{margin-top:24px;padding-top:18px}
}

/* v0.8.0 — discovery tools, package value interaction, planning guidance */
.bwbe-browse-quick-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}.bwbe-availability-status.is-limited,.bwbe-detail-status.is-limited{color:#8a6500}.bwbe-package-compare{margin:20px 0 6px;border:1px solid var(--bw-border);border-radius:12px;background:#faf8f3;overflow:hidden}.bwbe-package-compare summary{cursor:pointer;padding:12px 14px;font-weight:850;color:#2b2b2b}.bwbe-package-compare[open] summary{border-bottom:1px solid var(--bw-border)}.bwbe-package-compare-note{margin:12px 14px;color:#6a6862;font-size:.84rem;line-height:1.45}.bwbe-package-compare-items{padding:0 14px}.bwbe-package-compare-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #ebe8e0;font-size:.86rem}.bwbe-package-compare-row input{width:18px;height:18px;accent-color:#41aacd}.bwbe-package-compare-row strong{white-space:nowrap}.bwbe-package-compare-totals{padding:12px 14px}.bwbe-package-compare-totals>div{display:flex;justify-content:space-between;gap:16px;margin:6px 0}.bwbe-package-compare-totals p{margin:8px 0 0;color:#6e6b65;font-size:.82rem}.bwbe-package-compare-totals p.is-savings{color:#315f40;font-weight:850}.bwbe-complete-setup{margin:15px 0;padding:13px;border:1px solid #d7e8ec;border-radius:12px;background:#f2fafc}.bwbe-complete-setup>strong{display:block}.bwbe-complete-setup>p{margin:3px 0 10px;color:#6b6963;font-size:.82rem}.bwbe-complete-setup-chips,.bwbe-setup-nudge-actions{display:flex;gap:7px;flex-wrap:wrap}.bwbe-suggestion-chip{border:1px solid #c9dfe4;border-radius:999px;background:#fff;color:#245b68;padding:7px 10px;font-size:.78rem;font-weight:800;cursor:pointer}.bwbe-suggestion-chip:hover,.bwbe-suggestion-chip:focus-visible{border-color:#41aacd;background:#edf8fb}.bwbe-setup-nudge{position:fixed;left:50%;bottom:calc(var(--bwbe-dock-bottom,20px) + 76px);transform:translate(-50%,8px);z-index:9995;width:min(680px,calc(100% - 36px));padding:11px 13px;border:1px solid #d7e8ec;border-radius:13px;background:rgba(255,255,255,.98);box-shadow:0 12px 34px rgba(0,0,0,.14);opacity:0;transition:opacity .18s ease,transform .18s ease}.bwbe-setup-nudge.is-visible{opacity:1;transform:translate(-50%,0)}.bwbe-setup-nudge-copy{margin-bottom:8px;color:#54534d;font-size:.86rem}.bwbe-setup-nudge-copy strong{color:#2b2b2b}.bwbe-ready-celebration{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin:13px 0;padding:12px 13px;border:1px solid #cde8d5;border-radius:12px;background:#edf8f1}.bwbe-ready-scene{display:flex;align-items:flex-end;width:94px;height:46px;position:relative}.bwbe-ready-piece{position:absolute;left:calc(var(--bwbe-piece-index,0) * 25px);bottom:0;width:44px;height:34px;border:2px solid #fff;border-radius:8px;background:#41aacd;color:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 3px 8px rgba(0,0,0,.12);transform:translateY(0)}.bwbe-ready-piece img{width:100%;height:100%;object-fit:cover}.bwbe-ready-celebration.is-active .bwbe-ready-piece{animation:bwbe-piece-in .55s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--bwbe-piece-index,0) * 90ms)}.bwbe-ready-copy strong,.bwbe-ready-copy span{display:block}.bwbe-ready-copy span{margin-top:2px;color:#55725d;font-size:.8rem}.bwbe-planner-progress-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.bwbe-planner-progress-head strong{font-size:.8rem;color:#315f40}.bwbe-plan-status{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.bwbe-plan-status span{padding:5px 8px;border-radius:999px;background:#f3f0e8;color:#77746d;font-size:.7rem;font-weight:800}.bwbe-plan-status span.is-complete{background:#edf8f1;color:#315f40}.bwbe-plan-readiness{margin:18px 0;padding:16px;border:1px solid #d7e8ec;border-radius:14px;background:#f8fcfd}.bwbe-plan-readiness-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:11px}.bwbe-plan-readiness-head strong{font-size:1rem}.bwbe-plan-readiness-head span{color:#6e6b65;font-size:.78rem}.bwbe-plan-readiness-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.bwbe-plan-readiness-list>div{display:flex;gap:8px;align-items:center;padding:8px 10px;border-radius:9px;background:#fff;font-size:.8rem}.bwbe-plan-readiness-list .is-complete span{color:#2f7b45}.bwbe-plan-readiness-list .is-needed span{color:#b17d00}.bwbe-planner-ready{margin-top:0}

/* Homepage discovery block */
.bwbe-discovery{--bw-blue:#41aacd;--bw-yellow:#ffc000;--bw-green:#7ed6a7;--bw-charcoal:#2b2b2b;--bw-cream:#faf9f6;--bw-border:#e9e5dc;max-width:1180px;padding:70px 20px 76px}.bwbe-discovery-head{max-width:720px;margin-bottom:24px}.bwbe-discovery-head h2{margin:0 0 9px;font-family:"DM Serif Display",Georgia,serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1.05;color:var(--bw-charcoal)}.bwbe-discovery-head>p:last-child{margin:0;color:#6f6f6a}.bwbe-discovery-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.bwbe-discovery-tabs button{min-height:42px;border:1px solid #d8d3ca;border-radius:999px;background:#fff;padding:8px 14px;color:#2b2b2b;font-weight:800;cursor:pointer}.bwbe-discovery-tabs button[aria-selected="true"]{background:#2b2b2b;color:#fff;border-color:#2b2b2b}.bwbe-discovery-panel{padding:22px;border:1px solid var(--bw-border);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(43,43,43,.05)}.bwbe-budget-controls{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;align-items:end}.bwbe-budget-controls label,.bwbe-guest-calculator>label{display:grid;gap:7px;font-weight:800}.bwbe-budget-controls select,.bwbe-budget-controls input[type="range"],.bwbe-guest-calculator input{width:100%}.bwbe-budget-controls select,.bwbe-guest-calculator input{min-height:46px;border:1px solid #d8d3ca;border-radius:10px;background:#fff;padding:9px 11px}.bwbe-budget-controls input[type="range"]{accent-color:#41aacd}.bwbe-budget-context{margin:22px 0 12px;font-weight:850}.bwbe-discovery-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.bwbe-budget-result-card{overflow:hidden;border:1px solid var(--bw-border);border-radius:14px;background:#faf9f6}.bwbe-budget-result-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.bwbe-budget-result-card>div{padding:14px}.bwbe-budget-result-card h3{margin:0 0 5px;font-size:1.12rem}.bwbe-budget-result-card>div>strong{display:block;margin-bottom:7px}.bwbe-budget-result-card p:not(.bwbe-eyebrow){margin:0 0 12px;color:#696760;font-size:.84rem;line-height:1.45}.bwbe-discovery-cta{display:inline-flex!important;width:auto!important;min-height:42px!important;margin:0!important;text-decoration:none;align-items:center;justify-content:center}.bwbe-vibe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.bwbe-vibe-choice{overflow:hidden;border:2px solid transparent;border-radius:13px;background:#f6f3ec;padding:0;text-align:left;cursor:pointer}.bwbe-vibe-choice img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.bwbe-vibe-choice span{display:block;padding:10px 11px;font-weight:850}.bwbe-vibe-choice.is-selected{border-color:#41aacd;background:#edf8fb}.bwbe-vibe-result{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr);gap:22px;align-items:center;border-top:1px solid var(--bw-border);padding-top:18px}.bwbe-vibe-result>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:13px}.bwbe-vibe-result h3{margin:0 0 6px;font-size:1.45rem}.bwbe-vibe-result p:not(.bwbe-eyebrow){color:#696760}.bwbe-vibe-result>div>strong{display:block;margin:9px 0 13px}.bwbe-guest-result{margin-top:18px}.bwbe-guest-lead{font-size:1.02rem}.bwbe-guest-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.bwbe-guest-stats>div{padding:13px;border:1px solid var(--bw-border);border-radius:11px;background:#faf9f6}.bwbe-guest-stats strong,.bwbe-guest-stats span{display:block}.bwbe-guest-stats strong{font-size:1.35rem}.bwbe-guest-stats span{margin-top:3px;color:#6f6f6a;font-size:.78rem}.bwbe-guest-notes{margin:14px 0 0;padding-left:20px;color:#5f5d57}.bwbe-discovery-fineprint{color:#79766f;font-size:.76rem;line-height:1.45}.bwbe-before-after{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:28px;align-items:center;margin-top:28px;padding:22px;border-radius:18px;background:#f3efe7}.bwbe-before-after-copy h3{margin:0 0 8px;font-family:"DM Serif Display",Georgia,serif;font-size:clamp(1.7rem,3vw,2.4rem)}.bwbe-before-after-copy>p:last-child{color:#6f6f6a}.bwbe-compare{--bwbe-compare-position:50%;position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:14px;background:#dcebd9}.bwbe-compare-before,.bwbe-compare-after{position:absolute;inset:0}.bwbe-compare-after{background-position:center;background-size:cover;clip-path:inset(0 0 0 var(--bwbe-compare-position))}.bwbe-empty-scene{position:absolute;inset:0;background:linear-gradient(#dff2fb 0 54%,#90be7c 54% 100%)}.bwbe-empty-scene:before{content:"";position:absolute;left:0;right:0;top:47%;height:8%;background:#759d69;clip-path:polygon(0 100%,8% 32%,15% 84%,25% 18%,37% 78%,49% 25%,61% 82%,73% 24%,86% 75%,100% 20%,100% 100%)}.bwbe-empty-scene span{position:absolute;left:9%;bottom:18%;width:22%;height:28%;border:5px solid rgba(255,255,255,.75);border-bottom:0}.bwbe-empty-scene i{position:absolute;right:12%;bottom:25%;width:17%;height:16%;border-radius:50%;background:#6f9a65;box-shadow:-34px 10px 0 #7fae72}.bwbe-empty-scene b{position:absolute;left:42%;bottom:26%;width:18%;height:3px;background:rgba(255,255,255,.8);box-shadow:0 10px 0 rgba(255,255,255,.6)}.bwbe-compare input[type="range"]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:4}.bwbe-compare-handle{position:absolute;z-index:3;left:var(--bwbe-compare-position);top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;border:3px solid #fff;border-radius:50%;background:#2b2b2b;color:#fff;font-weight:900;box-shadow:0 5px 14px rgba(0,0,0,.2)}.bwbe-compare:after{content:"";position:absolute;z-index:2;left:var(--bwbe-compare-position);top:0;bottom:0;width:3px;background:#fff;transform:translateX(-50%);box-shadow:0 0 8px rgba(0,0,0,.15)}.bwbe-compare-label{position:absolute;z-index:1;top:12px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.9);font-size:.72rem;font-weight:850}.bwbe-compare-before .bwbe-compare-label{left:12px}.bwbe-compare-after .bwbe-compare-label{right:12px}.bwbe-surprise-result-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:start;margin:16px 0;padding:12px;border:1px solid #d7e8ec;border-radius:13px;background:#f8fcfd}.bwbe-surprise-result-card img{width:120px;aspect-ratio:4/3;object-fit:cover;border-radius:9px}.bwbe-surprise-result-card h3{margin:0 0 5px}.bwbe-surprise-result-card p:not(.bwbe-eyebrow){margin:6px 0 12px;color:#68665f;font-size:.84rem}.bwbe-guest-dialog .bwbe-dialog-card,.bwbe-surprise-card{background:#faf9f6}

@keyframes bwbe-piece-in{0%{opacity:0;transform:translateY(12px) scale(.92)}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){.bwbe-discovery{padding:48px 16px 54px}.bwbe-budget-controls{grid-template-columns:1fr}.bwbe-discovery-results{grid-template-columns:1fr}.bwbe-budget-result-card{display:grid;grid-template-columns:120px minmax(0,1fr)}.bwbe-budget-result-card img{height:100%;aspect-ratio:auto}.bwbe-vibe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bwbe-vibe-result,.bwbe-before-after{grid-template-columns:1fr}.bwbe-guest-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.bwbe-before-after{padding:16px}.bwbe-plan-readiness-head{display:block}.bwbe-plan-readiness-head span{display:block;margin-top:3px}.bwbe-plan-readiness-list{grid-template-columns:1fr}.bwbe-setup-nudge{bottom:calc(var(--bwbe-dock-bottom,10px) + 74px);width:calc(100% - 24px)}.bwbe-setup-nudge-actions{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.bwbe-package-compare-row{font-size:.8rem}}
@media(max-width:480px){.bwbe-budget-result-card{grid-template-columns:1fr}.bwbe-vibe-grid{grid-template-columns:1fr 1fr}.bwbe-vibe-choice span{font-size:.82rem}.bwbe-guest-stats{grid-template-columns:1fr 1fr}.bwbe-surprise-result-card{grid-template-columns:1fr}.bwbe-surprise-result-card img{width:100%;aspect-ratio:16/9}.bwbe-planner-progress-head{display:block}.bwbe-planner-progress-head strong{display:block;margin-top:4px}.bwbe-plan-status{gap:4px}.bwbe-plan-status span{font-size:.66rem}}
@media(prefers-reduced-motion:reduce){.bwbe-setup-nudge{transition:none}.bwbe-ready-celebration.is-active .bwbe-ready-piece{animation:none}.bwbe-store-media img{transition:none}}
.bwbe-budget-custom-result{grid-column:1/-1;padding:18px;border:1px solid #d7e8ec;border-radius:14px;background:#f8fcfd}.bwbe-budget-custom-result h3{margin:0 0 6px}.bwbe-budget-custom-result>p:not(.bwbe-eyebrow){margin:0 0 13px;color:#696760;line-height:1.45}


/* v0.8.2 — direct package handoff and native scroll-driven transformation */
.bwbe-planner-direct-screen{max-width:860px}
.bwbe-direct-package-card{display:grid;grid-template-columns:minmax(220px,.78fr) minmax(0,1.22fr);overflow:hidden;margin:22px 0;border:1px solid var(--bw-border);border-radius:18px;background:#fff}
.bwbe-direct-package-image{display:block;width:100%;height:100%;min-height:300px;object-fit:cover;background:#f1eee7}
.bwbe-direct-package-copy{padding:24px}
.bwbe-direct-package-copy h2{margin:0 0 7px!important;font-size:clamp(1.7rem,4vw,2.6rem)!important}
.bwbe-direct-package-description{margin:0 0 14px;color:#66635d;line-height:1.58}
.bwbe-direct-form{max-width:660px;margin-top:22px;padding-top:20px;border-top:1px solid var(--bw-border)}
.bwbe-direct-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.bwbe-direct-form>.bwbe-primary{width:100%;margin-top:8px}
.bwbe-scroll-transform{position:relative;height:185vh;min-height:1050px;margin-top:28px}
.bwbe-before-after-sticky{position:sticky;top:calc(var(--bw-header-height,76px) + 18px);margin-top:0;min-height:min(680px,calc(100vh - var(--bw-header-height,76px) - 36px));align-items:center}
.bwbe-scroll-transform-progress{overflow:hidden;width:100%;height:5px;margin-top:18px;border-radius:999px;background:rgba(43,43,43,.1)}
.bwbe-scroll-transform-progress span{display:block;width:4%;height:100%;border-radius:inherit;background:#41aacd;transition:width .08s linear}
@media(max-width:760px){
  .bwbe-direct-package-card{grid-template-columns:1fr}
  .bwbe-direct-package-image{min-height:0;aspect-ratio:16/9}
  .bwbe-direct-package-copy{padding:20px 18px}
  .bwbe-scroll-transform{height:165vh;min-height:900px}
  .bwbe-before-after-sticky{top:calc(var(--bw-header-height,68px) + 10px);min-height:auto}
}
@media(prefers-reduced-motion:reduce){
  .bwbe-scroll-transform{height:auto;min-height:0}
  .bwbe-before-after-sticky{position:relative;top:auto}
  .bwbe-scroll-transform-progress{display:none}
}

/* v0.8.3 — QA polish: full-screen quotes, clearer continuation cues, mobile budget cards */
.bwbe-planner-ready{grid-template-columns:1fr}
.bwbe-scroll-cue{display:flex;align-items:center;justify-content:center;gap:9px;margin:14px 0 20px;padding:9px 12px;color:#427788;font-size:.8rem;font-weight:800;letter-spacing:.01em;text-align:center}
.bwbe-scroll-cue strong{display:inline-block;font-size:1.05rem;line-height:1;animation:bwbe-cue-down 1.45s ease-in-out infinite}
@keyframes bwbe-cue-down{0%,100%{transform:translateY(-2px);opacity:.7}50%{transform:translateY(3px);opacity:1}}
.bwbe-planner-quote-screen{max-width:860px}
.bwbe-planner-quote-screen>.bwbe-planner-question-note{max-width:680px}
.bwbe-planner-quote-event{max-width:420px;margin:14px 0 0}
.bwbe-planner-quote-form{margin-top:6px}
.bwbe-planner-quote-form>.bwbe-primary{width:100%;margin-top:10px}
.bwbe-planner-quote-package-card{margin-top:20px}
/* Force recommendation copy into its own opaque content area on narrow Safari layouts. */
.bwbe-budget-result-card>div{position:relative;z-index:2;background:#faf9f6;color:#2b2b2b}
@media(max-width:480px){
  .bwbe-budget-result-card{display:block}
  .bwbe-budget-result-card img{display:block;width:100%;height:auto!important;aspect-ratio:4/3!important;object-fit:cover}
  .bwbe-budget-result-card>div{display:block;padding:16px}
  .bwbe-budget-result-card .bwbe-eyebrow,.bwbe-budget-result-card h3,.bwbe-budget-result-card strong,.bwbe-budget-result-card p{position:static;color:inherit}
  .bwbe-budget-result-card p:not(.bwbe-eyebrow){color:#696760}
  .bwbe-budget-result-card .bwbe-discovery-cta{margin-top:2px!important}
}
@media(prefers-reduced-motion:reduce){.bwbe-scroll-cue strong{animation:none}}


/* v0.8.4 — direct-date availability, quote success cleanup, drag persistence, quote mobile spacing */
.bwbe-planner-quote-screen[hidden],.bwbe-scroll-cue[hidden]{display:none!important}
@media(max-width:760px){
  .bwbe-planner-quote-screen{padding-top:24px}
  .bwbe-direct-fields{grid-template-columns:1fr}
}

/* v0.9.0 — reusable availability calendar */
.bwbe-date-native{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}
.bwbe-date-picker{position:relative;width:100%;margin-top:6px}
.bwbe-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:50px;padding:10px 13px;border:1px solid #d8d3ca;border-radius:12px;background:#fff;color:#2b2b2b;text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}
.bwbe-date-trigger:hover,.bwbe-date-trigger:focus-visible{border-color:#247e9e;box-shadow:0 0 0 3px rgba(65,170,205,.16);outline:0}
.bwbe-date-trigger-main{font-weight:760}
.bwbe-date-trigger-status{font-size:.74rem;font-weight:760;color:#747169}
.bwbe-date-trigger.is-available .bwbe-date-trigger-status{color:#34755c}
.bwbe-date-trigger.is-limited .bwbe-date-trigger-status{color:#34755c}
.bwbe-date-trigger.is-confirmation .bwbe-date-trigger-status{color:#427788}
.bwbe-date-trigger.is-unavailable{border-color:#d8aaa5;background:#fff9f8}
.bwbe-date-trigger.is-unavailable .bwbe-date-trigger-status{color:#a2433b}
.bwbe-calendar-panel{position:relative;z-index:20;margin-top:8px;padding:14px;border:1px solid #ddd7cd;border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(43,43,43,.12)}
.bwbe-calendar-panel[hidden]{display:none!important}
.bwbe-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:10px}
.bwbe-calendar-month{text-align:center;font-size:1rem}
.bwbe-calendar-nav{display:grid;place-items:center;width:40px;height:40px;border:1px solid #e5e0d7;border-radius:10px;background:#faf9f6;color:#2b2b2b;font-weight:900;cursor:pointer}
.bwbe-calendar-nav:hover,.bwbe-calendar-nav:focus-visible{border-color:#41aacd;background:#eef8fb;outline:0}
.bwbe-calendar-weekdays,.bwbe-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.bwbe-calendar-weekdays{margin-bottom:5px}
.bwbe-calendar-weekdays span{padding:3px 0;color:#77736b;font-size:.68rem;font-weight:800;text-align:center;text-transform:uppercase;letter-spacing:.04em}
.bwbe-calendar-day,.bwbe-calendar-blank{aspect-ratio:1/1;min-width:0}
.bwbe-calendar-day{position:relative;display:grid;place-items:center;border:1px solid #ebe6dd;border-radius:10px;background:#faf9f6;color:#2b2b2b;font-size:.82rem;font-weight:800;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}
.bwbe-calendar-day:hover,.bwbe-calendar-day:focus-visible{border-color:#247e9e;outline:0;box-shadow:0 0 0 2px rgba(65,170,205,.16)}
.bwbe-calendar-day.is-available,.bwbe-calendar-day.is-limited{background:#e6f3eb;border-color:#9bc8ad;color:#28563c}
.bwbe-calendar-day.is-confirmation{background:#e8f4f7;border:1px dashed #79b7c9;color:#275d6d}
.bwbe-calendar-day.is-unavailable{background:#f5e9e7;border-color:#ddb4ae;color:#815049;text-decoration:line-through;text-decoration-thickness:1.5px;cursor:not-allowed}
.bwbe-calendar-day.is-disabled{background:#f5f3ef;border-color:#eeeae3;color:#bcb6af;cursor:not-allowed}
.bwbe-calendar-day.is-loading{background:#f4f2ed;border-color:#ebe6dd;color:#aaa49d;opacity:.6;cursor:wait}
.bwbe-calendar-day.is-today{box-shadow:inset 0 0 0 1.5px #2b2b2b}
.bwbe-calendar-day.is-selected{background:#247e9e!important;color:#fff!important;border:2px solid #1f6f8b!important;text-decoration:none;box-shadow:0 0 0 2px rgba(36,126,158,.15)}
.bwbe-calendar-live{min-height:23px;margin-top:10px;color:#696760;font-size:.76rem;line-height:1.45}
.bwbe-calendar-live strong{color:#9b4038}
.bwbe-calendar-alt{margin:4px 3px 0;padding:5px 8px;border:1px solid #b9dce7;border-radius:999px;background:#eef8fb;color:#276d87;font-size:.72rem;font-weight:800;cursor:pointer}
.bwbe-calendar-legend{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:9px;padding-top:9px;border-top:1px solid #eee9e1;color:#77736b;font-size:.67rem;font-weight:700}.bwbe-calendar-legend[hidden]{display:none!important}
.bwbe-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.bwbe-calendar-legend i{width:14px;height:14px;border-radius:4px;background:#f4f2ed;border:1px solid #ddd7cd;box-sizing:border-box}.bwbe-calendar-legend i.is-available{background:#e6f3eb;border-color:#9bc8ad}.bwbe-calendar-legend i.is-confirmation{background:#e8f4f7;border:1px dashed #79b7c9}.bwbe-calendar-legend i.is-unavailable{background:#f5e9e7;border-color:#ddb4ae}.bwbe-calendar-day.is-neutral{background:#faf9f6;border-color:#ebe6dd;color:#2b2b2b}
@media(max-width:480px){.bwbe-calendar-panel{padding:11px}.bwbe-calendar-weekdays,.bwbe-calendar-grid{gap:3px}.bwbe-calendar-day{border-radius:8px;font-size:.78rem}.bwbe-date-trigger{min-height:52px}.bwbe-date-trigger-status{font-size:.7rem}}
@media(min-width:761px){.bwbe-calendar-panel{width:min(360px,calc(100vw - 40px))}}


/* v0.9.3 — quote review + post-payment thank-you */
.bwbe-quote-review{margin:20px 0 8px;padding:20px;border:1px solid #e7e0d6;border-radius:16px;background:#fffdf9}
.bwbe-quote-review h3{margin:2px 0 14px;font-size:1.1rem}
.bwbe-quote-success-subhead{margin:24px 0 10px;font-size:1rem}
.bwbe-thank-you{padding:56px 20px 72px}
.bwbe-thank-you-shell{max-width:920px;margin:0 auto}
.bwbe-thank-you-shell>h1{max-width:760px;margin:.15em 0 .3em;font-size:clamp(2.25rem,5vw,4rem);line-height:1.02}
.bwbe-thank-you-lead{max-width:680px;margin:0 0 24px;color:#66605a;font-size:1.08rem}
.bwbe-thank-you-status{display:flex;flex-direction:column;gap:4px;margin:0 0 24px;padding:16px 18px;border-radius:14px;background:#eef8f1;border:1px solid #c8e6d0}
.bwbe-thank-you-status strong{font-size:1rem}
.bwbe-thank-you-status span{color:#50615a}
.bwbe-thank-you-reference{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 22px;padding:18px 20px;border-radius:16px;background:#2b2b2b;color:#fff}
.bwbe-thank-you-reference span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.bwbe-thank-you-reference strong{font-size:clamp(1.25rem,3vw,1.75rem);letter-spacing:.02em}
.bwbe-thank-you-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.bwbe-thank-you-card{padding:22px;border:1px solid #e7e0d6;border-radius:18px;background:#fff}
.bwbe-thank-you-card h2{margin:3px 0 14px;font-size:1.45rem}
.bwbe-detail-list{display:grid;gap:9px;margin:0}
.bwbe-detail-list>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #eee8de;padding-top:9px}
.bwbe-detail-list dt{color:#6f6962}.bwbe-detail-list dd{margin:0;text-align:right;font-weight:600}
.bwbe-thank-you-items{margin-bottom:18px}
.bwbe-thank-you-item-list{list-style:none;margin:0;padding:0}
.bwbe-thank-you-item-list li{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-top:1px solid #eee8de}
.bwbe-thank-you-next{padding:24px;border-radius:18px;background:#f6f1e8}
.bwbe-thank-you-next h2{margin:3px 0 14px;font-size:1.45rem}
.bwbe-thank-you-steps{margin:0 0 18px;padding-left:1.35rem}.bwbe-thank-you-steps li{margin:8px 0}
.bwbe-thank-you-change{margin:0;padding-top:14px;border-top:1px solid #dfd5c8}
@media(max-width:720px){
  .bwbe-thank-you{padding:34px 16px 52px}
  .bwbe-thank-you-grid{grid-template-columns:1fr}
  .bwbe-thank-you-reference{align-items:flex-start;flex-direction:column;gap:6px}
  .bwbe-detail-list>div{align-items:flex-start;flex-direction:column;gap:3px}.bwbe-detail-list dd{text-align:left}
  .bwbe-thank-you-item-list li{align-items:flex-start}
}


/* v0.9.4 — quote thank-you polish + customer-owned checkout holds */
.bwbe-quote-thank-you{max-width:860px;padding:8px 0 18px}
.bwbe-quote-thank-you>h2{max-width:760px;margin:.12em 0 .28em;font-size:clamp(2.25rem,5vw,3.7rem);line-height:1.02}
.bwbe-quote-thank-you-lead{max-width:720px;margin:0 0 22px;color:#66605a;font-size:1.05rem;line-height:1.6}
.bwbe-quote-reference{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 18px;padding:17px 19px;border-radius:15px;background:#2b2b2b;color:#fff}
.bwbe-quote-reference span{font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;opacity:.72}.bwbe-quote-reference strong{font-size:clamp(1.15rem,3vw,1.55rem)}
.bwbe-quote-success-card{margin:0 0 18px;padding:22px;border:1px solid #e7e0d6;border-radius:18px;background:#fffdf9}
.bwbe-quote-success-card>h3,.bwbe-quote-next>h3{margin:2px 0 15px;font-size:1.45rem}
.bwbe-quote-success-card .bwbe-planner-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0 0}
.bwbe-quote-next{padding:24px;border-radius:18px;background:#f6f1e8}
.bwbe-quote-next-steps{margin:0;padding-left:1.35rem}.bwbe-quote-next-steps li{margin:9px 0;line-height:1.55}
.bwbe-quote-success-actions{display:flex;gap:10px;margin-top:18px}.bwbe-quote-success-actions .bwbe-secondary{width:auto}
@media(max-width:720px){
  .bwbe-quote-thank-you{padding-top:0}
  .bwbe-quote-reference{align-items:flex-start;flex-direction:column;gap:5px}
  .bwbe-quote-success-card .bwbe-planner-summary{grid-template-columns:1fr 1fr}
}
@media(max-width:460px){.bwbe-quote-success-card .bwbe-planner-summary{grid-template-columns:1fr}}

/* v0.10.0 flexible package choice groups */
.bwbe-package-choice-groups{margin:22px 0;display:grid;gap:16px}
.bwbe-package-choice-groups>h3{margin:0 0 2px}
.bwbe-package-choice-group{margin:0;padding:16px;border:1px solid rgba(43,43,43,.14);border-radius:14px;background:#faf9f6}
.bwbe-package-choice-group legend{padding:0 5px;font-weight:800;font-size:1rem;color:#2b2b2b}
.bwbe-package-choice-help{margin:2px 0 12px;color:#62605b;font-size:.94rem}
.bwbe-package-choice-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bwbe-package-choice-option{position:relative;display:flex;align-items:center;gap:10px;min-height:62px;padding:12px 14px;border:1.5px solid rgba(43,43,43,.16);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}
.bwbe-package-choice-option:hover{border-color:#41aacd}
.bwbe-package-choice-option:has(input:checked){border-color:#41aacd;background:#f1fbfe;box-shadow:0 0 0 2px rgba(65,170,205,.13)}
.bwbe-package-choice-option input{width:18px;height:18px;margin:0;accent-color:#2b2b2b;flex:0 0 auto}
.bwbe-package-choice-option input:focus-visible{outline:3px solid rgba(65,170,205,.35);outline-offset:3px}
.bwbe-package-choice-option-copy{display:flex;flex-direction:column;gap:2px;line-height:1.25}
.bwbe-package-choice-option-copy strong{font-size:.96rem}
.bwbe-package-choice-option-copy small{color:#4f7887;font-weight:700}
.bwbe-package-choice-value{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;background:#f4fbf7}
.bwbe-package-choice-value:empty{display:none}
.bwbe-package-choice-value span{font-size:.9rem;color:#62605b}
.bwbe-package-choice-status,.bwbe-package-choice-prompt{margin:0;font-size:.92rem;color:#62605b}
.bwbe-package-choice-status.is-available,.bwbe-package-choice-prompt.is-complete{color:#356b4d}
.bwbe-package-choice-status.is-unavailable{color:#8a3434}
.bwbe-choice-inclusion{font-style:italic}
.bwbe-cart-choice{display:block;margin-top:3px;font-size:.85rem;color:#62605b}
.bwbe-planner-package-choices{margin-top:16px}
@media(max-width:720px){.bwbe-package-choice-options{grid-template-columns:1fr}.bwbe-package-choice-group{padding:14px}.bwbe-package-choice-option{min-height:58px}}
.bwbe-thank-you-item-copy{display:flex;flex-direction:column;gap:3px}

/* v0.10.2 — flexible-package configurator visual refinement */
.bwbe-detail-card.is-flexible-package{width:min(1040px,calc(100% - 28px));max-width:min(1040px,calc(100vw - 28px));overflow:hidden;background:#fff}
.bwbe-detail-layout.is-flexible-package{grid-template-columns:minmax(330px,.92fr) minmax(420px,1.08fr);height:min(760px,calc(100dvh - 58px));min-height:560px;align-items:start;background:#fff}
.bwbe-detail-layout.is-flexible-package .bwbe-detail-media{align-self:start;min-height:0;aspect-ratio:4/3;margin:24px 0 24px 24px;border:1px solid #e5e0d6;border-radius:16px;overflow:hidden;background:#f3f0e9;box-shadow:0 10px 28px rgba(43,43,43,.08)}
.bwbe-detail-layout.is-flexible-package .bwbe-detail-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.bwbe-detail-layout.is-flexible-package .bwbe-detail-copy{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:28px 34px 34px 30px;scrollbar-gutter:stable}
.bwbe-detail-layout.is-flexible-package .bwbe-detail-copy::-webkit-scrollbar{width:10px}.bwbe-detail-layout.is-flexible-package .bwbe-detail-copy::-webkit-scrollbar-thumb{background:#d7d3ca;border:3px solid #fff;border-radius:999px}
.bwbe-detail-layout.is-flexible-package .bwbe-detail-list{margin-bottom:18px}
.bwbe-detail-layout.is-flexible-package .bwbe-choice-inclusion{color:#4f5960;font-style:normal}

.bwbe-package-choice-groups{margin:24px 0 18px;gap:18px}
.bwbe-package-choice-groups>h3{margin:0;color:#2b2b2b;font-size:1.08rem}
.bwbe-package-choice-group{padding:17px;border:1px solid #e3ded4;border-radius:16px;background:#faf8f3}
.bwbe-package-choice-group legend{padding:0 7px;color:#2b2b2b;font-size:.96rem;font-weight:850}
.bwbe-package-choice-help{margin:3px 0 13px;color:#6a665e;font-size:.86rem;line-height:1.45}
.bwbe-package-choice-options{gap:11px}
.bwbe-package-choice-option{position:relative;display:grid;grid-template-columns:24px auto minmax(0,1fr);gap:11px;align-items:center;min-height:76px;padding:11px 12px;border:1.5px solid #ddd8ce;border-radius:13px;background:#fff;color:#2b2b2b;cursor:pointer;box-shadow:0 1px 0 rgba(43,43,43,.02);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background-color .14s ease}
.bwbe-package-choice-option:not(.has-thumb){grid-template-columns:24px minmax(0,1fr)}
.bwbe-package-choice-option:hover{transform:translateY(-1px);border-color:#82c3d6;box-shadow:0 7px 18px rgba(43,43,43,.07)}
.bwbe-package-choice-option.is-selected,.bwbe-package-choice-option:has(input:checked){border-color:#41aacd;background:#eff9fc;box-shadow:0 0 0 2px rgba(65,170,205,.12),0 8px 20px rgba(43,43,43,.06)}
.bwbe-package-choice-option input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;opacity:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;pointer-events:none}
.bwbe-package-choice-indicator{position:relative;width:22px;height:22px;border:2px solid #9ca4a6;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 3px #fff;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}
.bwbe-package-choice-option.is-selected .bwbe-package-choice-indicator,.bwbe-package-choice-option:has(input:checked) .bwbe-package-choice-indicator{border-color:#247e9e;background:#247e9e;box-shadow:inset 0 0 0 3px #247e9e}
.bwbe-package-choice-option.is-selected .bwbe-package-choice-indicator:after,.bwbe-package-choice-option:has(input:checked) .bwbe-package-choice-indicator:after{content:"";position:absolute;left:5px;top:2px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.bwbe-package-choice-option:focus-within{outline:3px solid rgba(65,170,205,.28);outline-offset:2px;border-color:#247e9e}
.bwbe-package-choice-thumb{width:64px;aspect-ratio:4/3;border-radius:9px;overflow:hidden;background:#f1eee7;border:1px solid #e3dfd6}
.bwbe-package-choice-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.bwbe-package-choice-option-copy{min-width:0;gap:4px;line-height:1.25}
.bwbe-package-choice-option-copy strong{font-size:.9rem;font-weight:800;color:#2b2b2b}
.bwbe-package-choice-adjustment{display:inline-flex;align-items:center;width:max-content;margin-top:2px;padding:3px 7px;border-radius:999px;background:#e6f4f8;color:#276d87!important;font-size:.7rem!important;font-weight:850!important}
.bwbe-package-choice-value{padding:13px 14px;border:1px solid #cfe6d6;border-radius:13px;background:#f0f8f2}
.bwbe-package-choice-status,.bwbe-package-choice-prompt{padding:0 2px;font-size:.84rem}

@media(max-width:960px){
  .bwbe-detail-card.is-flexible-package{overflow-y:auto}
  .bwbe-detail-layout.is-flexible-package{display:block;height:auto;min-height:0}
  .bwbe-detail-layout.is-flexible-package .bwbe-detail-media{width:auto;min-height:0;aspect-ratio:4/3;margin:18px 18px 0;border-radius:15px}
  .bwbe-detail-layout.is-flexible-package .bwbe-detail-copy{height:auto;overflow:visible;padding:24px 22px 30px}
}
@media(max-width:560px){
  .bwbe-detail-card.is-flexible-package{width:100%;max-width:100%;overflow-y:auto}
  .bwbe-detail-layout.is-flexible-package .bwbe-detail-media{width:100%;aspect-ratio:4/3;margin:0;border-width:0 0 1px;border-radius:0;box-shadow:none}
  .bwbe-detail-layout.is-flexible-package .bwbe-detail-copy{padding:21px 18px 96px}
  .bwbe-package-choice-group{padding:14px 13px}
  .bwbe-package-choice-options{grid-template-columns:1fr}
  .bwbe-package-choice-option{grid-template-columns:24px 60px minmax(0,1fr);min-height:72px;padding:10px 11px}
  .bwbe-package-choice-thumb{width:60px}
  .bwbe-package-choice-option:hover{transform:none}
  .bwbe-detail-layout.is-flexible-package .bwbe-detail-copy>.bwbe-primary{position:sticky;bottom:0;z-index:8;margin:18px -4px 0;width:calc(100% + 8px);box-shadow:0 -10px 22px rgba(255,255,255,.92)}
}

/* v0.10.3 — universal 4:3 catalog/product image presentation */
/* Product photography is authored at 4:3. Keep that ratio everywhere it is
   presented as a catalog/product/package image instead of stretching images
   to match surrounding content height. */
.bwbe-store-media,
.bwbe-detail-media,
.bwbe-direct-package-image,
.bwbe-planner-result-image,
.bwbe-planner-reserve-image,
.bwbe-budget-result-card img,
.bwbe-vibe-choice img,
.bwbe-vibe-result>img,
.bwbe-surprise-result-card img,
.bwbe-package-choice-thumb{
  aspect-ratio:4/3!important;
}

/* Detail / configurator screens: the copy may be taller than the photograph,
   but the photograph never stretches vertically to fill that height. */
.bwbe-detail-layout,
.bwbe-detail-layout.is-flexible-package,
.bwbe-direct-package-card,
.bwbe-planner-result-card{
  align-items:start;
}
.bwbe-detail-media,
.bwbe-detail-layout.is-flexible-package .bwbe-detail-media{
  min-height:0!important;
  height:auto!important;
  align-self:start;
  overflow:hidden;
}
.bwbe-detail-media img,
.bwbe-detail-layout.is-flexible-package .bwbe-detail-media img{
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:4/3!important;
  object-fit:cover;
  object-position:center;
}

/* Direct planner/package handoff (Finish the details). */
.bwbe-direct-package-image{
  display:block;
  width:100%;
  height:auto!important;
  min-height:0!important;
  align-self:start;
  object-fit:cover;
  object-position:center;
}

/* Recommendation and reservation cards. */
.bwbe-planner-result-image{
  display:block;
  width:100%;
  height:auto!important;
  min-height:0!important;
  align-self:start;
  object-fit:cover;
  object-position:center;
}
.bwbe-planner-reserve-image{
  display:block;
  height:auto!important;
  object-fit:cover;
  object-position:center;
}

/* Homepage discovery/recommendation cards retain the same photo language on
   mobile instead of converting to portrait/16:9 crops. */
.bwbe-budget-result-card img,
.bwbe-vibe-choice img,
.bwbe-vibe-result>img,
.bwbe-surprise-result-card img{
  height:auto!important;
  object-fit:cover;
  object-position:center;
}

@media(max-width:960px){
  .bwbe-detail-media,
  .bwbe-detail-layout.is-flexible-package .bwbe-detail-media{
    min-height:0!important;
    aspect-ratio:4/3!important;
  }
}
@media(max-width:760px){
  .bwbe-direct-package-image,
  .bwbe-planner-result-image,
  .bwbe-planner-reserve-image,
  .bwbe-budget-result-card img{
    aspect-ratio:4/3!important;
    height:auto!important;
    min-height:0!important;
  }
  .bwbe-budget-result-card{align-items:start}
}
@media(max-width:480px){
  .bwbe-surprise-result-card img{
    width:100%;
    aspect-ratio:4/3!important;
    height:auto!important;
  }
}

/* v0.10.4 — package selector icon mapping + configurator composition polish */
/* Flexible package modal: a deliberate overview row followed by a full-width
   configuration surface. This eliminates the blank column beneath a 4:3 hero. */
.bwbe-detail-card.is-flexible-package{
  width:min(1080px,calc(100% - 28px));
  max-width:min(1080px,calc(100vw - 28px));
  max-height:calc(100dvh - 40px);
  overflow-y:auto;
  overflow-x:hidden;
  background:#fff;
}
.bwbe-detail-layout.is-flexible-package{
  display:block;
  height:auto;
  min-height:0;
  background:#fff;
}
.bwbe-flex-package-overview{
  display:grid;
  grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr);
  gap:30px;
  align-items:start;
  padding:26px 30px 24px;
}
.bwbe-flex-package-overview .bwbe-detail-media,
.bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-media{
  width:100%;
  min-height:0!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  margin:0;
  border:1px solid #e3ded4;
  border-radius:16px;
  overflow:hidden;
  background:#f3f0e9;
  box-shadow:0 10px 28px rgba(43,43,43,.08);
}
.bwbe-flex-package-overview .bwbe-detail-copy,
.bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-copy{
  height:auto;
  min-height:0;
  overflow:visible;
  padding:5px 0 0;
  scrollbar-gutter:auto;
}
.bwbe-flex-package-overview .bwbe-detail-copy h2{margin-bottom:8px}
.bwbe-flex-package-overview .bwbe-detail-price{margin:5px 0 12px}
.bwbe-flex-package-overview .bwbe-detail-text{margin:0 0 17px}
.bwbe-flex-package-overview .bwbe-detail-list{margin:7px 0 0;padding-left:20px}

.bwbe-flex-package-config{
  padding:22px 30px 30px;
  border-top:1px solid #ebe6dc;
  background:linear-gradient(180deg,#fcfbf8 0%,#fff 100%);
}
.bwbe-flex-package-config .bwbe-package-choice-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:0;
}
.bwbe-flex-package-config .bwbe-package-choice-groups>h3,
.bwbe-flex-package-config .bwbe-package-choice-value,
.bwbe-flex-package-config .bwbe-package-choice-status{
  grid-column:1/-1;
}
.bwbe-flex-package-config .bwbe-package-choice-groups>h3{
  margin:0 0 1px;
  font-size:1.16rem;
  letter-spacing:-.01em;
}
.bwbe-flex-package-config .bwbe-package-choice-group:only-of-type{grid-column:1/-1}
.bwbe-flex-package-config>.bwbe-primary{
  width:100%;
  min-height:50px;
  margin:18px 0 0;
  border-radius:12px;
  font-size:.96rem;
  box-shadow:0 8px 18px rgba(43,43,43,.08);
}

/* Choice groups/cards — compact, branded, and icon-led rather than tiny photos. */
.bwbe-package-choice-group{
  padding:16px;
  border:1px solid #e1ddd4;
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 18px rgba(43,43,43,.035);
}
.bwbe-package-choice-group legend{
  padding:0 7px;
  color:#2b2b2b;
  font-size:.94rem;
  font-weight:850;
}
.bwbe-package-choice-help{
  margin:3px 0 12px;
  color:#716d66;
  font-size:.82rem;
  line-height:1.4;
}
.bwbe-package-choice-options{gap:10px}
.bwbe-package-choice-option{
  grid-template-columns:22px 56px minmax(0,1fr);
  gap:10px;
  min-height:82px;
  padding:10px 11px;
  border:1.5px solid #ddd8ce;
  border-radius:14px;
  background:#fff;
  box-shadow:0 1px 0 rgba(43,43,43,.025);
}
.bwbe-package-choice-option:not(.has-icon){grid-template-columns:22px minmax(0,1fr)}
.bwbe-package-choice-option:hover{
  transform:translateY(-1px);
  border-color:#77bfd5;
  box-shadow:0 8px 20px rgba(43,43,43,.07);
}
.bwbe-package-choice-option.is-selected,
.bwbe-package-choice-option:has(input:checked){
  border-color:#41aacd;
  background:#eef9fc;
  box-shadow:0 0 0 2px rgba(65,170,205,.12),0 8px 20px rgba(43,43,43,.06);
}
.bwbe-package-choice-icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  overflow:hidden;
  border:1px solid #e3dfd6;
  border-radius:13px;
  background:#faf9f6;
}
.bwbe-package-choice-icon img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.bwbe-package-choice-option.is-selected .bwbe-package-choice-icon,
.bwbe-package-choice-option:has(input:checked) .bwbe-package-choice-icon{
  border-color:#b9dfe9;
  background:#fff;
}
.bwbe-package-choice-option-copy strong{
  font-size:.88rem;
  line-height:1.25;
}
.bwbe-package-choice-adjustment{margin-top:3px}
.bwbe-package-choice-prompt,.bwbe-package-choice-status{margin:0;padding-top:1px}

/* Finish-the-details handoff uses the same composition language as the modal. */
.bwbe-direct-package-card{
  display:block;
  overflow:hidden;
  margin:22px 0;
  border:1px solid #e3ded4;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(43,43,43,.045);
}
.bwbe-direct-package-overview{
  display:grid;
  grid-template-columns:minmax(240px,.84fr) minmax(0,1.16fr);
  gap:24px;
  align-items:start;
  padding:22px;
}
.bwbe-direct-package-overview .bwbe-direct-package-image{
  width:100%;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/3!important;
  border:1px solid #e3ded4;
  border-radius:14px;
  object-fit:cover;
  background:#f1eee7;
}
.bwbe-direct-package-overview .bwbe-direct-package-copy{padding:5px 2px 0}
.bwbe-direct-package-overview .bwbe-direct-package-copy h2{margin-bottom:8px!important}
.bwbe-direct-package-card>.bwbe-planner-package-choices{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:0;
  padding:20px 22px 22px;
  border-top:1px solid #ebe6dc;
  background:#fcfbf8;
}
.bwbe-direct-package-card>.bwbe-planner-package-choices>h3,
.bwbe-direct-package-card>.bwbe-planner-package-choices>.bwbe-package-choice-prompt{
  grid-column:1/-1;
}
.bwbe-direct-package-card>.bwbe-planner-package-choices>h3{margin:0}
.bwbe-direct-package-card>.bwbe-planner-package-choices>.bwbe-package-choice-group:only-of-type{grid-column:1/-1}

@media(max-width:960px){
  .bwbe-flex-package-overview{grid-template-columns:1fr;gap:20px;padding:20px}
  .bwbe-flex-package-overview .bwbe-detail-media,
  .bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-media{margin:0;border-radius:15px}
  .bwbe-flex-package-config{padding:20px}
  .bwbe-flex-package-config .bwbe-package-choice-groups{grid-template-columns:1fr}
  .bwbe-flex-package-config .bwbe-package-choice-groups>*{grid-column:1}
  .bwbe-direct-package-overview{grid-template-columns:1fr;gap:18px;padding:18px}
  .bwbe-direct-package-card>.bwbe-planner-package-choices{grid-template-columns:1fr;padding:18px}
  .bwbe-direct-package-card>.bwbe-planner-package-choices>*{grid-column:1}
}
@media(max-width:560px){
  .bwbe-detail-card.is-flexible-package{max-height:calc(100dvh - 24px)}
  .bwbe-flex-package-overview{padding:0}
  .bwbe-flex-package-overview .bwbe-detail-media,
  .bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-media{
    border-width:0 0 1px;
    border-radius:0;
    box-shadow:none;
  }
  .bwbe-flex-package-overview .bwbe-detail-copy,
  .bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-copy{padding:21px 18px 8px}
  .bwbe-flex-package-config{padding:14px 18px 94px;border-top:0;background:#fff}
  .bwbe-flex-package-config .bwbe-package-choice-groups{gap:14px}
  .bwbe-package-choice-group{padding:14px 13px}
  .bwbe-package-choice-options{grid-template-columns:1fr}
  .bwbe-package-choice-option{grid-template-columns:22px 54px minmax(0,1fr);min-height:76px;padding:9px 10px}
  .bwbe-package-choice-option:not(.has-icon){grid-template-columns:22px minmax(0,1fr)}
  .bwbe-package-choice-icon{width:54px;height:54px}
  .bwbe-package-choice-option:hover{transform:none}
  .bwbe-flex-package-config>.bwbe-primary{position:sticky;bottom:0;z-index:8;margin-top:16px;box-shadow:0 -10px 22px rgba(255,255,255,.94),0 8px 18px rgba(43,43,43,.08)}
  .bwbe-direct-package-overview{padding:14px;gap:14px}
  .bwbe-direct-package-overview .bwbe-direct-package-copy{padding:4px 3px 2px}
  .bwbe-direct-package-card>.bwbe-planner-package-choices{padding:15px 14px 17px}
}
.bwbe-direct-package-overview.is-no-media{grid-template-columns:1fr}


/* v0.10.5 — unified detail composition + icon-forward package choice tiles */
/* Every standard rental/service/fixed-package detail now uses the same inset
   4:3 overview composition as the approved flexible-package presentation. */
.bwbe-detail-card.is-standard-detail{
  width:min(1080px,calc(100% - 28px));
  max-width:min(1080px,calc(100vw - 28px));
  max-height:calc(100dvh - 40px);
  overflow-y:auto;
  overflow-x:hidden;
  background:#fff;
}
.bwbe-detail-layout.is-standard-detail{
  display:block;
  min-height:0;
  background:#fff;
}
.bwbe-standard-overview{
  display:grid;
  grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr);
  gap:30px;
  align-items:start;
  padding:26px 30px 28px;
}
.bwbe-standard-overview .bwbe-detail-media{
  width:100%;
  min-height:0!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  margin:0;
  border:1px solid #e3ded4;
  border-radius:16px;
  overflow:hidden;
  background:#f3f0e9;
  box-shadow:0 10px 28px rgba(43,43,43,.08);
}
.bwbe-standard-overview .bwbe-detail-copy{
  min-width:0;
  min-height:0;
  padding:5px 0 0;
  overflow:visible;
}
.bwbe-standard-overview .bwbe-detail-copy h2{margin-bottom:8px}
.bwbe-standard-overview .bwbe-detail-price{margin:5px 0 12px}
.bwbe-standard-overview .bwbe-detail-text{margin:0 0 17px}
.bwbe-standard-overview .bwbe-detail-copy>.bwbe-primary{
  min-height:50px;
  margin-top:18px;
  border-radius:12px;
  box-shadow:0 8px 18px rgba(43,43,43,.08);
}
/* Long fixed package lists consume horizontal space instead of producing an
   unnecessarily tall right column. */
.bwbe-detail-layout.is-package.is-standard-detail .bwbe-standard-overview ul.bwbe-detail-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:26px;
  row-gap:6px;
  padding-left:20px;
}
.bwbe-detail-layout.is-package.is-standard-detail .bwbe-standard-overview ul.bwbe-detail-list li{padding-right:6px}

/* Choice tiles: the icon is now the visual object being selected. The radio
   remains semantic and keyboard/screen-reader accessible, but no longer steals
   layout width from the label. */
.bwbe-package-choice-options{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.bwbe-package-choice-option,
.bwbe-package-choice-option.has-icon{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:auto auto;
  align-content:start;
  justify-items:start;
  gap:10px;
  min-width:0;
  min-height:164px;
  padding:14px;
  border:1.5px solid #ddd8ce;
  border-radius:16px;
  background:#fff;
}
.bwbe-package-choice-option:not(.has-icon){grid-template-columns:1fr;grid-template-rows:auto;min-height:112px}
.bwbe-package-choice-indicator{
  position:absolute;
  z-index:2;
  top:12px;
  right:12px;
  width:24px;
  height:24px;
  box-shadow:0 2px 8px rgba(43,43,43,.08),inset 0 0 0 3px #fff;
}
.bwbe-package-choice-icon{
  width:88px;
  height:88px;
  border:0;
  border-radius:18px;
  background:#f7f6f2;
  box-shadow:inset 0 0 0 1px #ebe7df;
}
.bwbe-package-choice-icon img{width:100%;height:100%;object-fit:contain}
.bwbe-package-choice-option-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
  width:100%;
  padding-right:2px;
  line-height:1.2;
}
.bwbe-package-choice-option-copy strong{
  font-size:.98rem;
  font-weight:850;
  line-height:1.16;
  overflow-wrap:normal;
  word-break:normal;
}
.bwbe-package-choice-meta{
  color:#6d6962!important;
  font-size:.76rem!important;
  font-weight:650!important;
  line-height:1.25;
}
.bwbe-package-choice-adjustment{margin-top:5px}
.bwbe-package-choice-option.is-selected .bwbe-package-choice-icon,
.bwbe-package-choice-option:has(input:checked) .bwbe-package-choice-icon{
  background:#fff;
  box-shadow:inset 0 0 0 1px #b9dfe9,0 5px 14px rgba(65,170,205,.08);
}

@media(max-width:960px){
  .bwbe-standard-overview{grid-template-columns:1fr;gap:20px;padding:20px}
  .bwbe-standard-overview .bwbe-detail-copy{padding:2px 2px 0}
  .bwbe-detail-layout.is-package.is-standard-detail .bwbe-standard-overview ul.bwbe-detail-list{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .bwbe-detail-card.is-standard-detail{width:100%;max-width:100%;max-height:calc(100dvh - 24px)}
  .bwbe-standard-overview{padding:0;gap:0}
  .bwbe-standard-overview .bwbe-detail-media{border-width:0 0 1px;border-radius:0;box-shadow:none}
  .bwbe-standard-overview .bwbe-detail-copy{padding:21px 18px 28px}
  .bwbe-detail-layout.is-package.is-standard-detail .bwbe-standard-overview ul.bwbe-detail-list{grid-template-columns:1fr}
  .bwbe-package-choice-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .bwbe-package-choice-option,.bwbe-package-choice-option.has-icon{min-height:150px;padding:11px;border-radius:14px}
  .bwbe-package-choice-icon{width:76px;height:76px;border-radius:15px}
  .bwbe-package-choice-indicator{top:9px;right:9px;width:22px;height:22px}
  .bwbe-package-choice-option-copy strong{font-size:.9rem}
  .bwbe-package-choice-meta{font-size:.7rem!important}
}
@media(max-width:370px){
  .bwbe-package-choice-options{grid-template-columns:1fr}
  .bwbe-package-choice-option,.bwbe-package-choice-option.has-icon{min-height:132px}
}

/* v0.10.7 — standard-detail width repair + polished icon-only selectors */
/* Standard rental/service/fixed-package detail windows use flex here rather
   than an intrinsic grid. This prevents the copy column from collapsing to
   min-content width inside WordPress/dialog layout contexts. */
.bwbe-detail-card.is-standard-detail [data-bwbe-detail-content],
.bwbe-detail-layout.is-standard-detail,
.bwbe-standard-overview{
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
.bwbe-standard-overview{
  display:flex!important;
  flex-direction:row;
  align-items:flex-start;
  gap:30px;
}
.bwbe-standard-overview .bwbe-detail-media{
  flex:0 0 min(43%,410px);
  width:min(43%,410px);
  max-width:410px;
}
.bwbe-standard-overview .bwbe-detail-copy{
  flex:1 1 0;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  white-space:normal;
}
.bwbe-standard-overview .bwbe-detail-copy h2,
.bwbe-standard-overview .bwbe-detail-copy p,
.bwbe-standard-overview .bwbe-detail-copy li,
.bwbe-standard-overview .bwbe-related-row span{
  overflow-wrap:break-word;
  word-break:normal;
}

/* The icon itself is now the selection affordance. The semantic radio/
   checkbox stays in the DOM for accessibility, while the redundant circle
   indicator is not rendered. */
.bwbe-package-choice-indicator{display:none!important}
.bwbe-package-choice-option,
.bwbe-package-choice-option.has-icon{
  justify-items:center;
  align-content:center;
  text-align:center;
  gap:10px;
  min-height:176px;
  padding:15px 14px 14px;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease;
}
.bwbe-package-choice-icon{
  width:96px;
  height:96px;
  margin-inline:auto;
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.bwbe-package-choice-option-copy{
  align-items:center;
  text-align:center;
  padding:0;
}
.bwbe-package-choice-option-copy strong{
  font-size:1rem;
  line-height:1.18;
}
.bwbe-package-choice-meta{
  font-size:.77rem!important;
  line-height:1.3;
}
.bwbe-package-choice-option:hover{
  transform:translateY(-3px);
  border-color:#41aacd;
  background:#f7fcfe;
  box-shadow:0 12px 26px rgba(43,43,43,.09);
}
.bwbe-package-choice-option:hover .bwbe-package-choice-icon{
  transform:scale(1.045);
  box-shadow:inset 0 0 0 1px #cde7ef,0 7px 18px rgba(65,170,205,.11);
}
.bwbe-package-choice-option.is-selected,
.bwbe-package-choice-option:has(input:checked){
  transform:translateY(-2px);
  border-color:#2487a8;
  background:#eaf7fb;
  box-shadow:0 0 0 2px rgba(65,170,205,.16),0 12px 26px rgba(43,43,43,.08);
}
.bwbe-package-choice-option.is-selected .bwbe-package-choice-icon,
.bwbe-package-choice-option:has(input:checked) .bwbe-package-choice-icon{
  transform:scale(1.055);
  background:#fff;
  box-shadow:inset 0 0 0 2px #a8d9e7,0 8px 20px rgba(65,170,205,.14);
}
.bwbe-package-choice-option:has(input:focus-visible){
  outline:3px solid rgba(65,170,205,.42);
  outline-offset:3px;
}

@media(max-width:960px){
  .bwbe-standard-overview{
    flex-direction:column;
    gap:20px;
  }
  .bwbe-standard-overview .bwbe-detail-media{
    flex:0 0 auto;
    width:100%;
    max-width:none;
  }
}
@media(max-width:560px){
  .bwbe-standard-overview{gap:0}
  .bwbe-package-choice-option,
  .bwbe-package-choice-option.has-icon{
    min-height:158px;
    padding:12px 10px;
  }
  .bwbe-package-choice-icon{width:84px;height:84px}
  .bwbe-package-choice-option:hover{transform:none}
  .bwbe-package-choice-option.is-selected,
  .bwbe-package-choice-option:has(input:checked){transform:none}
}


/* v0.10.8 — standard-detail geometry + interactive secondary choices */
/* The standard detail layout itself must leave the legacy two-column grid.
   Earlier releases only changed its child, which allowed the whole overview to
   occupy the first legacy grid track and created the narrow text wall. */
.bwbe-detail-card.is-standard-detail .bwbe-detail-layout,
.bwbe-detail-layout.is-standard-detail{
  display:block!important;
  grid-template-columns:none!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview{
  display:grid!important;
  grid-template-columns:minmax(320px,400px) minmax(0,1fr)!important;
  gap:34px!important;
  width:100%!important;
  max-width:none!important;
  align-items:start;
  padding:26px 30px 30px;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-media{
  width:100%!important;
  max-width:none!important;
  flex:none!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-copy{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  flex:none!important;
  padding:4px 0 0!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-copy h2{
  max-width:18ch;
  text-wrap:balance;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-text{
  max-width:62ch;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-list{
  max-width:62ch;
}
.bwbe-detail-card.is-standard-detail .bwbe-primary{
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.bwbe-detail-card.is-standard-detail .bwbe-primary:not(:disabled):hover{
  transform:translateY(-2px);
  filter:brightness(.97);
  box-shadow:0 12px 24px rgba(43,43,43,.13);
}
.bwbe-detail-card.is-standard-detail .bwbe-primary:not(:disabled):active{
  transform:translateY(0);
}

/* Prize setup and similar compact product options become real interactive
   choice cards instead of a visually generic native dropdown. */
.bwbe-visually-hidden-select{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.bwbe-inline-option-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:8px 0 4px;
}
.bwbe-inline-option-card{
  appearance:none;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  min-height:78px;
  padding:13px 14px;
  border:1.5px solid #ddd8ce;
  border-radius:14px;
  background:#fff;
  color:#2b2b2b;
  text-align:left;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease;
}
.bwbe-inline-option-card:hover{
  transform:translateY(-2px);
  border-color:#79bfd3;
  background:#f8fcfd;
  box-shadow:0 9px 20px rgba(43,43,43,.08);
}
.bwbe-inline-option-card.is-selected{
  border-color:#2487a8;
  background:#eaf7fb;
  box-shadow:0 0 0 2px rgba(65,170,205,.14),0 9px 20px rgba(43,43,43,.07);
}
.bwbe-inline-option-card:focus-visible{
  outline:3px solid rgba(65,170,205,.38);
  outline-offset:3px;
}
.bwbe-inline-option-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.bwbe-inline-option-copy strong{font-size:.92rem;line-height:1.22}
.bwbe-inline-option-copy small{font-size:.76rem;line-height:1.25;color:#706d66}
.bwbe-inline-option-price{
  font-size:.9rem;
  font-weight:850;
  color:#245b68;
  white-space:nowrap;
}

/* Related packages and optional extras are now full clickable cards rather
   than loose text rows and underlined links. */
.bwbe-related-block-cards{
  margin-top:22px;
  padding-top:18px;
}
.bwbe-related-block-cards>h3{
  margin:0 0 4px!important;
}
.bwbe-related-intro{
  margin:0 0 11px;
  color:#77736b;
  font-size:.8rem;
  line-height:1.4;
}
.bwbe-related-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.bwbe-related-card{
  appearance:none;
  width:100%;
  min-width:0;
  min-height:78px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:
    "symbol copy"
    "symbol action";
  column-gap:11px;
  row-gap:4px;
  align-items:center;
  padding:12px 13px;
  border:1.5px solid #dfdbd2;
  border-radius:14px;
  background:#fff;
  color:#2b2b2b;
  text-align:left;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease;
}
.bwbe-related-card:hover:not(:disabled){
  transform:translateY(-2px);
  border-color:#79bfd3;
  background:#f8fcfd;
  box-shadow:0 10px 22px rgba(43,43,43,.08);
}
.bwbe-related-card:focus-visible{
  outline:3px solid rgba(65,170,205,.38);
  outline-offset:3px;
}
.bwbe-related-card-symbol{
  grid-area:symbol;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#eef8fa;
  color:#247a95;
  font-size:1.2rem;
  font-weight:900;
  transition:background-color .16s ease,color .16s ease,transform .16s ease;
}
.bwbe-related-card-copy{
  grid-area:copy;
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.bwbe-related-card-copy strong{
  font-size:.9rem;
  line-height:1.25;
}
.bwbe-related-card-copy small{
  color:#6e6a63;
  font-size:.78rem;
  line-height:1.25;
}
.bwbe-related-card-action{
  grid-area:action;
  color:#26768a;
  font-size:.76rem;
  font-weight:800;
  line-height:1.25;
}
.bwbe-related-card.is-selected{
  border-color:#2487a8;
  background:#eaf7fb;
  box-shadow:0 0 0 2px rgba(65,170,205,.14),0 9px 20px rgba(43,43,43,.06);
}
.bwbe-related-card.is-selected .bwbe-related-card-symbol{
  background:#41aacd;
  color:#fff;
  transform:scale(1.04);
}
.bwbe-related-card.is-added{
  cursor:default;
  opacity:.76;
  background:#f5f5f2;
}
.bwbe-related-card.is-added .bwbe-related-card-symbol{
  background:#e6f4e9;
  color:#28703d;
}
.bwbe-package-link-card{
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"copy action";
}
.bwbe-package-link-card .bwbe-related-card-action{
  align-self:center;
  white-space:nowrap;
}
.bwbe-package-link-card:hover .bwbe-related-card-action{
  color:#1e6073;
}

/* Flexible package selector tiles retain the icon-led treatment with a
   stronger hover/selected reaction. */
.bwbe-package-choice-option:hover{
  border-color:#69b8ce;
  background:#f5fbfd;
  box-shadow:0 13px 28px rgba(43,43,43,.10);
}
.bwbe-package-choice-option.is-selected,
.bwbe-package-choice-option:has(input:checked){
  border-color:#2487a8;
  background:#e7f6fa;
  box-shadow:0 0 0 2px rgba(65,170,205,.16),0 13px 28px rgba(43,43,43,.08);
}

@media(max-width:960px){
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview{
    grid-template-columns:1fr!important;
    gap:20px!important;
    padding:20px;
  }
  .bwbe-detail-card.is-standard-detail .bwbe-detail-copy h2,
  .bwbe-detail-card.is-standard-detail .bwbe-detail-text,
  .bwbe-detail-card.is-standard-detail .bwbe-detail-list{
    max-width:none;
  }
}
@media(max-width:620px){
  .bwbe-inline-option-grid,
  .bwbe-related-card-grid{
    grid-template-columns:1fr;
  }
  .bwbe-inline-option-card:hover,
  .bwbe-related-card:hover:not(:disabled){
    transform:none;
  }
}
@media(max-width:560px){
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview{
    padding:0;
    gap:0!important;
  }
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-copy{
    padding:21px 18px 28px!important;
  }
  .bwbe-related-card{min-height:72px}
}

/* v0.10.9 — catalog-wide alignment, action rail, and price-aware add-ons */
/* Core standard detail presentation: keep the 4:3 product image and the core
   product summary as one balanced overview, then place all actions below. */
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview{
  align-items:center!important;
  gap:36px!important;
  padding:30px 34px 28px!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-media{
  align-self:center!important;
  flex:0 0 min(42%,410px)!important;
  width:min(42%,410px)!important;
  max-width:410px!important;
  aspect-ratio:4/3!important;
  border-radius:18px!important;
  box-shadow:0 12px 30px rgba(43,43,43,.09)!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-copy{
  align-self:center!important;
  padding:0!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-copy>.bwbe-eyebrow{margin-bottom:7px}
.bwbe-detail-card.is-standard-detail .bwbe-detail-copy h2{
  max-width:22ch;
  margin:0 0 8px;
  font-size:clamp(1.85rem,3vw,2.55rem);
  line-height:1.02;
  letter-spacing:-.035em;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-price{
  display:flex;
  align-items:baseline;
  min-height:30px;
  margin:7px 0 14px!important;
  font-size:1.28rem;
  transition:color .16s ease,transform .16s ease;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-price.has-addons{
  color:#245b68;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-text{
  max-width:58ch;
  margin:0 0 18px!important;
  line-height:1.52;
}
.bwbe-detail-card.is-standard-detail .bwbe-detail-copy>h3{
  margin:18px 0 8px;
}
.bwbe-detail-card.is-standard-detail ul.bwbe-detail-list{
  margin:0!important;
  padding-left:20px;
  row-gap:6px;
  line-height:1.45;
}
.bwbe-detail-card.is-standard-detail ul.bwbe-detail-list li{padding-left:2px}

/* All standard-detail controls now live in one full-width lower rail. This
   prevents long option/add-on/package content from distorting the image/text
   columns and creates one consistent rhythm across the whole catalog. */
.bwbe-standard-config{
  display:block;
  width:100%;
  padding:22px 34px 30px;
  border-top:1px solid #e7e2d8;
  background:linear-gradient(180deg,#fdfcf9 0%,#fff 48%);
}
.bwbe-standard-config>.bwbe-option-heading{
  margin:0 0 10px!important;
  font-size:1rem;
}
.bwbe-standard-config>.bwbe-option-select{
  width:min(100%,440px);
  margin:0 0 16px;
  border-radius:12px;
}
.bwbe-standard-config>.bwbe-inline-option-grid{
  width:min(100%,680px);
  margin:0 0 18px;
  gap:12px;
}
.bwbe-standard-config>.bwbe-detail-status{
  width:min(100%,680px);
  margin:14px 0 0;
  padding:10px 12px;
  border-radius:11px;
  background:#f4f7f6;
}
.bwbe-standard-config>.bwbe-primary{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:auto!important;
  min-width:260px;
  min-height:52px;
  margin:18px 0 0!important;
  padding:12px 22px;
  border:1px solid #242424;
  border-radius:14px;
  background:#2b2b2b;
  color:#fff;
  box-shadow:0 9px 20px rgba(43,43,43,.14);
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease;
}
.bwbe-standard-config>.bwbe-primary::after{
  content:'→';
  font-size:1.05em;
  line-height:1;
  transition:transform .16s ease;
}
.bwbe-standard-config>.bwbe-primary:not(:disabled):hover{
  transform:translateY(-2px);
  background:#222;
  border-color:#222;
  box-shadow:0 13px 28px rgba(43,43,43,.18);
}
.bwbe-standard-config>.bwbe-primary:not(:disabled):hover::after{transform:translateX(3px)}
.bwbe-standard-config>.bwbe-primary:not(:disabled):active{
  transform:translateY(0);
  box-shadow:0 6px 14px rgba(43,43,43,.13);
}
.bwbe-standard-config>.bwbe-primary:focus-visible{
  outline:3px solid rgba(65,170,205,.38);
  outline-offset:3px;
}
.bwbe-standard-config.is-simple{
  padding-top:20px;
  padding-bottom:24px;
}
.bwbe-standard-config.is-simple>.bwbe-primary{margin-top:0!important}

/* Compact options such as Prize Wheel / Plinko setup. */
.bwbe-standard-config .bwbe-inline-option-card{
  min-height:92px;
  padding:15px 16px;
  border-radius:15px;
  box-shadow:0 3px 10px rgba(43,43,43,.025);
}
.bwbe-standard-config .bwbe-inline-option-card:hover{
  border-color:#58adc5;
  background:#f5fbfd;
  box-shadow:0 11px 24px rgba(43,43,43,.09);
}
.bwbe-standard-config .bwbe-inline-option-card.is-selected{
  border-color:#2487a8;
  background:#e8f6fa;
  box-shadow:0 0 0 2px rgba(65,170,205,.14),0 11px 24px rgba(43,43,43,.07);
}

/* Useful add-ons: polished selector cards with a clear selected state. */
.bwbe-standard-config .bwbe-related-block-cards{
  width:100%;
  margin:20px 0 0!important;
  padding:20px 0 0!important;
  border-top:1px solid #ebe6dc!important;
}
.bwbe-standard-config .bwbe-addon-section:first-child,
.bwbe-standard-config>.bwbe-option-heading+.bwbe-addon-section{
  margin-top:0!important;
}
.bwbe-standard-config .bwbe-related-block-cards>h3{
  margin:0 0 4px!important;
  font-size:1rem;
}
.bwbe-standard-config .bwbe-related-intro{
  margin:0 0 12px;
  max-width:62ch;
}
.bwbe-standard-config .bwbe-related-card-grid{
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:12px;
  width:100%;
}
.bwbe-standard-config .bwbe-related-card{
  min-height:92px;
  padding:14px 15px;
  border-radius:15px;
  border-color:#ded9cf;
  box-shadow:0 3px 10px rgba(43,43,43,.025);
}
.bwbe-standard-config .bwbe-related-card-symbol{
  width:42px;
  height:42px;
  border-radius:12px;
  background:#edf8fb;
  color:#247a95;
  box-shadow:inset 0 0 0 1px #d5ecf2;
}
.bwbe-standard-config .bwbe-related-card-copy strong{
  font-size:.94rem;
  line-height:1.2;
}
.bwbe-standard-config .bwbe-related-card-copy small{
  margin-top:2px;
  font-size:.8rem;
}
.bwbe-standard-config .bwbe-related-card-action{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:24px;
  margin-top:2px;
  padding:3px 8px;
  border-radius:999px;
  background:#eef8fa;
  color:#246c80;
  font-size:.72rem;
  font-weight:850;
}
.bwbe-standard-config .bwbe-related-card:hover:not(:disabled){
  transform:translateY(-3px);
  border-color:#64b4ca;
  background:#f7fcfd;
  box-shadow:0 12px 25px rgba(43,43,43,.09);
}
.bwbe-standard-config .bwbe-related-card.is-selected{
  border-color:#2487a8;
  background:#e8f6fa;
  box-shadow:0 0 0 2px rgba(65,170,205,.14),0 12px 25px rgba(43,43,43,.07);
}
.bwbe-standard-config .bwbe-related-card.is-selected .bwbe-related-card-action{
  background:#41aacd;
  color:#fff;
}
.bwbe-standard-config .bwbe-related-card.is-added{
  border-color:#cfe3d3;
  background:#f5faf6;
  opacity:1;
}

/* Package cross-sells are intentionally distinct from add-on selectors. */
.bwbe-standard-config .bwbe-package-section .bwbe-related-card-grid{
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
}
.bwbe-standard-config .bwbe-package-link-card{
  min-height:84px;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
}
.bwbe-standard-config .bwbe-package-link-card .bwbe-related-card-action{
  width:36px;
  height:36px;
  min-height:36px;
  justify-content:center;
  overflow:hidden;
  padding:0;
  font-size:0;
  border:1px solid #d7eaf0;
  background:#f0f9fb;
}
.bwbe-standard-config .bwbe-package-link-card .bwbe-related-card-action::after{
  content:'→';
  font-size:1rem;
  color:#246c80;
  transition:transform .16s ease;
}
.bwbe-standard-config .bwbe-package-link-card:hover .bwbe-related-card-action::after{transform:translateX(2px)}

/* Catalog-card spacing pass so every rental/service/package grid row has a
   consistent title, copy, price, and action baseline. */
.bwbe-store-card{
  height:100%;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.bwbe-store-card:hover{
  transform:translateY(-2px);
  border-color:#d3dfe1;
  box-shadow:0 12px 26px rgba(43,43,43,.07);
}
.bwbe-store-body{padding:17px 17px 18px}
.bwbe-card-title{
  min-height:2.5em;
  display:block;
  line-height:1.24;
}
.bwbe-store-description{
  margin:8px 0 12px;
  min-height:2.8em;
}
.bwbe-store-price{margin:auto 0 9px}
.bwbe-add-button{
  min-height:46px;
  border-radius:12px;
  box-shadow:0 5px 12px rgba(65,170,205,.12);
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
}
.bwbe-add-button:not(:disabled):hover{
  transform:translateY(-1px);
  box-shadow:0 8px 17px rgba(65,170,205,.18);
}

@media(max-width:960px){
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview{
    align-items:stretch!important;
    gap:20px!important;
    padding:22px!important;
  }
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-media{
    align-self:auto!important;
    flex:0 0 auto!important;
    width:100%!important;
    max-width:none!important;
  }
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-copy{align-self:auto!important}
  .bwbe-standard-config{padding:20px 22px 26px}
}
@media(max-width:620px){
  .bwbe-standard-config .bwbe-related-card-grid,
  .bwbe-standard-config .bwbe-package-section .bwbe-related-card-grid{grid-template-columns:1fr}
  .bwbe-standard-config>.bwbe-primary{width:100%!important;min-width:0}
  .bwbe-standard-config .bwbe-related-card:hover:not(:disabled),
  .bwbe-store-card:hover{transform:none}
}
@media(max-width:560px){
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview{padding:0!important;gap:0!important}
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-copy{padding:21px 18px 22px!important}
  .bwbe-standard-config{padding:18px 18px 24px}
  .bwbe-standard-config .bwbe-related-block-cards{margin-top:18px!important;padding-top:18px!important}
  .bwbe-card-title{min-height:0}
  .bwbe-store-description{min-height:0}
}

@media(prefers-reduced-motion:reduce){
  .bwbe-standard-config>.bwbe-primary,
  .bwbe-standard-config .bwbe-related-card,
  .bwbe-standard-config .bwbe-inline-option-card,
  .bwbe-store-card,
  .bwbe-add-button{transition:none!important}
}

/* ========================================================================== 
   v0.11.0 — Final Catalog Design Lab implementation
   Visual source: Bounce-Westminster-Catalog-Design-Lab-v6
   ========================================================================== */
.bwbe{
  --bwbe-lab-blue:#41AACD;
  --bwbe-lab-blue-dark:#247E9E;
  --bwbe-lab-yellow:#FFC000;
  --bwbe-lab-green:#7ED6A7;
  --bwbe-lab-char:#2B2B2B;
  --bwbe-lab-cream:#FAF9F6;
  --bwbe-lab-muted:#6F6F6A;
  --bwbe-lab-border:#E9E5DC;
  --bwbe-lab-soft-blue:#EEF8FB;
}
.bwbe .bwbe-sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}

/* Catalog cards */
.bwbe-store-grid{gap:18px!important}
.bwbe-store-card{
  overflow:hidden;border:1px solid #e4dfd6!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 5px 16px rgba(43,43,43,.035)!important;
}
.bwbe-store-card:hover{transform:translateY(-3px)!important;border-color:#cfdde0!important;box-shadow:0 15px 30px rgba(43,43,43,.085)!important}
.bwbe-store-media{aspect-ratio:4/3!important;background:#ece9e3!important;overflow:hidden}
.bwbe-store-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.bwbe-store-body{padding:17px 17px 18px!important}
.bwbe-store-body .bwbe-eyebrow{color:var(--bwbe-lab-blue-dark)!important;font-size:.68rem!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.bwbe-card-title{font-family:"DM Serif Display",Georgia,serif!important;font-weight:400!important;letter-spacing:-.02em!important;line-height:1.08!important;font-size:1.33rem!important}
.bwbe-store-description{color:#5f5d57!important;line-height:1.5!important}
.bwbe-store-price{font-weight:900!important;color:var(--bwbe-lab-char)!important}
.bwbe-add-button{background:var(--bwbe-lab-soft-blue)!important;color:var(--bwbe-lab-blue-dark)!important;border:1px solid #cde7ee!important;box-shadow:none!important;font-weight:850!important}
.bwbe-add-button:not(:disabled):hover{background:#e5f5f9!important;border-color:#78bed1!important;transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(43,43,43,.07)!important}

/* Detail shell / overview */
.bwbe-detail-card{
  background:#fff!important;border:1px solid #e4dfd6!important;border-radius:22px!important;
  box-shadow:0 24px 70px rgba(43,43,43,.14)!important;overflow:auto!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview,
.bwbe-flex-package-overview{
  display:grid!important;grid-template-columns:minmax(300px,420px) minmax(0,1fr)!important;
  gap:38px!important;align-items:center!important;padding:30px!important;
}
.bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-media,
.bwbe-flex-package-overview .bwbe-detail-media,
.bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-media{
  width:100%!important;max-width:none!important;min-height:0!important;aspect-ratio:4/3!important;margin:0!important;
  border:0!important;border-radius:18px!important;overflow:hidden!important;background:#ece9e3!important;
  box-shadow:0 12px 28px rgba(43,43,43,.08)!important;
}
.bwbe-detail-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.bwbe-detail-copy{max-width:640px!important;min-width:0!important}
.bwbe-detail-copy>.bwbe-eyebrow{margin:0 0 6px!important;color:var(--bwbe-lab-blue-dark)!important;font-size:.68rem!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.bwbe-detail-copy h2{
  max-width:18ch!important;margin:0 0 8px!important;font-family:"DM Serif Display",Georgia,serif!important;
  font-size:clamp(2rem,3.2vw,2.875rem)!important;font-weight:400!important;line-height:1.02!important;letter-spacing:-.025em!important;
}
.bwbe-detail-price{margin:4px 0 16px!important;font-size:1.375rem!important;font-weight:900!important;line-height:1.1!important;color:var(--bwbe-lab-char)!important}
.bwbe-detail-text{margin:0 0 17px!important;color:#5f5d57!important;line-height:1.58!important;max-width:58ch!important}
.bwbe-detail-copy>h3{margin:18px 0 7px!important;font-size:.9rem!important;font-weight:900!important}
.bwbe-detail-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px 18px!important;margin:0!important;padding:0!important;list-style:none!important;max-width:600px!important}
.bwbe-detail-list li{position:relative!important;padding-left:20px!important;color:#55534e!important;font-size:.875rem!important}
.bwbe-detail-list li::before{content:"✓"!important;position:absolute!important;left:0!important;top:0!important;color:var(--bwbe-lab-blue-dark)!important;font-weight:900!important}

/* Shared lower action zone */
.bwbe-standard-config,
.bwbe-flex-package-config{
  width:100%!important;padding:24px 30px 28px!important;border-top:1px solid var(--bwbe-lab-border)!important;
  background:linear-gradient(180deg,#fdfcf9,#fff)!important;
}
.bwbe-standard-config>.bwbe-option-heading{margin:0 0 4px!important;font-size:.95rem!important;font-weight:900!important}
.bwbe-inline-option-fieldset{min-width:0;margin:0;padding:0;border:0}
.bwbe-standard-config>.bwbe-inline-option-fieldset{width:min(100%,760px);margin:0 0 2px}
.bwbe-inline-option-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;margin:0!important}
.bwbe-inline-option-fieldset.is-service-tiers .bwbe-inline-option-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;max-width:none!important}
.bwbe-inline-option-card{
  position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
  min-height:92px!important;padding:15px 16px!important;border:1.5px solid #ded9cf!important;border-radius:16px!important;
  background:#fff!important;color:var(--bwbe-lab-char)!important;cursor:pointer!important;box-shadow:0 3px 10px rgba(43,43,43,.025)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.bwbe-inline-option-card>input[type="radio"]{
  position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;
  opacity:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;
}
.bwbe-inline-option-card:hover{transform:translateY(-2px)!important;border-color:#69b8ce!important;background:#f7fcfd!important;box-shadow:0 11px 24px rgba(43,43,43,.09)!important}
.bwbe-inline-option-card.is-selected,
.bwbe-inline-option-card:has(input:checked){border-color:#2487A8!important;background:#eaf7fb!important;box-shadow:0 0 0 2px rgba(65,170,205,.14),0 11px 24px rgba(43,43,43,.07)!important}
.bwbe-inline-option-card:has(input:focus-visible){outline:3px solid rgba(65,170,205,.38)!important;outline-offset:3px!important;border-color:#247E9E!important}
.bwbe-inline-option-copy{display:block!important;min-width:0!important}
.bwbe-inline-option-copy strong{display:block!important;font-size:.9rem!important;line-height:1.2!important}
.bwbe-inline-option-copy small{display:block!important;margin-top:3px!important;color:#77736b!important;font-size:.75rem!important;line-height:1.3!important}
.bwbe-inline-option-price{font-weight:900!important;color:#245b68!important;white-space:nowrap!important}
.bwbe-standard-config>.bwbe-option-select:not(.bwbe-visually-hidden-select){width:min(100%,520px)!important;min-height:50px!important;margin:8px 0 0!important;border:1.5px solid #d8d2c8!important;border-radius:13px!important;background:#fff!important}
.bwbe-visually-hidden-select{position:absolute!important;width:1px!important;height:1px!important;clip:rect(0 0 0 0)!important;overflow:hidden!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}

/* Flexible package icon selectors: native input, no visible radio bubble. */
.bwbe-flex-package-config .bwbe-package-choice-groups{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.bwbe-flex-package-config .bwbe-package-choice-groups>h3{grid-column:1/-1!important;margin:0!important;font-size:1.125rem!important}
.bwbe-flex-package-config .bwbe-package-choice-group{min-width:0!important;margin:0!important;padding:16px!important;border:1px solid #e2ddd4!important;border-radius:18px!important;background:#fbfaf7!important}
.bwbe-flex-package-config .bwbe-package-choice-group legend{padding:0!important;font-size:.875rem!important;font-weight:900!important}
.bwbe-package-choice-help{margin:3px 0 12px!important;color:#77736b!important;font-size:.75rem!important}
.bwbe-flex-package-config .bwbe-package-choice-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.bwbe-flex-package-config .bwbe-package-choice-option,
.bwbe-flex-package-config .bwbe-package-choice-option.has-icon{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;
  min-height:172px!important;padding:14px!important;border:1.5px solid #ddd8ce!important;border-radius:16px!important;background:#fff!important;
  box-shadow:0 3px 10px rgba(43,43,43,.02)!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.bwbe-flex-package-config .bwbe-package-choice-indicator{display:none!important}
.bwbe-flex-package-config .bwbe-package-choice-icon{width:92px!important;height:92px!important;margin:0 0 9px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.bwbe-flex-package-config .bwbe-package-choice-icon img{width:92px!important;height:92px!important;object-fit:contain!important;transition:transform .16s ease!important}
.bwbe-flex-package-config .bwbe-package-choice-option:hover{transform:translateY(-3px)!important;border-color:#69b8ce!important;background:#f7fcfd!important;box-shadow:0 13px 28px rgba(43,43,43,.09)!important}
.bwbe-flex-package-config .bwbe-package-choice-option.is-selected,
.bwbe-flex-package-config .bwbe-package-choice-option:has(input:checked){transform:translateY(-2px)!important;border-color:#2487A8!important;background:#eaf7fb!important;box-shadow:0 0 0 2px rgba(65,170,205,.16),0 13px 28px rgba(43,43,43,.08)!important}
.bwbe-flex-package-config .bwbe-package-choice-option:has(input:focus-visible){outline:3px solid rgba(65,170,205,.38)!important;outline-offset:3px!important}
.bwbe-flex-package-config .bwbe-package-choice-option:hover .bwbe-package-choice-icon img,
.bwbe-flex-package-config .bwbe-package-choice-option:has(input:checked) .bwbe-package-choice-icon img{transform:scale(1.045)!important}
.bwbe-flex-package-config .bwbe-package-choice-option-copy{align-items:center!important;text-align:center!important}
.bwbe-flex-package-config .bwbe-package-choice-option-copy strong{font-size:.875rem!important;line-height:1.15!important}
.bwbe-flex-package-config .bwbe-package-choice-option-copy small{font-size:.7rem!important;color:#77736b!important}

/* Quantity add-ons */
.bwbe-standard-config .bwbe-addon-section{width:100%!important}
.bwbe-standard-config .bwbe-addon-quantity-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;gap:12px!important}
.bwbe-standard-config .bwbe-addon-quantity-card{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;
  min-height:116px!important;padding:16px!important;border:1.5px solid #ddd8ce!important;border-radius:16px!important;background:#fff!important;
  box-shadow:0 3px 10px rgba(43,43,43,.025)!important;
}
.bwbe-standard-config .bwbe-addon-quantity-card.is-selected{border-color:#2487A8!important;background:#e9f7fb!important;box-shadow:0 0 0 2px rgba(65,170,205,.14),0 12px 24px rgba(43,43,43,.07)!important}
.bwbe-addon-qty-panel{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:7px!important}
.bwbe-addon-each-price{font-size:.82rem!important;color:#245b68!important;white-space:nowrap!important}
.bwbe-detail-qty-controls{display:inline-flex!important;align-items:center!important;gap:8px!important}
.bwbe-detail-qty-controls button{width:36px!important;height:36px!important;border:1px solid #d7d2c8!important;border-radius:10px!important;background:#fff!important;color:#2b2b2b!important;font-weight:900!important;cursor:pointer!important}
.bwbe-detail-qty-controls button:not(:disabled):hover{border-color:#69b8ce!important;background:#f3fbfd!important}
.bwbe-detail-qty-controls button:focus-visible{outline:3px solid rgba(65,170,205,.38)!important;outline-offset:2px!important}
.bwbe-detail-qty-controls button:disabled{opacity:.38!important;cursor:not-allowed!important}
.bwbe-addon-qty-value{min-width:24px!important;text-align:center!important;font-weight:900!important}
.bwbe-addon-limit{font-size:.68rem!important;color:#77736b!important;text-align:right!important}

/* Config action bars */
.bwbe-config-action-bar,
.bwbe-flex-action-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;margin-top:18px!important;padding-top:18px!important;border-top:1px solid #e8e3da!important}
.bwbe-config-action-copy{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important}
.bwbe-config-action-copy strong{font-size:.9rem!important}
.bwbe-config-action-copy span{color:#77736b!important;font-size:.75rem!important}
.bwbe-config-action-bar>.bwbe-primary,
.bwbe-flex-action-footer>.bwbe-primary{
  flex:0 0 auto!important;width:auto!important;min-width:220px!important;min-height:50px!important;margin:0!important;padding:0 20px!important;
  border:0!important;border-radius:13px!important;background:var(--bwbe-lab-char)!important;color:#fff!important;font-weight:850!important;
  box-shadow:0 9px 20px rgba(43,43,43,.15)!important;transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.bwbe-config-action-bar>.bwbe-primary::after,
.bwbe-flex-action-footer>.bwbe-primary::after{content:"→";margin-left:10px;transition:transform .16s ease}
.bwbe-config-action-bar>.bwbe-primary:not(:disabled):hover,
.bwbe-flex-action-footer>.bwbe-primary:not(:disabled):hover{transform:translateY(-2px)!important;background:#202020!important;box-shadow:0 13px 26px rgba(43,43,43,.18)!important}
.bwbe-config-action-bar>.bwbe-primary:not(:disabled):hover::after,
.bwbe-flex-action-footer>.bwbe-primary:not(:disabled):hover::after{transform:translateX(3px)}
.bwbe-config-action-bar>.bwbe-primary:focus-visible,
.bwbe-flex-action-footer>.bwbe-primary:focus-visible{outline:3px solid rgba(65,170,205,.38)!important;outline-offset:3px!important}
.bwbe-config-action-bar>.bwbe-primary[aria-busy="true"]::after,
.bwbe-flex-action-footer>.bwbe-primary[aria-busy="true"]::after{content:"";width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:bwbeSpin .7s linear infinite}
@keyframes bwbeSpin{to{transform:rotate(360deg)}}
.bwbe-standard-config.is-simple .bwbe-config-action-bar{margin-top:0!important;padding-top:0!important;border-top:0!important}

/* Configurable rental: options and quantity add-on are peers, matching v6. */
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config,
.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr)!important;column-gap:22px!important;align-items:start!important;
}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-option-heading,
.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-option-heading{grid-column:1;grid-row:1}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-inline-option-fieldset,
.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-inline-option-fieldset{grid-column:1;grid-row:2;width:100%!important}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-addon-section,
.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-addon-section{grid-column:2;grid-row:1/3;margin:0!important;padding:0!important;border:0!important}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-detail-status,
.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-detail-status{grid-column:1/-1}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-config-action-bar,
.bwbe-detail-layout.is-slug-plinko .bwbe-config-action-bar,
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-package-section,
.bwbe-detail-layout.is-slug-plinko .bwbe-package-section{grid-column:1/-1}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-inline-option-grid,
.bwbe-detail-layout.is-slug-plinko .bwbe-inline-option-grid{grid-template-columns:1fr!important}
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-addon-quantity-grid,
.bwbe-detail-layout.is-slug-plinko .bwbe-addon-quantity-grid{grid-template-columns:1fr!important}

/* Package cross-sells */
.bwbe-standard-config .bwbe-package-section{margin-top:22px!important;padding-top:20px!important;border-top:1px solid #e8e3da!important}
.bwbe-standard-config .bwbe-package-link-card{min-height:94px!important;border:1.5px solid #ded9cf!important;border-radius:16px!important;background:#fff!important;padding:15px 16px!important}
.bwbe-standard-config .bwbe-package-link-card:hover{transform:translateY(-2px)!important;border-color:#69b8ce!important;background:#f8fcfd!important;box-shadow:0 11px 24px rgba(43,43,43,.08)!important}

/* Cart feedback and loading */
.bwbe-cart-feedback{position:fixed;right:22px;bottom:92px;z-index:100000;max-width:min(420px,calc(100vw - 32px));padding:12px 15px;border-radius:13px;background:#fff;border:1px solid #d9e8e4;box-shadow:0 14px 34px rgba(43,43,43,.16);font-size:.86rem;font-weight:750}
.bwbe-cart-feedback.is-success{border-left:4px solid var(--bwbe-lab-green)}
.bwbe-cart-feedback.is-error{border-left:4px solid #b94242;background:#fff8f8}
.bwbe.is-cart-refreshing [data-bwbe-pricing]{opacity:.58}
.bwbe-cart-description{display:block;margin-top:3px;max-width:52ch;color:#77736b;font-size:.75rem;line-height:1.35}

/* Global keyboard focus and native disabled states. */
.bwbe button:focus-visible,.bwbe a:focus-visible,.bwbe select:focus-visible,.bwbe input:focus-visible,.bwbe textarea:focus-visible{outline:3px solid rgba(65,170,205,.42)!important;outline-offset:3px!important}
.bwbe button:disabled{cursor:not-allowed!important;opacity:.55!important}

@media(max-width:980px){
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview,.bwbe-flex-package-overview{grid-template-columns:minmax(260px,38%) minmax(0,1fr)!important;gap:26px!important;padding:24px!important}
  .bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config,.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config{grid-template-columns:1fr!important}
  .bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-addon-section,.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-addon-section{grid-column:1;grid-row:auto;margin-top:18px!important;padding-top:18px!important;border-top:1px solid #e8e3da!important}
  .bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-option-heading,.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-option-heading,
  .bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config>.bwbe-inline-option-fieldset,.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config>.bwbe-inline-option-fieldset{grid-column:1;grid-row:auto}
}
@media(max-width:760px){
  .bwbe-detail-card{border-radius:18px!important}
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview,.bwbe-flex-package-overview{grid-template-columns:1fr!important;gap:0!important;padding:0!important}
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-media,.bwbe-flex-package-overview .bwbe-detail-media,.bwbe-detail-layout.is-flexible-package .bwbe-flex-package-overview .bwbe-detail-media{border-radius:0!important;box-shadow:none!important}
  .bwbe-detail-card.is-standard-detail .bwbe-standard-overview .bwbe-detail-copy,.bwbe-flex-package-overview .bwbe-detail-copy{padding:21px 18px 22px!important}
  .bwbe-detail-copy h2{font-size:clamp(1.85rem,9vw,2.5rem)!important}
  .bwbe-detail-list{grid-template-columns:1fr!important}
  .bwbe-standard-config,.bwbe-flex-package-config{padding:18px!important}
  .bwbe-inline-option-grid,.bwbe-inline-option-fieldset.is-service-tiers .bwbe-inline-option-grid{grid-template-columns:1fr!important}
  .bwbe-flex-package-config .bwbe-package-choice-groups{grid-template-columns:1fr!important}
  .bwbe-flex-package-config .bwbe-package-choice-groups>*{grid-column:1!important}
  .bwbe-flex-package-config .bwbe-package-choice-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .bwbe-flex-package-config .bwbe-package-choice-option,.bwbe-flex-package-config .bwbe-package-choice-option.has-icon{min-height:150px!important;padding:11px!important}
  .bwbe-flex-package-config .bwbe-package-choice-icon,.bwbe-flex-package-config .bwbe-package-choice-icon img{width:78px!important;height:78px!important}
  .bwbe-config-action-bar,.bwbe-flex-action-footer{align-items:stretch!important;flex-direction:column!important;gap:12px!important}
  .bwbe-config-action-bar>.bwbe-primary,.bwbe-flex-action-footer>.bwbe-primary{width:100%!important;min-width:0!important}
  .bwbe-standard-config .bwbe-addon-quantity-card{grid-template-columns:1fr!important}
  .bwbe-addon-qty-panel{align-items:flex-start!important}.bwbe-addon-limit{text-align:left!important}
  .bwbe-cart-feedback{left:16px;right:16px;bottom:84px;max-width:none}
}
@media(max-width:420px){
  .bwbe-flex-package-config .bwbe-package-choice-options{grid-template-columns:1fr!important}
  .bwbe-flex-package-config .bwbe-package-choice-option,.bwbe-flex-package-config .bwbe-package-choice-option.has-icon{min-height:132px!important}
}
@media(prefers-reduced-motion:reduce){
  .bwbe *, .bwbe *::before, .bwbe *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
.bwbe.is-availability-loading [data-bwbe-store-products]{opacity:.62;transition:opacity .16s ease}
.bwbe [aria-busy="true"]{cursor:progress}

/* ========================================================================== 
   v0.11.1 — Catalog Design Lab v6 visual parity patch
   Corrects the three acceptance-test visual failures without changing pricing,
   availability, cart, or inventory behavior.
   ========================================================================== */
.bwbe-standard-config>.bwbe-option-heading,
.bwbe-config-column>.bwbe-option-heading,
.bwbe-addon-section h3{
  margin:0 0 4px!important;
  font-size:.95rem!important;
  font-weight:900!important;
}
.bwbe-option-help{
  margin:0 0 12px!important;
  color:#77736b!important;
  font-size:.75rem!important;
  line-height:1.4!important;
}

/* The approved v6 action rail is a full-bleed warm strip, not a floating
   button row. This also fixes Service with Options visual parity. */
.bwbe-standard-config.is-configurable-rental>.bwbe-config-action-bar,
.bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar,
.bwbe-standard-config.is-service-options>.bwbe-config-action-bar{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin:24px -30px 0!important;
  padding:16px 30px!important;
  border-top:1px solid #e2ddd4!important;
  background:#f5f2eb!important;
}
.bwbe-config-action-copy .bwbe-action-status{
  margin:0!important;
  padding:0!important;
  width:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  color:#596b69!important;
  font-size:.75rem!important;
  font-weight:700!important;
  line-height:1.35!important;
}
.bwbe-config-action-copy .bwbe-action-status.is-limited{color:#7a6300!important}

/* Configurable rental — exact two-column v6 composition. */
.bwbe-standard-config.is-configurable-rental{padding-bottom:28px!important}
.bwbe-config-columns{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:32px!important;
  align-items:start!important;
}
.bwbe-config-column{min-width:0!important}
.bwbe-config-column .bwbe-inline-option-fieldset{width:100%!important;margin:0!important}
.bwbe-config-column .bwbe-inline-option-grid{grid-template-columns:1fr!important}
.bwbe-config-column .bwbe-addon-section{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.bwbe-config-column .bwbe-related-intro{margin:0 0 12px!important}
.bwbe-config-column .bwbe-addon-quantity-grid{grid-template-columns:1fr!important}
.bwbe-config-addon-card{
  grid-template-areas:none!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  align-items:center!important;
  gap:4px 14px!important;
  height:196px!important;
  min-height:196px!important;
  padding:18px!important;
  cursor:default!important;
}
.bwbe-config-addon-card:hover{transform:none!important}
.bwbe-config-addon-card>.bwbe-addon-symbol{
  grid-column:1!important;
  grid-row:1/3!important;
  width:38px!important;
  height:38px!important;
  margin:0!important;
  border-radius:12px!important;
  background:#eef8fb!important;
  color:#247e9e!important;
  display:grid!important;
  place-items:center!important;
  font-size:20px!important;
  font-weight:900!important;
}
.bwbe-config-addon-card.is-selected>.bwbe-addon-symbol{background:#41aacd!important;color:#fff!important}
.bwbe-config-addon-card>.bwbe-related-card-copy{
  grid-area:auto!important;
  grid-column:2!important;
  grid-row:1/3!important;
  align-self:center!important;
}
.bwbe-config-addon-card>.bwbe-addon-qty-panel{
  grid-column:3!important;
  grid-row:1/3!important;
  align-self:center!important;
  align-items:center!important;
  justify-self:end!important;
  gap:7px!important;
}
.bwbe-config-addon-card .bwbe-addon-each-price{order:2!important;font-size:.7rem!important;color:#77736b!important}
.bwbe-config-addon-card .bwbe-detail-qty-controls{order:1!important}
.bwbe-config-addon-card .bwbe-addon-limit{order:3!important;max-width:120px!important;text-align:center!important;line-height:1.2!important}

/* Rental with add-ons — v6 icon-led purchase card + live total panel. */
.bwbe-standard-config.is-addon-rental{padding-bottom:28px!important}
.bwbe-standard-config.is-addon-rental>.bwbe-addon-zone{
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.bwbe-addon-zone-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
}
.bwbe-addon-zone-head-copy{min-width:0!important}
.bwbe-optional-label{
  flex:0 0 auto!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  background:#f1eee7!important;
  color:#6f6f6a!important;
  font-size:.68rem!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.bwbe-addon-purchase-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(230px,.65fr)!important;
  gap:14px!important;
  align-items:stretch!important;
}
.bwbe-addon-purchase-layout>.bwbe-addon-quantity-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
}
.bwbe-visual-addon-card{
  grid-template-areas:none!important;
  grid-template-columns:104px minmax(0,1fr) auto!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:18px!important;
  min-height:132px!important;
  padding:14px!important;
  border:1.5px solid #ded9cf!important;
  border-radius:18px!important;
  background:#fff!important;
  cursor:default!important;
  box-shadow:0 4px 12px rgba(43,43,43,.035)!important;
}
.bwbe-visual-addon-card:hover{transform:none!important;border-color:#ded9cf!important;background:#fff!important;box-shadow:0 4px 12px rgba(43,43,43,.035)!important}
.bwbe-visual-addon-card.is-selected{
  border-color:#2487a8!important;
  background:#eaf7fb!important;
  box-shadow:0 0 0 2px rgba(65,170,205,.14),0 12px 26px rgba(43,43,43,.07)!important;
}
.bwbe-visual-addon-image{
  grid-column:1!important;
  width:104px!important;
  height:104px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:#f6fbfc!important;
}
.bwbe-visual-addon-image img{width:88px!important;height:88px!important;object-fit:contain!important}
.bwbe-visual-addon-card>.bwbe-related-card-copy{
  grid-area:auto!important;
  grid-column:2!important;
  min-width:0!important;
}
.bwbe-addon-kicker{
  display:block!important;
  margin-bottom:5px!important;
  color:#247e9e!important;
  font-size:.625rem!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.bwbe-visual-addon-card>.bwbe-related-card-copy strong{font-size:.95rem!important}
.bwbe-visual-addon-card>.bwbe-related-card-copy small{margin-top:5px!important;font-size:.75rem!important;line-height:1.45!important}
.bwbe-visual-addon-card>.bwbe-addon-qty-panel{
  grid-column:3!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:10px!important;
  text-align:right!important;
}
.bwbe-visual-addon-card .bwbe-addon-each-price{font-size:1rem!important;color:#2b2b2b!important}
.bwbe-visual-addon-card .bwbe-addon-limit{max-width:150px!important;line-height:1.25!important}
.bwbe-addon-total-panel{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:20px!important;
  border:1px solid #e2ddd4!important;
  border-radius:16px!important;
  background:#faf9f6!important;
}
.bwbe-addon-total-label{color:#77736b!important;font-size:.75rem!important;font-weight:800!important}
.bwbe-addon-total-amount{margin:2px 0 3px!important;font-size:2rem!important;font-weight:950!important;line-height:1.1!important}
.bwbe-addon-total-delta{min-height:18px!important;color:#247e9e!important;font-size:.75rem!important;line-height:1.35!important}
.bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar{margin-top:16px!important}

/* Service with options — v6 tier geometry and typographic hierarchy. */
.bwbe-detail-layout.is-slug-event-staffing .bwbe-standard-config.is-service-options>.bwbe-inline-option-fieldset{width:100%!important;max-width:none!important}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-fieldset.is-service-tiers .bwbe-inline-option-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:10px!important;
}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-card{
  display:block!important;
  min-height:102px!important;
  padding:14px!important;
  border-radius:14px!important;
}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-copy strong{font-size:.95rem!important}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-copy small{margin-top:3px!important;font-size:.7rem!important}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-price{
  display:block!important;
  margin-top:8px!important;
  color:#245b68!important;
  font-size:.95rem!important;
  font-weight:900!important;
}
.bwbe-standard-config.is-service-options>.bwbe-config-action-bar{margin-top:22px!important}

@media(max-width:980px){
  .bwbe-config-columns{gap:18px!important}
  .bwbe-addon-purchase-layout{grid-template-columns:1fr!important}
  .bwbe-addon-total-panel{display:block!important}
}
@media(max-width:760px){
  .bwbe-config-columns{grid-template-columns:1fr!important}
  .bwbe-config-addon-column{margin-top:18px!important;padding-top:18px!important;border-top:1px solid #e8e3da!important}
  .bwbe-standard-config.is-configurable-rental>.bwbe-config-action-bar,
  .bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar,
  .bwbe-standard-config.is-service-options>.bwbe-config-action-bar{display:block!important;margin:20px -18px 0!important;padding:16px 18px!important}
  .bwbe-standard-config.is-configurable-rental>.bwbe-config-action-bar>.bwbe-primary,
  .bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar>.bwbe-primary,
  .bwbe-standard-config.is-service-options>.bwbe-config-action-bar>.bwbe-primary{width:100%!important;min-width:0!important;margin-top:12px!important}
  .bwbe-config-addon-card{height:auto!important;min-height:112px!important}
  .bwbe-visual-addon-card{
    grid-template-columns:80px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:12px!important;
  }
  .bwbe-visual-addon-image{width:80px!important;height:80px!important}
  .bwbe-visual-addon-image img{width:68px!important;height:68px!important}
  .bwbe-visual-addon-card>.bwbe-related-card-copy{grid-column:2!important;grid-row:1!important}
  .bwbe-visual-addon-card>.bwbe-addon-qty-panel{
    grid-column:1/3!important;
    grid-row:2!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding-top:11px!important;
    border-top:1px solid #e8e3da!important;
    text-align:left!important;
  }
  .bwbe-visual-addon-card .bwbe-addon-limit{display:none!important}
  .bwbe-addon-zone-head{align-items:center!important}
  .bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-fieldset.is-service-tiers .bwbe-inline-option-grid{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  .bwbe-config-addon-card{
    grid-template-columns:38px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:10px 12px!important;
  }
  .bwbe-config-addon-card>.bwbe-addon-symbol{grid-column:1!important;grid-row:1!important}
  .bwbe-config-addon-card>.bwbe-related-card-copy{grid-column:2!important;grid-row:1!important}
  .bwbe-config-addon-card>.bwbe-addon-qty-panel{
    grid-column:1/3!important;
    grid-row:2!important;
    align-items:flex-start!important;
    justify-self:start!important;
  }
  .bwbe-config-addon-card .bwbe-addon-limit{text-align:left!important;max-width:none!important}
}

/* ========================================================================== 
   v0.11.2 — Exact Design Lab geometry + calendar add-flow correction
   ========================================================================== */
@media(min-width:761px){
  .bwbe-detail-card{
    width:min(960px,calc(100% - 28px))!important;
    max-width:min(960px,calc(100vw - 28px))!important;
  }
}

/* Match the Design Lab price row instead of baking the merchandising note into
   the bold price itself. */
.bwbe-detail-price-row{
  display:flex!important;
  align-items:baseline!important;
  gap:10px!important;
  margin:4px 0 16px!important;
  min-width:0!important;
}
.bwbe-detail-price-row .bwbe-detail-price{margin:0!important}
.bwbe-detail-price-note{
  color:#77736b!important;
  font-size:.75rem!important;
  line-height:1.25!important;
  white-space:normal!important;
}

/* The old slug-specific v0.11.0 grid wrapped the entire new configurable
   component and compressed it into the left half of the action zone. The v6
   component itself owns the two-column geometry. */
.bwbe-detail-layout.is-slug-prize-wheel .bwbe-standard-config.is-configurable-rental,
.bwbe-detail-layout.is-slug-plinko .bwbe-standard-config.is-configurable-rental{
  display:block!important;
  grid-template-columns:none!important;
  column-gap:0!important;
  align-items:initial!important;
  padding-bottom:0!important;
}
.bwbe-standard-config.is-configurable-rental>.bwbe-config-columns{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:32px!important;
  width:100%!important;
  min-width:0!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-config-column{
  width:auto!important;
  min-width:0!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-inline-option-card{
  min-height:92px!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-config-addon-card{
  width:100%!important;
  min-width:0!important;
  height:196px!important;
  min-height:196px!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  align-items:center!important;
  gap:4px 14px!important;
  padding:18px!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-config-addon-card>.bwbe-related-card-copy{
  min-width:0!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-config-addon-card>.bwbe-related-card-copy strong{
  font-size:.875rem!important;
  line-height:1.2!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-config-addon-card>.bwbe-related-card-copy small{
  margin-top:3px!important;
  font-size:.75rem!important;
  line-height:1.35!important;
  color:#77736b!important;
}

/* Joined quantity stepper from the approved prototype. The registry still
   determines the actual maximum; the limit copy is intentionally not exposed
   visually because the Design Lab communicates the limit through disabled
   controls, not a persistent paragraph. */
.bwbe-standard-config.is-configurable-rental .bwbe-detail-qty-controls,
.bwbe-standard-config.is-addon-rental .bwbe-detail-qty-controls{
  display:grid!important;
  grid-template-columns:38px 42px 38px!important;
  align-items:center!important;
  gap:0!important;
  border:1px solid #d8d3c9!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-detail-qty-controls button,
.bwbe-standard-config.is-addon-rental .bwbe-detail-qty-controls button{
  width:38px!important;
  height:40px!important;
  border:0!important;
  border-radius:0!important;
  background:#eef8fb!important;
  color:#247E9E!important;
  font-size:20px!important;
  font-weight:900!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-detail-qty-controls button:not(:disabled):hover,
.bwbe-standard-config.is-addon-rental .bwbe-detail-qty-controls button:not(:disabled):hover{
  background:#41AACD!important;
  color:#fff!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-addon-qty-value,
.bwbe-standard-config.is-addon-rental .bwbe-addon-qty-value{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  min-width:42px!important;
  height:40px!important;
  border-left:1px solid #e2ddd4!important;
  border-right:1px solid #e2ddd4!important;
  font-size:.875rem!important;
  font-weight:900!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-addon-limit,
.bwbe-standard-config.is-addon-rental .bwbe-addon-limit{display:none!important}
.bwbe-standard-config.is-configurable-rental .bwbe-config-addon-card .bwbe-addon-qty-panel{
  gap:0!important;
}
.bwbe-standard-config.is-configurable-rental .bwbe-config-addon-card .bwbe-addon-each-price{
  order:2!important;
  margin-top:5px!important;
  align-self:center!important;
  color:#77736b!important;
  font-size:.68rem!important;
  font-weight:800!important;
}

/* Add-on rental: exact card/total/action spacing from v6. */
.bwbe-standard-config.is-addon-rental{padding-bottom:0!important}
.bwbe-standard-config.is-addon-rental>.bwbe-addon-zone{padding:0!important}
.bwbe-standard-config.is-addon-rental .bwbe-addon-purchase-layout{
  grid-template-columns:minmax(0,1.55fr) minmax(230px,.65fr)!important;
  gap:14px!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card{
  min-height:116px!important;
  grid-template-columns:104px minmax(0,1fr) auto!important;
  gap:18px!important;
  padding:14px!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card>.bwbe-related-card-copy strong{
  font-size:.9375rem!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card>.bwbe-related-card-copy small{
  font-size:.75rem!important;
  line-height:1.45!important;
  color:#6f6f6a!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card>.bwbe-addon-qty-panel{
  gap:10px!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card .bwbe-addon-each-price{
  font-size:1rem!important;
  color:#2b2b2b!important;
  font-weight:900!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-addon-total-panel{
  padding:20px!important;
}
.bwbe-standard-config.is-addon-rental .bwbe-addon-total-amount{
  font-size:2rem!important;
}
.bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar{
  margin-top:16px!important;
}

/* All three approved archetypes use the full-bleed warm action rail. */
.bwbe-standard-config.is-configurable-rental>.bwbe-config-action-bar,
.bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar,
.bwbe-standard-config.is-service-options>.bwbe-config-action-bar{
  margin-left:-30px!important;
  margin-right:-30px!important;
  padding:16px 30px!important;
  border-top:1px solid #e2ddd4!important;
  background:#f5f2eb!important;
}
.bwbe-config-selection-summary{color:#77736b!important}

/* Service with options: same tier language as the lab. Real approved service
   photography remains in the overview per the implementation brief. */
.bwbe-standard-config.is-service-options{padding-bottom:0!important}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-standard-config.is-service-options>.bwbe-inline-option-fieldset{
  width:100%!important;
  max-width:none!important;
}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-fieldset.is-service-tiers .bwbe-inline-option-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:10px!important;
}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-card{
  display:block!important;
  min-height:102px!important;
  padding:14px!important;
  border-radius:14px!important;
}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-copy strong{font-size:.875rem!important}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-copy small{font-size:.6875rem!important;margin-top:3px!important}
.bwbe-detail-layout.is-slug-event-staffing .bwbe-inline-option-price{
  display:block!important;
  margin-top:8px!important;
  font-size:.9375rem!important;
  color:#245b68!important;
  font-weight:900!important;
}

@media(max-width:980px){
  .bwbe-standard-config.is-configurable-rental>.bwbe-config-columns{gap:18px!important}
  .bwbe-standard-config.is-addon-rental .bwbe-addon-purchase-layout{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .bwbe-detail-price-row{flex-wrap:wrap!important;gap:5px 10px!important}
  .bwbe-standard-config.is-configurable-rental>.bwbe-config-columns{grid-template-columns:1fr!important}
  .bwbe-standard-config.is-configurable-rental .bwbe-config-addon-column{margin-top:18px!important;padding-top:18px!important;border-top:1px solid #e8e3da!important}
  .bwbe-standard-config.is-configurable-rental>.bwbe-config-action-bar,
  .bwbe-standard-config.is-addon-rental>.bwbe-config-action-bar,
  .bwbe-standard-config.is-service-options>.bwbe-config-action-bar{
    margin-left:-18px!important;
    margin-right:-18px!important;
    padding:16px 18px!important;
  }
  .bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card{
    grid-template-columns:80px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:12px!important;
  }
  .bwbe-standard-config.is-addon-rental .bwbe-visual-addon-card>.bwbe-addon-qty-panel{
    grid-column:1/3!important;
    grid-row:2!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding-top:11px!important;
    border-top:1px solid #e8e3da!important;
  }
}


/* v0.11.3 — catalog utility-control polish
   Quick planning actions should read as intentional controls, not raw links.
   Contextual Change remains quieter so it does not compete with catalog CTAs. */
.bwbe-browse-quick-actions{
  gap:10px!important;
  margin-top:18px!important;
}
.bwbe-browse-quick-actions .bwbe-quick-tool-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 14px!important;
  border:1px solid #c9dfe4!important;
  border-radius:11px!important;
  background:#f4fafb!important;
  color:#245b68!important;
  text-decoration:none!important;
  text-underline-offset:0!important;
  font-size:.86rem!important;
  line-height:1.1!important;
  font-weight:850!important;
  box-shadow:0 1px 0 rgba(43,43,43,.02)!important;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.bwbe-browse-quick-actions .bwbe-quick-tool-button:hover{
  background:#eaf7fa!important;
  border-color:#8fc9d8!important;
  box-shadow:0 5px 14px rgba(36,91,104,.08)!important;
  transform:translateY(-1px)!important;
}
.bwbe-browse-quick-actions .bwbe-quick-tool-button:active{
  transform:translateY(0)!important;
  box-shadow:none!important;
}
.bwbe-browse-quick-actions .bwbe-quick-tool-button:focus-visible,
.bwbe-event-context .bwbe-event-change-button:focus-visible{
  outline:3px solid rgba(65,170,205,.24)!important;
  outline-offset:2px!important;
}
.bwbe-event-context .bwbe-event-change-button{
  min-height:34px!important;
  padding:6px 10px!important;
  border:1px solid #d7d4cb!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#245b68!important;
  text-decoration:none!important;
  font-size:.78rem!important;
  line-height:1!important;
  font-weight:800!important;
  transition:background-color .16s ease,border-color .16s ease!important;
}
.bwbe-event-context .bwbe-event-change-button:hover{
  background:#f4fafb!important;
  border-color:#b7d8e0!important;
}
@media(max-width:520px){
  .bwbe-browse-quick-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  .bwbe-browse-quick-actions .bwbe-quick-tool-button{
    width:100%!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .bwbe-browse-quick-actions .bwbe-quick-tool-button,
  .bwbe-event-context .bwbe-event-change-button{
    transition:none!important;
  }
  .bwbe-browse-quick-actions .bwbe-quick-tool-button:hover{
    transform:none!important;
  }
}


/* v0.11.4 — package recommendation budget-slider controls. */
.bwbe-budget-range-field{
  min-width:0;
}
.bwbe-budget-range-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.bwbe-budget-range-heading>span{font-weight:850}
.bwbe-budget-slider-shell{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 42px;
  gap:10px;
  align-items:center;
  margin-top:7px;
}
.bwbe-budget-slider-track{
  display:flex;
  align-items:center;
  min-width:0;
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]{
  --bwbe-budget-progress:28.57%;
  width:100%;
  height:30px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  accent-color:#41aacd;
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-webkit-slider-runnable-track{
  height:8px;
  border-radius:999px;
  background:linear-gradient(to right,#41aacd 0 var(--bwbe-budget-progress),#e4e1d9 var(--bwbe-budget-progress) 100%);
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-moz-range-track{
  height:8px;
  border:0;
  border-radius:999px;
  background:#e4e1d9;
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-moz-range-progress{
  height:8px;
  border-radius:999px;
  background:#41aacd;
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-webkit-slider-thumb{
  width:24px;
  height:24px;
  margin-top:-8px;
  border:4px solid #fff;
  border-radius:50%;
  background:#41aacd;
  box-shadow:0 0 0 1px #2690ae,0 4px 10px rgba(43,43,43,.18);
  appearance:none;
  -webkit-appearance:none;
  transition:transform .14s ease,box-shadow .14s ease;
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-moz-range-thumb{
  width:18px;
  height:18px;
  border:4px solid #fff;
  border-radius:50%;
  background:#41aacd;
  box-shadow:0 0 0 1px #2690ae,0 4px 10px rgba(43,43,43,.18);
  transition:transform .14s ease,box-shadow .14s ease;
}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]:hover::-webkit-slider-thumb{transform:scale(1.06)}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]:hover::-moz-range-thumb{transform:scale(1.06)}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]:focus-visible{outline:none}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(65,170,205,.2),0 0 0 1px #2690ae,0 4px 10px rgba(43,43,43,.18)}
.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px rgba(65,170,205,.2),0 0 0 1px #2690ae,0 4px 10px rgba(43,43,43,.18)}
.bwbe-budget-step{
  appearance:none;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid #d7d3ca;
  border-radius:12px;
  background:#fff;
  color:#2b2b2b;
  font-size:1.25rem;
  line-height:1;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 3px 9px rgba(43,43,43,.04);
  transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease,box-shadow .14s ease;
}
.bwbe-budget-step:hover:not(:disabled){
  transform:translateY(-1px);
  border-color:#9fcbd7;
  background:#edf8fb;
  color:#246c80;
  box-shadow:0 6px 14px rgba(65,170,205,.12);
}
.bwbe-budget-step:active:not(:disabled){transform:translateY(0) scale(.97)}
.bwbe-budget-step:focus-visible{outline:3px solid rgba(65,170,205,.22);outline-offset:2px}
.bwbe-budget-step:disabled{opacity:.36;cursor:not-allowed;box-shadow:none}
.bwbe-budget-scale{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:0 52px;
  color:#817e77;
  font-size:.68rem;
  font-weight:700;
}
@media(max-width:760px){
  .bwbe-budget-slider-shell{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}
  .bwbe-budget-step{width:40px;height:40px}
  .bwbe-budget-scale{padding:0 48px}
}
@media(prefers-reduced-motion:reduce){
  .bwbe-budget-step,.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-webkit-slider-thumb,.bwbe-budget-controls .bwbe-budget-slider-track input[type="range"]::-moz-range-thumb{transition:none}
}

/* v0.11.5 — full-card package recommendation interaction. */
.bwbe-budget-result-card{
  display:block;
  color:#2b2b2b;
  text-decoration:none;
  cursor:pointer;
  transform:translateY(0);
  box-shadow:0 2px 8px rgba(43,43,43,.03);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.bwbe-budget-result-card img{
  transition:transform .2s ease,filter .2s ease;
}
.bwbe-budget-result-card:hover{
  transform:translateY(-3px);
  border-color:#9fcbd7;
  background:#fff;
  box-shadow:0 12px 28px rgba(43,43,43,.10);
}
.bwbe-budget-result-card:hover img{
  transform:scale(1.018);
  filter:saturate(1.03);
}
.bwbe-budget-result-card:active{
  transform:translateY(-1px) scale(.995);
}
.bwbe-budget-result-card:focus-visible{
  outline:3px solid rgba(65,170,205,.30);
  outline-offset:3px;
  border-color:#41aacd;
  box-shadow:0 10px 24px rgba(65,170,205,.14);
}
.bwbe-budget-result-card .bwbe-discovery-cta{
  pointer-events:none;
  transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.bwbe-budget-result-card:hover .bwbe-discovery-cta{
  transform:translateX(2px);
}
.bwbe-budget-result-card:not(:first-child):hover .bwbe-discovery-cta{
  border-color:#2b2b2b;
  background:#2b2b2b;
  color:#fff;
}
.bwbe-budget-result-card h3{
  transition:color .16s ease;
}
.bwbe-budget-result-card:hover h3{color:#176f89}
@media(max-width:760px){
  .bwbe-budget-result-card{display:grid;grid-template-columns:120px minmax(0,1fr)}
  .bwbe-budget-custom-result{display:block}
  .bwbe-budget-result-card:hover{transform:none}
  .bwbe-budget-result-card:hover img{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .bwbe-budget-result-card,.bwbe-budget-result-card img,.bwbe-budget-result-card .bwbe-discovery-cta,.bwbe-budget-result-card h3{transition:none!important}
  .bwbe-budget-result-card:hover,.bwbe-budget-result-card:active,.bwbe-budget-result-card:hover img,.bwbe-budget-result-card:hover .bwbe-discovery-cta{transform:none!important}
}


/* v0.12.0 Site Visuals: real before/after photography support. */
.bwbe-compare-before{background-position:center;background-size:cover;background-repeat:no-repeat}


/* v0.12.3 — final site photography integrations */
.bwbe-about-owner-visual{
  margin:32px 0 0;
  overflow:hidden;
  aspect-ratio:4/3;
  border:1px solid #e9e5dc;
  border-radius:22px;
  background:#f3efe7;
  box-shadow:0 14px 34px rgba(43,43,43,.08);
}
.bwbe-about-owner-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.bwbe-planner-screen[data-bwbe-planner-screen="intro"].is-active.has-story-visual{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.86fr);
  column-gap:42px;
  align-items:center;
  max-width:1040px;
}
.bwbe-planner-screen[data-bwbe-planner-screen="intro"].has-story-visual>:not(.bwbe-planner-story-visual){
  grid-column:1;
}
.bwbe-planner-story-visual{
  grid-column:2;
  grid-row:1 / span 5;
  align-self:center;
  margin:0;
  overflow:hidden;
  aspect-ratio:4/3;
  border:1px solid #e9e5dc;
  border-radius:22px;
  background:#f3efe7;
  box-shadow:0 16px 38px rgba(43,43,43,.09);
}
.bwbe-planner-story-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width:860px){
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"].is-active.has-story-visual{
    display:block;
    max-width:760px;
  }
  .bwbe-planner-story-visual{margin-top:28px;}
}
@media(max-width:760px){
  .bwbe-about-owner-visual,.bwbe-planner-story-visual{border-radius:16px;box-shadow:0 10px 26px rgba(43,43,43,.07);}
  .bwbe-about-owner-visual{margin-top:26px;}
  .bwbe-planner-story-visual{margin-top:24px;}
}
@media(prefers-reduced-motion:reduce){
  .bwbe-about-owner-visual,.bwbe-planner-story-visual{scroll-behavior:auto;}
}

/* v0.12.4 — small homepage / planning / About interaction cleanup. */

/* The app shell intentionally moves focus to the new page heading after
   progressive navigation. Keep that accessibility behavior, but do not draw a
   large interaction outline around a non-interactive heading. */
#bw-main h1[tabindex="-1"]:focus,
#bw-main h2[tabindex="-1"]:focus{
  outline:none!important;
  box-shadow:none!important;
}

/* Homepage discovery tabs: retain the active state while making every tab
   respond like the rest of the site's interactive controls. */
.bwbe-discovery-tabs button{
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease;
}
@media(hover:hover) and (pointer:fine){
  .bwbe-discovery-tabs button:hover{
    transform:translateY(-1px);
    border-color:#9fcbd7;
    background:#eef8fb;
    color:#245b68;
    box-shadow:0 5px 14px rgba(36,91,104,.08);
  }
  .bwbe-discovery-tabs button[aria-selected="true"]:hover{
    border-color:#2b2b2b;
    background:#2b2b2b;
    color:#fff;
    box-shadow:0 7px 16px rgba(43,43,43,.14);
  }
}
.bwbe-discovery-tabs button:active{transform:translateY(0) scale(.98)}
.bwbe-discovery-tabs button:focus-visible{
  outline:3px solid rgba(65,170,205,.26)!important;
  outline-offset:2px!important;
}

/* Recommendation cards own the selected/hover treatment. Their CTA should be
   visually neutral until the visitor interacts with the card. */
.bwbe-budget-result-card .bwbe-discovery-cta{
  border:1px solid #e3dfd6!important;
  background:#f1f0eb!important;
  color:#2b2b2b!important;
  box-shadow:none!important;
}
@media(hover:hover) and (pointer:fine){
  .bwbe-budget-result-card:hover .bwbe-discovery-cta{
    border-color:#2b2b2b!important;
    background:#2b2b2b!important;
    color:#fff!important;
    transform:translateX(2px);
  }
}
.bwbe-budget-result-card:focus-visible .bwbe-discovery-cta{
  border-color:#2b2b2b!important;
  background:#2b2b2b!important;
  color:#fff!important;
}

/* Keep rendered recommendation cards in place while a new budget request is
   running. This prevents the entire control area from jumping upward for the
   brief loading state. */
.bwbe-discovery-results{position:relative}
.bwbe-discovery-results.is-updating>.bwbe-budget-result-card{
  opacity:.72;
  transition:opacity .14s ease;
}
.bwbe-budget-refresh-status{
  position:absolute;
  z-index:6;
  top:10px;
  left:50%;
  transform:translateX(-50%);
  min-height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 11px;
  border:1px solid #c9dfe4;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:#245b68;
  font-size:.76rem;
  font-weight:850;
  box-shadow:0 5px 16px rgba(43,43,43,.08);
  pointer-events:none;
  white-space:nowrap;
}

/* Plan My Event intro actions: one clear vertical stack with the same subtle
   hover / press / focus behavior used throughout the catalog. */
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px!important;
  width:min(100%,360px)!important;
  max-width:360px!important;
  margin-top:26px!important;
}
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary,
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary{
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  margin:0!important;
  border:1px solid transparent;
  border-radius:11px;
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary{
  border-color:#e3dfd6;
}
@media(hover:hover) and (pointer:fine){
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary:hover{
    transform:translateY(-1px);
    background:#1f1f1f;
    box-shadow:0 7px 16px rgba(43,43,43,.14);
  }
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary:hover{
    transform:translateY(-1px);
    border-color:#9fcbd7;
    background:#eef8fb;
    color:#245b68;
    box-shadow:0 5px 14px rgba(36,91,104,.08);
  }
}
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary:active,
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary:active{
  transform:translateY(0) scale(.985);
}
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary:focus-visible,
.bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary:focus-visible{
  outline:3px solid rgba(65,170,205,.28)!important;
  outline-offset:2px!important;
}



/* v0.12.5 — About owner photograph belongs in the hero's right column. */
.bw-about-hero .bw-info-hero-inner:has(>.bwbe-about-owner-visual){
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);
  grid-template-areas:
    "eyebrow owner"
    "title owner"
    "lede owner";
  column-gap:clamp(44px,6vw,92px);
  align-content:center;
  align-items:center;
}
.bw-about-hero .bw-info-hero-inner:has(>.bwbe-about-owner-visual)>.bw-eyebrow{grid-area:eyebrow;}
.bw-about-hero .bw-info-hero-inner:has(>.bwbe-about-owner-visual)>h1{grid-area:title;}
.bw-about-hero .bw-info-hero-inner:has(>.bwbe-about-owner-visual)>.bw-info-lede{grid-area:lede;}
.bw-about-hero .bw-info-hero-inner>.bwbe-about-owner-visual{
  grid-area:owner;
  justify-self:end;
  align-self:center;
  width:min(100%,390px);
  margin:0;
  border-radius:20px;
  box-shadow:0 16px 38px rgba(43,43,43,.09);
}
@media(max-width:899px){
  .bw-about-hero .bw-info-hero-inner:has(>.bwbe-about-owner-visual){
    grid-template-columns:1fr;
    grid-template-areas:
      "eyebrow"
      "title"
      "lede"
      "owner";
    row-gap:0;
  }
  .bw-about-hero .bw-info-hero-inner>.bwbe-about-owner-visual{
    justify-self:start;
    width:min(100%,560px);
    margin-top:28px;
  }
}

@media(prefers-reduced-motion:reduce){
  .bwbe-discovery-tabs button,
  .bwbe-budget-result-card .bwbe-discovery-cta,
  .bwbe-discovery-results.is-updating>.bwbe-budget-result-card,
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary,
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary{
    transition:none!important;
  }
  .bwbe-discovery-tabs button:hover,
  .bwbe-discovery-tabs button:active,
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary:hover,
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary:hover,
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-primary:active,
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"] .bwbe-planner-actions .bwbe-secondary:active{
    transform:none!important;
  }
}


/* v0.12.6 — final responsive visual proportion refinements. */

/* Desktop homepage: bias the 16:9 hero photograph toward the lower portion of
   the source so the inflatable remains fully grounded instead of being clipped
   by the bottom edge of the wide hero crop. Mobile keeps its dedicated crop. */
@media(min-width:900px){
  .home .bw-home-hero{
    background-position:center 72%!important;
  }
}

/* Mobile budget recommendations intentionally use a compact thumbnail column.
   Center the 4:3 photography vertically against the complete card rather than
   pinning each thumbnail to the card's top edge. */
@media(max-width:760px){
  .bwbe-budget-result-card:not(.bwbe-budget-custom-result)>img{
    width:120px!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4/3!important;
    align-self:center!important;
    object-fit:cover!important;
    object-position:center!important;
    border-radius:10px!important;
  }
}

/* The planning photograph is supporting editorial imagery on desktop, where a
   portrait crop better balances the tall copy/action column. At tablet/mobile
   widths the existing landscape treatment remains unchanged. */
@media(min-width:861px){
  .bwbe-planner-screen[data-bwbe-planner-screen="intro"].is-active.has-story-visual{
    grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
    column-gap:48px;
  }
  .bwbe-planner-story-visual{
    width:min(100%,320px);
    aspect-ratio:3/4;
    justify-self:center;
  }
  .bwbe-planner-story-visual img{
    object-position:58% center;
  }
}

/* Give the About hero photograph enough desktop presence to visually balance
   the large editorial headline. The existing stacked mobile layout is left
   untouched. */
@media(min-width:900px){
  .bw-about-hero .bw-info-hero-inner:has(>.bwbe-about-owner-visual){
    grid-template-columns:minmax(0,1.35fr) minmax(390px,.85fr);
    column-gap:clamp(40px,4.5vw,64px);
  }
  .bw-about-hero .bw-info-hero-inner>.bwbe-about-owner-visual{
    width:min(100%,460px);
  }
}

/* v0.17.5 — branded booking/quote completion sendoff */
.bwbe-thank-you-hero{text-align:center;max-width:780px;margin:0 auto 26px}
.bwbe-thank-you-hero .bwbe-eyebrow{margin-bottom:8px}
.bwbe-thank-you-hero .bwbe-thank-you-lead{margin-left:auto;margin-right:auto}
.bwbe-thank-you-status{max-width:760px;margin-left:auto;margin-right:auto}
.bwbe-completion-reveal-active{overflow:hidden}
.bwbe-completion-reveal-target{transition:opacity .42s ease,transform .52s cubic-bezier(.2,.75,.2,1)}
.bwbe-completion-reveal-target.is-awaiting-reveal{opacity:0;transform:translateY(14px)}
.bwbe-completion-reveal-target.is-revealing{opacity:1;transform:translateY(0)}
.bwbe-completion-reveal-target.is-reveal-ready{opacity:1;transform:none}
.bwbe-completion-reveal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;pointer-events:none;background:rgba(43,43,43,.16);backdrop-filter:brightness(.86) blur(1.5px);-webkit-backdrop-filter:brightness(.86) blur(1.5px);opacity:0;transition:opacity .18s ease,background .45s ease,backdrop-filter .45s ease,-webkit-backdrop-filter .45s ease}
.bwbe-completion-reveal.is-entered{opacity:1}
.bwbe-completion-reveal.is-jumping{background:rgba(250,249,246,.98);backdrop-filter:brightness(1) blur(0);-webkit-backdrop-filter:brightness(1) blur(0)}
.bwbe-completion-reveal.is-fading{opacity:0;transition-delay:.18s;transition-duration:.34s}
.bwbe-completion-reveal-stage{display:grid;place-items:center;width:min(44vw,230px);aspect-ratio:1;transform:translateY(0)}
.bwbe-completion-reveal-mascot{display:block;width:100%;height:auto;opacity:0;transform:translateY(12px) scale(.84);filter:drop-shadow(0 18px 26px rgba(43,43,43,.14));will-change:transform,opacity}
.bwbe-completion-reveal.is-entered:not(.is-jumping) .bwbe-completion-reveal-mascot{animation:bwbe-mascot-arrive .3s cubic-bezier(.2,.8,.2,1) forwards}
.bwbe-completion-reveal.is-jumping .bwbe-completion-reveal-mascot{opacity:1;animation:bwbe-mascot-jump-away .72s cubic-bezier(.2,.75,.18,1) forwards}
@keyframes bwbe-mascot-arrive{0%{opacity:0;transform:translateY(12px) scale(.84)}70%{opacity:1;transform:translateY(-3px) scale(1.025)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes bwbe-mascot-jump-away{0%{opacity:1;transform:translateY(0) scale(1)}16%{opacity:1;transform:translateY(8px) scaleX(1.045) scaleY(.93)}55%{opacity:1;transform:translateY(-48px) scaleX(.98) scaleY(1.035)}100%{opacity:0;transform:translateY(-92px) scale(1.055)}}
@media(max-width:640px){.bwbe-completion-reveal-stage{width:min(48vw,180px)}}
@media(prefers-reduced-motion:reduce){.bwbe-completion-reveal{display:none!important}.bwbe-completion-reveal-target{opacity:1!important;transform:none!important;transition:none!important}}



/* v0.17.6 — thank-you summary alignment */
.bwbe-thank-you-reference{
  align-items:center;
  min-height:78px;
  padding:18px 22px;
  box-shadow:0 8px 24px rgba(43,43,43,.08);
}
.bwbe-thank-you-reference span{font-weight:700}
.bwbe-thank-you-reference strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.bwbe-thank-you-grid{gap:20px}
.bwbe-thank-you-card{
  padding:24px;
  box-shadow:0 8px 24px rgba(43,43,43,.035);
}
.bwbe-thank-you-card .bwbe-eyebrow{margin-bottom:5px}
.bwbe-thank-you-card h2{margin:0 0 16px;font-size:1.5rem;line-height:1.15}
.bwbe-thank-you-card .bwbe-detail-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 18px;
  margin:0;
  border-top:1px solid #e9e4dc;
}
.bwbe-thank-you-card .bwbe-detail-list>div{
  display:block;
  min-width:0;
  padding:12px 0 2px;
  border-top:0;
}
.bwbe-thank-you-card .bwbe-detail-list dt{
  margin:0 0 4px;
  color:#746d64;
  font-size:.77rem;
  font-weight:700;
  line-height:1.25;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.bwbe-thank-you-card .bwbe-detail-list dd{
  margin:0;
  color:#2b2b2b;
  font-size:.98rem;
  font-weight:700;
  line-height:1.35;
  text-align:left;
  overflow-wrap:anywhere;
}
.bwbe-thank-you-event-card .bwbe-detail-location,
.bwbe-thank-you-payment-card .bwbe-detail-balance-due,
.bwbe-thank-you-payment-card .bwbe-detail-payment-update,
.bwbe-thank-you-payment-card .bwbe-detail-confirmation{
  grid-column:1 / -1;
  margin-top:10px;
  padding-top:12px!important;
  border-top:1px solid #eee8de!important;
}
.bwbe-thank-you-payment-card .bwbe-detail-paid dd{color:#36724f}
.bwbe-thank-you-payment-card .bwbe-detail-remaining-balance dd{color:#2b2b2b}
@media(max-width:720px){
  .bwbe-thank-you-reference{min-height:0;align-items:flex-start}
  .bwbe-thank-you-reference strong{white-space:normal}
  .bwbe-thank-you-card .bwbe-detail-list{grid-template-columns:1fr 1fr}
  .bwbe-thank-you-card .bwbe-detail-list>div{display:block;gap:0}
  .bwbe-thank-you-card .bwbe-detail-list dd{text-align:left}
}
@media(max-width:430px){
  .bwbe-thank-you-card .bwbe-detail-list{grid-template-columns:1fr}
  .bwbe-thank-you-card .bwbe-detail-list>div+div{margin-top:8px;padding-top:12px;border-top:1px solid #eee8de}
  .bwbe-thank-you-event-card .bwbe-detail-location,
  .bwbe-thank-you-payment-card .bwbe-detail-balance-due{grid-column:auto}
}


/* v0.17.12 — persistent custom quote access beneath planner recommendations. */
.bwbe-planner-custom-contact{margin-top:30px;padding:24px;border:1px solid #d8e7eb;border-radius:18px;background:linear-gradient(135deg,#f5fbfd 0%,#fffdf8 100%);box-shadow:0 12px 30px rgba(43,43,43,.05)}
.bwbe-planner-custom-contact-intro{max-width:650px;margin-bottom:20px}.bwbe-planner-custom-contact-intro>.bwbe-eyebrow{margin-bottom:5px}.bwbe-planner-custom-contact-intro h3{margin:0 0 8px;font-size:clamp(1.35rem,3vw,1.8rem);color:var(--bw-charcoal)}.bwbe-planner-custom-contact-intro p:last-child{margin:0;color:#67645d;line-height:1.55}
.bwbe-planner-custom-contact-form{margin:0}.bwbe-planner-custom-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bwbe-planner-custom-contact-wide{grid-column:1/-1}.bwbe-planner-custom-contact .bwbe-field{margin:0}.bwbe-planner-custom-contact .bwbe-field input,.bwbe-planner-custom-contact .bwbe-field textarea{background:#fff}.bwbe-planner-custom-contact>.bwbe-planner-custom-contact-form>.bwbe-check{margin:16px 0 0}
.bwbe-planner-custom-contact-context{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0 14px;padding:11px 13px;border-radius:11px;background:#fff;border:1px solid #e2dfd6;font-size:.86rem;color:#706d66}.bwbe-planner-custom-contact-context strong{color:#2b2b2b}.bwbe-planner-custom-contact .bwbe-primary{width:auto;min-width:210px;margin-top:8px}.bwbe-planner-custom-contact-success{padding:4px}.bwbe-planner-custom-contact-success h3{margin:0 0 8px;font-size:1.6rem}.bwbe-planner-custom-contact-success>p:not(.bwbe-eyebrow){margin:0 0 16px;color:#595750;line-height:1.55}
@media(max-width:760px){.bwbe-planner-custom-contact{margin-top:24px;padding:19px}.bwbe-planner-custom-contact-grid{grid-template-columns:1fr}.bwbe-planner-custom-contact-wide{grid-column:auto}.bwbe-planner-custom-contact .bwbe-primary{width:100%}}

/* v0.18.11 — address autocomplete */
.bwbe-field.has-bwbe-address{position:relative}.bwbe-address-suggestions{position:absolute;z-index:10040;left:0;right:0;top:100%;margin-top:5px;border:1px solid #d6d2c8;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(43,43,43,.14);overflow:hidden}.bwbe-address-suggestion{display:grid;width:100%;gap:2px;padding:10px 12px;border:0;border-bottom:1px solid #efede7;background:#fff;color:#2b2b2b;text-align:left;cursor:pointer}.bwbe-address-suggestion:hover,.bwbe-address-suggestion.is-active{background:#edf8fb}.bwbe-address-suggestion strong{font-size:.9rem;line-height:1.3}.bwbe-address-suggestion span{font-size:.78rem;color:#6b6963;line-height:1.3}.bwbe-address-attribution{padding:6px 12px 7px;background:#faf9f6;color:#77746d;font-size:.68rem;font-weight:700;text-align:right}.bwbe-address-status{display:block;min-height:0;margin-top:4px;color:#6b6963;font-size:.76rem;font-weight:500;line-height:1.35}.bwbe-address-suggestions[hidden]{display:none}
