/* Direction produit : un titre éditorial, puis les vrais aperçus des plateformes. */
.immersive .hero-copy{padding-block:3.5rem 2.5rem;animation:none}
.immersive .hero-copy h1{max-width:18ch;font-size:clamp(2.6rem,5vw,4.75rem);line-height:1.1;margin:0 auto 1.5rem;text-wrap:balance;font-weight:600}
.immersive .hero-copy h1 .hero-editorial{font-family:var(--sc-font-serif);font-weight:400;color:var(--sc-cacao);letter-spacing:-.04em}
.immersive .hero-lead{font-weight:400;max-width:48ch}.immersive .micro{margin-top:1.25rem}
.journey-landscape{padding-top:1rem;padding-bottom:2rem;min-height:0}.journey-landscape::before{display:none}
.journey-card.platform-journey{display:block;max-width:76rem;border:1px solid var(--line);border-radius:var(--sc-radius-lg);background:var(--sc-sable-hi);box-shadow:0 18px 60px color-mix(in srgb,var(--sc-cacao) 9%,transparent);animation:none}
.platform-selector{padding:1.5rem 2rem;background:transparent;color:var(--ink);border-bottom:1px solid var(--line)}
.platform-selector h2{font:500 .75rem var(--sc-font-sans);letter-spacing:.12em;text-transform:uppercase;margin:0 0 1rem;color:var(--muted)}
.platform-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0}
.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{--project-accent:var(--sc-cuivre-lo);display:flex;gap:1rem;padding:.85rem 1rem;min-height:76px;background:transparent;color:var(--ink);border:1px solid var(--line);border-bottom:3px solid var(--line);border-radius:var(--sc-radius-sm);box-shadow:none;transform:none;transition:border-color .2s}
.platform-tabs #tab-pro{--project-accent:var(--sc-basalte)}.platform-tabs #tab-immo{--project-accent:var(--sc-lagon)}
.platform-tabs button::after{display:none}.platform-tabs button strong{font-size:.95rem}.platform-tabs button small{font-size:.75rem;opacity:1;color:var(--muted)}
.platform-tabs #tab-perso[aria-selected="true"],.platform-tabs #tab-pro[aria-selected="true"],.platform-tabs #tab-immo[aria-selected="true"],.platform-tabs #tab-perso:hover,.platform-tabs #tab-pro:hover,.platform-tabs #tab-immo:hover{border-bottom-color:var(--project-accent);box-shadow:none;transform:none;background:transparent}
.platform-tabs button>span:last-child{display:grid;place-items:center;flex-shrink:0;width:1.7rem;height:1.7rem;border:1px solid var(--project-accent);border-radius:50%;color:var(--project-accent);transform:none}
.platform-tabs button[aria-selected="true"]>span:last-child{background:var(--project-accent);color:var(--sc-craie);border-color:var(--project-accent);transform:none}
.platform-tabs button:focus-visible{outline:2px dashed var(--sc-cacao);outline-offset:3px}
.platform-panel{display:grid;grid-template-columns:minmax(15rem,.8fr) minmax(0,1.6fr);grid-template-rows:auto auto auto 1fr;column-gap:2rem;padding:2rem;align-items:start;min-height:27rem}
.platform-panel[hidden]{display:none}.platform-panel>h3{grid-column:1;grid-row:1;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.2;margin-top:3rem}
.platform-panel>p:not(.property-offer){grid-column:1;grid-row:2;font-size:.9rem;margin-block:1rem 1.5rem}
.platform-panel>.button{grid-column:1;grid-row:3;width:fit-content;font-size:.8rem;gap:1rem;padding-inline:1.1rem}
.platform-panel>.property-offer{grid-column:1;grid-row:4;margin-block:1.5rem 0;font-size:.75rem!important}.property-offer strong{font-size:.95rem}
.platform-panel>.platform-heading{grid-column:2;grid-row:1;margin:0 0 1rem;padding:0;border:0;align-items:center}.platform-heading .platform-name{font-size:1.2rem}
.platform-panel>.platform-figure{grid-column:2;grid-row:2/5;max-width:none;width:100%;margin:0}
.platform-figure img{background:var(--sc-craie);border:1px solid var(--line);border-radius:var(--sc-radius-sm);box-shadow:0 8px 24px color-mix(in srgb,var(--sc-cacao) 7%,transparent);object-fit:contain}
.platform-figure figcaption{font-size:.7rem;margin-top:.75rem}
.platform-panel>.hedg-request{grid-column:1/-1;grid-row:5}
.map-branches{gap:2rem}.map-branch{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;padding:2rem 0}
.solutions.section{padding-top:3rem}
@media(max-width:900px){.platform-panel{column-gap:1.5rem;padding:1.5rem;grid-template-columns:minmax(13rem,.85fr) minmax(0,1.3fr)}.platform-selector{padding:1.5rem}.platform-heading>span:last-child{font-size:.65rem}.platform-tabs button small{font-size:.65rem}}
@media(max-width:700px){.immersive .hero-copy{padding-block:2.5rem 1.5rem}.platform-panel{display:flex;flex-direction:column;min-height:0;gap:0}.platform-panel>h3{margin-top:0}.platform-panel>.platform-heading{width:100%;margin-top:1.75rem}.platform-panel>.platform-figure{width:100%}.platform-panel>.button{width:100%}.platform-panel>.hedg-request{order:6;width:100%}.platform-tabs{gap:.6rem}.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{padding:.7rem;gap:.5rem}.platform-tabs button strong{font-size:.8rem}}
@media(max-width:580px){.platform-tabs{grid-template-columns:1fr}.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{min-height:60px}.platform-tabs button small{font-size:.75rem}.platform-selector{padding:1rem}.platform-panel{padding:1.25rem}.immersive .hero-copy h1{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){.platform-tabs button,.platform-panel{animation:none;transition:none}}
:root{--platform-editorial-font:Georgia,'Times New Roman',serif}
.immersive .hero-copy h1 .hero-editorial{font-family:var(--platform-editorial-font)}
@media(min-width:701px){.platform-panel>.platform-figure{grid-row:1/5;margin-top:3rem}}
/* Une couleur stable par univers ; le contraste indique la hiérarchie. */
:root{--universe-perso:var(--sc-cuivre-hi);--universe-pro:var(--sc-basalte);--universe-immo:var(--sc-lagon-hi)}
.platform-tabs #tab-perso{--project-surface:var(--universe-perso);--project-ink:var(--sc-cacao-lo)}
.platform-tabs #tab-pro{--project-surface:var(--universe-pro);--project-ink:var(--sc-craie)}
.platform-tabs #tab-immo{--project-surface:var(--universe-immo);--project-ink:var(--sc-cacao-lo)}
.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo,
.platform-tabs #tab-perso[aria-selected="true"],.platform-tabs #tab-pro[aria-selected="true"],.platform-tabs #tab-immo[aria-selected="true"],
.platform-tabs #tab-perso:hover,.platform-tabs #tab-pro:hover,.platform-tabs #tab-immo:hover{background:var(--project-surface);color:var(--project-ink);border-color:var(--project-surface);border-bottom-color:var(--project-surface)}
.platform-tabs button small{color:inherit}.platform-tabs button>span:last-child{color:inherit;border-color:currentColor}
.platform-tabs button[aria-selected="true"]{outline:2px solid var(--sc-cacao);outline-offset:3px}
.platform-tabs button[aria-selected="true"]>span:last-child{background:var(--sc-cacao-lo);color:var(--sc-craie);border-color:var(--sc-cacao-lo)}
.platform-tabs button:focus-visible{outline:3px dashed var(--sc-cacao);outline-offset:5px}
#panel-perso{--universe:var(--universe-perso)}#panel-pro{--universe:var(--universe-pro)}#panel-immo{--universe:var(--universe-immo)}
.platform-panel>.platform-heading{border-bottom:3px solid var(--universe);padding-bottom:.6rem}
.platform-heading>.platform-name:last-child{font-size:1.2rem;color:var(--sc-cacao-lo);text-align:left}
.platform-panel>h3{color:var(--sc-cacao-lo)}.platform-panel>p,.platform-figure figcaption{color:var(--sc-cacao)}
.map-branch.universe-immo{--universe:var(--universe-immo);--universe-ink:var(--sc-cacao-lo)}
.map-branch.universe-perso{--universe:var(--universe-perso);--universe-ink:var(--sc-cacao-lo)}
.map-branch.universe-pro{--universe:var(--universe-pro);--universe-ink:var(--sc-craie)}
.map-branch{padding:1.5rem;border-top:5px solid var(--universe);background:color-mix(in srgb,var(--universe) 10%,var(--sc-sable-hi));border-radius:var(--sc-radius-sm)}
.map-branch .map-index{display:inline-block;background:var(--universe);color:var(--universe-ink);padding:.35rem .65rem;border-radius:var(--sc-radius-xs);font-size:.75rem;font-weight:600;letter-spacing:.06em}
.map-branch h3,.map-branch>p{color:var(--sc-cacao-lo)}
.map-branch[class*="universe-"] .map-family{background:var(--universe);border-color:var(--universe);color:var(--universe-ink)}
.map-partners>span{color:var(--sc-cacao);font-size:.75rem}.map-partners{border-color:color-mix(in srgb,var(--universe) 45%,var(--sc-sable-lo))}
.solutions .disclaimer{color:var(--sc-cacao);font-size:.8rem;max-width:90ch}
@media(max-width:580px){.map-branch{padding:1.25rem}.platform-tabs{gap:.85rem}}

/* Cuivre mat : mélange des tons existants, sans modifier les jetons synchronisés. */
:root{--sc-cuivre-mat:color-mix(in srgb,var(--sc-cuivre-lo) 72%,var(--sc-cacao) 28%);--universe-perso:var(--sc-cuivre-mat)}
.platform-tabs #tab-perso{--project-ink:var(--sc-craie)}
.map-branch.universe-perso{--universe-ink:var(--sc-craie)}
.cabinet-voice{background:var(--sc-basalte);color:var(--sc-craie);padding:clamp(1.5rem,3vw,2.5rem);border-radius:var(--sc-radius-sm);border-left:4px solid var(--sc-cuivre-hi)}
.cabinet-voice p,.cabinet-voice footer{color:var(--sc-craie)}
.cabinet-voice footer{padding-top:.75rem;border-top:1px solid color-mix(in srgb,var(--sc-craie) 30%,transparent)}
/* Un titre expressif relié au cadre produit, avec une entrée brève sans boucle. */
.immersive .hero-copy{position:relative;isolation:isolate;padding-block:4.25rem 3.25rem}
.immersive .hero-copy h1{max-width:21ch;font-size:clamp(2.8rem,5.8vw,5.4rem);line-height:1.05;letter-spacing:-.055em}
.immersive .hero-copy h1 .hero-editorial{font-style:italic;color:var(--sc-cuivre-mat);letter-spacing:-.045em}
.hero-projects{position:relative;white-space:nowrap}
.hero-projects::after{content:"";position:absolute;left:0;right:0;bottom:-.08em;height:.07em;background:var(--sc-cuivre-mat);border-radius:50%;transform:rotate(-1.5deg)}
.immersive .hero-lead{margin-top:1.8rem;max-width:48ch}
.immersive .hero-copy::before,.immersive .hero-copy::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:7rem;height:13rem;border:1px solid color-mix(in srgb,var(--sc-cuivre-mat) 28%,transparent);border-radius:7rem;top:18%;transform:rotate(28deg)}
.immersive .hero-copy::before{left:0;border-bottom:1rem solid color-mix(in srgb,var(--sc-cuivre-mat) 14%,transparent)}
.immersive .hero-copy::after{right:0;top:32%;transform:rotate(-28deg);border-color:color-mix(in srgb,var(--sc-lagon) 32%,transparent);border-top:1rem solid color-mix(in srgb,var(--sc-lagon) 14%,transparent)}
.immersive .hero-copy h1,.immersive .hero-copy .hero-lead,.immersive .hero-copy .actions{animation:hero-enter .65s ease-out both}
.immersive .hero-copy .hero-lead{animation-delay:.08s}.immersive .hero-copy .actions{animation-delay:.16s}
@keyframes hero-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.immersive .hero-copy::before,.immersive .hero-copy::after{width:3rem;height:7rem;opacity:.55}.immersive .hero-copy::before{top:9%;left:-1rem}.immersive .hero-copy::after{right:-1rem;top:48%}}
@media(max-width:580px){.immersive .hero-copy{padding-block:2.5rem 2rem}.immersive .hero-copy h1{font-size:clamp(2.2rem,9.3vw,3.1rem)}.immersive .hero-copy::before,.immersive .hero-copy::after{display:none}.cabinet-voice{padding:1.5rem}}
@media(prefers-reduced-motion:reduce){.immersive .hero-copy h1,.immersive .hero-copy .hero-lead,.immersive .hero-copy .actions{animation:none}}
.immersive .hero-copy h1 .hero-projects{color:var(--sc-cacao-lo);font-weight:600;font-family:var(--sc-font-sans)}
/* Des portes plus généreuses : titre en haut, direction en bas, couleur stable. */
.platform-selector{padding:2rem}
.platform-selector h2{margin-bottom:1.5rem}
.platform-tabs{gap:1.25rem}
.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{position:relative;min-height:11rem;padding:1.4rem;align-items:flex-start;text-align:left;border-radius:var(--sc-radius-md);border-width:1px;transition:transform .2s ease,box-shadow .2s ease}
.platform-tabs button>span:first-child{display:flex;flex-direction:column;gap:.6rem;min-width:0;width:100%}
.platform-tabs button strong{font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:600;line-height:1.2;letter-spacing:-.025em;max-width:13ch}
.platform-tabs button small{font-size:.8rem;line-height:1.5;max-width:22ch;padding-right:1.8rem}
.platform-tabs button>span:last-child{position:absolute;right:1.25rem;bottom:1.15rem;width:2.2rem;height:2.2rem;font-size:1.4rem;transition:transform .2s ease,background .2s ease}
.platform-tabs button[aria-selected="true"]{outline-width:2px;outline-offset:4px;box-shadow:0 6px 16px color-mix(in srgb,var(--sc-cacao-lo) 15%,transparent)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.platform-tabs #tab-perso:hover,.platform-tabs #tab-pro:hover,.platform-tabs #tab-immo:hover{transform:translateY(-4px);box-shadow:0 10px 20px color-mix(in srgb,var(--sc-cacao-lo) 16%,transparent)}.platform-tabs button:hover>span:last-child{transform:translateX(3px)}}
@media(max-width:900px){.platform-selector{padding:1.5rem}.platform-tabs{gap:1rem}.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{padding:1.1rem;min-height:11.5rem}.platform-tabs button small{font-size:.8rem;padding-right:0;max-width:19ch}}
@media(max-width:580px){.platform-selector{padding:1.25rem}.platform-tabs{gap:1rem}.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{min-height:6.75rem;padding:1.15rem 4.25rem 1.15rem 1.15rem;align-items:center}.platform-tabs button strong{font-size:1.2rem;max-width:none}.platform-tabs button small{max-width:none;font-size:.8rem}.platform-tabs button>span:first-child{gap:.35rem}.platform-tabs button>span:last-child{right:1rem;bottom:calc(50% - 1.1rem)}}
@media(prefers-reduced-motion:reduce){.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo,.platform-tabs button>span:last-child{transition:none;transform:none}}
@media(min-width:581px){.platform-tabs button strong{min-height:2.4em}}
/* Les bénéfices des portes restent lisibles au même niveau sur chaque univers. */
.platform-tabs button small{font-size:.95rem;font-weight:600;line-height:1.45;max-width:25ch;padding-top:.65rem;border-top:1px solid color-mix(in srgb,currentColor 40%,transparent)}
.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{min-height:12rem}
/* Cabinet : une fiche conseiller et une colonne de présentation aux espacements communs. */
.cabinet-compact{padding-block:3.5rem}
.cabinet-panel{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:2rem;align-items:start}
.cabinet-intro{padding:2rem;background:var(--sc-sable-hi);border:1px solid var(--sc-sable-lo);border-radius:var(--sc-radius-md)}
.cabinet-intro h2{font-size:clamp(1.9rem,3vw,2.6rem);margin-block:.8rem 1rem}
.cabinet-intro>p:not(.eyebrow){font-size:.95rem;line-height:1.6}
.cabinet-intro .cabinet-portrait{width:min(100%,12rem);margin:1.5rem auto 0;text-align:center}
.cabinet-portrait figcaption{padding-top:.75rem;font-size:.9rem}
.cabinet-intro>.button{width:100%;margin-top:1.25rem;border-radius:var(--sc-radius-pill);padding:1rem;gap:.75rem}
.cabinet-social{margin-top:1.25rem;padding-top:1rem;max-width:none;justify-content:center}
.cabinet-social .social-networks{display:flex;flex:0;gap:.75rem}.cabinet-social .social-link{width:2.75rem}
.cabinet-essential{display:grid;gap:1.25rem;min-width:0}
.cabinet-essential>h3{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.3;max-width:32ch}
.cabinet-essential .cabinet-voice{margin:0;padding:1.5rem;border-radius:var(--sc-radius-md)}
.cabinet-voice p{font-size:1rem;line-height:1.65}.cabinet-voice footer{font-size:.85rem}
.cabinet-essential>p{margin:0;font-size:.9rem;line-height:1.6}
.cabinet-essential .cabinet-status{margin:0;padding:1.5rem;border-radius:var(--sc-radius-md)}
.cabinet-status .status-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-block:1rem;gap:.5rem}
.cabinet-status .status-grid li{font-size:1.1rem;padding:.65rem .25rem;letter-spacing:0}
.professional-details summary{font-size:.95rem;min-height:2.75rem;cursor:pointer;display:list-item;padding-block:.5rem}
.institution-logos{padding:1rem 1.25rem;gap:1.25rem;border-radius:var(--sc-radius-md)}
.institution-logos img{height:3rem;max-width:8rem}
@media(max-width:900px){.cabinet-panel{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.5rem}.cabinet-intro{padding:1.5rem}.cabinet-status .status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.institution-logos{gap:.75rem;padding:1rem}.institution-logos img{height:2.5rem}}
@media(max-width:700px){.cabinet-panel{grid-template-columns:1fr}.cabinet-intro h2 br{display:none}.cabinet-essential>h3{max-width:none}.cabinet-intro .cabinet-portrait{width:11rem}.cabinet-intro>.button{max-width:24rem;display:flex;margin-inline:auto}.cabinet-status .status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:580px){.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{min-height:8rem}.platform-tabs button small{font-size:.9rem;padding-top:.5rem}.cabinet-compact{padding-block:2.5rem}.cabinet-status .status-grid li{font-size:.95rem}.cabinet-essential .cabinet-status{padding:1.25rem}}

/* Les interfaces occupent la scène ; les portes restent des commandes de navigation. */
.platform-selector{padding:2rem 2rem 1.5rem;border-bottom:0}
.platform-tabs{gap:1rem}
.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{min-height:12.5rem;padding:1.5rem;border-radius:var(--sc-radius-lg);overflow:hidden;isolation:isolate}
.platform-tabs button::before{content:"";position:absolute;right:-2rem;top:-3rem;width:9rem;height:9rem;border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:50%;z-index:-1;pointer-events:none}
.platform-tabs button strong{font-size:clamp(1.25rem,1.9vw,1.65rem);max-width:15ch;letter-spacing:-.035em}
.platform-tabs button small{max-width:27ch;border:0;padding-top:.6rem;padding-right:2rem;font-size:.95rem;line-height:1.4;font-weight:500}
.platform-tabs button>span:last-child{width:2.5rem;height:2.5rem;right:1.25rem;bottom:1.25rem}
.platform-tabs button[aria-selected="true"]{outline-offset:4px}
.platform-tabs button[aria-selected="true"]>span:last-child{background:var(--project-ink);color:var(--project-surface);border-color:var(--project-ink)}
.platform-panel{grid-template-columns:minmax(0,.7fr) minmax(0,1.65fr);grid-template-rows:auto auto auto 1fr;gap:0 2rem;padding:1.5rem 2rem 2rem;min-height:0}
.platform-panel>h3{margin:2rem 0 0;font-size:clamp(1.6rem,2.6vw,2.15rem);text-wrap:balance;line-height:1.16}
.platform-panel>p:not(.property-offer){margin:1.25rem 0 1.75rem;font-size:.95rem;line-height:1.6}
.platform-panel>.button{font-size:.85rem;max-width:100%;padding:1.15rem;gap:.75rem}
.platform-panel>.property-offer{border-color:color-mix(in srgb,var(--universe) 50%,var(--sc-sable-lo));padding-block:1rem}
.platform-stage{grid-column:2;grid-row:1/5;min-width:0;padding:1.25rem;background:color-mix(in srgb,var(--universe) 13%,var(--sc-sable-hi));border:1px solid color-mix(in srgb,var(--universe) 28%,var(--sc-sable-hi));border-radius:var(--sc-radius-lg)}
.platform-stage .platform-heading{margin:0 0 1rem;padding:0;border:0;display:flex;align-items:center;gap:.65rem}
.platform-stage .platform-heading::before{content:"";width:.55rem;height:.55rem;background:var(--universe);border-radius:50%}
.platform-stage .platform-name:last-child{font-size:1.35rem;font-weight:600;letter-spacing:-.04em}
.platform-stage .platform-figure{width:100%;max-width:none;margin:0}
.platform-stage .platform-figure img{display:block;width:100%;height:auto;max-height:none;border-radius:var(--sc-radius-sm);border:1px solid var(--sc-sable-hi);box-shadow:0 12px 28px color-mix(in srgb,var(--sc-cacao-lo) 12%,transparent)}
.platform-stage .platform-figure figcaption{margin:.85rem 0 0;font-size:.7rem}
.platform-stage .netvendeur-figure a{display:block}
@media(min-width:701px) and (prefers-reduced-motion:no-preference){.platform-panel:not([hidden]) .platform-stage{animation:hero-enter .35s ease-out both}}
@media(max-width:900px){.platform-selector{padding:1.5rem}.platform-panel{padding:1rem 1.5rem 1.5rem;gap:0 1.25rem;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr)}.platform-stage{padding:1rem}.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{padding:1.25rem;min-height:13rem}.platform-tabs button small{font-size:.9rem;padding-right:0}.platform-panel>h3{margin-top:1rem}}
@media(max-width:700px){.platform-panel{display:flex;gap:0}.platform-panel>h3{margin:0;max-width:26ch}.platform-panel>.button{width:100%}.platform-stage{width:100%;margin-top:1.75rem}.platform-panel>.hedg-request{order:6}.platform-tabs button strong{font-size:1.2rem}}
@media(max-width:580px){.platform-selector{padding:1.25rem}.platform-tabs #tab-perso,.platform-tabs #tab-pro,.platform-tabs #tab-immo{min-height:8rem;padding:1.15rem 4.25rem 1.15rem 1.15rem}.platform-tabs button strong{max-width:none}.platform-tabs button small{padding-top:.35rem;font-size:.9rem}.platform-tabs button>span:last-child{bottom:calc(50% - 1.25rem);right:1rem}.platform-panel{padding:1rem 1.25rem 1.25rem}.platform-stage{padding:.8rem}.platform-stage .platform-name:last-child{font-size:1.2rem}}

/* Composition finale : rythme éditorial, interfaces dominantes, confiance regroupée.
   Références de composition : 21st / LN hero-24 et bento-01, Hirael feature-11.
   Adaptation native à la V1 statique, sans dépendance React. */
.home-refined{--measure:75rem;--gutter:clamp(1.25rem,4vw,3.5rem);--section:4.5rem;--composition-gap:1.5rem;--composition-radius:1.25rem}
.home-refined .immersive .hero-copy{padding-block:clamp(2.5rem,5vw,4rem) 2.5rem}
.home-refined .immersive .hero-copy::before,.home-refined .immersive .hero-copy::after,.home-refined .hero-projects::after{display:none}
.home-refined .immersive .hero-copy h1{max-width:21ch;font-size:clamp(2.5rem,5.6vw,4.75rem);line-height:1.08;margin-bottom:1.5rem}
.home-refined .hero-lead{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.65;margin:0 auto;max-width:48ch}
.home-refined .hero-copy .actions{margin-block:1.75rem 0;gap:1.5rem}
.home-refined .hero-copy .micro{font-size:.8rem;margin-top:1.25rem}
.home-refined .journey-landscape{padding-top:.5rem;padding-bottom:0}
.home-refined .journey-card.platform-journey{max-width:75rem;border:0;border-radius:0;box-shadow:none;overflow:visible;background:transparent}
.home-refined .platform-selector{padding:0 0 2rem}
.home-refined .platform-selector h2{margin:0 0 1.25rem;color:var(--sc-cacao);font-size:.75rem}
.home-refined .platform-tabs{gap:var(--composition-gap)}
.home-refined .platform-tabs #tab-perso,.home-refined .platform-tabs #tab-pro,.home-refined .platform-tabs #tab-immo{min-height:11.5rem;padding:1.5rem;border-radius:var(--composition-radius);box-shadow:none;align-items:stretch}
.home-refined .platform-tabs button>span:first-child{justify-content:space-between;gap:1.5rem}
.home-refined .platform-tabs button strong{font-size:clamp(1.2rem,1.8vw,1.5rem);min-height:0;max-width:17ch}
.home-refined .platform-tabs button small{font-size:.9rem;font-weight:500;max-width:28ch;padding:0;border:0}
.home-refined .platform-tabs button[aria-selected="true"]{outline:2px solid var(--project-surface);outline-offset:5px}
.home-refined .platform-tabs button:focus-visible{outline:3px dashed var(--sc-cacao-lo);outline-offset:5px}
.home-refined .platform-tabs button::before{inset:0;width:auto;height:auto;border:0;border-radius:inherit;transform:none;opacity:0;background:radial-gradient(280px circle at var(--spot-x,50%) var(--spot-y,50%),color-mix(in srgb,var(--sc-craie) 20%,transparent),transparent 75%);transition:opacity .2s;z-index:-1}
.home-refined .platform-tabs #tab-immo::before{display:none}
.home-refined .platform-tabs button::after{display:none}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.home-refined .platform-tabs button:hover::before{opacity:1}.home-refined .platform-tabs #tab-perso:hover,.home-refined .platform-tabs #tab-pro:hover,.home-refined .platform-tabs #tab-immo:hover{transform:translateY(-3px)}}
.home-refined .platform-panel{padding:2rem;grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:2rem;background:var(--sc-sable-hi);border:1px solid var(--sc-sable-lo);border-radius:var(--composition-radius);box-shadow:0 16px 40px color-mix(in srgb,var(--sc-cacao) 5%,transparent)}
.home-refined .platform-panel>h3{font-size:clamp(1.6rem,2.4vw,2rem);margin-top:1.25rem;text-wrap:pretty}
.home-refined .platform-panel>p:not(.property-offer){font-size:.95rem;margin-block:1rem 1.5rem}
.home-refined .platform-stage{padding:1rem;background:color-mix(in srgb,var(--universe) 8%,var(--sc-sable-hi));border-color:color-mix(in srgb,var(--universe) 18%,var(--sc-sable-hi));border-radius:1rem}
.home-refined .platform-stage .platform-heading{justify-content:flex-start;margin-bottom:1rem}
.home-refined .platform-stage .platform-name:last-child{font-size:1.15rem}
.home-refined .platform-stage .platform-figure img{box-shadow:0 6px 18px color-mix(in srgb,var(--sc-cacao) 7%,transparent)}
.home-refined .solutions.section{padding-block:4.5rem}
.home-refined .solutions-heading{margin-bottom:2rem}
.home-refined .solutions h2{font-size:clamp(2rem,3.5vw,3rem);max-width:24ch}
.home-refined .map-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--composition-gap)}
.home-refined .map-branch{display:flex;flex-direction:column;padding:1.75rem;border:1px solid color-mix(in srgb,var(--universe) 30%,var(--sc-sable-hi));border-radius:var(--composition-radius);background:color-mix(in srgb,var(--universe) 6%,var(--sc-sable-hi));box-shadow:none;min-width:0}
.home-refined .map-index{align-self:flex-start;background:transparent;color:var(--sc-cacao);padding:0;font-size:.7rem;letter-spacing:.12em}
.home-refined .map-branch h3{font-size:clamp(1.5rem,2.2vw,1.9rem);line-height:1.18;min-height:2.4em;margin-block:1.25rem}
.home-refined .map-families{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;min-height:7rem;gap:.4rem}
.home-refined .map-family{font-size:.75rem;padding:.3rem .6rem;border-radius:.45rem}
.home-refined .map-branch>p{font-size:.9rem;line-height:1.6;margin-bottom:1.5rem}
.home-refined .map-partners{margin-top:auto;padding-top:1rem}
.home-refined .map-partners>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-height:3.5rem;gap:.8rem}
.home-refined .map-partners>div>:last-child{grid-column:auto}
.home-refined .map-partners img{width:100%;max-width:6rem;height:2.5rem;object-fit:contain}
.home-refined .map-partner-wordmark{font-size:1.5rem}
.home-refined .solutions .disclaimer{margin-top:1.5rem;font-size:.75rem}
.home-refined .cabinet-compact{padding-block:4.5rem;background:var(--sc-sable-lo)}
.home-refined .cabinet-panel{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:2.5rem 3rem;align-items:center}
.home-refined .cabinet-intro{padding:0;background:transparent;border:0;display:grid;grid-template-columns:8rem minmax(0,1fr);gap:1rem 1.25rem;align-items:center}
.home-refined .cabinet-intro>.eyebrow,.home-refined .cabinet-intro>h2,.home-refined .cabinet-intro>p{grid-column:1/-1}
.home-refined .cabinet-intro h2{font-size:clamp(2rem,3.2vw,2.75rem);margin:0}
.home-refined .cabinet-intro>p:not(.eyebrow){margin:0;font-size:.95rem}
.home-refined .cabinet-intro .cabinet-portrait{grid-column:1;grid-row:4/6;width:8rem;margin:0;text-align:left}
.home-refined .cabinet-portrait img{aspect-ratio:4/5;border-radius:1rem;padding:0;border:0;object-position:center 40%}
.home-refined .cabinet-portrait figcaption{font-size:.8rem;padding-top:.6rem;white-space:nowrap}
.home-refined .cabinet-intro>.button{grid-column:2;width:100%;margin:0}
.home-refined .cabinet-social{grid-column:2;margin:0;padding:0;border:0;justify-content:flex-start;gap:.75rem}
.home-refined .cabinet-essential{gap:1.25rem}
.home-refined .cabinet-essential>h3{font-size:clamp(1.4rem,2.3vw,1.85rem);max-width:30ch}
.home-refined .cabinet-essential .cabinet-voice{padding:2rem;border-radius:var(--composition-radius);border-left:0}
.home-refined .cabinet-voice p{font-size:1.05rem;line-height:1.75}
.home-refined .cabinet-trust{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:2rem;align-items:start;padding-top:2rem;border-top:1px solid color-mix(in srgb,var(--sc-cacao) 18%,transparent)}
.home-refined .cabinet-trust .cabinet-status{margin:0;padding:1.25rem 1.5rem;border-radius:1rem}
.home-refined .cabinet-trust .status-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-block:.75rem;gap:.5rem}
.home-refined .cabinet-trust .status-grid li{font-size:1rem;padding:.5rem}
.home-refined .institution-logos{margin:0;padding:1.5rem;align-self:center;background:transparent;border:0;gap:1.5rem}
.home-refined .institution-logos img{width:100%;height:3rem;max-width:8rem;object-fit:contain}
/* L’animation de contour est réservée aux appels à l’action. */
.home-refined button:not(.button)::after,.home-refined .header #navigation>a:not(.button)::after{display:none}
@media(max-width:1000px){.home-refined .cabinet-panel{gap:2rem}.home-refined .cabinet-intro{grid-template-columns:7rem minmax(0,1fr)}.home-refined .cabinet-intro .cabinet-portrait{width:7rem}.home-refined .map-branch{padding:1.25rem}.home-refined .map-families{min-height:8rem}}
@media(max-width:800px){.home-refined .platform-panel{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);padding:1.5rem;gap:0 1.5rem}.home-refined .platform-tabs #tab-perso,.home-refined .platform-tabs #tab-pro,.home-refined .platform-tabs #tab-immo{padding:1.25rem;min-height:11.5rem}.home-refined .cabinet-panel{grid-template-columns:1fr}.home-refined .cabinet-intro{grid-template-columns:8rem minmax(0,1fr);max-width:32rem}.home-refined .cabinet-trust{grid-template-columns:1fr;gap:1.5rem}.home-refined .institution-logos{padding:.5rem 0;justify-content:flex-start}.home-refined .map-branches{grid-template-columns:1fr}.home-refined .map-families{min-height:0}.home-refined .map-branch h3{min-height:0}.home-refined .map-branch h3 br{display:none}.home-refined .map-partners>div{max-width:25rem}}
@media(max-width:700px){.home-refined .platform-panel{display:flex;gap:0}.home-refined .platform-panel>h3{margin-top:0}.home-refined .platform-stage{margin-top:1.5rem}.home-refined .cabinet-essential .cabinet-voice{padding:1.5rem}}
@media(max-width:580px){.home-refined{--composition-gap:1rem}.home-refined .immersive .hero-copy{padding-block:2.5rem 2rem}.home-refined .immersive .hero-copy h1{font-size:clamp(2.2rem,9vw,3rem)}.home-refined .platform-selector{padding-bottom:1.5rem}.home-refined .platform-tabs #tab-perso,.home-refined .platform-tabs #tab-pro,.home-refined .platform-tabs #tab-immo{min-height:7rem}.home-refined .platform-tabs button>span:first-child{gap:.6rem}.home-refined .platform-panel{padding:1.25rem}.home-refined .platform-stage{padding:.7rem}.home-refined .solutions.section,.home-refined .cabinet-compact{padding-block:2.75rem}.home-refined .cabinet-intro{grid-template-columns:7rem minmax(0,1fr);gap:1rem}.home-refined .cabinet-intro>.button{padding:.85rem .75rem;font-size:.8rem}.home-refined .cabinet-trust .cabinet-status{padding:1.25rem}.home-refined .institution-logos{gap:1rem}.home-refined .institution-logos img{max-width:6rem;height:2.5rem}}
/* Priorité sur le composant de bouton partagé chargé après la composition. */
body.home-refined #votre-parcours .platform-tabs button::after,
body.home-refined .header #navigation>a:not(.button)::after,
body.home-refined .header button.menu::after{display:none}

/* Portes expansibles — principe Hover Expand Gallery (21st / Kedhareswer Naidu).
   Les trois choix restent lisibles, même lorsqu’une porte prend le premier plan. */
.home-refined .platform-tabs{transition:grid-template-columns .5s cubic-bezier(.22,1,.36,1)}
.home-refined .platform-tabs #tab-perso,.home-refined .platform-tabs #tab-pro,.home-refined .platform-tabs #tab-immo{min-height:12.5rem;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .35s,min-height .4s}
.home-refined .platform-tabs button>span:first-child{position:relative;z-index:1}
.home-refined .platform-tabs button small{max-width:24ch;padding-right:1.5rem}
.home-refined .platform-tabs .door-visual{position:absolute;width:7rem;height:6rem;right:1rem;bottom:2rem;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;opacity:.14;transform:translateY(10px) rotate(-5deg);transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .4s;pointer-events:none}
.home-refined .platform-tabs button[aria-selected="true"] .door-visual{opacity:.28;transform:translateY(-12px) rotate(0)}
.home-refined .platform-tabs button[aria-selected="true"]{box-shadow:0 12px 24px color-mix(in srgb,var(--project-surface) 18%,transparent)}
@media(min-width:901px){
 .home-refined .platform-tabs:has(#tab-perso[aria-selected="true"]){grid-template-columns:1.35fr 1fr 1fr}
 .home-refined .platform-tabs:has(#tab-pro[aria-selected="true"]){grid-template-columns:1fr 1.35fr 1fr}
 .home-refined .platform-tabs:has(#tab-immo[aria-selected="true"]){grid-template-columns:1fr 1fr 1.35fr}
}
@media(min-width:901px) and (hover:hover) and (prefers-reduced-motion:no-preference){
 .home-refined .platform-tabs:has(#tab-perso:hover){grid-template-columns:1.35fr 1fr 1fr}
 .home-refined .platform-tabs:has(#tab-pro:hover){grid-template-columns:1fr 1.35fr 1fr}
 .home-refined .platform-tabs:has(#tab-immo:hover){grid-template-columns:1fr 1fr 1.35fr}
 .home-refined .platform-tabs button:hover .door-visual{opacity:.32;transform:translateY(-12px) rotate(0)}
}
@media(max-width:900px){.home-refined .platform-tabs .door-visual{width:5rem;right:.75rem;bottom:2.75rem}.home-refined .platform-tabs button small{padding:0}}
@media(max-width:580px){
 .home-refined .platform-tabs #tab-perso,.home-refined .platform-tabs #tab-pro,.home-refined .platform-tabs #tab-immo{min-height:7rem}
 .home-refined .platform-tabs #tab-perso[aria-selected="true"],.home-refined .platform-tabs #tab-pro[aria-selected="true"],.home-refined .platform-tabs #tab-immo[aria-selected="true"]{min-height:8.5rem}
 .home-refined .platform-tabs .door-visual{width:5rem;height:4rem;bottom:1.25rem;right:.75rem;opacity:.12}
 .home-refined .platform-tabs button[aria-selected="true"] .door-visual{transform:none;opacity:.2}
}
@media(prefers-reduced-motion:reduce){.home-refined .platform-tabs,.home-refined .platform-tabs #tab-perso,.home-refined .platform-tabs #tab-pro,.home-refined .platform-tabs #tab-immo,.home-refined .platform-tabs .door-visual{transition:none;animation:none}}
/* Chaque panneau reprend la couleur de la porte sélectionnée. */
.home-refined #panel-perso{--panel-accent:var(--sc-cuivre-mat);--panel-tint:var(--sc-cuivre-hi)}
.home-refined #panel-pro{--panel-accent:var(--sc-basalte);--panel-tint:var(--sc-basalte)}
.home-refined #panel-immo{--panel-accent:var(--sc-lagon);--panel-tint:var(--sc-lagon-hi)}
.home-refined .platform-panel{
 background:linear-gradient(135deg,color-mix(in srgb,var(--panel-tint) 19%,var(--sc-sable-hi)),var(--sc-sable-hi) 75%);
 border-color:color-mix(in srgb,var(--panel-accent) 38%,var(--sc-sable-hi));border-top:4px solid var(--panel-accent);
}
.home-refined .platform-panel .platform-stage{background:color-mix(in srgb,var(--panel-tint) 22%,var(--sc-sable-hi));border-color:color-mix(in srgb,var(--panel-accent) 28%,var(--sc-sable-hi))}
.home-refined .platform-panel .platform-heading::before{background:var(--panel-accent)}
.home-refined #panel-perso>.button{background:var(--sc-cuivre-mat);border-color:var(--sc-cuivre-mat);color:var(--sc-craie)}
.home-refined #panel-pro>.button{background:var(--sc-basalte);border-color:var(--sc-basalte);color:var(--sc-craie)}
.home-refined #panel-immo>.button{background:var(--sc-lagon-hi);border-color:var(--sc-lagon);color:var(--sc-cacao-lo)}
.home-refined .platform-panel>.button:hover{filter:brightness(.94)}

/* Un même rythme de lecture pour comparer les trois parcours. */
body.home-refined .platform-panel{grid-template-rows:auto auto auto auto 1fr;align-content:start}
body.home-refined .platform-panel>h3{margin-top:.5rem}
body.home-refined .platform-panel>p:not(.property-offer){margin-block:1rem}
body.home-refined .platform-benefits{grid-column:1;grid-row:3;list-style:none;margin:0 0 1.5rem;padding:0;font-size:.85rem;line-height:1.5}
body.home-refined .platform-benefits li{position:relative;padding:.7rem 0 .7rem 1.15rem;border-bottom:1px solid color-mix(in srgb,var(--panel-accent) 18%,transparent)}
body.home-refined .platform-benefits li::before{content:"";position:absolute;left:0;top:1.15rem;width:.35rem;height:.35rem;border-radius:50%;background:var(--panel-accent)}
body.home-refined .platform-panel>.button{grid-row:4}
body.home-refined .platform-panel>.property-offer{grid-row:5}
body.home-refined .platform-panel>.platform-stage{grid-row:1/6;align-self:center}
body.home-refined .platform-panel>.hedg-request{grid-row:6}
/* Les pictogrammes restent distincts des libellés, y compris sur écran étroit. */
body.home-refined .platform-tabs .door-visual{opacity:.65;stroke-width:1.7;width:5rem;height:4rem;bottom:3.5rem;transform:none}
body.home-refined .platform-tabs button[aria-selected="true"] .door-visual,
body.home-refined .platform-tabs button:hover .door-visual{opacity:.9;transform:translateY(-4px)}
/* Le croquis approuvé se fond dans le papier, avec une réserve claire sous le texte. */
body.home-refined .hero-sketch{position:absolute;inset:0 calc((100vw - 100%)/-2);z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,transparent,var(--sc-sable-hi) 33%,var(--sc-sable-hi) 67%,transparent),url("assets/carnet-maison-1536.webp");background-size:100% 100%,cover;background-position:center;opacity:.38;mix-blend-mode:multiply;mask-image:linear-gradient(transparent,#000 15%,#000 75%,transparent)}
@media(max-width:900px) and (min-width:581px){body.home-refined .platform-tabs .door-visual{width:3.5rem;height:3.5rem;bottom:4.5rem}}
@media(max-width:700px){body.home-refined .platform-benefits{width:100%}body.home-refined .platform-panel>.platform-stage{align-self:stretch}body.home-refined .hero-sketch{opacity:.22;background-image:linear-gradient(90deg,transparent,var(--sc-sable-hi) 45%,transparent),url("assets/carnet-maison-768.webp")}}
@media(max-width:580px){body.home-refined .platform-tabs button>span:first-child{padding-right:4.5rem}body.home-refined .platform-tabs .door-visual{bottom:1.75rem;width:4rem;height:4rem}}
/* Le mode flex mobile ne doit pas réafficher les parcours inactifs. */
body.home-refined .platform-panel[hidden]{display:none}
/* Derniers réglages de densité et de lecture. */
body.home-refined .map-families{min-height:4.5rem}
body.home-refined footer{font-size:.85rem}
body.home-refined footer a{display:inline-block;min-height:2rem;padding-block:.35rem}
body.home-refined footer small,body.home-refined .footer-legal{font-size:.75rem;line-height:1.65}
@media(max-width:800px){body.home-refined .map-families{min-height:0}}
@media(max-width:580px){body.home-refined .cabinet-trust .status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.home-refined .cabinet-trust .status-grid li{white-space:nowrap}body.home-refined footer a{min-height:2.75rem}}
body.home-refined .footer-fine,body.home-refined .footer-fine .compact-nav a{font-size:.75rem}
body.home-refined .footer-compact .compact-nav a{font-size:.8rem}
