/* =====================================================
   KING'S DAVID HOME — main.css v4.0
   Classes dédiées kdh-*
   ===================================================== */

:root {
  --kdh-navy: #0A1628; --kdh-navy-light: #162542; --kdh-navy-dark: #050D1A;
  --kdh-gold: #C9A962; --kdh-gold-light: #E8C97A;
  --kdh-white: #FFFFFF; --kdh-gray: #ADB5BD;
  --kdh-border: rgba(201,169,98,.25);
}

/* ── HEADER ─────────────────────────────────────────── */
#kdh-header {
  position: fixed; top:0; left:0; right:0; z-index:1000;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 5%; height:75px;
  background:rgba(10,22,40,.97); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--kdh-border);
}
.kdh-logo { display:flex; align-items:center; text-decoration:none; flex-shrink:0; }
.kdh-logo img { height:55px; width:auto; display:block; }

/* ── NAV ────────────────────────────────────────────── */
.kdh-nav { display:flex; align-items:center; gap:2px; }

.kdh-link {
  color:var(--kdh-gray); text-decoration:none;
  padding:10px 12px; font-size:14px; font-weight:500;
  border-radius:6px; transition:all .25s; white-space:nowrap;
  font-family:'DM Sans',sans-serif;
}
.kdh-link:hover { color:var(--kdh-gold); background:rgba(201,169,98,.1); }

.kdh-cta {
  background:var(--kdh-gold); color:var(--kdh-navy);
  text-decoration:none; padding:10px 18px; font-size:14px; font-weight:600;
  border-radius:6px; transition:background .25s; white-space:nowrap;
  font-family:'DM Sans',sans-serif;
}
.kdh-cta:hover { background:var(--kdh-gold-light); }

/* ── DROPDOWN ───────────────────────────────────────── */
.kdh-dropdown { position:relative; display:inline-flex; align-items:center; }
.kdh-dropdown::after { content:''; position:absolute; top:100%; left:0; right:0; height:12px; }

.kdh-dropdown-menu {
  display:none; position:absolute;
  top:calc(100% + 8px); left:50%; transform:translateX(-50%);
  background:var(--kdh-navy-light); border:1px solid var(--kdh-border);
  border-radius:14px; padding:16px; z-index:1001;
  box-shadow:0 16px 48px rgba(0,0,0,.6);
  min-width:420px;
}
.kdh-dropdown:hover .kdh-dropdown-menu { display:block; }

/* Grille 3 colonnes */
.kdh-drop-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:8px 16px;
}
.kdh-drop-col { display:flex; flex-direction:column; }

.kdh-menu-label {
  font-size:10px; font-weight:800; text-transform:uppercase;
  letter-spacing:.1em; color:var(--kdh-gold);
  padding:6px 8px 4px; display:block;
}
.kdh-drop-col:not(:first-child) .kdh-menu-label:first-child {
  /* pas de border-top sur le premier label de chaque col */
}

.kdh-dropdown-menu a {
  display:block; padding:6px 8px; color:var(--kdh-gray);
  font-size:13px; border-radius:6px; text-decoration:none;
  transition:all .2s; white-space:nowrap;
  font-family:'DM Sans',sans-serif;
}
.kdh-dropdown-menu a:hover { color:var(--kdh-gold); background:rgba(201,169,98,.1); }

/* Footer dropdown */
.kdh-drop-footer {
  margin-top:12px; padding-top:10px;
  border-top:1px solid var(--kdh-border); text-align:center;
}
.kdh-drop-footer a {
  font-size:13px; font-weight:700; color:var(--kdh-gold) !important;
  text-align:center; justify-content:center;
}

/* ── LANG SWITCH ────────────────────────────────────── */
.kdh-lang {
  display:flex; gap:5px; margin-left:14px; padding-left:14px;
  border-left:1px solid var(--kdh-border);
}
.kdh-lang-btn {
  padding:7px 11px; font-size:13px; font-weight:600;
  border:1px solid var(--kdh-border); border-radius:6px;
  color:var(--kdh-gray); text-decoration:none; transition:all .2s;
  font-family:'DM Sans',sans-serif;
}
.kdh-lang-btn.active { background:var(--kdh-gold); color:var(--kdh-navy); border-color:var(--kdh-gold); }
.kdh-lang-btn:hover:not(.active) { border-color:var(--kdh-gold); color:var(--kdh-gold); }

/* ── MOBILE BUTTON ──────────────────────────────────── */
.kdh-mobile-btn {
  display:none; background:none; border:1px solid var(--kdh-border);
  color:var(--kdh-gold); font-size:20px; padding:8px 12px;
  border-radius:6px; cursor:pointer;
}

/* ── MOBILE ─────────────────────────────────────────── */
@media (max-width:900px) {
  .kdh-mobile-btn { display:block; }
  .kdh-nav {
    display:none; position:fixed; top:75px; left:0; right:0;
    background:var(--kdh-navy-light); flex-direction:column;
    align-items:flex-start; padding:16px; gap:4px;
    border-bottom:1px solid var(--kdh-border);
    box-shadow:0 10px 30px rgba(0,0,0,.6); z-index:999;
    max-height:calc(100vh - 75px); overflow-y:auto;
  }
  .kdh-nav.open { display:flex; }
  .kdh-link, .kdh-cta { width:100%; }
  .kdh-dropdown { width:100%; flex-direction:column; }
  .kdh-dropdown-menu {
    position:static; transform:none; box-shadow:none;
    min-width:auto; width:100%; padding:8px 0;
  }
  .kdh-drop-grid { grid-template-columns:1fr; }
  .kdh-lang { border-left:none; padding-left:0; margin-left:0; }
}

/* ── WHATSAPP ───────────────────────────────────────── */
#kdh-wa {
  position:fixed; bottom:24px; right:24px; z-index:9000;
  display:flex; align-items:center;
}
#kdh-wa .wa-bubble {
  width:56px; height:56px; background:#25d366; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 16px rgba(37,211,102,.4); transition:transform .2s;
}
#kdh-wa:hover .wa-bubble { transform:scale(1.1); }
#kdh-wa .wa-bubble svg { width:28px; height:28px; fill:#fff; }

/* ── COOKIE ─────────────────────────────────────────── */
#kdh-cookie-banner {
  position:fixed; bottom:0; left:0; right:0; z-index:10000;
  background:var(--kdh-navy-dark); color:var(--kdh-gray);
  border-top:1px solid var(--kdh-border);
  padding:16px 24px; display:flex;
  align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:12px; font-size:14px;
}
#kdh-cookie-banner a { color:var(--kdh-gold); text-decoration:underline; }
.kdh-cookie-btns { display:flex; gap:10px; }
.kdh-ca { background:var(--kdh-gold); color:var(--kdh-navy); border:none; padding:8px 20px; border-radius:6px; cursor:pointer; font-weight:600; }
.kdh-cd { background:transparent; color:var(--kdh-gray); border:1px solid var(--kdh-border); padding:8px 16px; border-radius:6px; cursor:pointer; }
