/* BSA approved system: exact logo colours, not an alternate Hallmark palette. */
.elementor .bsa-about{
 --color-paper:#ffffff;--color-paper-soft:#f5f9f7;--color-ink:#202124;--color-muted:#4b5256;
 --color-accent:#0c6031;--color-heading:#064b70;--color-rule:#d9e8e2;--color-focus:#064b70;
 --font-display:"BSA Montserrat",Arial,sans-serif;--font-body:var(--font-display);
 --space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;
 --text-small:13px;--text-body:16px;--text-subtitle:20px;--text-title:28px;--text-display:38px;
 --radius-photo:4px;--rule-width:1px;--ease-out:cubic-bezier(.23,1,.32,1);--dur-short:180ms;
}

/* Hallmark · macrostructure: BSA Constx content detail · tone: established corporate training · anchor hue: BSA logo green/blue
 * design-system: ../bsa-homepage-directions/constx-bsa/design.md · approved brand overrides palette/font rotation
 * nav/footer: frozen existing Elementor shell · pre-emit critique: P4 H4 E4 S5 R5 V4
 */

.bsa-about,.bsa-about *,.bsa-about *::before,.bsa-about *::after{box-sizing:border-box}
.elementor .bsa-about{font-family:var(--font-body);font-size:var(--text-body);line-height:1.7;color:var(--color-ink);background:var(--color-paper);min-width:0}
.elementor .bsa-about :where(div,span,p,a,li,strong,h1,h2,h3,figure,figcaption,nav){font-family:inherit}
.elementor .bsa-about :where(h1,h2,h3,p,figure,ul){padding:0;margin:0;color:inherit}
.bsa-about .bsa-about-shell{width:calc(100% - 32px);max-width:1180px;margin-inline:auto;min-width:0}
.bsa-about a{color:var(--color-accent);text-decoration:none}
.bsa-about a:focus-visible{outline:2px solid var(--color-focus);outline-offset:5px}
.bsa-about a:hover{text-decoration:underline;text-underline-offset:5px}
.bsa-about a:active{opacity:.8}
.bsa-about img{display:block;width:100%;max-width:100%;height:auto}
.bsa-about .bsa-about-pagehead{padding-block:var(--space-lg);background:var(--color-paper-soft);border-bottom:var(--rule-width) solid var(--color-rule)}
.bsa-about .bsa-about-breadcrumb{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);font-size:var(--text-small);line-height:1.5;margin-bottom:var(--space-sm);color:var(--color-muted)}
.bsa-about .bsa-about-breadcrumb a{color:inherit;white-space:nowrap}
.elementor .bsa-about h1{font-size:30px;line-height:1.25;font-weight:700;letter-spacing:-.02em;text-align:center;color:var(--color-heading);font-style:normal;overflow-wrap:anywhere;min-width:0}
.bsa-about .bsa-about-content{padding-block:var(--space-xl) var(--space-2xl)}
.bsa-about .bsa-about-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg);padding-block:var(--space-xl);border-bottom:var(--rule-width) solid var(--color-rule);align-items:start}


.bsa-about .about-one-wrapper{min-width:0}
.elementor .bsa-about .section-title{color:var(--color-heading);font-size:24px;font-weight:700;font-style:normal;line-height:1.3;letter-spacing:-.02em;margin-bottom:var(--space-md);text-align:center;overflow-wrap:anywhere;min-width:0}
.bsa-about .section-title::after{content:"";display:block;width:40px;height:2px;background:var(--color-accent);margin:var(--space-sm) auto 0}
.bsa-about .bsa-about-prose{display:grid;gap:var(--space-md)}
.bsa-about .bsa-about-prose p,.bsa-about .bsa-about-list{max-width:76ch}
.bsa-about strong{font-weight:700}
.bsa-about .bsa-about-photo{width:100%;min-width:0}
.bsa-about .bsa-about-photo img{aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-photo)}
.bsa-about .bsa-about-photo--vision,.bsa-about .bsa-about-photo--portrait{max-width:360px;justify-self:center}
.bsa-about .bsa-about-photo--vision img,.bsa-about .bsa-about-photo--portrait img{aspect-ratio:4/5;object-fit:contain}
.bsa-about .bsa-about-photo figcaption{font-size:var(--text-small);line-height:1.5;color:var(--color-muted);padding-top:var(--space-sm);text-align:left}
.bsa-about .bsa-about-statement+.bsa-about-statement{padding-top:var(--space-lg);margin-top:var(--space-lg);border-top:var(--rule-width) solid var(--color-rule)}
.bsa-about .bsa-about-list{padding-left:20px;display:grid;gap:var(--space-sm);list-style:disc}
.bsa-about .bsa-about-list li{padding-inline-start:var(--space-xs)}
.bsa-about .bsa-about-list li::marker{color:var(--color-accent)}
.bsa-about .bsa-about-list strong{display:inline}
.bsa-about .bsa-about-text-link{display:inline-flex;align-items:center;gap:var(--space-sm);font-weight:600;font-size:14px;line-height:1.5;min-height:44px;white-space:nowrap;justify-self:start;border-bottom:var(--rule-width) solid var(--color-accent)}
@media(min-width:48rem){
 .bsa-about .bsa-about-shell{width:calc(100% - 48px)}
 .bsa-about .bsa-about-pagehead{padding-block:var(--space-xl)}
 .elementor .bsa-about h1{font-size:var(--text-display)}
 .bsa-about .bsa-about-row{grid-template-columns:minmax(0, .85fr) minmax(0,1.65fr);gap:var(--space-xl);padding-block:var(--space-2xl)}
 .bsa-about .bsa-about-photo{position:sticky;top:var(--space-lg)}
 .bsa-about .bsa-about-photo img{aspect-ratio:4/3}
 .bsa-about .bsa-about-photo--vision img,.bsa-about .bsa-about-photo--portrait img{aspect-ratio:4/5}
 .elementor .bsa-about .section-title{font-size:var(--text-title);text-align:left}
 .bsa-about .section-title::after{margin-inline:0}
 .bsa-about .bsa-about-content{padding-block:var(--space-2xl) var(--space-3xl)}
}
@media(min-width:70rem){
 .bsa-about .bsa-about-row{grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:var(--space-2xl)}
 .bsa-about .bsa-about-photo img{aspect-ratio:4/3}
 .bsa-about .bsa-about-photo--vision img,.bsa-about .bsa-about-photo--portrait img{aspect-ratio:4/5}
}
@media(prefers-reduced-motion:reduce){.bsa-about *{scroll-behavior:auto;animation:none;transition:none}}

/* Per-widget spacing reproduces the approved single-shell document. */
.bsa-about-widget--last .bsa-about-row{border-bottom:0;padding-bottom:64px}
.bsa-about-widget--first .bsa-about-row{padding-top:32px}
@media(min-width:48rem){.bsa-about-widget--first .bsa-about-row{padding-top:48px}}
.elementor .bsa-about-prose ul.bsa-about-list{padding-left:20px;margin:0;display:grid;gap:8px;list-style:disc}
.elementor .bsa-about-prose p{font-size:16px;line-height:1.7;font-weight:400}
.elementor .bsa-about-prose li{font-size:16px;line-height:1.7;font-weight:400}
.bsa-about-text-link{margin-top:16px}
