/* ==========================================================================
   About page sections.
   ========================================================================== */
.bc-about-story {padding:var(--bc-section-y) 0;}
.bc-about-story__inner {display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:center;}
.bc-about-story__content {max-width:540px;}
.bc-about-story__eyebrow {display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--bc-secondary); margin-bottom:18px; font-weight:600;}
.bc-about-story__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-about-story__title {font-size:clamp(34px, 5vw, 64px); letter-spacing:-0.03em; margin-bottom:24px;}
.bc-about-story__text {color:var(--bc-text); font-size:17px; line-height:1.8;}
.bc-about-story__text p {margin-bottom:1.2em;}
.bc-about-story__visual-frame {position:relative; aspect-ratio:4 / 5; border-radius:var(--bc-radius-lg); overflow:hidden; box-shadow:var(--bc-shadow-lg);}
.bc-about-story__visual-frame img {width:100%; height:100%; object-fit:cover;}
.bc-about-story__visual-gradient {width:100%; height:100%; background:linear-gradient(135deg, var(--bc-primary), var(--bc-secondary));}

@media (max-width: 900px) {
.bc-about-story__inner {grid-template-columns:1fr; gap:50px;}
}

.bc-mv {padding:60px 0 var(--bc-section-y);}
.bc-mv__head {text-align:center; margin-bottom:40px;}
.bc-mv__eyebrow {display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--bc-secondary); font-weight:600;}
.bc-mv__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-mv__grid {display:grid; grid-template-columns:repeat(3, 1fr); gap:24px;}
.bc-mv__card {padding:40px 32px; border-radius:var(--bc-radius-lg); background:var(--bc-bg-soft); transition:transform .3s var(--bc-ease), background .3s var(--bc-ease), color .3s var(--bc-ease);}
.bc-mv__card:hover {transform:translateY(-6px);}
.bc-mv__card-img {border-radius:var(--bc-radius-md); overflow:hidden; aspect-ratio:16 / 10; margin-bottom:22px;}
.bc-mv__card-img img {width:100%; height:100%; object-fit:cover; display:block;}
.bc-mv__card--mission:hover {background:var(--bc-primary); color:#fff;}
.bc-mv__card--vision:hover {background:var(--bc-secondary); color:#fff;}
.bc-mv__card--values:hover {background:var(--bc-bg-dark); color:#fff;}
.bc-mv__icon {font-size:36px !important; color:var(--bc-secondary); background:rgba(var(--bc-secondary-rgb), 0.15); width:64px; height:64px; border-radius:18px; display:inline-flex; align-items:center; justify-content:center; margin-bottom:22px; transition:background .3s var(--bc-ease), color .3s var(--bc-ease);}
.bc-mv__card:hover .bc-mv__icon {background:rgba(255,255,255,0.15); color:#fff;}
.bc-mv__title {font-size:24px; margin-bottom:12px;}
.bc-mv__text {color:var(--bc-muted); line-height:1.7; transition:color .3s var(--bc-ease);}
.bc-mv__card:hover .bc-mv__text {color:rgba(255,255,255,0.9);}
.bc-mv__list {display:flex; flex-direction:column; gap:8px; color:var(--bc-muted);}
.bc-mv__list li {padding-left:22px; position:relative; transition:color .3s var(--bc-ease);}
.bc-mv__list li::before {content:"→"; position:absolute; left:0; color:var(--bc-secondary);}
.bc-mv__card:hover .bc-mv__list {color:rgba(255,255,255,0.9);}
.bc-mv__card:hover .bc-mv__list li::before {color:#fff;}

@media (max-width: 900px) {
.bc-mv__grid {grid-template-columns:1fr;}
}

.bc-timeline {position:relative; padding:var(--bc-section-y) 0; background:var(--bc-bg-soft);}
.bc-timeline__head {text-align:center; max-width:720px; margin:0 auto 80px;}
.bc-timeline__eyebrow {display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--bc-secondary); font-weight:600; margin-bottom:18px;}
.bc-timeline__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-timeline__title {font-size:clamp(36px, 5vw, 64px); letter-spacing:-0.03em;}
.bc-timeline__rail {position:relative; max-width:920px; margin:0 auto;}
.bc-timeline__rail::before {content:""; position:absolute; top:0; bottom:0; left:50%; width:2px; background:linear-gradient(180deg, transparent 0%, var(--bc-primary) 10%, var(--bc-secondary) 90%, transparent 100%); transform:translateX(-50%);}
.bc-timeline__item {position:relative; width:50%; padding:24px 0;}
.bc-timeline__item--left {padding-right:60px; text-align:right;}
.bc-timeline__item--right {margin-left:50%; padding-left:60px;}
.bc-timeline__dot {position:absolute; top:36px; width:18px; height:18px; border-radius:50%; background:#fff; border:3px solid var(--bc-secondary); box-shadow:0 0 0 6px rgba(var(--bc-secondary-rgb), 0.15);}
.bc-timeline__item--left .bc-timeline__dot {right:-10px;}
.bc-timeline__item--right .bc-timeline__dot {left:-10px;}
.bc-timeline__card {display:inline-block; background:#fff; padding:24px 28px; border-radius:var(--bc-radius-md); box-shadow:var(--bc-shadow-sm); max-width:380px; text-align:left;}
.bc-timeline__card--has-img {padding:0; overflow:hidden; width:100%; box-shadow:var(--bc-shadow-md);}
.bc-timeline__card--has-img .bc-timeline__card-body {padding:20px 28px 26px;}
.bc-timeline__card-media {position:relative; aspect-ratio:16 / 9; overflow:hidden;}
.bc-timeline__card-media img {width:100%; height:100%; object-fit:cover; transition:transform .8s var(--bc-ease);}
.bc-timeline__card--has-img:hover .bc-timeline__card-media img {transform:scale(1.05);}
.bc-timeline__card-media::after {content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 55%, rgba(10,26,51,0.5) 100%); pointer-events:none;}
.bc-timeline__year--overlay {position:absolute; left:16px; bottom:12px; z-index:1; color:#fff; background:rgba(var(--bc-secondary-rgb), 0.92); padding:4px 12px; border-radius:999px; margin:0; font-size:12px;}
.bc-timeline__year {display:inline-block; font-size:13px; font-weight:800; color:var(--bc-secondary); letter-spacing:2px; margin-bottom:6px;}
.bc-timeline__card-title {font-size:20px; margin-bottom:6px;}
.bc-timeline__card-text {color:var(--bc-muted); font-size:14.5px; line-height:1.65;}

@media (max-width: 768px) {
.bc-timeline__rail::before {left:12px;}
.bc-timeline__item, .bc-timeline__item--right {width:100%; margin-left:0; padding-left:40px; padding-right:0; text-align:left;}
.bc-timeline__item--left, .bc-timeline__item--right {padding-right:0;}
.bc-timeline__item--left .bc-timeline__dot, .bc-timeline__item--right .bc-timeline__dot {left:4px; right:auto;}
.bc-timeline__card {max-width:none; width:100%;}
.bc-timeline__card-media {aspect-ratio:16 / 8;}
}

.bc-team {padding:var(--bc-section-y) 0;}
.bc-team__head {text-align:center; max-width:720px; margin:0 auto 60px;}
.bc-team__eyebrow {display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--bc-secondary); margin-bottom:18px; font-weight:600;}
.bc-team__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-team__title {font-size:clamp(34px, 5vw, 60px); letter-spacing:-0.03em;}
.bc-team__grid {display:grid; grid-template-columns:repeat(4, 1fr); gap:24px;}
.bc-team__card {position:relative; border-radius:var(--bc-radius-lg); overflow:hidden; background:var(--bc-bg-soft); transition:transform .35s var(--bc-ease);}
.bc-team__card:hover {transform:translateY(-6px);}
.bc-team__card-img {aspect-ratio:4 / 5; overflow:hidden;}
.bc-team__card-img img {width:100%; height:100%; object-fit:cover; transition:transform .8s var(--bc-ease);}
.bc-team__card:hover .bc-team__card-img img {transform:scale(1.05);}
.bc-team__card-body {padding:18px 20px 22px; position:relative;}
.bc-team__card-name {font-size:18px; margin-bottom:2px;}
.bc-team__card-role {font-size:13px; color:var(--bc-muted);}
.bc-team__card-social {position:absolute; top:18px; right:18px; width:36px; height:36px; border-radius:50%; background:rgba(var(--bc-primary-rgb), 0.1); color:var(--bc-primary); display:inline-flex; align-items:center; justify-content:center; transition:background .2s var(--bc-ease), color .2s var(--bc-ease);}
.bc-team__card-social:hover {background:var(--bc-primary); color:#fff;}
.bc-team__empty {text-align:center; color:var(--bc-muted); padding:40px 0;}

@media (max-width: 900px) {
.bc-team__grid {grid-template-columns:repeat(2, 1fr);}
}

@media (max-width: 540px) {
.bc-team__grid {grid-template-columns:1fr;}
}

.bc-asec {padding:clamp(48px, 7vw, 96px) 0;}
.bc-asec--bg-soft {background:var(--bc-bg-soft);}
.bc-asec--bg-dark {background:var(--bc-bg-dark); color:#fff;}
.bc-asec--bg-primary {background:linear-gradient(135deg, var(--bc-primary), var(--bc-secondary)); color:#fff;}
.bc-asec--bg-dark .bc-asec__title, .bc-asec--bg-primary .bc-asec__title, .bc-asec--bg-dark .bc-asec__text, .bc-asec--bg-primary .bc-asec__text {color:#fff;}
.bc-asec__head {max-width:760px; margin:0 0 36px;}
.bc-asec__eyebrow {display:inline-flex; align-items:center; gap:10px; font-size:13px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; color:var(--bc-secondary); margin:0 0 14px;}
.bc-asec__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-asec__title {font-size:clamp(26px, 3.4vw, 42px); font-weight:800; line-height:1.12; letter-spacing:-0.02em; color:var(--bc-primary); margin:0;}
.bc-asec__text {color:var(--bc-muted); line-height:1.7; margin:0 0 16px;}
.bc-asec--bg-dark .bc-asec__text, .bc-asec--bg-primary .bc-asec__text {color:rgba(255,255,255,0.85);}
.bc-asec__btn {margin-top:12px;}
.bc-asec__split {display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px, 5vw, 72px); align-items:center;}
.bc-asec__split--reverse .bc-asec__col:first-child {order:2;}
.bc-asec__visual {border-radius:var(--bc-radius-lg); overflow:hidden; box-shadow:var(--bc-shadow-md); aspect-ratio:4 / 3;}
.bc-asec__visual img {width:100%; height:100%; object-fit:cover; display:block;}
.bc-asec__visual-gradient {width:100%; height:100%; background:linear-gradient(135deg, var(--bc-primary), var(--bc-secondary));}
.bc-asec__center {max-width:760px; margin:0 auto; text-align:center;}
.bc-asec__center .bc-asec__head {margin-left:auto; margin-right:auto;}
.bc-asec__twocol {columns:2; column-gap:48px;}
.bc-asec__twocol p {break-inside:avoid;}

@media (max-width: 768px) {
.bc-asec__twocol {columns:1;}
}

.bc-asec__imagefull {position:relative; border-radius:var(--bc-radius-lg); overflow:hidden; min-height:360px; display:flex; align-items:center;}
.bc-asec__imagefull-img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.bc-asec__imagefull-overlay {position:absolute; inset:0; background:linear-gradient(120deg, rgba(10,26,51,0.78), rgba(10, 26, 51, 0.35));}
.bc-asec__imagefull-content {position:relative; padding:clamp(28px, 5vw, 64px); max-width:640px; color:#fff;}
.bc-asec__imagefull-content .bc-asec__title, .bc-asec__imagefull-content .bc-asec__text {color:#fff;}
.bc-asec__stats {display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:20px;}
.bc-asec__stat {text-align:center; padding:28px 20px; border-radius:var(--bc-radius-md); background:rgba(var(--bc-primary-rgb), 0.04);}
.bc-asec--bg-dark .bc-asec__stat, .bc-asec--bg-primary .bc-asec__stat {background:rgba(255,255,255,0.08);}
.bc-asec__stat-value {font-size:clamp(32px, 4vw, 52px); font-weight:800; color:var(--bc-secondary); line-height:1;}
.bc-asec__stat-label {margin-top:10px; color:var(--bc-muted); font-size:14px;}
.bc-asec--bg-dark .bc-asec__stat-label, .bc-asec--bg-primary .bc-asec__stat-label {color:rgba(255,255,255,0.8);}
.bc-asec__cards {display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:22px;}
.bc-asec__card {padding:30px; border-radius:var(--bc-radius-md); background:#fff; border:1px solid var(--bc-line); box-shadow:var(--bc-shadow-sm);}
.bc-asec__card-icon {display:inline-flex; width:56px; height:56px; align-items:center; justify-content:center; border-radius:14px; background:linear-gradient(135deg, var(--bc-primary), var(--bc-secondary)); color:#fff; margin-bottom:16px;}
.bc-asec__card-icon .bc-icon {font-size:28px;}
.bc-asec__card-title {font-size:19px; font-weight:700; color:var(--bc-primary); margin:0 0 8px;}
.bc-asec__card-text {color:var(--bc-muted); line-height:1.6; margin:0;}
.bc-asec__iconlist {list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)); gap:20px;}
.bc-asec__iconlist-item {display:flex; gap:14px;}
.bc-asec__iconlist-icon {color:var(--bc-secondary);}
.bc-asec__iconlist-icon .bc-icon {font-size:26px;}
.bc-asec__iconlist-title {display:block; color:var(--bc-primary); font-weight:700; margin-bottom:2px;}
.bc-asec__iconlist-text {color:var(--bc-muted); line-height:1.55;}
.bc-asec__checklist {list-style:none; margin:16px 0; padding:0; display:flex; flex-direction:column; gap:10px;}
.bc-asec__checklist li {display:flex; align-items:flex-start; gap:10px; color:var(--bc-text);}
.bc-asec__checklist .bc-icon {color:var(--bc-secondary); font-size:20px;}
.bc-asec__quote {max-width:820px; margin:0 auto; text-align:center;}
.bc-asec__quote-mark {font-size:56px; color:var(--bc-secondary); opacity:.5;}
.bc-asec__quote-text {font-size:clamp(22px, 3vw, 34px); font-weight:600; line-height:1.4; color:var(--bc-primary); margin:8px 0 18px;}
.bc-asec--bg-dark .bc-asec__quote-text, .bc-asec--bg-primary .bc-asec__quote-text {color:#fff;}
.bc-asec__quote-cite {color:var(--bc-muted); font-weight:600;}
.bc-asec__cta {text-align:center; max-width:720px; margin:0 auto;}
.bc-asec__gallery {display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:14px;}
.bc-asec__gallery-item {border-radius:var(--bc-radius-md); overflow:hidden; aspect-ratio:1 / 1;}
.bc-asec__gallery-item img {width:100%; height:100%; object-fit:cover; display:block;}
.bc-asec__logos {display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:36px;}
.bc-asec__logo img {max-height:52px; width:auto; filter:grayscale(1); opacity:.65; transition:filter .3s var(--bc-ease), opacity .3s var(--bc-ease);}
.bc-asec__logo img:hover {filter:grayscale(0); opacity:1;}
.bc-asec__faq {max-width:820px; margin:0 auto; display:flex; flex-direction:column; gap:12px;}
.bc-asec__faq-item {border:1px solid var(--bc-line); border-radius:var(--bc-radius-md); background:#fff; padding:4px 20px;}
.bc-asec__faq-q {display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; font-weight:700; color:var(--bc-primary); padding:16px 0; list-style:none;}
.bc-asec__faq-q::-webkit-details-marker {display:none;}
.bc-asec__faq-q .bc-icon {transition:transform .3s var(--bc-ease);}
.bc-asec__faq-item[open] .bc-asec__faq-q .bc-icon {transform:rotate(180deg);}
.bc-asec__faq-a {color:var(--bc-muted); line-height:1.7; padding:0 0 18px;}
.bc-asec__video {position:relative; border-radius:var(--bc-radius-lg); overflow:hidden;}
.bc-asec__video iframe, .bc-asec__video video {width:100%; aspect-ratio:16 / 9; display:block; border:0;}
.bc-asec__video img {width:100%; display:block;}

@media (max-width: 860px) {
.bc-asec__split {grid-template-columns:1fr;}
.bc-asec__split--reverse .bc-asec__col:first-child {order:0;}
}

/* --- Who We Are --- */
.bc-who {padding:60px 0 var(--bc-section-y);}
.bc-who__inner {display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(40px, 6vw, 80px); align-items:center;}
.bc-who__content {max-width:560px;}
.bc-who__eyebrow {display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--bc-secondary); font-weight:600; margin-bottom:18px;}
.bc-who__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-who__title {font-size:clamp(30px, 4vw, 52px); letter-spacing:-0.03em; margin-bottom:24px;}
.bc-who__text {color:var(--bc-text); font-size:17px; line-height:1.8;}
.bc-who__text p + p {margin-top:1.1em;}
.bc-who__points {display:flex; flex-wrap:wrap; gap:32px; margin-top:32px; padding-top:32px; border-top:1px solid var(--bc-line);}
.bc-who__point {display:flex; flex-direction:column;}
.bc-who__point-value {font-size:clamp(30px, 3.4vw, 44px); font-weight:800; color:var(--bc-primary); letter-spacing:-0.03em; line-height:1;}
.bc-who__point-label {margin-top:8px; font-size:13.5px; color:var(--bc-muted); max-width:160px;}
.bc-who__visual-frame {position:relative; aspect-ratio:4 / 5; border-radius:var(--bc-radius-lg); overflow:hidden; box-shadow:var(--bc-shadow-lg);}
.bc-who__visual-frame img {width:100%; height:100%; object-fit:cover;}
.bc-who__visual-gradient {width:100%; height:100%; background:linear-gradient(135deg, var(--bc-primary), var(--bc-secondary));}

@media (max-width: 900px) {
.bc-who__inner {grid-template-columns:1fr; gap:40px;}
}

/* --- Our Expertise --- */
.bc-expertise {padding:var(--bc-section-y) 0; background:var(--bc-bg-soft);}
.bc-expertise__head {max-width:760px; margin:0 auto clamp(40px, 5vw, 60px); text-align:center;}
.bc-expertise__eyebrow {display:inline-flex; align-items:center; gap:8px; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--bc-secondary); font-weight:600; margin-bottom:18px;}
.bc-expertise__eyebrow-dot {width:8px; height:8px; border-radius:50%; background:var(--bc-secondary);}
.bc-expertise__title {font-size:clamp(30px, 4vw, 52px); letter-spacing:-0.03em;}
.bc-expertise__lead {margin-top:16px; color:var(--bc-muted); font-size:17px;}
.bc-expertise__grid {display:grid; grid-template-columns:repeat(auto-fit, minmax(250px, 1fr)); gap:24px;}
.bc-expertise__card {background:#fff; border:1px solid var(--bc-line); border-radius:var(--bc-radius-lg); padding:34px 30px; transition:transform .3s var(--bc-ease), box-shadow .3s var(--bc-ease), border-color .3s var(--bc-ease);}
.bc-expertise__card:hover {transform:translateY(-6px); box-shadow:var(--bc-shadow-md); border-color:transparent;}
.bc-expertise__icon {font-size:34px !important; color:var(--bc-secondary); background:rgba(var(--bc-secondary-rgb), 0.12); width:62px; height:62px; border-radius:18px; display:inline-flex; align-items:center; justify-content:center; margin-bottom:22px; transition:background .3s var(--bc-ease), color .3s var(--bc-ease);}
.bc-expertise__card:hover .bc-expertise__icon {background:var(--bc-primary); color:#fff;}
.bc-expertise__icon .bc-icon {font-size:34px;}
.bc-expertise__card-title {font-size:21px; letter-spacing:-0.02em; margin-bottom:12px;}
.bc-expertise__card-text {color:var(--bc-muted); font-size:15px; line-height:1.7;}