/* Cookie consent banner, Cookie Preferences drawer and the footer legal row additions. */
.footer-link-button{display:inline;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer}
.footer-link-button:hover{color:white;text-decoration:underline;text-underline-offset:4px}
.footer-link-button:focus-visible{outline:2px solid #98d5e7;outline-offset:3px}
.footer-trademarks{padding-block:0 22px;color:#8a9a92;font-size:12px;line-height:1.6}
.footer-trademarks p{max-width:860px;margin:0}
.cookie-dialog-open{overflow:hidden}
.cookie-backdrop{position:fixed;inset:0;z-index:305;background:#132a3470}
.cookie-drawer.cookie-drawer-fallback[open]{z-index:306}
@media print{.cookie-bar,.cookie-drawer,.cookie-backdrop,.cookie-toast{display:none!important}}

.cookie-bar{position:fixed;z-index:300;left:0;right:0;bottom:0;background:var(--surface-raised);border-top:1px solid var(--surface-border);box-shadow:0 -10px 30px #17323a14;color:var(--ink);font-family:var(--font-sans)}
.cookie-bar[hidden]{display:none}
.cookie-bar-inner{display:flex;align-items:center;gap:18px;max-width:var(--width,1180px);margin:0 auto;padding:12px 24px}
.cookie-bar-icon{flex:0 0 auto;display:flex;color:var(--blue)}
.cookie-bar-icon .icon{width:40px;height:40px}
.cookie-bar-text{min-width:0;flex:1 1 auto}
.cookie-bar-text>p{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
.cookie-bar-text strong{color:var(--ink);font-weight:700}
.cookie-bar-links{display:inline-flex;flex-wrap:wrap;gap:4px 12px;white-space:nowrap}
.cookie-bar-links a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.cookie-bar-actions{display:flex;flex:0 0 auto;align-items:center;gap:14px}
.cookie-customize{padding:4px 2px;border:0;background:none;color:var(--muted);font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cookie-customize:hover{color:var(--blue)}
.cookie-action,.cookie-save{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 16px;border:1px solid var(--blue);border-radius:5px;background:var(--surface-raised);color:var(--blue);font:inherit;font-size:13px;font-weight:650;line-height:1.3;white-space:nowrap;text-align:center;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.cookie-action:hover{background:var(--blue-wash);border-color:var(--blue-dark)}
.cookie-action-primary,.cookie-save{background:var(--blue);color:var(--action-ink,#fff)}
.cookie-action-primary:hover,.cookie-save:hover{background:var(--blue-dark);border-color:var(--blue-dark);color:var(--action-ink,#fff)}
.cookie-action:focus-visible,.cookie-save:focus-visible,.cookie-customize:focus-visible,.cookie-close:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.cookie-drawer .cookie-action,.cookie-save{min-height:44px;font-size:14px}
.cookie-policy-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px;font-size:var(--type-label);line-height:1.5}
.cookie-policy-links a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.cookie-feedback{margin:6px 0 0;padding:8px 12px;border-radius:6px;background:var(--surface-tint);color:var(--ink);font-size:var(--type-small);line-height:1.55}
.cookie-feedback[hidden]{display:none}

.cookie-drawer{position:fixed;inset:0 0 0 auto;margin:0;padding:0;border:0;border-left:1px solid var(--line);width:min(540px,100%);max-width:100%;height:100dvh;max-height:100dvh;overflow:hidden;background:var(--surface-raised);color:var(--ink);box-shadow:-12px 0 60px #0003;font-family:var(--font-sans)}
.cookie-drawer:not([open]){display:none}
.cookie-drawer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;animation:cookie-slide-in .22s ease-out}
.cookie-drawer::backdrop{background:#132a3470;backdrop-filter:blur(3px)}
@keyframes cookie-slide-in{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.cookie-drawer[open]{animation:none}}
.cookie-drawer-heading{display:flex;justify-content:space-between;gap:20px;align-items:start;padding:26px 30px 22px;border-bottom:1px solid var(--line)}
.cookie-drawer-heading .eyebrow{margin-bottom:8px}
.cookie-drawer-heading h2{margin:0;font-size:var(--type-section);font-weight:var(--weight-heading);line-height:1.15;outline:none}
.cookie-drawer-heading h2:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.cookie-close{flex:0 0 auto}
.cookie-drawer-body{overflow:auto;padding:24px 30px 28px;font-size:var(--type-small);line-height:1.65}
.cookie-drawer-body>p{margin:0 0 20px;color:var(--muted)}
.cookie-category{padding:18px 0;border-top:1px solid var(--line)}
.cookie-category p{margin:10px 0 0;color:var(--muted)}
.cookie-category-title{display:flex;justify-content:space-between;align-items:center;gap:16px}
.cookie-category-title h3{margin:0;font-size:var(--type-reading);font-weight:var(--weight-heading)}
.cookie-category-title label{cursor:pointer}
.cookie-active{display:inline-flex;align-items:center;gap:6px;color:var(--accent-green,#326953);font-size:var(--type-label);font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.cookie-active .icon{width:16px;height:16px}
.cookie-switch{position:relative;display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}
.cookie-switch input{position:absolute;inset:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.cookie-switch input:disabled{cursor:not-allowed}
.cookie-switch-track{position:relative;display:block;width:44px;height:26px;border-radius:13px;background:var(--control-line,#728b93);transition:background .15s}
.cookie-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0004;transition:transform .15s}
.cookie-switch input:checked+.cookie-switch-track{background:var(--blue)}
.cookie-switch input:checked+.cookie-switch-track::after{transform:translateX(18px)}
.cookie-switch input:disabled+.cookie-switch-track{opacity:.5}
.cookie-switch input:focus-visible+.cookie-switch-track{outline:2px solid var(--blue);outline-offset:3px}
.cookie-switch-state{min-width:24px;font-size:var(--type-label);font-weight:700;text-transform:uppercase;color:var(--muted)}
.cookie-signal{padding:10px 12px;border-radius:6px;background:var(--surface-tint);color:var(--ink)}
.cookie-technology{margin-top:4px;padding:16px 0;border-top:1px solid var(--line)}
.cookie-technology summary{cursor:pointer;font-weight:650;color:var(--ink)}
.technology-inventory{margin-top:14px}
.technology-inventory>p{margin:0 0 10px;font-size:var(--type-label);font-weight:700;text-transform:uppercase;color:var(--muted)}
.technology-inventory dl{margin:0;display:grid;gap:12px}
.technology-inventory dt{font-weight:650;color:var(--ink);overflow-wrap:anywhere}
.technology-inventory dd{margin:2px 0 0;color:var(--muted)}
.technology-inventory>a{display:inline-block;margin-top:14px;color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.cookie-drawer-actions{display:grid;gap:10px;padding:18px 30px 24px;border-top:1px solid var(--line);background:var(--surface-raised)}
.cookie-drawer-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cookie-save{background:var(--blue);color:var(--action-ink,#fff)}
.cookie-save:hover{background:var(--blue-dark);border-color:var(--blue-dark)}

.cookie-toast{position:fixed;z-index:310;left:50%;bottom:24px;transform:translateX(-50%);max-width:calc(100% - 48px);margin:0;padding:14px 18px;border-radius:8px;background:var(--charcoal,#171e20);color:#f2f6f3;font-size:var(--type-small);line-height:1.5;box-shadow:0 12px 32px #0004}
.cookie-toast[hidden]{display:none}

@media (max-width:640px){
  .cookie-bar-inner{flex-wrap:wrap;align-items:flex-start;gap:10px 14px;padding:12px 16px}
  .cookie-bar-icon .icon{width:32px;height:32px}
  .cookie-bar-text{flex-basis:0}
  .cookie-bar-text>p{font-size:12.5px}
  .cookie-bar-actions{flex-basis:100%;justify-content:space-between;gap:10px}
  .cookie-bar-actions .cookie-action{flex:1 1 auto;min-height:36px}
  .cookie-drawer{width:100%;border-left:0}
  .cookie-drawer-heading{padding:20px 20px 16px}
  .cookie-drawer-body{padding:20px}
  .cookie-drawer-actions{padding:14px 20px 20px}
  .cookie-drawer-actions>div{grid-template-columns:1fr}
  .cookie-toast{left:12px;right:12px;bottom:12px;transform:none;max-width:none}
}
