.consent-banner {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 10000;
    max-width: 720px;
    margin: 0 auto;
    background: #111;
    color: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .3);
    font-size: 15px;
    line-height: 1.5;
}
.consent-banner[hidden] { display: none; }
.consent-inner { padding: 18px 20px; }
.consent-inner p { margin: 0 0 12px; color: #fff; }
.consent-inner a { color: #7fd1a8; text-decoration: underline; }
.consent-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.consent-btn {
    border: 1px solid #20734f;
    border-radius: 8px;
    padding: 8px 18px;
    font-weight: 600;
    cursor: pointer;
}
.consent-deny { background: transparent; color: #fff; border-color: #888; }
.consent-allow { background: #20734f; color: #fff; }
@media (max-width: 575px) {
    .consent-actions { justify-content: stretch; }
    .consent-btn { flex: 1 1 auto; }
}

/* Calendly popup: the stock close button is a 19px white X in the corner of
   the screen, invisible on light backgrounds and on the full-screen mobile
   popup. Make it a real, always visible button. */
.calendly-overlay { background-color: rgba(17, 17, 17, .72) !important; }
.calendly-overlay .calendly-popup-close {
    top: 16px !important;
    right: 16px !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50%;
    background: #20734f url("https://assets.calendly.com/assets/external/close-icon.svg") center / 16px no-repeat !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .35);
    z-index: 10001;
    cursor: pointer;
}
.calendly-overlay .calendly-popup-close:hover,
.calendly-overlay .calendly-popup-close:focus { background-color: #185a3d !important; }
@media (max-width: 649px) {
    .calendly-overlay .calendly-popup-close { top: 8px !important; right: 8px !important; }
}
