/* Consent UI shares the site's fonts and colours. Choices have equal weight. */
.awpf-consent {
  --consent-ink:#171715; --consent-paper:#f8f5ee; --consent-accent:#DE514E;
  position:fixed; right:24px; bottom:24px; z-index:9999;
  width:min(480px,calc(100% - 48px)); max-height:calc(100dvh - 48px);
  overflow:auto; overscroll-behavior:contain; padding:24px;
  background:var(--consent-paper); color:var(--consent-ink);
  border:1px solid #17171533; border-top:3px solid var(--consent-accent);
  border-radius:4px; box-shadow:0 8px 32px #17171526;
  font:14px/1.6 var(--sans,Inter,'Helvetica Neue',Arial,sans-serif);
  text-align:left; box-sizing:border-box;
}
.awpf-consent[data-theme="patternfield"] { --consent-accent:#343430; border-radius:2px; }
.awpf-consent *, .awpf-privacy-controls * { box-sizing:border-box; }
.awpf-consent [hidden], .awpf-consent[hidden] { display:none !important; }
.awpf-consent-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:24px; margin-bottom:8px; }
.awpf-consent-label { font-size:10px; line-height:1.5; font-weight:600; letter-spacing:.14em; }
.awpf-consent h2 { margin:0 0 10px; color:inherit; font:600 28px/1.2 var(--serif,'Playfair Display',Georgia,serif); letter-spacing:-.025em; }
.awpf-consent h2:focus { outline:none; }
.awpf-consent .awpf-consent-description { margin:0 0 18px; font:inherit; color:#59574f; }
.awpf-consent .awpf-consent-actions { display:flex; align-items:stretch; gap:8px; flex-wrap:wrap; }
.awpf-consent button { font:600 12px/1.4 var(--sans,Inter,'Helvetica Neue',Arial,sans-serif); cursor:pointer; min-height:44px; padding:11px 15px; border:1px solid var(--consent-ink); border-radius:2px; color:var(--consent-ink); background:transparent; margin:0; }
.awpf-consent [data-choice] { flex:1; background:var(--consent-ink); color:var(--consent-paper); }
.awpf-consent[data-theme="aislewise"] [data-choice] { background:var(--consent-accent); color:var(--consent-ink); border-color:var(--consent-accent); }
.awpf-consent [data-action="save"] { flex:1; background:var(--consent-ink); color:var(--consent-paper); }
.awpf-consent [data-choice]:hover, .awpf-consent [data-action="save"]:hover { filter:brightness(.93); }
.awpf-consent .awpf-consent-customize { border-color:#17171555; font-weight:500; }
.awpf-consent .awpf-consent-customize:hover, .awpf-consent [data-action="back"]:hover { background:#1717150c; }
.awpf-consent .awpf-consent-close { border:0; min-height:44px; padding:0 8px; margin:-10px -8px -10px 0; font-weight:500; text-decoration:underline; text-underline-offset:3px; }
.awpf-consent .awpf-consent-meta { margin-top:16px; padding-top:12px; border-top:1px solid #17171526; display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px 12px; font-size:11px; line-height:1.5; }
.awpf-consent a { display:inline-flex; align-items:center; min-height:32px; color:var(--consent-ink); text-decoration:underline; text-underline-offset:3px; }
.awpf-consent [data-consent-status] { display:flex; align-items:center; color:#59574f; }
.awpf-consent .awpf-consent-category { display:flex; align-items:center; gap:20px; justify-content:space-between; padding:16px 0; border-top:1px solid #17171526; }
.awpf-consent .awpf-consent-category>div { min-width:0; }
.awpf-consent h3, .awpf-consent label { display:block; font:600 14px/1.5 var(--sans,Inter,'Helvetica Neue',Arial,sans-serif); margin:0 0 4px; color:var(--consent-ink); }
.awpf-consent .awpf-consent-category p { margin:0; font-size:12px; color:#59574f; }
.awpf-consent .awpf-consent-always { flex:none; font-size:11px; font-weight:600; white-space:nowrap; padding:4px 7px; background:#1717150c; }
.awpf-consent label { min-height:44px; display:flex; align-items:center; cursor:pointer; }
.awpf-consent input[type="checkbox"] { appearance:none; flex:none; width:44px; height:26px; border:1px solid #747169; border-radius:20px; margin:0; background-color:#c8c4bb; background-image:radial-gradient(circle at 12px 50%,#f8f5ee 8px,transparent 9px); cursor:pointer; }
.awpf-consent input[type="checkbox"]:checked { background-color:var(--consent-ink); background-image:radial-gradient(circle at 31px 50%,#f8f5ee 8px,transparent 9px); }
.awpf-consent :is(button,a,input):focus-visible { outline:3px solid var(--consent-ink); outline-offset:3px; }
.awpf-privacy-controls { display:flex; flex-wrap:wrap; align-items:center; gap:4px 24px; margin-block:12px 0; font:12px/1.5 var(--sans,Inter,'Helvetica Neue',Arial,sans-serif); color:inherit; }
.awpf-privacy-controls a, .awpf-privacy-controls .awpf-cookie-settings { display:inline-flex; align-items:center; min-height:44px; padding:8px 0; border:0; background:transparent; color:inherit; border-radius:0; font:inherit; text-decoration:underline; text-underline-offset:4px; cursor:pointer; margin:0; }
.awpf-privacy-controls :is(a,button):hover { text-decoration-thickness:2px; }
.awpf-privacy-controls :is(a,button):focus-visible { outline:2px solid currentColor; outline-offset:4px; }
/* The privacy document keeps the full notice, within the same brand treatment. */
body.awpf-privacy-page { max-width:none; margin:0; padding:0; background:#f8f5ee; color:#171715; font:16px/1.75 var(--sans,Inter,'Helvetica Neue',Arial,sans-serif); }
.awpf-privacy-page>.awpf-privacy-home, .awpf-privacy-page>main, .awpf-privacy-page>footer { width:min(760px,calc(100% - 40px)); margin-inline:auto; }
.awpf-privacy-page>.awpf-privacy-home { display:block; padding:32px 0 20px; font:600 28px/1.2 var(--serif,'Playfair Display',Georgia,serif); color:inherit; text-decoration:none; border-bottom:2px solid #DE514E; }
.awpf-privacy-page[data-brand="Patternfield"]>.awpf-privacy-home { border-bottom-color:#343430; }
.awpf-privacy-page>main { padding-block:40px 24px; }
.awpf-privacy-page h1 { margin:0 0 28px; font:600 clamp(32px,5vw,44px)/1.2 var(--serif,'Playfair Display',Georgia,serif); letter-spacing:-.03em; }
.awpf-privacy-page main p { margin:0 0 20px; }
.awpf-privacy-page main a { color:inherit; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.awpf-privacy-page>footer { margin-top:20px; margin-bottom:28px; padding-top:20px; border-top:1px solid #17171533; font-size:12px; }
@media(max-width:540px) {
  .awpf-consent { right:max(12px,env(safe-area-inset-right)); left:max(12px,env(safe-area-inset-left)); bottom:max(12px,env(safe-area-inset-bottom)); width:auto; padding:20px; max-height:calc(100dvh - 24px - env(safe-area-inset-bottom)); }
  .awpf-consent h2 { font-size:25px; }
  .awpf-consent .awpf-consent-actions { display:grid; grid-template-columns:1fr 1fr; }
  .awpf-consent .awpf-consent-customize { grid-column:1/-1; }
  .awpf-consent .awpf-consent-meta { font-size:12px; }
  .awpf-consent .awpf-consent-meta a { min-height:44px; }
  .awpf-consent-category { gap:12px; }
  .awpf-privacy-controls { column-gap:20px; }
}
@media(forced-colors:active) {
  .awpf-consent { border:1px solid CanvasText; }
  .awpf-consent [data-choice], .awpf-consent [data-action="save"] { border:1px solid ButtonText; }
  .awpf-consent input[type="checkbox"] { appearance:auto; background:none; }
}
