/* Isolated landing-page styles; no nonprofit page or global layout changes. */
.lb-business { --fp-navy:#1f4685; --fp-blue:#2e67c5; --fp-ink:#333b45; --fp-paper:#fffdf9; --fp-soft:#f3f6fa; color:var(--fp-ink); background:var(--fp-paper); font-family:"Source Sans 3",sans-serif; font-size:18px; line-height:1.65; }
.lb-business *, .lb-business *::before, .lb-business *::after { box-sizing:border-box; }
.lb-business .lb-business-wrap { width:min(1200px,calc(100% - 64px)); margin-inline:auto; }
.lb-business h1,.lb-business h2,.lb-business h3,.lb-business h4 { font-family:Quicksand,sans-serif; color:var(--fp-navy); font-weight:700; letter-spacing:-.035em; margin:0; }
.lb-business h1 { font-size:clamp(46px,4.8vw,68px); line-height:1.08; }
.lb-business h1 span { color:var(--fp-blue); }
.lb-business h2 { font-size:clamp(32px,3.1vw,43px); line-height:1.18; margin-bottom:18px; }
.lb-business h3 { font-size:24px; line-height:1.25; }
.lb-business h4 { font-size:16px; line-height:1.4; letter-spacing:0; margin-top:22px; margin-bottom:6px; }
.lb-business p { margin:0 0 18px; font:inherit; color:inherit; }
.lb-business p:last-child { margin-bottom:0; }
.lb-business figure { margin:0; }
.lb-business img { display:block; max-width:100%; }
.lb-business .lb-business-lead { font-size:22px; line-height:1.45; color:var(--fp-navy); }
.lb-business-section { padding:80px 0; }
.lb-business-soft { background:var(--fp-soft); }
.lb-business-heading { max-width:720px; margin-bottom:36px; }
.lb-business-heading p { font-size:20px; line-height:1.55; }
.lb-business-hero { padding:56px 0 64px; background:linear-gradient(105deg,#fffdf9 45%,#eef4fc); }
.lb-business-hero-grid { display:grid; grid-template-columns:minmax(0,1.24fr) minmax(0,1fr); column-gap:64px; align-items:center; }
.lb-business-intro h1 { margin-bottom:24px; }
.lb-business-hero-phone { grid-column:2; grid-row:1/3; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:24px; }
.lb-business-hero-phone img { width:min(100%,320px); height:auto; object-fit:contain; filter:drop-shadow(0 18px 22px #1f468522); }
.lb-business figcaption { font-family:Quicksand,sans-serif; font-weight:600; color:var(--fp-navy); font-size:16px; line-height:1.5; padding-top:18px; text-align:center; }
.lb-business-hero-close { grid-column:1; }
.lb-business-hero-close > p { font-size:17px; color:#555c65; border-top:1px solid #d6dfeb; padding-top:18px; }
.lb-business-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.lb-business a.lb-business-button { min-height:50px; display:inline-flex; justify-content:center; align-items:center; background:var(--fp-blue); color:white; border:1px solid var(--fp-blue); border-radius:28px; text-decoration:none; font:700 16px/1.3 Quicksand,sans-serif; padding:15px 22px; box-shadow:none; text-align:center; }
.lb-business a.lb-business-button-secondary { color:var(--fp-navy); background:transparent; border-color:#9ab4df; }
.lb-business a.lb-business-button:hover { background:#1f4685; color:white; }
.lb-business a:focus-visible,.lb-business summary:focus-visible { outline:3px solid #bc730b; outline-offset:5px; }
.lb-business a.lb-business-button::after { content:none; }
.lb-business-uses { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.lb-business-use { overflow:hidden; background:#fff; border:1px solid #e1e7ed; border-radius:18px; display:flex; flex-direction:column; }
.lb-business-screen { padding:24px; background:#eaf2fc; height:330px; display:flex; align-items:center; justify-content:center; }
.lb-business .lb-business-screen img { width:auto; max-width:100%; height:100%; object-fit:contain; aspect-ratio:974/2008; }
.lb-business-use-copy { padding:26px; flex:1; }
.lb-business-use-copy p { font-size:17px; line-height:1.6; }
.lb-business .lb-business-example { padding:0; margin:24px 0 0; border:0; border-top:1px solid #d9e3ef; border-radius:0; background:transparent; box-shadow:none; }
.lb-business .lb-business-example > summary { position:static; display:flex; gap:16px; align-items:center; justify-content:space-between; padding:16px 0 0; list-style:none; background:none; color:var(--fp-navy); border:0; border-radius:0; font:700 16px/1.5 "Source Sans 3",sans-serif; cursor:pointer; }
.lb-business .lb-business-example > summary::-webkit-details-marker { display:none; }
.lb-business .lb-business-example > summary::after { content:"+"; position:static; display:block; flex:none; font-size:23px; background:none; width:auto; height:auto; }
.lb-business .lb-business-example[open] > summary::after { content:"−"; }
.lb-business .lb-business-example p { margin-top:12px; }
.lb-business .lb-business-note { font-size:15px; line-height:1.55; color:#56616d; margin-top:24px; max-width:850px; }
.lb-business-possibilities { display:grid; grid-template-columns:.8fr 1.5fr; gap:70px; align-items:start; }
.lb-business-audiences { display:grid; gap:0; }
.lb-business-audiences article { display:grid; grid-template-columns:112px minmax(0,1fr); gap:24px; align-items:center; border-bottom:1px solid #d8e0e9; padding:22px 0; }
.lb-business-audiences article:first-child { padding-top:0; }
.lb-business-audiences article:last-child { border-bottom:0; padding-bottom:0; }
.lb-business-audiences img { width:112px; height:112px; object-fit:cover; border-radius:12px; }
.lb-business-audiences h3 { font-size:22px; margin-bottom:8px; }
.lb-business-audiences p { font-size:17px; line-height:1.5; }
.lb-business-built { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.lb-business-built-visuals { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:20px; }
.lb-business .lb-business-portrait { width:100%; height:390px; object-fit:cover; object-position:42% center; border-radius:16px; }
.lb-business-built-phone img { width:100%; height:auto; object-fit:contain; }
.lb-business-features { list-style:none; margin:24px 0; padding:0; }
.lb-business-features li { position:relative; padding:12px 0 12px 27px; border-bottom:1px solid #e2e7ee; line-height:1.5; }
.lb-business-features li::before { content:"✓"; position:absolute; left:0; color:var(--fp-blue); font-weight:700; }
.lb-business .lb-business-key { color:var(--fp-navy); font:700 22px/1.45 Quicksand,sans-serif; margin-top:28px; }
.lb-business-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; margin:40px 0 32px; padding:0; gap:24px; }
.lb-business-process li { display:flex; align-items:center; gap:14px; padding:22px 0; position:relative; border-top:2px solid #bdcfe8; }
.lb-business-process li:not(:last-child)::after { content:"→"; color:#6980a1; position:absolute; right:0; top:-19px; background:var(--fp-soft); padding-left:8px; }
.lb-business-process svg { width:34px; height:34px; flex:none; color:var(--fp-blue); }
.lb-business-process h3 { font-size:21px; }
.lb-business .lb-business-timing { max-width:800px; font-size:17px; color:#56616d; }
.lb-business-final-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.lb-business-final-grid > img { width:100%; height:340px; object-fit:cover; border-radius:16px; }
.lb-business-final-grid h2 { font-size:clamp(30px,3vw,40px); }
.lb-business-final-grid .lb-business-button { margin-top:8px; }
.lb-business .lb-business-entity { margin-top:48px; padding-top:24px; border-top:1px solid #e1e7ee; max-width:1200px; }
@media(max-width:1000px) {
 .lb-business-hero-grid { column-gap:24px; }
 .lb-business-hero-phone { padding:12px; }
 .lb-business-use-copy { padding:22px; }
 .lb-business-uses { gap:16px; }
 .lb-business-built,.lb-business-final-grid { gap:32px; }
 .lb-business-possibilities { grid-template-columns:.8fr 1.3fr; gap:32px; }
 .lb-business-audiences article { gap:18px; }
 .lb-business-built-visuals { grid-template-columns:1fr; }
 .lb-business .lb-business-portrait { height:260px; }
 .lb-business-built-phone { width:180px; justify-self:center; }
 .lb-business-process h3 { font-size:18px; }
}
@media(max-width:760px) {
 .lb-business { font-size:18px; line-height:1.6; }
 .lb-business .lb-business-wrap { width:calc(100% - 40px); }
 .lb-business-section { padding:48px 0; }
 .lb-business-hero { padding:28px 0 42px; background:linear-gradient(#fffdf9 45%,#edf4fc); }
 .lb-business-hero-grid { display:flex; flex-direction:column; gap:0; align-items:stretch; }
 .lb-business h1 { font-size:clamp(42px,11vw,58px); }
 .lb-business h2 { font-size:32px; }
 .lb-business .lb-business-lead { font-size:21px; }
 .lb-business-hero-phone { padding:14px 0 24px; }
 .lb-business-hero-phone img { width:min(76%,280px); max-height:none; }
 .lb-business-hero-close { display:flex; flex-direction:column; }
 .lb-business-actions { order:-1; margin:0 0 24px; }
 .lb-business-actions > a { flex:1 1 100%; }
 .lb-business a.lb-business-button { font-size:16px; min-height:52px; }
 .lb-business-hero-close > p { margin-bottom:0; }
 .lb-business-heading { margin-bottom:28px; }
 .lb-business-heading p { font-size:19px; }
 .lb-business-uses { grid-template-columns:1fr; gap:24px; }
 .lb-business-screen { height:390px; padding:24px; }
 .lb-business-use-copy { padding:24px; }
 .lb-business-use-copy h3 { font-size:25px; }
 .lb-business-use-copy p { font-size:18px; }
 .lb-business h4 { font-size:17px; }
 .lb-business-possibilities,.lb-business-built,.lb-business-final-grid { grid-template-columns:1fr; gap:28px; }
 .lb-business-possibilities .lb-business-heading { margin:0; }
 .lb-business-audiences article { grid-template-columns:80px minmax(0,1fr); gap:16px; padding:22px 0; align-items:start; }
 .lb-business-audiences img { width:80px; height:94px; }
 .lb-business-audiences h3 { font-size:21px; }
 .lb-business-audiences p { font-size:17px; }
 .lb-business-built-visuals { grid-template-columns:1fr 1fr; gap:16px; }
 .lb-business .lb-business-portrait { height:300px; }
 .lb-business-built-phone { width:100%; }
 .lb-business-built-phone figcaption { font-size:14px; }
 .lb-business-built > div:last-child { grid-row:1; }
 .lb-business-process { grid-template-columns:1fr; margin:28px 0; gap:0; border-left:2px solid #bdcfe8; padding-left:22px; }
 .lb-business-process li { border:0; padding:14px 0; }
 .lb-business-process li:not(:last-child)::after { content:none; }
 .lb-business-process h3 { font-size:23px; }
 .lb-business-final-grid > img { height:auto; aspect-ratio:3/2; }
 .lb-business-final-grid h2 { font-size:32px; }
 .lb-business-final-grid .lb-business-button { width:100%; }
 .lb-business .lb-business-entity { margin-top:32px; }
}
@media(prefers-reduced-motion:reduce) { .lb-business * { scroll-behavior:auto; transition:none; } }
