
  /* Section services 12 catégories — 4 colonnes grandes cartes portrait 4:5 */
  .services-grid {
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:1.5rem;
  }
  @media (max-width:1024px) { .services-grid { grid-template-columns:repeat(3, 1fr); } }
  @media (max-width:640px)  { .services-grid { grid-template-columns:repeat(2, 1fr); gap:1rem; } }
  .service-card {
    position:relative; aspect-ratio:4/5; overflow:hidden;
    text-decoration:none; color:inherit; display:block;
  }
  .service-card .ph {
    position:absolute; inset:0; background-size:cover; background-position:center;
    transition: transform 1s var(--ease-elegant);
  }
  .service-card::after {
    content:""; position:absolute; inset:0; z-index:1;
    background:linear-gradient(180deg, rgba(43,37,34,0) 30%, rgba(43,37,34,0.65) 100%);
    transition: background 400ms var(--ease-elegant);
  }
  .service-card:hover::after { background:linear-gradient(180deg, rgba(43,37,34,0.2) 30%, rgba(43,37,34,0.75) 100%); }
  .service-card:hover .ph { transform:scale(1.06); }
  .service-card .label {
    position:absolute; left:1.25rem; right:1.25rem; bottom:1.25rem; z-index:2;
    color:var(--ivory); display:flex; align-items:center; justify-content:space-between;
  }
  .service-card .label h4 { font-family:var(--serif); font-weight:400; font-style:italic; font-size:1.375rem; margin:0; }
  .service-card .label .arr {
    width:36px; height:36px; border:1px solid rgba(251,247,242,.6); border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    transition: background 350ms var(--ease-elegant), border-color 350ms;
  }
  .service-card:hover .label .arr { background:var(--gold); border-color:var(--gold); }
  .service-card .label .arr svg { width:16px; height:16px; }

  /* Bloc éditorial parallax */
  .editorial { position:relative; display:grid; grid-template-columns:55fr 45fr; align-items:center; min-height:620px; }
  .ed-photo { position:relative; overflow:hidden; aspect-ratio:4/5; width:100%; max-width:680px; }
  .ed-photo-inner { position:absolute; left:0; right:0; top:-12%; bottom:-12%; background-size:cover; background-position:center; will-change:transform; transition:transform 60ms linear; }
  .ed-text {
    position:relative; z-index:2; background:var(--white);
    margin-left:-6rem; padding:4rem 3.5rem; text-align:center; max-width:560px; justify-self:start;
    box-shadow:-20px 30px 60px -20px rgba(43,37,34,.18), 0 1px 0 var(--line);
  }
  .ed-text .eyebrow { color:var(--gold-deep); margin-bottom:.75rem; }
  .ed-text h3 {
    font-family:var(--serif); font-weight:400; font-size:clamp(2rem, 2.8vw, 2.625rem);
    line-height:1.15; margin:0 0 2rem; letter-spacing:-.005em; text-transform:uppercase; color:var(--ink);
  }
  .ed-dots { display:flex; flex-direction:column; gap:.4rem; align-items:center; margin:0 auto 2rem; width:fit-content; }
  .ed-dots span { width:3px; height:3px; border-radius:50%; background:var(--ink-muted); display:block; }
  .ed-text blockquote {
    font-family:var(--serif); font-weight:300; font-style:italic;
    font-size:1.125rem; line-height:1.65; color:var(--ink-soft);
    margin:0 0 1.5rem; padding:0; border:none;
  }
  .ed-text .signature { margin:.5rem 0 2rem; font-size:2.25rem; }

  /* Galerie dernières créations */
  .gallery {
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    grid-auto-rows:240px;
    gap:1rem;
  }
  .gallery a { position:relative; overflow:hidden; display:block; text-decoration:none; }
  .gallery a .img { position:absolute; inset:0; background-size:cover; background-position:center; transition: transform 1s var(--ease-elegant); }
  .gallery a:hover .img { transform:scale(1.06); }
  .gallery a.tall { grid-row:span 2; }
  .gallery a.wide { grid-column:span 2; }

  /* Pourquoi me choisir */
  .pillars { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:3rem; }
  .pillar { text-align:center; padding:1rem; }
  .pillar-icon {
    width:64px; height:64px; margin:0 auto 1.5rem;
    border:1px solid var(--gold); border-radius:50%;
    display:flex; align-items:center; justify-content:center; color:var(--gold-deep);
  }
  .pillar-icon svg { width:28px; height:28px; }
  .pillar h4 {
    font-family:var(--serif); font-weight:400; font-size:1.25rem;
    color:var(--ink); margin:0 0 .75rem; letter-spacing:.04em;
  }
  .pillar p { font-size:.9375rem; color:var(--ink-soft); margin:0; line-height:1.7; }

  /* Instagram */
  .insta-grid { display:grid; grid-template-columns:repeat(6, 1fr); gap:.5rem; }
  .insta-grid a { aspect-ratio:1; overflow:hidden; position:relative; display:block; }
  .insta-grid a .img { position:absolute; inset:0; background-size:cover; background-position:center; transition: transform 800ms var(--ease-elegant); }
  .insta-grid a:hover .img { transform:scale(1.08); }
  .insta-grid a::after {
    content:""; position:absolute; inset:0;
    background:rgba(43,37,34,0); transition: background 350ms;
    display:flex; align-items:center; justify-content:center;
  }
  .insta-grid a:hover::after { background:rgba(43,37,34,.4); }

  /* Bandeau réassurance */
  .reassure {
    background:var(--blush-light); padding:2rem 0;
    display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:2rem;
    text-align:center;
  }
  .reassure-item {
    display:flex; flex-direction:column; align-items:center; gap:.5rem;
    padding:0 1rem; border-right:1px solid var(--sand);
  }
  .reassure-item:last-child { border-right:0; }
  .reassure-item svg { width:28px; height:28px; color:var(--gold-deep); }
  .reassure-item b { font-family:var(--serif); font-style:italic; font-weight:400; font-size:1.125rem; color:var(--ink); }
  .reassure-item span { font-size:.75rem; letter-spacing:.08em; color:var(--ink-soft); text-transform:uppercase; }

  /* Featured products bandeau */
  .featured-head { display:flex; justify-content:space-between; align-items:end; margin-bottom:3rem; flex-wrap:wrap; gap:1.5rem; }

  @media (max-width:1024px) {
    .editorial { grid-template-columns:1fr; min-height:0; }
    .ed-text { margin-left:0; margin-top:-3rem; padding:2.5rem 1.5rem; max-width:none; }
    .gallery { grid-template-columns:repeat(2, 1fr); grid-auto-rows:200px; }
    .gallery a.wide { grid-column:span 2; }
    .insta-grid { grid-template-columns:repeat(3, 1fr); }
  }


/* Override : bandeau réassurance pleine largeur écran */
.reassure-section { padding: 0 !important; background: var(--blush-light); }
.reassure-section .reassure { max-width: none; padding: 2rem clamp(1.5rem, 4vw, 4rem); }
