/* Lux186 World — Survivors Around the Globe */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --gold:#d4af37;--gold-light:#f5d76e;--gold-deep:#9c7c1e;
  --purple-deep:#1a0b2e;--purple:#2d1b4e;--black:#0a0612;
  --cream:#f3ead7;--muted:#c9bfa8;--crimson:#7a1f2b;
}
html{scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--cream);line-height:1.65;min-height:100vh;
  background:
    radial-gradient(1200px 600px at 50% -10%, rgba(120,60,200,.28), transparent 60%),
    linear-gradient(180deg,var(--black) 0%,var(--purple-deep) 55%,var(--black) 100%);
  padding-bottom:3rem;
}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--gold-light);line-height:1.3}
a{color:var(--gold-light)}

/* Pinned crisis banner */
.crisis-banner{
  position:sticky;top:0;z-index:1000;
  background:linear-gradient(180deg,#8e2432,var(--crimson));
  color:#fff;text-align:center;font-size:.85rem;font-weight:600;
  padding:.55rem 3.2rem .55rem .8rem;line-height:1.5;
  box-shadow:0 2px 12px rgba(0,0,0,.5);
}
.crisis-banner a{color:#fff;font-weight:700;text-decoration:underline}

/* Safe exit — always visible */
.safe-exit{
  position:fixed;top:.45rem;right:.6rem;z-index:1100;
  background:var(--gold);color:#1a0b2e;font-weight:800;font-size:.8rem;
  border:none;border-radius:8px;padding:.45rem .7rem;cursor:pointer;
  text-decoration:none;box-shadow:0 2px 10px rgba(0,0,0,.5);
}
.safe-exit small{display:block;font-weight:400;font-size:.58rem;max-width:130px;line-height:1.3;margin-top:.15rem}

/* Layout */
.wrap{max-width:860px;margin:0 auto;padding:1.2rem 1rem}
.hero{text-align:center;padding:2.2rem 1rem 1.4rem}
.hero h1{font-size:2.1rem;margin-bottom:.6rem;letter-spacing:.02em}
.hero .sub{color:var(--muted);font-size:1rem;max-width:620px;margin:0 auto}
.gold-rule{height:2px;width:120px;margin:1.2rem auto;
  background:linear-gradient(90deg,transparent,var(--gold),transparent)}

.card{
  background:rgba(45,27,78,.55);border:1px solid rgba(212,175,55,.35);
  border-radius:14px;padding:1.2rem 1.1rem;margin:1rem 0;
  box-shadow:0 4px 18px rgba(0,0,0,.35);
}
.card h2{font-size:1.35rem;margin-bottom:.5rem}
.card p{margin:.55rem 0}
.signoff{color:var(--gold-light);font-weight:700}

.voice-label{font-size:.8rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem}
audio{width:100%;margin:.8rem 0;filter:sepia(.25) saturate(1.4)}

/* Counter */
.counter-card{text-align:center}
.wall-counter{padding:1.2rem 0 .4rem}
.wall-count{font-family:Georgia,serif;font-size:3.2rem;color:var(--gold-light);font-weight:700}
.wall-count-label{color:var(--muted);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}
@keyframes pulse{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}
.pulse{animation:pulse .45s ease}
.fine-print{font-size:.78rem;color:var(--muted);margin-top:.6rem}

/* Map */
#worldmap{
  height:60vh;min-height:380px;border-radius:12px;margin-top:.8rem;
  border:1px solid rgba(212,175,55,.4);background:#0a0612;z-index:1;
}
.leaflet-container{font-family:inherit}
.heart-pin-wrap{background:transparent;border:none}
.heart-pin{
  font-size:26px;line-height:1;text-align:center;
  filter:drop-shadow(0 0 6px rgba(212,175,55,.9));
  animation:pin-drop .5s ease;
}
@keyframes pin-drop{0%{transform:scale(0)}60%{transform:scale(1.35)}100%{transform:scale(1)}}
.leaflet-popup-content-wrapper{background:var(--purple-deep);color:var(--cream);border:1px solid var(--gold)}
.leaflet-popup-content{font-size:.9rem;line-height:1.5;margin:.7rem .9rem}
.leaflet-popup-tip{background:var(--purple-deep);border:1px solid var(--gold)}

/* Drop form */
.field-label{display:block;font-size:.82rem;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:.9rem 0 .35rem}
.country-select{
  width:100%;padding:.8rem;border-radius:10px;font-size:1rem;
  border:1px solid rgba(212,175,55,.4);background:rgba(10,6,18,.7);color:var(--cream);
  font-family:inherit;
}
.country-select option{background:#1a0b2e;color:var(--cream)}
.btn{
  display:inline-block;background:linear-gradient(180deg,var(--gold-light),var(--gold));
  color:#1a0b2e;font-weight:800;text-decoration:none;border:none;cursor:pointer;
  padding:.85rem 1.8rem;border-radius:12px;font-size:1.05rem;margin-top:1rem;
  box-shadow:0 4px 16px rgba(212,175,55,.35);
}
.btn:active{transform:scale(.97)}
.btn-block{display:block;text-align:center;width:100%}
.drop-note{min-height:1.6em;color:var(--gold-light);font-weight:600;margin-top:.7rem}

footer{text-align:center;color:var(--muted);font-size:.8rem;padding:2rem 1rem 1rem}
footer a{color:var(--gold-light)}

/* Darken OSM tiles to match Lux186 brand (no API key needed) */
.leaflet-tile-pane{filter:brightness(.55) saturate(.7) hue-rotate(-15deg)}
