/* BEST OF Platform UI V2 FINAL — exact supplied tokens and reusable primitives.
 * ⚠ --bo-navy #0B1F3A → #080C0F and --bo-gold #FABD12 → #F5B429, platform-
 * wide stale-palette sweep (the exact two hexes Master Rules names as
 * retired). NOT touched: --bo-navy-2/-dark and --bo-gold-2/-soft/-border,
 * the sibling variants — those weren't the named hexes and changing a
 * whole token family wasn't asked for. Also NOT touched, flagged instead:
 * --bo-text (#10213A, a THIRD near-navy, distinct from both the old and
 * current systems) and --bo-amber (#D97706, distinct from the current
 * #F5B429) two lines below — this file's base palette looks like it
 * predates even the navy/gold retirement, a wider gap than the four hexes
 * this sweep was scoped to. Worth its own review, not folded into this one.
 */
:root{
 --bo-navy:#080C0F;--bo-navy-2:#102B4F;--bo-navy-dark:#07172C;--bo-gold:#F5B429;--bo-gold-2:#BD8810;--bo-gold-soft:#FFF8E7;--bo-gold-border:#E8CB78;
 --bo-white:#FFFFFF;--bo-bg:#F8FAFC;--bo-surface:#FFFFFF;--bo-surface-subtle:#FCFCFD;--bo-text:#10213A;--bo-text-2:#475467;--bo-muted:#667085;--bo-disabled:#98A2B3;--bo-border:#E5E7EB;--bo-border-strong:#D0D5DD;
 --bo-green:#159947;--bo-green-dark:#0C7C4A;--bo-green-soft:#ECFDF3;--bo-amber:#D97706;--bo-orange:#F59E0B;--bo-red:#D92D20;--bo-red-soft:#FFF1F0;--bo-purple:#6D5DFB;--bo-purple-soft:#F4F0FF;--bo-blue:#2F6FED;--bo-blue-soft:#EEF4FF;--bo-cyan:#12B8B0;--bo-cyan-soft:#ECFEFF;
 --bo-s1:4px;--bo-s2:8px;--bo-s3:12px;--bo-s4:16px;--bo-s5:20px;--bo-s6:24px;--bo-s8:32px;--bo-s10:40px;--bo-s12:48px;--bo-s16:64px;--bo-s20:80px;--bo-s24:96px;
 --bo-r-xs:6px;--bo-r-sm:8px;--bo-r-md:12px;--bo-r-lg:16px;--bo-r-xl:20px;--bo-r-pill:999px;
 --bo-shadow-sm:0 1px 2px rgba(16,33,58,.05);--bo-shadow-md:0 8px 24px rgba(16,33,58,.08);--bo-focus:0 0 0 3px rgba(46,107,230,.24);
 --bo-shell:1360px;--bo-content:1280px;--bo-header:72px;--bo-font:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body.bo-platform-shell{margin:0;background:var(--bo-bg);color:var(--bo-text);font-family:var(--bo-font);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body.bo-platform-shell img{max-width:100%}body.bo-platform-shell a{color:inherit;text-decoration:none}body.bo-platform-shell button,body.bo-platform-shell input,body.bo-platform-shell textarea,body.bo-platform-shell select{font:inherit}body.bo-platform-shell h1,body.bo-platform-shell h2,body.bo-platform-shell h3,body.bo-platform-shell h4,body.bo-platform-shell p{margin-top:0}body.bo-platform-shell .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}.bo-container{width:min(calc(100% - 64px),var(--bo-shell));margin-inline:auto}.bo-content{width:min(calc(100% - 64px),var(--bo-content));margin-inline:auto}.bo-main{min-height:65vh;padding:var(--bo-s8) 0 var(--bo-s20)}.bo-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}.bo-card{background:var(--bo-white);border:1px solid var(--bo-border);border-radius:var(--bo-r-lg);box-shadow:var(--bo-shadow-sm)}.bo-card--raised{box-shadow:var(--bo-shadow-md)}.bo-section{margin-top:var(--bo-s12)}.bo-section__head{display:flex;align-items:end;justify-content:space-between;gap:var(--bo-s6);margin-bottom:var(--bo-s6)}.bo-section__head h2{margin:0;font-size:clamp(26px,2.35vw,38px);line-height:1.08;letter-spacing:-.035em}.bo-section__head p{margin:6px 0 0;color:var(--bo-muted);max-width:700px}.bo-eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--bo-gold);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.bo-icon{display:inline-block;width:20px;height:20px;flex:0 0 auto;vertical-align:middle}.bo-content-icon{width:22px;height:22px}.bo-button,.bo-icon-button{appearance:none;border:1px solid transparent;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.bo-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;border-radius:10px;font-weight:650;line-height:1}.bo-button:hover{transform:translateY(-1px)}.bo-button:focus-visible,.bo-icon-button:focus-visible,.bo-chip:focus-visible,.bo-card a:focus-visible{outline:0;box-shadow:var(--bo-focus)}.bo-button--navy{background:var(--bo-navy);color:var(--bo-white)}.bo-button--navy:hover{background:var(--bo-navy-2)}.bo-button--gold{background:var(--bo-gold);color:var(--bo-navy-dark)}.bo-button--gold:hover{background:var(--bo-gold-2)}.bo-button--outline{background:var(--bo-white);color:var(--bo-navy);border-color:var(--bo-border-strong)}.bo-button--soft{background:var(--bo-surface-subtle);color:var(--bo-navy);border-color:var(--bo-border)}.bo-button[disabled]{cursor:not-allowed;opacity:.48;transform:none}.bo-icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:transparent;color:var(--bo-navy)}.bo-icon-button:hover{background:var(--bo-surface-subtle)}.bo-chip{min-height:30px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--bo-r-pill);background:var(--bo-white);border:1px solid var(--bo-border);font-size:12px;font-weight:700}.bo-chip--green{background:var(--bo-green-soft);color:var(--bo-green-dark);border-color:transparent}.bo-chip--purple{background:var(--bo-purple-soft);color:var(--bo-purple);border-color:transparent}.bo-chip--amber{background:var(--bo-gold-soft);color:var(--bo-amber);border-color:transparent}.bo-chip--blue{background:var(--bo-blue-soft);color:var(--bo-blue);border-color:transparent}.bo-link{color:var(--bo-gold);font-weight:750}.bo-link:hover{text-decoration:underline}.bo-empty{padding:var(--bo-s8);border:1px dashed var(--bo-border-strong);border-radius:var(--bo-r-md);background:var(--bo-surface-subtle);text-align:center}.bo-empty h3{margin-bottom:6px}.bo-empty p{margin:0;color:var(--bo-muted)}

/* Build 0107 binding typography and route isolation. */
body.bo-platform-shell{font-family:var(--bo-font)!important;color:var(--bo-text);background:var(--bo-bg)}
body.bo-platform-shell :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,small,strong){font-family:var(--bo-font)}
body.bo-platform-shell h1{font-size:clamp(40px,3.9vw,56px);line-height:1.0714;font-weight:700;letter-spacing:-.021em}
body.bo-platform-shell h2{font-size:clamp(30px,2.4vw,32px);line-height:1.1875;font-weight:700;letter-spacing:-.018em}
body.bo-platform-shell h3{font-size:24px;line-height:1.25;font-weight:700;letter-spacing:-.012em}
body.bo-platform-shell p{font-size:16px;line-height:1.5625}
body.bo-platform-shell a:not(.bo-button):not(.bo-icon-button){text-underline-offset:3px;text-decoration-thickness:1px}
body.bo-platform-shell .geodir-location-switcher,body.bo-platform-shell .geodir-loc-bar,body.bo-platform-shell [class*="geodir-location"],body.bo-platform-shell [id*="geodir-location"]{display:none!important}
.bo-qa-mode{position:fixed;right:14px;bottom:14px;z-index:10020;padding:7px 10px;border-radius:999px;background:var(--bo-navy);color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--bo-shadow-md)}
/* Shared header */
.bo-header{position:sticky;top:var(--wp-admin--admin-bar--height,0);z-index:10000;height:var(--bo-header);background:rgba(255,255,255,.97);border-bottom:1px solid var(--bo-border);backdrop-filter:saturate(180%) blur(16px)}.bo-header__inner{height:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px}.bo-logo-lockup{display:flex;align-items:center;height:48px}.bo-logo-lockup img{display:block;width:auto;height:30px;object-fit:contain}.bo-header__nav{display:flex;justify-content:center;align-items:center;gap:26px}.bo-header__nav-link{height:var(--bo-header);display:flex;align-items:center;position:relative;font-size:14px;font-weight:700;color:var(--bo-text-2)}.bo-header__nav-link:hover,.bo-header__nav-link.is-active{color:var(--bo-navy)}.bo-header__nav-link.is-active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--bo-gold);border-radius:3px 3px 0 0}.bo-header__tools{display:flex;align-items:center;justify-content:flex-end;gap:6px}.bo-header__search{width:min(286px,22vw);height:44px;display:flex;align-items:center;gap:10px;padding:0 15px;border:1px solid var(--bo-border-strong);border-radius:var(--bo-r-pill);background:var(--bo-white)}.bo-header__search .bo-icon{width:18px;height:18px}.bo-header__search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--bo-text)}.bo-header__search-button,.bo-header__menu{display:none}.bo-header__account{position:relative}.bo-header__account.is-authenticated span{position:absolute;right:7px;bottom:7px;width:7px;height:7px;border-radius:50%;background:var(--bo-green);border:2px solid var(--bo-white)}.bo-header__add{min-width:92px}.bo-drawer{position:absolute;left:0;right:0;top:100%;padding:16px;background:var(--bo-white);border-bottom:1px solid var(--bo-border);box-shadow:var(--bo-shadow-md)}.bo-drawer[hidden]{display:none!important}.bo-drawer__search{height:46px;display:flex;align-items:center;gap:10px;border:1px solid var(--bo-border);border-radius:10px;padding:0 12px}.bo-drawer__search input{width:100%;border:0;outline:0}.bo-drawer nav{display:grid;gap:2px;margin-top:12px}.bo-drawer nav a{min-height:46px;display:flex;align-items:center;padding:0 10px;border-radius:8px;font-weight:700}.bo-drawer nav a:hover,.bo-drawer nav a.is-active{background:var(--bo-gold-soft)}
/* Footer */
.bo-footer{margin-top:var(--bo-s20);background:var(--bo-navy);color:var(--bo-white)}.bo-footer__grid{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(150px,.8fr)) minmax(150px,.8fr);gap:48px;padding:64px 0 52px}.bo-footer__brand img{width:auto;height:26px;filter:brightness(0) invert(1)}.bo-footer__brand p{max-width:260px;margin:12px 0 0;color:rgba(255,255,255,.7);font-size:13px}.bo-footer nav{display:flex;flex-direction:column;gap:10px}.bo-footer nav strong{font-size:14px;letter-spacing:.06em;text-transform:uppercase}.bo-footer nav a{font-size:13px;color:rgba(255,255,255,.72)}.bo-footer nav a:hover{color:var(--bo-white)}.bo-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;color:rgba(255,255,255,.62);font-size:12px;text-align:center}
/* Modal */
.bo-modal{width:min(720px,calc(100% - 32px));padding:0;border:0;border-radius:var(--bo-r-xl);box-shadow:0 24px 80px rgba(8,29,58,.25);color:var(--bo-text)}.bo-modal::backdrop{background:rgba(7,23,44,.62);backdrop-filter:blur(4px)}.bo-modal__panel{position:relative;padding:32px;background:var(--bo-white);border-radius:inherit}.bo-modal__close{position:absolute;right:16px;top:16px}.bo-modal h2{font-size:30px;line-height:1.1;letter-spacing:-.03em;margin-bottom:8px}.bo-modal p{color:var(--bo-muted)}.bo-add-launcher__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.bo-add-launcher__item{min-height:62px;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--bo-border);border-radius:12px;font-weight:700}.bo-add-launcher__item:hover{border-color:var(--bo-gold);background:var(--bo-gold-soft)}
/* Homepage */
.bo-home{padding-top:36px}.bo-home-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;align-items:stretch}.bo-home-hero__copy{padding:28px 8px 12px 0}.bo-home-hero h1{max-width:600px;margin:0 0 18px;font-size:clamp(42px,4.4vw,64px);line-height:.98;letter-spacing:-.052em}.bo-home-hero h1 em{font-style:normal;color:var(--bo-gold)}.bo-home-hero__lede{max-width:590px;margin-bottom:22px;color:var(--bo-text-2);font-size:17px}.bo-global-search{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:52px;padding:4px;border:1px solid var(--bo-gold);border-radius:12px;background:var(--bo-white);box-shadow:var(--bo-shadow-sm)}.bo-global-search__field{display:flex;align-items:center;gap:10px;padding:0 12px}.bo-global-search input{width:100%;border:0;outline:0}.bo-home-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.bo-trust-inline{display:flex;flex-wrap:wrap;gap:18px;margin-top:16px;color:var(--bo-muted);font-size:12px}.bo-trust-inline span{display:flex;align-items:center;gap:6px}.bo-trust-inline .bo-icon{width:15px;height:15px}.bo-highlights{padding:18px}.bo-highlights__head{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.bo-highlights__head h2{font-size:24px;margin:0}.bo-highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bo-highlight{min-height:92px;display:grid;grid-template-columns:90px 1fr;gap:12px;padding:10px;border:1px solid var(--bo-border);border-radius:12px;background:var(--bo-white)}.bo-highlight__media{height:70px;border-radius:9px;overflow:hidden;background:var(--bo-surface-subtle)}.bo-highlight__media img{width:100%;height:100%;object-fit:cover}.bo-highlight__body small{display:flex;align-items:center;gap:5px;color:var(--bo-muted);font-size:10px;font-weight:800;text-transform:uppercase}.bo-highlight__body strong{display:block;margin-top:6px;font-size:14px;line-height:1.18}.bo-highlight__body a{display:inline-block;margin-top:7px;color:var(--bo-gold);font-size:11px;font-weight:800}.bo-activity-strip{margin-top:22px;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 20px;border-radius:10px;background:var(--bo-navy);color:var(--bo-white);font-size:12px}.bo-activity-strip__items{display:flex;gap:38px}.bo-activity-strip strong{color:var(--bo-gold-2)}.bo-contribution{display:grid;grid-template-columns:260px 1fr;gap:22px;padding:24px;margin-top:28px}.bo-contribution__intro{display:flex;gap:14px;align-items:flex-start}.bo-contribution__intro h2{margin:0;font-size:23px;line-height:1.12}.bo-contribution__intro p{margin:6px 0 0;color:var(--bo-muted);font-size:13px}.bo-contribution__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.bo-contribution__action{min-height:50px;display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--bo-border);border-radius:10px;font-size:12px;font-weight:700;background:var(--bo-white)}.bo-contribution__action:hover{border-color:var(--bo-gold);background:var(--bo-gold-soft)}.bo-lenses{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:28px}.bo-lens-tab{min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--bo-white);border:1px solid var(--bo-border);border-right:0;font-size:12px;font-weight:700}.bo-lens-tab:first-child{border-radius:10px 0 0 10px;background:var(--bo-gold-soft)}.bo-lens-tab:last-child{border-right:1px solid var(--bo-border);border-radius:0 10px 10px 0}.bo-lens-columns{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}.bo-lens{min-height:440px;padding:16px}.bo-lens h3{font-size:15px;margin:0 0 4px}.bo-lens>p{min-height:38px;margin:0 0 12px;color:var(--bo-muted);font-size:11px}.bo-feed-list{display:grid;gap:2px}.bo-feed-item{min-height:54px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--bo-border)}.bo-feed-item:first-child{border-top:0}.bo-feed-item__icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bo-surface-subtle)}.bo-feed-item__icon .bo-icon{width:16px;height:16px}.bo-feed-item small{display:block;color:var(--bo-muted);font-size:9px;text-transform:uppercase;font-weight:800}.bo-feed-item strong{display:block;font-size:12px;line-height:1.22}.bo-feed-item b{color:var(--bo-gold);font-size:15px}.bo-lens__more{display:inline-block;margin-top:14px;font-size:11px;font-weight:800}.bo-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(235px,1fr);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px;scrollbar-width:thin}.bo-media-card{min-width:0;scroll-snap-align:start;overflow:hidden}.bo-media-card__media{aspect-ratio:16/10;background:var(--bo-surface-subtle);overflow:hidden}.bo-media-card__media img{width:100%;height:100%;object-fit:cover}.bo-media-card__body{padding:16px}.bo-media-card__label{display:flex;align-items:center;gap:6px;color:var(--bo-muted);font-size:10px;font-weight:800;text-transform:uppercase}.bo-media-card h3{margin:10px 0 7px;font-size:18px;line-height:1.14;letter-spacing:-.02em}.bo-media-card p{min-height:42px;margin:0;color:var(--bo-muted);font-size:12px}.bo-media-card__foot{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid var(--bo-border);font-size:11px}.bo-media-card__foot b{color:var(--bo-gold)}.bo-compare-card{display:inline-flex;align-items:center;gap:12px;padding:10px 14px;margin-right:10px}.bo-compare-card img{width:36px;height:36px;border-radius:7px;object-fit:cover}.bo-compare-card strong{font-size:12px}.bo-discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.bo-discovery-grid .bo-media-card{min-height:330px}.bo-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.bo-category-card{min-height:58px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:10px 14px}.bo-category-card__icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:var(--bo-surface-subtle);color:var(--bo-navy)}.bo-category-card__icon .bo-icon{width:18px;height:18px}.bo-category-card strong{font-size:13px}.bo-category-card b{color:var(--bo-gold)}.bo-home-business{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.bo-home-business article{min-height:220px;padding:24px}.bo-home-business h2{font-size:27px;line-height:1.05;letter-spacing:-.035em}.bo-home-business p,.bo-home-business li{color:var(--bo-muted);font-size:13px}.bo-home-marks{display:flex;justify-content:center;align-items:center;gap:12px}.bo-home-marks img{width:60px;height:60px}.bo-home-foundation{background:var(--bo-white)}
/* Profiles */
.bo-profile{padding-top:20px}.bo-breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--bo-muted);font-size:12px}.bo-profile-hero{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(270px,3fr);min-height:410px;overflow:hidden}.bo-profile-identity{display:flex;flex-direction:column;padding:30px}.bo-profile-identity h1{margin:10px 0 8px;font-size:clamp(34px,3vw,48px);line-height:1;letter-spacing:-.045em}.bo-profile-identity__location{display:flex;align-items:center;gap:7px;color:var(--bo-text-2);font-size:13px}.bo-profile-identity__summary{margin-top:18px;color:var(--bo-text-2);font-size:14px}.bo-profile-identity__chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.bo-profile-identity__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.bo-profile-media{position:relative;min-height:410px;background:var(--bo-surface-subtle);overflow:hidden}.bo-profile-media>img{width:100%;height:100%;object-fit:cover}.bo-profile--digital .bo-profile-media>img{object-fit:contain;padding:70px;background:linear-gradient(135deg,var(--bo-blue-soft),var(--bo-white) 52%,var(--bo-cyan-soft))}.bo-profile-media__label{position:absolute;left:16px;top:16px}.bo-profile-media__gallery{position:absolute;right:16px;bottom:16px}.bo-contact-rail{display:flex;flex-direction:column;padding:26px;border-left:1px solid var(--bo-border)}.bo-contact-rail h2{margin:6px 0 18px;font-size:29px;line-height:1.02;letter-spacing:-.035em}.bo-contact-list{display:grid;gap:0}.bo-contact-item{min-height:58px;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-top:1px solid var(--bo-border)}.bo-contact-item:first-child{border-top:0}.bo-contact-item strong{font-size:12px}.bo-contact-item small{display:block;color:var(--bo-muted);font-size:10px}.bo-contact-item b{color:var(--bo-gold)}.bo-claim-panel{margin-top:auto;padding:18px;border-radius:12px;background:var(--bo-gold-soft);border:1px solid var(--bo-gold-border)}.bo-claim-panel h3{font-size:22px;line-height:1.08;margin:5px 0 8px}.bo-claim-panel p{color:var(--bo-text-2);font-size:12px}.bo-participation-bar{display:grid;grid-template-columns:280px 1fr;gap:20px;padding:20px;margin-top:16px}.bo-participation-bar__intro h2{font-size:24px;line-height:1.05;margin:0}.bo-participation-bar__intro p{font-size:12px;color:var(--bo-muted);margin:7px 0 0}.bo-participation-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.bo-participation-action{min-height:48px;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--bo-border);border-radius:10px;font-size:11px;font-weight:700}.bo-participation-action:hover{background:var(--bo-gold-soft);border-color:var(--bo-gold)}.bo-authority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.bo-authority-card{min-height:220px;padding:20px}.bo-authority-card h2{font-size:22px;margin:0 0 14px}.bo-mark{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--bo-border);border-radius:10px}.bo-mark img{width:60px;height:60px;object-fit:contain}.bo-mark small{display:block;color:var(--bo-gold);font-size:9px;font-weight:800;text-transform:uppercase}.bo-mark strong{font-size:13px}.bo-confidence__bar{width:100%;height:8px;margin:14px 0;border:0;border-radius:var(--bo-r-pill);background:var(--bo-border);overflow:hidden;appearance:none}.bo-confidence__bar::-webkit-progress-bar{background:var(--bo-border);border-radius:var(--bo-r-pill)}.bo-confidence__bar::-webkit-progress-value{background:linear-gradient(90deg,var(--bo-gold),var(--bo-green));border-radius:var(--bo-r-pill)}.bo-confidence__bar::-moz-progress-bar{background:linear-gradient(90deg,var(--bo-gold),var(--bo-green));border-radius:var(--bo-r-pill)}.bo-confidence__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bo-confidence__meta div{padding:10px;border-radius:8px;background:var(--bo-surface-subtle)}.bo-confidence__meta small{display:block;color:var(--bo-muted);font-size:9px;text-transform:uppercase}.bo-confidence__meta strong{font-size:14px}.bo-trust-list{display:grid}.bo-trust-row{display:grid;grid-template-columns:18px 1fr auto;gap:7px;padding:7px 0;border-top:1px solid var(--bo-border)}.bo-trust-row:first-child{border-top:0}.bo-trust-row .bo-icon{width:16px;height:16px}.bo-trust-row strong{font-size:11px}.bo-trust-row em{font-style:normal;font-size:9px;padding:3px 7px;border-radius:var(--bo-r-pill);background:var(--bo-gold-soft);color:var(--bo-amber)}.bo-trust-row.is-confirmed em{background:var(--bo-green-soft);color:var(--bo-green-dark)}.bo-trust-row small{grid-column:2/-1;color:var(--bo-muted);font-size:9px}.bo-section-nav{position:sticky;top:calc(var(--bo-header) + var(--wp-admin--admin-bar--height,0));z-index:100;display:flex;gap:22px;padding:0 16px;margin-top:16px;background:var(--bo-white);border:1px solid var(--bo-border);border-radius:10px}.bo-section-nav a{height:48px;display:flex;align-items:center;font-size:12px;font-weight:750;position:relative}.bo-section-nav a:first-child::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--bo-gold)}.bo-profile-body{display:grid;grid-template-columns:minmax(0,8fr) minmax(260px,4fr);gap:16px;margin-top:16px}.bo-profile-main{display:grid;gap:16px}.bo-profile-side{display:grid;align-content:start;gap:16px}.bo-profile-section{padding:22px}.bo-profile-section__head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.bo-profile-section__head h2{margin:0;font-size:28px;line-height:1.06;letter-spacing:-.035em}.bo-snapshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bo-snapshot-card{padding:16px;border:1px solid var(--bo-border);border-radius:10px}.bo-snapshot-card h3{margin:0 0 8px;color:var(--bo-gold);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.bo-snapshot-card p,.bo-snapshot-card li{font-size:12px}.bo-snapshot-card ul{margin:0;padding-left:18px}.bo-snapshot-card.is-best{background:var(--bo-green-soft)}.bo-snapshot-card.is-caution{background:var(--bo-gold-soft)}.bo-facts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--bo-border);border-radius:10px;overflow:hidden}.bo-fact{min-height:92px;padding:14px;border-right:1px solid var(--bo-border);border-bottom:1px solid var(--bo-border)}.bo-fact:nth-child(3n){border-right:0}.bo-fact small{display:block;color:var(--bo-gold);font-size:9px;font-weight:800;text-transform:uppercase}.bo-fact strong{display:block;margin-top:8px;font-size:12px}.bo-findings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bo-finding{padding:16px;border:1px solid var(--bo-border);border-top:3px solid var(--bo-green);border-radius:10px}.bo-finding.is-consideration{border-top-color:var(--bo-orange)}.bo-finding.is-unclear{border-top-color:var(--bo-purple)}.bo-finding h3{font-size:13px;margin:0 0 8px}.bo-finding li,.bo-finding p{font-size:11px;color:var(--bo-text-2)}.bo-question-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bo-question-card{min-height:190px;display:flex;flex-direction:column;padding:16px;border:1px solid var(--bo-border);border-top:3px solid var(--bo-green);border-radius:10px}.bo-question-card.is-owner{border-top-color:var(--bo-orange)}.bo-question-card.is-community{border-top-color:var(--bo-purple)}.bo-question-card small{color:var(--bo-gold);font-size:9px;font-weight:800;text-transform:uppercase}.bo-question-card h3{font-size:18px;line-height:1.08;margin:10px 0}.bo-question-card p{font-size:11px;color:var(--bo-muted)}.bo-question-card a{margin-top:auto;font-size:11px;font-weight:800}.bo-alternatives{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bo-alternative{padding:12px;border:1px solid var(--bo-border);border-radius:9px}.bo-alternative strong{font-size:12px}.bo-alternative small{display:block;color:var(--bo-muted);font-size:9px}.bo-source-list{border:1px solid var(--bo-border);border-radius:10px;overflow:hidden}.bo-source-row{min-height:54px;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--bo-border)}.bo-source-row:first-child{border-top:0}.bo-source-row strong{font-size:11px}.bo-source-row small{display:block;color:var(--bo-muted);font-size:9px}.bo-source-row b{font-size:10px}.bo-quick-facts{padding:20px}.bo-quick-facts h2{font-size:24px}.bo-quick-facts dl{margin:0}.bo-quick-facts dl div{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;padding:11px 0;border-top:1px solid var(--bo-border)}.bo-quick-facts dt{color:var(--bo-muted);font-size:10px}.bo-quick-facts dd{margin:0;text-align:right;font-size:10px;font-weight:750}.bo-enquiry{padding:22px;background:var(--bo-blue-soft)}.bo-enquiry h2{font-size:27px;line-height:1.05}.bo-enquiry p{font-size:12px;color:var(--bo-text-2)}.bo-profile-state{padding:18px}.bo-profile-state dl{margin:0}.bo-profile-state div{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--bo-border);font-size:10px}.bo-mobile-sticky{display:none}.bo-request-modal__form{display:grid;gap:14px;margin-top:20px}.bo-field label{display:block;margin-bottom:6px;font-size:12px;font-weight:750}.bo-field input,.bo-field textarea,.bo-field select{width:100%;border:1px solid var(--bo-border-strong);border-radius:10px;padding:12px;background:var(--bo-white)}.bo-field textarea{min-height:120px;resize:vertical}.bo-form-note{padding:12px;border-radius:9px;background:var(--bo-gold-soft);font-size:11px;color:var(--bo-text-2)}.bo-form-status{min-height:24px;font-size:12px}.bo-form-status.is-success{color:var(--bo-green-dark)}.bo-form-status.is-error{color:var(--bo-red)}
/* Responsive */
@media(max-width:1199px){:root{--bo-header:64px}.bo-container,.bo-content{width:min(calc(100% - 48px),var(--bo-shell))}.bo-header__nav{gap:16px}.bo-header__search{width:210px}.bo-home-hero{grid-template-columns:1fr 1fr}.bo-lens-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.bo-lens:nth-child(n+4){min-height:auto}.bo-contribution__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bo-profile-hero{grid-template-columns:minmax(0,4fr) minmax(0,5fr);}.bo-contact-rail{grid-column:1/-1;border-left:0;border-top:1px solid var(--bo-border);display:grid;grid-template-columns:1fr 1.4fr;gap:20px}.bo-contact-rail .bo-claim-panel{margin-top:0}.bo-authority-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991px){.bo-header__nav{display:none}.bo-header__inner{grid-template-columns:auto 1fr auto;gap:12px}.bo-header__tools{grid-column:3}.bo-header__search{display:none}.bo-header__search-button,.bo-header__menu{display:inline-flex}.bo-header__add{min-width:44px;width:44px;padding:0}.bo-header__add span{display:none}.bo-home-hero{grid-template-columns:1fr}.bo-home-hero__copy{padding-right:0}.bo-contribution{grid-template-columns:1fr}.bo-contribution__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-lens-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-lenses{grid-template-columns:repeat(5,160px);overflow-x:auto}.bo-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-home-business{grid-template-columns:1fr}.bo-profile-hero{grid-template-columns:1fr}.bo-profile-identity{min-height:350px}.bo-profile-media{min-height:420px}.bo-contact-rail{grid-column:auto;display:flex;border-top:1px solid var(--bo-border)}.bo-participation-bar{grid-template-columns:1fr}.bo-authority-grid{grid-template-columns:1fr}.bo-profile-body{grid-template-columns:1fr}.bo-profile-side{grid-template-columns:repeat(2,minmax(0,1fr));}.bo-profile-side .bo-profile-state{grid-column:1/-1}}
@media(max-width:767px){:root{--bo-header:58px}.bo-container,.bo-content{width:calc(100% - 32px)}.bo-main{padding-top:18px;padding-bottom:80px}.bo-logo-lockup img{height:25px}.bo-header__notification{display:none}.bo-home{padding-top:12px}.bo-home-hero__copy{padding-top:12px}.bo-home-hero h1{font-size:42px}.bo-home-hero__lede{font-size:15px}.bo-highlight-grid{grid-template-columns:1fr}.bo-activity-strip{align-items:flex-start;flex-direction:column;padding:14px}.bo-activity-strip__items{display:grid;gap:7px}.bo-contribution{padding:18px}.bo-contribution__grid{grid-template-columns:1fr 1fr}.bo-lens-columns{grid-template-columns:1fr}.bo-lens{min-height:0}.bo-lens:nth-child(n+4){display:none}.bo-carousel{grid-auto-columns:82%}.bo-discovery-grid{grid-template-columns:1fr}.bo-discovery-grid .bo-media-card:nth-child(n+5){display:none}.bo-category-grid{grid-template-columns:1fr 1fr}.bo-home-business{grid-template-columns:1fr}.bo-section{margin-top:48px}.bo-section__head{align-items:flex-start;flex-direction:column}.bo-footer__grid{grid-template-columns:1fr 1fr;gap:32px;padding:48px 0}.bo-footer__brand{grid-column:1/-1}.bo-add-launcher__grid{grid-template-columns:1fr}.bo-modal__panel{padding:24px 18px}.bo-profile{padding-top:8px}.bo-breadcrumbs{display:none}.bo-profile-hero{border-radius:12px}.bo-profile-identity{min-height:0;padding:22px;order:2}.bo-profile-media{min-height:280px;order:1}.bo-profile--digital .bo-profile-media{min-height:240px}.bo-profile--digital .bo-profile-media>img{padding:48px}.bo-contact-rail{order:3;padding:20px}.bo-profile-identity h1{font-size:34px}.bo-profile-identity__actions{margin-top:22px}.bo-participation-actions{grid-template-columns:1fr 1fr}.bo-authority-grid{grid-template-columns:1fr}.bo-section-nav{overflow-x:auto;gap:18px;top:var(--bo-header)}.bo-profile-body{gap:12px}.bo-profile-side{grid-template-columns:1fr}.bo-profile-section{padding:18px}.bo-profile-section__head{align-items:flex-start;flex-direction:column}.bo-profile-section__head h2{font-size:25px}.bo-snapshot-grid{grid-template-columns:1fr}.bo-facts-grid{grid-template-columns:1fr}.bo-fact,.bo-fact:nth-child(3n){border-right:0}.bo-findings-grid{grid-template-columns:1fr}.bo-question-grid{grid-template-columns:1fr}.bo-question-card{min-height:0}.bo-alternatives{grid-template-columns:1fr 1fr}.bo-mobile-sticky{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--bo-border);backdrop-filter:blur(14px)}.bo-mobile-sticky .bo-button{padding:0 8px;font-size:11px}.bo-footer{margin-top:48px}.bo-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.bo-contribution__grid,.bo-category-grid,.bo-participation-actions,.bo-alternatives{grid-template-columns:1fr}.bo-home-hero h1{font-size:37px}.bo-carousel{grid-auto-columns:90%}.bo-footer__grid{grid-template-columns:1fr}.bo-footer__brand{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bo-button,.bo-icon-button{transition:none}}
.bo-logo-lockup__compact{display:none!important}.bo-logo-lockup__primary{display:block!important}@media(max-width:420px){.bo-logo-lockup__primary{display:none!important}.bo-logo-lockup__compact{display:block!important;width:34px!important;height:34px!important;object-fit:contain}}
.bogv104-profile-participation{padding:22px;background:var(--bo-white);border:1px solid var(--bo-border);border-radius:var(--bo-r-lg)}.bogv104-profile-participation header p{margin:0;color:var(--bo-gold);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.bogv104-profile-participation header h2{margin:5px 0 18px;font-size:28px}.bogv104-profile-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bogv104-feed-card{padding:15px;border:1px solid var(--bo-border);border-radius:10px}.bogv104-feed-meta{display:flex;justify-content:space-between;color:var(--bo-muted);font-size:9px;text-transform:uppercase}.bogv104-feed-card h3{margin:9px 0;font-size:16px}.bogv104-feed-card p,.bogv104-profile-feed-note{color:var(--bo-muted);font-size:11px}.bogv104-feed-card a{font-size:11px;font-weight:800;color:var(--bo-gold)}@media(max-width:767px){.bogv104-profile-feed{grid-template-columns:1fr}}

/* Build 0107 authority-replication modules. */
.bo-authority-modules{display:grid;gap:24px;margin-top:24px}
.bo-authority-module{padding:24px}
.bo-authority-module__head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}
.bo-authority-module__head h2{margin:0}
.bo-authority-module__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bo-authority-tile{min-height:150px;padding:18px;border:1px solid var(--bo-border);border-radius:var(--bo-r-md);background:var(--bo-surface-subtle)}
.bo-authority-tile h3{font-size:18px;margin:0 0 8px}
.bo-authority-tile p{font-size:13px;color:var(--bo-text-2);margin:0}
.bo-profile-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;margin:0 0 24px}
.bo-profile-gallery figure{margin:0;min-height:180px;border-radius:var(--bo-r-md);overflow:hidden;background:var(--bo-surface-subtle);border:1px solid var(--bo-border)}
.bo-profile-gallery figure:first-child{grid-row:span 2;min-height:368px}
.bo-profile-gallery img{width:100%;height:100%;object-fit:cover}
.bo-profile--digital .bo-profile-gallery img{object-fit:contain;padding:28px}
.bo-rating-panel{display:flex;align-items:center;gap:18px;padding:20px}
.bo-rating-panel img{width:76px;height:76px}
.bo-rating-panel strong{display:block;font-size:28px}.bo-rating-panel small{color:var(--bo-muted)}
.bo-map-hours{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}
.bo-map-placeholder{min-height:220px;display:grid;place-items:center;border-radius:var(--bo-r-md);background:linear-gradient(135deg,var(--bo-blue-soft),var(--bo-surface));border:1px solid var(--bo-border)}
.bo-hours-list{padding:18px;border:1px solid var(--bo-border);border-radius:var(--bo-r-md)}
.bo-hours-list div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--bo-border)}
.bo-hours-list div:first-child{border-top:0}
.bo-media-card--text .bo-media-card__media{display:none}.bo-media-card--text .bo-media-card__body{min-height:300px;padding-top:30px}.bo-media-card--identity .bo-media-card__media img{object-fit:contain;padding:42px;background:var(--bo-surface-subtle)}
.bo-experts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bo-expert-card{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;padding:16px}.bo-expert-card img{width:72px;height:72px;border-radius:50%;object-fit:cover}.bo-expert-card h3{font-size:17px;margin:0 0 4px}.bo-expert-card p{font-size:12px;color:var(--bo-muted);margin:0}
.bo-lab-section{padding:28px;margin-top:24px}.bo-lab-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.bo-lab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}.bo-confidence-bar{height:8px;border-radius:999px;background:var(--bo-border);overflow:hidden}.bo-confidence-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--bo-gold),var(--bo-green))}
@media(max-width:991px){.bo-authority-module__grid,.bo-lab-grid{grid-template-columns:1fr 1fr}.bo-profile-gallery{grid-template-columns:1fr 1fr}.bo-profile-gallery figure:first-child{grid-column:1/-1;grid-row:auto;min-height:360px}}
@media(max-width:767px){.bo-authority-module__head{align-items:flex-start;flex-direction:column}.bo-authority-module__grid,.bo-lab-grid,.bo-experts-grid,.bo-map-hours{grid-template-columns:1fr}.bo-profile-gallery{grid-template-columns:1fr 1fr}.bo-profile-gallery figure:first-child{min-height:280px}.bo-authority-module{padding:18px}.bo-qa-mode{right:8px;bottom:76px}}
/* Build 0107 responsive containment: prevent intrinsic grid/footer widths from escaping the V2 shell. */
.bo-carousel,.bo-authority-grid,.bo-authority-grid>*,.bo-authority-card,.bo-rating-panel,.bo-trust-row,.bo-trust-row>*,.bo-evidence-row,.bo-evidence-row>*{min-width:0}
.bo-carousel{max-width:100%}
.bo-trust-row{grid-template-columns:18px minmax(0,1fr) auto}
.bo-trust-row span,.bo-authority-card h2,.bo-authority-card h3{overflow-wrap:anywhere}
@media(max-width:1199px){.bo-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.bo-footer__brand{grid-column:1/-1}}
@media(max-width:767px){.bo-authority-grid{width:100%;max-width:100%}.bo-trust-row em{white-space:normal;text-align:right}.bo-authority-card,.bo-rating-panel{width:100%;max-width:100%}}
@media(max-width:767px){.bo-rating-panel{display:block}.bo-rating-panel .bo-link{display:inline-block;margin-top:12px}}


/* Gate 3 focused typography correction — added ahead of Build 0108 component build */
.bo0108-marks__group-label{font-size:12px;line-height:16px;font-weight:650}
.bo0108-confidence__meta dt{font-size:12px;line-height:16px;font-weight:650}
.bo0108-review-card__credential{font-size:12px;line-height:16px;font-weight:600}
.bo0108-review-card__relationship{font-size:12px;line-height:16px;font-weight:400}
.bo0108-review-card__date{font-size:12px;line-height:16px;font-weight:400}
.bo0108-review-card__tags li{font-size:12px;line-height:16px;font-weight:650}
.bo0108-review-card__actions button{font-size:12px;line-height:16px;font-weight:650;min-height:36px}
@media(pointer:coarse){.bo0108-review-card__actions button{min-height:44px}}


/* Fix: .bo-home-marks had min-height:220px against ~60px image content, leaving a large blank gap. Let it size to content instead. */
.bo-home-marks{min-height:auto}


/* Fix: header nav reorder to match locked v1.2 design (Discover, Today, Questions, Community, Profiles, My Best). Done via CSS order rather than editing the PHP source line order, since the six nav_link() calls are identical in shape and safer to leave untouched. Covers desktop header nav and the mobile drawer nav. */
.bo-header__nav{display:flex}
.bo-header__nav a:nth-child(1),#bo-mobile-drawer nav a:nth-child(1){order:1}
.bo-header__nav a:nth-child(2),#bo-mobile-drawer nav a:nth-child(2){order:5}
.bo-header__nav a:nth-child(3),#bo-mobile-drawer nav a:nth-child(3){order:3}
.bo-header__nav a:nth-child(4),#bo-mobile-drawer nav a:nth-child(4){order:2}
.bo-header__nav a:nth-child(5),#bo-mobile-drawer nav a:nth-child(5){order:4}
.bo-header__nav a:nth-child(6),#bo-mobile-drawer nav a:nth-child(6){order:6}


/* Fix: hero's primary CTA changed from <button> to <a> (Find the best), and a more specific body.bo-platform-shell a color rule was winning over the plain .bo-button--navy class rule, leaving the text nearly invisible against its own background. Scoped tighter to reliably win. */
body.bo-platform-shell a.bo-button--navy,body.bo-platform-shell a.bo-button--navy:hover,body.bo-platform-shell a.bo-button--navy:visited{color:var(--bo-white)}




/* Hero polish pass — exact pixel values pulled directly from the locked v1.2 design file, not reused from old sitewide classes. New dedicated classes so nothing here can drift from the shared .bo-button/.bo-eyebrow used elsewhere. */
.bo-home-hero__actions{display:flex;flex-wrap:wrap;gap:8px}

.bo-home-hero__copy h1{font-size:clamp(30px,3.4vw,42px);font-weight:800;line-height:1.1;letter-spacing:-.025em}
.bo-home-hero__copy h1 em{display:block;font-style:normal}

.bo-home-hero__copy>.bo-eyebrow{font-size:11px}

.bo-trust-inline span{font-size:11px;font-weight:700;color:#475467;text-transform:uppercase}


/* Scoped override: exact hero CTA sizing from the locked v1.2 design, applied only to buttons inside the hero (leaves .bo-button unchanged everywhere else on the site). Written this way as a fast, safe path via the WP Plugin Editor. */
.bo-home-hero__actions .bo-button{height:38px;padding:0 14px;font-size:12.5px;font-weight:600;gap:7px}
.bo-home-hero__actions .bo-button--navy{background:#14161A}
.bo-home-hero__actions .bo-button--navy:hover{background:#2A2E35}
.bo-home-hero__actions .bo-button--outline{border:1px solid #D0D5DD}
.bo-home-hero__actions .bo-button--outline:hover{background:#F7F7F3;border-color:#D8D8D2}


/* Fix: trust-badge row spacing to exact locked v1.2 values (design: gap 8px row / 18px column, margin-top 24px; live base rule had a single 18px gap and margin-top:16px). */
.bo-trust-inline{gap:8px 18px;margin-top:24px}

/* TEMPORARY REVIEW MODE: hides every homepage section below the hero that hasn't been rebuilt to the locked v1.2 design yet, so Phase 1 (nav + hero) can be reviewed cleanly without older, untouched sections causing confusion. Verified via direct DOM query that .bo-home-hero is one of ten direct children of .bo-main.bo-home .bo-container. Admin-only page regardless; remove this block once no longer needed for review. */
.bo-main.bo-home .bo-container>*:not(.bo-home-hero){display:none}


/* Refinement: the highlights card is nested INSIDE .bo-home-hero as its right-column grid child (not a sibling section), so the rule above did not catch it. It is old content, not part of the v1.2 hero design (which has a trending collage there instead), so hide it too for an accurate review. */
.bo-home-hero>.bo-highlights{display:none}


/* Phase 2: Rising Now leaderboard. Exact values from the locked v1.2 design file. Populated with clearly-fictional demo content for now (see the PHP template comment)  this section has no existing real-data equivalent (velocity/rise tracking does not exist yet in the data model), so real-data wiring is a separate follow-up, not something to fake into looking real today. */
.bo-leaderboard{margin-top:var(--bo-s12)}
.bo-leaderboard__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:6px;flex-wrap:wrap}
.bo-leaderboard__title-group{display:flex;align-items:center;gap:12px}
.bo-leaderboard__title-group h2{font-weight:800;font-size:23px;letter-spacing:-.02em;margin:0}
.bo-leaderboard__live{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:800;letter-spacing:.06em;color:#16A34A;background:#E8F6EC;border-radius:999px;padding:4px 10px}
.bo-leaderboard__live-dot{width:6px;height:6px;border-radius:999px;background:#22C55E;animation:bo-pulse 2s ease-in-out infinite}
@keyframes bo-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.bo-leaderboard__actions{display:inline-flex;align-items:center;gap:14px}
.bo-leaderboard__surprise{height:34px;padding:0 16px;border:0;border-radius:999px;background:var(--bo-gold);color:#FFFFFF;font-family:var(--bo-font);font-size:12px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:7px;box-shadow:0 4px 12px rgba(216,162,27,.35);white-space:nowrap;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}
.bo-leaderboard__surprise:hover{background:#E3B02F;transform:translateY(-1px);box-shadow:0 8px 18px rgba(216,162,27,.45)}
.bo-leaderboard__view-all{font-size:12px;font-weight:600;color:#B45309}
.bo-leaderboard__desc{font-size:12px;color:var(--bo-muted);margin:0 0 16px}
.bo-leaderboard__list{background:#FFFFFF;border:1px solid var(--bo-border);border-radius:16px;overflow:hidden}
.bo-leaderboard__row{display:grid;grid-template-columns:44px 52px 1fr auto auto;gap:16px;align-items:center;padding:13px 20px;border-bottom:1px solid #F4F4F1;transition:background .15s ease}
.bo-leaderboard__row:last-child{border-bottom:0}
.bo-leaderboard__row:hover{background:#FBFAF7}
.bo-leaderboard__rank{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.bo-leaderboard__crown{width:29px;display:block}
.bo-leaderboard__rank-num{font-weight:800;line-height:1}
.bo-leaderboard__rank-num--crowned{font-size:11.5px}
.bo-leaderboard__rank-num--plain{font-size:23px}
.bo-leaderboard__media{width:52px;height:52px;border-radius:12px;object-fit:cover;display:block}
.bo-leaderboard__tile{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.bo-leaderboard__info{min-width:0}
.bo-leaderboard__title{display:block;font-size:13.5px;font-weight:700;color:var(--bo-text);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bo-leaderboard__meta{display:flex;gap:12px;align-items:center;margin-top:4px}
.bo-leaderboard__cat{font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.bo-leaderboard__velocity{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:700;color:#16A34A}
.bo-leaderboard__comments{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--bo-muted)}
.bo-leaderboard__rise{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 15px;border:1.5px solid #F5A623;border-radius:999px;background:#FFFFFF;color:#B45309;font-weight:800;font-size:12px;font-family:var(--bo-font);cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease}
.bo-leaderboard__rise:hover{background:var(--bo-gold);color:#FFFFFF;transform:translateY(-1px)}
@media(max-width:767px){.bo-leaderboard__row{grid-template-columns:36px 44px 1fr auto;gap:10px;padding:12px 14px}.bo-leaderboard__comments{display:none}}


/* Review-mode update: also show the new Phase 2 leaderboard section (built and verified this pass), not just the hero. */
.bo-main.bo-home .bo-container>.bo-leaderboard{display:block!important}
/* Review-mode update: also show the new Phase 3 content-type ticker and community sections (built and verified this pass). */
.bo-main.bo-home .bo-container>.bo-ticker{display:block!important}
.bo-main.bo-home .bo-container>.bo-community{display:block!important}

/* Phase 3: content-type ticker marquee. Exact values from the locked v1.2 design. */
.bo-ticker{position:relative;overflow:hidden;margin-top:var(--bo-s3)}
.bo-ticker__track{display:flex;gap:10px;width:max-content;animation:bo-marquee 48s linear infinite}
.bo-ticker__track:hover{animation-play-state:paused}
@keyframes bo-marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.bo-ticker__pill{display:inline-flex;align-items:center;gap:8px;background:#FFFFFF;border:1px solid var(--bo-border);border-radius:999px;padding:8px 15px;font-size:12px;font-weight:600;color:var(--bo-text-2);white-space:nowrap;transition:border-color .15s ease,color .15s ease;text-decoration:none}
.bo-ticker__pill:hover{border-color:var(--bo-gold);color:var(--bo-text)}
.bo-ticker__dot{width:7px;height:7px;border-radius:999px;display:inline-block;flex-shrink:0}
.bo-ticker__fade{position:absolute;top:0;bottom:0;width:60px;pointer-events:none}
.bo-ticker__fade--left{left:0;background:linear-gradient(90deg,var(--bo-bg),rgba(248,250,252,0))}
.bo-ticker__fade--right{right:0;background:linear-gradient(270deg,var(--bo-bg),rgba(248,250,252,0))}

/* Phase 3: Live from the community cards. Exact values from the locked v1.2 design. */
.bo-community{margin-top:var(--bo-s12)}
.bo-community__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:4px;flex-wrap:wrap}
.bo-community__title-group{display:flex;align-items:center;gap:8px}
.bo-community__title-group h2{font-weight:800;font-size:19px;letter-spacing:-.01em;margin:0}
.bo-community__live-dot{width:6px;height:6px;border-radius:999px;background:#22C55E;animation:bo-pulse 2s ease-in-out infinite;display:inline-block}
.bo-community__view-all{font-size:12px;font-weight:600;color:#B45309}
.bo-community__desc{font-size:12px;color:var(--bo-muted);margin:0 0 16px}
.bo-community__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}
.bo-community-card{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid var(--bo-border);border-radius:16px;padding:22px;transition:box-shadow .18s ease}
.bo-community-card:hover{box-shadow:0 10px 26px rgba(16,33,58,.08)}
.bo-community-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}
.bo-community-card__badge{font-size:10px;font-weight:700;letter-spacing:.06em;border-radius:6px;padding:4px 9px;text-transform:uppercase}
.bo-community-card__meta{font-size:11px;color:var(--bo-muted);display:inline-flex;align-items:center;gap:5px}
.bo-community-card__question{font-size:16px;font-weight:800;color:var(--bo-text);line-height:1.3;margin-bottom:16px}
.bo-community-card__cta{height:34px;padding:0 18px;border:1px solid var(--bo-border-strong);border-radius:999px;background:#FFFFFF;color:var(--bo-text);font-family:var(--bo-font);font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}
.bo-community-card__cta:hover{background:#FFF8E7;border-color:#F5A623}
.bo-community-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}

.bo-poll__options{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}
.bo-poll__option{position:relative;display:flex;align-items:center;justify-content:space-between;height:34px;border-radius:9px;background:#F6F6F2;overflow:hidden;padding:0 12px;cursor:pointer;border:1px solid transparent;transition:border-color .15s ease}
.bo-poll__option:hover{border-color:#F5A623}
.bo-poll__option-fill{position:absolute;left:0;top:0;bottom:0;background:#FDE9C8}
.bo-poll__option-label{position:relative;font-size:12px;font-weight:700;color:var(--bo-text)}
.bo-poll__option-pct{position:relative;font-size:12px;font-weight:700;color:#B45309}
.bo-poll__option-pct--muted{font-weight:600;color:var(--bo-muted)}

.bo-debate__split{display:flex;height:34px;border-radius:9px;overflow:hidden;font-size:12px;font-weight:800;color:#FFFFFF;margin-bottom:12px}
.bo-debate__side{display:flex;align-items:center;padding:0 12px}
.bo-debate__side--yes{background:#16A34A}
.bo-debate__side--no{background:#DC2626;justify-content:flex-end}
.bo-debate__quotes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.bo-debate__quote{border-radius:10px;padding:10px 12px;font-size:11px;line-height:1.45}
.bo-debate__quote--for{background:#F0FAF3;color:#166534}
.bo-debate__quote--against{background:#FCF1F1;color:#991B1B}

.bo-convo__replies{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.bo-convo__reply{display:flex;gap:9px;align-items:flex-start}
.bo-convo__avatar{width:24px;height:24px;border-radius:999px;object-fit:cover;flex-shrink:0}
.bo-convo__bubble{background:#F6F6F2;border-radius:10px;padding:8px 12px;font-size:12px;color:var(--bo-text-2);line-height:1.45}
.bo-convo__input{display:flex;align-items:center;gap:9px;margin-top:auto;border:1px solid var(--bo-border-strong);border-radius:999px;padding:8px 14px;cursor:text;transition:border-color .15s ease}
.bo-convo__input:hover{border-color:#F5A623}
.bo-convo__input img{width:22px;height:22px;border-radius:999px;object-fit:cover}
.bo-convo__input span{font-size:12px;color:var(--bo-disabled)}

.bo-ama__expert{display:flex;gap:14px;align-items:center;margin-bottom:14px}
.bo-ama__avatar-wrap{position:relative;flex-shrink:0}
.bo-ama__avatar{width:64px;height:64px;border-radius:999px;object-fit:cover;border:3px solid #F3EEFC}
.bo-ama__avatar-dot{position:absolute;bottom:2px;right:2px;width:14px;height:14px;border-radius:999px;background:#22C55E;border:2.5px solid #FFFFFF}
.bo-ama__name{display:block;font-size:16px;font-weight:800;color:var(--bo-text)}
.bo-ama__role{display:block;font-size:12px;color:var(--bo-muted);margin-top:2px}
.bo-ama__prompt{font-size:13px;color:var(--bo-text-2);line-height:1.5;margin-bottom:14px}

@media(max-width:767px){.bo-community__grid{grid-template-columns:1fr}.bo-debate__quotes{grid-template-columns:1fr}}

/* ===== Sprint 2: Share Launcher, Best Lists, Explore by Category. Exact values from the locked v1.2 design. ===== */
.bo-share-launcher{}
.bo-share-launcher__card{background:#FBF3E4;border:1px solid #F3E5C9;border-radius:16px;padding:15px 22px 16px;position:relative}
.bo-share-launcher__head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px;gap:12px;flex-wrap:wrap}
.bo-share-launcher__title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--bo-text)}
.bo-share-launcher__subtitle{font-size:12.5px;color:var(--bo-muted);margin-top:3px}
.bo-share-launcher__stat{align-self:center;display:inline-flex;align-items:center;gap:7px;background:#FFFFFF;border:1px solid #F3E5C9;border-radius:999px;padding:7px 14px;font-size:11.5px;color:var(--bo-muted);white-space:nowrap}
.bo-share-launcher__stat strong{color:var(--bo-text);font-weight:700}
.bo-share-launcher__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.bo-share-tile{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 8px 18px;border:1px solid #FFFFFF;border-radius:12px;background:#FFFFFF;box-shadow:0 1px 2px rgba(16,33,58,.04);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;text-decoration:none}
.bo-share-tile:hover{border-color:var(--bo-gold);transform:translateY(-2px);box-shadow:0 8px 20px rgba(180,130,20,.14)}
.bo-share-tile__icon{height:44px;display:flex;align-items:center;justify-content:center}
.bo-share-tile__label{font-size:12px;font-weight:700;color:var(--bo-text);text-align:center;line-height:1.3}
@media(max-width:900px){.bo-share-launcher__grid{grid-template-columns:repeat(3,1fr)}}

.bo-best-lists{}
.bo-best-lists__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px;flex-wrap:wrap;gap:8px}
.bo-best-lists__head h2{font-weight:800;font-size:19px;letter-spacing:-.01em;margin:0}
.bo-best-lists__view-all{font-size:12px;font-weight:600;color:#B45309}
.bo-best-lists__desc{font-size:12px;color:var(--bo-muted);margin:0 0 16px}
.bo-best-lists__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.bo-list-card{position:relative;display:block;height:150px;border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(16,33,58,.04);transition:box-shadow .18s ease,transform .18s ease;text-decoration:none}
.bo-list-card:hover{box-shadow:0 12px 28px rgba(16,33,58,.16);transform:translateY(-2px)}
.bo-list-card__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bo-list-card__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,18,26,.02) 28%,rgba(14,18,26,.86) 100%)}
.bo-list-card__cat{position:absolute;top:10px;left:10px;font-size:9px;font-weight:700;letter-spacing:.06em;color:#FFFFFF;background:rgba(14,18,26,.55);border-radius:5px;padding:3px 8px;text-transform:uppercase}
.bo-list-card__save{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;transition:background .15s ease}
.bo-list-card__save:hover{background:var(--bo-gold)}
.bo-list-card__foot{position:absolute;left:14px;right:14px;bottom:12px}
.bo-list-card__title{display:block;font-size:14.5px;font-weight:800;color:#FFFFFF;line-height:1.3}
.bo-list-card__meta{display:block;font-size:11px;color:rgba(255,255,255,.82);margin-top:3px}
@media(max-width:900px){.bo-best-lists__grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.bo-best-lists__grid{grid-template-columns:1fr}}

.bo-explore-category{}
.bo-explore-category__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px;flex-wrap:wrap;gap:8px}
.bo-explore-category__head h2{font-weight:800;font-size:19px;letter-spacing:-.01em;margin:0}
.bo-explore-category__view-all{font-size:12px;font-weight:600;color:#B45309}
.bo-explore-category__desc{font-size:12px;color:var(--bo-muted);margin:0 0 16px}
.bo-explore-category__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.bo-category-tile{display:flex;gap:11px;align-items:center;border:1px solid rgba(14,18,26,.04);border-radius:14px;padding:13px 14px;transition:box-shadow .18s ease,transform .18s ease;text-decoration:none}
.bo-category-tile:hover{box-shadow:0 10px 24px rgba(16,33,58,.13);transform:translateY(-2px)}
.bo-category-tile__icon{width:38px;height:38px;border-radius:999px;background:#FFFFFF;box-shadow:0 1px 3px rgba(16,33,58,.08);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.bo-category-tile__name{display:block;font-size:12px;font-weight:800;color:var(--bo-text);line-height:1.3}
.bo-category-tile__picks{display:block;font-size:10px;font-weight:700;margin-top:2px}
@media(max-width:900px){.bo-explore-category__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.bo-explore-category__grid{grid-template-columns:repeat(2,1fr)}}

/* Review-mode update: show the three new Sprint 2 sections (built and verified this pass), matching the leaderboard/ticker/community reveal pattern above. */
.bo-main.bo-home .bo-container>.bo-share-launcher{display:block!important}
.bo-main.bo-home .bo-container>.bo-best-lists{display:block!important}
.bo-main.bo-home .bo-container>.bo-explore-category{display:block!important}
/* Sprint 2: the old .bo-contribution share block is superseded by the new .bo-share-launcher. It is already hidden by the base review-mode rule (it has no reveal line, exactly like the other old sections), so this explicit line only documents and locks that intent. NB: the brief asked to add .bo-contribution to the :not() exclusion list, but in this file's mechanism that would REVEAL it, so an explicit hide is used instead. */
.bo-main.bo-home .bo-container>.bo-contribution{display:none!important}

/* ===== Sprint 3 Section 1: The BEST OF Promise. Exact values from the locked design. ===== */
.bo-best-of-promise{}
.bo-best-of-promise__card{position:relative;background:#FFFFFF;border:1px solid var(--bo-border);border-radius:20px;padding:36px 40px 32px;overflow:hidden}
.bo-best-of-promise__watermark{position:absolute;right:-30px;bottom:-40px;width:210px;opacity:.05;transform:rotate(-8deg);pointer-events:none}
.bo-best-of-promise__head{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:24px}
.bo-best-of-promise__mark{width:46px;height:46px;border-radius:12px;box-shadow:0 4px 14px rgba(14,34,58,.18);margin-bottom:14px}
.bo-best-of-promise__head h2{font-weight:800;font-size:21px;letter-spacing:-.01em;margin:0 0 5px}
.bo-best-of-promise__subtitle{font-size:12.5px;color:var(--bo-muted);margin:0 0 16px}
.bo-best-of-promise__badges{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.bo-best-of-promise__badge{display:inline-flex;align-items:center;gap:6px;border:1px solid #D0D5DD;border-radius:999px;padding:6px 13px;font-size:10.5px;font-weight:800;letter-spacing:.06em;color:#475467;background:#FFFFFF}
.bo-best-of-promise__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.bo-promise-card{background:#FBFBFA;border:1px solid #F0F0EC;border-radius:14px;padding:20px}
.bo-promise-card__bar{display:block;width:26px;height:3px;border-radius:2px;background:var(--bo-gold);margin-bottom:12px}
.bo-promise-card__eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#B45309;margin-bottom:5px}
.bo-promise-card__title{display:block;font-size:15.5px;font-weight:800;color:var(--bo-text);line-height:1.3;margin-bottom:7px}
.bo-promise-card__body{display:block;font-size:12.5px;color:#475467;line-height:1.55}
.bo-best-of-promise__foot{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.bo-best-of-promise__avatars{display:flex}
.bo-best-of-promise__avatar{width:26px;height:26px;border-radius:999px;border:2px solid #FFFFFF;margin-left:-8px;box-shadow:0 0 0 1px var(--bo-border);background:#E5E7EB}
.bo-best-of-promise__count{font-size:12px;font-weight:600;color:#475467}
.bo-best-of-promise__cta{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 18px;border:1.5px solid #F5A623;border-radius:999px;font-size:12px;font-weight:800;color:#B45309;background:#FFFFFF;text-decoration:none;transition:background .15s ease,color .15s ease}
.bo-best-of-promise__cta:hover{background:var(--bo-gold);color:#FFFFFF}
@media(max-width:900px){.bo-best-of-promise__grid{grid-template-columns:1fr}}
/* Review-mode reveal for Sprint 3 Section 1 */
.bo-main.bo-home .bo-container>.bo-best-of-promise{display:block!important}

/* ===== Sprint 3 Section 2: Business/Marks Band. Exact values from the locked design. ===== */
.bo-business-marks{}
.bo-business-marks__inner{position:relative;background:#080C0F;color:#EDF1F8;border-radius:20px;padding:40px 44px;display:grid;grid-template-columns:5fr 4fr;gap:44px;overflow:hidden}
.bo-business-marks__intro h2{font-weight:800;font-size:22px;letter-spacing:-.01em;margin:0 0 8px;color:#FFFFFF}
.bo-business-marks__intro p{font-size:13px;color:#9DA9BF;margin:0 0 16px}
.bo-business-marks__checklist{display:flex;flex-direction:column;gap:9px;margin-bottom:22px}
.bo-business-marks__check-item{display:flex;gap:9px;align-items:baseline;font-size:12.5px;color:#C9D2E0}
.bo-business-marks__btn-row{display:flex;flex-wrap:wrap;gap:10px}
.bo-business-marks__btn-primary{display:inline-block;background:var(--bo-gold);color:#10213A;font-size:12.5px;font-weight:700;border-radius:999px;padding:11px 20px;text-decoration:none;transition:background .15s ease,transform .15s ease}
.bo-business-marks__btn-primary:hover{background:#E3B02F;transform:translateY(-1px)}
.bo-business-marks__btn-outline{display:inline-block;border:1px solid rgba(255,255,255,.28);color:#FFFFFF;font-size:12.5px;font-weight:600;border-radius:999px;padding:11px 20px;text-decoration:none;transition:background .15s ease,border-color .15s ease}
.bo-business-marks__btn-outline:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}
.bo-business-marks__marks-section{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:32px}
.bo-business-marks__marks-head{display:flex;align-items:baseline;gap:14px;margin-bottom:6px;flex-wrap:wrap}
.bo-business-marks__marks-title{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:800;color:#FFFFFF}
.bo-business-marks__marks-tagline{font-size:12px;color:#9DA9BF}
.bo-business-marks__marks-viewall{margin-left:auto;font-size:12px;font-weight:600;color:#EDC550;text-decoration:none;white-space:nowrap}
.bo-marks-tier{padding:18px 0 20px;border-bottom:1px solid rgba(255,255,255,.07)}
.bo-marks-tier:last-of-type{border-bottom:0;padding-bottom:4px}
.bo-marks-tier__head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.bo-marks-tier__label{font-size:10px;font-weight:800;letter-spacing:.1em;color:#EDC550}
.bo-marks-tier__desc{font-size:10.5px;color:#9DA9BF}
.bo-marks-tier__row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.bo-marks-tier__badge-img{width:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}
.bo-marks-tier__badge-fallback{display:inline-flex;align-items:center;justify-content:center;height:84px;padding:0 18px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#EDC550;font-size:11px;font-weight:800;text-align:center}
.bo-business-marks__footer-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:24px;padding-top:26px;border-top:1px solid rgba(255,255,255,.12)}
.bo-business-marks__footer-note{font-size:11.5px;color:#9DA9BF}
.bo-business-marks__stats-label{font-size:13px;font-weight:700;color:#FFFFFF;margin-bottom:18px}
.bo-business-marks__stat-list{display:flex;flex-direction:column;gap:16px;margin-bottom:22px}
.bo-business-marks__stat-value{display:block;font-size:24px;font-weight:800;color:var(--bo-gold)}
.bo-business-marks__stat-label{font-size:11.5px;color:#9DA9BF}
@media(max-width:900px){.bo-business-marks__inner{grid-template-columns:1fr}}
/* Review-mode reveal for Sprint 3 Section 2 */
.bo-main.bo-home .bo-container>.bo-business-marks{display:block!important}

/* ===== Sprint 3 Section 3: Today Front Page. Exact values from the locked design. ===== */
.bo-today-front{}
.bo-today-front__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px;flex-wrap:wrap;gap:8px}
.bo-today-front__title-group{display:inline-flex;align-items:baseline;gap:12px}
.bo-today-front__title-group h2{font-weight:800;font-size:19px;letter-spacing:-.01em;margin:0}
.bo-today-front__date{font-size:11.5px;font-weight:600;color:var(--bo-muted)}
.bo-today-front__view-edition{font-size:12px;font-weight:600;color:#B45309}
.bo-today-front__desc{font-size:12px;color:var(--bo-muted);margin:0 0 16px}
.bo-today-front__row1{display:grid;grid-template-columns:5fr 7fr;gap:14px;align-items:stretch}
.bo-today-hero{position:relative;display:block;border-radius:16px;overflow:hidden;min-height:380px;box-shadow:0 1px 2px rgba(16,33,58,.04);transition:box-shadow .18s ease,transform .18s ease;text-decoration:none}
.bo-today-hero:hover{box-shadow:0 12px 30px rgba(16,33,58,.14);transform:translateY(-2px)}
.bo-today-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bo-today-hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,18,26,0) 22%,rgba(14,18,26,.92) 100%)}
.bo-today-hero__badge{position:absolute;top:14px;left:14px;font-size:9px;font-weight:700;letter-spacing:.08em;border-radius:5px;padding:4px 8px;color:#10213A;background:var(--bo-gold)}
.bo-today-hero__foot{position:absolute;left:18px;right:18px;bottom:16px}
.bo-today-hero__headline{display:block;font-size:22px;font-weight:800;color:#FFFFFF;line-height:1.25;margin-bottom:7px}
.bo-today-hero__subline{display:block;font-size:12px;color:rgba(255,255,255,.85);margin-bottom:10px}
.bo-today-hero__stats{display:flex;gap:18px;font-size:11px;color:rgba(255,255,255,.9);font-weight:600}
.bo-today-hero__stat{display:inline-flex;align-items:center;gap:5px}
.bo-today-front__grid2x2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.bo-today-card{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid var(--bo-border);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(16,33,58,.04);transition:box-shadow .18s ease,transform .18s ease;text-decoration:none}
.bo-today-card:hover{box-shadow:0 10px 26px rgba(16,33,58,.10);transform:translateY(-2px)}
.bo-today-card__img-wrap{position:relative;display:block;height:118px}
.bo-today-card__img{width:100%;height:118px;object-fit:cover;display:block}
.bo-today-card__badge{position:absolute;top:8px;left:8px;font-size:9px;font-weight:700;letter-spacing:.06em;border-radius:5px;padding:3px 7px;color:#FFFFFF}
.bo-today-card__body{display:flex;flex-direction:column;flex:1;padding:11px 12px 12px}
.bo-today-card__title{font-size:13px;font-weight:700;color:var(--bo-text);line-height:1.35}
.bo-today-card__meta{display:flex;gap:14px;align-items:center;font-size:10.5px;color:var(--bo-muted);margin-top:auto;padding-top:8px}
.bo-today-card__rating{color:var(--bo-gold);font-weight:700}
.bo-today-card__rating span{color:var(--bo-muted);font-weight:500}
.bo-today-card__rise{color:#B45309;font-weight:700;display:inline-flex;align-items:center;gap:5px}
.bo-today-front__row2{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px}
@media(max-width:900px){.bo-today-front__row1{grid-template-columns:1fr}.bo-today-front__grid2x2{grid-template-columns:1fr 1fr}.bo-today-front__row2{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.bo-today-front__row2{grid-template-columns:1fr}}
/* Review-mode reveal for Sprint 3 Section 3 */
.bo-main.bo-home .bo-container>.bo-today-front{display:block!important}

/* ===== Sprint 5: Stats CTA band. Exact values from the locked design. Footer-links portion intentionally omitted: the site already renders its own .bo-footer (brand, link columns, copyright), so per the brief only the CTA band + stats are added here to avoid a duplicate footer. ===== */
.bo-stats-footer{}
.bo-stats-footer__band{background:#080C0F;color:#EDF1F8;border-radius:20px;overflow:hidden;position:relative}
.bo-stats-footer__cta-row{display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:center;padding:38px 44px}
.bo-stats-footer__cta-row h2{font-weight:800;font-size:24px;letter-spacing:-.01em;margin:0 0 8px;color:#FFFFFF}
.bo-stats-footer__cta-row p{font-size:12.5px;color:#9DA9BF;line-height:1.6;margin:0 0 16px}
.bo-stats-footer__cta-btns{display:flex;gap:10px}
.bo-stats-footer__btn-primary{display:inline-block;background:var(--bo-gold);color:#10213A;font-size:12.5px;font-weight:700;border-radius:999px;padding:11px 20px;text-decoration:none;transition:background .15s ease,transform .15s ease}
.bo-stats-footer__btn-primary:hover{background:#E3B02F;transform:translateY(-1px)}
.bo-stats-footer__btn-outline{display:inline-block;border:1px solid rgba(255,255,255,.28);color:#FFFFFF;font-size:12.5px;font-weight:600;border-radius:999px;padding:11px 20px;text-decoration:none;transition:background .15s ease,border-color .15s ease}
.bo-stats-footer__btn-outline:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}
.bo-stats-footer__stats-grid{display:flex;gap:40px;flex-wrap:wrap;margin-bottom:18px}
.bo-stats-footer__stat-value{display:block;font-size:24px;font-weight:800;color:var(--bo-gold)}
.bo-stats-footer__stat-label{font-size:11.5px;color:#9DA9BF}
.bo-stats-footer__people-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bo-stats-footer__avatars{display:flex}
.bo-stats-footer__avatar{width:26px;height:26px;border-radius:999px;border:2px solid #080C0F;margin-left:-8px;background:#E5E7EB}
.bo-stats-footer__people-label{font-size:12px;font-weight:600;color:#EDF1F8}
.bo-stats-footer__people-note{font-size:11.5px;color:#9DA9BF}
@media(max-width:900px){.bo-stats-footer__cta-row{grid-template-columns:1fr}}
/* Review-mode reveal for Sprint 5 */
.bo-main.bo-home .bo-container>.bo-stats-footer{display:block!important}


/* Header correction pass — brings the header closer to the locked design.
   Scoped to the header only. Deliberately styling-only: the search field,
   avatar and notification badge differences are functional/data changes, not
   CSS, and are listed separately rather than faked here. */
.bo-logo-lockup__primary{height:40px;width:auto}
.bo-header__nav{flex:1 1 auto;justify-content:center}
.bo-header__nav-link.is-active{color:var(--bo-gold)}
.bo-header__tools{flex:0 0 auto}
.bo-header__tools .bo-button{border-radius:999px}
@media(max-width:1100px){.bo-logo-lockup__primary{height:32px}.bo-header__nav{justify-content:flex-start}}


/* Hero CTA buttons — exact values pulled from the locked v1.2 design file.
   Previous pass set height:38px but the shared .bo-button min-height:44px was
   winning, and border-radius was never set at all, so they rendered as 44px
   rounded rectangles instead of 38px pills. min-height is now overridden
   explicitly and every value below is the design's own. */
.bo-home-hero__actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.bo-home-hero__actions .bo-button{
  height:38px;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  font-size:12.5px;
  font-weight:600;
  gap:7px;
  white-space:nowrap;
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
}


/* Hero trending collage — the hero's right column. Exact slot positions,
   rotations and z-indexes taken from the locked v1.2 design's _slots array.
   This was specified in the original design and had never been built. */
.bo-hero-collage{position:relative;min-height:470px;width:100%}
.bo-hero-collage__card{position:absolute;background:#FFFFFF;border:1px solid #E5E7EB;border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(16,33,58,.10);display:flex;flex-direction:column;transition:box-shadow .2s ease,transform .55s ease;cursor:pointer;text-decoration:none}
.bo-hero-collage__card:hover{box-shadow:0 16px 40px rgba(16,33,58,.16);transform:rotate(0deg) translateY(-4px)!important;z-index:5}
.bo-hero-collage__card--1{left:0;top:12px;width:31%;min-width:138px;z-index:3;transform:rotate(-5deg)}
.bo-hero-collage__card--2{left:34.5%;top:0;width:31%;min-width:138px;z-index:2;transform:rotate(2deg)}
.bo-hero-collage__card--3{left:70%;top:16px;width:29.5%;min-width:135px;z-index:1;transform:rotate(3deg)}
.bo-hero-collage__card--4{left:12%;top:214px;width:30.5%;min-width:138px;z-index:2;transform:rotate(4deg)}
.bo-hero-collage__card--5{left:43.5%;top:228px;width:28.5%;min-width:135px;z-index:3;transform:rotate(-2deg)}
.bo-hero-collage__card--6{left:72.5%;top:208px;width:27.5%;min-width:132px;z-index:1;transform:rotate(-4deg)}
.bo-hero-collage__media{position:relative;height:96px}
.bo-hero-collage__media img{width:100%;height:96px;object-fit:cover;display:block}
.bo-hero-collage__badge{position:absolute;top:8px;left:8px;font-size:9px;font-weight:700;letter-spacing:.06em;border-radius:5px;padding:3px 7px;color:#FFFFFF}
.bo-hero-collage__badge--chip{position:static;display:inline-block;color:inherit}
.bo-hero-collage__chiprow{padding:8px 12px 0}
.bo-hero-collage__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.bo-hero-collage__play span{width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;font-size:12px;color:#10213A}
.bo-hero-collage__body{padding:11px 12px 12px;display:flex;flex-direction:column;flex:1}
.bo-hero-collage__body h3{font-size:13px;font-weight:700;line-height:1.35;margin:0 0 4px;color:var(--bo-text)}
.bo-hero-collage__body p{font-size:10.5px;color:#667085;line-height:1.4;margin:0 0 3px}
.bo-hero-collage__rating{font-size:10px;color:#96700D;font-weight:700;margin-bottom:7px}
.bo-hero-collage__rating span{color:#667085;font-weight:500}
.bo-hero-collage__stats{display:flex;gap:12px;align-items:center;margin-top:auto;font-size:10.5px;font-weight:700}
.bo-hero-collage__rise{color:#B45309;display:inline-flex;align-items:center;gap:4px}
.bo-hero-collage__comments{color:#667085;font-weight:500;display:inline-flex;align-items:center;gap:4px}
.bo-hero-collage__sparkle{position:absolute;z-index:4;pointer-events:none}

/* Hero follower stats row, sits under the CTA buttons per the design. */
.bo-hero-stats{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.bo-hero-stats__avatars{display:flex}
.bo-hero-stats__avatars span{width:24px;height:24px;border-radius:999px;border:2px solid #F8FAFC;margin-left:-8px;background:#E5E7EB;display:inline-block}
.bo-hero-stats__avatars span:first-child{margin-left:0}
.bo-hero-stats__text{font-size:12px;font-weight:600;color:#475467}

@media(max-width:900px){.bo-hero-collage{display:none}}


/* Collage typography and media sizing — raised specificity. The base rules
   were being overridden by broader heading/image rules, rendering h3 at 24px
   and media at 114px instead of the design's 13px and 96px. */
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__media{height:96px;flex:0 0 96px}
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__media img{height:96px;width:100%;object-fit:cover;display:block}
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__body h3{font-size:13px;font-weight:700;line-height:1.35;margin:0 0 4px;letter-spacing:normal}
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__body p{font-size:10.5px;line-height:1.4;margin:0 0 3px;color:#667085}
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__rating{font-size:10px;margin-bottom:7px}
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__stats{font-size:10.5px}
body.bo-platform-shell .bo-hero-collage__card .bo-hero-collage__badge{font-size:9px;line-height:1.2}


/* Logo sizing — a more specific existing rule was pinning this to 30px, so the
   earlier 40px never applied. Matching specificity here rather than !important. */
body.bo-platform-shell .bo-header .bo-logo-lockup .bo-logo-lockup__primary{height:40px;width:auto;max-height:none}
@media(max-width:1100px){body.bo-platform-shell .bo-header .bo-logo-lockup .bo-logo-lockup__primary{height:32px}}


/* HEADER — values extracted literally from the locked v1.2 design markup,
   not inferred. Design reference values noted per line so any future drift
   is checkable against the source rather than re-guessed. */
body.bo-platform-shell .bo-header{background:rgba(248,250,252,.94);backdrop-filter:blur(12px);border-bottom:1px solid #E5E7EB}
body.bo-platform-shell .bo-header .bo-header__inner{height:68px;gap:18px;align-items:center}
body.bo-platform-shell .bo-header .bo-logo-lockup .bo-logo-lockup__primary{height:42px;width:auto;max-height:none;display:block}
body.bo-platform-shell .bo-header .bo-header__nav{gap:22px;font-size:13.5px;font-weight:600;flex:0 0 auto;justify-content:center;margin:0 auto}
body.bo-platform-shell .bo-header .bo-header__nav .bo-header__nav-link{font-size:13.5px;font-weight:600;color:#080C0F;padding:23px 2px}
body.bo-platform-shell .bo-header .bo-header__nav .bo-header__nav-link:hover{color:#D97706}
body.bo-platform-shell .bo-header .bo-header__nav .bo-header__nav-link.is-active{color:#D97706;font-weight:700;border-bottom:2px solid #F5B429}
body.bo-platform-shell .bo-header .bo-header__tools{gap:12px;align-items:center;flex:0 0 auto}
@media(max-width:1100px){body.bo-platform-shell .bo-header .bo-logo-lockup .bo-logo-lockup__primary{height:34px}}


/* HEADER TOOLS — values transcribed verbatim from the locked design markup.
   Design: search is a 34x34 circular icon button, not an input field. The
   icon button already exists in the shell markup (.bo-header__search-button)
   and links to the search page, so search stays functional. The inline form
   is hidden rather than removed, so it can be restored if a search overlay
   is built later. Notification badge deliberately NOT populated: the design
   shows "1" as example data and a hardcoded count would be fabricated. */
body.bo-platform-shell .bo-header .bo-header__tools .bo-global-search{display:none}
body.bo-platform-shell .bo-header .bo-header__tools .bo-header__search-button{display:inline-flex}
body.bo-platform-shell .bo-header .bo-header__tools .bo-icon-button{width:34px;height:34px;min-width:34px;min-height:34px;border-radius:999px;color:#475467;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0}
body.bo-platform-shell .bo-header .bo-header__tools .bo-icon-button svg{width:16px;height:16px}
body.bo-platform-shell .bo-header .bo-header__tools .bo-button{height:34px;min-height:34px;padding:0 16px;border:none;border-radius:999px;background:#F5B429;color:#080C0F;font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:6px}
body.bo-platform-shell .bo-header .bo-header__tools .bo-button:hover{background:#BD8810;transform:translateY(-1px)}


/* Nav link weight — design declares 600 on the nav container with links
   inheriting; an existing more-specific rule was forcing 700, making the nav
   read heavier than the design. Caught by verifying font-weight, which an
   earlier sampled check had omitted. Active link stays 700 per the design. */
body.bo-platform-shell .bo-header .bo-header__nav a.bo-header__nav-link{font-weight:600}
body.bo-platform-shell .bo-header .bo-header__nav a.bo-header__nav-link.is-active{font-weight:700}


/* CONTAINER WIDTH CORRECTION.
   The design declares max-width:1240px on all twelve containers — it is the
   only max-width value in the entire file. An earlier pass here removed the
   per-section 1240px caps so every section inherited the 1360px shell. That
   made the sections align with each other, but at the wrong width. Correcting
   to the design's actual value, applied once on the container and the header
   inner rather than per section. */
body.bo-platform-shell .bo-main.bo-home .bo-container{max-width:1240px;margin-inline:auto}
body.bo-platform-shell .bo-header .bo-header__inner{max-width:1240px;margin-inline:auto;padding-inline:24px}

/* ===== v2 Hero corrections to the locked v1.2 design (MD5 494a7242cb9ab4c329a2ff7f049f5544). Values transcribed verbatim from the design's inline styles. ===== */
.bo-main.bo-home .bo-home-hero{gap:36px;align-items:start;padding-top:12px}
.bo-main.bo-home .bo-home-hero__copy>.bo-eyebrow{margin:0 0 16px}
.bo-main.bo-home .bo-home-hero h1{font-size:clamp(30px,3.4vw,42px);font-weight:800;line-height:1.1;letter-spacing:-.025em;margin:0 0 12px}
.bo-main.bo-home .bo-home-hero__lede{font-size:15px;line-height:1.65;margin-bottom:18px}
.bo-main.bo-home .bo-hero-stats{gap:10px}
.bo-main.bo-home .bo-trust-inline{margin-top:24px}
.bo-main.bo-home .bo-trust-inline span{letter-spacing:.06em}

/* ===== v2 Hero top-spacing: match the locked design's tight header-to-hero gap. Design has no shell offset before the first section; hero section padding-top 12px and copy column padding-top 4px (≈16px total). ===== */
body.bo-platform-shell .bo-main.bo-home{padding-top:0}
.bo-main.bo-home .bo-home-hero__copy{padding-top:4px}

/* ===== v2 Hero polish: match "Help it rise." gold to the design (#E4A93C), and keep the decorative layer behind the content. ===== */
.bo-main.bo-home .bo-home-hero h1 em{color:#E4A93C}
.bo-main.bo-home .bo-home-hero{position:relative}
.bo-main.bo-home .bo-home-hero__copy,.bo-main.bo-home .bo-hero-collage{position:relative;z-index:1}

.bo-main.bo-home .bo-hero-deco{position:absolute;inset:0;pointer-events:none;z-index:0}

/* ===== v2 Header "+ Add" button: text navy #10213A per the recorded render adjudication (file says #FFFFFF; render is authoritative). Scoped to the header only. ===== */
body.bo-platform-shell .bo-header .bo-button--gold{color:#10213A}
body.bo-platform-shell .bo-header .bo-button--gold svg{stroke:#10213A}

/* v2: force the header + Add button text/icon to navy per adjudication, over the tangled .bo-button base cascade. */
body.bo-platform-shell .bo-header .bo-button--gold.bo-header__add{color:#10213A!important}
body.bo-platform-shell .bo-header .bo-button--gold.bo-header__add span{color:#10213A!important}
body.bo-platform-shell .bo-header .bo-button--gold.bo-header__add .bo-icon{stroke:#10213A!important;color:#10213A!important}
