
.bb-home{--navy:var(--bb-navy);--white:var(--bb-white);--gold:var(--bb-yellow);--blue:var(--bb-link);--ink:var(--bb-text);--mist:var(--bb-surface-alt);--line:var(--bb-line);margin:0;color:var(--ink);background:var(--white);font-family:var(--bb-font-text);line-height:1.65}
.bb-home *{box-sizing:border-box}.bb-home a{color:inherit}.bb-home a:focus-visible,.bb-home button:focus-visible,.bb-home summary:focus-visible{outline:3px solid var(--bb-focus-ring);outline-offset:4px}.bb-home h1,.bb-home h2,.bb-home h3{line-height:1.08;margin:0 0 .6em;color:var(--navy);text-wrap:balance}.bb-home h1{font-family:"Oswald","Arial Narrow",Arial,sans-serif;font-weight:700}.bb-home h2{font-family:"Oswald","Arial Narrow",Arial,sans-serif;font-weight:600}.bb-home h1{font-size:clamp(2.7rem,6vw,5.7rem);letter-spacing:-.025em}.bb-home h2{font-size:clamp(2rem,4vw,3.5rem)}.bb-home h3{font-family:"Arial Narrow",sans-serif;font-size:1.55rem}.bb-home p{margin:.4rem 0 1rem}.bb-home .skip{position:absolute;left:-999px;top:8px;background:var(--white);padding:.7rem;z-index:20}.bb-home .skip:focus{left:8px}.bb-home .wrap{width:min(1180px,calc(100% - 40px));margin:auto}.bb-home .topbar{background:var(--navy);color:var(--white);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--bb-line-on-navy)}.bb-home .nav{min-height:76px;display:flex;align-items:center;gap:2rem}.bb-home .brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;font-weight:800;white-space:nowrap}.bb-home .links{display:flex;align-items:center;gap:1.3rem;margin-left:auto}.bb-home .links a{text-decoration:none;font-size:.92rem;font-weight:400}.bb-home .links a:hover{color:var(--bb-link-hover)}.bb-home .nav-toggle{display:none}.bb-home .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.25rem;border:2px solid var(--blue);background:var(--blue);color:var(--white)!important;text-decoration:none!important;font-weight:800;border-radius:3px}.bb-home .button:hover{background:var(--navy);border-color:var(--navy)}.bb-home .button.alt{background:transparent;border-color:currentColor}.bb-home .button.btn-primary{background:var(--gold);border-color:var(--navy);color:var(--navy)!important}.bb-home .hero{background:var(--navy);color:var(--white);padding:clamp(4rem,9vw,8rem) 0;overflow:hidden}.bb-home .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:5vw;align-items:center}.bb-home .hero h1{color:var(--white)}.bb-home .eyebrow{display:flex;align-items:center;gap:.7rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.78rem;color:var(--ink);margin-bottom:1.2rem}.bb-home .eyebrow:before{content:"";width:42px;border-top:2px solid var(--gold)}.bb-home .lead{font-size:clamp(1.05rem,2vw,1.3rem);max-width:700px}.bb-home .actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.8rem}.bb-home .trade-map{position:relative;min-height:430px;border:1px solid var(--bb-line-on-navy);background:radial-gradient(circle at 60% 30%,var(--bb-line-on-navy) 0 2px,transparent 3px),linear-gradient(135deg,var(--navy),var(--navy));overflow:hidden}.bb-home .trade-map:before,.bb-home .trade-map:after{content:"";position:absolute;border:1px solid var(--bb-line-on-navy);border-radius:50%;inset:12% -25%}.bb-home .trade-map:after{inset:-35% 10%;transform:rotate(23deg)}.bb-home .route{position:absolute;height:2px;background:var(--gold);transform-origin:left}.bb-home .r1{width:52%;left:17%;top:29%;transform:rotate(22deg)}.bb-home .r2{width:43%;left:31%;top:66%;transform:rotate(-31deg)}.bb-home .node{position:absolute;width:14px;height:14px;border:3px solid var(--navy);border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px var(--gold)}.bb-home .n1{left:15%;top:27%}.bb-home .n2{right:28%;top:48%}.bb-home .n3{left:30%;bottom:31%}.bb-home .n4{right:20%;top:37%}.bb-home .signal{position:absolute;right:7%;bottom:8%;width:68%;background:var(--white);color:var(--navy);padding:1.2rem;border-left:5px solid var(--gold);box-shadow:0 18px 45px var(--bb-shadow)}.bb-home .signal strong{display:block;font-family:"Arial Narrow",sans-serif;font-size:1.4rem}.bb-home .section{padding:clamp(4rem,8vw,7rem) 0}.bb-home .section.tint{background:var(--mist)}.bb-home .intro{max-width:760px;margin-bottom:2.5rem}.bb-home .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem}.bb-home .card{background:var(--white);border:1px solid var(--line);border-top:5px solid var(--blue);padding:1.6rem;display:flex;flex-direction:column}.bb-home .card.connect{border-top-color:var(--gold)}.bb-home .card.converse{border-top-color:var(--navy)}.bb-home .tag{font-weight:800;color:var(--blue);letter-spacing:.12em;font-size:.78rem}.bb-home .outcome{font-family:"Arial Narrow",sans-serif;font-size:1.7rem;color:var(--navy);margin-top:auto;padding-top:1rem}.bb-home .text-link{font-weight:800;color:var(--blue);text-decoration-thickness:2px;text-underline-offset:4px}.bb-home .steps{counter-reset:step;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.bb-home .step{counter-increment:step;border-top:1px solid var(--line);padding-top:1rem}.bb-home .step:before{content:"0" counter(step);display:block;color:var(--gold);font-family:"Arial Narrow",sans-serif;font-size:1.4rem;font-weight:800}.bb-home .split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem);align-items:center}.bb-home .fit-list{list-style:none;padding:0;margin:0}.bb-home .fit-list li{padding:1rem 0;border-bottom:1px solid var(--line);font-weight:700}.bb-home .fit-list li:before{content:"✓";color:var(--blue);font-weight:900;margin-right:.8rem}.bb-home .compare{overflow-x:auto}.bb-home table{width:100%;border-collapse:collapse;background:var(--white)}.bb-home th,.bb-home td{text-align:left;padding:1rem;border-bottom:1px solid var(--line);min-width:180px}.bb-home th{background:var(--navy);color:var(--white);font-family:"Arial Narrow",sans-serif;font-size:1.25rem}.bb-home .price{font-family:"Arial Narrow",sans-serif;font-size:2.7rem;color:var(--navy);line-height:1}.bb-home .price small{font-family:var(--bb-font-text);font-size:.85rem;color:var(--bb-text-muted)}.bb-home .formula{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:1rem;background:var(--navy);color:var(--white);padding:2rem}.bb-home .formula strong{color:var(--gold);display:block}.bb-home .formula .op{font-size:2rem;color:var(--gold)}.bb-home details{border-bottom:1px solid var(--line);padding:1rem 0}.bb-home summary{cursor:pointer;font-weight:800;color:var(--navy)}.bb-home details p{max-width:840px}.bb-home .final{background:var(--navy);color:var(--white);text-align:center}.bb-home .final h2{color:var(--white)}.bb-home footer{background:var(--navy);color:var(--white);padding:3rem 0}.bb-home .footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2rem}.bb-home footer h3{color:var(--white);font-size:1rem}.bb-home footer a{display:block;margin:.45rem 0;text-decoration:none}.bb-home footer a:hover{color:var(--gold)}.bb-home .fine{border-top:1px solid var(--bb-line-on-navy);margin-top:2rem;padding-top:1.2rem;font-size:.82rem}.bb-home .muted{color:var(--bb-text-muted)}
@media(max-width:900px){.bb-home .hero-grid,.bb-home .split{grid-template-columns:1fr}.bb-home .trade-map{min-height:340px}.bb-home .cards{grid-template-columns:1fr}.bb-home .steps{grid-template-columns:repeat(2,1fr)}.bb-home .links{gap:.8rem}.bb-home .links .secondary{display:none}.bb-home .formula{grid-template-columns:1fr}.bb-home .formula .op{transform:rotate(90deg);justify-self:center}}
@media(max-width:620px){.bb-home .wrap{width:min(calc(100% - 28px),1180px)}.bb-home .topbar{position:relative}.bb-home .nav{align-items:flex-start;flex-wrap:wrap;padding:14px 0}.bb-home .nav-toggle{display:block;margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--navy);padding:.55rem}.bb-home .links{display:none;width:100%;order:3;flex-direction:column;align-items:stretch;margin:0;padding:1rem 0}.bb-home .nav-toggle[aria-expanded="true"]+.links{display:flex}.bb-home .links a{padding:.5rem}.bb-home .steps{grid-template-columns:1fr}.bb-home .hero{padding-top:3.5rem}.bb-home .trade-map{min-height:290px}.bb-home .signal{width:82%}.bb-home .footer-grid{grid-template-columns:1fr 1fr}.bb-home .footer-brand{grid-column:1/-1}.bb-home .button{width:100%}}
/* Finalized white public website */
.bb-home{font-size:16px;background:var(--white)}.bb-home h1{font-family:"Oswald","Arial Narrow",Arial,sans-serif;font-weight:700}.bb-home h2{font-family:"Oswald","Arial Narrow",Arial,sans-serif;font-weight:600}.bb-home h1{font-size:clamp(2.75rem,4.25vw,3.5rem);line-height:1.08;letter-spacing:-.02em}.bb-home h2{font-size:clamp(2.25rem,4vw,3rem);line-height:1.12}.bb-home h3{font-family:var(--bb-font-text);font-size:20px;line-height:1.35}.bb-home p,.bb-home li,.bb-home a,.bb-home button{font-family:var(--bb-font-text)}.bb-home .topbar{background:var(--white);color:var(--navy);border-bottom:1px solid var(--line);box-shadow:0 1px 0 var(--bb-shadow)}.bb-home .nav{min-height:80px}.bb-home .links a:hover{color:var(--blue)}.bb-home .hero{background:var(--white);color:var(--ink);padding:clamp(5rem,10vw,8rem) 0}.bb-home .hero-grid{display:block;text-align:center;max-width:1120px}.bb-home .hero h1{color:var(--navy);max-width:1080px;margin-left:auto;margin-right:auto}.bb-home .hero .eyebrow{justify-content:center;color:var(--blue)}.bb-home .hero .lead{font-size:16px;max-width:720px;margin-left:auto;margin-right:auto}.bb-home .hero .actions{justify-content:center}.bb-home .trade-map{display:none}.bb-home .section{padding:clamp(4.5rem,8vw,6.5rem) 0}.bb-home .intro{max-width:720px}.bb-home .card{min-height:360px;padding:2rem;border:1px solid var(--line);border-top:4px solid var(--blue)}.bb-home .steps{gap:1.5rem}.bb-home .button{min-height:48px;padding:.75rem 1.5rem}.bb-home .final{background:var(--mist);color:var(--navy)}.bb-home .final h2{color:var(--navy)}.bb-home .final .button.alt{color:var(--navy)!important}.bb-home footer{background:var(--navy)}
@media(max-width:620px){.bb-home h1{font-size:2.65rem}.bb-home h2{font-size:2.1rem}.bb-home .hero{padding:4rem 0}.bb-home .section{padding:4rem 0}.bb-home .topbar{position:sticky}.bb-home .nav-toggle{color:var(--navy);border-color:var(--line)}.bb-home .cards{gap:1rem}.bb-home .card{min-height:auto;padding:1.5rem}}
/* Consolidated homepage acceptance rules */
.bb-home{font-size:20px;font-weight:400;color:var(--ink);line-height:1.6;overflow-x:hidden}.bb-home p,.bb-home li,.bb-home a,.bb-home button,.bb-home summary{font-family:var(--bb-font-text)}.bb-home p,.bb-home li{font-size:20px}.bb-home h1{font-family:"Oswald","Arial Narrow",Arial,sans-serif;font-weight:700}.bb-home h2{font-family:"Oswald","Arial Narrow",Arial,sans-serif;font-weight:600}.bb-home h1{font-size:56px;line-height:1.08;letter-spacing:-.018em}.bb-home h2{font-size:clamp(2.15rem,3.6vw,3rem);line-height:1.12}.bb-home h3{font-family:var(--bb-font-text);font-size:20px;line-height:1.35}.bb-home .topbar{background:var(--white);color:var(--navy);border-bottom:1px solid var(--line);box-shadow:0 1px 0 var(--bb-shadow)}.bb-home .nav{min-height:80px}.bb-home .links a{font-family:var(--bb-font-text);font-size:14px;font-weight:400}.bb-home .links a:not(.button){color:var(--navy)}.bb-home .links a:hover{color:var(--bb-link-hover)}.bb-home .section{padding:clamp(3.75rem,6vw,5rem) 0}.bb-home .hero{background:var(--white);color:var(--ink);padding:clamp(4.5rem,7vw,5.75rem) 0;overflow:hidden}.bb-home .hero-grid{display:block;text-align:center;max-width:1120px}.bb-home .hero h1{color:var(--navy);max-width:1080px;margin-left:auto;margin-right:auto}.bb-home .hero .eyebrow{justify-content:center;color:var(--ink)}.bb-home .hero .lead{font-size:16px;line-height:1.7;max-width:760px;margin-left:auto;margin-right:auto;text-align:center}.bb-home .hero .actions{justify-content:center}.bb-home .hero .button.alt{color:var(--navy)!important;border-color:var(--navy)}.bb-home .trade-map{display:none}.bb-home .section-intro{text-align:center;max-width:820px;margin:0 auto 2.5rem}.bb-home .section-intro .eyebrow{justify-content:center}.bb-home .service-cards,.bb-home .pricing-cards{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.bb-home .service-card{min-height:365px;padding:2rem;align-items:flex-start}.bb-home .service-card h3{min-height:54px}.bb-home .service-card p{line-height:1.7}.bb-home .service-card .button{margin-top:auto;width:100%}.bb-home .steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.15rem}.bb-home .step{padding:1.25rem 1rem 0 0}.bb-home .step:before{font-family:var(--bb-font-text);font-size:20px}.bb-home .step h3{min-height:54px}.bb-home .step p{line-height:1.65}.bb-home .fit-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;align-items:start}.bb-home .fit-copy p{line-height:1.7}.bb-home .fit-list li{padding:.65rem 0;border-bottom:1px solid var(--line);font-weight:400}.bb-home .fit-list li:before{display:none}.bb-home .fit-list h3{margin:0 0 .3rem;font-size:20px}.bb-home .fit-list p{margin:0;line-height:1.6}.bb-home .pricing-card{min-height:520px;padding:2rem}.bb-home .pricing-card h3{min-height:54px}.bb-home .pricing-card .price{margin:.35rem 0 1.2rem}.bb-home .pricing-features{margin:0 0 1.5rem;padding:0;list-style:none}.bb-home .pricing-features li{position:relative;padding:.32rem 0 .32rem 1.1rem;line-height:1.5}.bb-home .pricing-card .button{margin-top:auto;width:100%}.bb-home details{padding:.9rem 0}.bb-home summary{font-size:16px;font-weight:400;line-height:1.55;color:var(--ink)}.bb-home details p{font-size:16px;line-height:1.65;color:var(--bb-text-muted)}.bb-home .footer-grid{grid-template-columns:2fr repeat(4,minmax(0,1fr));gap:2rem}.bb-home footer h3{font-family:var(--bb-font-text);font-size:16px}.bb-home footer a,.bb-home footer p{font-size:14px}
.bb-home .faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(3rem,7vw,6rem);align-items:start}.bb-home .faq-intro{position:sticky;top:112px;max-width:420px}.bb-home .faq-intro .eyebrow{margin-bottom:1.2rem}.bb-home .faq-list{min-width:0}.bb-home .faq-list details{margin:0;padding:0;border-bottom:1px solid var(--line)}.bb-home .faq-list summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:1.25rem;align-items:center;min-width:0;padding:1.25rem 0;cursor:pointer;list-style:none}.bb-home .faq-list summary::-webkit-details-marker{display:none}.bb-home .faq-list summary:before,.bb-home .faq-list summary:after{content:"";position:absolute;right:1px;top:50%;width:20px;height:2px;background:var(--navy);transform:translateY(-50%);transform-origin:center}.bb-home .faq-list summary:after{transform:translateY(-50%) rotate(90deg);transition:transform .2s ease}.bb-home .faq-list details[open] summary:after{transform:translateY(-50%) rotate(0deg)}.bb-home .faq-list details p{max-width:none;margin:0;padding:0 44px 1.25rem 0}.bb-home .faq-list details[open] summary{color:var(--navy)}
@media(max-width:900px){.bb-home .nav{align-items:flex-start;flex-wrap:wrap;padding:14px 0}.bb-home .nav-toggle{display:block;margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--navy);padding:.55rem}.bb-home .links{display:none;width:100%;order:3;flex-direction:column;align-items:stretch;margin:0;padding:1rem 0}.bb-home .nav-toggle[aria-expanded="true"]+.links{display:flex}.bb-home .links .secondary{display:block}.bb-home .links a{padding:.55rem}.bb-home .service-cards,.bb-home .pricing-cards{grid-template-columns:1fr}.bb-home .steps{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-home .fit-split{grid-template-columns:1fr;gap:2.5rem}.bb-home .faq-grid{grid-template-columns:minmax(0,1fr);gap:2rem}.bb-home .faq-intro{position:static;max-width:640px}.bb-home .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-home .footer-brand{grid-column:1/-1}}
@media(max-width:620px){.bb-home h1{font-size:42px}.bb-home h2{font-size:34px}.bb-home .hero{padding:4rem 0}.bb-home .hero .actions{flex-direction:column}.bb-home .hero .button{width:100%}.bb-home .section{padding:3.5rem 0}.bb-home .steps{grid-template-columns:1fr}.bb-home .step h3{min-height:auto}.bb-home .service-card,.bb-home .pricing-card{min-height:auto;padding:1.5rem}.bb-home .service-card h3,.bb-home .pricing-card h3{min-height:auto}.bb-home .footer-grid{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){.bb-home *{scroll-behavior:auto!important}}
/* Approved consolidated public-site finish */
.bb-home .section{padding:64px 0;scroll-margin-top:96px}
.bb-home .hero{padding:64px 0}
.bb-home .eyebrow,.bb-home .tag{color:var(--ink)}
.bb-home .links a:hover{color:var(--bb-link-hover)}
.bb-home .button{background:var(--white);border-color:var(--navy);color:var(--navy)!important}.bb-home .button.btn-primary{background:var(--gold);border-color:var(--navy);color:var(--navy)!important}
.bb-home .button:hover,.bb-home .button.btn-primary:hover{background:var(--navy);border-color:var(--navy);color:var(--white)!important}
.bb-home .button.alt,.bb-home .hero .button.alt{background:var(--white);border-color:var(--navy);color:var(--navy)!important}
.bb-home .button.alt:hover,.bb-home .hero .button.alt:hover{background:var(--navy);border-color:var(--navy);color:var(--white)!important}
/* THEME T5 (owner, SNAP3 review, 11 Oct 2026): the owner-designated main buttons are yellow with navy text and no
visible border (kept at 2px, transparent, so each keeps its size); every other button is secondary, its navy outline
halved from 2px to 1px on white. Hover: both turn navy with white text. The borderless buttons keep the navy focus ring.
The How It Works numerals and the Buyer-Exporter Fit ticks are yellow (the owner accepts the contrast; headings carry
the meaning). */
.bb-home .button{border-width:1px}
.bb-home .btn-primary{border-color:transparent}
.bb-home .button.btn-primary{background:var(--gold);border-color:transparent;border-width:2px;color:var(--navy)!important}
.bb-home .btn-primary:focus-visible,.bb-home .button.btn-primary:focus-visible{outline:3px solid var(--bb-focus-ring);outline-offset:4px}
.bb-home .card,.bb-home .card.find,.bb-home .card.connect,.bb-home .card.converse{border-top-color:var(--gold)}
.bb-home .fit-list li{position:relative;padding:.55rem 0 .55rem 2rem}
/* THEME T5b (owner decision 7, 11 Oct 2026): one shared tick for the Buyer-Exporter Fit list and the pricing feature
lists, yellow, CSS only. The text hangs 2rem in, so wrapped lines align under it; the tick sits at 0 on the first
line (its static position, so it follows each list's own item padding). */
.bb-home .tick-list{list-style:none;padding:0}
.bb-home .tick-list li{position:relative;padding-left:2rem}
/* THEME T5c E (STEP 284): the tick is centred on its item's first line. It sits at the top of the content and its line
box is that line's height: 1.25em beside supporting copy is one 1.625 copy line; on the Fit list the first line is
the item's h3 (20px, line-height 1.03), so the tick takes the h3's line-height. No pixel nudge. */
.bb-home .tick-list li:before{content:"✓";display:block;position:absolute;left:0;color:var(--gold);font-size:1.25em;line-height:calc(var(--supporting-copy-line-height) / 1.25);font-weight:800}
.bb-home .fit-list li:before{line-height:1.03}
.bb-home .fit-list h3,.bb-home .fit-list p{color:var(--ink)}
.bb-home .tax-note{margin:.25rem 0 0;color:var(--ink);font-weight:600}
@media(max-width:900px){.bb-home .section,.bb-home .hero{padding:48px 0}}
@media(max-width:620px){.bb-home .section,.bb-home .hero{padding:40px 0}}
/* Canonical public supporting-copy typography */
.bb-home .links a:not(.button){font-family:var(--bb-font-text);font-size:20px;font-weight:400}
@media(max-width:1080px){.bb-home .nav{align-items:flex-start;flex-wrap:wrap;padding:14px 0}.bb-home .nav-toggle{display:block;margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--navy);padding:.55rem}.bb-home .links{display:none;width:100%;order:3;flex-direction:column;align-items:stretch;margin:0;padding:1rem 0}.bb-home .nav-toggle[aria-expanded="true"]+.links{display:flex}.bb-home .links .secondary{display:block}.bb-home .links a{padding:.55rem}}
.bb-home{--supporting-copy-font-family:var(--bb-font-text);--supporting-copy-font-size:20px;--supporting-copy-font-weight:400;--supporting-copy-line-height:1.6;--supporting-copy-color:var(--ink)}
.bb-home.finalized-site{background:var(--white);color:var(--ink)}.bb-home .legal-container{width:min(928px,calc(100% - 40px));margin:0 auto}.bb-home .legal-hero{padding:100px 0 80px;background:var(--white)}.bb-home .legal-hero .eyebrow{color:var(--ink)}.bb-home .legal-hero h1{font-family:"Oswald","Arial Narrow",Impact,sans-serif;font-size:60.48px;font-weight:700;line-height:1.03;max-width:850px;margin:.3em 0}.bb-home .legal-intro{max-width:760px;font-size:18px;line-height:1.7;color:var(--bb-text-muted)}.bb-home .effective-date{margin-top:1.5rem;color:var(--bb-text-muted);font-weight:600}.bb-home .legal-content{padding:72px 0 100px;border-top:1px solid var(--line)}.bb-home .legal-prose h2{font-family:"Oswald","Arial Narrow",Impact,sans-serif;font-size:31.68px;line-height:1.03;font-weight:600;margin:0 0 1rem;padding-top:2.4rem;color:var(--ink)}.bb-home .legal-prose h2:first-child{padding-top:0}.bb-home .legal-prose p,.bb-home .legal-prose li{font-family:var(--bb-font-text);font-size:16px;line-height:26px;color:var(--bb-text-muted)}.bb-home .legal-prose p{margin:0 0 1.25rem}.bb-home .legal-prose ul{margin:0 0 1.5rem;padding-left:1.35rem}.bb-home .legal-prose li{padding:.2rem 0}.bb-home .legal-prose a{color:var(--blue);text-underline-offset:3px}.bb-home .legal-contact-box{margin-top:2rem;padding:32px;background:var(--mist);border-left:4px solid var(--gold)}.bb-home .legal-contact-box h3{margin-top:0;color:var(--ink)}.bb-home .delivery-table{display:grid;margin:1.5rem 0 2rem;border:1px solid var(--line)}.bb-home .delivery-table>[role=row]{display:grid;grid-template-columns:.7fr .9fr 1.4fr}.bb-home .delivery-table strong,.bb-home .delivery-table span{padding:14px 16px;border-bottom:1px solid var(--line)}.bb-home .delivery-table>[role=row]:last-child>*{border-bottom:0}.bb-home .delivery-table>[role=row]:first-child{background:var(--navy);color:var(--white)}.bb-home.finalized-site footer{background:var(--navy);color:var(--white)}.bb-home.finalized-site footer .brand,.bb-home.finalized-site footer h3{color:var(--white)}.bb-home.finalized-site footer .brand{margin-bottom:1rem}.bb-home.finalized-site footer .fine{grid-column:1/-1}.bb-home.finalized-site footer a:hover{color:var(--gold)}
@media(max-width:620px){.bb-home .legal-container{width:calc(100% - 40px)}.bb-home .legal-hero{padding:56px 0}.bb-home .legal-hero h1{font-size:36px;line-height:1.08}.bb-home .legal-intro{font-size:16px}.bb-home .legal-content{padding:56px 0 72px}.bb-home .legal-prose h2{font-size:23.2px;padding-top:2rem}.bb-home .legal-contact-box{padding:24px}.bb-home .delivery-table>[role=row]{grid-template-columns:1fr}.bb-home .delivery-table>[role=row]>*{border-bottom:1px solid var(--line)}.bb-home.finalized-site .footer-grid{grid-template-columns:1fr}}
body.bb-home .supporting-copy.supporting-copy{font-family:var(--supporting-copy-font-family);font-size:var(--supporting-copy-font-size);font-weight:var(--supporting-copy-font-weight);line-height:var(--supporting-copy-line-height);color:var(--supporting-copy-color)}
/* Active-baseline supporting-copy correction */
.bb-home{--supporting-copy-font-family:var(--bb-font-text);--supporting-copy-font-size:16px;--supporting-copy-font-weight:400;--supporting-copy-line-height:1.6;--supporting-copy-color:var(--ink)}
/* Approved prototype typography contract */
.bb-home{--body-font:var(--bb-font-text);--heading-font:"Oswald","Arial Narrow",Impact,sans-serif;--supporting-copy-font-family:var(--bb-font-text);--supporting-copy-font-size:16px;--supporting-copy-line-height:1.625;font-family:var(--bb-font-text);font-size:16px;font-weight:400;line-height:1.625}
.bb-home h1{font-family:"Oswald","Arial Narrow",Impact,sans-serif;font-weight:700}
.bb-home h2{font-family:"Oswald","Arial Narrow",Impact,sans-serif;font-weight:700}
.bb-home h1,.bb-home h2{font-family:"Oswald","Arial Narrow",Impact,sans-serif;font-weight:700;line-height:1.03;letter-spacing:-.035em}
.bb-home h3{font-family:var(--bb-font-text);font-size:20px;line-height:1.35}
.bb-home h3{font-family:var(--bb-font-text);font-size:20px;font-weight:700;line-height:1.03}
.bb-home p,.bb-home li,.bb-home a,.bb-home button,.bb-home summary{font-family:var(--bb-font-text)}
.bb-home p,.bb-home li,.bb-home .lead,.bb-home details p,.bb-home .supporting-copy{font-size:16px;font-weight:400;line-height:1.625}
.bb-home .hero h1{font-size:clamp(1.5rem,2.8vw,2.825rem)}
.bb-home .section h2,.bb-home #faq h2{font-size:clamp(1.3rem,2.4vw,2.4rem)}
.bb-home .links a{font-family:var(--bb-font-text);font-size:14px;font-weight:400}
.bb-home .links a{font-family:var(--bb-font-text);font-size:.9rem;font-weight:400}
.bb-home .links a:not(.button){font-family:var(--bb-font-text);font-size:.9rem;font-weight:400}
.bb-home .links a.button{font-size:.95rem;font-weight:760}
.bb-home .brand{font-size:1.18rem;font-weight:760;letter-spacing:-.02em}
.bb-home .button,.bb-home button{font-size:.95rem;font-weight:760}
.bb-home .eyebrow{font-size:.78rem;font-weight:760;letter-spacing:.15em;text-transform:uppercase}
.bb-home .tag{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.bb-home .service-card .tag,.bb-home .pricing-card .tag{font-size:.74rem;font-weight:780;letter-spacing:.08em}
.bb-home summary{font-size:16px;font-weight:400;line-height:1.25}
.bb-home details p{font-size:16px;font-weight:400;line-height:1.625}
.bb-home footer p{font-size:.9rem;font-weight:400;line-height:1.65}
.bb-home footer h3{font-family:var(--bb-font-text);font-size:.95rem;font-weight:700;line-height:1.03}
.bb-home footer a,.bb-home footer a.brand{font-family:var(--bb-font-text);font-size:.88rem;font-weight:400;letter-spacing:normal}
.bb-home.legal-page h1,.bb-home.product-page h1,.bb-home.pricing-page h1{font-size:clamp(2.15rem,4vw,4.25rem)}
.bb-home.legal-page h2{font-size:clamp(1.45rem,2.4vw,2rem);letter-spacing:-.02em}
.bb-home.legal-page main .lead{font-size:1.1rem;font-weight:400;line-height:1.7}
.bb-home.product-page h2,.bb-home.pricing-page h2{font-size:clamp(1.5rem,2.8vw,2.5rem);letter-spacing:-.03em}
.bb-home .price{font-family:var(--bb-font-text);font-weight:350;line-height:1;letter-spacing:-.035em}
.bb-home .price{font-family:var(--bb-font-text);font-size:2.7rem;color:var(--navy);line-height:1}
.bb-home .price small{font-family:var(--bb-font-text);font-weight:400}
.bb-home .signal strong,.bb-home .outcome,.bb-home .step:before,.bb-home th{font-family:var(--bb-font-text)}
@media(max-width:900px){.bb-home .links a{font-size:.92rem}}
@media(max-width:900px){.bb-home .links a:not(.button){font-size:.92rem}}
@media(max-width:620px){.bb-home .hero h1{font-size:clamp(1.275rem,8vw,2rem)}.bb-home.legal-page h1,.bb-home.product-page h1,.bb-home.pricing-page h1{font-size:2.25rem}.bb-home .brand{font-size:1rem}}
/* THEME T2 (UI-THEME-1, 02-1, 02-5, 02-6): sign-in, sign-up and free-trial pages (body.bb-home.auth-page with theme.css's
.auth-card) and the compact public footer. Colours come from theme.css's tokens. */
.bb-home.auth-page main{padding:48px 0 64px}
.bb-home.auth-page h1{font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.1;letter-spacing:-.02em}
.bb-home.auth-page main a{color:var(--bb-link)}
.bb-home.auth-page main a:hover{color:var(--bb-link-hover)}
.bb-home .site-footer{padding:24px 0}
.bb-home .site-footer .wrap{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center}
.bb-home .site-footer a{display:inline;margin:0}
/* THEME T5e (Step 291): the full footer's fine print (legal-entity line, copyright) is centred. */
.bb-home footer .fine{text-align:center}
/* THEME Step 297 (owner, 12 Oct 2026): every heading is Oswald 700 (theme.css --bb-font-head, the homepage stack), sizes
unchanged (Step 298: h3 takes --bb-font-h3 instead); body text is theme.css's one base size, --bb-font-size-body (17px, was 16px); captions and footnotes keep their
ratio to it. A Fit item's text is its h3 and its paragraph, each sized by its own rule; the item itself takes its
heading's size so its 1em tick stays exactly as tall as that heading. */
.bb-home h3,.bb-home footer h3,.bb-home .fit-list h3{font-family:var(--bb-font-h3);font-weight:700}
.bb-home .legal-prose h2{font-weight:700}
.bb-home{font-size:var(--bb-font-size-body);--supporting-copy-font-size:var(--bb-font-size-body)}
.bb-home p,.bb-home li,.bb-home .lead,.bb-home summary,.bb-home details p,.bb-home .hero .lead,.bb-home .legal-intro,.bb-home .legal-prose p,.bb-home .legal-prose li{font-size:var(--bb-font-size-body)}
.bb-home footer p{font-size:calc(var(--bb-font-size-body)*.9)}
.bb-home footer a,.bb-home footer a.brand{font-size:calc(var(--bb-font-size-body)*.88)}
.bb-home .fine{font-size:calc(var(--bb-font-size-body)*.82)}
.bb-home .fit-list li{font-size:20px}
.bb-home .fit-list li:before{font-size:1em}
/* THEME Step 298 (owner, 12 Oct 2026): h3 is theme.css's --bb-font-h3 at 700 (above), 20px, footer column headings
at their .95rem. Header menu links 16px, also in the phone menu; every button 16px (theme.css --bb-font-size-button),
weight unchanged; section headings 24px at phone width. Card headings reserve no height: the cards stay equal (grid
stretch, flex column) and their buttons level (margin-top:auto). */
.bb-home .links a:not(.button){font-size:16px}
.bb-home .button,.bb-home button,.bb-home .links a.button,.bb-home .nav-toggle{font-size:var(--bb-font-size-button)}
.bb-home .service-card h3,.bb-home .pricing-card h3{min-height:0}
@media(max-width:620px){.bb-home h2,.bb-home .section h2,.bb-home #faq h2,.bb-home.legal-page h2,.bb-home .legal-prose h2,.bb-home.product-page h2,.bb-home.pricing-page h2{font-size:24px}}
/* THEME Step 300 (owner, 12 Oct 2026): one public heading scale, the home page's (theme.css --bb-font-size-h1/-h2/-h3),
on every page's main content. #main outranks every earlier page-specific heading size (the most specific was
".bb-home #faq h2"); the footer column headings are outside main and keep their size. */
.bb-home #main h1{font-size:var(--bb-font-size-h1)}
.bb-home #main h2{font-size:var(--bb-font-size-h2)}
.bb-home #main h3{font-size:var(--bb-font-size-h3)}
@media(max-width:620px){.bb-home #main h1{font-size:var(--bb-font-size-h1-phone)}.bb-home #main h2{font-size:var(--bb-font-size-h2-phone)}}
/* THEME Step 301 (owner, 12 Oct 2026): every h3 is identical, from theme.css's tokens: the h3 family at 400 (Regular),
one line-height and natural wrapping to its container (no balanced wrap; the pricing card headings lost their forced
breaks); in the main content also 20px (Step 300, above) and one margin-bottom, which replaces the Fit list's .3rem and
the shared .6em. The footer column headings take the same family, weight and line-height at their own 15.2px. A Fit
tick's line box stays as tall as its heading's first line (THEME T5d E): it takes the same line-height token. */
.bb-home h3,.bb-home footer h3,.bb-home .fit-list h3{font-family:var(--bb-font-h3);font-weight:var(--bb-font-weight-h3);line-height:var(--bb-line-height-h3);text-wrap:wrap}
.bb-home #main h3{margin-bottom:var(--bb-margin-bottom-h3)}
.bb-home .fit-list li:before{line-height:var(--bb-line-height-h3)}
/* THEME Step 305 (owner, 12 Oct 2026): every h3 is theme.css's Source Sans 3 Bold 18px (tokens above); a Fit item takes
its heading's size, so its 1em tick stays as tall as the heading (Step 297). */
.bb-home .fit-list li{font-size:var(--bb-font-size-h3)}
/* THEME Step 308 (owner, 12 Oct 2026): the product pages (/find, /connect, /converse). The top is a centred section intro
(eyebrow, h1 at the h2 size, lead); one card, max 560px and centred, its heading, price and lines centred, the tick list a
centred block of left-aligned lines, the Choose button as wide as its text; the refund line and the tax line under the
card at the footer fine-print size, muted (they keep .supporting-copy, re-pointed through its custom properties). */
.bb-home.product-page .product-intro{margin-bottom:2rem}
.bb-home.product-page #main h1{font-size:var(--bb-font-size-h2)}
.bb-home.product-page .card{max-width:560px;margin:0 auto;align-items:center;text-align:center;box-shadow:0 2px 8px var(--bb-shadow)}
.bb-home.product-page .card .tick-list{text-align:left;margin:1rem 0}
.bb-home.product-page .card .button{width:auto;margin-top:.5rem}
.bb-home.product-page .product-fine{--supporting-copy-font-size:calc(var(--bb-font-size-body)*.82);--supporting-copy-color:var(--bb-text-muted);text-align:center}
.bb-home.product-page .tax-note{max-width:560px;margin:1.25rem auto 0}
@media(max-width:620px){.bb-home.product-page #main h1{font-size:var(--bb-font-size-h2-phone)}}
/* THEME Step 309 (owner, 12 Oct 2026): the product-page lead's box is centred too (its centre is the h1's); the card
heading is an h2 there (h1 -> h2, no skipped level) that computes exactly as the h3 it replaces: theme.css's h3 tokens,
no heading letter-spacing, natural wrapping, navy. */
.bb-home.product-page .product-intro .lead{margin-left:auto;margin-right:auto}
.bb-home.product-page #main .card h2.card-heading{font-family:var(--bb-font-h3);font-weight:var(--bb-font-weight-h3);font-size:var(--bb-font-size-h3);line-height:var(--bb-line-height-h3);letter-spacing:normal;margin:0 0 var(--bb-margin-bottom-h3);text-wrap:wrap;color:var(--navy)}
