/* =============================================================================
   Pages Service v3 : compositions de la maquette d'Uma (deliverables/ux/maquette-services-singles/services.css) portées sur les blocs.
   SOURCE LISIBLE des deux feuilles services.css et services-compositions.css (livrées minifiées, ne pas les modifier à la main). Alias var(--s-o9), var(--s-b1)… remplacés par les jetons de theme.json
   par mkcss.mjs (même dossier) : node mkcss.mjs services.src.css services.css services-compositions.css. Plafond : moins de 8 Ko gzip pour les deux. Aucune couleur ni police nouvelle, aucune priorité forcée, préfixe svc-.
   Chargé seulement sur les pages au modèle « Page Service » (ou dont le contenu contient svc-) et dans l'éditeur.
   Les états « caché avant apparition » sont dans motion.css (sous html.has-motion). Décalages statiques en translate / scale / rotate.
   Règle : ne jamais écrire un clamp() ou un calc() sans espaces autour de + et -.
   ============================================================================= */
body,.editor-styles-wrapper{--s-o9:var(--wp--preset--color--olive-900);--s-o6:var(--wp--preset--color--olive-600);--s-o3:color-mix(in srgb, var(--wp--preset--color--olive-300) 40%, white);--s-b1:var(--wp--preset--color--beige-100);--s-b0:var(--wp--preset--color--beige-050);--s-ink:var(--wp--preset--color--ink-900);--s-ink2:color-mix(in srgb, var(--wp--preset--color--ink-900) 83%, white);--s-wh:var(--wp--preset--color--white);--s-hair:color-mix(in srgb, var(--wp--preset--color--ink-900) 22%, transparent);--s-hairw:color-mix(in srgb, var(--wp--preset--color--white) 35%, transparent);--s-rm:var(--wp--custom--radius--media);--s-rb:var(--wp--custom--radius--button);--s-std:var(--wp--preset--spacing--standard);--s-airy:var(--wp--preset--spacing--airy);--s-tight:var(--wp--preset--spacing--tight);--s-gap:var(--wp--custom--spacing--col-gap);--s-gut:var(--wp--custom--spacing--gutter);--s-head:var(--wp--custom--spacing--head-gap);--s-hh:var(--coming-header-h, 84px);--s-ease:var(--wp--custom--motion--ease-out);--s-dq:var(--wp--custom--motion--d-quick);--s-db:var(--wp--custom--motion--d-base);--s-disp:var(--wp--preset--font-size--display);--s-serif:var(--wp--preset--font-family--accent);--s-sans:var(--wp--preset--font-family--body)}
.svc-sec :where(.wp-block-group) > *{margin-block:0}
.svc-sec{padding-block:var(--s-std);padding-inline:var(--s-gut);font-size:1.0625rem;line-height:1.6}
.svc-sec :where(h1,h2,h3,h4){margin-block:0;letter-spacing:-0.025em;line-height:1.05}
.svc-sec :where(.wp-block-list){list-style:none;margin:0;padding:0}
.svc-sec :where(.wp-block-list li){margin:0}
.svc-sec em{font-family:var(--s-serif);font-style:italic;font-weight:400;color:var(--s-o9);letter-spacing:-0.01em}
.svc-sec :where(.wp-block-buttons){margin:0}
.svc-g12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s-gap)}
.svc-sec .is-style-svc-title{font-variation-settings:"opsz" 144,"SOFT" 50;margin-bottom:var(--s-head)}
.svc-sec .is-style-coming-eyebrow + .is-style-svc-title{margin-top:0}
.is-style-svc-band-olive{background:var(--s-o9);color:var(--s-wh)}
.is-style-svc-band-ink{background:var(--s-ink);color:var(--s-wh)}
.is-style-svc-band-beige{background:var(--s-b1);color:var(--s-ink)}
.is-style-svc-band-olive .is-style-svc-title,.is-style-svc-band-ink .is-style-svc-title{color:var(--s-wh)}
.is-style-svc-band-olive em{color:var(--s-o3)}
.is-style-svc-band-ink em{color:var(--s-o3)}
.is-style-svc-band-olive .is-style-coming-eyebrow,.is-style-svc-band-ink .is-style-coming-eyebrow{color:var(--s-b1)}
.is-style-svc-band-olive :focus-visible,.is-style-svc-band-ink :focus-visible{outline-color:var(--s-wh)}
.svc-hero{padding-block:clamp(1.5rem,1rem + 2.5vw,3.5rem) var(--s-std)}
.svc-hero .svc-g12{row-gap:2.5rem;align-items:center}
.svc-hero__txt{grid-column:1 / 8;min-width:0}
.svc-hero__txt .is-style-coming-eyebrow{margin-bottom:1.25rem}
.svc-crumb{padding-top:0;font-size:0.875rem;margin-bottom:clamp(1rem,2.5vw,2rem)}
.svc-crumb:not(:has(a,span,p)){display:none}
.svc-hero__vis{grid-column:8 / 13;position:relative;min-width:0}
.svc-h1{font-size:var(--s-disp);line-height:1.02;letter-spacing:-0.035em;font-weight:500;margin:0 0 1.5rem}
.svc-h1 .coming-line{display:block}
.svc-lead{font-size:clamp(1.2rem,1.05rem + 0.6vw,1.5rem);line-height:1.4;max-width:34ch;margin:0 0 2rem}
.svc-btns{display:flex;flex-wrap:wrap;gap:0.75rem}
.svc-hero .svc-chips{margin-top:2rem}
.svc-chips{display:flex;flex-wrap:wrap;gap:0.5rem}
.svc-chips li{display:inline-flex;align-items:center;min-height:36px;padding:0 0.95rem;border:1.5px solid var(--s-o6);border-radius:var(--s-rb);font-size:0.9375rem;font-weight:500}
.svc-chips--white li{min-height:40px;padding:0 1.1rem;background:var(--s-wh);border:0;font-size:inherit}
.svc-photo{margin:0;aspect-ratio:4 / 5;position:relative;overflow:hidden;border-radius:var(--s-rm);background:var(--s-b1)}
.svc-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.svc-card{position:absolute;left:-2.75rem;bottom:-1.75rem;z-index:2;width:min(15.5rem,62%);background:var(--s-wh);border-radius:var(--s-rm);padding:1rem 1.1rem 1.1rem;box-shadow:0 0 0 6px var(--s-b0)}
.svc-card p{margin:0.75rem 0 0;font-size:0.875rem;line-height:1.35;font-weight:500}
.svc-card__ill{margin:0}
.svc-card__ill img{width:100%;height:auto;aspect-ratio:260 / 146}
.svc-airy{padding-block:var(--s-airy)}
.svc-prom .svc-g12{row-gap:2rem;align-items:start}
.svc-prom__label{grid-column:1 / 4;padding-top:0.9rem}
.svc-prom__label p{margin:0}
.svc-prom__text{grid-column:4 / 13;font-size:clamp(1.75rem,1.1rem + 2.6vw,3.6rem);line-height:1.12;letter-spacing:-0.03em;font-weight:500;margin:0}
.svc-prom__text em{color:var(--s-o6);font-size:1.04em}
.svc-prom__cols{grid-column:4 / 13;display:grid;grid-template-columns:1fr 1fr;gap:var(--s-gap);margin-top:1rem}
.svc-prom__cols p{margin:0;max-width:44ch;color:var(--s-ink)}
.svc-idx-sec{padding-top:0}
.svc-idx{counter-reset:svcidx}
.svc-idx__row{counter-increment:svcidx;display:grid;grid-template-columns:3.25rem minmax(0,1.1fr) minmax(0,1fr);gap:1.5rem;align-items:baseline;padding-block:clamp(1.25rem,1rem + 1vw,2rem);position:relative}
.svc-idx__row::before{content:counter(svcidx,decimal-leading-zero);content:counter(svcidx,decimal-leading-zero) / "";font:600 0.875rem var(--s-sans);color:var(--s-o9);font-variant-numeric:tabular-nums}
.svc-idx__row::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--s-hair);transform-origin:left;transition:transform 900ms var(--s-ease)}
.svc-idx__row:last-child{border-bottom:1px solid var(--s-hair)}
.svc-idx__row:nth-child(even){padding-left:clamp(0rem,8vw,7rem)}
.svc-idx__t{font-size:clamp(1.5rem,1.1rem + 1.8vw,2.75rem);font-weight:500;letter-spacing:-0.03em;line-height:1.08;margin:0}
.svc-idx__d{margin:0;color:var(--s-ink);max-width:40ch}
.svc-band__head{display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap;margin-bottom:clamp(2rem,1rem + 3vw,4rem)}
.svc-band__head .is-style-svc-title{margin-bottom:0}
.svc-band__head > p{max-width:36ch;margin:0;color:var(--s-o3)}
.svc-nets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-gap)}
.svc-nets li{position:relative;padding-top:1rem;font-size:clamp(1.6rem,1rem + 2.4vw,3.4rem);letter-spacing:-0.03em;font-weight:500;line-height:1.05}
.svc-nets li::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--s-hairw);transform-origin:left;transition:transform 900ms var(--s-ease)}
.svc-rhythm{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:clamp(2rem,1rem + 3vw,4rem)}
.svc-rcard{border:1.5px solid color-mix(in srgb,var(--s-wh) 45%,transparent);border-radius:var(--s-rm);padding:clamp(1.25rem,1rem + 1.5vw,2.25rem);display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;min-height:12rem}
.svc-rcard__k{font:600 0.8125rem var(--s-sans);letter-spacing:0.12em;text-transform:uppercase;margin:0;opacity:0.92}
.svc-rcard__b{margin:0;font-family:var(--s-serif);font-style:italic;font-weight:400;font-size:clamp(2rem,1.2rem + 3vw,3.9rem);line-height:1;letter-spacing:-0.02em}
.svc-rcard__b em{color:inherit}
.svc-rcard--solid{background:var(--s-b1);color:var(--s-ink);border-color:transparent}
.svc-rcard--solid .svc-rcard__b,.svc-rcard--solid .svc-rcard__b em{color:var(--s-o9)}
.svc-steps--stair{padding-top:calc(var(--s-std) + 3.75rem)}
.svc-stair{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-gap);counter-reset:svcst}
.svc-stair li{counter-increment:svcst;position:relative;padding-top:1rem;color:var(--s-ink);max-width:26ch}
.svc-stair li:nth-child(2){margin-top:2.5rem}
.svc-stair li:nth-child(3){margin-top:5rem}
.svc-stair li:nth-child(4){margin-top:7.5rem}
.svc-stair li::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--s-hair);transform-origin:left;transition:transform 900ms var(--s-ease)}
.svc-stair li::before{content:counter(svcst);content:counter(svcst) / "";display:block;font-family:var(--s-serif);font-style:italic;font-weight:300;font-variation-settings:"opsz" 144;font-size:clamp(3.5rem,2rem + 4vw,6rem);line-height:1;color:var(--s-o6);margin-bottom:0.4rem}
.svc-stair li strong{display:block;font-size:clamp(1.25rem,1.05rem + 0.7vw,1.65rem);font-weight:600;letter-spacing:-0.02em;margin-bottom:0.4rem;line-height:1.15}
.svc-pq{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.svc-pq__quote{grid-column:1 / 7;grid-row:1 / 3;background:var(--s-o9);color:var(--s-wh);border-radius:var(--s-rm);padding:clamp(1.75rem,1.2rem + 2.5vw,3.5rem);display:flex;flex-direction:column;justify-content:space-between;gap:2rem;min-height:22rem}
.svc-pq__q{margin:0;font-family:var(--s-serif);font-style:italic;font-weight:300;font-variation-settings:"opsz" 144;font-size:clamp(1.7rem,1.1rem + 2.2vw,3.1rem);line-height:1.08;letter-spacing:-0.02em}
.svc-pq__q em{color:var(--s-o3)}
.svc-pq__small{color:var(--s-o3);font-size:0.9375rem;margin:0}
.svc-pq__sect{grid-column:7 / 13;background:var(--s-b1);border-radius:var(--s-rm);padding:clamp(1.25rem,1rem + 1.5vw,2.25rem)}
.svc-pq__sect h3{font-size:1.35rem;margin-bottom:1rem;font-weight:500}
.svc-pq__sect p{margin:1rem 0 0;color:var(--s-ink)}
.svc-pq__trio{grid-column:7 / 13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-gap);align-items:start;padding:1rem 0.25rem 0}
.svc-pq__trio li{border-top:1px solid var(--s-hair);padding-top:0.8rem;color:var(--s-ink);font-size:0.95rem;line-height:1.4}
.svc-pq__trio strong{display:block;font-size:1.15rem;font-weight:600;letter-spacing:-0.01em;margin-bottom:0.3rem;line-height:1.3}
.svc-faq{padding-top:0}
.svc-faq__grid{row-gap:2rem;align-items:start}
.svc-faq__head{grid-column:1 / 5}
.svc-faq__head .is-style-svc-title{margin-bottom:1rem}
.svc-faq__list{grid-column:6 / 13}
.svc-faq__list .wp-block-details{border-top:1px solid var(--s-hair);margin:0}
.svc-faq__list .wp-block-details:last-child{border-bottom:1px solid var(--s-hair)}
.svc-faq summary{list-style:none;cursor:pointer;position:relative;min-height:48px;padding:1.25rem 3rem 1.25rem 0;font-size:clamp(1.2rem,1.05rem + 0.6vw,1.5rem);font-weight:500;letter-spacing:-0.02em;line-height:1.25}
.svc-faq summary::-webkit-details-marker{display:none}
.svc-faq summary::marker{content:""}
.svc-faq summary::after{content:"+";content:"+" / "";position:absolute;right:0.25rem;top:50%;translate:0 -50%;font-size:1.9rem;font-weight:400;color:var(--s-o9);line-height:1;transition:rotate var(--s-dq) var(--s-ease)}
.svc-faq details[open] summary::after{rotate:45deg}
.svc-faq__a{padding:0 3rem 1.5rem 0;max-width:58ch;margin:0;color:var(--s-ink)}
.svc-faq summary:focus-visible{outline:2px solid var(--s-ink);outline-offset:2px}
.svc-nxt{padding-top:0;padding-bottom:var(--s-std)}
.svc-nxt__top{position:relative;padding-block:var(--s-std) 1.5rem}
.svc-nxt__small{font:600 0.8125rem var(--s-sans);letter-spacing:0.14em;text-transform:uppercase;color:var(--s-o9);margin:0 0 0.875rem}
.svc-nxt__word{margin:0;font-family:var(--s-serif);font-weight:300;font-variation-settings:"opsz" 144,"SOFT" 50;font-size:clamp(2.6rem,1.4rem + 6.4vw,7.5rem);line-height:0.95;letter-spacing:-0.04em}
.svc-nxt__word a{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;text-decoration:none;color:var(--s-o6);transition:color var(--s-db) var(--s-ease),translate var(--s-db) var(--s-ease)}
.svc-nxt__word a::after{content:"";position:absolute;inset:0}
.svc-nxt__word a span{font-family:var(--s-sans);font-size:0.5em;color:var(--s-o9)}
.svc-nxt__word a:hover,.svc-nxt__word a:focus-visible{color:var(--s-o9);translate:1rem 0}
.svc-nxt__word a:focus-visible{outline:2px solid var(--s-ink);outline-offset:6px}
.svc-nxt__all .is-style-coming-eyebrow{margin-bottom:1rem}
.svc-others{display:flex;flex-wrap:wrap;gap:0.5rem}
.svc-others a{display:inline-flex;align-items:center;min-height:44px;padding:0 1.1rem;border:1.5px solid var(--s-o9);border-radius:var(--s-rb);text-decoration:none;font-weight:500;transition:background-color var(--s-dq),color var(--s-dq)}
.svc-others a:hover,.svc-others a:focus-visible{background:var(--s-o9);color:var(--s-wh)}
@media (prefers-reduced-motion:reduce){.svc-nxt__word a{transition:none}
.svc-nxt__word a:hover,.svc-nxt__word a:focus-visible{translate:0 0}
}
@media (max-width:1199px){.svc-card{left:-1.25rem}
}
@media (max-width:1023px){.svc-hero__txt,.svc-hero__vis{grid-column:1 / -1}
.svc-hero__vis{max-width:34rem}
.svc-card{left:1rem;bottom:-1.5rem}
.svc-prom__label,.svc-prom__text,.svc-prom__cols{grid-column:1 / -1}
.svc-prom__label{padding-top:0}
.svc-idx__row,.svc-idx__row:nth-child(even){grid-template-columns:2.5rem minmax(0,1fr);padding-left:0}
.svc-idx__d{grid-column:2}
.svc-steps--stair{padding-top:calc(var(--s-std) + 1.25rem)}
.svc-stair{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2rem}
.svc-stair li:nth-child(2){margin-top:2.5rem}
.svc-stair li:nth-child(3){margin-top:0}
.svc-stair li:nth-child(4){margin-top:2.5rem}
.svc-pq__quote{grid-column:1 / -1;grid-row:auto;min-height:0}
.svc-pq__sect,.svc-pq__trio{grid-column:1 / -1}
.svc-nets{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1.5rem}
.svc-faq__head,.svc-faq__list{grid-column:1 / -1;position:static}
}
@media (max-width:767px){.svc-btns .wp-block-button,.svc-btns .wp-block-button__link{width:100%}
.svc-hero .svc-chips{margin-top:1.5rem}
.svc-hero__vis{max-width:none}
.svc-card{position:relative;left:auto;bottom:auto;width:auto;margin:-2rem 1rem 0}
.svc-prom__cols{grid-template-columns:1fr}
.svc-stair{grid-template-columns:1fr}
.svc-stair li,.svc-stair li:nth-child(n){margin-top:0;display:grid;grid-template-columns:4rem minmax(0,1fr);column-gap:1rem;max-width:none}
.svc-stair li::before{grid-row:1 / 3;font-size:3.4rem}
.svc-pq__trio{grid-template-columns:1fr}
.svc-rhythm{grid-template-columns:1fr}
.svc-faq summary{padding-right:2.5rem}
.svc-faq__a{padding-right:0}
.svc-nxt__word a span{display:none}
}
.svc-sec h2.is-style-coming-eyebrow{font:600 0.8125rem/1.6 var(--s-sans);letter-spacing:0.14em;text-transform:uppercase;color:var(--s-o9);margin:0 0 0.875rem}
.is-style-svc-band-olive h2.is-style-coming-eyebrow,.is-style-svc-band-ink h2.is-style-coming-eyebrow{color:var(--s-b1)}
.svc-sec .is-style-coming-eyebrow{margin-bottom:0.875rem}
.svc-hero .svc-hero__txt .is-style-coming-eyebrow{margin-bottom:1.25rem}
@media (min-width:1024px) and (min-height:700px){.svc-faq__head,.svc-som__photo,.svc-steps--sticky .svc-steps__head{position:sticky;top:calc(var(--s-hh) + 1.5rem)}
}
