:root{--page:var(--sc-sable-hi);--ink:var(--sc-encre);--muted:var(--sc-text-muted);--dark:var(--sc-cacao-lo);--accent:var(--sc-cuivre);--line:var(--sc-sable-lo);--gutter:clamp(1.25rem,5vw,5rem);--section:clamp(4.5rem,8vw,8rem);--measure:88rem;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--sc-font-sans);font-size:1rem;line-height:1.65}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p{margin:0}p{color:inherit}h1,h2,h3{font-family:var(--sc-font-serif);font-weight:400;line-height:1.09;letter-spacing:-.045em}em{font-weight:400}h2{font-size:clamp(2.5rem,4.6vw,4.6rem)}h2 em{color:var(--sc-cuivre-lo)}p{max-width:65ch}.shell{width:min(100% - var(--gutter)*2,var(--measure));margin-inline:auto}.section{padding-block:var(--section)}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1.6}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem var(--gutter);background:color-mix(in srgb,var(--page) 96%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:.7rem;font:1.9rem var(--sc-font-serif);letter-spacing:-.06em;white-space:nowrap}.brand b{font:600 1.25rem var(--sc-font-sans);letter-spacing:-.05em}.brand svg{width:1.8rem;height:2rem;stroke:var(--sc-cuivre-lo);stroke-width:1.4;fill:none}.brand .bars{stroke-width:5}nav{display:flex;align-items:center;gap:2.2rem;font-size:.875rem}nav>a:hover{color:var(--sc-cuivre-lo)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:3.5rem;padding:1rem 1.4rem;background:var(--dark);color:var(--sc-craie);border:1px solid var(--dark);border-radius:var(--sc-radius-xs);font-size:.875rem;font-weight:500;transition:background .25s,transform .25s}.button:hover{background:var(--sc-cacao-hi);transform:translateY(-2px)}.button span{font-size:1.15rem}.button-small{min-height:2.7rem;padding:.65rem 1rem}.menu{display:none}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:3rem;padding-top:4.5rem}.hero-copy{padding-block:1.5rem 3rem}.hero .eyebrow{display:flex;align-items:center;gap:.7rem;font-size:.7rem}.rule{display:block;width:1.6rem;height:1px;background:var(--accent)}h1{font-size:clamp(3.5rem,5.9vw,6.2rem);margin-block:2rem 1.75rem;letter-spacing:-.035em}h1 em{color:var(--sc-cuivre-lo)}.hero-lead{color:var(--muted);font-size:1.0625rem;line-height:1.75}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem;margin-top:2rem}.text-link{display:inline-flex;gap:1rem;align-items:center;padding:.45rem 0;background:none;border:0;border-bottom:1px solid currentColor;font-size:.875rem;line-height:1.5}.text-link:hover{color:var(--sc-cuivre-lo)}.micro{font-size:.75rem;color:var(--muted);margin-top:1rem}.hero-visual{position:relative;isolation:isolate;min-height:34rem;display:flex;flex-direction:column;justify-content:space-between;padding:2rem;background:var(--sc-cacao);color:var(--sc-craie);overflow:hidden;border-radius:10rem 10rem .2rem .2rem}.visual-top{display:flex;justify-content:space-between;font-size:.625rem;letter-spacing:.12em;padding-top:1.8rem;gap:1rem}.visual-message{margin-block:auto;padding-block:3rem}.visual-message>span{font-size:.8rem}.visual-message p{font:clamp(2.8rem,4.4vw,4.5rem)/1.08 var(--sc-font-serif);letter-spacing:-.035em;margin-top:1rem}.visual-message em{color:var(--sc-cuivre-hi)}.visual-bottom{display:flex;justify-content:space-between;align-items:flex-end;font-size:.65rem;letter-spacing:.12em}.visual-arrow{font-size:3rem;line-height:1}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-block:0 1.5rem;font-size:.75rem;color:var(--muted)}.hero-bottom a{color:var(--ink)}.section-top{display:flex;justify-content:space-between;gap:1rem;margin-bottom:2rem}.section-caption{color:var(--muted);font-size:.8rem}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}.project{display:flex;flex-direction:column;background:var(--sc-sable);padding:2rem;min-width:0;transition:transform .35s var(--ease),box-shadow .35s}.project:hover{transform:translateY(-6px);box-shadow:var(--sc-shadow-md)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:3.5rem}.tag{font-size:.7rem;border:1px solid currentColor;border-radius:var(--sc-radius-pill);padding:.25rem .8rem}.number{font:1rem var(--sc-font-mono);opacity:.55}.project h3{font-size:clamp(1.8rem,2.65vw,2.8rem);margin-bottom:1.5rem}.project p{font-size:.9375rem;opacity:.85}.project-topics{font-size:.625rem;letter-spacing:.07em;margin-block:auto 1.5rem;padding-top:2.5rem}.card-link{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;border-top:1px solid color-mix(in srgb,currentColor 25%,transparent);background:transparent;text-align:left;padding:1rem 0 0;font-size:.875rem;gap:1rem}.card-link span{font-size:1.4rem;transition:transform .3s}.card-link:hover span{transform:translate(3px,-3px)}.project-dark{background:var(--dark);color:var(--sc-craie)}.project-copper{background:var(--sc-cuivre-hi)}.approach{background:var(--dark);color:var(--sc-craie)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem}.approach h2{margin-block:2rem}.approach h2 em{color:var(--sc-cuivre-hi)}.approach-intro>p:not(.eyebrow){color:var(--sc-text-dark-muted);max-width:30rem}.approach .text-link{margin-top:2rem}.steps{padding-top:.5rem}.step{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;border-top:var(--sc-border-dark-default);padding:2rem 0}.step>span{color:var(--sc-cuivre-hi);font:.75rem var(--sc-font-mono);padding-top:.4rem}.step h3{font-size:1.75rem;letter-spacing:-.03em}.step p{margin-top:1rem;color:var(--sc-text-dark-muted);font-size:.9375rem}.solutions-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:4rem;margin-bottom:3rem}.solutions-heading>p{color:var(--muted);font-size:.9375rem}.solution-list details{border-top:1px solid var(--line)}.solution-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.solution-list summary{display:flex;align-items:center;gap:1.5rem;padding:1.7rem 0}.solution-index{font:.75rem var(--sc-font-mono);color:var(--muted)}summary h3{font-size:clamp(1.4rem,2.3vw,2.2rem);letter-spacing:-.035em}.solution-purpose{margin-left:auto;font-size:.75rem;color:var(--muted)}.plus{font-size:1.6rem;margin-left:1rem;font-weight:300;transition:transform .25s}details[open] .plus{transform:rotate(45deg)}.solution-body{margin-left:3rem;padding-bottom:2rem;max-width:44rem;animation:enter .4s var(--ease)}.solution-body p{font-size:.9375rem}.solution-note{color:var(--muted);margin-block:1rem}.disclaimer{margin-top:1.5rem;font-size:.75rem;color:var(--muted)}.cabinet{background:var(--sc-sable)}.cabinet-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem}.cabinet h2{margin-top:2rem}.large-copy{font:1.9rem/1.25 var(--sc-font-serif);letter-spacing:-.035em;margin-bottom:1.5rem}.cabinet-copy>p:not(.large-copy){font-size:.9375rem;color:var(--muted)}.cabinet-facts{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.cabinet-facts strong{display:block;font:1.5rem var(--sc-font-serif)}.cabinet-facts span{font-size:.75rem;color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 1.1fr;gap:6rem}.faq h2{margin-top:2rem;font-size:clamp(2.3rem,3.7vw,3.5rem)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem 0;font-size:1rem}.faq details p{font-size:.9375rem;color:var(--muted);padding-bottom:1.5rem}.faq .text-link{margin-bottom:1.5rem}.closing{padding:5rem 0;text-align:center;background:var(--sc-cuivre-hi)}.closing p{margin-inline:auto}.closing h2{font-size:clamp(3rem,6vw,6rem);margin-block:1.5rem}.closing .button{margin-block:2rem 1rem}.closing-note{display:block;font-size:.75rem}.footer{padding-block:3rem 1.5rem}.footer-top{display:flex;gap:2rem;align-items:center;justify-content:space-between;padding-bottom:2.5rem}.footer-top p{font-size:.75rem;color:var(--muted);margin-right:auto}.footer-top>a:not(.brand){font-size:.75rem}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.7rem;color:var(--muted)}.mobile-action{display:none}.skip{position:fixed;left:1rem;top:1rem;z-index:100;background:var(--dark);color:var(--sc-craie);padding:1rem;transform:translateY(-200%)}.skip:focus{transform:none}.js .reveal{opacity:0;transform:translateY(1.5rem);transition:opacity .7s var(--ease),transform .7s var(--ease)}.js .reveal.visible{opacity:1;transform:none}@keyframes enter{from{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}
@media(min-width:901px){.hero-copy{animation:enter .85s var(--ease)}.hero-visual{animation:enter 1.2s var(--ease)}}
@media(max-width:1100px){nav{gap:1rem}.hero{gap:2rem}.actions{align-items:flex-start;flex-direction:column;gap:1rem}.project{padding:1.5rem}.approach-grid,.cabinet-grid,.faq{gap:3rem}.hero-visual{min-height:31rem}.footer-top{flex-wrap:wrap}}
@media(max-width:900px){.header{flex-wrap:wrap;gap:1rem}.menu{display:flex;gap:1.5rem;align-items:center;min-height:2.75rem;background:none;border:1px solid var(--line);padding:.5rem 1rem;border-radius:var(--sc-radius-xs)}nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-block:1rem}nav.open{display:flex}nav>a{padding:.75rem 0}.hero{grid-template-columns:1fr 1fr;gap:1.5rem;padding-top:2rem}h1{font-size:clamp(2.9rem,6vw,4.5rem)}.hero-copy{padding-top:0}.hero-visual{min-height:28rem;border-radius:7rem 7rem .2rem .2rem;padding:1.5rem}.visual-top{flex-direction:column;font-size:.6rem}.project-grid{grid-template-columns:1fr}.project{padding:2rem}.card-top{margin-bottom:2rem}.project h3{font-size:2.6rem}.project-topics{padding-top:2rem}.approach-grid,.cabinet-grid,.faq{grid-template-columns:1fr}.solutions-heading{grid-template-columns:1fr;gap:1.5rem}.section-caption{max-width:15rem;text-align:right}.solution-purpose{display:none}.plus{margin-left:auto}.footer-bottom{flex-wrap:wrap}.hero-lead{font-size:1rem}}
@media(max-width:600px){html{scroll-padding-top:6rem}.hero{grid-template-columns:1fr}.hero h1{font-size:clamp(3.15rem,12vw,4.5rem)}.hero .eyebrow{font-size:.625rem;max-width:19rem}.hero-copy{padding-bottom:1rem}.hero-lead br{display:none}.actions{align-items:stretch}.actions .text-link{align-self:flex-start}.hero-visual{min-height:22rem;border-radius:7rem 7rem .2rem .2rem;padding:1.75rem}.visual-top{flex-direction:row;font-size:.6rem;padding-top:2.2rem}.visual-message{padding-block:2rem}.visual-message p{font-size:3.4rem}.hero-bottom{flex-direction:column;padding-block:1rem 1.5rem}.section-caption{display:none}.project-grid{margin-top:2rem}.project h3{font-size:2.3rem}.project-topics{font-size:.6rem}.solution-list summary{gap:.8rem}.solution-body{margin-left:0}.solution-index{font-size:.65rem}.solution-list h3{font-size:1.45rem}.cabinet-facts{gap:1rem}.footer-top{justify-content:flex-start;gap:1.25rem}.footer-top p{margin:0}.footer-top .brand{width:100%}.footer-bottom{flex-direction:column}.footer{padding-bottom:7rem}.mobile-action{display:block;position:fixed;bottom:0;left:0;right:0;padding:.65rem var(--gutter) max(.65rem,env(safe-area-inset-bottom));background:var(--page);border-top:1px solid var(--line);z-index:15}.mobile-action .button{width:100%;min-height:3rem;padding:.7rem 1rem}.closing{padding-block:4rem}.closing .button{gap:1rem}.contact-dialog{padding:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}.project:hover,.button:hover{transform:none}}
/* Le voile garantit la lecture sans dépendre des zones claires de la photo. */
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center;z-index:-2}
.hero-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--dark) 32%,transparent),color-mix(in srgb,var(--dark) 55%,transparent) 48%,color-mix(in srgb,var(--dark) 88%,transparent));z-index:-1}
.photo-credit{font-size:.7rem;color:var(--muted);margin-top:1rem}.photo-credit a{text-decoration:underline;text-underline-offset:.2em}

/* L’accroche longue conserve son rôle principal sans écraser la photographie. */
.hero h1{font-size:clamp(2.6rem,4.1vw,4.5rem);line-height:1.13;letter-spacing:-.035em}
.partners{margin-top:3rem;padding-block:2.75rem;background:var(--sc-cacao-hi);color:var(--sc-craie);border-block:1px solid var(--sc-lagon);overflow:hidden}
.partners-heading{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem}
.partners h3{font-family:var(--sc-font-sans);color:var(--sc-text-dark-default);font-size:.75rem;font-weight:600;letter-spacing:.15em;line-height:1.6}
.partners-toggle{flex-shrink:0;background:transparent;border:var(--sc-border-dark-default);border-radius:var(--sc-radius-xs);color:var(--sc-craie);padding:.6rem .8rem;min-height:2.75rem;font-size:.75rem}
.partners-window{overflow:hidden;mask-image:linear-gradient(to right,transparent,var(--dark) 6%,var(--dark) 94%,transparent)}
.partners-track{display:flex;width:max-content;animation:partners-drift 90s linear infinite}
.partners-group{display:flex;flex-shrink:0;align-items:center;gap:3rem;padding-right:3rem}
.partner-logo{width:10rem;height:4rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.partner-logo img{width:auto;height:auto;max-width:100%;max-height:3.25rem;object-fit:contain;filter:grayscale(1) brightness(0) invert(1);opacity:.72;transition:opacity .2s}
.partner-logo:hover img{opacity:1}
.partners-window:hover .partners-track,.partners-window:focus-within .partners-track,.partners.is-paused .partners-track{animation-play-state:paused}
.partners.is-paused .partners-window{overflow-x:auto}
@keyframes partners-drift{to{transform:translateX(-50%)}}
@media(max-width:600px){.hero h1{font-size:clamp(2.2rem,8.7vw,3.2rem)}.partners-heading{align-items:flex-start;flex-direction:column;gap:1rem}.partners{padding-block:2rem}.partners-group{gap:2rem;padding-right:2rem}.partner-logo{width:8rem}.partners h3{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){.partners-track{animation:none;transform:none}.partners-window{overflow-x:auto}.partners-group[aria-hidden]{display:none}.partners-toggle{display:none}}

/* Partenaires de distribution : un complément compact au bloc des solutions. */
.solutions .partners{margin-top:2.5rem;padding:1.5rem 0;border:var(--sc-border-dark-default);border-radius:var(--sc-radius-md)}
.solutions .partners-heading{padding-inline:1.5rem;margin-bottom:1.25rem;gap:1rem}
.solutions .partners h3{font-size:.6875rem;letter-spacing:.12em;max-width:42rem}
.solutions .partners-toggle{font-size:.75rem;padding:.45rem .7rem}
.solutions .partner-logo{width:8rem;height:3rem}
.solutions .partner-logo img{max-height:2.5rem}
.solutions .partners-group{gap:2.5rem;padding-right:2.5rem}
@media(max-width:600px){
  .solutions .partners{margin-top:2rem;padding-block:1.25rem}
  .solutions .partners-heading{padding-inline:1rem;gap:.75rem}
  .solutions .partner-logo{width:6.5rem;height:2.75rem}
  .solutions .partner-logo img{max-height:2.25rem}
  .solutions .partners-group{gap:2rem;padding-right:2rem}
}

/* Identifiants fournis par le cabinet, distincts des partenaires de distribution. */
.footer-registration{line-height:1.8;overflow-wrap:anywhere}

/* Le questionnaire précède les produits : les cartes ramènent à la qualification. */
.product-card-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem}

/* Lecture de l’infographie : situation → familles → partenaires. */
.solutions-heading h2{font-family:var(--sc-font-sans);font-weight:500;font-size:clamp(2rem,3.8vw,3.5rem);letter-spacing:-.045em}
.solutions-heading>p{color:var(--sc-text-default)}
.map-origin{display:flex;align-items:center;gap:1rem;max-width:52rem;margin-inline:auto;padding:1.5rem;background:var(--dark);color:var(--sc-craie);border-radius:var(--sc-radius-md);position:relative}
.map-origin strong{display:block;font-size:1rem;font-weight:500}.map-origin div>span{display:block;font-size:.8125rem;margin-top:.3rem;color:var(--sc-text-dark-default)}.map-origin a{margin-left:auto;white-space:nowrap;font-size:.8125rem;color:var(--sc-cuivre-hi)}
.map-origin::after{content:'';position:absolute;top:100%;left:50%;height:1.5rem;border-left:1px solid var(--sc-cuivre)}
.map-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:3rem;position:relative}.map-branches::before{content:'';position:absolute;top:1.5rem;left:16.66%;right:16.66%;border-top:1px solid var(--sc-cuivre)}
.map-branch{position:relative;display:flex;flex-direction:column;min-width:0;padding:1.75rem;background:var(--sc-sable);border:1px solid var(--line);border-radius:var(--sc-radius-md)}.map-branch::before{content:'';position:absolute;bottom:100%;left:50%;height:1.5rem;border-left:1px solid var(--sc-cuivre)}
.map-index{font-size:.6875rem;letter-spacing:.1em;color:var(--sc-text-muted)}.map-branch h3{font:500 1.45rem/1.3 var(--sc-font-sans);letter-spacing:-.03em;margin-block:1rem}.map-family{align-self:flex-start;font-size:.75rem;border:1px solid var(--sc-cuivre-lo);color:var(--sc-cuivre-lo);border-radius:var(--sc-radius-pill);padding:.25rem .7rem;margin-bottom:1rem}.map-branch>p{font-size:.875rem;color:var(--sc-text-default);margin-bottom:1.5rem}.map-partners{margin-top:auto;border-top:1px solid var(--line);padding-top:1rem}.map-partners>span{font-size:.6875rem;color:var(--sc-text-muted)}.map-partners>div{display:flex;align-items:center;gap:1.5rem;margin-top:1rem;min-height:3rem}.map-partners img{width:6rem;height:2.75rem;object-fit:contain;filter:grayscale(1)}
.cabinet-compact{padding-block:4rem;background:var(--sc-sable)}.cabinet-panel{display:grid;grid-template-columns:1fr 1.3fr;gap:4rem}.cabinet-intro h2{font:500 clamp(2rem,3.3vw,3rem)/1.15 var(--sc-font-sans);letter-spacing:-.04em;margin-block:1.2rem}.cabinet-intro>p:not(.eyebrow){font-size:.9375rem;max-width:26rem;color:var(--sc-text-default)}.cabinet-intro .button{margin-top:1.5rem}.cabinet-essential h3{font:500 1.15rem/1.4 var(--sc-font-sans);letter-spacing:-.02em}.cabinet-credentials{display:grid;grid-template-columns:1fr 1.5fr;gap:1.5rem;margin:1.5rem 0;padding-block:1.25rem;border-block:1px solid var(--sc-sable-lo)}.cabinet-credentials dt{font-size:.75rem;color:var(--sc-text-muted)}.cabinet-credentials dd{margin:.5rem 0 0;font:500 .875rem/1.6 var(--sc-font-mono);overflow-wrap:anywhere}.cabinet-terms summary{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem;padding-block:.5rem}.cabinet-terms p{font-size:.875rem;margin-top:1rem;color:var(--sc-text-default)}
@media(max-width:900px){.map-branches{gap:1rem}.map-branch{padding:1.25rem}.map-partners>div{gap:.5rem;flex-wrap:wrap}.map-partners img{width:5rem}.cabinet-panel{gap:2rem}.cabinet-credentials{grid-template-columns:1fr}}
@media(max-width:600px){.map-origin{flex-wrap:wrap;padding:1.25rem}.map-origin div{flex:1;min-width:0}.map-origin a{margin-left:3.75rem}.map-branches{grid-template-columns:1fr;padding-top:1.5rem;gap:1rem}.map-branches::before{display:none}.map-branch::before{height:1rem}.map-branch:first-child::before{height:1.5rem}.map-branch h3 br{display:none}.map-partners img{width:6rem}.map-partners>div{gap:1.5rem}.cabinet-panel{grid-template-columns:1fr;gap:2.5rem}.cabinet-compact{padding-block:3rem}.cabinet-credentials{grid-template-columns:1fr;gap:1rem}}
/* Certains logos sources sont blancs : une encre sombre les rend lisibles ici. */
.map-partners img{filter:brightness(0);opacity:.8}

/* Enveloppes et univers : pastilles lisibles, sans confondre leur nature. */
.map-families{display:flex;flex-wrap:wrap;align-content:flex-start;gap:.5rem;margin-bottom:1rem}
.map-families .map-family{margin:0;line-height:1.5}
.map-partners>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:1rem;min-height:3rem}
.map-partners img{width:100%;max-width:6rem;height:2.75rem;justify-self:center}
.map-partner-wordmark{font:700 clamp(1.15rem,2vw,1.6rem)/1 var(--sc-font-sans);letter-spacing:-.07em;color:var(--sc-encre);justify-self:center}
@media(min-width:901px){.map-families{min-height:5.5rem}.map-branch h3{min-height:3.8rem}}
@media(max-width:900px){.map-partners>div{gap:.65rem}.map-partners img{width:100%;height:2.25rem}}

/* Contrastes de la palette : cuivre sur chocolat, texte encre sur sable. */
.map-branch{border-color:var(--sc-sable-lo);box-shadow:var(--sc-shadow-sm)}
.map-index,.map-partners>span{color:var(--sc-encre)}
.map-branch>p{color:var(--sc-encre)}
.map-families .map-family{background:var(--sc-cacao);border-color:var(--sc-cacao);color:var(--sc-craie);font-weight:500;padding:.3rem .7rem}
.map-branch:first-child .map-family{background:var(--sc-cuivre-hi);border-color:var(--sc-cuivre-hi);color:var(--sc-encre)}
.map-families{min-height:0;gap:.4rem;margin-bottom:1.25rem}
.map-families-pro{display:flex;flex-direction:column;gap:.4rem}
@media(min-width:901px){.map-families{min-height:4.6rem}.map-branch{padding:1.5rem}.map-families-pro .map-family{padding-inline:.55rem}}
@media(min-width:601px) and (max-width:900px){.map-branches{grid-template-columns:1fr}.map-branches::before,.map-branch::before{display:none}.map-partners>div{max-width:22rem}}
.header nav{gap:.6rem}
.header nav>a{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.7rem 1.15rem;font-size:.9375rem;font-weight:600;border-radius:var(--sc-radius-sm)}
.header nav>a:not(.button){background:var(--sc-sable);border:1px solid var(--sc-sable-lo);color:var(--sc-encre)}
.header nav>a:not(.button):hover,.header nav>a:not(.button):focus-visible{background:var(--sc-sable-lo);border-color:var(--sc-cuivre-lo)}
.header nav>.button{background:var(--sc-cacao-lo);color:var(--sc-craie);border-color:var(--sc-cacao-lo);gap:1.5rem}
.header nav>.button:hover{background:var(--sc-cacao-hi)}
@media(max-width:900px){.header nav>a{justify-content:space-between;width:100%}}

/* Gris basalte : synchronisé avec le jeton basalte de tailwind.config.ts. */
:root{--sc-basalte:#50565B}
.map-families-pro .map-family{background:var(--sc-basalte);border-color:var(--sc-basalte);color:var(--sc-craie)}
.map-range{gap:1.75rem;padding:1.75rem 2rem}
.map-range .range-count{flex-shrink:0;padding-right:1.75rem;border-right:var(--sc-border-dark-default)}
.map-range .range-count strong{font:500 3.2rem/1.1 var(--sc-font-mono);color:var(--sc-cuivre-hi)}
.map-range .range-count strong span{font-size:1.5rem}
.map-range .range-count>span{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sc-craie);margin-top:.6rem}
.map-range .range-description{max-width:29rem}
.map-range .range-description>strong{font-size:1.2rem}
.cabinet-status{background:var(--sc-cacao-lo);color:var(--sc-craie);padding:1.75rem;border:1px solid var(--sc-cacao-hi);border-bottom:3px solid var(--sc-cuivre-hi);border-radius:var(--sc-radius-md);margin-block:1.5rem}
.status-grid{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:0;margin:1.2rem 0}
.status-grid li{text-align:center;border:var(--sc-border-dark-default);border-radius:var(--sc-radius-sm);padding:.45rem;font:500 1.4rem/1.5 var(--sc-font-mono);letter-spacing:.08em;color:var(--sc-cuivre-hi)}
.status-grid abbr{text-decoration:none}
.cabinet-status .status-description{font-size:.8rem;color:var(--sc-text-dark-default)}
.cabinet-status .cabinet-credentials{margin:1.25rem 0 0;padding:1rem 0 0;border-top:var(--sc-border-dark-default);border-bottom:0;gap:1rem;grid-template-columns:1fr}
.cabinet-status .cabinet-credentials dt{color:var(--sc-text-dark-muted)}
.cabinet-status .cabinet-credentials dd{color:var(--sc-craie)}
@media(max-width:600px){.map-range{gap:1.25rem;padding:1.25rem}.map-range .range-count{flex:0 0 100%;padding:0 0 1rem;border-right:0;border-bottom:var(--sc-border-dark-default)}.map-range .range-description{flex:0 0 100%}.map-range a{margin-left:0}.cabinet-status{padding:1.25rem}}

.footer-legal{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;margin-top:1.25rem;font-size:.75rem;color:var(--sc-text-default)}
.footer-legal a{padding-block:.35rem;text-underline-offset:.25em}
.footer-legal a:hover,.footer-legal a:focus-visible{text-decoration:underline;color:var(--sc-encre)}

.cabinet-portrait{margin:1.5rem 0 0;max-width:22rem}
.cabinet-portrait figcaption{display:flex;flex-direction:column;padding-top:.65rem;font-size:.8rem;color:var(--sc-text-default)}
.cabinet-portrait figcaption strong{color:var(--sc-encre);font-weight:600}
.footer-dark{background:var(--sc-cacao-lo);color:var(--sc-craie);padding:3.5rem 0 2rem}
.footer-dark a:hover,.footer-dark a:focus-visible{color:var(--sc-cuivre-hi);text-decoration:underline;text-underline-offset:.25em}
.footer-dark .footer-bottom{border-top:var(--sc-border-dark-default);margin-top:2.5rem;padding-top:1.5rem;color:var(--sc-text-dark-default)}
.footer-dark .photo-credit{color:var(--sc-text-dark-muted);max-width:90ch}
@media(max-width:600px){.footer-dark{padding:2.5rem 0 7rem}.cabinet-portrait{max-width:100%}.footer-dark .footer-bottom{gap:.75rem}}

.institution-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:center;background:var(--sc-sable-hi);padding:1rem;border:1px solid var(--sc-sable-lo);border-radius:var(--sc-radius-sm)}
.institution-logos a{display:flex;justify-content:center;min-width:0}.institution-logos img{display:block;width:100%;max-width:8rem;height:3.5rem;object-fit:contain}
.footer-compact{padding:1.25rem 0}.footer-line{display:flex;align-items:center;justify-content:space-between;gap:1rem}.footer-compact .brand{font-size:1.6rem;white-space:nowrap}.footer-compact .brand b{color:var(--sc-cuivre)}
.footer-compact .compact-nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:.3rem .9rem;width:auto;padding:0}.footer-compact .compact-nav a{font-size:.75rem;padding:.2rem 0;color:var(--sc-text-dark-default)}
.footer-fine{border-top:var(--sc-border-dark-default);margin-top:.8rem;padding-top:.8rem;font-size:.625rem;color:var(--sc-text-dark-default)}.footer-fine .compact-nav{gap:.3rem .6rem}.footer-fine .compact-nav a{font-size:.625rem}
.footer-photo{position:relative;flex-shrink:0}.footer-photo summary{cursor:pointer}.footer-photo .photo-credit{position:absolute;right:0;bottom:1.5rem;width:min(26rem,80vw);padding:1rem;background:var(--sc-cacao);border:var(--sc-border-dark-default);border-radius:var(--sc-radius-sm);z-index:5;color:var(--sc-craie)}
@media(max-width:1100px){.footer-line{gap:.6rem}.footer-fine .compact-nav{gap:.25rem .45rem}.footer-fine{font-size:.6rem}.footer-fine .compact-nav a{font-size:.6rem}}
@media(max-width:900px){.footer-line{flex-wrap:wrap;justify-content:flex-start}.footer-photo .photo-credit{position:static;width:100%}}
@media(max-width:600px){.footer-compact{padding-bottom:6rem}.institution-logos{gap:.75rem;padding:.75rem}.institution-logos img{height:2.75rem}}

.pain-card{padding:1.5rem;background:var(--sc-sable);border:1px solid var(--sc-sable-lo);border-radius:var(--sc-radius-md);min-width:0}
.pain-card-top,.pain-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pain-card-top .eyebrow{font-size:.625rem;color:var(--sc-text-muted)}
.pain-pause{background:transparent;border:1px solid var(--sc-sable-lo);border-radius:var(--sc-radius-sm);font-size:.65rem;padding:.25rem .5rem;color:var(--sc-encre)}
.pain-questions{display:grid;align-items:center;min-height:7rem;margin-block:.65rem}.pain-questions p{font:500 clamp(1.3rem,2.2vw,1.8rem)/1.25 var(--sc-font-sans);letter-spacing:-.025em;color:var(--sc-encre)}
.pain-questions p:not([hidden]){animation:pain-enter .45s ease-out}.pain-questions [hidden]{display:none}
.pain-card-bottom{justify-content:flex-start;border-top:1px solid var(--sc-sable-lo);padding-top:1rem;font-size:.75rem;line-height:1.5}.pain-progress{font-family:var(--sc-font-mono);color:var(--sc-cuivre-lo);white-space:nowrap}
.pain-card .pain-explanation{font-size:.8rem;line-height:1.6;margin-top:.65rem;color:var(--sc-text-default)}
@keyframes pain-enter{from{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.pain-questions p:not([hidden]){animation:none}}

/* Introduction compacte et mouvement limité aux interactions. */
#solutions{padding-top:3rem}
#solutions .section-top{margin-bottom:1rem}
#solutions .solutions-heading{grid-template-columns:.85fr 1.15fr;align-items:center;gap:2rem;margin-bottom:2rem}
#solutions .solutions-heading h2{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.12}
#solutions .pain-card{padding:1rem 1.25rem;border-left:3px solid var(--sc-cuivre);border-radius:var(--sc-radius-sm)}
#solutions .pain-questions{min-height:3.75rem;margin:.5rem 0}
#solutions .pain-questions p{font-size:clamp(1.15rem,1.8vw,1.5rem);line-height:1.25}
#solutions .pain-card-bottom{padding-top:.6rem;gap:.75rem;font-size:.7rem}
#solutions .pain-explanation{margin-top:.35rem;font-size:.75rem}
.header #navigation>a{position:relative;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}
.header #navigation>a::after{content:'';position:absolute;bottom:.4rem;left:1rem;right:1rem;height:2px;background:var(--sc-cuivre);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.header #navigation>a:hover,.header #navigation>a:focus-visible{transform:translateY(-2px);box-shadow:var(--sc-shadow-sm)}
.header #navigation>a:hover::after,.header #navigation>a:focus-visible::after{transform:scaleX(1)}
.header #navigation>a:active{transform:translateY(0);box-shadow:none}
.header #navigation>.button span{display:inline-block;transition:transform .2s ease}
.header #navigation>.button:hover span,.header #navigation>.button:focus-visible span{transform:translate(2px,-2px)}
@media(max-width:600px){#solutions .solutions-heading{grid-template-columns:1fr;gap:1.25rem}#solutions .pain-questions{min-height:4.5rem}#solutions .pain-card-bottom{align-items:flex-start}#solutions{padding-top:2.5rem}}
@media(prefers-reduced-motion:reduce){.header #navigation>a,.header #navigation>a::after,.header #navigation>.button span{transition:none}.header #navigation>a:hover,.header #navigation>a:focus-visible,.header #navigation>.button:hover span,.header #navigation>.button:focus-visible span{transform:none}}

.cabinet-essential>p{font-size:.9375rem;color:var(--sc-text-default);margin-top:.8rem}
