/* HI MOU PROM — pages de fiches (résidences et appartements), 21/09/2026.
   Complète /css/site.css (variables de la charte, barre de navigation, pied de page, grille des disponibilités,
   boutons WhatsApp) : seules les mises en page propres aux fiches sont ici. */

.page-fiche{background:var(--bg)}
.fiche{max-width:1120px;margin:0 auto;padding:calc(68px + 1.4rem) 16px 3rem}
.fiche h1{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.12;color:var(--navy);margin:.2rem 0 .6rem}
.fiche h2{font-family:'Playfair Display',serif;font-weight:700;font-size:1.35rem;color:var(--navy);margin:0 0 1rem}

/* fil d'Ariane — c'est un <nav> (bonne sémantique), mais site.css fixe tout <nav> en haut de l'écran
   (règle écrite pour la barre principale) : on lui rend sa place dans la page. */
nav.fiche-fil{position:static;inset:auto;z-index:auto;background:none;backdrop-filter:none;border:0;padding:0;transition:none}
.fiche-fil{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted);margin-bottom:1.2rem}
.fiche-fil a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent}
.fiche-fil a:hover{color:var(--navy);border-bottom-color:var(--gold)}
.fiche-fil span[aria-current]{color:var(--navy);font-weight:600}
.fiche-fil-sep{color:var(--gold)}
/* « › » est un signe « miroir » : le navigateur le retourne déjà en arabe (plus de scaleX, qui le remettait à l'envers) */

/* en-tête de fiche */
.fiche-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:2rem;align-items:center;background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.8rem;box-shadow:var(--shadow)}
.fiche-sur{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.fiche-sous{font-size:1.02rem;color:var(--muted);margin-bottom:1rem;line-height:1.5}
.fiche-statut{display:inline-block;font-size:.8rem;font-weight:600;color:var(--navy);background:var(--gold3);border-radius:999px;padding:.3rem .8rem;margin:.2rem 0 .9rem}
.fiche-chapo{font-size:.95rem;line-height:1.6;color:var(--text);margin-bottom:1rem}
.fiche-hero-img{margin:0;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--bg2)}
.fiche-hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.fiche-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.4rem}
.fiche-actions .btn-wa-card{display:inline-flex;align-items:center;gap:.45rem}
.fiche-btn{display:inline-flex;align-items:center;padding:.62rem 1.05rem;border:1.5px solid var(--navy2);border-radius:8px;color:var(--navy);font-size:.82rem;font-weight:600;text-decoration:none;background:#fff}
.fiche-btn:hover{border-color:var(--gold);color:var(--navy2)}

/* blocs */
.fiche-bloc{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.5rem;margin-top:1.2rem}
.fiche-deux{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}

/* disponibilité d'un numéro, étage par étage */
.fiche-etages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.6rem}
.fiche-etages li{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.7rem .9rem;border-radius:10px;font-size:.88rem;border:1px solid var(--border)}
.fiche-etages li.libre{background:#EEF6E6;border-color:#B9DA9A}
.fiche-etages li.libre b{color:#3B6D11}
.fiche-etages li.pris{background:#FBEDEC;border-color:#EDBDB8}
.fiche-etages li.pris b{color:#A32D2D}
.fiche .dispo-maj{margin-top:.7rem}

/* surfaces */
.fiche-surfaces{width:100%;border-collapse:collapse;font-size:.92rem}
.fiche-surfaces th,.fiche-surfaces td{padding:.62rem .4rem;border-bottom:1px solid var(--border);text-align:start}
.fiche-surfaces td{text-align:end;font-variant-numeric:tabular-nums;font-weight:600;color:var(--navy)}
.fiche-surfaces th{font-weight:500}
.fiche-total th,.fiche-total td{border-bottom:none;border-top:2px solid var(--gold);font-weight:700;color:var(--navy)}

/* galeries */
.fiche-galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem}
.fiche-galerie figure{margin:0}
.fiche-galerie a{display:block;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:var(--bg2)}
.fiche-galerie img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.fiche-galerie a:hover img{transform:scale(1.03)}
.fiche-galerie figcaption{font-size:.78rem;color:var(--muted);margin-top:.35rem}

/* vidéos */
.fiche-video{margin:0}
.fiche-video video{width:100%;max-height:78vh;border-radius:12px;background:#000;display:block}
.fiche-video figcaption{font-size:.8rem;color:var(--muted);margin-top:.4rem}
.fiche-videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}

/* documents */
.fiche-docs{display:flex;flex-wrap:wrap;gap:.8rem}
.fiche-doc{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;border-radius:10px;background:var(--navy);color:var(--gold2);text-decoration:none;font-weight:600;font-size:.88rem}
.fiche-doc small{color:rgba(255,255,255,.6);font-weight:500}

/* aide au logement */
.fiche-aide{display:flex;gap:.9rem;align-items:flex-start;background:linear-gradient(135deg,#FFFBEF,#FDF3D6);border-color:var(--border-gold)}
.fiche-aide strong{display:block;color:var(--navy);margin-bottom:.2rem}
.fiche-aide p{font-size:.86rem;color:var(--muted);margin:0 0 .3rem}

/* cartes d'appartements */
.fiche-cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem}
.fiche-carte{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--text);background:#fff;transition:box-shadow .2s,transform .2s}
.fiche-carte:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
/* height:auto indispensable : l'attribut height de l'image (anti-saut de mise en page) primerait sinon sur le rapport */
.fiche-carte img,.fiche-carte-vide{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block;background:var(--bg2)}
.fiche-carte-vide{display:flex;align-items:center;justify-content:center;font-size:2.2rem}
.fiche-carte-texte{display:flex;flex-direction:column;gap:.2rem;padding:.8rem .9rem}
.fiche-carte-texte strong{color:var(--navy)}
.fiche-carte-texte span{font-size:.82rem;color:var(--muted)}
.fiche-carte-texte em{font-style:normal;font-size:.8rem;font-weight:600;color:var(--gold);margin-top:.2rem}
.fiche-carte-wa .fiche-carte-texte em{color:#1f9e55}

/* caractéristiques et atouts */
.fiche-specs{display:grid;grid-template-columns:1fr;gap:.1rem;margin:0}
.fiche-specs div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--border)}
.fiche-specs dt{color:var(--muted);font-size:.86rem}
.fiche-specs dd{margin:0;font-weight:600;color:var(--navy);font-size:.9rem;text-align:end}
.fiche-atouts{list-style:none;margin:0;padding:0}
.fiche-atouts li{position:relative;padding:.45rem 0 .45rem 1.3rem;font-size:.9rem;line-height:1.45}
.fiche-atouts li::before{content:'';position:absolute;left:0;top:.95rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--gold)}
html[dir="rtl"] .fiche-atouts li{padding:.45rem 1.3rem .45rem 0}
html[dir="rtl"] .fiche-atouts li::before{left:auto;right:0}

/* avancement du chantier */
.fiche-av{position:relative;display:flex;justify-content:space-between;padding:.55rem 0 .9rem;font-size:.88rem}
.fiche-av b{color:var(--navy)}
.fiche-av i{position:absolute;left:0;bottom:.3rem;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--gold),var(--gold2))}
.fiche-av::after{content:'';position:absolute;left:0;right:0;bottom:.3rem;height:5px;border-radius:3px;background:var(--bg2);z-index:-1}
html[dir="rtl"] .fiche-av i{left:auto;right:0}

/* offre et liens */
.fiche-offre{border-color:var(--border-gold);background:#FFFCF3}
.fiche-offre p{line-height:1.65;margin:0}
.fiche-lien-res,.fiche-preuve{margin-top:1rem;font-size:.9rem}
.fiche-lien-res a,.fiche-preuve a{color:var(--navy2);font-weight:600;text-decoration:none;border-bottom:1px solid var(--gold)}
.fiche-preuve{text-align:center;margin-top:1.6rem}
.fiche-envoyer{text-align:center;margin-top:1.8rem}
.fiche-envoyer a{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1.1rem;border-radius:999px;border:1.5px solid #25D366;color:#1a7f44;font-weight:600;font-size:.85rem;text-decoration:none;background:#fff}
.fiche-envoyer svg{fill:#25D366}

@media (max-width:820px){
  .fiche-hero,.fiche-deux{grid-template-columns:1fr}
  .fiche-hero{padding:1.2rem}
  .fiche-hero-img{order:-1}
  .fiche-bloc{padding:1.15rem}
}
