
    .brand-hero {
      position: relative;
      min-height: 80vh;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    /* Le fond du hero est injecté par page (photo ou dégradé) via le template. */
    .brand-hero__bg {
      position: absolute; inset: 0;
    }
    .brand-hero__overlay {
      position: absolute; inset: 0;
      background: linear-gradient(180deg, transparent 55%, var(--c-bg) 100%);
    }
    .brand-hero__content {
      position: relative; z-index: 2;
      max-width: 600px; width: 100%;
      padding: 200px 40px 80px;
      text-align: center;
    }
    .brand-hero__eyebrow {
      font-size: 10px; letter-spacing: 0.38em; text-transform: uppercase;
      color: var(--c-gold); margin-bottom: 14px; font-weight: 500;
    }
    .brand-hero__title {
      font-family: var(--f-serif);
      font-size: clamp(40px, 5.5vw, 80px);
      font-weight: 400; line-height: 1; letter-spacing: -0.02em;
      margin-bottom: 20px;
    }
    .brand-hero__title span { font-style: italic; color: var(--c-gold); }
    .brand-hero__sub {
      font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase;
      color: var(--c-text-muted); margin-bottom: 36px;
    }
    .brand-hero__box {
      border: 1px solid rgba(201,166,107,0.4);
      padding: 20px 24px; margin-bottom: 32px; display: inline-block;
    }
    .brand-intro {
      padding: 90px 0; background: var(--c-bg);
    }
    .brand-intro__inner {
      display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
    }
    .brand-intro__eyebrow {
      font-size: 10px; letter-spacing: 0.38em; text-transform: uppercase;
      color: var(--c-gold); margin-bottom: 18px; font-weight: 500;
    }
    .brand-intro__title {
      font-family: var(--f-serif);
      font-size: clamp(28px, 3vw, 46px);
      font-weight: 400; line-height: 1.15; margin-bottom: 24px;
    }
    .brand-intro__title em { font-style: italic; color: var(--c-gold); }
    .brand-intro__text p {
      color: var(--c-text-muted); line-height: 1.85; margin-bottom: 18px; font-size: 15px;
    }
    .brand-checklist {
      list-style: none;
    }
    .brand-checklist li {
      display: flex; align-items: flex-start; gap: 14px;
      padding: 12px 0; border-bottom: 1px solid var(--c-line);
      font-size: 14px; color: var(--c-text-muted); line-height: 1.5;
    }
    .brand-checklist li:first-child { border-top: 1px solid var(--c-line); }
    .brand-checklist li::before {
      content: ''; display: block; width: 5px; height: 5px;
      background: var(--c-gold); border-radius: 50%;
      flex-shrink: 0; margin-top: 7px;
    }
    .brand-services { padding: 90px 0; background: var(--c-bg-2); }
    .brand-services .services__grid { grid-template-columns: repeat(3, 1fr); }
    .brand-expertise { padding: 90px 0; background: var(--c-bg); }
    .brand-expertise__inner {
      display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
    }
    .brand-expertise__list {
      display: grid; grid-template-columns: 1fr 1fr; gap: 1px;
      background: var(--c-line); border: 1px solid var(--c-line);
    }
    .brand-expertise__item {
      background: var(--c-bg); padding: 24px 20px;
      display: flex; flex-direction: column; gap: 8px;
    }
    .brand-expertise__item strong {
      font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase;
      color: var(--c-text); font-weight: 500;
    }
    .brand-expertise__item span {
      font-size: 13px; color: var(--c-text-muted); line-height: 1.5;
    }
    .brand-contact { padding: 90px 0; background: var(--c-bg-2); }
    @media (max-width: 960px) {
      .brand-intro__inner, .brand-expertise__inner { grid-template-columns: 1fr; gap: 48px; }
      .brand-hero { justify-content: center; }
      .brand-hero__content { padding: 180px 24px 60px; text-align: center; }
      .brand-hero__box { display: block; }
    }
    @media (max-width: 768px) {
      .brand-services .services__grid { grid-template-columns: 1fr; }
      .brand-expertise__list { grid-template-columns: 1fr; }
    }
  