/* lynbro-gdpr cookie banner — dark luxury Datatilsynet-friendly.
 * Author: lynbro aps · lynbro.dk
 */
/* Dior/Chanel-style cookie banner — short, tight, button hierarchy:
 *   - Accept All = the action (gold-filled gradient, prominent)
 *   - Preferences / Reject = secondary text-only links
 */
#lynbro-gdpr-banner {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999;
  background: #1A0710;
  color: #F5EDE0;
  border-top: 1px solid rgba(176,138,76,0.45);
  font-family: 'Cormorant Garamond', Georgia, serif;
  box-shadow: 0 -8px 28px rgba(0,0,0,0.45);
  padding: 0.85rem 1.5rem;   /* was 1.25rem — -30% vertical */
}
#lynbro-gdpr-banner.is-visible { display: block; }
#lynbro-gdpr-banner[hidden] { display: none; }
#lynbro-gdpr-banner .lg-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr auto; gap: 1.25rem;
  align-items: center;
}
#lynbro-gdpr-banner .lg-title {
  margin: 0; font-family: 'Cinzel', Georgia, serif;
  font-size: 1rem; font-weight: 600; color: #B08A4C;
  letter-spacing: 0.05em;
  display: inline;            /* sit on same line as message */
}
#lynbro-gdpr-banner .lg-title + .lg-msg::before {
  content: ' — ';
  opacity: .55;
}
#lynbro-gdpr-banner .lg-msg {
  margin: 0; font-size: 0.88rem; line-height: 1.45;
  display: inline;            /* compact one-line layout */
}
#lynbro-gdpr-banner .lg-links {
  margin: 0.25rem 0 0; font-size: 0.78rem; color: rgba(176,138,76,0.85);
}
#lynbro-gdpr-banner .lg-links a {
  color: inherit; text-decoration: underline;
}
#lynbro-gdpr-banner .lg-actions {
  display: flex; align-items: center; gap: 1.1rem;
  justify-content: flex-end;
}
#lynbro-gdpr-banner .lg-btn {
  font-family: 'Cinzel', Georgia, serif;
  font-size: 0.78rem; font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase;
  cursor: pointer; transition: all .2s ease;
}
/* PRIMARY — Accept All (the real CTA, like Dior/Chanel) */
#lynbro-gdpr-banner .lg-btn-primary {
  background: linear-gradient(135deg, #C7A869, #E8D4A8);
  color: #1A0710;
  border: 1px solid #C7A869;
  border-radius: 2px;
  padding: 0.7rem 1.6rem;
  box-shadow: 0 2px 14px rgba(199,168,105,0.25);
}
#lynbro-gdpr-banner .lg-btn-primary:hover {
  background: linear-gradient(135deg, #E8D4A8, #F4E4DD);
  transform: translateY(-1px);
}
/* SECONDARY — Preferences + Reject styled as text links (no border, no chip) */
#lynbro-gdpr-banner .lg-btn-secondary {
  background: none;
  color: rgba(176,138,76,0.85);
  border: none;
  border-radius: 0;
  padding: 0.3rem 0;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(176,138,76,0.45);
}
#lynbro-gdpr-banner .lg-btn-secondary:hover {
  color: #E8D4A8;
  text-decoration-color: currentColor;
}
#lynbro-gdpr-banner .lg-prefs {
  display: flex; flex-direction: column; gap: 0.4rem;
  margin-top: 1rem; padding-top: 1rem;
  border-top: 1px solid rgba(176,138,76,0.3);
  font-size: 0.9rem;
}
#lynbro-gdpr-banner .lg-prefs[hidden] { display: none; }
#lynbro-gdpr-banner .lg-pref input {
  accent-color: #B08A4C; margin-right: 0.5rem;
}
#lynbro-gdpr-banner .lg-prefs .lg-btn {
  align-self: flex-end; margin-top: 0.5rem;
}

@media (max-width: 720px) {
  #lynbro-gdpr-banner .lg-inner { grid-template-columns: 1fr; }
  #lynbro-gdpr-banner .lg-actions { justify-content: stretch; }
  #lynbro-gdpr-banner .lg-btn { flex: 1 1 auto; min-width: 96px; }
}

/* 2026-09-11 — the banner was covering the hero CTA on both phone and laptop.
 * Keep the Dior-style hierarchy, halve the footprint. */
#lynbro-gdpr-banner {
  padding: 0.7rem 1.25rem !important;
  background: rgba(20, 6, 14, 0.94);
  -webkit-backdrop-filter: blur(18px) saturate(115%);
          backdrop-filter: blur(18px) saturate(115%);
}
#lynbro-gdpr-banner .lg-inner { gap: 1rem; align-items: center; }
#lynbro-gdpr-banner .lg-title { font-size: 0.82rem; letter-spacing: 0.09em; }
#lynbro-gdpr-banner .lg-msg   { font-size: 0.82rem; line-height: 1.4; }
#lynbro-gdpr-banner .lg-links { margin-top: 0.15rem; font-size: 0.72rem; }
#lynbro-gdpr-banner .lg-btn-primary { padding: 0.55rem 1.4rem; font-size: 0.72rem; }
#lynbro-gdpr-banner .lg-btn-secondary { font-size: 0.72rem; }

@media (max-width: 720px) {
  #lynbro-gdpr-banner { padding: 0.7rem 0.95rem !important; }
  #lynbro-gdpr-banner .lg-inner { gap: 0.6rem; }
  #lynbro-gdpr-banner .lg-msg { font-size: 0.78rem; line-height: 1.35; }
  /* Actions in one row: the primary keeps its weight, the two text links
   * share the rest instead of each claiming a full-width block. */
  #lynbro-gdpr-banner .lg-actions {
    justify-content: space-between !important;
    gap: 0.5rem; flex-wrap: nowrap;
  }
  #lynbro-gdpr-banner .lg-btn { flex: 0 0 auto !important; min-width: 0 !important; }
  #lynbro-gdpr-banner .lg-btn-primary { padding: 0.55rem 1.1rem; white-space: nowrap; }
}

/* Click-to-load overlay for the embedded map (see the iframe filter in PHP). */
.lynbro-map-consent {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.9rem;
  padding: 1.5rem;
  text-align: center;
  background:
    radial-gradient(120% 100% at 50% 0%, rgba(74,15,30,0.35), transparent 70%),
    rgba(20,6,14,0.92);
  color: #F5EDE0;
  font-family: 'Cormorant Garamond', Georgia, serif;
  z-index: 2;
}
.lynbro-map-consent__text {
  margin: 0;
  max-width: 34ch;
  font-size: clamp(0.95rem, 0.9rem + 0.25vw, 1.1rem);
  line-height: 1.55;
  color: rgba(245,237,224,0.85);
}
.lynbro-map-consent__btn {
  cursor: pointer;
  border: 0;
  border-radius: 999px;
  padding: 0.8rem 2rem;
  background: linear-gradient(135deg, #C7A869, #E8D4A8);
  color: #1A0710;
  font-family: 'Cinzel', Georgia, serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  transition: filter .2s ease;
}
.lynbro-map-consent__btn:hover { filter: brightness(1.06); }
.lynbro-map-consent__link {
  color: rgba(224,198,139,0.85);
  font-size: 0.92rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}
