
.cookie-settings-link{
  appearance:none;border:0;background:none;padding:0;color:inherit;
  font:inherit;text-align:left;cursor:pointer;text-decoration:none;
}
.cookie-settings-link:hover{text-decoration:underline}

.nmz-consent-backdrop{
  position:fixed;inset:0;background:rgba(7,24,43,.42);z-index:9998;
  display:none;
}
.nmz-consent-backdrop.open{display:block}

.nmz-cookie-banner{
  position:fixed;left:18px;right:18px;bottom:18px;z-index:9999;
  max-width:1080px;margin:auto;background:#fff;border:1px solid #e2d8c8;
  border-radius:20px;box-shadow:0 20px 60px rgba(12,38,67,.22);
  padding:18px 20px;display:none;color:#17243a;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.nmz-cookie-banner.open{display:block}
.nmz-cookie-grid{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;
}
.nmz-cookie-title{
  font:800 22px/1.15 Georgia,"Times New Roman",serif;color:#0d294b;margin:0 0 6px;
}
.nmz-cookie-copy{font-size:12px;line-height:1.55;color:#5d6a7a;margin:0;max-width:720px}
.nmz-cookie-copy a{color:#8e641d;text-decoration:underline}
.nmz-cookie-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nmz-cookie-btn{
  min-height:40px;border-radius:10px;padding:8px 13px;font:800 12px/1 Inter,system-ui,sans-serif;
  cursor:pointer;border:1px solid #d5dbe3;background:#fff;color:#0d294b;
}
.nmz-cookie-btn:hover{background:#faf8f3}
.nmz-cookie-btn.primary{
  background:linear-gradient(135deg,#d5a34a,#efca77);border-color:#d6aa59;color:#152945;
}
.nmz-cookie-btn.minimal{background:#f7f5f0}

.nmz-consent-modal{
  position:fixed;z-index:10000;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(680px,calc(100% - 24px));max-height:min(760px,calc(100vh - 32px));
  overflow:auto;background:#fff;border:1px solid #e0d7ca;border-radius:22px;
  box-shadow:0 28px 80px rgba(7,29,52,.3);display:none;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.nmz-consent-modal.open{display:block}
.nmz-consent-head{padding:22px 22px 15px;border-bottom:1px solid #eee8df}
.nmz-consent-head h2{font:800 28px/1.1 Georgia,"Times New Roman",serif;color:#0d294b;margin:0 0 7px}
.nmz-consent-head p{font-size:12px;color:#657184;line-height:1.55;margin:0}
.nmz-consent-body{padding:8px 22px 16px}
.nmz-consent-row{
  display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;
  padding:17px 0;border-bottom:1px solid #eee8df;
}
.nmz-consent-row:last-child{border-bottom:0}
.nmz-consent-row h3{font-size:14px;color:#0d294b;margin:0 0 5px}
.nmz-consent-row p{font-size:11px;line-height:1.55;color:#657184;margin:0}
.nmz-consent-services{display:block;margin-top:5px;color:#7b6744}
.nmz-switch{
  position:relative;width:48px;height:27px;display:inline-block;flex:none;
}
.nmz-switch input{opacity:0;width:0;height:0}
.nmz-slider{
  position:absolute;inset:0;background:#cdd3db;border-radius:999px;transition:.18s;
}
.nmz-slider:before{
  content:"";position:absolute;width:21px;height:21px;left:3px;top:3px;
  background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.18s;
}
.nmz-switch input:checked + .nmz-slider{background:#c89333}
.nmz-switch input:checked + .nmz-slider:before{transform:translateX(21px)}
.nmz-switch input:disabled + .nmz-slider{background:#7b8ba0;opacity:.75}

.nmz-consent-foot{
  padding:15px 22px 20px;border-top:1px solid #eee8df;
  display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;
}
.nmz-consent-foot a{margin-right:auto;align-self:center;font-size:11px;color:#8e641d;text-decoration:underline}
.nmz-consent-note{
  margin-top:8px;padding:10px 12px;border-radius:10px;background:#f6f8fa;
  border:1px solid #dfe5ec;color:#647285;font-size:10px;line-height:1.5;
}
@media(max-width:700px){
  .nmz-cookie-banner{left:8px;right:8px;bottom:8px;padding:14px;border-radius:16px}
  .nmz-cookie-grid{grid-template-columns:1fr}
  .nmz-cookie-actions{display:grid;grid-template-columns:1fr 1fr}
  .nmz-cookie-actions .primary{grid-column:1/-1}
  .nmz-cookie-btn{width:100%}
  .nmz-consent-modal{width:calc(100% - 16px);max-height:calc(100vh - 16px);border-radius:16px}
  .nmz-consent-head,.nmz-consent-body,.nmz-consent-foot{padding-left:15px;padding-right:15px}
  .nmz-consent-foot{display:grid;grid-template-columns:1fr}
  .nmz-consent-foot a{margin:0 0 5px}
}
