@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/manrope-0.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/manrope-1.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/manrope-2.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/manrope-3.woff2) format('woff2');
}
/* Direction digital sobre : une seule famille, hiérarchie par taille et graisse. */
:root{--sc-font-sans:'Manrope',Arial,sans-serif;--sc-font-serif:'Manrope',Arial,sans-serif;--sc-font-mono:'Manrope',Arial,sans-serif}
body{font-family:var(--sc-font-sans);font-weight:400}
h1,h2,h3{font-family:var(--sc-font-sans);font-weight:600}
.brand{font-family:var(--sc-font-sans);font-weight:600;letter-spacing:-.055em}
.brand b{font-weight:700}
.immersive h1{font-weight:600;font-size:clamp(2.2rem,4.1vw,4.5rem);line-height:1.16;letter-spacing:-.045em}
.immersive h1>span{font-weight:400}
.immersive .hero-lead{font-weight:400;color:var(--sc-cacao)}
.header nav>a{font-weight:600;font-size:.875rem}
.button{font-weight:600}
.platform-selector h2{font-family:var(--sc-font-sans);font-weight:600;letter-spacing:-.035em}
.platform-panel h3,.map-branch h3{font-weight:600;letter-spacing:-.025em}
#solutions .solutions-heading h2,.cabinet-intro h2{font-family:var(--sc-font-sans);font-weight:600;letter-spacing:-.035em}
.eyebrow{font-weight:600;letter-spacing:.08em}
.map-range .range-count strong{font-family:var(--sc-font-sans);font-weight:500;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.status-grid li{font-family:var(--sc-font-sans);font-weight:600;letter-spacing:.04em}
.cabinet-credentials dd,.pain-progress,.footer-registration{font-family:var(--sc-font-sans);font-variant-numeric:tabular-nums}
#solutions .pain-questions p{font-weight:500;letter-spacing:-.02em}
.footer-compact .brand{font-family:var(--sc-font-sans)}
@media(max-width:600px){.immersive h1{font-size:clamp(1.9rem,7.3vw,2.6rem);line-height:1.2}.platform-selector h2{font-size:1.75rem}}


.social-networks{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;list-style:none;padding:0;margin:0;flex-shrink:0}.social-link{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:.55rem;min-width:5rem;padding:1rem .6rem;border:1px solid var(--sc-sable-lo);border-radius:var(--sc-radius-sm);font-size:.7rem;color:var(--sc-cacao);background:var(--sc-sable)}.social-link svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}a.social-link{transition:background .2s,border-color .2s,transform .2s}a.social-link:hover,a.social-link:focus-visible{background:var(--sc-sable-lo);border-color:var(--sc-cuivre);transform:translateY(-2px)}
@media(max-width:900px){.social-networks{width:100%}.social-link{min-width:0}}
@media(max-width:600px){.social-networks{gap:.4rem}.social-link{padding:.85rem .3rem}}
@media(prefers-reduced-motion:reduce){a.social-link{transition:none}a.social-link:hover,a.social-link:focus-visible{transform:none}}

.social-link small{font-size:.6rem;color:var(--sc-text-muted)}
.social-networks li{display:flex}.social-networks .social-link{width:100%;height:100%}

.cabinet-social{display:flex;align-items:center;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--sc-sable-lo);max-width:26rem}
.cabinet-social>img{width:2.5rem;height:2.5rem;border-radius:50%;flex-shrink:0}
.cabinet-social .social-networks{flex:1;min-width:0;gap:.35rem;flex-shrink:1}
.cabinet-social .social-link{min-width:0;padding:.4rem .2rem;gap:.25rem;border:0;background:transparent;font-size:.625rem;border-radius:var(--sc-radius-xs)}
.cabinet-social .social-link svg{width:1.1rem;height:1.1rem}
.cabinet-social .social-link small{font-size:.55rem;line-height:1.1}
.cabinet-social a.social-link:hover,.cabinet-social a.social-link:focus-visible{background:var(--sc-sable-lo)}

.immersive h1>.hero-audience{display:grid;margin:0;color:var(--hero-muted);font-weight:400}
.hero-audience .audience-line{grid-area:1/1;opacity:0;transform:translateY(.25em);transition:opacity .4s ease,transform .4s ease;pointer-events:none}
.hero-audience .audience-line.is-current{opacity:1;transform:translateY(0)}
.immersive h1>.hero-title-fixed{display:block;color:var(--sc-encre);font-weight:600;margin:0}
.audience-pause{display:inline-block;background:transparent;border:0;color:var(--sc-text-muted);font:400 .625rem var(--sc-font-sans);text-decoration:underline;text-underline-offset:.2em;padding:.4rem;margin-top:.65rem}
.audience-pause[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.hero-audience .audience-line{transition:none;transform:none}}

.map-families.map-families-pro{flex-direction:row;flex-wrap:wrap;align-items:flex-start;min-height:0;overflow:visible;max-width:100%;padding-bottom:.25rem}
.map-families-pro .map-family{flex:0 0 auto;white-space:nowrap}
.cabinet-social .social-link{min-height:2.75rem;justify-content:center}
.cabinet-social .social-link svg{width:1.35rem;height:1.35rem}
.cabinet-social span.social-link{opacity:.5}

.header .brand>span{display:inline-flex;align-items:baseline;gap:.18em}
.header .brand b{font-size:.82em;font-weight:700;letter-spacing:-.04em;line-height:inherit}
.audience-pause{font-size:.6875rem;color:var(--sc-text-default)}
/* Portrait circulaire, sans modifier la photographie originale. */
.cabinet-portrait{width:min(100%,13rem);margin-top:1.25rem}
.cabinet-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:50% 48%;border-radius:50%;border:1px solid var(--sc-cuivre);padding:.35rem;background:var(--sc-sable-hi)}
.cabinet-portrait figcaption{padding-top:1rem}
@media(max-width:600px){.cabinet-portrait{width:min(100%,11rem)}.cabinet-portrait img{height:auto}}

/* Suspendre le défilement hors écran sans changer la pause choisie par le visiteur. */
.partners.is-offscreen .partners-track{animation-play-state:paused}

/* Les portes gardent leurs couleurs et une interaction sans rotation. */
.platform-tabs button{background:var(--sc-cacao-hi);border-color:var(--sc-cuivre-hi);border-left:4px solid var(--sc-cuivre-hi);transition:background .2s,border-color .2s,transform .2s}
.platform-tabs button[aria-selected="true"]{background:var(--sc-cuivre-hi);border-color:var(--sc-cuivre-hi);color:var(--sc-encre)}
.platform-tabs button:hover:not([aria-selected="true"]){background:var(--sc-cacao);transform:translateY(-2px)}
.platform-tabs button:focus-visible{outline:2px solid var(--sc-craie);outline-offset:4px}
.platform-tabs strong{font-weight:600}
.platform-tabs small,.platform-tabs .option-icon{opacity:1}
.platform-tabs button>span:last-child{display:grid;place-items:center;flex-shrink:0;width:1.7rem;height:1.7rem;border:1px solid currentColor;border-radius:var(--sc-radius-pill)}
.header #navigation>a,.header .menu{border-radius:var(--sc-radius-pill)}
.header #navigation>a::after{left:1.5rem;right:1.5rem}
.map-families-immo{display:grid;grid-template-columns:max-content max-content;justify-content:start}
.map-families-immo .map-family{justify-self:start}
.map-families-immo .map-family-direct{grid-column:1/-1}
.map-partners{padding-top:1.25rem}
.map-partners>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;min-height:7rem;max-width:none}
.map-partners>div>:last-child{grid-column:1/-1}
.map-partners img{max-width:8rem;height:3.25rem;opacity:.9}
.map-partner-wordmark{font-size:1.85rem}
@media(min-width:601px) and (max-width:900px){.map-partners>div{grid-template-columns:repeat(3,minmax(0,1fr));min-height:4rem;gap:1.5rem}.map-partners>div>:last-child{grid-column:auto}.map-partners img{max-width:9rem;height:4rem}}
@media(prefers-reduced-motion:reduce){.platform-tabs button{transition:none}.platform-tabs button:hover:not([aria-selected="true"]){transform:none}}

/* Contours contrastés de la navigation, conservés au survol et au clavier. */
.header #navigation>a:not(.button){border:1px solid var(--sc-cacao-lo)}
.header #navigation>a.button{border:1px solid var(--sc-sable-hi)}

/* Couleurs propres aux portes, avec sélection indépendante de la couleur du fond. */
.platform-tabs #tab-pro{background:var(--sc-basalte);color:var(--sc-craie);border-color:var(--sc-basalte)}
.platform-tabs #tab-immo{background:var(--sc-lagon);color:var(--sc-encre);border-color:var(--sc-lagon)}
.platform-tabs #tab-pro[aria-selected="true"],.platform-tabs #tab-immo[aria-selected="true"]{border-color:var(--sc-craie)}
.platform-tabs #tab-pro:hover,.platform-tabs #tab-immo:hover{border-color:var(--sc-craie)}

/* Un même cadre cuivre pour les trois portes, quel que soit leur état. */
.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{border-color:var(--sc-cuivre-hi)}
.platform-tabs #tab-perso[aria-selected="true"],.platform-tabs #tab-pro[aria-selected="true"],.platform-tabs #tab-immo[aria-selected="true"]{border-color:var(--sc-cuivre-hi);box-shadow:inset 0 0 0 1px var(--sc-cuivre-hi)}
.platform-tabs #tab-perso:hover,.platform-tabs #tab-pro:hover,.platform-tabs #tab-immo:hover{border-color:var(--sc-cuivre-hi)}



/* Finitions acquisition : la décision précède les outils. */
.hero-copy h1 .hero-audience{font-size:clamp(.95rem,1.8vw,1.25rem);line-height:1.5;letter-spacing:0;margin-bottom:1rem;min-height:3em}
.hero-copy h1 .hero-title-fixed{font-size:clamp(2.2rem,4.5vw,3.8rem);text-wrap:balance}
.hero-copy .hero-lead{max-width:54ch;margin-inline:auto}
.audience-pause{font-size:.75rem;min-height:2.75rem;margin-top:.5rem}
.platform-panel>.platform-heading{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line)}
.platform-panel>.platform-figure{margin-bottom:0}
.platform-panel h3{font-size:clamp(1.6rem,2.5vw,2.25rem);text-wrap:balance}
.platform-panel>.button,.platform-panel>p{margin-top:1rem}
.platform-selector h2{font-size:clamp(1.75rem,3vw,2.6rem);text-wrap:balance}

.demo-note{display:block;color:var(--sc-cacao);font-size:.8rem;margin-top:.3rem}
.map-range .range-count strong{font-size:2rem}.map-range{padding:1.5rem}.partners{padding:1rem 1.5rem}.partner-logo{height:3rem}
.cabinet-status{padding:1.5rem}.cabinet-status li{padding:.65rem}.cabinet-intro>.button{gap:1rem}
.social-networks li:has([aria-disabled="true"]){display:none}
.footer-fine a{display:inline-block;padding-block:.5rem}
@media(max-width:1000px){.platform-journey{grid-template-columns:1fr}.platform-selector{padding:1.5rem}.platform-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.platform-tabs button{padding:.8rem;gap:.5rem}.platform-tabs .option-icon{display:none}.platform-guidance{margin-top:1rem}.platform-panels{padding:1.5rem}.solutions-heading,.cabinet-panel{grid-template-columns:1fr;gap:1.5rem}}
@media(max-width:600px){.platform-tabs{grid-template-columns:1fr}.platform-tabs button{min-height:4rem}.platform-tabs small{display:block}.hero-copy{padding-top:1rem}.hero-copy .micro{font-size:.875rem}.platform-panel .button{width:100%;gap:1rem}.cabinet-status{margin-top:0}.footer-fine{font-size:.8rem}}
/* Le lagon clair porte un texte encre avec un contraste de 6,98:1. */
.platform-tabs #tab-immo{background:var(--sc-lagon-hi)}
.platform-selector>.platform-guidance,.platform-figure figcaption{font-size:.875rem}
@media(max-width:1000px){.platform-panels{padding:0}}

/* Demande de démo entreprise, sans questionnaire financier. */
.hedg-request{margin-top:2rem;padding:1.5rem;border:1px solid var(--sc-encre);border-radius:1rem;scroll-margin-top:8rem}
.hedg-request h4{font-size:1.35rem;margin:0 0 1rem}
.hedg-request form{display:grid;gap:1rem}
.hedg-request label{display:grid;gap:.4rem;font-weight:600}
.hedg-request input,.hedg-request select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:.75rem;font:inherit;color:var(--sc-encre);background:var(--sc-sable-hi);border:1px solid currentColor;border-radius:.5rem}
.hedg-request .button{justify-self:start;white-space:normal}
.hedg-request p{margin:.4rem 0}
.hedg-request small{font-weight:400}
@media(max-width:600px){.hedg-request{padding:1rem}.hedg-request .button{width:100%}}

/* Une prise de parole sobre, sans carte supplémentaire. */
.hero-title-fixed{max-width:25ch;margin-inline:auto;text-wrap:balance}
.adviser-perspective{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;padding-block:3rem;border-bottom:1px solid var(--sc-sable-lo)}
.adviser-perspective h2{font-size:clamp(1.6rem,2.5vw,2.25rem);max-width:20ch;margin:0;text-wrap:balance}
.adviser-perspective p{margin:0 0 1rem;max-width:62ch}
.adviser-perspective p:last-child{margin-bottom:0}
.cabinet-voice{margin:1rem 0 2rem;padding:0;border:0}
.cabinet-voice p{margin:0 0 .75rem}
.cabinet-voice footer{font-size:.875rem;color:var(--sc-cacao)}
@media(max-width:700px){.adviser-perspective{grid-template-columns:1fr;gap:1rem;padding-block:2rem}}

.property-offer{padding:18px 0;border-block:1px solid var(--sc-cacao);font-size:14px!important;line-height:1.7}.property-offer strong{font-size:18px}.property-offer a{color:inherit;text-underline-offset:4px}

/* Dernière passe : priorité au parcours et aux actions. */
.platform-tabs [role="tab"]{grid-template-columns:minmax(0,1fr) auto}
.solutions-heading{display:block;margin-bottom:28px}
.solution-map .map-branches{padding-top:0}
.solution-map .map-branches::before,.solution-map .map-branch::before{display:none}
.platform-figure{max-width:520px;margin-inline:auto}
.cabinet-status{padding:20px}
.cabinet-status .status-grid{gap:8px;margin-block:12px}
.cabinet-status .status-grid li{font-size:20px;padding:10px}
.professional-details summary{cursor:pointer;font-weight:600}
.professional-details{margin-top:16px}
.hero-copy h1{max-width:1000px;margin-inline:auto}

/* Sélection stable : cadre extérieur et flèche, sans déplacement du texte. */
.platform-tabs{gap:1rem;padding:4px}
.platform-tabs button{position:relative;min-height:80px;border-left-width:1px;transform:none;transition:transform 180ms ease,border-color 180ms ease,box-shadow 180ms ease}
.platform-tabs button::after{content:"";position:absolute;inset:-4px;border:2px solid var(--sc-craie);border-radius:calc(var(--sc-radius-sm) + 4px);opacity:0;pointer-events:none;transition:opacity 180ms ease}
.platform-tabs button[aria-selected="true"]::after{opacity:1}
.platform-tabs button>span:last-child{transition:transform 180ms ease,background 180ms ease,color 180ms ease}
.platform-tabs button[aria-selected="true"]>span:last-child{background:var(--sc-craie);color:var(--sc-cacao-lo);border-color:var(--sc-craie);transform:translateX(2px)}
.platform-tabs button:focus-visible{outline:2px dashed var(--sc-craie);outline-offset:7px}
@media(hover:hover) and (pointer:fine){
 .platform-tabs button:hover:not([aria-selected="true"]){transform:translateY(-2px)}
 .platform-tabs button:hover>span:last-child{transform:translateX(3px)}
}
@media(hover:none){.platform-tabs button:hover:not([aria-selected="true"]){transform:none}}
.platform-tabs button:active{transform:translateY(1px)}
.platform-panel{animation:project-reveal 240ms ease-out}
@keyframes project-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
 .platform-tabs button,.platform-tabs button::after,.platform-tabs button>span:last-child{transition:none}
 .platform-tabs button:hover:not([aria-selected="true"]),.platform-tabs button:active,.platform-tabs button[aria-selected="true"]>span:last-child,.platform-tabs button:hover>span:last-child{transform:none}
 .platform-panel{animation:none}
}

/* Chaque projet conserve sa couleur, actif ou non. */
.platform-tabs #tab-perso{background:var(--sc-cuivre-hi);color:var(--sc-encre)}
.platform-tabs #tab-pro{background:var(--sc-basalte);color:var(--sc-craie)}
.platform-tabs #tab-immo{background:var(--sc-lagon-hi);color:var(--sc-encre)}
.netvendeur-figure{width:100%;max-width:680px}
.netvendeur-figure a{display:block;border-radius:var(--sc-radius-lg)}
.netvendeur-figure a:focus-visible{outline:3px solid var(--sc-lagon);outline-offset:4px}
.netvendeur-figure img{display:block;width:100%;height:auto;aspect-ratio:1404/900}
