/* Cookie and privacy notice. Colours follow the site's dark footer and the slate-blue accent of the Send button. */
.ap-notice { position: fixed; left: 0; right: 0; bottom: 0; z-index: 99999; background: #1b1b1b; color: #fff; border-top: 1px solid #4b5c72; box-shadow: 0 -2px 12px rgba(0,0,0,.5); font-size: 15px; line-height: 1.5; }
.ap-notice[hidden] { display: none; }
.ap-notice__inner { max-width: 1100px; margin: 0 auto; padding: 18px 20px 20px; }
.ap-notice h2 { margin: 0 0 8px; font-size: 18px; color: #fff; font-weight: 600; }
.ap-notice p { margin: 0 0 8px; color: #e6e6e6; }
.ap-notice__actions { margin-top: 12px; }
.ap-notice__btn { font: inherit; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; font-size: 13px; padding: 12px 28px; border: 0; background: #4b5c72; color: #fff; cursor: pointer; }
.ap-notice__btn:hover { background: #5f7491; }
.ap-notice__btn:focus-visible, .ap-notice-link:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.ap-notice-link { background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; cursor: pointer; margin-left: 12px; }
@media (max-width: 600px) {
  .ap-notice { font-size: 13.5px; line-height: 1.4; max-height: 75vh; overflow-y: auto; }
  .ap-notice__inner { padding: 12px 14px 14px; }
  .ap-notice h2 { font-size: 16px; margin-bottom: 6px; }
}

.ap-notice a { color: #fff !important; text-decoration: underline; }
