/* ============================================================
   BTE COOKIE CONSENT BANNER (2026-07-17)
   Custom BTE-branded, dismissible Accept/Reject notice — replaces
   the old always-present cookie plugin widget. Records the visitor's
   choice (localStorage, via bte-cookie.js); does not itself block
   scripts. Sits bottom-right, out of the way, and removes itself once
   the visitor has chosen.
   ============================================================ */

.bte-cookie {
    position: fixed;
    left: clamp(1rem, 3vw, 2rem);
    right: clamp(1rem, 3vw, 2rem);
    bottom: clamp(1rem, 3vw, 2rem);
    z-index: 9998;
    max-width: 620px;
    margin-left: auto;
    background-color: var(--bte-navy, #07093a);
    color: var(--bte-white, #ffffff);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 1rem;
    box-shadow: 0 14px 44px rgba(0, 0, 0, 0.45);
    padding: clamp(1.1rem, 2.5vw, 1.6rem);
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.bte-cookie.is-visible { opacity: 1; transform: none; }
.bte-cookie[hidden] { display: none; }

.bte-cookie__inner { display: flex; flex-direction: column; gap: 1rem; }

.bte-cookie__text {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
}

.bte-cookie__link {
    color: var(--bte-teal, #3fd0c9);
    text-decoration: underline;
    text-underline-offset: 2px;
    white-space: nowrap;
}
.bte-cookie__link:hover { color: var(--bte-white, #ffffff); }

.bte-cookie__actions { display: flex; gap: 0.75rem; }

.bte-cookie__btn {
    flex: 1;
    padding: 0.7rem 1.4rem;
    border-radius: 0.5rem;
    font-family: var(--font-display, inherit);
    font-weight: 700;
    font-size: 0.82rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.bte-cookie__btn--accept { background-color: var(--bte-red, #e2312b); color: #ffffff; }
.bte-cookie__btn--accept:hover { background-color: #c41f1a; }

.bte-cookie__btn--reject {
    background-color: transparent;
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.4);
}
.bte-cookie__btn--reject:hover { border-color: #ffffff; background-color: rgba(255, 255, 255, 0.08); }

@media (min-width: 620px) {
    .bte-cookie__inner { flex-direction: row; align-items: center; }
    .bte-cookie__actions { flex: 0 0 auto; }
    .bte-cookie__btn { flex: 0 0 auto; }
}

@media (prefers-reduced-motion: reduce) {
    .bte-cookie { transition: opacity 0.2s ease; transform: none; }
}
