.page-prestations{overflow-x:clip}.services-section{padding-block:clamp(4.5rem,9vw,8rem)}.services-heading{max-width:780px;margin-bottom:clamp(2.4rem,5vw,4rem)}.services-heading h2{margin:.45rem 0 1rem}.services-heading>p:not(.eyebrow){color:var(--muted);font-size:var(--step-1)}.services-hero{position:relative;padding-block:clamp(5rem,10vw,9rem);overflow:hidden;background:linear-gradient(125deg,#fbf8f3,#f0e5dc 65%,#e8d8cc)}.services-hero::after{position:absolute;right:-11rem;bottom:-17rem;width:35rem;height:35rem;border:1px solid rgb(195 165 87 / 40%);border-radius:50%;content:""}.services-hero__inner{position:relative;z-index:1}.services-hero h1{max-width:15ch}.services-hero__lead{max-width:66ch;color:var(--terra-dark);font-size:var(--step-1);font-weight:600}.services-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem;margin-top:1.7rem}.button-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.86rem 1.35rem;border:1px solid var(--terra);border-radius:999px;color:var(--terra-dark);font-family:var(--font-body);font-weight:600;text-decoration:none}.button-secondary:hover{background:rgb(168 95 73 / 8%)}.services-intro{background:var(--white)}.services-intro__grid,.services-limits__grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(3rem,8vw,8rem)}.services-intro__grid>div,.services-limits__grid>div{min-width:0}.services-intro h2,.services-limits h2{margin:.45rem 0}.services-intro__grid>div:last-child{color:var(--muted);font-size:var(--step-1)}.services-guide{background:#313530;color:#fff;scroll-margin-top:2rem}.services-guide h2,.services-guide .eyebrow{color:#fff}.services-guide .services-heading>p:not(.eyebrow){color:#2b2d2f}.services-guide__list{border-top:1px solid #555a54}.services-guide__list a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;padding:1.35rem 0;border-bottom:1px solid #555a54;color:#fff;text-decoration:none}.services-guide__list span{color:#dfe1dc;font-size:var(--step-1)}.services-guide__list strong{color:#f1dba7;font-size:var(--step-1)}.services-guide__list a:hover strong{text-decoration:underline;text-underline-offset:5px}.services-catalogue{background:var(--paper)}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{display:flex;min-width:0;flex-direction:column;padding:clamp(1.6rem,4vw,3rem);background:var(--white);border-right:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:2rem}.service-card__level{margin:0;color:var(--terra-text);font-size:var(--step--1);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.service-card h3{margin:.45rem 0 1rem}.service-card__need{max-width:54ch;color:var(--terra-dark);font-size:var(--step-1);font-weight:600}.service-card dl{margin:1rem 0}.service-card dl div{display:grid;grid-template-columns:7rem 1fr;gap:1rem;padding:.9rem 0;border-top:1px solid var(--line)}.service-card dt{font-weight:600}.service-card dd{margin:0;color:var(--muted)}.service-card__topics{margin-top:1rem}.service-card__topics h4{margin:.3rem 0}.service-card__topics ul{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0;list-style:none}.service-card__topics li{padding:.35rem .65rem;background:var(--cream);border-radius:4px;color:var(--muted);font-size:var(--step--1)}.service-card__pending{padding:1rem;margin-top:1rem;background:var(--cream);color:var(--muted)}.service-card .services-actions{margin-top:auto;padding-top:1.5rem}.services-audiences{background:var(--cream)}.services-audiences ul{display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:0;border-top:1px solid var(--line);border-left:1px solid var(--line);list-style:none}.services-audiences li{min-height:145px;padding:1.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:var(--step-1);font-weight:600;line-height:1.35}.services-audiences li::before{display:block;margin-bottom:1.8rem;color:var(--gold-text);font-size:.8rem;content:"◆"}.services-method{background:var(--white);scroll-margin-top:2rem}.services-method__grid{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:clamp(3rem,8vw,8rem)}.services-method__grid>div{min-width:0}.services-method h2{margin:.45rem 0 1rem}.services-method__grid>div>p:not(.eyebrow){color:var(--muted);font-size:var(--step-1)}.services-method ol{padding:0;margin:0;border-top:1px solid var(--line);list-style:none;counter-reset:method}.services-method li{display:grid;grid-template-columns:minmax(12rem,.55fr) 1fr;gap:1.5rem;padding:1.3rem 0;border-bottom:1px solid var(--line);counter-increment:method}.services-method li strong::before{margin-right:.65rem;color:var(--terra-text);content:"0" counter(method)}.services-method li span{color:var(--muted)}.services-dimensions{background:#f7f3ed}.services-dimensions ul{display:flex;flex-wrap:wrap;padding:0;margin:0;border-top:1px solid var(--line);border-left:1px solid var(--line);list-style:none}.services-dimensions li{flex:1 1 16rem;padding:1rem 1.2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:600}.services-limits{padding-block:clamp(4.5rem,9vw,8rem);background:var(--terra-dark);color:#fff}.services-limits h2,.services-limits .eyebrow{color:#fff}.services-limits__grid>div:last-child{color:#f2e4df;font-size:var(--step-1)}.services-faq{background:var(--cream)}.services-faq__grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(3rem,8vw,8rem);align-items:start}.services-faq__grid>div{min-width:0}.services-faq__list{border-top:1px solid var(--line)}.services-faq details{border-bottom:1px solid var(--line)}.services-faq summary{position:relative;padding:1.25rem 2.5rem 1.25rem 0;cursor:pointer;font-size:var(--step-1);font-weight:600;line-height:1.35;list-style:none}.services-faq summary::-webkit-details-marker{display:none}.services-faq summary::after{position:absolute;top:1.25rem;right:.2rem;color:var(--terra-text);content:"+"}.services-faq details[open] summary::after{content:"−"}.services-faq details p{max-width:68ch;padding:0 2.5rem 1.3rem 0;color:var(--muted)}.services-final{padding-block:clamp(5rem,10vw,9rem);background:linear-gradient(135deg,#f5eee6,#ead8cb);text-align:center}.services-final__inner{display:grid;justify-items:center}.services-final h2{max-width:23ch;margin:.45rem auto .8rem}.services-final p{max-width:64ch;color:var(--muted)}.services-actions--center{justify-content:center}
@media(max-width:900px){.services-intro__grid,.services-method__grid,.services-limits__grid,.services-faq__grid{grid-template-columns:1fr}.services-audiences ul{grid-template-columns:1fr 1fr}.services-audiences li:last-child{grid-column:1/-1}.services-method li{grid-template-columns:1fr;gap:.4rem}}
@media(max-width:700px){.services-section{padding-block:4rem}.services-grid,.services-audiences ul{grid-template-columns:1fr}.services-audiences li:last-child{grid-column:auto}.services-guide__list a{grid-template-columns:1fr;gap:.35rem}.service-card dl div{grid-template-columns:1fr;gap:.2rem}.services-actions,.services-actions .button,.services-actions .button-secondary{width:100%}.services-hero h1{overflow-wrap:anywhere}}

/* Composition historique limitée aux offres Analyse et À la carte. */
.service-card:is(#analyse,#a-la-carte){position:relative;margin:1rem;padding:clamp(2rem,4vw,3.25rem);border:1px solid rgb(207 178 80 / 55%);border-radius:32px 32px 12px;background:#fff;box-shadow:0 14px 34px rgb(68 53 47 / 7%);isolation:isolate;overflow:hidden}.service-card:is(#analyse,#a-la-carte)::before{position:absolute;z-index:-1;top:-7rem;right:-7rem;width:15rem;height:15rem;border:1px solid #cfb250;border-radius:48% 52% 45% 55%;content:"";opacity:.45}.service-card:is(#analyse,#a-la-carte) h3{font-size:clamp(2rem,3.2vw,3rem)}.service-card:is(#analyse,#a-la-carte) dl{border-top:1px solid var(--line)}.service-card:is(#analyse,#a-la-carte) dl div{border-top:0;border-bottom:1px solid var(--line)}.service-card:is(#analyse,#a-la-carte) .service-card__topics li{border-radius:999px;background:#f3eee6}
@media(max-width:700px){.service-card:is(#analyse,#a-la-carte){margin:.6rem 0;border-radius:24px 24px 10px}}
/* Cartes Prestations — compromis compact basé sur la structure d'origine.
   Une carte par ligne, photo visible, textes lisibles et actions en bas. */
.page-prestations .services-catalogue .services-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:1.35rem;
  max-width:1080px;
  margin-inline:auto;
  border:0;
}

.page-prestations .services-catalogue .service-card,
.page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte){
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,58%) minmax(300px,42%);
  grid-template-areas:"content image";
  min-width:0;
  height:573px;
  margin:0;
  padding:.55rem;
  overflow:hidden;
  border:0;
  border-radius:38px 12px 38px 12px;
  background:#fff;
  box-shadow:0 16px 38px rgb(80 83 85 / 8%);
  isolation:isolate;
  transition:transform .25s ease,box-shadow .25s ease;
}

.page-prestations .services-catalogue .service-card:hover{
  box-shadow:0 20px 46px rgb(80 83 85 / 12%);
  transform:translateY(-3px);
}

.page-prestations .services-catalogue .service-card::before,
.page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte)::before{
  display:none;
}

.page-prestations .services-catalogue .service-card__content{
  grid-area:content;
  position:relative;
  z-index:1;
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:2rem 2.25rem 1.75rem;
}

.page-prestations .services-catalogue .service-card__intro{
  min-width:0;
}

.page-prestations .services-catalogue .service-card__level{
  margin:0 0 .35rem;
  font-size:.85rem;
  line-height:1.25;
}

.page-prestations .services-catalogue .service-card h3,
.page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte) h3{
  margin:0 0 .6rem;
  font-size:clamp(1.7rem,2.4vw,2.3rem);
  line-height:1.08;
}

.page-prestations .services-catalogue .service-card__need{
  max-width:48ch;
  margin:0;
  font-size:1.1rem;
  line-height:1.5;
}

.page-prestations .services-catalogue .service-card dl,
.page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte) dl{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin:1.25rem 0 0;
  border-top:1px solid var(--line);
}

.page-prestations .services-catalogue .service-card dl div,
.page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte) dl div{
  display:block;
  min-width:0;
  padding:.9rem 0;
  border-top:0;
  border-bottom:1px solid var(--line);
}

.page-prestations .services-catalogue .service-card dt{
  margin:0 0 .3rem;
  font-size:.9rem;
  line-height:1.25;
  font-weight:600;
}

.page-prestations .services-catalogue .service-card dd{
  min-width:0;
  margin:0;
  font-size:1rem;
  line-height:1.5;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.page-prestations .services-catalogue .service-card__topics{
  margin-top:1rem;
}

.page-prestations .services-catalogue .service-card__topics h4{
  margin:0 0 .4rem;
  font-size:.92rem;
}

.page-prestations .services-catalogue .service-card__topics ul{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
}

.page-prestations .services-catalogue .service-card__topics li,
.page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte) .service-card__topics li{
  padding:.35rem .7rem;
  border:1px solid rgb(207 178 80 / 28%);
  border-radius:999px;
  background:#f7f3ed;
  font-size:.85rem;
  line-height:1.25;
}

.page-prestations .services-catalogue .service-card__pending{
  max-width:46ch;
  padding:.75rem 1rem;
  margin:1rem 0 0;
  font-size:.95rem;
  line-height:1.45;
}

.page-prestations .services-catalogue .service-card__content .services-actions{
  display:flex;
  align-items:center;
  gap:.8rem;
  width:100%;
  margin-top:auto;
  padding-top:1.25rem;
  border-top:1px solid var(--line);
}

/* LES DEUX BOUTONS D'UNE CARTE FORMENT UNE PAIRE, OU N'EN FORMENT PAS.

   Ils ne se ressemblaient plus du tout : « Decrire ce besoin » sortait en
   rectangle de 14 px cerne de noir, « En savoir plus » en pastille de 999 px
   avec le degrade terracotta. Deux objets sans parente, cote a cote.

   Le noir venait du bouton generique du site ; le rayon de 14 px, d'une regle
   restee la. Or la charte a une reponse pour ce cas : l'action principale porte
   le degrade, la seconde le meme trace en contour. Meme forme, meme famille de
   couleur, meme hauteur — seule l'insistance change.

   #505355 est le gris de la charte (--brand-terra-deep), celui qu'emploie
   .button-secondary partout ailleurs. On ne l'invente pas ici. */
.page-prestations .services-catalogue .service-card__content .services-actions .button{
  width:auto;
  min-height:48px;
  padding:.8rem 1.35rem;
  border:1px solid var(--brand-terra-deep, #505355);
  border-radius:999px;
  background:transparent;
  color:var(--brand-terra-deep, #505355);
  font-size:.95rem;
  line-height:1.2;
  letter-spacing:.015em;
  box-shadow:none;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.page-prestations .services-catalogue .service-card__content .services-actions .button:is(:hover,:focus-visible){
  background:var(--button-hover-gradient);
  color:#2b2d2f;
  transform:translateY(-2px);
}

.page-prestations .services-catalogue .service-card__content .services-actions .text-link{
  width:auto;
  font-size:.95rem;
  line-height:1.25;
}

.page-prestations .services-catalogue .service-card__image{
  grid-area:image;
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  min-height:0;
  margin:0;
  overflow:hidden;
  border-radius:10px 24px 10px 24px;
}

.page-prestations .services-catalogue .service-card__image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

@media(max-width:900px){
  .page-prestations .services-catalogue .service-card,
  .page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte){
    grid-template-columns:minmax(0,60%) minmax(250px,40%);
    height:620px;
  }

  .page-prestations .services-catalogue .service-card__content{
    padding:1rem;
  }

  .page-prestations .services-catalogue .service-card dl{
    grid-template-columns:1fr;
    gap:0;
  }
}

@media(max-width:700px){
  .page-prestations .services-catalogue .services-grid{
    gap:1rem;
  }

  .page-prestations .services-catalogue .service-card,
  .page-prestations .services-catalogue .service-card:is(#analyse,#a-la-carte){
    display:flex;
    height:auto;
    min-height:0;
    overflow:visible;
    flex-direction:column;
    padding:.45rem;
    border-radius:24px 24px 10px;
  }

  .page-prestations .services-catalogue .service-card__image{
    order:-1;
    aspect-ratio:16/9;
    height:auto;
    border-radius:20px 20px 8px 8px;
  }

  .page-prestations .services-catalogue .service-card__content{
    padding:1rem .9rem .85rem;
  }

  .page-prestations .services-catalogue .service-card dl{
    grid-template-columns:1fr;
  }

  .page-prestations .services-catalogue .service-card__content .services-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .page-prestations .services-catalogue .service-card__content .services-actions .button,
  .page-prestations .services-catalogue .service-card__content .services-actions .text-link{
    width:100%;
    text-align:center;
  }
}
