.inner-page-banner{padding:120px 0 90px;position:relative;overflow:hidden;background:linear-gradient(135deg,#0f3a2c,#1e5e43)}
.inner-page-banner::before{content:"";position:absolute;inset:0;background-image:url('/images/about.jpg');background-size:cover;background-position:center;opacity:.18;mix-blend-mode:luminosity}
.inner-page-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(15,58,44,.9),rgba(15,58,44,.4))}
.inner-page-banner.banner-no-overlay::before{display:none}
.inner-page-banner.banner-no-overlay::after{display:none}
.inner-page-banner .banner-inner{position:relative;z-index:2;color:#fff;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.inner-page-banner h1{font-size:42px;font-weight:800;line-height:1.35;margin-bottom:20px}
.inner-page-banner p{font-size:17px;line-height:1.9;opacity:.92;margin-bottom:34px;max-width:620px}
.inner-page-banner .banner-media{border-radius:18px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.inner-page-banner .banner-media img{width:100%;height:100%;object-fit:cover;display:block}
.mt-20{margin-top:20px}
.mt-28{margin-top:28px}

.bs-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.bs-empty{grid-column:1/-1;text-align:center;padding:70px 20px;font-size:15px;color:var(--text-muted);border:1px dashed var(--border);border-radius:18px}
.bs-empty a{color:var(--primary);font-weight:700;text-decoration:none}
.bs-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 4px 20px rgba(15,58,44,.06);border:1px solid rgba(26,92,68,.08);transition:all .35s ease}
.bs-card:hover{transform:translateY(-6px);box-shadow:0 18px 44px rgba(15,58,44,.14);border-color:var(--primary-light)}
.bs-media{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;position:relative}
.bs-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}
.bs-card:hover .bs-media img{transform:scale(1.05)}
.bs-body{padding:28px 28px 30px}
.bs-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--primary-light),var(--primary));display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px}
.bs-tag{display:inline-block;padding:4px 12px;border-radius:999px;background:rgba(26,92,68,.08);color:var(--primary-dark);font-size:12px;font-weight:700;margin-bottom:10px}
.bs-body h3{font-size:20px;color:#000000;font-weight:700;margin-bottom:8px}
.bs-body h3 a{color:#000000}
.bs-body h3 a:hover{color:var(--primary-dark)}
.bs-sub{font-size:14px;color:var(--primary-dark);font-weight:600;margin-bottom:12px}
.bs-desc{font-size:14px;color:var(--text-muted);line-height:1.8;margin-bottom:20px}
.bs-actions .btn{padding:9px 20px;font-size:13px}

.bs-guard{padding:96px 0;position:relative;overflow:hidden}
.bs-guard::before{content:"";position:absolute;inset:0;background-image:url('/images/about.jpg');background-size:cover;background-position:center;opacity:.08;filter:grayscale(.5)}
.guard-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;position:relative;z-index:2}
.guard-text h2{font-size:34px;font-weight:800;margin-bottom:14px;color:#fff}
.guard-sub{font-size:17px;color:rgba(255,255,255,.85);margin-bottom:28px;font-weight:500}
.guard-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.guard-row span{padding:9px 18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:14px;color:#fff;backdrop-filter:blur(6px)}
.guard-desc{font-size:15px;color:rgba(255,255,255,.8);line-height:1.9;margin-bottom:0}
.white-btn{background:#fff;color:var(--primary-dark)}
.white-btn:hover{background:#eaf7f0;color:var(--primary-dark)}
.guard-media{border-radius:18px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.guard-media img{width:100%;height:100%;object-fit:cover;display:block}

@media(max-width:1199px){
  .bs-card-grid{grid-template-columns:repeat(2,1fr)}
  .inner-page-banner h1{font-size:32px}
}
@media(max-width:768px){
  .inner-page-banner{padding:72px 0 56px}
  .inner-page-banner .banner-inner{grid-template-columns:1fr;gap:32px}
  .inner-page-banner h1{font-size:24px;line-height:1.4;margin-bottom:14px}
  .inner-page-banner p{font-size:15px;margin-bottom:24px}
  .bs-card-grid{grid-template-columns:1fr}
  .bs-body{padding:22px 22px 26px}
  .bs-body h3{font-size:17px}
  .guard-inner{grid-template-columns:1fr;gap:32px}
  .guard-text h2{font-size:24px}
  .guard-row{gap:8px}
  .guard-row span{padding:6px 12px;font-size:12px}
}
