
body.linnaeus-body { font-family:'Inter',-apple-system,BlinkMacSystemFont,Arial,sans-serif; background:#fff; color:#222; overflow-x:hidden; }
.lin-header{display:none;}
.lin-logo{height:40px;}

/* HERO */
.hero-video-wrap{position:relative;width:100%;height:75vh;min-height:480px;overflow:hidden;}
.hero-video{width:100%;height:100%;object-fit:cover;display:block;}
.hero-video-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.55),rgba(0,50,100,.35));}
.hero-content{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:960px;width:100%;}
.hero-card{background:#ffffffee;border-radius:16px;padding:24px 28px;}
.hero-card h1{font-size:clamp(1.4rem,3vw,2.4rem);}

/* MAP & OVERLAYS */
.map-wrap{position:relative;width:100%;height:88vh;min-height:600px;margin:0;}
#map{width:100%;height:100%;}
.map-overlay{position:absolute;z-index:500;}
.overlay-left{top:24px;left:24px;width:320px;max-width:92vw;}
.overlay-right{top:24px;right:24px;width:340px;max-width:92vw;}
.overlay-card{background:#fff;border-radius:14px;padding:16px 18px;box-shadow:0 10px 30px rgba(0,0,0,.12);font-size:.9rem;}

.overlay-right .overlay-card{max-height:70vh;display:flex;flex-direction:column;}
.overlay-list{overflow-y:auto;}
.overlay-right .overlay-list{flex:1;max-height:calc(70vh - 46px);}

/* LIST CARDS */
.overlay-right .card{border:none;border-radius:10px;padding:10px 12px;margin-bottom:8px;background:#f7f7f7;font-size:.85rem;}
.overlay-right .card__title{font-size:.95rem;font-weight:600;margin-bottom:2px;}
.overlay-right .card__meta,
.overlay-right .card__addr,
.overlay-right .card__tags,
.overlay-right .card__sources{font-size:.8rem;}
.overlay-right .card__actions{margin-top:6px;}
.overlay-right .card__actions .btn{font-size:.75rem;padding:3px 6px;}
.overlay-right .card:hover{background:#ececec;}

@media(max-width:992px){
  .hero-video-wrap{height:58vh;}
  .map-wrap{height:auto;}
  #map{height:72vh;}
  .overlay-left,.overlay-right{position:static;width:100%;max-width:100%;margin:12px 16px;}
  .overlay-right .overlay-card{max-height:50vh;}
  .overlay-right .overlay-list{max-height:calc(50vh - 46px);}
}
@media(max-width:768px){
  .overlay-left,.overlay-right{margin:10px 12px;}
}

/* SUGGEST OVERLAY */
.suggest-overlay{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.7);
}
.suggest-overlay.is-visible{display:flex;}

.suggest-card{
  background:#fff;
  color:#222;
  width:640px;
  max-width:95vw;
  border-radius:16px;
  padding:22px 24px;
  box-shadow:0 20px 45px rgba(0,0,0,.4);
}

/* tydelige felter i indberet-boksen */
.suggest-card input,
.suggest-card textarea,
.suggest-card select{
  font-size:.9rem;
  border:1px solid #d0d0d0;
  border-radius:4px;
  background:#ffffff;
}

@media(max-width:992px){
  .suggest-card{width:100%;margin:0 12px;padding:18px 18px;}
}


/* --- Linnaeus override: sørg for at type-knapperne ligger pænt inde i boksen --- */
.overlay-card{
  overflow:visible;
}

.overlay-card .btn-group.w-100{
  width:auto;
  display:inline-flex;
  border-radius:999px;
  overflow:hidden;
  margin:0 12px; /* lidt luft til kanten */
}

.overlay-card .btn-group.w-100 .btn{
  padding:4px 8px;
  font-size:0.85rem;
  white-space:nowrap;
}

/* --- Linnaeus: flow/spacing fixes (no overlap, no weird wrapping) --- */

/* Give the left search card a cleaner vertical rhythm */
.overlay-left .overlay-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

/* Type buttons: keep them readable and intentional */
.overlay-left .overlay-card .btn-group.w-100{
  width:100% !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  border-radius:999px;
  overflow:hidden;
  margin:0;
}
.overlay-left .overlay-card .btn-group.w-100 .btn{
  flex:1 1 0;
  white-space:nowrap;
  padding:6px 10px;
  font-size:0.9rem;
}

/* On very small widths, stack the buttons instead of “random wrap” */
@media (max-width: 420px){
  .overlay-left .overlay-card .btn-group.w-100{
    flex-direction:column;
    gap:10px;
    overflow:visible;
    background:transparent;
  }
  .overlay-left .overlay-card .btn-group.w-100 .btn{
    border-radius:999px !important;
    flex:none;
    width:100%;
  }
}
