/* Cookie banner + Instagram embed gate */
.cc-banner {
  position: fixed; z-index: 120; left: 20px; bottom: 20px; width: min(440px, calc(100vw - 40px));
  padding: 22px 22px 20px; border: 1px solid rgba(255,255,255,.14); border-radius: 10px 10px 26px 10px;
  background: #0b0e11; color: #f2f4ef; box-shadow: 0 24px 70px rgba(0,0,0,.45);
  font-family: 'Poppins', Arial, sans-serif; font-size: 13px; line-height: 1.55;
  opacity: 0; visibility: hidden; transform: translateY(18px); transition: opacity .35s ease, transform .45s cubic-bezier(.2,.8,.2,1), visibility .35s;
}
.cc-banner.is-open { opacity: 1; visibility: visible; transform: none; }
.cc-title { display: flex; align-items: center; gap: 9px; margin: 0 0 8px; font-size: 14px; font-weight: 700; letter-spacing: -.01em; }
.cc-title::before { content: ''; flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; background: #c9f31d; box-shadow: 0 0 12px rgba(201,243,29,.7); }
.cc-text { margin: 0; color: #aab4af; }
.cc-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 16px; }
.cc-btn {
  min-height: 40px; padding: 0 20px; border: 1px solid transparent; border-radius: 999px; font: inherit; font-size: 13px; font-weight: 800; cursor: pointer;
  transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
.cc-btn:focus-visible, .cc-link:focus-visible, .cc-gate button:focus-visible { outline: 2px solid #c9f31d; outline-offset: 3px; }
.cc-accept { background: #c9f31d; color: #0b0e11; }
.cc-accept:hover { background: #e4ff77; transform: translateY(-2px); }
.cc-decline { background: transparent; color: #f2f4ef; border-color: rgba(255,255,255,.34); }
.cc-decline:hover { border-color: #fff; background: rgba(255,255,255,.08); }
.cc-link { margin-left: auto; color: #c6ceca; font-size: 12px; font-weight: 700; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.35); }
.cc-link:hover { color: #c9f31d; border-color: #c9f31d; }

/* footer "Cookie settings" link */
.cc-settings { padding: 0; border: 0; background: none; color: #d8dfda; font: inherit; cursor: pointer; }
.cc-settings:hover, .cc-settings:focus-visible { color: #c9f31d; }

/* embed placeholder shown until the visitor allows Instagram */
.social-embed { position: relative; }
.cc-gate {
  position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  padding: 24px; text-align: center; background: linear-gradient(160deg, #11161a, #0b0e11); color: #aab4af; font-size: 13px; line-height: 1.5;
}
.cc-gate[hidden] { display: none; }
.cc-gate strong { display: block; color: #f2f4ef; font-size: 15px; letter-spacing: -.01em; }
.cc-gate button {
  min-height: 40px; padding: 0 18px; border: 0; border-radius: 999px; background: #c9f31d; color: #0b0e11; font: inherit; font-size: 12px; font-weight: 800; cursor: pointer;
}
.cc-gate button:hover { background: #e4ff77; }

@media (max-width: 680px) {
  .cc-banner { left: 12px; right: 12px; bottom: 12px; width: auto; padding: 18px 18px 16px; }
  .cc-actions .cc-btn { flex: 1 1 auto; }
  .cc-link { margin: 4px auto 0; }
}
@media (prefers-reduced-motion: reduce) { .cc-banner { transition: none; } }
