:root {
  --bas-green: #006b35;
  --bas-green-2: #00853f;
  --bas-green-3: #19a653;
  --bas-deep: #003d22;
  --bas-dark: #022d1b;
  --bas-mint: #dff3df;
  --bas-soft: #eef7e9;
  --bas-paper: #f7f4eb;
  --bas-card: #fffdf8;
  --bas-gold: #d5aa32;
  --bas-gold-light: #f3d778;
  --bas-ink: #173325;
  --bas-body: #526b5c;
  --bas-muted: #728477;
  --bas-line: #d6e2d6;
}

.bas-page { background: #fff; color: var(--bas-ink); font-family: Manrope, sans-serif; }
.bas-page main { overflow: hidden; }
.bas-shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.bas-page [id] { scroll-margin-top: 72px; }
.bas-page .site-nav { background: rgba(0, 49, 27, .98); }
.bas-page .brand-mark { background: var(--bas-green-2); }
.bas-page .nav-current { color: #fff; }
.bas-page .bas-nav-cta,
.bas-page .section-cta,
.bas-page .mobile-nav-cta { background: var(--bas-green-2); }
.bas-page .bas-nav-cta:hover,
.bas-page .section-cta:hover,
.bas-page .mobile-nav-cta:hover { background: #10a54f; color: #fff; }
.bas-page .section-links a:hover,
.bas-page .section-links a.active { color: var(--bas-green); }
.bas-page .section-links a.active::after { background: var(--bas-green); }
.bas-page .section-brand { color: var(--bas-deep); }

.bas-kicker { margin: 0; color: var(--bas-green-2); font-size: 12px; font-weight: 800; letter-spacing: .16em; line-height: 1.4; }
.bas-heading { max-width: 780px; }
.bas-heading-center { margin-inline: auto; text-align: center; }
.bas-heading h2,
.bas-security h2 { margin: 14px 0 20px; color: var(--bas-ink); font-size: clamp(38px, 4.25vw, 56px); font-weight: 800; letter-spacing: -.06em; line-height: 1.08; }
.bas-heading h2 span { color: var(--bas-green-2); }
.bas-heading > p:last-child,
.bas-security > .bas-shell > div:first-child > p:last-child { margin: 0; color: var(--bas-body); font-size: 16px; line-height: 1.8; }
.bas-section { padding: 108px 0; }
.bas-split > *, .bas-finance-grid > *, .bas-mobile-grid > *, .bas-security-grid > * { min-width: 0; }

/* Hero */
.bas-hero { position: relative; isolation: isolate; overflow: hidden; color: #fff; background: radial-gradient(circle at 77% 17%, rgba(33, 192, 91, .34), transparent 30%), linear-gradient(128deg, #00301b 0%, #005c30 56%, #00813d 100%); }
.bas-ornament { position: absolute; inset: 0; z-index: -1; opacity: .23; background-image: linear-gradient(30deg, rgba(255,255,255,.1) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.1) 87.5%), linear-gradient(150deg, rgba(255,255,255,.1) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.1) 87.5%); background-position: 0 0, 0 0; background-size: 76px 132px; mask-image: linear-gradient(90deg, transparent 0, #000 45%, #000 100%); }
.bas-hero-grid { display: grid; grid-template-columns: .93fr 1.07fr; gap: 66px; align-items: center; min-height: 680px; padding: 68px 0 62px; }
.bas-hero-copy { min-width: 0; }
.bas-hero .bas-kicker { color: #baf0bd; }
.bas-hero h1 { max-width: 650px; margin: 16px 0 23px; color: #fff; font-size: clamp(47px, 5.25vw, 70px); font-weight: 800; letter-spacing: -.07em; line-height: 1.02; }
.bas-hero h1 span { color: #c9ef9f; }
.bas-hero-lead { max-width: 630px; margin: 0; color: #d8eddb; font-size: 17px; line-height: 1.76; }
.bas-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 29px; }
.bas-actions .button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid transparent; border-radius: 9px; padding: 13px 19px; font-size: 14px; font-weight: 800; }
.bas-button-primary { color: var(--bas-deep) !important; background: var(--bas-gold-light) !important; box-shadow: 0 16px 35px rgba(0,0,0,.2); }
.bas-button-primary:hover { background: #ffe398 !important; transform: translateY(-2px); }
.bas-button-ghost { color: #fff !important; border-color: rgba(255,255,255,.36) !important; background: rgba(255,255,255,.08) !important; }
.bas-button-ghost:hover { background: rgba(255,255,255,.15) !important; }
.bas-proof { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 23px 0 0; padding: 0; list-style: none; color: #d5ead9; font-size: 12px; font-weight: 700; }
.bas-proof li::before { content: '✓'; margin-right: 7px; color: var(--bas-gold-light); }
.bas-hero-note { border-top: 1px solid rgba(255,255,255,.16); background: rgba(0, 38, 21, .55); }
.bas-hero-note .bas-shell { display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; padding-block: 21px; }
.bas-hero-note strong { color: var(--bas-gold-light); font-size: 13px; }
.bas-hero-note span { color: #d2e7d5; font-size: 13px; line-height: 1.65; }

/* Hero dashboard mock */
.bas-dashboard { min-width: 0; overflow: hidden; color: var(--bas-ink); border: 8px solid #002b19; border-radius: 20px; background: #fbfdf8; box-shadow: 0 34px 80px rgba(0,0,0,.38); transform: perspective(1300px) rotateY(-2.5deg); }
.bas-dash-bar { display: flex; align-items: center; gap: 16px; padding: 16px 18px; border-bottom: 1px solid #e0e8de; background: #fff; }
.bas-dash-bar span { display: flex; align-items: center; gap: 9px; }
.bas-dash-bar span i { width: 29px; height: 29px; display: grid; place-items: center; color: #fff; border-radius: 8px; background: var(--bas-green); font-size: 12px; font-style: normal; font-weight: 800; }
.bas-dash-bar span b { font-size: 14px; }
.bas-dash-bar em { margin-left: auto; color: var(--bas-body); font-size: 11px; font-style: normal; }
.bas-dash-bar > strong { width: 30px; height: 30px; display: grid; place-items: center; color: var(--bas-green); border-radius: 50%; background: var(--bas-mint); font-size: 10px; }
.bas-dash-body { display: grid; grid-template-columns: 105px 1fr; min-height: 445px; }
.bas-dash-body aside { display: flex; flex-direction: column; gap: 4px; padding: 22px 12px; border-right: 1px solid #e0e8de; background: #f2f6ef; }
.bas-dash-body aside > * { padding: 9px 10px; border-radius: 7px; color: #708276; font-size: 9px; }
.bas-dash-body aside b { color: var(--bas-green); background: var(--bas-mint); }
.bas-dash-main { min-width: 0; padding: 24px; }
.bas-dash-main > small { color: var(--bas-green); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.bas-dash-main > h2 { margin: 6px 0 3px; font-size: 19px; letter-spacing: -.03em; }
.bas-dash-main > p { margin: 0; color: #748679; font-size: 10px; }
.bas-dash-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 19px; }
.bas-dash-metrics span { display: grid; grid-template-columns: 26px 1fr; gap: 2px 8px; padding: 12px; border: 1px solid #dfe8df; border-radius: 10px; background: #fff; }
.bas-dash-metrics i { grid-row: 1 / 3; width: 26px; height: 26px; display: grid; place-items: center; color: var(--bas-green); border-radius: 7px; background: var(--bas-mint); font-size: 8px; font-style: normal; font-weight: 800; }
.bas-dash-metrics small { color: #7b8d80; font-size: 8px; }
.bas-dash-metrics b { font-size: 9px; }
.bas-dash-panels { display: grid; grid-template-columns: 1.25fr .75fr; gap: 10px; margin-top: 11px; }
.bas-dash-panels article { min-width: 0; min-height: 190px; padding: 15px; border: 1px solid #dfe8df; border-radius: 11px; background: #fff; }
.bas-dash-panels article > small { color: #758779; font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.bas-dash-panels article > div:not(.bas-quick) { display: flex; justify-content: space-between; gap: 6px; padding: 13px 0; border-bottom: 1px solid #e7eee6; font-size: 8px; }
.bas-dash-panels article > div b { color: var(--bas-green); font-size: 7px; }
.bas-quick { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 13px; }
.bas-quick i { min-height: 49px; display: grid; place-items: center; color: var(--bas-green); border-radius: 8px; background: var(--bas-soft); font-size: 8px; font-style: normal; font-weight: 800; }

/* Institution cards */
.bas-institutions { background: #fff; }
.bas-institution-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 48px; }
.bas-institution-grid article { display: flex; flex-direction: column; min-height: 320px; padding: 28px; border: 1px solid var(--bas-line); border-radius: 17px; background: #fff; box-shadow: 0 18px 45px rgba(20, 69, 38, .055); }
.bas-institution-grid article > i { width: 43px; height: 43px; display: grid; place-items: center; color: var(--bas-green); border-radius: 12px; background: var(--bas-mint); font-size: 11px; font-style: normal; font-weight: 800; }
.bas-institution-grid h3 { margin: 21px 0 10px; font-size: 21px; }
.bas-institution-grid p { margin: 0; color: var(--bas-body); font-size: 14px; line-height: 1.75; }
.bas-institution-grid article > small { margin-top: auto; padding-top: 22px; color: var(--bas-green); border-top: 1px solid var(--bas-line); font-size: 11px; font-weight: 700; line-height: 1.55; }

/* Foundation */
.bas-foundation { background: var(--bas-paper); }
.bas-split { display: grid; grid-template-columns: 1fr .86fr; gap: 90px; align-items: center; }
.bas-check-list { display: grid; gap: 14px; margin: 30px 0 0; padding: 0; list-style: none; }
.bas-check-list li { position: relative; padding-left: 30px; color: var(--bas-body); font-size: 14px; line-height: 1.72; }
.bas-check-list li::before { content: '✓'; position: absolute; top: 1px; left: 0; width: 20px; height: 20px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--bas-green); font-size: 10px; font-weight: 800; }
.bas-check-list b { color: var(--bas-ink); }
.bas-context-map { padding: 30px; border: 1px solid #ceddcc; border-radius: 21px; background: var(--bas-card); box-shadow: 0 24px 55px rgba(19, 67, 35, .1); }
.bas-context-root { display: flex; align-items: center; gap: 13px; width: max-content; margin: auto; padding: 14px 20px; border-radius: 13px; color: #fff; background: linear-gradient(135deg, var(--bas-deep), var(--bas-green-2)); }
.bas-context-root > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; background: rgba(255,255,255,.15); font-style: normal; font-weight: 800; }
.bas-context-root small, .bas-context-root b { display: block; }
.bas-context-root small { color: #bde4c4; font-size: 8px; letter-spacing: .1em; }
.bas-context-root b { margin-top: 2px; font-size: 14px; }
.bas-context-line { width: 1px; height: 34px; margin: auto; background: #9fc4a5; }
.bas-context-units { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.bas-context-units::before { content: ''; position: absolute; top: -17px; left: 16%; right: 16%; height: 17px; border: solid #9fc4a5; border-width: 1px 1px 0; }
.bas-context-units span { position: relative; display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 14px 7px; border: 1px solid var(--bas-line); border-radius: 11px; background: #fff; text-align: center; }
.bas-context-units span::before { content: ''; position: absolute; top: -18px; height: 18px; border-left: 1px solid #9fc4a5; }
.bas-context-units i { width: 28px; height: 28px; display: grid; place-items: center; color: var(--bas-green); border-radius: 8px; background: var(--bas-mint); font-size: 9px; font-style: normal; font-weight: 800; }
.bas-context-units b { font-size: 11px; }
.bas-context-role { margin-top: 22px; padding: 18px; border-radius: 12px; background: var(--bas-soft); text-align: center; }
.bas-context-role small { color: var(--bas-green); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.bas-context-role b { display: block; margin: 5px 0; font-size: 14px; }
.bas-context-role p { margin: 0; color: var(--bas-body); font-size: 11px; line-height: 1.6; }

/* Domain sections */
.bas-domain-head { display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: start; }
.bas-domain-index { display: flex; align-items: center; gap: 13px; padding-top: 15px; }
.bas-domain-index strong { color: var(--bas-green); font-size: 56px; letter-spacing: -.08em; }
.bas-domain-index span { color: var(--bas-muted); font-size: 10px; font-weight: 800; letter-spacing: .12em; line-height: 1.55; }
.bas-story-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; margin-top: 48px; }
.bas-story-grid article { min-height: 245px; padding: 27px; border: 1px solid var(--bas-line); border-radius: 15px; background: #fff; }
.bas-story-grid article:not(.bas-story-feature) > i,
.bas-ops-bento article > i,
.bas-public-grid i { width: 40px; height: 40px; display: grid; place-items: center; color: var(--bas-green); border-radius: 11px; background: var(--bas-mint); font-size: 10px; font-style: normal; font-weight: 800; }
.bas-story-grid h3, .bas-ops-bento h3, .bas-public-grid h3 { margin: 20px 0 10px; font-size: 19px; line-height: 1.35; }
.bas-story-grid p, .bas-ops-bento p, .bas-public-grid p { margin: 0; color: var(--bas-body); font-size: 14px; line-height: 1.72; }
.bas-story-grid .bas-story-feature { grid-column: span 2; color: #fff; border-color: transparent; background: linear-gradient(135deg, var(--bas-deep), var(--bas-green)); }
.bas-story-feature > small { color: #aee8b6; font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.bas-story-feature h3 { max-width: 620px; margin-top: 13px; color: #fff; font-size: 28px; }
.bas-story-feature > p { max-width: 650px; color: #d2e7d5; }
.bas-mini-process { display: flex; align-items: center; gap: 13px; margin-top: 23px; }
.bas-mini-process > span { min-width: 116px; padding: 12px 14px; border: 1px solid rgba(255,255,255,.18); border-radius: 10px; background: rgba(255,255,255,.07); }
.bas-mini-process b, .bas-mini-process small { display: block; }
.bas-mini-process b { color: #fff; font-size: 12px; }
.bas-mini-process small { margin-top: 3px; color: #b9d8bf; font-size: 9px; }
.bas-mini-process > i { color: var(--bas-gold-light); font-style: normal; }

.bas-education { color: #fff; background: linear-gradient(145deg, #00351e, #006331); }
.bas-education .bas-heading h2 { color: #fff; }
.bas-education .bas-heading h2 span { color: #c9ef9f; }
.bas-education .bas-heading > p:last-child { color: #c8dfcc; }
.bas-education .bas-kicker { color: #9fe5ac; }
.bas-education .bas-domain-index strong { color: var(--bas-gold-light); }
.bas-education .bas-domain-index span { color: #afd2b5; }
.bas-education-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 15px; margin-top: 48px; }
.bas-education-rail { padding: 15px; border: 1px solid rgba(255,255,255,.18); border-radius: 17px; background: rgba(0,0,0,.12); }
.bas-education-rail span { display: grid; grid-template-columns: 38px 1fr; gap: 3px 12px; padding: 17px; border-radius: 11px; }
.bas-education-rail span + span { margin-top: 5px; }
.bas-education-rail span.active { background: #fff; }
.bas-education-rail i { grid-row: 1 / 3; width: 38px; height: 38px; display: grid; place-items: center; color: var(--bas-gold-light); border-radius: 10px; background: rgba(255,255,255,.11); font-size: 10px; font-style: normal; font-weight: 800; }
.bas-education-rail .active i { color: var(--bas-green); background: var(--bas-mint); }
.bas-education-rail b { color: #fff; font-size: 14px; }
.bas-education-rail small { color: #aacbb0; font-size: 10px; }
.bas-education-rail .active b { color: var(--bas-ink); }
.bas-education-rail .active small { color: var(--bas-muted); }
.bas-detail-matrix { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: 17px; background: rgba(255,255,255,.18); }
.bas-detail-matrix article { padding: 27px; background: rgba(0, 40, 21, .6); }
.bas-detail-matrix h3 { margin: 0 0 15px; color: #fff; font-size: 18px; }
.bas-detail-matrix ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.bas-detail-matrix li { position: relative; padding-left: 17px; color: #c9e0cd; font-size: 13px; line-height: 1.6; }
.bas-detail-matrix li::before { content: '•'; position: absolute; left: 0; color: var(--bas-gold-light); }

.bas-operations { background: var(--bas-paper); }
.bas-ops-bento { display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; margin-top: 48px; }
.bas-ops-bento article { min-height: 240px; padding: 25px; border: 1px solid var(--bas-line); border-radius: 15px; background: var(--bas-card); }
.bas-ops-bento .bas-ops-large { grid-column: span 2; grid-row: span 2; display: grid; grid-template-rows: auto 1fr; min-height: 493px; color: #fff; border: 0; background: linear-gradient(150deg, #003b22, #00723a); }
.bas-ops-large small { color: #a7e3b1; font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.bas-ops-large h3 { max-width: 520px; color: #fff; font-size: 29px; }
.bas-ops-large p { color: #cfe5d3; }
.bas-room-list { align-self: end; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; }
.bas-room-list span { display: grid; grid-template-columns: 34px 1fr auto; gap: 11px; align-items: center; padding: 13px; border-bottom: 1px solid rgba(255,255,255,.13); }
.bas-room-list span:last-child { border: 0; }
.bas-room-list i { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: rgba(255,255,255,.12); font-size: 10px; font-style: normal; font-weight: 800; }
.bas-room-list b { font-size: 12px; }
.bas-room-list em { color: #acd0b2; font-size: 9px; font-style: normal; }

/* Maliyah */
.bas-finance { background: var(--bas-soft); }
.bas-finance-grid { display: grid; grid-template-columns: 1fr .82fr; gap: 80px; align-items: center; }
.bas-capability-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.bas-capability-tags span { padding: 9px 12px; color: #315d40; border: 1px solid var(--bas-line); border-radius: 30px; background: #fff; font-size: 12px; font-weight: 700; }
.bas-honesty { margin-top: 21px !important; padding: 15px 17px; border-left: 3px solid var(--bas-gold); border-radius: 0 9px 9px 0; background: #fff8df; color: #705b24 !important; font-size: 13px !important; line-height: 1.7 !important; }
.bas-ledger { padding: 23px; border: 1px solid var(--bas-line); border-radius: 19px; background: #fff; box-shadow: 0 25px 58px rgba(18, 69, 35, .12); }
.bas-ledger-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid var(--bas-line); }
.bas-ledger-head small, .bas-ledger-head b { display: block; }
.bas-ledger-head small { color: var(--bas-green); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.bas-ledger-head b { margin-top: 3px; font-size: 15px; }
.bas-ledger-head em { padding: 7px 9px; color: var(--bas-green); border-radius: 20px; background: var(--bas-mint); font-size: 9px; font-style: normal; font-weight: 800; }
.bas-ledger-balance { margin: 17px 0 4px; padding: 19px; border-radius: 13px; color: #fff; background: linear-gradient(135deg, var(--bas-deep), var(--bas-green-2)); }
.bas-ledger-balance > * { display: block; }
.bas-ledger-balance small { color: #aed8b5; font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.bas-ledger-balance b { margin: 8px 0 4px; font-size: 18px; }
.bas-ledger-balance span { color: #c6dfca; font-size: 10px; line-height: 1.5; }
.bas-ledger-row { display: grid; grid-template-columns: 35px 1fr auto; gap: 11px; align-items: center; padding: 15px 2px; border-bottom: 1px solid var(--bas-line); }
.bas-ledger-row:last-child { border: 0; }
.bas-ledger-row > i { width: 34px; height: 34px; display: grid; place-items: center; color: var(--bas-green); border-radius: 9px; background: var(--bas-mint); font-style: normal; font-weight: 800; }
.bas-ledger-row > i.out { color: #a36310; background: #fbecd3; }
.bas-ledger-row > i.save { color: #285fc0; background: #e3edff; }
.bas-ledger-row b, .bas-ledger-row small { display: block; }
.bas-ledger-row b { font-size: 12px; }
.bas-ledger-row small { margin-top: 3px; color: var(--bas-muted); font-size: 9px; }
.bas-ledger-row em { color: var(--bas-green); font-size: 9px; font-style: normal; font-weight: 700; }

/* Governance, documents, family */
.bas-governance { background: #fff; }
.bas-role-lanes { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; overflow: hidden; margin-top: 48px; border: 1px solid var(--bas-line); border-radius: 17px; background: var(--bas-line); }
.bas-role-lanes article { display: flex; flex-direction: column; min-height: 300px; padding: 27px; background: #fff; }
.bas-role-lanes small { color: var(--bas-green); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.bas-role-lanes h3 { margin: 18px 0 11px; font-size: 18px; line-height: 1.4; }
.bas-role-lanes p { margin: 0; color: var(--bas-body); font-size: 13px; line-height: 1.72; }
.bas-role-lanes span { margin-top: auto; padding-top: 18px; color: var(--bas-green); border-top: 1px solid var(--bas-line); font-size: 10px; font-weight: 700; }
.bas-document-strip { display: grid; grid-template-columns: 1.25fr .75fr; gap: 60px; align-items: center; margin-top: 15px; padding: 42px; color: #fff; border-radius: 17px; background: linear-gradient(135deg, #00351f, #006c36); }
.bas-document-strip small { color: #a7e3b1; font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.bas-document-strip h3 { margin: 10px 0; color: #fff; font-size: 26px; }
.bas-document-strip p { margin: 0; color: #cbe3cf; font-size: 14px; line-height: 1.75; }
.bas-document-strip ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.bas-document-strip li { padding: 11px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 9px; color: #d7e9d9; font-size: 12px; }
.bas-document-strip li::before { content: '✓'; margin-right: 8px; color: var(--bas-gold-light); }

.bas-family { background: var(--bas-paper); }
.bas-family-grid { grid-template-columns: .85fr 1fr; }
.bas-family-preview { padding: 23px; border: 7px solid #00341e; border-radius: 20px; background: #fff; box-shadow: 0 27px 62px rgba(14, 61, 30, .14); }
.bas-family-top { display: flex; justify-content: space-between; align-items: center; padding-bottom: 16px; border-bottom: 1px solid var(--bas-line); }
.bas-family-top span { display: flex; align-items: center; gap: 9px; }
.bas-family-top i { width: 29px; height: 29px; display: grid; place-items: center; color: #fff; border-radius: 8px; background: var(--bas-green); font-size: 10px; font-style: normal; font-weight: 800; }
.bas-family-top b { font-size: 13px; }
.bas-family-top em { color: var(--bas-muted); font-size: 9px; font-style: normal; }
.bas-child { display: flex; gap: 12px; align-items: center; margin: 17px 0; padding: 17px; border-radius: 12px; background: var(--bas-soft); }
.bas-child > i { width: 42px; height: 42px; display: grid; place-items: center; color: var(--bas-green); border-radius: 50%; background: #fff; font-size: 11px; font-style: normal; font-weight: 800; }
.bas-child small, .bas-child b, .bas-child em { display: block; }
.bas-child small { color: var(--bas-green); font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.bas-child b { margin: 2px 0; font-size: 14px; }
.bas-child em { color: var(--bas-muted); font-size: 9px; font-style: normal; }
.bas-family-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.bas-family-cards span { display: grid; grid-template-columns: 30px 1fr; gap: 3px 9px; padding: 12px; border: 1px solid var(--bas-line); border-radius: 10px; }
.bas-family-cards i { grid-row: 1 / 3; width: 29px; height: 29px; display: grid; place-items: center; color: var(--bas-green); border-radius: 8px; background: var(--bas-mint); font-size: 8px; font-style: normal; font-weight: 800; }
.bas-family-cards b { font-size: 10px; }
.bas-family-cards small { color: var(--bas-muted); font-size: 8px; line-height: 1.4; }
.bas-family-alert { display: grid; grid-template-columns: 32px 1fr; gap: 10px; align-items: center; margin-top: 8px; padding: 13px; border-radius: 10px; background: #fff6d9; }
.bas-family-alert > i { width: 30px; height: 30px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--bas-green-2); font-style: normal; }
.bas-family-alert b, .bas-family-alert small { display: block; }
.bas-family-alert b { font-size: 10px; }
.bas-family-alert small { margin-top: 3px; color: #76663b; font-size: 8px; }

/* Mobile */
.bas-mobile-section { color: #fff; background: radial-gradient(circle at 80% 15%, rgba(26, 173, 80, .28), transparent 27%), var(--bas-dark); }
.bas-mobile-grid { display: grid; grid-template-columns: 1.05fr .75fr; gap: 90px; align-items: center; }
.bas-mobile-section .bas-heading h2 { color: #fff; }
.bas-mobile-section .bas-heading h2 span { color: #c9ef9f; }
.bas-mobile-section .bas-heading > p:last-child { color: #c4ddc8; }
.bas-mobile-section .bas-kicker { color: #9ee7aa; }
.bas-mobile-points { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 28px; }
.bas-mobile-points article { display: grid; grid-template-columns: 36px 1fr; gap: 11px; padding: 15px; border: 1px solid rgba(255,255,255,.16); border-radius: 11px; background: rgba(255,255,255,.055); }
.bas-mobile-points article:last-child:nth-child(odd) { grid-column: 1 / -1; }
.bas-mobile-points i { width: 35px; height: 35px; display: grid; place-items: center; color: var(--bas-gold-light); border-radius: 9px; background: rgba(255,255,255,.1); font-size: 9px; font-style: normal; font-weight: 800; }
.bas-mobile-points b, .bas-mobile-points small { display: block; }
.bas-mobile-points b { color: #fff; font-size: 13px; }
.bas-mobile-points small { margin-top: 4px; color: #aac7af; font-size: 11px; line-height: 1.55; }
.bas-mobile-note { margin-top: 16px; padding: 14px 16px; color: #bcd5c1; border-left: 3px solid var(--bas-gold); background: rgba(255,255,255,.055); font-size: 12px; line-height: 1.65; }
.bas-mobile-note b { color: #fff; }
.bas-phone-stage { position: relative; display: grid; place-items: center; min-height: 610px; }
.bas-phone-stage::before { content: ''; position: absolute; width: 410px; height: 410px; border: 1px solid rgba(127, 231, 146, .18); border-radius: 50%; box-shadow: 0 0 0 70px rgba(87, 205, 109, .035), 0 0 0 140px rgba(87, 205, 109, .02); }
.bas-phone { position: relative; width: min(310px, 100%); padding: 18px; color: var(--bas-ink); border: 8px solid #00160d; border-radius: 40px; background: #fbfdf8; box-shadow: 0 34px 75px rgba(0,0,0,.48); }
.bas-phone-status, .bas-phone-head { display: flex; align-items: center; justify-content: space-between; }
.bas-phone-status { padding-inline: 5px; font-size: 9px; }
.bas-phone-status span { color: #53695b; font-size: 7px; letter-spacing: 3px; }
.bas-phone-head { padding: 17px 2px 14px; }
.bas-phone-head small, .bas-phone-head b { display: block; }
.bas-phone-head small { color: var(--bas-muted); font-size: 9px; }
.bas-phone-head b { margin-top: 3px; font-size: 15px; }
.bas-phone-head i { width: 31px; height: 31px; display: grid; place-items: center; color: var(--bas-green); border-radius: 50%; background: var(--bas-mint); font-size: 11px; font-style: normal; font-weight: 800; }
.bas-phone-context { padding: 15px; color: #fff; border-radius: 13px; background: linear-gradient(135deg, var(--bas-deep), var(--bas-green-2)); }
.bas-phone-context > * { display: block; }
.bas-phone-context small { color: #afd7b6; font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.bas-phone-context b { margin: 5px 0; font-size: 12px; }
.bas-phone-context span { color: var(--bas-gold-light); font-size: 9px; }
.bas-phone-action { margin-top: 9px; padding: 13px; border-radius: 11px; background: #fff3cd; }
.bas-phone-action > * { display: block; }
.bas-phone-action small { color: #9b761b; font-size: 8px; font-weight: 800; letter-spacing: .08em; }
.bas-phone-action b { margin: 4px 0; font-size: 11px; }
.bas-phone-action span { color: var(--bas-green); font-size: 8px; font-weight: 700; }
.bas-phone-label { display: block; margin: 17px 2px 4px; color: var(--bas-muted); font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.bas-phone-list > span { display: grid; grid-template-columns: 29px 1fr auto; gap: 10px; align-items: center; padding: 11px 2px; border-bottom: 1px solid var(--bas-line); }
.bas-phone-list i { width: 28px; height: 28px; display: grid; place-items: center; color: var(--bas-green); border-radius: 8px; background: var(--bas-mint); font-size: 8px; font-style: normal; font-weight: 800; }
.bas-phone-list b, .bas-phone-list small { display: block; }
.bas-phone-list b { font-size: 10px; }
.bas-phone-list small { margin-top: 2px; color: var(--bas-muted); font-size: 8px; font-weight: 400; }
.bas-phone-list em { color: var(--bas-muted); font-style: normal; }
.bas-phone-nav { display: flex; justify-content: space-around; padding-top: 10px; color: #839487; }
.bas-phone-nav > * { display: grid; place-items: center; font-size: 12px; }
.bas-phone-nav small { margin-top: 3px; font-size: 7px; }
.bas-phone-nav b { color: var(--bas-green); }

/* Public, alumni, security, implementation, FAQ */
.bas-public { background: #fff; }
.bas-public-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; margin-top: 48px; }
.bas-public-grid article { min-height: 260px; padding: 27px; border: 1px solid var(--bas-line); border-radius: 15px; background: #fff; }
.bas-alumni { overflow: hidden; background: linear-gradient(135deg, #eef7ed 0%, #fffdf5 56%, #f8f0cf 100%); }
.bas-alumni-grid { display: grid; grid-template-columns: 1fr .92fr; gap: 76px; align-items: center; }
.bas-alumni-directory { position: relative; padding: 23px; border: 7px solid #00341e; border-radius: 21px; background: #fff; box-shadow: 0 30px 75px rgba(5, 58, 28, .17); }
.bas-alumni-directory::before { content: ''; position: absolute; z-index: -1; inset: -32px 36px 32px -36px; border: 1px solid rgba(0, 107, 53, .18); border-radius: 27px; transform: rotate(-3deg); }
.bas-alumni-top { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 17px; border-bottom: 1px solid var(--bas-line); }
.bas-alumni-top > span { display: flex; align-items: center; gap: 10px; }
.bas-alumni-top i, .bas-alumni-row > i { display: grid; place-items: center; flex: 0 0 auto; color: #fff; border-radius: 9px; background: var(--bas-green); font-style: normal; font-weight: 800; }
.bas-alumni-top i { width: 34px; height: 34px; font-size: 10px; }
.bas-alumni-top b { color: var(--bas-ink); font-size: 14px; }
.bas-alumni-top em { color: var(--bas-muted); font-size: 10px; font-style: normal; }
.bas-alumni-search { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; padding: 13px 15px; color: #829187; border: 1px solid var(--bas-line); border-radius: 10px; background: #fbfcf8; font-size: 11px; }
.bas-alumni-search b { color: var(--bas-green); font-size: 17px; }
.bas-alumni-pending { display: grid; grid-template-columns: 34px 1fr auto; gap: 11px; align-items: center; margin: 10px 0 7px; padding: 14px; border-radius: 11px; background: #fff4cf; }
.bas-alumni-pending > i { width: 32px; height: 32px; display: grid; place-items: center; color: #674e09; border-radius: 50%; background: var(--bas-gold-light); font-style: normal; font-weight: 900; }
.bas-alumni-pending b, .bas-alumni-pending small, .bas-alumni-row b, .bas-alumni-row small { display: block; }
.bas-alumni-pending b { color: #56420c; font-size: 11px; }
.bas-alumni-pending small { margin-top: 3px; color: #806d38; font-size: 9px; }
.bas-alumni-pending em { color: var(--bas-green); font-size: 9px; font-style: normal; font-weight: 800; }
.bas-alumni-row { display: grid; grid-template-columns: 36px 1fr auto; gap: 11px; align-items: center; padding: 12px 3px; border-bottom: 1px solid var(--bas-line); }
.bas-alumni-row > i { width: 34px; height: 34px; color: var(--bas-green); background: var(--bas-mint); font-size: 9px; }
.bas-alumni-row b { color: var(--bas-ink); font-size: 11px; }
.bas-alumni-row small { margin-top: 3px; color: var(--bas-muted); font-size: 9px; }
.bas-alumni-row em { padding: 5px 8px; color: #05763b; border-radius: 99px; background: #e5f6e6; font-size: 8px; font-style: normal; font-weight: 800; }
.bas-alumni-fields { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.bas-alumni-fields span { padding: 6px 9px; color: #56705e; border: 1px solid #d9e8da; border-radius: 99px; background: #f6faf4; font-size: 8px; font-weight: 700; }
.bas-alumni-services { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 46px; }
.bas-alumni-services article { min-height: 230px; padding: 25px; border: 1px solid #d7e6d7; border-radius: 15px; background: rgba(255,255,255,.82); box-shadow: 0 15px 36px rgba(22, 72, 35, .055); }
.bas-alumni-services i { width: 37px; height: 37px; display: grid; place-items: center; color: #fff; border-radius: 10px; background: var(--bas-green); font-size: 9px; font-style: normal; font-weight: 800; }
.bas-alumni-services h3 { margin: 19px 0 9px; color: var(--bas-ink); font-size: 18px; line-height: 1.25; }
.bas-alumni-services p { margin: 0; color: var(--bas-body); font-size: 13px; line-height: 1.72; }
.bas-security { color: #fff; background: linear-gradient(125deg, #002b19, #004d29); }
.bas-security-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 90px; align-items: center; }
.bas-security .bas-kicker { color: #9ee4a9; }
.bas-security h2 { color: #fff; }
.bas-security-grid > div:first-child > p:last-child { color: #c1dac5; }
.bas-security-list { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.bas-security-list span { display: grid; grid-template-columns: 32px 1fr; gap: 3px 10px; padding: 17px; border: 1px solid rgba(255,255,255,.16); border-radius: 11px; background: rgba(255,255,255,.045); }
.bas-security-list i { grid-row: 1 / 3; color: var(--bas-gold-light); font-size: 10px; font-style: normal; font-weight: 800; }
.bas-security-list b { color: #fff; font-size: 13px; }
.bas-security-list small { color: #aac9b0; font-size: 10px; line-height: 1.5; }
.bas-implementation { background: var(--bas-paper); }
.bas-timeline { position: relative; display: grid; gap: 0; max-width: 980px; margin: 55px auto 0; padding: 0; list-style: none; }
.bas-timeline::before { content: ''; position: absolute; top: 0; bottom: 0; left: 50%; width: 2px; background: #a7c9aa; transform: translateX(-50%); }
.bas-timeline li { position: relative; width: 50%; padding: 0 60px 43px 0; text-align: right; }
.bas-timeline li:nth-child(even) { margin-left: 50%; padding: 0 0 43px 60px; text-align: left; }
.bas-timeline li > i { position: absolute; top: 2px; right: -19px; z-index: 1; width: 38px; height: 38px; display: grid; place-items: center; color: #fff; border: 5px solid var(--bas-paper); border-radius: 50%; background: var(--bas-green); font-size: 9px; font-style: normal; font-weight: 800; box-shadow: 0 0 0 1px #91ba98; }
.bas-timeline li:nth-child(even) > i { right: auto; left: -19px; }
.bas-timeline li > div { padding: 24px; border: 1px solid var(--bas-line); border-radius: 14px; background: #fff; box-shadow: 0 14px 35px rgba(14, 64, 30, .055); }
.bas-timeline small { color: var(--bas-green); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.bas-timeline h3 { margin: 9px 0; font-size: 18px; }
.bas-timeline p { margin: 0; color: var(--bas-body); font-size: 13px; line-height: 1.7; }
.bas-faq { background: #fff; }
.bas-faq-grid { display: grid; grid-template-columns: .7fr 1fr; gap: 90px; align-items: start; }
.bas-faq-list details { border-bottom: 1px solid var(--bas-line); }
.bas-faq-list summary { position: relative; padding: 22px 44px 22px 0; color: var(--bas-ink); font-size: 16px; font-weight: 800; line-height: 1.5; cursor: pointer; list-style: none; }
.bas-faq-list summary::-webkit-details-marker { display: none; }
.bas-faq-list summary::after { content: '+'; position: absolute; top: 21px; right: 2px; width: 27px; height: 27px; display: grid; place-items: center; color: var(--bas-green); border: 1px solid var(--bas-line); border-radius: 50%; }
.bas-faq-list details[open] summary::after { content: '−'; color: #fff; background: var(--bas-green); }
.bas-faq-list details p { max-width: 690px; margin: -5px 45px 22px 0; color: var(--bas-body); font-size: 14px; line-height: 1.75; }

/* CTA and footer */
.bas-cta { position: relative; overflow: hidden; padding: 105px 0; color: #fff; background: radial-gradient(circle at 50% 130%, rgba(85, 211, 107, .34), transparent 40%), linear-gradient(125deg, #004726, #00803c); text-align: center; }
.bas-cta .bas-kicker { color: #b7eebd; }
.bas-cta h2 { max-width: 900px; margin: 14px auto 17px; color: #fff; font-size: clamp(41px, 4.7vw, 61px); letter-spacing: -.06em; line-height: 1.08; }
.bas-cta > .bas-shell > p:not(.bas-kicker) { max-width: 720px; margin: 0 auto; color: #d4e9d7; font-size: 16px; line-height: 1.75; }
.bas-actions-center { justify-content: center; }
.bas-button-gold { color: var(--bas-deep) !important; background: var(--bas-gold-light) !important; }
.bas-button-outline { color: #fff !important; border-color: rgba(255,255,255,.4) !important; background: rgba(255,255,255,.07) !important; }
.bas-page .site-footer { background: #001d11; }
.bas-page .footer-brand p { color: #9ab2a1; font-size: 13px; line-height: 1.7; }
.bas-page .footer-top h4 { font-size: 12px; }
.bas-page .footer-top > div:not(:first-child) a { color: #8fa89a; font-size: 12px; line-height: 1.55; }
.bas-page .footer-bottom p, .bas-page .footer-bottom span { color: #6e8778; font-size: 10px; }

@media (max-width: 1100px) {
  .bas-hero-grid { grid-template-columns: 1fr; min-height: auto; padding-top: 78px; }
  .bas-hero-copy { max-width: 760px; }
  .bas-dashboard { max-width: 760px; transform: none; }
  .bas-institution-grid { grid-template-columns: 1fr 1fr; }
  .bas-institution-grid article { min-height: 280px; }
  .bas-split, .bas-finance-grid, .bas-mobile-grid, .bas-security-grid, .bas-faq-grid { gap: 55px; }
  .bas-ops-bento { grid-template-columns: 1fr 1fr; }
  .bas-role-lanes { grid-template-columns: 1fr 1fr; }
  .bas-role-lanes article { min-height: 265px; }
}

@media (min-width: 761px) and (max-width: 1050px) {
  .bas-page .section-nav > div { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; }
  .bas-page .section-links { min-width: 0; margin: 0; gap: 12px; overflow-x: auto; scrollbar-width: none; }
  .bas-page .section-links::-webkit-scrollbar { display: none; }
  .bas-page .section-links a { white-space: nowrap; }
}

@media (max-width: 900px) {
  .bas-section { padding: 88px 0; }
  .bas-split, .bas-finance-grid, .bas-mobile-grid, .bas-alumni-grid, .bas-security-grid, .bas-faq-grid { grid-template-columns: 1fr; }
  .bas-context-map, .bas-family-preview, .bas-ledger { max-width: 620px; }
  .bas-story-grid, .bas-public-grid { grid-template-columns: 1fr 1fr; }
  .bas-alumni-directory { width: min(100%, 660px); }
  .bas-alumni-services { grid-template-columns: 1fr 1fr; }
  .bas-education-layout { grid-template-columns: 1fr; }
  .bas-education-rail { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; }
  .bas-education-rail span + span { margin: 0; }
  .bas-document-strip { grid-template-columns: 1fr; gap: 28px; }
  .bas-phone-stage { min-height: 590px; }
}

@media (max-width: 760px) {
  .bas-page [id] { scroll-margin-top: 116px; }
  .bas-hero-grid { gap: 46px; padding: 66px 0 50px; }
  .bas-hero h1 { font-size: 49px; }
  .bas-hero-note .bas-shell { grid-template-columns: 1fr; gap: 5px; }
  .bas-dashboard { border-width: 5px; }
  .bas-dash-body { grid-template-columns: 1fr; }
  .bas-dash-body aside { display: none; }
  .bas-domain-head { grid-template-columns: 1fr; gap: 10px; }
  .bas-domain-index { order: -1; padding: 0; }
  .bas-domain-index strong { font-size: 38px; }
  .bas-story-grid, .bas-public-grid { grid-template-columns: 1fr; }
  .bas-story-grid .bas-story-feature { grid-column: auto; }
  .bas-story-grid article { min-height: auto; }
  .bas-mini-process { align-items: stretch; }
  .bas-mini-process > span { min-width: 0; flex: 1; }
  .bas-detail-matrix { grid-template-columns: 1fr; }
  .bas-mobile-points { grid-template-columns: 1fr; }
  .bas-mobile-points article:last-child:nth-child(odd) { grid-column: auto; }
  .bas-document-strip { padding: 31px 25px; }
  .bas-timeline::before { left: 19px; }
  .bas-timeline li, .bas-timeline li:nth-child(even) { width: 100%; margin: 0; padding: 0 0 25px 57px; text-align: left; }
  .bas-timeline li > i, .bas-timeline li:nth-child(even) > i { right: auto; left: 0; }
}

@media (max-width: 640px) {
  .bas-shell { width: calc(100% - 30px); }
  .bas-section { padding: 72px 0; }
  .bas-heading h2, .bas-security h2 { font-size: 37px; }
  .bas-heading > p:last-child, .bas-security > .bas-shell > div:first-child > p:last-child { font-size: 15px; }
  .bas-hero h1 { font-size: 42px; }
  .bas-hero-lead { font-size: 15px; }
  .bas-actions { flex-direction: column; }
  .bas-actions .button { width: 100%; }
  .bas-proof { display: grid; }
  .bas-dash-main { padding: 16px; }
  .bas-dash-metrics { grid-template-columns: 1fr; }
  .bas-dash-panels { grid-template-columns: 1fr; }
  .bas-dash-panels article:last-child { display: none; }
  .bas-institution-grid { grid-template-columns: 1fr; }
  .bas-institution-grid article { min-height: auto; }
  .bas-context-map { padding: 22px 15px; }
  .bas-context-units { gap: 5px; }
  .bas-context-units b { font-size: 9px; }
  .bas-mini-process { display: grid; grid-template-columns: 1fr; }
  .bas-mini-process > i { display: none; }
  .bas-education-rail { grid-template-columns: 1fr; }
  .bas-ops-bento { grid-template-columns: 1fr; }
  .bas-ops-bento .bas-ops-large { grid-column: auto; grid-row: auto; min-height: 520px; }
  .bas-role-lanes { grid-template-columns: 1fr; }
  .bas-role-lanes article { min-height: auto; }
  .bas-family-cards { grid-template-columns: 1fr; }
  .bas-phone-stage { min-height: 570px; }
  .bas-phone-stage::before { width: 300px; height: 300px; }
  .bas-security-list { grid-template-columns: 1fr; }
  .bas-alumni-services { grid-template-columns: 1fr; }
  .bas-alumni-services article { min-height: auto; }
  .bas-alumni-directory { padding: 17px; border-width: 5px; }
  .bas-alumni-top { align-items: flex-start; }
  .bas-alumni-top em { max-width: 110px; text-align: right; }
  .bas-alumni-pending { grid-template-columns: 32px 1fr; }
  .bas-alumni-pending em { grid-column: 2; }
  .bas-alumni-row { grid-template-columns: 34px 1fr; }
  .bas-alumni-row em { grid-column: 2; justify-self: start; }
  .bas-cta { padding: 78px 0; }
  .bas-cta h2 { font-size: 39px; }
}
