/* Opt-in only: no :root, body, html or legacy component overrides. */
@font-face{font-family:'Barbada Redesign';font-style:normal;font-weight:400 800;font-display:swap;src:url('../fonts/plus-jakarta-sans-latin.woff2') format('woff2')}
.bb51{
 --bb51-brand:#00854f;--bb51-text-primary:#17234d;--bb51-text-secondary:#536582;
 --bb51-surface:#fff;--bb51-surface-soft:#eef9f5;--bb51-border:#dee8ed;
 --bb51-success:#006b43;--bb51-warning:#865800;--bb51-danger:#b42332;
 --bb51-space-1:.25rem;--bb51-space-2:.5rem;--bb51-space-3:.75rem;--bb51-space-4:1rem;--bb51-space-6:1.5rem;--bb51-space-8:2rem;
 --bb51-radius-small:.375rem;--bb51-radius-card:.75rem;--bb51-radius-large:1.25rem;--bb51-radius-pill:999px;
 --bb51-display:clamp(2rem,5vw,3.25rem);--bb51-page-title:clamp(1.5rem,3vw,2.25rem);--bb51-section-title:1.125rem;--bb51-card-title:1rem;--bb51-body:.9375rem;--bb51-small:.75rem;
 --bb51-shadow-card:0 2px 12px #17234d08;--bb51-shadow-overlay:0 8px 24px #17234d18;
 --bb51-safe-bottom:env(safe-area-inset-bottom,0px);--bb51-nav-height:5.5rem;--bb51-content-width:72rem;
 font-family:'Barbada Redesign','Plus Jakarta Sans',Arial,sans-serif;font-size:var(--bb51-body);line-height:1.5;color:var(--bb51-text-primary);background:var(--bb51-surface);overflow-wrap:anywhere;
}
.bb51,.bb51 *{box-sizing:border-box}
.bb51 :where(h1,h2,h3,h4,p){margin:0}
.bb51 :where(a,button,summary,input):focus-visible{outline:3px solid var(--bb51-text-primary);outline-offset:4px}
.bb51 :where(a,button,summary){-webkit-tap-highlight-color:transparent}
.bb51 :where(a){color:inherit}
.bb51 :where(button,input){font:inherit}
.bb51 :where(img){max-width:100%}
.bb51-shell{margin:0;min-height:100vh;display:flex;flex-direction:column}
.bb51-shell.bb51-has-nav{padding-bottom:calc(var(--bb51-nav-height) + var(--bb51-safe-bottom) + var(--bb51-space-4))}
.bb51 .bb51-container{width:100%;max-width:var(--bb51-content-width);margin-inline:auto;padding-inline:max(var(--bb51-space-4),env(safe-area-inset-left,0px)) max(var(--bb51-space-4),env(safe-area-inset-right,0px))}
.bb51 .bb51-main{flex:1;padding-block:var(--bb51-space-6)}
.bb51 .bb51-stack{display:grid;gap:var(--bb51-space-4)}
.bb51 .bb51-section{margin-block:var(--bb51-space-8)}
.bb51 .bb51-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--bb51-space-3);margin-bottom:var(--bb51-space-4)}
.bb51 .bb51-display{font-size:var(--bb51-display);font-weight:800;line-height:1.1;letter-spacing:-.04em}
.bb51 .bb51-page-title{font-size:var(--bb51-page-title);font-weight:800;line-height:1.2;letter-spacing:-.03em}
.bb51 .bb51-section-title{font-size:var(--bb51-section-title);font-weight:800;line-height:1.3}
.bb51 .bb51-card-title{font-size:var(--bb51-card-title);font-weight:800;line-height:1.35}
.bb51 .bb51-meta{font-size:var(--bb51-small);color:var(--bb51-text-secondary);line-height:1.5}
.bb51 .bb51-eyebrow{font-size:var(--bb51-small);font-weight:800;color:var(--bb51-success)}
.bb51 .bb51-icon{width:1.25rem;height:1.25rem;flex:none;vertical-align:middle}
.bb51 .bb51-header{position:relative;background:var(--bb51-surface);border-bottom:1px solid var(--bb51-border);z-index:2}
.bb51 .bb51-header-inner{min-height:4.25rem;display:flex;align-items:center;gap:var(--bb51-space-2);padding-block:var(--bb51-space-2)}
.bb51 .bb51-brand{display:inline-flex;align-items:center;flex:none;text-decoration:none;font-weight:800;color:var(--bb51-brand)}
.bb51 .bb51-brand img{width:7rem;height:auto;display:block}
.bb51 .bb51-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--bb51-space-2);min-width:0;flex:1}
.bb51 .bb51-icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;list-style:none;color:var(--bb51-text-secondary);border-radius:var(--bb51-radius-small);cursor:pointer}
.bb51 .bb51-icon-button::-webkit-details-marker{display:none}
.bb51 .bb51-city{display:flex;align-items:center;justify-content:flex-end;gap:var(--bb51-space-1);min-height:2.75rem;min-width:0;font-size:var(--bb51-small);font-weight:700;text-decoration:none}
.bb51 .bb51-city .bb51-icon{width:1rem;height:1rem;color:var(--bb51-success)}
.bb51 .bb51-city>span{min-width:0;overflow-wrap:anywhere}
.bb51 .bb51-menu{position:relative}
.bb51 .bb51-menu nav{position:absolute;inset-inline-end:0;top:100%;width:min(17rem,calc(100vw - 2rem));display:grid;gap:var(--bb51-space-2);padding:var(--bb51-space-3);border:1px solid var(--bb51-border);border-radius:var(--bb51-radius-card);background:var(--bb51-surface);box-shadow:var(--bb51-shadow-overlay)}
.bb51 .bb51-menu:not([open]) nav{display:none}
.bb51 .bb51-menu-link{display:flex;align-items:center;min-height:2.75rem;padding-inline:var(--bb51-space-2);text-decoration:none}
.bb51 .bb51-bottom-nav{position:fixed;inset:auto 0 0;z-index:5;background:var(--bb51-surface);border-top:1px solid var(--bb51-border);height:calc(var(--bb51-nav-height) + var(--bb51-safe-bottom));padding-bottom:var(--bb51-safe-bottom);padding-inline:env(safe-area-inset-left,0px) env(safe-area-inset-right,0px)}
.bb51 .bb51-bottom-items{max-width:40rem;height:100%;margin:auto;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1.2fr) minmax(0,1.1fr);align-items:stretch;padding:.375rem}
.bb51 .bb51-nav-item{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;min-width:0;text-align:center;color:var(--bb51-text-secondary);font-size:clamp(.5625rem,2.55vw,.6875rem);letter-spacing:-.025em;font-weight:600;text-decoration:none;padding:.25rem .125rem;border-radius:var(--bb51-radius-small)}
.bb51 .bb51-nav-item>span{white-space:nowrap}
.bb51 .bb51-nav-item[aria-current]{color:var(--bb51-success);font-weight:800;background:var(--bb51-surface-soft);box-shadow:inset 0 3px var(--bb51-brand)}
.bb51 [aria-disabled=true]{opacity:.65;cursor:default}
.bb51 .bb51-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bb51-space-3)}
.bb51 .bb51-list{display:grid;gap:var(--bb51-space-3)}
.bb51 .bb51-card{position:relative;min-width:0;background:var(--bb51-surface);border:1px solid var(--bb51-border);border-radius:var(--bb51-radius-card);box-shadow:var(--bb51-shadow-card)}
.bb51 .bb51-card-visual{position:relative;min-width:0}
.bb51 .bb51-card-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--bb51-surface-soft);border-radius:var(--bb51-radius-card) var(--bb51-radius-card) 0 0}
.bb51 .bb51-image-placeholder{display:grid;place-items:center;color:var(--bb51-brand)}
.bb51 .bb51-image-placeholder .bb51-icon{width:2rem;height:2rem}
.bb51 .bb51-card-body{padding:var(--bb51-space-3);display:grid;align-content:start;gap:var(--bb51-space-1);min-width:0}
.bb51 .bb51-card-link{text-decoration:none}
.bb51 .bb51-card-link::after{content:'';position:absolute;inset:0;border-radius:var(--bb51-radius-card)}
.bb51 .bb51-card:focus-within{outline:3px solid var(--bb51-text-primary);outline-offset:3px}
.bb51 .bb51-badge{position:absolute;left:.375rem;top:.375rem;right:.375rem;width:fit-content;max-width:calc(100% - .75rem);display:flex;align-items:center;gap:.2rem;background:var(--bb51-surface);padding:.2rem .375rem;border-radius:var(--bb51-radius-pill);font-size:.625rem;font-weight:800;line-height:1.4}
.bb51 .bb51-badge .bb51-icon{width:.8rem;height:.8rem;color:var(--bb51-success)}
.bb51 .bb51-location{display:flex;align-items:flex-start;gap:.125rem}
.bb51 .bb51-location .bb51-icon{width:.875rem;height:.875rem;margin-top:.125rem}
.bb51 .bb51-prices{display:flex;align-items:baseline;flex-wrap:wrap;gap:.25rem .4rem;margin-block:.25rem}
.bb51 .bb51-prices del{font-size:var(--bb51-small);color:var(--bb51-text-secondary)}
.bb51 .bb51-prices strong{font-size:1.0625rem;font-weight:800}
.bb51 .bb51-discount,.bb51 .bb51-points{color:var(--bb51-success);background:var(--bb51-surface-soft);border-radius:var(--bb51-radius-pill);font-size:.6875rem;font-weight:800;padding:.25rem .4rem;width:fit-content}
.bb51 .bb51-points{display:flex;align-items:center;gap:.25rem;margin-top:.25rem}
.bb51 .bb51-points .bb51-icon{width:1rem;height:1rem}
.bb51 .bb51-progress p,.bb51 .bb51-stock{display:flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:700;line-height:1.4}
.bb51 .bb51-progress .bb51-icon,.bb51 .bb51-stock .bb51-icon{width:1rem;height:1rem;color:var(--bb51-success)}
.bb51 .bb51-progress progress{display:block;width:100%;height:.375rem;margin-block:.375rem;appearance:none;border:0;border-radius:var(--bb51-radius-pill);background:var(--bb51-border);accent-color:var(--bb51-brand)}
.bb51 .bb51-progress progress::-webkit-progress-bar{background:var(--bb51-border);border-radius:var(--bb51-radius-pill)}
.bb51 .bb51-progress progress::-webkit-progress-value{background:var(--bb51-brand);border-radius:var(--bb51-radius-pill)}
.bb51 .bb51-progress progress::-moz-progress-bar{background:var(--bb51-brand);border-radius:var(--bb51-radius-pill)}
.bb51 .bb51-card--row{display:grid;grid-template-columns:35% minmax(0,1fr)}
.bb51 .bb51-card--row .bb51-card-visual{padding:.375rem}
.bb51 .bb51-card--row .bb51-card-image{height:100%;min-height:7rem;border-radius:var(--bb51-radius-small)}
.bb51 .bb51-card--row .bb51-badge{left:.625rem;top:.625rem;max-width:calc(100% - 1.25rem)}
.bb51 .bb51-interest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bb51-space-2)}
.bb51 .bb51-interest{position:relative;display:grid;justify-items:center;align-content:start;gap:.375rem;padding:.75rem .25rem;text-align:center;background:var(--bb51-surface-soft);border:1px solid var(--bb51-border);border-radius:var(--bb51-radius-card);font-size:.6875rem}
.bb51 .bb51-interest>.bb51-icon{color:var(--bb51-brand);width:1.75rem;height:1.75rem}
.bb51 .bb51-interest--selected{border:2px solid var(--bb51-success)}
.bb51 .bb51-interest-selection{color:var(--bb51-success)}
.bb51 .bb51-panel{display:grid;gap:var(--bb51-space-3);padding:var(--bb51-space-4);border:1px solid var(--bb51-border);border-radius:var(--bb51-radius-large);background:var(--bb51-surface-soft)}
.bb51 .bb51-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.875rem;padding:.625rem 1rem;border-radius:var(--bb51-radius-small);background:var(--bb51-brand);color:#fff;font-size:.875rem;font-weight:800;text-align:center;text-decoration:none;border:1px solid transparent}
.bb51 .bb51-button--soft{color:var(--bb51-success);background:var(--bb51-surface);border-color:var(--bb51-border)}
.bb51 .bb51-text-action{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--bb51-success);font-size:var(--bb51-small);font-weight:700}
.bb51 .bb51-payment{display:flex;align-items:center;gap:.5rem;font-size:var(--bb51-small);padding-top:var(--bb51-space-3);border-top:1px solid var(--bb51-border)}
.bb51 .bb51-participation{text-align:center;justify-items:center}
.bb51 .bb51-participation .bb51-progress{width:100%;text-align:start}
.bb51 .bb51-success-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;background:var(--bb51-success);color:#fff;border-radius:50%}
.bb51 .bb51-community-channel>.bb51-icon{color:var(--bb51-success)}
.bb51 .bb51-footer{border-top:1px solid var(--bb51-border);background:var(--bb51-surface-soft);padding-block:var(--bb51-space-6);font-size:var(--bb51-small);color:var(--bb51-text-secondary)}
.bb51 .bb51-footer nav{display:flex;gap:var(--bb51-space-4);flex-wrap:wrap}
.bb51 .bb51-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.bb51 .bb51-skip{position:fixed;top:.5rem;left:1rem;z-index:10;transform:translateY(-200%);background:var(--bb51-surface);padding:.75rem}
.bb51 .bb51-skip:focus{transform:none}
@media(min-width:48rem){
 .bb51 .bb51-container{padding-inline:var(--bb51-space-6)}
 .bb51 .bb51-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--bb51-space-4)}
 .bb51 .bb51-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bb51 .bb51-header-inner{min-height:5rem}
 .bb51 .bb51-brand img{width:8.25rem}
 .bb51 .bb51-nav-item{font-size:var(--bb51-small)}
 .bb51 .bb51-community-channel{grid-template-columns:auto 1fr auto;align-items:center}
}
@media(min-width:64rem){
 .bb51 .bb51-bottom-nav{display:none}
 .bb51-shell.bb51-has-nav{padding-bottom:0}
 .bb51 .bb51-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){.bb51 *{scroll-behavior:auto;animation:none;transition:none}}

/* Remaining SINGLE capacity: intentionally distinct from collective goal progress. */
.bb51 .bb51-availability-bar{height:.4rem;background:#e5eaf0;border-radius:1rem;overflow:hidden;margin:.4rem 0}
.bb51 .bb51-availability-bar>span{display:block;height:100%;background:#466b89;border-radius:inherit}
.bb51 .bb51-availability--warning>span{background:var(--bb51-warning)}
.bb51 .bb51-availability--danger>span{background:var(--bb51-danger)}

/* Optional principal navigation in the desktop header; compact shell below 1024px. */
.bb51 .bb51-primary-nav{display:none}
.bb51 .bb51-footer-main{display:grid;gap:.75rem}
.bb51 .bb51-footer-main>p{max-width:22rem}
.bb51 .bb51-footer nav{gap:.25rem 1rem}
.bb51 .bb51-footer-social a{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--bb51-success);font-weight:700}
.bb51 .bb51-footer-bottom{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;border-top:1px solid var(--bb51-border);margin-top:.75rem;padding-top:.75rem;font-size:.75rem}
.bb51 .bb51-footer-bottom a{color:inherit}
@media(min-width:64rem){
 .bb51 .bb51-primary-nav{display:flex;align-items:center;gap:clamp(.75rem,1.4vw,1.25rem);margin-left:auto;font-size:.8125rem;white-space:nowrap}
 .bb51 .bb51-primary-nav a{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--bb51-text-primary);text-decoration:none}
 .bb51 .bb51-primary-nav [aria-current]{color:var(--bb51-success);font-weight:800;box-shadow:inset 0 -2px currentColor}
 .bb51 .bb51-primary-nav [aria-disabled]{color:var(--bb51-text-secondary)}
 .bb51 .bb51-primary-nav+.bb51-header-actions{flex:0 0 auto;margin-left:1rem}
 .bb51 .bb51-footer-main{grid-template-columns:1fr auto auto;gap:1.5rem;align-items:center}
 .bb51 .bb51-footer-bottom{justify-content:space-between}
}
