/* Brand the existing CMP. Never override its consent-dependent visibility. */
body .cmplz-cookiebanner.prato-nevoso{
  --pn-consent-ink:#192b35;
  --pn-consent-accent:#c6262e;
  --pn-consent-soft:#f2f4f4;
  --pn-consent-muted:#4e5c63;
  --cmplz_slider_active_color:var(--pn-consent-accent);
  box-sizing:border-box;
  width:min(480px,calc(100vw - 48px));
  min-width:0;
  max-width:none;
  height:auto;
  max-height:calc(100vh - 48px);
  max-height:calc(100dvh - 48px);
  inset:auto 24px 24px auto;
  transform:none;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:none!important;
  grid-auto-rows:max-content;
  align-content:start;
  gap:16px;
  padding:24px!important;
  border:0;
  border-top:3px solid var(--pn-consent-accent);
  border-radius:8px;
  box-shadow:0 8px 40px rgb(0 0 0 / .18);
  background:#fff;
  color:var(--pn-consent-ink);
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  overflow:auto;
  overscroll-behavior:contain;
  zoom:1!important;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-header{
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  grid-template-rows:auto auto;
  height:auto!important;
  min-height:82px;
  align-self:start;
  grid-column:1/-1;
  gap:14px 12px;
  margin:0!important;
  max-height:none;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-logo{
  display:block;
  grid-area:1/1;
  width:112px;
  height:44px;
  background:var(--pn-consent-logo) left center/contain no-repeat;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-logo:has(img){background:none}
body .cmplz-cookiebanner.prato-nevoso .cmplz-title{
  display:block;
  grid-area:2/1/3/-1;
  justify-self:start;
  margin:0;
  font-size:20px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--pn-consent-ink);
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-close{
  display:flex;
  align-items:center;
  justify-content:center;
  grid-area:1/2;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  border-radius:4px;
  background:var(--pn-consent-soft);
  color:var(--pn-consent-ink);
  zoom:1!important;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-close svg{width:16px;height:16px}
body .cmplz-cookiebanner.prato-nevoso .cmplz-body{
  grid-column:1/-1;
  min-width:0;
  min-height:auto;
  max-height:none;
  overflow:visible;
  margin:0!important;
  flex:none;
}
body .cmplz-cookiebanner.prato-nevoso :is(.cmplz-message,.cmplz-categories){width:100%;min-width:0}
body .cmplz-cookiebanner.prato-nevoso .cmplz-message{
  margin:0;
  font-size:14px;
  line-height:1.55;
  font-weight:400;
  color:var(--pn-consent-muted);
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-divider{display:none}
body .cmplz-cookiebanner.prato-nevoso .cmplz-links{
  grid-column:1/-1;
  margin:0;
  text-align:left;
  zoom:1!important;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-links ul{display:flex;flex-wrap:wrap;gap:4px 16px;padding:0;margin:0}
body .cmplz-cookiebanner.prato-nevoso .cmplz-links li{margin:0}
body .cmplz-cookiebanner.prato-nevoso .cmplz-link{
  font-size:12px;
  line-height:1.5;
  color:var(--pn-consent-muted);
  text-decoration:underline;
  text-underline-offset:3px;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-buttons{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-column:1/-1;
  gap:8px!important;
  margin:0;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-buttons .cmplz-btn{
  width:100%;
  height:auto!important;
  min-height:48px!important;
  padding:12px 10px!important;
  margin:0;
  border:0;
  border-radius:3px;
  font-family:inherit;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:700;
  white-space:normal!important;
  box-shadow:none;
  zoom:1!important;
}
body .cmplz-cookiebanner.prato-nevoso .cmplz-buttons :is(.cmplz-accept,.cmplz-deny){background:var(--pn-consent-accent);color:#fff}
body .cmplz-cookiebanner.prato-nevoso .cmplz-buttons :is(.cmplz-view-preferences,.cmplz-save-preferences){grid-column:1/-1;background:var(--pn-consent-soft);color:var(--pn-consent-ink)}
body .cmplz-cookiebanner.prato-nevoso .cmplz-buttons :is(.cmplz-accept,.cmplz-deny):hover{background:#a91f27;color:#fff}
body .cmplz-cookiebanner.prato-nevoso .cmplz-buttons :is(.cmplz-view-preferences,.cmplz-save-preferences):hover{background:#e6ebed;color:var(--pn-consent-ink)}
body .cmplz-cookiebanner.prato-nevoso :is(a,button,[role=button],input):focus-visible{outline:2px solid var(--pn-consent-ink);outline-offset:3px}
body .cmplz-cookiebanner.prato-nevoso .cmplz-categories .cmplz-category{background:var(--pn-consent-soft);border-radius:3px}
body .cmplz-cookiebanner.prato-nevoso .cmplz-categories .cmplz-category .cmplz-category-header{grid-template-columns:minmax(0,1fr) auto 44px!important;gap:8px;padding:8px 12px}
body .cmplz-cookiebanner.prato-nevoso .cmplz-categories .cmplz-category .cmplz-category-title{font-size:14px;font-weight:700;color:var(--pn-consent-ink)}
body .cmplz-cookiebanner.prato-nevoso .cmplz-categories .cmplz-category .cmplz-always-active{font-size:12px;font-weight:400;color:var(--pn-consent-muted)}
body .cmplz-cookiebanner.prato-nevoso .cmplz-categories .cmplz-category .cmplz-category-toggle{min-width:44px;min-height:44px}
body .cmplz-cookiebanner.prato-nevoso .cmplz-categories .cmplz-category .cmplz-description{padding:0 12px 16px;font-size:13px;line-height:1.5;color:var(--pn-consent-muted)}
body #cmplz-manage-consent .cmplz-manage-consent{
  right:24px;
  bottom:0;
  min-height:44px;
  padding:10px 16px;
  border:0;
  border-radius:4px 4px 0 0;
  background:#192b35;
  color:#fff;
  font:700 12px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;
  animation:none;
  box-shadow:0 4px 16px rgb(0 0 0 / .15);
}
body #cmplz-manage-consent .cmplz-manage-consent:not(.cmplz-dismissed){display:block}
@media(max-width:800px){
  body .cmplz-cookiebanner.prato-nevoso{
    width:calc(100vw - max(12px,env(safe-area-inset-left,0px)) - max(12px,env(safe-area-inset-right,0px)));
    right:max(12px,env(safe-area-inset-right,0px));
    left:auto;
    bottom:max(12px,env(safe-area-inset-bottom,0px));
    max-height:calc(100vh - 24px - env(safe-area-inset-bottom,0px));
    max-height:calc(100dvh - 24px - env(safe-area-inset-bottom,0px));
    padding:20px!important;
    gap:14px;
  }
}
@media(max-width:1100px){
  /* Keep the native reopen button: only its quiet edge is exposed on touch screens. */
  body #cmplz-manage-consent .cmplz-manage-consent{
    right:0;
    bottom:calc(var(--pn-dock-height,calc(68px + env(safe-area-inset-bottom,0px))) + 16px);
    box-sizing:border-box;
    width:168px;
    min-width:0;
    height:48px;
    min-height:48px;
    padding:12px 12px 12px 32px;
    border-radius:6px 0 0 6px;
    background:#edf0f0;
    color:#34464e;
    box-shadow:0 2px 8px rgb(0 0 0 / .08);
    white-space:nowrap;
    transform:translateX(calc(100% - 24px));
    transition:transform .18s ease;
    animation:none;
  }
  body #cmplz-manage-consent .cmplz-manage-consent::before{
    content:"";
    position:absolute;
    left:10px;
    top:17px;
    width:3px;
    height:14px;
    border-radius:2px;
    background:currentColor;
    opacity:.5;
  }
  body #cmplz-manage-consent .cmplz-manage-consent:focus-visible{
    transform:translateX(0);
    outline:2px solid #192b35;
    outline-offset:-3px;
  }
}
@media(min-width:601px) and (max-width:800px){
  body .cmplz-cookiebanner.prato-nevoso{width:480px}
}
@media(max-height:500px){
  body .cmplz-cookiebanner.prato-nevoso:not(.cmplz-dismissed){display:grid}
  body .cmplz-cookiebanner.prato-nevoso{grid-template-columns:minmax(0,1fr);height:auto;gap:12px;inset:auto 12px 12px auto;max-height:calc(100dvh - 24px);padding:16px!important}
  body .cmplz-cookiebanner.prato-nevoso .cmplz-header{grid-template-columns:100px minmax(0,1fr) 44px;grid-template-rows:auto;gap:12px;min-height:44px}
  body .cmplz-cookiebanner.prato-nevoso .cmplz-logo{grid-area:1/1;width:100px;height:36px}
  body .cmplz-cookiebanner.prato-nevoso .cmplz-title{grid-area:1/2;font-size:18px}
  body .cmplz-cookiebanner.prato-nevoso .cmplz-close{grid-area:1/3}
}

@media(prefers-reduced-motion:reduce){
  body .cmplz-cookiebanner.prato-nevoso .cmplz-categories.cmplz-fade-in{animation:none}
  body .cmplz-cookiebanner.prato-nevoso .cmplz-icon{transition:none!important}
}

/* Hover expansion belongs to a mouse; a single touch opens the native preferences. */
@media(max-width:1100px) and (hover:hover) and (pointer:fine){
  body #cmplz-manage-consent .cmplz-manage-consent:hover{transform:translateX(0)}
}
@media(max-width:1100px) and (prefers-reduced-motion:reduce){
  body #cmplz-manage-consent .cmplz-manage-consent{transition:none}
}
