  div.twin-banner {
    background: linear-gradient(90deg, #472224, #A04738);
    padding: 15px 0;
  }
  .twin-banner__inner {
    max-width: 1190px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
  }
  .twin-banner__col { display: flex; min-width: 0; }

  .twin-banner__col--logo { flex-shrink: 0; }
  .twin-banner__logo-box {
    background: #FFFFFF;
    border-radius: 15px;
    padding: 0 5px;
    display: flex;
    align-items: center;
  }
  .twin-banner__logo-box img { width: 180px; height: auto; display: block; }

  .twin-banner__col--text { flex: 1 1 auto; }   
  .twin-banner__text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 6px;
    width: 100%;
  }
  .twin-banner__headline {
    font-size: 20px;              
    font-weight: 700;            
    line-height: 1.3;
    margin: 0;
  }
  .twin-banner__sub {
    font-size: 12px;            
    color: #FFFFFF;
    line-height: 1.5;
    margin: 0;
  }

  .twin-banner__col--cta { flex-shrink: 0; }
  .twin-banner__cta-wrap { width: 200px; }     
  .twin-banner__btn {
    display: block;
    width: 100%;
    box-sizing: border-box;
    background: #FFD666;
    color: #3B1416;
    font-weight: bold;
    font-size: 16px;
    text-align: center;         
    padding: 12px 10px;
    border-radius: 6px;
    text-decoration: none;
    white-space: nowrap;
  }

  .twin-banner__col--partner {
    flex-shrink: 0;
    flex-direction: column;
    justify-content: center;     
    align-items: flex-start;
    gap: 8px;
    padding: 0 15px;
    border-left: 1px solid #AB736E;
  }
  .twin-banner__partner-label {
    margin: 0;
    font-size: 13px;            
    font-weight: bold;
    letter-spacing: 2px;
    color: #FFD666;
    white-space: nowrap;
  }
  .twin-banner__partner-box {
    background: #FFFFFF;
    border-radius: 15px;
    padding: 12px 20px;        
    box-sizing: border-box;
  }
  .twin-banner__partner-box img { width: 125px; height: auto; display: block; }

  @media (max-width: 1024px) {
    .twin-banner__inner { flex-wrap: wrap; }
    .twin-banner__col--logo { width: 45%; justify-content: center; }
    .twin-banner__col--text { width: 50%; }
    .twin-banner__col--cta { width: 45%; justify-content: center; }
    .twin-banner__col--partner { width: 45%; }
  }

  @media (max-width: 767px) {
    .twin-banner__inner { gap: 20px 5px; }
    .twin-banner__col--logo { width: 100%; padding: 0 15px; }
    .twin-banner__logo-box img { width: 140px; }
    .twin-banner__col--text { width: 100%; padding: 0 15px; }
    .twin-banner__col--cta { width: 45%; justify-content: center; }
    .twin-banner__cta-wrap { width: auto; }
    .twin-banner__btn { font-size: 12px; padding: 10px; }
    .twin-banner__col--partner { width: 45%; padding: 0 0 0 5px; }
    .twin-banner__partner-box img { width: 150px; }
  }
