Urteil 4A_302/2022 (2023)
Rechtsgebiet: civil_law

Faits :
A.
A.a.
C.x_ SA a pour but d'offrir tous services, conseils et prestations dans le domaine immobilier, notamment la maîtrise d'ouvrage et la direction de travaux.
C.y_ SA a pour but d'offrir tous services, conseils et prestations, ainsi que l'exercice de toutes activités propres à une entreprise totale de la construction, ainsi que l'acquisition, la vente, la commercialisation, le courtage, la promotion de biens immobiliers, de même que la prise de participation dans des sociétés immobilières.
Le siège social de C.x_ SA et de C.y_ SA se trouve à Genève, à la même adresse. E._ est l'administrateur unique des deux sociétés. Il en est également l'actionnaire unique, par le biais de F._ SA.
A.b.
Le 23 janvier 2017, C.x_ SA a conclu une convention avec B._, ingénieur civil, et A._ Sàrl, dont G._ est l'unique associé-gérant. La première nommée y est désignée comme "le prêteur" et les seconds comme "l'emprunteur".
Le préambule de cette convention contient les lignes suivantes:
" L'emprunteur, agissant conjointement et solidairement, a l'intention de développer un projet de quatre villas sur la parcelle N°..., sise chemin de Y.... sur la commune de Z._, dénommée ci-après «Y._».
Dans ce but, l'emprunteur va signer une promesse de vente et d'achat lui assurant ainsi de pouvoir déposer une requête en autorisation de construire auprès du département des travaux publics (DALE), le terme de la promesse étant fixé au 31 août 2017.
La condition pour pouvoir signer la promesse de vente et d'achat est de verser auprès du Notaire H._ le montant de CHF 50'000.-."
Aux termes de la convention, C.x_ SA prête 50'000 fr. à B._ et A._ Sàrl, lesquels reconnaissent lui devoir cette somme et s'engagent par ailleurs à l'utiliser "aux fins exclusives de l'opération immobilière «Y._»" ainsi qu'à remettre les fonds en mains du notaire (art. 1). Le prêt doit être remboursé au plus tard le 31 août 2017 (art. 2).
L'art. 3 de la convention contient les deux paragraphes suivants:
" Aux fins de bonne foi et dans un esprit de bonne collaboration, l'emprunteur s'engage à confier les travaux de construction de l'affaire «Y._» au prêteur, celui-ci sera désigné comme «Entreprise Générale» et s'engage à garantir un prix forfaitaire concurrentiel et équivalent au marché genevois actuel. Le prêteur certifie et s'engage à faire tout ce qui est dans son pouvoir pour être reconnu comme «Entreprise Générale» par la banque choisie par l'emprunteur.
(...)
En cas de problème lié à l'impossibilité du prêteur à obtenir l'aval de la banque finançant le projet et/ou d'atteindre un prix concurrentiel, celui-ci ne posera pas de problème à renoncer à son mandat d'entreprise générale, sans aucune prétention envers l'emprunteur, permettant ainsi la bonne réussite de l'affaire «Y._»."
A.c.
A partir de mars 2017, E._, B._ et, pour A._ Sàrl, G._ ont eu régulièrement des échanges par courriels, entretiens téléphoniques et au cours de séances de travail.
C.x_ SA a établi des plans de repérage et de préparation de quantitatifs pour diverses catégories de travaux (travaux préparatoires, échafaudages, canalisations, béton armé, ferblanterie-étanchéité, isolation des façades, stores, etc.). B._ et A._ Sàrl (ci-après: les promoteurs) ont chargé E._ et I._, son collaborateur, d'envoyer des demandes de soumission aux entreprises qu'ils avaient sélectionnées. Sur la base des soumissions reçues, C.y_ SA a établi un tableau récapitulatif des retours de soumission et des tableaux comparatifs pour les postes principaux (terrassement-canalisation, gros-oeuvre/maçonnerie, menuiseries extérieures, etc.), avec des propositions d'adjudication.
Les parties ont également convenu que chaque acquéreur d'une villa sur plans conclurait un contrat d'entreprise générale avec l'entrepreneur général. Le mécanisme consistait en la conclusion de quatre ventes immobilières avec clause d'entrepreneur d'ici fin août 2017, date à laquelle la promesse de vente et d'achat venait à échéance; plus précisément, chaque acquéreur d'un bien-fonds destiné à abriter une villa se substituait dans la vente au (x) promettant (s) -acquéreur (s) de la parcelle totale et devait conclure un contrat d'entreprise générale avec l'intimée.
En mai 2017, E._ a rencontré J._, responsable des promotions immobilières au sein de la Banque K._ (ci-après: la banque), afin de présenter sa société appelée à intervenir en tant qu'entreprise générale chargée du projet «Y._».
A la suite d'une séance de travail tenue le 15 juin 2017, B._ a transmis à E._ et I._, par courriel du même jour, un "planning prévisionnel afin de pouvoir organiser les choses" débutant ainsi:
"Nous avons donc convenu de travailler à livre ouvert, les honoraires de C._ étant forfaitaires, les économies réalisées en faveur du promoteur. Nous vous confirmons vouloir apporter notre aide par la lecture et analyse de chaque soumission afin d'optimiser d'un commun accord les prestations et d'aboutir à une adjudication forfaitaire."
A ce moment-là, B._ "imagin[ait]" que "les signatures de la vente et du contrat EG [Entreprise Générale] devraient pouvoir être agendées entre le 10 et le 14 juillet".
A.d.
Sur la base de ses propositions d'adjudication, C.y_ SA a établi un devis au 15 juin 2017 portant sur la construction des quatre villas mitoyennes, avec le détail du coût des travaux pour chaque poste CFC (Code des Frais de la Construction). Ce devis a fait l'objet d'ajustements après sa transmission à B._ et G._. Dans la version actualisée au 8 juillet 2017, le coût de construction total du projet «Y._» a été chiffré à 3'120'000 fr. Sous la mention "Forfait pour EG", les montants de 81'592 fr. 99 HT ("Entreprise Générale" poste CFC 296), 108'790 fr. 65 HT ("Direction des Travaux" poste CFC 296.6) et 54'395 fr. 33 HT ("Divers et Imprévus" poste CFC 299) ont été devisés; ils figuraient déjà dans le premier devis.
Entre les 11 et 14 juillet 2017, B._ et G._ ont encore transmis à E._ et I._ diverses modifications nécessitant d'ajuster les chiffrages effectués par certaines entreprises. C.y_ SA a alors majoré le coût de la construction pour l'arrêter à un total de 3'170'318 fr. 01 selon devis au 12 juillet 2017.
Une séance de travail a réuni E._, I._, G._ et B._ le 12 juillet 2017.
E._ est parti en vacances du 14 au 30 juillet 2017. Les promoteurs en avaient été informés au préalable.
A.e.
Le dimanche 23 juillet 2017, G._ a adressé à E._ le courriel suivant: "Bonjour (...), Je suis désolé de te déranger pendant les vacances, mais je n'ai pas encore reçu le Contrat EG. Je te rappelle que c'est très urgent. Je te remercie, par avance, pour ton envoi."
Les 24 et 25 juillet 2017, E._ et I._ ont échangé des courriels en vue de finaliser le contrat d'entreprise générale à transmettre aux promoteurs.
Par pli recommandé du 25 juillet 2017, A._ Sàrl s'est adressée à C.x_ SA, soit pour elle à E._, en ces termes:
"Malgré votre promesse du lundi 10 courant de nous faire parvenir le Contrat d'Entreprise Générale dans le plus bref délai, pour l'envoyer à la banque et nos appels téléphoniques, mails et des SMS restés sans réponse et à ce jour nous n'avons rien reçu de votre part. Le retard représente 2 semaines et a mis en péril le délai pour l'acquisition de la parcelle. Pour mémoire je vous rappelle que la signature chez le notaire doit avoir lieu le 31 courant. De ce fait nous avons décidé de renoncer à vos services, pour manquement grave à vos obligations, avec effet immédiat. (...) L'entreprise qui va vous remplacer, au pied levé et qui nous permettra de fournir les éléments nécessaires à sauver cette affaire sera L._, mon entreprise, même si comme vous le savez déjà, dès le début j'ai refusé de l'employer pour des raisons de disponibilité."
L._ Sàrl a pour but la réalisation d'opérations immobilières. M._ et G._ en sont l'associé-gérant président, respectivement l'associé-gérant, tous deux avec signature individuelle.
Par courriel et pli recommandé du 26 juillet 2017, C.x_ SA a adressé à G._ et B._ le contrat d'entreprise générale relatif au projet «Y._», accompagné de ses annexes (descriptif général des travaux, détail du prix par CFC, descriptif par villa, plans, échéancier de paiement, programme des travaux). Établi sur papier à en-tête de C.y_ SA, le contrat précisait que celle-ci intervenait en tant qu'entreprise générale et C.x_ SA en tant que directrice des travaux, le prix global de l'ouvrage étant fixé à 3'170'318 fr. 01 TTC.
Dans la lettre qui accompagnait le contrat, E._ rappelait entre autres que l'opération immobilière n'avait pu voir le jour que grâce au prêt octroyé par C.x_ SA, lequel était subordonné à la condition sine qua non que "nous soyons l'Entreprise Générale de ce projet". Il relatait également tout le travail effectué sur cette promotion immobilière et réfutait tout retard de la part de lui-même ou de ses sociétés.
Le pli recommandé a été refusé par G._ qui a indiqué, par courriel, que le contrat aurait dû parvenir aux promoteurs le 19 juillet 2017 au plus tard afin d'être transmis à la banque.
Par courrier de son conseil du 28 juillet 2017, C.y_ SA a invité A._ Sàrl à reconsidérer sa position avant de faire signer aux futurs acquéreurs des villas un contrat d'entreprise générale avec L._ Sàrl; elle a ajouté que si les promoteurs persistaient à l'exclure du projet, elle n'aurait d'autre choix que de réclamer la réparation du dommage subi.
Dans sa réponse du 23 août 2017, A._ Sàrl a relevé qu'elle n'avait jamais eu de rapports contractuels avec C.y_ SA et qu'elle ignorait même l'existence de cette société.
A.f.
Le 28 août 2017, A._ Sàrl et B._ ont remboursé à C.x_ SA le montant du prêt avec les intérêts, soit 55'000 fr., par l'intermédiaire de Me H._.
A.g.
Les actes de vente portant sur les quatre villas du projet «Y._» ont été signés à la fin août 2017.
Le 28 août 2017, L._ Sàrl, représentée par M._, a signé un contrat d'entreprise générale avec chacun des quatre acquéreurs. Le prix global de l'ouvrage a été fixé à 3'170'000 fr. TTC, soit 792'500 fr. TTC par villa.
En date du 11 août 2017, les promoteurs avaient signé un contrat d'entreprise générale avec L._ Sàrl pour le prix global de 3'170'000 fr. TTC. Selon le plan financier détaillé par CFC, les honoraires de l'entreprise générale ont été fixés forfaitairement à 200'000 fr. et un poste "Divers et imprévus" a été pris en compte à hauteur de 60'000 fr.
A.h.
Par pli de leur avocat du 7 décembre 2017, C.x_ SA et C.y_ SA ont adressé au conseil de A._ Sàrl deux factures établies au nom de cette société et de B._, annulant et remplaçant deux factures envoyées le 18 septembre 2017 par C.y_ SA à A._ Sàrl. La première facture - "pour le travail effectué" - se monte à 65'772 fr. TTC (60'900 fr. HT), alors que la seconde facture - "pour le gain manqué" - s'élève à 198'589 fr. 28 TTC (183'878 fr. 97 HT); ce dernier montant correspond aux honoraires prévus dans le devis au 15 juin 2017 (postes CFC 296, 296.6 et 299), sous déduction de la première facture. Le montant total réclamé est ainsi de 264'361 fr. 28 TTC ou 244'778 fr. 97 HT.
A.i.
Par contrat du 15 décembre 2017, C.y_ SA a cédé irrévocablement et sans conditions à C.x_ SA toutes les créances dont elle serait titulaire à l'encontre de A._ Sàrl et de B._ concernant le projet «Y._».
B.
B.a.
Par demande déposée le 28 mars 2018 devant le Tribunal de première instance du canton de Genève, C.x_ SA a assigné A._ Sàrl et B._, solidairement entre eux, en paiement de 65'772 fr. au titre du travail effectué et de 198'589 fr. 28 au titre de la réparation du dommage résultant de la violation de la convention du 23 janvier 2017, le tout avec intérêts à 5 % l'an dès le 18 décembre 2017.
A._ Sàrl et B._ ont conclu au rejet de la demande.
B.b.
En octobre/novembre 2019, C.x_ SA a fait notifier aux promoteurs des commandements de payer les sommes de 65'772 fr. et 198'589 fr. 28 avec intérêts. Les poursuivis ont formé opposition.
Se référant à ces poursuites, C.x_ SA a amplifié ses conclusions et sollicité du tribunal qu'il prononce la mainlevée définitive des oppositions.
B.c.
Par jugement du 15 mars 2021, le Tribunal de première instance a condamné A._ Sàrl et B._, solidairement entre eux, à payer à C.x_ SA la somme de 244'778 fr. 97, plus intérêts à 5 % dès le 18 décembre 2017, et prononcé la mainlevée des oppositions formées par A._ Sàrl, respectivement B._, à concurrence de ce montant.
Statuant le 17 mai 2022 sur appel des défendeurs, la Chambre civile de la Cour de justice du canton de Genève a confirmé le jugement de première instance.
Elle a jugé que les promoteurs avaient violé la promesse de contracter (
art. 22 al. 1 CO
) résultant de l'art. 3 de la convention du 23 janvier 2017. Dans le cadre du contrat de prêt, les emprunteurs s'étaient engagés à confier les travaux du projet «Y._» à la prêteuse, en tant qu'entreprise générale, à la double condition, d'une part, de la garantie d'un prix forfaitaire concurrentiel et équivalent au marché genevois et, d'autre part, de la validation par la banque du choix de la demanderesse comme entreprise générale. La première condition était remplie puisque le prix de l'ouvrage offert par la demanderesse dans son devis était équivalent à celui convenu finalement entre les promoteurs et L._ Sàrl. Quant à la seconde condition, elle était réputée accomplie en application de l'
art. 156 CO
, dès lors que la banque aurait validé le choix de la demanderesse comme entreprise générale si les promoteurs n'avaient pas changé d'avis et désigné finalement une autre société sans motif valable. Pour le reste, le dommage subi par la demanderesse correspondait aux honoraires forfaitaires, hors TVA, auxquels elle aurait pu prétendre pour son activité d'entreprise générale tels que prévus aux postes CFC 296, 296.6 et 299 du devis. En outre, le lien de causalité (naturelle et adéquate) entre ce préjudice et la violation par les emprunteurs de leurs obligations contractuelles était établi. Enfin, les défendeurs avaient échoué à prouver qu'aucune faute ne leur était imputable.
C.
A._ Sàrl et B._ interjettent un recours en matière civile. Ils concluent à l'annulation de l'arrêt cantonal et au déboutement de C.x_ SA de toutes ses conclusions.
La première requête d'effet suspensif présentée par les recourants a été rejetée par ordonnance du 22 septembre 2022.
Les recourants ont déposé une nouvelle demande d'effet suspensif après que A._ Sàrl s'est vu notifier une commination de faillite et que l'intimée a soumis dans la foulée une requête de faillite au tribunal compétent. Par ordonnance du 29 décembre 2022, la demande d'effet suspensif a été admise en tant qu'elle concernait A._ Sàrl et rejetée en tant qu'elle visait B._.
Dans sa réponse, C.x_ SA conclut au rejet du recours.
Pour sa part, la cour cantonale se réfère aux considérants de son arrêt.

Considérant en droit :
1.
Les conditions de recevabilité du recours en matière civile sont réalisées sur le principe, notamment celles afférentes à la valeur litigieuse minimale de 30'000 fr. (
art. 74 al. 1 let. b LTF
) et au délai de recours (
art. 100 al. 1 LTF
).
2.
2.1.
Le recours en matière civile peut être exercé pour violation du droit fédéral (
art. 95 let. a LTF
), y compris le droit constitutionnel (
ATF 136 I 241
consid. 2.1;
136 II 304
consid. 2.4). Le Tribunal fédéral applique le droit d'office (
art. 106 al. 1 LTF
). Il n'est donc limité ni par les arguments soulevés dans le recours, ni par la motivation retenue par l'autorité précédente (
ATF 137 II 313
consid. 1.4;
135 III 397
consid. 1.4). Compte tenu de l'exigence de motivation contenue à l'
art. 42 al. 1 et 2 LTF
, sous peine d'irrecevabilité (
art. 108 al. 1 let. b LTF
), le Tribunal fédéral n'examine en principe que les griefs invoqués, sauf en cas d'erreurs juridiques manifestes. Il n'est pas tenu de traiter, comme le ferait une autorité de première instance, toutes les questions juridiques qui se posent, lorsque celles-ci ne sont plus discutées devant lui (
ATF 142 III 364
consid. 2.4;
140 III 86
consid. 2, 115 consid. 2;
137 III 580
consid. 1.3). Par exception à la règle selon laquelle il applique le droit d'office, il n'examine la violation d'un droit constitutionnel que si le grief a été invoqué et motivé de façon détaillée (
art. 106 al. 2 LTF
;
ATF 144 II 313
consid. 5.1;
142 II 369
consid. 2.1;
142 III 364
consid. 2.4;
139 I 229
consid. 2.2).
2.2.
Le Tribunal fédéral statue sur la base des faits établis par l'autorité précédente (
art. 105 al. 1 LTF
). Il ne peut rectifier ou compléter les constatations de l'autorité précédente que si elles sont manifestement inexactes ou découlent d'une violation du droit au sens de l'
art. 95 LTF
(
art. 105 al. 2 LTF
). "Manifestement inexactes" signifie ici "arbitraires" (
ATF 143 I 310
consid. 2.2;
141 IV 249
consid. 1.3.1;
140 III 115
consid. 2;
135 III 397
consid. 1.5). Encore faut-il que la correction du vice soit susceptible d'influer sur le sort de la cause (
art. 97 al. 1 LTF
).
La critique de l'état de fait retenu est soumise au principe strict de l'allégation énoncé par l'
art. 106 al. 2 LTF
(
ATF 140 III 264
consid. 2.3 et les références). La partie qui entend attaquer les faits constatés par l'autorité précédente doit expliquer clairement et de manière circonstanciée en quoi les conditions d'une exception au sens de l'
art. 105 al. 2 LTF
seraient réalisées. Si elle souhaite obtenir un complètement de l'état de fait, elle doit aussi démontrer, par des renvois précis aux pièces du dossier, qu'elle a présenté aux autorités précédentes, en conformité avec les règles de procédure, les faits juridiquement pertinents à cet égard et les moyens de preuve adéquats (
ATF 140 III 86
consid. 2). Si la critique ne satisfait pas à ces exigences, les allégations relatives à un état de fait qui s'écarterait de celui de la décision attaquée ne pourront pas être prises en considération (
ATF 140 III 16
consid. 1.3.1 et les références). Aucun fait nouveau ni preuve nouvelle ne peut être présenté à moins de résulter de la décision de l'autorité précédente (
art. 99 al. 1 LTF
).
Le Tribunal fédéral se montre réservé en matière de constatations de fait et d'appréciation des preuves, vu le large pouvoir qu'il reconnaît en ce domaine aux autorités cantonales. Il n'intervient, du chef de l'
art. 9 Cst.
, que si le juge du fait n'a manifestement pas compris le sens et la portée d'un moyen de preuve, a omis sans raisons objectives de tenir compte des preuves pertinentes ou a effectué, sur la base des éléments recueillis, des déductions insoutenables (
ATF 140 III 264
consid. 2.3;
137 III 226
consid. 4.2;
136 III 552
consid. 4.2;
134 V 53
consid. 4.3;
129 I 8
consid. 2.1).
3.
Les recourants contestent la légitimation active de l'intimée et implicitement, sous le couvert d'une violation de l'
art. 22 CO
, la légitimation passive du recourant B._.
Invoquant l'
art. 97 al. 1 LTF
et l'
art. 9 Cst.
, ils reprochent à la cour cantonale d'avoir opéré, de manière arbitraire, "une confusion générale dans l'identité des parties à la convention du 23 janvier 2017".
Si l'on saisit bien la thèse développée devant la cour de céans, le recourant, contrairement à la Sàrl recourante, n'aurait été lié que par le prêt, et non par la promesse de contracter figurant à l'art. 3 de la convention précitée. La cour cantonale aurait omis de manière arbitraire de constater que le recourant n'était pas partie à la promesse de vente et d'achat de la parcelle sur laquelle le projet devait être édifié, ce qui l'aurait empêché de conclure le contrat d'entreprise générale le moment venu.
Quant à l'intimée, elle ne pourrait agir en se fondant sur les prétendues créances cédées par C.y_ SA. Apparemment, les recourants font valoir que cette dernière société n'a jamais été titulaire de droits envers eux puisqu'elle n'est pas désignée, dans la convention litigieuse, comme tiers bénéficiaire de la promesse de contracter.
3.1.
La qualité pour agir (communément qualifiée de légitimation active) ou la qualité pour défendre (communément qualifiée de légitimation passive) relève du fondement matériel de l'action; elle appartient au sujet (actif ou passif) du droit invoqué en justice (
ATF 142 III 782
consid. 3.1.3.2;
130 III 417
consid. 3.1 et 3.4;
126 III 59
consid. 1a;
125 III 82
consid. 1a). Le défaut de qualité pour agir ou pour défendre entraîne le rejet de la demande (
ATF 142 III 782
consid. 3.1.3).
3.2.
L'intimée réclame des dommages-intérêts pour inexécution de la promesse de contracter décrite à l'art. 3 de la convention du 23 janvier 2017.
Cette convention a été signée par l'intimée et les deux recourants. Elle comporte deux contrats: 1) un prêt de l'intimée aux recourants - désignés expressément dans la convention sous le terme singulier "l'emprunteur" -, à rembourser avec intérêts au plus tard le 31 août 2017; ce prêt est destiné à permettre aux recourants de payer le montant exigé pour signer la promesse de vente et d'achat de la parcelle sur laquelle les quatre villas du projet «Y._» doivent être construites, le terme de cette promesse étant fixé au 31 août 2017; 2) en échange, une promesse de "l'emprunteur" de conclure avec l'intimée un contrat d'entreprise générale pour la construction des quatre villas.
Il ressort clairement du texte de la convention que les parties à ces deux contrats connexes sont les mêmes.
La cour cantonale n'a donc pas versé dans l'arbitraire en retenant que le recourant, agissant pour lui-même, était, comme la Sàrl recourante, débiteur de l'obligation découlant du précontrat. Peu importe que seule la Sàrl recourante ait signé par la suite la promesse de vente et d'achat de la parcelle en cause. Toute l'argumentation du recours fondée sur ce fait non constaté dans l'arrêt attaqué tombe à faux. Partant, le recourant a manifestement la qualité pour défendre à l'action en dommages-intérêts fondée sur l'inexécution de la promesse de contracter.
Pour sa part, l'intimée, partie à la convention et au précontrat, n'agit pas en tant que cessionnaire des éventuelles créances de C.y_ SA, mais en tant que titulaire de la créance tendant à la conclusion du contrat d'entreprise générale. A ce titre, elle peut faire valoir en justice, en son propre nom, la prétention en dommages-intérêts pour inexécution de la promesse de contracter. Contrairement à ce que les recourants soutiennent, l'intimée dispose sans conteste de la qualité pour agir.
4.
L'art. 3 de la convention du 23 janvier 2017 constitue une promesse de contracter (ou précontrat) au sens de l'
art. 22 al. 1 CO
. Les recourants se sont engagés à conclure, en tant que maîtres d'ouvrage, un contrat d'entreprise générale (contrat principal) avec l'intimée, portant sur la construction de quatre villas dans le cadre du projet «Y._» pour un prix forfaitaire concurrentiel et équivalent au marché genevois. A juste titre, les recourants ne remettent pas en cause la validité de cette promesse de contracter, suffisamment déterminée dans la mesure où elle comporte les éléments essentiels du contrat d'entreprise, à savoir l'ouvrage à réaliser et le caractère onéreux de l'exécution.
Les promoteurs n'ont pas exécuté leur obligation découlant du précontrat. Par lettre de la recourante du 25 juillet 2017, ils se sont départis de la promesse de contracter en invoquant un retard de deux semaines dans la remise du contrat d'entreprise générale; arguant que la signature de l'acte de vente chez le notaire devait intervenir le 31 juillet 2017, ils faisaient valoir que ce retard mettait en péril l'ensemble du projet et annonçaient d'ores et déjà que le contrat d'entreprise générale serait conclu avec une entreprise tierce, dont G._ était l'associé-gérant.
5.
Selon l'arrêt attaqué, les conditions de la responsabilité contractuelle (
art. 97 ss CO
) des recourants sont réalisées. La cour cantonale a jugé en particulier que les promoteurs avaient violé leur obligation de conclure le contrat principal et n'avaient pas prouvé leur absence de faute.
En réalité, les promettants pouvaient se libérer en tout temps de l'obligation de conclure le contrat d'entreprise générale, mais ils devaient en principe en supporter les conséquences pécuniaires prévues par la loi.
En effet, l'
art. 377 CO
autorise le maître d'ouvrage à se départir du contrat d'entreprise tant que l'ouvrage n'est pas terminé, moyennant le paiement du travail fait et l'indemnisation complète de l'entrepreneur. Or, il est admis que ce droit du maître peut également être exercé pour éteindre une obligation de conclure un contrat d'entreprise (
ATF 117 II 273
consid. 3b et 4a; PETER GAUCH, Der Werkvertrag, 6e éd. 2019, n. 429 p. 200; TERCIER/BIERI/CARRON, Les contrats spéciaux, 5e éd. 2016, n. 3622 p. 494).
Comme la réparation du dommage lié à la violation d'une obligation contractuelle (
art. 97 al. 1 CO
), l'indemnisation complète prévue à l'
art. 377 CO
correspond à des dommages-intérêts positifs, couvrant l'intérêt de l'entrepreneur à l'exécution complète du contrat d'entreprise, y compris donc le gain manqué (
ATF 96 II 192
consid. 5; arrêt 4A_189/2017 du 5 octobre 2017 consid. 3.2.1). Si le promettant se départit du précontrat, le dommage à réparer est celui que son partenaire contractuel subit du fait de l'inexécution du contrat principal lui-même, soit du contrat d'entreprise (cf. ADRIEN GABELLON, Le précontrat - Développements et perspectives, 2014, p. 221).
Étant donné que la créance découle de la loi, et non d'une violation du contrat, le maître ne peut pas se soustraire à son obligation de dédommagement en prouvant qu'il n'a pas commis de faute (FRANÇOIS CHAIX, in Commentaire romand, Code des obligations I, 3e éd. 2021, n° 13 ad
art. 377 CO
). En revanche, après plusieurs variations dans la jurisprudence, une réduction de l'indemnité due en vertu de l'
art. 377 CO
, voire sa suppression, n'est plus exclue en cas de justes motifs (arrêts 4D_8/2008 du 31 mars 2008 consid. 3.4.1; 4C.393/2006 du 27 avril 2007 consid. 3.3.3; CHAIX, op. cit., n° 17/18 ad
art. 377 CO
).
5.1.
Sous le grief tiré d'une violation de l'
art. 97 CO
, les recourants soutiennent que les motifs ayant conduit à la rupture de la collaboration entre les parties résidaient dans le "retard injustifié et injustifiable pris par l'intimée pour transmettre le contrat d'entreprise générale", invoqué dans la lettre de résiliation du 25 juillet 2017.
Examinant cette thèse sous l'angle de la preuve libératoire de l'absence de faute des recourants (
art. 97 CO
), les juges genevois ont relevé qu'elle ne trouvait pas d'assise dans le dossier et était contredite non seulement par les déclarations de l'intimée, mais également par les témoignages recueillis et les pièces produites. En d'autres termes, la cour cantonale a constaté que les motifs invoqués par les recourants pour se départir du précontrat le 25 juillet 2017 n'étaient pas réels et ne résidaient donc pas dans un quelconque comportement de l'intimée. Elle a relevé notamment que, contrairement à E._, les recourants avaient fluctué dans leurs explications, tant sur le délai fixé pour la remise du contrat d'entreprise générale (14 ou 19 juillet) que sur l'échéance pour finaliser la vente du terrain et des villas sur plans (31 juillet ou 31 août). Les termes employés en audience par G._, déclarant que le 26 juillet 2017 était le dernier moment pour se "débarrasser" de E._, et le témoignage de M._, selon lequel L._ Sàrl était entrée dans le projet déjà en mai-juin 2017, étaient également propres à mettre en doute la bonne foi des promoteurs et leur réelle intention d'honorer les engagements pris à l'art. 3 de la convention du 23 janvier 2017.
En se bornant à reprendre leurs allégations sur les motifs de leur retrait, les recourants ne s'en prennent manifestement pas de manière recevable à l'appréciation des preuves à laquelle la cour cantonale s'est livrée sur ce point (cf. supra consid. 2.1 in fine).
Cela étant, comme les raisons invoquées dans la lettre du 25 juillet 2017 pour écarter l'intimée étaient des prétextes, il est d'emblée exclu que les recourants puissent se prévaloir de justes motifs au sens de l'
art. 377 CO
, les autorisant à se libérer de leur obligation de conclure le contrat d'entreprise générale sans indemniser complètement l'intimée.
5.2.
L'obligation des promettants était soumise à la condition que l'intimée obtienne, comme entreprise générale, l'aval de la banque choisie par les promoteurs.
Les recourants ne critiquent pas, sous l'angle de l'arbitraire, la constatation de l'arrêt attaqué selon laquelle la banque aurait approuvé la désignation de l'intimée comme entreprise générale s'ils l'avaient proposée comme telle.
Les promettants ont empêché l'avènement de la condition précitée en se départissant de la promesse de contracter sans raison valable, se prévalant, contrairement aux règles de la bonne foi, d'un retard inexistant de l'intimée dans la préparation du contrat d'entreprise générale. Comme la cour cantonale l'a jugé à bon droit, la condition doit être considérée comme accomplie conformément à l'
art. 156 CO
, n'empêchant ainsi pas la naissance de l'obligation de conclure le contrat principal.
5.3.
En ce qui concerne la prétention en dommages-intérêts de l'intimée, les recourants font valoir que celle-ci n'aurait pas prouvé à satisfaction l'existence d'un dommage, d'une part, parce qu'elle n'aurait pas été en droit d'invoquer des créances de C.y_ SA et, d'autre part, parce qu'elle aurait été dans l'incapacité de prouver que le montant des honoraires avait été accepté par la recourante.
Dans un grief dépourvu là aussi d'une motivation suffisante, les recourants reprochent également à la cour cantonale d'avoir versé dans l'arbitraire en retenant que l'intimée avait proposé, conformément au précontrat, un "prix forfaitaire et équivalent au marché genevois actuel".
Comme déjà relevé, l'indemnisation complète de l'intimée au sens de l'
art. 377 CO
consiste en des dommages-intérêts positifs. Pour fixer les dommages-intérêts positifs (sur la base des
art. 97 ss CO
), la cour cantonale s'est fondée sur les devis établis en juin/juillet 2017 et le contrat d'entreprise générale remis aux promoteurs le 26 juillet 2017.
Contrairement à ce que les recourants prétendent, peu importe que ces documents aient été émis au nom de C.y_ SA, et non de l'intimée. Entre mars et le 23 juillet 2017, les parties, par les voix de E._, son collaborateur I._, B._ et G._, ont été en pourparlers contractuels, sans que les deux derniers cités ne formulent à aucun moment des réserves ni même des observations à propos de l'identité de la société en mains de E._ qui présentait les devis. C'est dire qu'il était indifférent aux recourants d'exécuter leur obligation de contracter avec l'une et/ou l'autre de ces sociétés. Il s'ensuit que la cour cantonale pouvait se fonder sur ces pièces pour calculer le dommage résultant de l'inexécution par les promettants de leur obligation de conclure un contrat d'entreprise générale.
Pour le reste, la Cour de justice a constaté sans arbitraire que le prix forfaitaire global de l'ouvrage soumis aux promettants dans le dernier devis et le contrat du 26 juillet 2017 était "concurrentiel et équivalent au marché genevois", conformément aux exigences du précontrat, dès lors qu'il correspondait, à quelque 300 fr. près sur plus de 3 millions de francs, au prix du même ouvrage convenu entre les recourants et L._ Sàrl.
S'agissant plus particulièrement des honoraires de l'entreprise générale, déterminants pour calculer son gain manqué, les parties avaient convenu de les fixer de manière forfaitaire. Déjà dans le premier devis détaillé soumis aux recourants, daté du 15 juin 2017, ils figurent sous trois postes CFC pour un montant total de 244'778 fr. 97, repris tels quels dans les devis suivants ainsi que dans le projet de contrat d'entreprise générale du 26 juillet 2017. Avant de se départir du précontrat le 25 juillet 2017, les promettants, au cours des pourparlers contractuels, n'ont jamais émis d'observation ni de réserve sur ces trois postes tels que devisés, alors qu'ils ont demandé de modifier le chiffrage d'autres postes CFC. De plus, la cour cantonale a constaté que les honoraires forfaitaires prévus dans les devis pour l'activité d'entreprise générale se trouvaient dans le même ordre de grandeur que ceux convenus au même titre avec L._ Sàrl.
Force est de conclure qu'en arrêtant à 244'778 fr. 97 la prétention en dommages-intérêts (positifs) de l'intimée, la cour cantonale n'a pas violé le droit fédéral.
6.
Sur le vu de ce qui précède, le recours ne peut être que rejeté dans la mesure où il est recevable.
Les recourants, débiteurs solidaires, prendront à leur charge les frais judiciaires (
art. 66 al. 1 et 5 LTF
) et verseront des dépens à l'intimée (
art. 68 al. 1 et 4 LTF
).