/* ============ BRAND BANNER ============ */
  .brand-banner{
    display:grid; grid-template-columns:1fr; gap:0;
    background:var(--surface); border:1px solid var(--border); border-radius:24px;
    overflow:hidden;
  }
  .brand-banner-media{position:relative; min-height:420px; background:#000;}
  .brand-banner-media img{width:100%; height:100%; object-fit:contain; object-position:center;}
  .brand-banner-copy{padding:48px 46px; display:flex; flex-direction:column; justify-content:center; gap:16px;}
  .brand-banner-top{display:grid; grid-template-columns:1.15fr .85fr; gap:36px; align-items:start;}
  .brand-banner-top .brand-banner-side{
    background:var(--surface-2); border:1px solid var(--border-soft); border-radius:18px;
    padding:26px 24px; display:flex; flex-direction:column; gap:12px; margin-top:4px;
  }
  .brand-banner-top .brand-banner-side .bbs-icon{
    width:38px; height:38px; border-radius:11px; display:flex; align-items:center; justify-content:center;
    background:var(--grad-soft); color:var(--green-soft); flex-shrink:0;
  }
  .brand-banner-side .bbs-icon svg{width:19px; height:19px;}
  .brand-banner-top .brand-banner-side h4{font-size:15.5px; font-weight:600; margin:0;}
  .brand-banner-top .brand-banner-side p{color:var(--text-muted); font-size:13.5px; line-height:1.6; margin:0; max-width:none;}
  @media (max-width:900px){
    .brand-banner-top{grid-template-columns:1fr;}
  }
  .brand-banner-copy h2{font-size:clamp(26px,3vw,36px); margin-top:14px;}
  .brand-banner-copy p{color:var(--text-muted); font-size:15.5px; max-width:420px;}
  .brand-banner-highlights{list-style:none; display:flex; flex-direction:column; gap:11px; margin:4px 0 6px;}
  .brand-banner-highlights li{display:flex; align-items:center; gap:10px; font-size:14.5px; font-weight:500; color:var(--text);}
  .brand-banner-highlights li svg{width:18px; height:18px; flex-shrink:0; padding:3px; border-radius:50%; background:var(--grad-soft); color:var(--green-soft); box-sizing:content-box;}
  .brand-banner-video-frame{
    width:100%; max-width:560px; margin:6px auto 0; padding:14px; position:relative;
    background:var(--surface-2); border:2px solid var(--border); border-radius:22px;
    box-shadow:0 24px 60px -24px rgba(0,0,0,.28);
  }
  .brand-banner-video{
    display:block; width:100%; aspect-ratio:600/468; border-radius:14px; border:1px solid var(--border-soft);
    object-fit:contain; background:#000;
  }
  @media (max-width:900px){
    .brand-banner{grid-template-columns:1fr;}
    .brand-banner-media{min-height:280px;}
    .brand-banner-copy{padding:34px 26px;}
    .brand-banner-video-frame{padding:10px; margin-top:4px;}
  }
