
  .rdm-scope {
    --rdm-nuit: #0B2F5B;      /* marine du site */
    --rdm-nuit-2: #123E72;
    --rdm-lac: #4A7FA5;       /* bleu du site */
    --rdm-braise: #F0A43A;    /* lumière du feu et du coucher de soleil */
    --rdm-braise-2: #F6B95E;
    --rdm-neige: #EEF3F7;
    --rdm-brume: #B9CBDD;
    --rdm-erreur: #FFB4A8;
  }
  .rdm-scope *, .rdm-scope *::before, .rdm-scope *::after { box-sizing: border-box; }

  .rdm-backdrop {
    position: fixed; inset: 0; z-index: 9999;
    display: grid; place-items: center;
    padding: 16px;
    background: rgba(6, 22, 43, .62);
    opacity: 0; transition: opacity .35s ease;
  }
  .rdm-backdrop[hidden] { display: none !important; }
  .rdm-backdrop.rdm-ouvert { opacity: 1; }

  .rdm-carte {
    position: relative;
    width: min(440px, 100%);
    max-height: calc(100vh - 32px);
    overflow: auto;
    background: var(--rdm-nuit);
    color: var(--rdm-neige);
    border-radius: 14px;
    box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .55);
    font-family: "Nunito Sans", "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
    transform: translateY(18px); transition: transform .45s cubic-bezier(.2, .8, .2, 1);
  }
  .rdm-ouvert .rdm-carte { transform: none; }

  /* Photo + crête de montagne : l'élément signature */
  .rdm-photo {
    position: relative;
    height: 240px;
    /* INTÉGRATEUR : téléverser refuge-hiver-popup.jpg dans Wix et remplacer ce lien par l'URL Wix */
    background: #3a4a66 url("/assets/refuge-hiver-popup.jpg") center bottom / cover no-repeat;
  }
  .rdm-crete {
    position: absolute; left: 0; right: 0; bottom: -1px;
    width: 100%; height: 64px; display: block;
  }
  .rdm-crete path { fill: var(--rdm-nuit); }

  .rdm-fermer {
    position: absolute; top: 10px; right: 10px;
    width: 38px; height: 38px; border-radius: 50%;
    border: 0; cursor: pointer;
    background: rgba(11, 47, 91, .72); color: #fff;
    display: grid; place-items: center;
    transition: background .2s;
  }
  .rdm-fermer:hover { background: var(--rdm-nuit); }
  .rdm-fermer svg { width: 16px; height: 16px; }

  .rdm-corps { padding: 6px 30px 26px; }

  .rdm-titre {
    margin: 0 0 10px;
    font-family: "Secular One", "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 2.15rem; line-height: 1.05;
    letter-spacing: -.01em;
    color: #fff;
  }
  .rdm-texte {
    margin: 0 0 20px;
    font-size: 1rem; line-height: 1.5;
    color: var(--rdm-brume);
    max-width: 34ch;
  }

  .rdm-form { margin: 0; }
  .rdm-label {
    display: block; margin-bottom: 6px;
    font-size: .85rem; font-weight: 700; color: var(--rdm-neige);
  }
  .rdm-rangee { display: flex; gap: 8px; }
  .rdm-champ {
    flex: 1; min-width: 0;
    height: 48px; padding: 0 14px;
    border-radius: 8px;
    border: 1.5px solid transparent;
    background: #fff; color: var(--rdm-nuit);
    font: inherit; font-size: 1rem;
  }
  .rdm-champ::placeholder { color: #8293A6; }
  .rdm-champ[aria-invalid="true"] { border-color: var(--rdm-erreur); }

  .rdm-bouton {
    height: 48px; padding: 0 20px;
    border: 0; border-radius: 8px; cursor: pointer;
    background: var(--rdm-braise); color: var(--rdm-nuit);
    font: inherit; font-weight: 700; font-size: 1rem;
    white-space: nowrap;
    transition: background .2s, transform .1s;
  }
  .rdm-bouton:hover { background: var(--rdm-braise-2); }
  .rdm-bouton:active { transform: translateY(1px); }
  .rdm-bouton[disabled] { opacity: .7; cursor: wait; }

  .rdm-champ:focus-visible,
  .rdm-bouton:focus-visible,
  .rdm-fermer:focus-visible,
  .rdm-nonmerci:focus-visible {
    outline: 3px solid var(--rdm-braise-2);
    outline-offset: 2px;
  }

  .rdm-erreur-msg {
    margin: 8px 0 0; min-height: 1.2em;
    font-size: .85rem; color: var(--rdm-erreur);
  }
  .rdm-petit {
    margin: 4px 0 0;
    font-size: .8rem; line-height: 1.45; color: #8FA6BF;
  }
  .rdm-nonmerci {
    display: inline-block; margin-top: 14px;
    background: none; border: 0; padding: 0; cursor: pointer;
    font: inherit; font-size: .85rem; color: var(--rdm-brume);
    text-decoration: underline; text-underline-offset: 3px;
  }
  .rdm-nonmerci:hover { color: #fff; }

  /* Confirmation */
  .rdm-merci[hidden] { display: none; }
  .rdm-merci .rdm-titre { font-size: 1.9rem; }
  .rdm-merci .rdm-titre:focus { outline: none; }

  @media (max-width: 480px) {
    .rdm-photo { height: 190px; }
    .rdm-corps { padding: 4px 20px 22px; }
    .rdm-titre { font-size: 1.85rem; }
    .rdm-rangee { flex-direction: column; }
    .rdm-champ { flex: none; width: 100%; }
    .rdm-bouton { width: 100%; }
  }

  @media (prefers-reduced-motion: reduce) {
    .rdm-backdrop, .rdm-carte { transition: none; }
  }

/* Native modal isolates keyboard focus and keeps the page behind it inert. */
dialog.rdm-scope{border:0;padding:0;margin:auto;width:min(440px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);border-radius:14px;background:#0B2F5B;overflow:auto;color:#EEF3F7;box-shadow:0 30px 80px -20px #0009}
dialog.rdm-scope::backdrop{background:rgba(6,22,43,.62);backdrop-filter:blur(3px)}
.rdm-scope .rdm-carte{width:100%;max-height:none;overflow:visible;transform:none;box-shadow:none}
.rdm-scope [hidden]{display:none!important}.rdm-scope .rdm-crete{max-width:none}
.rdm-scope .rdm-petit{color:#B9CBDD}.rdm-petit a,.rdm-fallback a{color:inherit;text-decoration:underline}
.rdm-scope .rdm-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.rdm-fallback{font-size:13px;line-height:1.5;color:#B9CBDD;margin-top:10px}
html:has(dialog.rdm-scope[open]){overflow:hidden}
body[data-page=refuges] .page-heading{padding:30px 0 18px;background:white}
body[data-page=refuges] .page-heading .wrap{display:flex;align-items:baseline;gap:12px 28px;flex-wrap:wrap}
body[data-page=refuges] .page-heading h1{font-size:36px;line-height:1.15;margin:0}
body[data-page=refuges] .page-heading p{margin:0;font-size:18px}
body[data-page=refuges] #les-refuges{padding-top:8px}
body[data-page=refuges] #les-refuges .filters{margin-top:0;margin-bottom:24px}
@media(max-width:600px){body[data-page=refuges] .page-heading{padding:24px 0 16px}body[data-page=refuges] .page-heading .wrap{gap:6px}body[data-page=refuges] .page-heading h1{font-size:30px}body[data-page=refuges] .page-heading p{font-size:16px}.rdm-photo{height:180px}.rdm-titre{font-size:1.85rem}}
@media(max-height:650px){.rdm-photo{height:140px}.rdm-corps{padding-bottom:18px}.rdm-texte{margin-bottom:12px}}
