    /* ── Brands Page Styles — MLB Korea風ポップデザイン ── */
    .brands-hero {
      position: relative;
      height: 62vh;
      min-height: 460px;
      background: var(--color-accent-dark);
      display: flex;
      align-items: flex-end;
      overflow: hidden;
    }
    .brands-hero__bg {
      position: absolute;
      inset: 0;
      background: url('images/VJLN8X73.jpg') center/cover no-repeat;
      opacity: 0.3;
      transform: scale(1.04);
      animation: heroZoom 10s ease forwards;
    }
    @keyframes heroZoom {
      from { transform: scale(1.04); }
      to   { transform: scale(1.0); }
    }
    /* アクセントカラーバー */
    .brands-hero::after {
      content: '';
      position: absolute;
      bottom: 0; left: 0; right: 0;
      height: 5px;
      background: linear-gradient(90deg, #FF3B30 0%, #0A84FF 50%, #FFD60A 100%);
    }
    .brands-hero__content {
      position: relative;
      z-index: 2;
      padding: calc(var(--nav-height) + 2rem) 6vw 5vh;
    }
    .brands-hero__eyebrow {
      font-family: var(--font-sans);
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: #fff;
      display: inline-block;
      background: var(--color-accent);
      padding: 0.28rem 0.85rem;
      margin-bottom: 1.2rem;
    }
    .brands-hero__title {
      font-family: var(--font-sans);
      font-size: clamp(3.2rem, 8vw, 7.5rem);
      font-weight: 900;
      color: #fff;
      line-height: 0.95;
      letter-spacing: -0.03em;
      margin-bottom: 1rem;
    }
    .brands-hero__title em {
      font-style: normal;
      color: var(--color-accent-yellow);
    }
    .brands-hero__sub {
      font-family: var(--font-jp);
      font-size: 0.9rem;
      color: rgba(255,255,255,0.65);
      letter-spacing: 0.04em;
    }

    /* ── Section layout ── */
    .page-container {
      max-width: 1300px;
      margin: 0 auto;
      padding: 0 5vw;
    }
    .brands-section { padding: 6rem 0; }
    .brands-section__label {
      display: flex;
      align-items: center;
      gap: 1.4rem;
      margin-bottom: 3.2rem;
      padding-bottom: 1rem;
      border-bottom: 3px solid var(--color-text);
    }
    .brands-section__label-text {
      font-family: var(--font-sans);
      font-size: 0.75rem;
      font-weight: 900;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--color-text);
    }
    .brands-section__label-badge {
      font-family: var(--font-sans);
      font-size: 0.58rem;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      background: var(--color-accent);
      color: #fff;
      padding: 0.25rem 0.75rem;
      border-radius: 2px;
    }
    .brands-section--korea {
      background: var(--color-bg-section);
      padding: 6rem 0 7rem;
    }
    .brands-section--korea .brands-section__label {
      border-bottom-color: var(--color-accent-blue);
    }
    .brands-section--korea .brands-section__label-text {
      color: var(--color-accent-blue);
    }

    /* ── Own Brand Cards (large) ── */
    .own-brand-list { display: flex; flex-direction: column; gap: 6rem; }
    .own-brand {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5rem;
      align-items: center;
    }
    .own-brand:nth-child(even) .own-brand__img-col { order: 2; }
    .own-brand:nth-child(even) .own-brand__text-col { order: 1; }
    .own-brand__img-wrap {
      position: relative;
      padding-top: 110%;
      overflow: hidden;
      border: 2px solid var(--color-border);
    }
    .own-brand__img-wrap:hover { border-color: var(--color-accent); }
    .own-brand__img {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      transition: transform 0.6s ease;
    }
    .own-brand__img-wrap:hover .own-brand__img { transform: scale(1.05); }
    .own-brand__badge {
      position: absolute;
      top: 0;
      left: 0;
      font-family: var(--font-sans);
      font-size: 0.58rem;
      font-weight: 700;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: #fff;
      padding: 0.32rem 0.9rem;
      background: var(--color-accent);
    }
    .own-brand__soon-overlay {
      position: absolute;
      bottom: 0;
      left: 0; right: 0;
      background: var(--color-accent-dark);
      padding: 1rem;
      text-align: center;
      font-family: var(--font-sans);
      font-size: 0.65rem;
      font-weight: 700;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.85);
    }
    .own-brand__origin {
      font-family: var(--font-sans);
      font-size: 0.62rem;
      font-weight: 700;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--color-accent);
      margin-bottom: 0.6rem;
      display: block;
    }
    .own-brand__name {
      font-family: var(--font-sans);
      font-size: clamp(1.8rem, 3vw, 3.2rem);
      font-weight: 900;
      color: var(--color-text);
      letter-spacing: -0.02em;
      margin-bottom: 0.5rem;
      line-height: 1.05;
    }
    .own-brand__tagline {
      font-family: var(--font-sans);
      font-size: 0.92rem;
      font-weight: 500;
      color: var(--color-text-muted);
      margin-bottom: 1.4rem;
      letter-spacing: 0.02em;
    }
    .own-brand__divider {
      width: 48px;
      height: 3px;
      background: var(--color-accent);
      margin-bottom: 1.4rem;
      border-radius: 2px;
    }
    .own-brand__desc {
      font-family: var(--font-jp);
      font-size: 0.9rem;
      color: var(--color-text-muted);
      line-height: 2.0;
      margin-bottom: 2rem;
    }
    /* ライン一覧 */
    .own-brand__lines {
      display: flex;
      flex-direction: column;
      gap: 0.6rem;
      margin-bottom: 2.2rem;
    }
    .own-brand__line {
      display: flex;
      gap: 1rem;
      align-items: baseline;
      padding: 0.75rem 1.1rem;
      background: var(--color-bg-warm);
      border-left: 3px solid var(--color-accent);
      border-radius: 0 2px 2px 0;
    }
    .own-brand__line-name {
      font-family: var(--font-sans);
      font-size: 0.8rem;
      font-weight: 700;
      letter-spacing: -0.01em;
      color: var(--color-text);
      white-space: nowrap;
      min-width: 200px;
    }
    .own-brand__line-desc {
      font-family: var(--font-jp);
      font-size: 0.78rem;
      color: var(--color-text-muted);
      line-height: 1.6;
    }
    .own-brand__cta {
      display: inline-flex;
      align-items: center;
      gap: 0.6rem;
      font-family: var(--font-sans);
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: #fff;
      background: var(--color-text);
      border: 2px solid var(--color-text);
      padding: 0.75rem 2rem;
      transition: var(--transition-base);
    }
    .own-brand__cta:hover {
      background: var(--color-accent);
      border-color: var(--color-accent);
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(255,59,48,0.3);
    }

    /* ── Korea Brand Grid ── */
    .korea-brand-grid {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 1rem;
    }
    .korea-brand-card {
      background: #fff;
      overflow: hidden;
      border: 2px solid var(--color-border);
      transition: var(--transition-base);
    }
    .korea-brand-card:hover {
      border-color: var(--color-accent-blue);
      transform: translateY(-4px);
      box-shadow: 0 12px 36px rgba(10,132,255,0.14);
    }
    .korea-brand-card__link { display: block; color: inherit; }
    .korea-brand-card__img-wrap {
      position: relative;
      padding-top: 72%;
      overflow: hidden;
      background: var(--color-bg-section);
    }
    .korea-brand-card__img {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      transition: transform 0.5s ease;
    }
    .korea-brand-card:hover .korea-brand-card__img { transform: scale(1.06); }
    .korea-brand-card__body { padding: 1rem 1.1rem 1.3rem; }
    .korea-brand-card__origin {
      font-family: var(--font-sans);
      font-size: 0.58rem;
      font-weight: 700;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--color-accent-blue);
      margin-bottom: 0.3rem;
    }
    .korea-brand-card__name {
      font-family: var(--font-sans);
      font-size: 0.95rem;
      font-weight: 900;
      color: var(--color-text);
      margin-bottom: 0.2rem;
      letter-spacing: -0.01em;
      line-height: 1.2;
    }
    .korea-brand-card__tagline {
      font-family: var(--font-jp);
      font-size: 0.72rem;
      color: var(--color-text-muted);
      line-height: 1.5;
      margin-bottom: 0.6rem;
    }
    .korea-brand-card__desc {
      font-family: var(--font-jp);
      font-size: 0.72rem;
      color: var(--color-text-dim);
      line-height: 1.7;
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }
    .korea-brand-card__ext {
      display: inline-flex;
      align-items: center;
      gap: 0.3rem;
      font-family: var(--font-sans);
      font-size: 0.6rem;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--color-accent-blue);
      margin-top: 0.8rem;
      border-bottom: 1px solid var(--color-accent-blue);
      padding-bottom: 1px;
    }
    /* Korea intro text */
    .korea-intro-text {
      font-family: var(--font-jp);
      font-size: 0.9rem;
      color: var(--color-text-muted);
      margin-bottom: 2.4rem;
      line-height: 1.9;
    }
    /* Korea note */
    .korea-note {
      margin-top: 2.4rem;
      padding: 1.2rem 1.8rem;
      background: rgba(10,132,255,0.06);
      border-left: 4px solid var(--color-accent-blue);
      font-family: var(--font-jp);
      font-size: 0.82rem;
      color: var(--color-text-muted);
      line-height: 1.9;
      border-radius: 0 4px 4px 0;
    }

    /* ── Anchor offset for nav ── */
    .brand-anchor {
      display: block;
      height: calc(var(--nav-height) + 2rem);
      margin-top: calc(-1 * (var(--nav-height) + 2rem));
      visibility: hidden;
      pointer-events: none;
    }

    /* ── Responsive ── */
    @media (max-width: 1000px) {
      .own-brand { grid-template-columns: 1fr; gap: 2.5rem; }
      .own-brand:nth-child(even) .own-brand__img-col { order: 0; }
      .own-brand:nth-child(even) .own-brand__text-col { order: 0; }
      .korea-brand-grid { grid-template-columns: repeat(3, 1fr); }
    }
    @media (max-width: 600px) {
      .korea-brand-grid { grid-template-columns: repeat(2, 1fr); }
      .own-brand__line { flex-direction: column; gap: 0.2rem; }
      .own-brand__line-name { min-width: unset; }
    }
  

/* mobile: Brands footer responsive (override inline grid) */
@media (max-width: 820px) {
  footer .footer__inner {
    grid-template-columns: 1fr !important;
    gap: 2.4rem !important;
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }
  footer .footer__inner > nav {
    grid-template-columns: 1fr 1fr !important;
    gap: 1.6rem !important;
  }
}
