/* Cookie consent banner (gm-consent.php). Both buttons carry equal weight on purpose:
   UK guidance says rejecting must be as easy as accepting. */
.gm-cc[hidden] { display: none !important; }
.gm-cc {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 99999;
  max-width: 980px; margin: 0 auto;
  background: #07315f; color: #fff;
  border-radius: 16px; box-shadow: 0 18px 45px rgba(7, 49, 95, .35);
  font-size: 15px; line-height: 1.5;
}
.gm-cc__inner { display: flex; align-items: center; gap: 20px; padding: 18px 22px; }
.gm-cc__text { flex: 1 1 auto; }
.gm-cc__text p { margin: 0; color: #fff; }
.gm-cc__text .gm-cc__title { font-weight: 700; font-size: 16px; margin-bottom: 4px; }
.gm-cc__text a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.gm-cc__text a:hover { color: #f58220; }
.gm-cc__actions { display: flex; gap: 10px; flex: 0 0 auto; }
.gm-cc .gm-cc__btn {
  appearance: none; cursor: pointer; margin: 0;
  background: #fff; color: #07315f; border: 2px solid #fff; border-radius: 999px;
  padding: 10px 18px; font: inherit; font-weight: 700; font-size: 14.5px; line-height: 1.2;
  white-space: nowrap;
}
.gm-cc .gm-cc__btn:hover { background: #eef6ff; border-color: #eef6ff; color: #07315f; }
.gm-cc .gm-cc__btn:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }

@media (max-width: 760px) {
  .gm-cc { left: 10px; right: 10px; bottom: 10px; font-size: 13.5px; line-height: 1.45; }
  .gm-cc__text .gm-cc__title { font-size: 15px; margin-bottom: 2px; }
  .gm-cc__inner { flex-direction: column; align-items: stretch; gap: 12px; padding: 14px; }
  .gm-cc__actions { gap: 8px; }
  .gm-cc .gm-cc__btn { flex: 1 1 0; white-space: normal; padding: 10px 12px; }
}

/* Footer legal links + "Cookie settings" (footer.php) */
.gm-footer .gm-foot-legal { display: inline; }
.gm-footer .gm-foot-legal a,
.gm-footer .gm-foot-legal button { color: var(--f-accent); }
.gm-footer .gm-foot-legal button {
  appearance: none; background: none; border: 0; padding: 0; margin: 0;
  font: inherit; cursor: pointer;
}
.gm-footer .gm-foot-legal a:hover,
.gm-footer .gm-foot-legal button:hover { text-decoration: underline; }

/* Legal pages (/privacy-policy/, /cookie-policy/, /website-terms/) — readable prose width */
.gm-legal-page .gm-legal { max-width: 820px; }
.gm-legal-page .gm-legal h2 { margin: 36px 0 12px; }
.gm-legal-page .gm-legal h3 { margin: 24px 0 8px; }
.gm-legal-page .gm-legal ul { margin: 0 0 16px; padding-left: 22px; }
.gm-legal-page .gm-legal li { margin-bottom: 6px; }
.gm-legal-page .gm-legal-updated { color: #526273; font-size: 14px; }
.gm-legal-page .gm-note-box { margin-bottom: 8px; }
.gm-legal-page .gm-legal-table-wrap { overflow-x: auto; margin: 0 0 18px; }
.gm-legal-page .gm-legal-table { width: 100%; border-collapse: collapse; font-size: 15px; min-width: 560px; }
.gm-legal-page .gm-legal-table th,
.gm-legal-page .gm-legal-table td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid #dbe7f2; }
.gm-legal-page .gm-legal-table th { background: #f5f9ff; color: #07315f; }
.gm-legal-page code { font-size: .92em; background: #eef6ff; padding: 1px 5px; border-radius: 4px; }

/* v7 footer legal row */
.footer__legal{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:10px;font-size:.85rem}.footer__legal a,.footer__legal .footer__cookies{color:inherit;opacity:.85;text-decoration:underline;text-underline-offset:3px}.footer__legal .footer__cookies{background:none;border:0;padding:0;font:inherit;cursor:pointer}.footer__legal a:hover,.footer__legal .footer__cookies:hover{opacity:1}
body.form-in-view .float-cta{transform:translateY(140%);pointer-events:none}
.widget-slot--live{display:block;border:0;background:none;padding:0;min-height:420px;text-align:left}
