.cg-consent-banner[hidden],
.cg-consent-modal[hidden]{display:none!important}

.cg-consent-banner,
.cg-consent-modal{
  --cg-consent-orange:#f97316;
  --cg-consent-orange-dark:#e85d04;
  --cg-consent-ink:#202635;
  --cg-consent-muted:#667085;
  --cg-consent-line:#dfe3ea;
  --cg-consent-soft:#f7f8fa;
  font-family:inherit;
  box-sizing:border-box;
}

.cg-consent-banner *,
.cg-consent-modal *{box-sizing:border-box}

.cg-consent-banner{
  position:fixed;
  left:50%;
  bottom:14px;
  z-index:3000;
  display:flex;
  width:min(1000px,calc(100% - 28px));
  transform:translateX(-50%);
  align-items:center;
  gap:24px;
  padding:22px 24px;
  color:var(--cg-consent-ink);
  background:#fff;
  border:1px solid var(--cg-consent-line);
  border-top:3px solid #d8a323;
  border-radius:20px;
  box-shadow:0 24px 70px rgba(21,28,43,.24);
}

.cg-consent-copy{flex:1 1 480px;min-width:0}
.cg-consent-copy strong{display:block;margin:0 0 6px;font-size:18px;line-height:1.3;font-weight:800;letter-spacing:-.015em}
.cg-consent-copy p{margin:0;color:var(--cg-consent-muted);font-size:14.5px;line-height:1.58}
.cg-consent-copy a,
.cg-consent-privacy a{color:#a55a16;font-weight:700;text-decoration:underline;text-underline-offset:2px}

.cg-consent-actions,
.cg-consent-panel__actions{display:flex;align-items:stretch;gap:9px}
.cg-consent-actions{flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;max-width:430px}

.cg-consent-btn{
  appearance:none;
  min-height:46px;
  padding:11px 17px;
  border:2px solid transparent;
  border-radius:13px;
  font:inherit;
  font-size:14px;
  line-height:1.25;
  font-weight:800;
  text-align:center;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.cg-consent-btn:hover{transform:translateY(-1px)}
.cg-consent-btn:focus-visible,
.cg-consent-close:focus-visible,
.cg-cookie-settings:focus-visible,
.cg-consent-switch input:focus-visible+span{outline:3px solid rgba(249,115,22,.35);outline-offset:3px}
.cg-consent-btn--primary{color:#fff;background:var(--cg-consent-orange);border-color:var(--cg-consent-orange);box-shadow:0 8px 20px rgba(249,115,22,.2)}
.cg-consent-btn--primary:hover{background:var(--cg-consent-orange-dark);border-color:var(--cg-consent-orange-dark)}
.cg-consent-btn--secondary{color:var(--cg-consent-ink);background:#fff;border-color:#aeb6c4}
.cg-consent-btn--secondary:hover{border-color:var(--cg-consent-ink);background:#fafafa}
.cg-consent-btn--settings{color:#384152;background:var(--cg-consent-soft);border-color:var(--cg-consent-line)}
.cg-consent-btn--settings:hover{background:#eceff3;border-color:#c8ced8}

.cg-consent-modal{position:fixed;inset:0;z-index:3100;display:grid;place-items:center;padding:16px}
.cg-consent-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.cg-consent-panel{
  position:relative;
  z-index:1;
  width:min(720px,100%);
  max-height:min(760px,calc(100vh - 32px));
  overflow:auto;
  padding:26px;
  color:var(--cg-consent-ink);
  background:#fff;
  border:1px solid var(--cg-consent-line);
  border-top:4px solid #d8a323;
  border-radius:20px;
  box-shadow:0 28px 90px rgba(15,23,42,.35);
}
.cg-consent-panel:focus{outline:none}
.cg-consent-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}
.cg-consent-kicker{display:block;margin-bottom:4px;color:#a55a16;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.cg-consent-panel h2{margin:0;color:var(--cg-consent-ink);font-size:26px;line-height:1.2;letter-spacing:-.025em}
.cg-consent-close{appearance:none;flex:0 0 auto;width:42px;height:42px;border:1px solid var(--cg-consent-line);border-radius:12px;color:var(--cg-consent-ink);background:#fff;font:inherit;font-size:28px;line-height:1;cursor:pointer}
.cg-consent-close:hover{background:var(--cg-consent-soft)}
.cg-consent-intro{margin:0 0 18px;color:var(--cg-consent-muted);font-size:14.5px;line-height:1.6}

.cg-consent-category{display:flex;align-items:center;gap:20px;padding:17px 0;border-top:1px solid var(--cg-consent-line)}
.cg-consent-category__text{flex:1 1 auto;min-width:0}
.cg-consent-category__text strong{display:block;margin-bottom:4px;font-size:16px;line-height:1.35}
.cg-consent-category__text span{display:block;color:var(--cg-consent-muted);font-size:13.5px;line-height:1.55}
.cg-consent-switch{position:relative;display:grid;grid-template-columns:46px;justify-items:center;gap:5px;flex:0 0 112px;cursor:pointer}
.cg-consent-switch input{position:absolute;width:1px;height:1px;opacity:0}
.cg-consent-switch>span{position:relative;width:46px;height:26px;border-radius:999px;background:#c9ced7;transition:background .15s ease}
.cg-consent-switch>span:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .15s ease}
.cg-consent-switch input:checked+span{background:var(--cg-consent-orange)}
.cg-consent-switch input:checked+span:after{transform:translateX(20px)}
.cg-consent-switch em{color:#4b5565;font-size:11px;line-height:1.2;font-style:normal;font-weight:700;text-align:center}
.cg-consent-switch--locked{cursor:default;opacity:.78}
.cg-consent-privacy{margin:2px 0 20px;color:var(--cg-consent-muted);font-size:13px;line-height:1.5}
.cg-consent-panel__actions{justify-content:flex-end;padding-top:18px;border-top:1px solid var(--cg-consent-line);flex-wrap:wrap}
.cg-consent-open{overflow:hidden}

.cg-cookie-settings{
  appearance:none;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-size:13px;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
  padding:4px 0;
}
.cg-cookie-settings:hover{color:var(--cg-consent-orange,#f97316)}

@media(max-width:820px){
  .cg-consent-banner{align-items:stretch;flex-wrap:wrap;gap:16px;padding:19px}
  .cg-consent-actions{flex:1 1 100%;max-width:none;display:grid;grid-template-columns:1fr 1fr}
  .cg-consent-actions .cg-consent-btn--settings{grid-column:1/-1}
}

@media(max-width:560px){
  .cg-consent-banner{bottom:8px;width:calc(100% - 16px);max-height:calc(100vh - 16px);overflow-y:auto;flex-direction:column;flex-wrap:nowrap;padding:17px 15px;border-radius:17px}
  .cg-consent-copy{flex:0 0 auto}
  .cg-consent-copy strong{font-size:16.5px}
  .cg-consent-copy p{font-size:13.5px;line-height:1.5}
  .cg-consent-actions{width:100%;flex:0 0 auto;grid-template-columns:1fr 1fr}
  .cg-consent-actions .cg-consent-btn--settings{grid-column:1/-1}
  .cg-consent-btn{min-height:44px;padding:10px 13px;font-size:13.5px}
  .cg-consent-modal{padding:8px;align-items:end}
  .cg-consent-panel{width:100%;max-height:calc(100vh - 16px);padding:20px 16px;border-radius:18px}
  .cg-consent-panel h2{font-size:22px}
  .cg-consent-category{align-items:stretch;flex-direction:column;gap:10px;padding:15px 0}
  .cg-consent-switch{display:flex;align-items:center;align-self:flex-start;flex:0 0 auto;width:auto;gap:9px}
  .cg-consent-switch em{text-align:left}
  .cg-consent-panel__actions{display:grid;grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .cg-consent-btn,
  .cg-consent-switch>span,
  .cg-consent-switch>span:after{transition:none}
}
