.cookie-settings-link,.cookie-inline-settings{padding:0;border:0;background:transparent;color:#fff;text-decoration:underline;cursor:pointer;font:inherit}
.cookie-inline-settings{color:var(--navy-700);font-weight:800}
.cookie-banner[hidden],.cookie-modal[hidden]{display:none!important}
.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:120;background:rgba(255,255,255,.98);border:1px solid #dbe6f6;border-radius:24px;box-shadow:0 24px 60px rgba(8,28,66,.2)}
.cookie-banner__inner{display:flex;gap:22px;align-items:center;justify-content:space-between;padding:20px 22px}
.cookie-banner__copy{max-width:820px}
.cookie-banner__copy strong{display:block;color:#102c5a;font-size:19px;margin-bottom:4px}
.cookie-banner__copy p{margin:0;color:#60708c;font-size:14px;line-height:1.65}
.cookie-banner__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.cookie-banner__links a{font-size:13px;font-weight:800}
.cookie-banner__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;min-width:410px}
.cookie-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px;border-radius:999px;border:1px solid transparent;font:inherit;font-size:13px;font-weight:800;cursor:pointer;transition:.2s ease}
.cookie-btn:hover{transform:translateY(-1px)}
.cookie-btn--primary{background:linear-gradient(135deg,#102c5a,#1d4f98);color:#fff;box-shadow:0 10px 20px rgba(16,44,90,.18)}
.cookie-btn--secondary{background:#edf4ff;border-color:#d5e3fb;color:#173d77}
.cookie-btn--ghost{background:#fff;border-color:#dbe6f6;color:#4d5f7b}
.cookie-modal{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:18px}
.cookie-modal__backdrop{position:absolute;inset:0;background:rgba(7,20,46,.56);backdrop-filter:blur(5px)}
.cookie-modal__dialog{position:relative;width:min(100%,650px);max-height:min(90vh,720px);overflow:auto;background:#fff;border:1px solid #dbe6f6;border-radius:26px;padding:24px;box-shadow:0 32px 80px rgba(4,20,54,.3)}
.cookie-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.cookie-modal__header h2{font-size:30px;margin:3px 0}
.cookie-modal__eyebrow{font-size:11px;color:#1d4f98;font-weight:900;letter-spacing:.08em}
.cookie-modal__close{width:38px;height:38px;border:1px solid #dbe6f6;border-radius:50%;background:#f7faff;color:#173d77;font-size:24px;line-height:1;cursor:pointer}
.cookie-option{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-top:1px solid #e5ecf7}
.cookie-option strong{display:block;color:#102c5a}
.cookie-option span{display:block;color:#60708c;font-size:13px;line-height:1.58;margin-top:3px}
.cookie-switch{display:inline-flex;position:relative;flex:0 0 auto}
.cookie-switch input{position:absolute;opacity:0;pointer-events:none}
.cookie-switch span{display:block;width:48px;height:28px;margin:0;border-radius:999px;background:#c9d5e8;position:relative;cursor:pointer;transition:.2s ease}
.cookie-switch span::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;top:4px;left:4px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.16);transition:.2s ease}
.cookie-switch input:checked+span{background:#1d4f98}
.cookie-switch input:checked+span::after{transform:translateX(20px)}
.cookie-switch--disabled span{opacity:.8;cursor:not-allowed}
.cookie-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid #e5ecf7}
.cookie-modal__footer a{font-size:13px;font-weight:800}
.cookie-table-wrap{overflow:auto;margin:14px 0 22px}
.cookie-table{width:100%;border-collapse:collapse;min-width:620px}
.cookie-table th,.cookie-table td{padding:13px 12px;text-align:left;vertical-align:top;border-bottom:1px solid #e2eaf6;font-size:14px}
.cookie-table th{background:#edf4ff;color:#102c5a}
.cookie-table code{font-size:12px}
.privacy-prose ul{padding-left:22px}
.privacy-prose li{margin:5px 0;color:#425776}
.privacy-updated{margin-top:24px;padding-top:14px;border-top:1px solid #e2eaf6;color:#60708c;font-size:13px}
@media(max-width:860px){
  .cookie-banner__inner{display:block}
  .cookie-banner__actions{min-width:0;justify-content:flex-start;margin-top:14px}
}
@media(max-width:560px){
  .cookie-banner{left:10px;right:10px;bottom:10px;border-radius:18px}
  .cookie-banner__inner{padding:16px}
  .cookie-banner__actions{display:grid;grid-template-columns:1fr}
  .cookie-btn{width:100%}
  .cookie-modal{padding:10px}
  .cookie-modal__dialog{padding:18px;border-radius:20px}
  .cookie-modal__footer{display:block}
  .cookie-modal__footer .cookie-btn{margin-top:12px}
}
