/* Relooking moderne - style épuré. Couleurs pilotées par --accent (config/site.php) */
:root{
  --accent:#FF6E15; --accent-dark:#E0570A;
  --ink:#222; --muted:#717171; --line:#ebebeb; --bg-soft:#f7f7f7;
  --radius:16px; --shadow:0 6px 24px rgba(0,0,0,.08);
}
body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--accent)}
.container{max-width:1240px}
.btn{border-radius:12px;font-weight:600}
.btn-accent,.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-accent:hover,.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.btn-ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}
.btn-ghost:hover{box-shadow:var(--shadow);color:var(--ink)}

/* Navbar */
.mh-nav{position:sticky;top:0;z-index:1030;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:.6rem 0}
.mh-nav .navbar-brand img{height:44px;width:auto}
.mh-nav .nav-link{color:var(--ink);font-weight:500;padding:.5rem 1rem;border-radius:999px}
.mh-nav .nav-link:hover,.mh-nav .nav-link.active{background:var(--bg-soft);color:var(--ink)}
.mh-nav .navbar-toggler{border:1px solid var(--line);border-radius:12px}

/* Bandeau slider */
.mh-banner{margin:1rem auto 0}
.mh-banner .slider{border-radius:var(--radius);overflow:hidden}
.mh-banner .slider img{width:100%;max-height:420px;object-fit:cover;display:block}

/* Hero + recherche */
.mh-hero{padding:3rem 0 1.5rem;text-align:center}
.mh-hero h1{font-weight:800;letter-spacing:-.02em;font-size:clamp(1.8rem,4vw,3rem);margin-bottom:.5rem}
.mh-hero p{color:var(--muted);font-size:1.1rem;margin-bottom:2rem}
.mh-search{display:flex;align-items:stretch;max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow);padding:.4rem}
.mh-search .field{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:left;padding:.55rem 1.4rem;border-radius:999px;min-width:0}
.mh-search .field:hover{background:var(--bg-soft)}
.mh-search .field+.field{border-left:1px solid var(--line)}
.mh-search label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0}
.mh-search select,.mh-search input{border:0;background:transparent;padding:0;font-size:.95rem;color:var(--ink);width:100%;outline:0;box-shadow:none}
.mh-search select:focus,.mh-search input:focus{box-shadow:none}
.mh-search .go{border:0;background:var(--accent);color:#fff;border-radius:999px;padding:0 1.6rem;font-weight:700;display:flex;align-items:center;gap:.4rem;transition:background .15s}
.mh-search .go:hover{background:var(--accent-dark)}
@media(max-width:820px){
  .mh-search{flex-direction:column;border-radius:var(--radius);padding:.5rem}
  .mh-search .field{border-radius:12px;padding:.7rem 1rem}
  .mh-search .field+.field{border-left:0;border-top:1px solid var(--line)}
  .mh-search .go{justify-content:center;padding:.9rem;margin-top:.4rem;border-radius:12px}
}

/* Titres de section */
.mh-section{padding:2.5rem 0}
.mh-section h2{font-weight:700;font-size:1.6rem;letter-spacing:-.01em;margin-bottom:1.5rem}

/* Carte logement */
.mh-card{display:block;color:var(--ink)}
.mh-card .thumb{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;background:var(--bg-soft)}
.mh-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.mh-card:hover .thumb img{transform:scale(1.05)}
.mh-card .badge-price{position:absolute;left:12px;bottom:12px;background:#fff;color:var(--ink);font-weight:700;font-size:.9rem;padding:.3rem .7rem;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.mh-card .loc{font-weight:600;margin:.8rem 0 .1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mh-card .ttl{color:var(--muted);font-size:.93rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mh-card .meta{color:var(--muted);font-size:.88rem;margin-top:.2rem}
.mh-card .price{margin-top:.35rem}
.mh-card .price b{font-weight:700}

/* Publicités et partenaires */
.mh-tile{display:block;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;height:100%;transition:box-shadow .2s,transform .2s}
.mh-tile:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.mh-tile img{width:100%;display:block}
.mh-tile .body{padding:.9rem 1rem;font-weight:600}
.property-slider .item{padding:0 .5rem}

/* Pied de page */
.mh-footer{background:var(--bg-soft);border-top:1px solid var(--line);padding:3rem 0 1rem;margin-top:3rem;color:var(--muted)}
.mh-footer h6{color:var(--ink);font-weight:700;margin-bottom:1rem}
.mh-footer a{color:var(--muted)}
.mh-footer a:hover{color:var(--accent)}
.mh-footer ul{padding:0;list-style:none}
.mh-footer li{margin-bottom:.55rem}
.mh-footer .social a{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:50%;margin-right:.5rem;color:var(--ink)}
.mh-footer .social a:hover{color:#fff;background:var(--accent);border-color:var(--accent)}
.mh-footer .bottom{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.2rem;font-size:.9rem;text-align:center}

/* Le menu reste collé en haut même quand on descend (le <header> d'origine l'en empêchait) */
header.header-bg{display:contents}

/* Pied de page : le CSS d'origine force les liens en blanc (invisibles sur fond clair) */
footer.mh-footer ul li a,
footer.mh-footer .emailto,
footer.mh-footer .tel{color:var(--muted)!important;text-decoration:none}
footer.mh-footer ul li a:hover,
footer.mh-footer .emailto:hover,
footer.mh-footer .tel:hover{color:var(--accent)!important;text-decoration:underline}
