/* BrainBox mini-site: page-scoped, mobile-first. Shared by every /brainbox/* page. */

/* rhythm: more air between sections, balanced headings, readable measure */
.bx-main section.block{padding:112px 0}
.bx-main h1,.bx-main h2,.bx-main h3{text-wrap:balance}
.bx-main p,.bx-main li{max-width:65ch}
.bx-main img{max-width:100%;height:auto}
.bx-main h2.section-title{margin-top:0}
@media (max-width:640px){.bx-main section.block{padding:72px 0}}

/* sub-navigation under the main nav */
.bx-subnav{margin-top:-26px;border-bottom:1px solid var(--outline-variant);background:var(--surface-lowest)}
.bx-subnav .container{display:flex;align-items:center;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;white-space:nowrap}
.bx-subnav .container::-webkit-scrollbar{display:none}
.bx-subnav a{display:inline-block;padding:12px 10px;font-size:.86rem;font-weight:600;color:var(--on-secondary-container);border-bottom:2px solid transparent;margin-bottom:-1px}
.bx-subnav a:hover{color:var(--on-surface)}
.bx-subnav a[aria-current="page"]{color:var(--primary);border-bottom-color:var(--primary-container)}
.bx-subnav a.bx-brand{font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:.02em;color:var(--on-surface);padding-left:0;margin-right:6px}
.bx-subnav a.bx-ext{margin-left:auto}
@media (max-width:640px){.bx-subnav a{padding:11px 8px;font-size:.82rem}}

/* index hero: the one centered block on the site */
.bx-hero{position:relative;overflow:hidden;padding-bottom:0}
.bx-hero .hero-inner{text-align:center;padding-bottom:72px}
.bx-hero h1.display{margin-left:auto;margin-right:auto}
.bx-hero .lede{margin:20px auto 0;max-width:52ch}
.bx-hero .btn-row{justify-content:center;margin-top:32px}
@media (max-width:700px){#bx-three{display:none}.bx-hero .display{font-size:2.4rem}}

/* sub-page hero: text left, image right */
.bx-page-hero .hero-inner{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
.bx-page-hero .lede{margin:16px 0 0}
.bx-page-hero h1{margin-top:0}
.bx-page-hero .bx-art{margin:0}
@media (min-width:900px){.bx-page-hero .hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}}

/* figures: screenshots framed, illustrations bare */
.bx-fig{margin:0;border:1px solid var(--outline-variant);border-radius:12px;overflow:hidden;background:var(--surface-lowest)}
.bx-fig img{display:block;width:100%}
.bx-fig-wide{margin-top:-40px;position:relative;z-index:1}
.bx-art{margin:0;border-radius:12px;overflow:hidden}
.bx-art img{display:block;width:100%}
.bx-cap{font-size:.86rem;color:var(--on-secondary-container);margin:12px 0 0;max-width:65ch}
.bx-phone{margin:0;max-width:340px}
.bx-phone img{display:block;width:100%;border:1px solid var(--outline-variant);border-radius:24px}

/* alternating image + text rows */
.bx-row{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
.bx-row+.bx-row{margin-top:96px}
.bx-row h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin:0 0 14px}
.bx-row p{margin:0;font-size:1.06rem;color:var(--on-secondary-container);max-width:38ch}
.bx-row p a{color:var(--primary);font-weight:600}
@media (min-width:900px){
  .bx-row{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px}
  .bx-row.flip>figure{order:2}
  .bx-row+.bx-row{margin-top:128px}
}
@media (max-width:640px){.bx-row+.bx-row{margin-top:64px}}

/* the offer: four labelled lines, one row on desktop, a list on phone */
.bx-offer{margin:0;display:grid;grid-template-columns:1fr;gap:0}
.bx-offer>div{padding:20px 0;border-top:1px solid var(--outline-variant)}
.bx-offer>div:last-child{border-bottom:1px solid var(--outline-variant)}
.bx-offer dt{font-family:'Manrope',sans-serif;font-weight:800;font-size:1.05rem;margin:0 0 6px}
.bx-offer dd{margin:0;color:var(--on-secondary-container);max-width:65ch}
.bx-offer dd a{color:var(--primary);font-weight:600}
.bx-offer.bx-offer-compact dt{font-size:.95rem}
.bx-offer.bx-offer-compact dd{font-size:.92rem}
@media (min-width:900px){
  .bx-offer{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 40px;border-top:1px solid var(--outline-variant)}
  .bx-offer>div{border-top:0;border-bottom:0;padding:28px 0 0}
  .bx-offer>div:last-child{border-bottom:0}
}

/* compact strip: heading left, command and lines right */
.bx-strip{display:grid;grid-template-columns:1fr;gap:24px;padding:40px 0;border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant)}
.bx-strip h2{font-size:clamp(1.5rem,2.4vw,2rem);margin:0}
.bx-strip p{margin:12px 0 0;color:var(--on-secondary-container)}
@media (min-width:900px){.bx-strip{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:64px}}

/* plain numbered list */
.bx-list{margin:0;padding-left:1.4em;line-height:1.7;max-width:65ch}
.bx-list li{margin-bottom:8px}
.bx-list li::marker{color:var(--primary);font-weight:700;font-variant-numeric:tabular-nums}
.bx-list b{font-weight:600}

/* demo + tables */
.bx-demo{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}
@media (min-width:900px){.bx-demo{grid-template-columns:1fr 1fr;gap:24px}}
#bx-qs button{text-align:left;background:none;border:1px solid var(--outline-variant);border-radius:6px;padding:8px 10px;cursor:pointer;color:inherit;font:inherit;width:100%}
.bx-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--outline-variant);border-radius:8px;max-width:100%}
table.bench{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;min-width:640px}
table.bench th,table.bench td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--outline-variant);white-space:nowrap}
table.bench th{font-weight:600;font-size:.82rem;background:var(--surface-container);position:sticky;top:0}
table.bench td:first-child,table.bench th:first-child{position:sticky;left:0;background:var(--surface-lowest);white-space:normal;min-width:150px}
table.bench td:nth-child(n+3),table.bench th:nth-child(n+3){text-align:right}
table.bench.bx-narrow{min-width:0}
table.bench.bx-text td,table.bench.bx-text th{white-space:normal;text-align:left;vertical-align:top}
table.bench tr.bx-hi td{font-weight:600}
.bx-h3{font-size:1.1rem;margin:56px 0 12px}
.bx-h3:first-of-type{margin-top:0}
.bx-teaser{margin-top:16px}

/* prose blocks, code, key-value lists, Q&A */
.bx-prose{max-width:65ch}
.bx-prose p{margin:0 0 14px}
.bx-prose ul,.bx-prose ol{margin:0 0 16px;padding-left:22px;line-height:1.7}
.bx-prose li{margin-bottom:4px}
.bx-prose h3{font-size:1.1rem;margin:28px 0 8px}
.bx-pre{margin:0 0 16px;padding:12px 14px;border-radius:8px;background:var(--surface-container);font-size:.82rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-width:65ch}
.bx-pre.bx-pre-lead{font-size:.92rem;padding:16px 18px}
.bx-pre code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.bx-kv{display:grid;grid-template-columns:1fr;gap:0;margin:0 0 16px;max-width:760px}
.bx-kv>div{display:grid;grid-template-columns:1fr;gap:2px;padding:12px 0;border-top:1px solid var(--outline-variant)}
.bx-kv>div:last-child{border-bottom:1px solid var(--outline-variant)}
.bx-kv code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;color:var(--primary)}
.bx-kv span{color:var(--on-secondary-container);font-size:.92rem}
@media (min-width:640px){.bx-kv>div{grid-template-columns:220px 1fr;gap:16px}}
.bx-qa{max-width:65ch;margin:0}
.bx-qa>div{padding:16px 0;border-top:1px solid var(--outline-variant)}
.bx-qa>div:last-child{border-bottom:1px solid var(--outline-variant)}
.bx-qa h3{font-size:1.02rem;margin:0 0 6px}
.bx-qa p{margin:0;color:var(--on-secondary-container)}
.bx-price{font-size:1.4rem;font-weight:700;margin:8px 0 14px;font-variant-numeric:tabular-nums}
.bx-plans{display:grid;grid-template-columns:1fr;gap:24px;max-width:960px}
.bx-plans .card:hover{transform:none}
@media (min-width:900px){.bx-plans{grid-template-columns:1fr 1fr}}

/* two-column: text beside an illustration inside a section */
.bx-side{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}
@media (min-width:900px){.bx-side{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px}}
