/*
Theme Name: Christophe Le Cué — 3G IMMO
Theme URI: https://christophe-lecue.com
Author: Filioform
Description: Thème sur mesure pour Christophe Le Cué, conseiller immobilier 3G IMMO à Perpignan. Charte pétrole #064650 / vert #87d300, police Roboto.
Version: 1.0.0
Text Domain: lecue
*/

/* ============================================================
   1. VARIABLES & BASE
   ============================================================ */
:root{
  --petrole:#064650;
  --petrole-clair:#0e5a66;
  --vert:#87d300;
  --vert-lien:#76b900;
  --gris-fond:#f6f6f6;
  --texte:#333333;
  --texte-2:#6f6f6f;
  --blanc:#ffffff;
  --ombre:0 2px 10px rgba(0,0,0,.12);
  --radius:12px;
  --radius-lg:16px;
  --pilule:999px;
  --conteneur:1200px;
  --transition:.2s ease;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Roboto',-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:15px;line-height:1.65;color:var(--texte);background:var(--blanc);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block;}
a{color:var(--vert-lien);text-decoration:none;transition:color var(--transition);}
a:hover{color:var(--petrole);}
h1,h2,h3,h4{color:var(--petrole);font-weight:700;line-height:1.25;}
.conteneur{max-width:var(--conteneur);margin:0 auto;padding:0 24px;}
.section{padding:96px 0;}
.section.cta{padding:24px 0 0;}
.section--gris{background:var(--gris-fond);}
.section__titre{font-size:32px;text-align:center;margin-bottom:10px;}
.section__intro{font-size:15px;color:var(--texte-2);text-align:center;max-width:760px;margin:0 auto 40px;}
.surtitre{display:block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--vert-lien);margin-bottom:12px;}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 26px;border-radius:var(--pilule);font-size:14px;font-weight:700;
  border:1px solid transparent;cursor:pointer;transition:all var(--transition);white-space:nowrap;}
.btn--vert{background:var(--vert);color:var(--petrole);}
.btn--vert:hover{background:#79bd00;color:var(--petrole);}
.btn--petrole{background:var(--petrole);color:var(--blanc);}
.btn--petrole:hover{background:#053a42;color:var(--blanc);}
.btn--blanc{background:var(--blanc);color:var(--petrole);}
.btn--blanc:hover{background:#f0f0f0;color:var(--petrole);}
.btn--large{width:100%;padding:14px 26px;}

/* Pilule / badge */
.pilule{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;
  border-radius:var(--pilule);font-size:12px;font-weight:700;}
.pilule--petrole{background:var(--petrole);color:var(--blanc);}
.pilule--contour{border:1px solid rgba(255,255,255,.45);color:var(--blanc);
  letter-spacing:.08em;text-transform:uppercase;font-size:11px;}

/* Images en ratio 4/3 strict */
.ratio43{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-lg);}
.ratio43 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ============================================================
   2. HEADER
   ============================================================ */
.entete{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);
  backdrop-filter:saturate(180%) blur(8px);box-shadow:0 1px 0 rgba(0,0,0,.06);}
.entete__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:72px;}
.entete__logo img,.entete__logo .custom-logo{height:40px !important;width:auto !important;max-width:none;display:block;}
.entete__nav{display:flex;align-items:center;gap:28px;margin-left:auto;}
.entete__nav ul,.entete__nav .menu{list-style:none;display:flex;align-items:center;gap:28px;margin:0;padding:0;}
.entete__nav li{list-style:none;margin:0;}
.entete__nav a:not(.btn){color:var(--petrole);font-size:14px;font-weight:500;padding:6px 0;}
.entete__nav a:hover{color:var(--vert-lien);}
.entete__nav .current-menu-item>a{border-bottom:2px solid var(--vert);}
.entete__tel{margin-left:8px;color:#fff !important;font-size:13px;padding:12px 26px !important;}
.entete__nav a.entete__tel{color:#fff !important;}
.entete__nav a.entete__tel:hover{color:#fff !important;}
.entete__burger{display:none;background:none;border:0;color:var(--petrole);font-size:22px;cursor:pointer;}

/* ============================================================
   3. HERO
   ============================================================ */
/* ===== 3. HERO (valeurs exactes de la maquette) ===== */
.hero{position:relative;overflow:hidden;background:#064650;color:#fff;}
.hero__fond{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%;opacity:.29;display:block;pointer-events:none;}
.hero__voile{position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(6,70,80,.25) 0%,rgba(6,70,80,0) 45%,rgba(6,70,80,.55) 100%);}
.hero__inner{position:relative;max-width:1200px;margin:0 auto;padding:72px 24px 128px;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;}
.hero__texte{display:flex;flex-direction:column;align-items:flex-start;gap:24px;}
.hero__eyebrow{border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:7px 18px;font-size:12px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:#cfe3e6;}
.hero__titre{font-size:54px;font-weight:700;line-height:1.08;margin:0;color:#fff;}
.hero__sous{font-size:19px;line-height:1.6;color:#cfe3e6;margin:0;max-width:46ch;}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;}
.hero__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:999px;font-size:15px;font-weight:500;padding:12px 28px;text-decoration:none;transition:.2s;border:none;cursor:pointer;}
.hero__btn--vert{background:#87d300;color:#fff;}
.hero__btn--vert:hover{background:#79bd00;color:#fff;}
.hero__btn--blanc{background:#fff;color:#064650;border:1px solid rgba(0,0,0,.06);}
.hero__btn--blanc:hover{background:#f1f1f1;color:#064650;}
.hero__stats{display:flex;gap:28px;align-items:center;margin-top:12px;flex-wrap:wrap;}
.hero__stat{display:flex;flex-direction:column;gap:2px;}
.hero__stat .n{font-size:24px;font-weight:700;color:#87d300;}
.hero__stat .l{font-size:12px;color:#9fc2c7;}
.hero__sep{width:1px;height:34px;background:rgba(255,255,255,.2);}
.hero__note{display:inline-flex;align-items:center;gap:8px;}
.hero__etoiles{color:#ffa000;letter-spacing:2px;line-height:1;font-size:14px;}
.hero__score{font-size:15px;font-weight:700;color:#fff;}
.hero__visuel{position:relative;justify-self:end;margin-right:33px;width:400px;height:400px;margin-top:40px;}
.hero__cercle{position:absolute;inset:0;border-radius:50%;background:#0e5a66;}
.hero__pastille{position:absolute;right:6px;bottom:26px;width:104px;height:104px;border-radius:50%;background:#87d300;opacity:.9;}
.hero__portrait{position:absolute;left:5px;top:-48px;width:390px;height:440px;object-fit:contain;object-position:center top;display:block;clip-path:path('M 0 0 H 390 V 248 H 395 A 200 200 0 0 1 -5 248 H 0 Z');-webkit-clip-path:path('M 0 0 H 390 V 248 H 395 A 200 200 0 0 1 -5 248 H 0 Z');filter:drop-shadow(rgba(0,0,0,.35) 0 10px 24px);}
.hero__badge{position:absolute;left:50%;transform:translateX(-50%);bottom:-16px;background:#fff;color:#064650;font-size:12px;font-weight:700;padding:9px 18px;border-radius:999px;box-shadow:0 4px 16px rgba(0,0,0,.18);white-space:nowrap;}

.cartes-services{position:relative;z-index:5;margin-top:-64px;}
.cartes-services__grille{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.carte-service{background:var(--blanc);border-radius:var(--radius);box-shadow:var(--ombre);
  padding:22px 22px 24px;border-top:3px solid var(--vert);}
.carte-service h3{font-size:16px;margin-bottom:8px;}
.carte-service p{font-size:13.5px;color:var(--texte-2);}

/* ============================================================
   5. QUI SUIS-JE
   ============================================================ */
.apropos__grille{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.apropos h2{font-size:32px;text-align:left;margin-bottom:20px;}
.apropos p{font-size:14.5px;color:var(--texte-2);margin-bottom:14px;}
.apropos strong{color:var(--texte);}
.apropos__stats{display:flex;gap:56px;margin-top:26px;}
.apropos__stat .n{font-size:34px;font-weight:700;color:var(--vert);line-height:1;}
.apropos__stat .l{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--texte-2);margin-top:6px;}
.apropos__carte{display:flex;flex-direction:column;align-items:center;gap:18px;}
.apropos__carte img{max-width:340px;}

/* ============================================================
   6. SERVICES COMPLETS
   ============================================================ */
.services__grille{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.services__grille .ratio43{aspect-ratio:16/9;}
.services__items{display:flex;flex-direction:column;gap:26px;}
.services__item h3{font-size:16px;margin-bottom:6px;}
.services__item p{font-size:13.5px;color:var(--texte-2);}

/* ============================================================
   7. BONNES MAINS (3 colonnes)
   ============================================================ */
.engagements{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.engagement h3{font-size:16px;margin:16px 0 8px;}
.engagement p{font-size:13.5px;color:var(--texte-2);}
.engagement .ratio43{background:var(--blanc);box-shadow:var(--ombre);}

/* ============================================================
   8. BIENS
   ============================================================ */
.biens{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:34px;}
.bien{background:var(--blanc);border-radius:var(--radius);overflow:hidden;box-shadow:var(--ombre);
  display:flex;flex-direction:column;}
.bien .ratio43{border-radius:0;aspect-ratio:16/9;}
.bien__corps{padding:16px 18px 20px;text-align:center;}
.bien__titre{font-size:15px;margin-bottom:8px;}
.bien__lien{font-size:13.5px;font-weight:700;color:var(--vert-lien);}
.bien__meta{display:flex;justify-content:center;gap:18px;margin:10px 0 4px;flex-wrap:wrap;}
.bien__meta span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--texte-2);}
.bien__meta img{width:16px;height:16px;opacity:.75;}
.biens__action{text-align:center;}

/* ============================================================
   9. SERVICES ANNEXES
   ============================================================ */
.annexes{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:stretch;}
.annexe{display:flex;flex-direction:column;height:100%;}
.annexe .ratio43{aspect-ratio:16/9;}
.annexe__carte{background:var(--gris-fond);border-radius:var(--radius);box-shadow:var(--ombre);
  margin:-48px 24px 0;padding:26px 24px;position:relative;z-index:2;text-align:center;
  flex:1;display:flex;flex-direction:column;}
.annexe__carte h3{font-size:20px;margin-bottom:14px;}
.annexe__carte p{font-size:13.5px;color:var(--texte-2);margin-bottom:12px;}
.annexe__logos{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:auto;padding-top:12px;}
.annexe__logos img{height:64px;width:auto;}
.annexe__action{margin-top:auto;padding-top:14px;}

/* ============================================================
   10. AVIS
   ============================================================ */
.avis__entete{display:flex;align-items:center;justify-content:center;gap:34px;margin-bottom:8px;}
.avis__entete img{height:96px;width:auto;}
.avis__note{text-align:center;font-size:13px;color:var(--texte-2);margin-bottom:34px;}
.avis__grille{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;}
.avis{text-align:center;}
.avis__etoiles{color:#ffa000;font-size:14px;letter-spacing:2px;margin-bottom:10px;}
.avis h4{font-size:14px;margin-bottom:8px;}
.avis p{font-size:13px;color:var(--texte-2);margin-bottom:10px;}
.avis__auteur{font-size:12.5px;color:var(--petrole);font-weight:500;}
.avis__lien{text-align:center;margin-top:28px;font-weight:700;font-size:13.5px;}

/* ============================================================
   11. CTA FINAL
   ============================================================ */
.cta{position:relative;}
.cta__inner{display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:end;}
.cta__portrait{align-self:end;line-height:0;}
.cta__portrait img{width:260px;height:290px;object-fit:contain;object-position:bottom;}
.cta__contenu{text-align:center;padding:10px 0 64px;}
.cta__contenu h2{font-size:30px;margin-bottom:16px;}
.cta__tel{font-size:16px;color:var(--petrole);font-weight:700;}
.cta__mail{display:block;font-size:14px;margin:6px 0 22px;}
.cta__boutons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

/* ============================================================
   12. FOOTER
   ============================================================ */
.pied{background:var(--petrole);color:rgba(255,255,255,.82);}
.pied__grille{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:40px;padding:64px 0 52px;}
.pied h4{color:var(--blanc);font-size:14px;margin-bottom:16px;}
.pied a{color:rgba(255,255,255,.82);font-size:13.5px;}
.pied a:hover{color:var(--vert);}
.pied p,.pied li{font-size:13.5px;margin-bottom:8px;list-style:none;}
.pied ul{list-style:none;margin:0;padding:0;}
.pied__logo{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.pied__logo img{width:56px;height:56px;border-radius:50%;}
.pied__nl{display:flex;gap:8px;margin-top:12px;}
.pied__nl input{flex:1;padding:11px 16px;border:0;border-radius:var(--pilule);font-family:inherit;font-size:13px;}
.pied__bas{background:var(--vert);color:var(--petrole);}
.pied__bas .conteneur{display:flex;justify-content:space-between;align-items:center;
  gap:16px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;font-size:12.5px;}
.pied__bas a{color:var(--petrole);font-weight:500;}
.pied__bas a:hover{color:var(--blanc);}

/* ============================================================
   13. WHATSAPP
   ============================================================ */
.whatsapp{position:fixed;right:22px;bottom:22px;z-index:200;width:56px;height:56px;
  border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 14px rgba(0,0,0,.24);transition:transform var(--transition);}
.whatsapp:hover{transform:scale(1.06);background:#79bd00;}
.whatsapp svg{width:30px;height:30px;fill:#fff;}

/* ============================================================
   14. PAGE CONTACT
   ============================================================ */
@media(max-width:980px){.hero__portrait{clip-path:none;-webkit-clip-path:none;filter:none;}
  .hero__inner{grid-template-columns:1fr;min-height:auto;}
  .hero__visuel{min-height:420px;}
  .hero h1{font-size:38px;}
  .apropos__grille,.services__grille,.annexes,.contact__grille{grid-template-columns:1fr;gap:34px;}
  .cta__inner{grid-template-columns:1fr;}
  .cta__portrait{display:none;}
  .pied__grille{grid-template-columns:1fr 1fr;}
}
@media(max-width:768px){
  .section{padding:44px 0;}
  .section__titre{font-size:24px;}
  .cartes-services__grille,.engagements,.biens,.avis__grille{grid-template-columns:1fr;}
  .cartes-services{margin-top:-40px;}
  .entete__nav{display:none;}
  .entete__nav.ouvert{display:flex;position:absolute;top:72px;left:0;right:0;
    background:#fff;flex-direction:column;padding:18px 24px;gap:14px;box-shadow:var(--ombre);}
  .entete__burger{display:block;}
  .hero h1{font-size:32px;}
  .apropos h2{font-size:24px;}
  .apropos__stats{gap:34px;}
  .annexe__carte{margin:-32px 12px 0;}
  .contact__adresse{position:static;margin-top:-40px;max-width:none;}
}

/* --- Corrections de specificite --- */
.entete__nav ul,.entete__nav ol,.entete__nav .menu,.entete .menu{list-style:none !important;display:flex;align-items:center;gap:28px;margin:0;padding:0;}
.entete__nav li,.entete .menu li{list-style:none !important;margin:0;padding:0;}
.entete__nav li::marker{content:none;}
.entete__nav a.btn,.entete__nav a.entete__tel,.entete a.btn--petrole{color:#fff !important;}
.entete__logo img,.entete__logo .custom-logo,.custom-logo-link img{height:40px !important;width:auto !important;max-height:40px !important;display:block;}
.entete__logo,.custom-logo-link{display:inline-flex;align-items:center;line-height:0;}

.entete__nav a.btn,.entete__nav a.entete__tel{padding:12px 26px !important;line-height:1;}

/* --- Icones --- */
.ico{display:inline-block;vertical-align:-2px;flex:0 0 auto;}
.btn .ico,.pilule .ico{margin-right:0;}
.bien__lien,.avis__lien a{display:inline-flex;align-items:center;gap:7px;}
.cta__tel a,.cta__mail{display:inline-flex;align-items:center;gap:8px;justify-content:center;}
.contact__bloc h4{display:flex;align-items:center;gap:7px;}
.entete__nav a.btn,.entete__nav a.entete__tel{padding:9px 20px !important;font-size:13px !important;gap:8px;}

@media(max-width:980px){.hero__inner{grid-template-columns:1fr;gap:40px;padding:56px 20px 96px;}.hero__visuel{justify-self:start;margin-top:8px;}.hero__titre{font-size:38px;}.hero__sous{font-size:17px;}}
@media(max-width:560px){.hero__visuel{width:300px;height:300px;}.hero__portrait{width:292px;height:330px;top:-36px;clip-path:path('M 0 0 H 292 V 186 H 296 A 150 150 0 0 1 -4 186 H 0 Z');}.hero__pastille{width:78px;height:78px;}.hero__titre{font-size:32px;}}

/* ===== AVIS + CTA (valeurs exactes de la maquette) ===== */
.avis-sec{background:#f6f6f6;}
.avis-sec__in{max-width:1200px;margin:0 auto;padding:96px 24px;}
.avis-sec__entete{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:960px;margin:0 auto;}
.avis-sec__entete img{height:96px;width:auto;display:block;}
.avis-sec__titre{text-align:center;}
.avis-sec__titre h2{font-size:32px;font-weight:700;color:#064650;margin:0 0 10px;}
.avis-sec__titre span{font-size:14px;color:#333;}
.avis-sec__grille{display:grid;grid-template-columns:repeat(3,1fr);gap:56px;margin-top:56px;align-items:start;}
.avis-c{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;}
.avis-c__etoiles{color:#ffa000;letter-spacing:2px;line-height:1;font-size:14px;}
.avis-c h3{font-size:15px;font-weight:700;color:#064650;margin:0;}
.avis-c p{font-size:13.5px;line-height:1.7;color:#6f6f6f;margin:0;}
.avis-c__auteur{font-size:13px;font-weight:700;color:#064650;}
.avis-sec__lien{text-align:center;margin-top:32px;}
.avis-sec__lien a{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:700;color:#76b900;text-decoration:none;}
.avis-sec__lien a:hover{color:#064650;}

.cta-sec{max-width:1200px;margin:0 auto;padding:24px 24px 0;display:grid;grid-template-columns:auto 1fr auto;gap:44px;align-items:end;}
.cta-sec__portrait{width:260px;height:290px;object-fit:contain;object-position:center bottom;display:block;}
.cta-sec__espaceur{width:260px;display:block;}
.cta-sec__contenu{text-align:center;padding-bottom:64px;display:flex;flex-direction:column;align-items:center;gap:18px;}
.cta-sec__contenu h2{font-size:30px;font-weight:700;color:#064650;margin:0;}
.cta-sec__coord{display:flex;flex-direction:column;gap:8px;font-size:15px;}
.cta-sec__tel{color:#064650;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;}
.cta-sec__mail{color:#76b900;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;}
.cta-sec__tel .ico,.cta-sec__mail .ico{color:#87d300;}
.cta-sec__boutons{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;}
.hero__btn--petrole{background:#064650;color:#fff;}
.hero__btn--petrole:hover{background:#053a42;color:#fff;}
@media(max-width:980px){.cta-sec{grid-template-columns:1fr;gap:0;}.cta-sec__portrait,.cta-sec__espaceur{display:none;}.avis-sec__grille{grid-template-columns:1fr;gap:40px;}.avis-sec__entete{flex-direction:column;}.avis-sec__in{padding:56px 20px;}}

/* ===== PAGE CONTACT (valeurs exactes de la maquette) ===== */
.ct-haut{max-width:1200px;margin:0 auto;padding:72px 24px 96px;display:grid;grid-template-columns:1fr 1.05fr;gap:72px;align-items:start;}
.ct-infos{display:flex;flex-direction:column;gap:20px;}
.ct-surtitre{font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#76b900;}
.ct-haut h1{font-size:44px;font-weight:700;color:#064650;margin:0;line-height:1.1;}
.ct-intro{font-size:15px;line-height:1.7;color:#333;margin:0;max-width:46ch;}
.ct-grille{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:16px;}
.ct-bloc{border-top:2px solid #87d300;padding-top:14px;}
.ct-bloc__lbl{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#6f6f6f;margin-bottom:8px;}
.ct-bloc a,.ct-bloc__val{font-size:15px;font-weight:700;color:#064650;text-decoration:none;display:block;}
.ct-bloc a:hover{color:#76b900;}
.ct-mail{word-break:break-all;}
.ct-social{display:flex;gap:14px;margin-top:10px;}
.ct-social a{width:40px;height:40px;border-radius:50%;border:1.5px solid #064650;color:#064650;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:.2s;}
.ct-social a:hover{background:#064650;color:#fff;}
.ct-form{background:#f6f6f6;border-radius:16px;padding:36px 38px;}
.ct-form form{display:flex;flex-direction:column;gap:18px;}
.ct-form__duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.ct-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#333;}
.ct-form input[type=text],.ct-form input[type=tel],.ct-form input[type=email]{font-size:13px;color:#333;outline:none;box-sizing:border-box;width:100%;border:1px solid #e0e0e0;border-radius:999px;background:#fff;padding:8px 14px;font-family:inherit;}
.ct-form textarea{font-size:13px;color:#333;outline:none;box-sizing:border-box;width:100%;border:1px solid #e0e0e0;border-radius:14px;background:#fff;padding:8px 14px;resize:vertical;font-family:inherit;}
.ct-form input:focus,.ct-form textarea:focus{border-color:#87d300;}
.ct-envoi{width:100%;background:#87d300;color:#fff;border:none;border-radius:999px;font-size:15px;font-weight:500;padding:12px 28px;cursor:pointer;font-family:inherit;transition:.2s;}
.ct-envoi:hover{background:#79bd00;}
.ct-rgpd{font-size:11px;color:#9a9a9a;margin:0;text-align:center;}
.ct-hp{position:absolute;left:-9999px;}
.ct-msg{border-radius:12px;padding:14px 18px;margin:0 0 18px;font-size:13.5px;}
.ct-msg--ok{background:#e8f5d0;color:#3d5a00;}
.ct-msg--ko{background:#fde8e8;color:#8a1f1f;}
.ct-carte{max-width:1200px;margin:0 auto;padding:0 24px 96px;}
.ct-carte__wrap{position:relative;}
.ct-carte__wrap img{width:100%;height:380px;object-fit:cover;border-radius:16px;display:block;}
.ct-carte__encart{position:absolute;left:24px;bottom:24px;background:#fff;border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.18);padding:20px 24px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.ct-carte__rue{font-size:14px;font-weight:700;color:#064650;}
.ct-carte__ville{font-size:13px;color:#6f6f6f;}
.ct-carte__btn{background:#064650;color:#fff;border-radius:999px;font-size:12px;font-weight:500;padding:7px 16px;text-decoration:none;display:inline-flex;align-items:center;white-space:nowrap;}
.ct-carte__btn:hover{background:#053a42;color:#fff;}
@media(max-width:900px){.ct-haut{grid-template-columns:1fr;gap:40px;padding:48px 20px 64px;}.ct-haut h1{font-size:32px;}.ct-form{padding:26px 22px;}.ct-carte__encart{position:static;margin-top:-40px;margin-left:16px;margin-right:16px;}.ct-carte{padding:0 20px 64px;}}
@media(max-width:560px){.ct-grille,.ct-form__duo{grid-template-columns:1fr;}}

/* ===== Carte Google Maps teintee 3G IMMO ===== */
.ct-carte__wrap{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(6,70,80,.10);}
.ct-carte__map{width:100%;height:380px;border:0;display:block;filter:grayscale(.30) sepia(.42) hue-rotate(38deg) saturate(1.55) contrast(.95) brightness(1.04);}
.ct-carte__wrap::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(135,211,0,.10) 0%,rgba(135,211,0,0) 32%,rgba(135,211,0,.16) 100%);box-shadow:inset 0 0 0 1px rgba(135,211,0,.30);border-radius:16px;}
.ct-carte__encart{z-index:2;}
@media(max-width:900px){.ct-carte__map{height:320px;}}

/* ===== Bulle WhatsApp : vert 3G IMMO (valeurs maquette) ===== */
.whatsapp{background:#87d300 !important;right:24px !important;bottom:24px !important;width:56px !important;height:56px !important;border-radius:50% !important;box-shadow:0 6px 20px rgba(0,0,0,.25) !important;}
.whatsapp svg{fill:#fff !important;width:28px;height:28px;}
.whatsapp:hover{background:#79bd00 !important;transform:scale(1.06);}

.entete__logo{display:inline-flex;align-items:center;line-height:0;}


/* === Badges biens (statut + mandat) === */
.bien .ratio43{position:relative;}
.bien__badges{position:absolute;top:12px;left:12px;z-index:3;display:flex;flex-direction:column;gap:8px;align-items:flex-start;}
.bien__badge{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:6px 14px;border-radius:999px;box-shadow:0 2px 6px rgba(0,0,0,.18);white-space:nowrap;}
.bien__badge--excl{background:#87d300;color:#064650;}
.bien__badge--compromis{background:#e63946;color:#fff;}
.bien__badge--vendu{background:#6f6f6f;color:#fff;}
.bien__prix{font-size:20px;font-weight:700;color:#87d300;margin-bottom:4px;}
.bien__ville{font-size:13px;color:#6f6f6f;margin-bottom:10px;}
