/* ============================================================
   Avárion Consent-Banner – DSGVO-konformer Cookie-Manager
   ============================================================ */

.av-consent{
  position:fixed;left:0;right:0;bottom:0;z-index:99999;
  display:none;
  padding:16px clamp(16px,4vw,32px);
  background:rgba(2,77,68,.97);
  color:#fff;
  font-family:"Manrope",Arial,sans-serif;
  box-shadow:0 -8px 32px rgba(0,0,0,.25);
  border-top:1px solid rgba(198,235,12,.35);
  backdrop-filter:blur(8px);
  animation:avConsentIn .3s ease-out;
}
.av-consent.is-open{display:block;}

@keyframes avConsentIn{
  from{transform:translateY(100%);opacity:0;}
  to{transform:translateY(0);opacity:1;}
}

.av-consent__inner{
  max-width:1100px;margin:0 auto;
  display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;
}
.av-consent__text{
  flex:1 1 320px;min-width:260px;
  font-size:14px;line-height:1.55;color:rgba(255,255,255,.9);
}
.av-consent__text strong{color:#c6eb0c;font-weight:800;}
.av-consent__text a{color:#c6eb0c;text-decoration:underline;}
.av-consent__text a:hover{text-decoration:none;}

.av-consent__actions{
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;
}
.av-consent__btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:11px 20px;min-height:42px;
  border-radius:999px;border:0;cursor:pointer;
  font-family:inherit;font-size:13px;font-weight:800;letter-spacing:.01em;
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
  text-decoration:none;white-space:nowrap;
}
.av-consent__btn--primary{
  background:#c6eb0c;color:#092631;
  box-shadow:0 6px 18px rgba(198,235,12,.3);
}
.av-consent__btn--primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(198,235,12,.4);}
.av-consent__btn--secondary{
  background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.25);
}
.av-consent__btn--secondary:hover{background:rgba(255,255,255,.18);}
.av-consent__btn--text{
  background:transparent;color:rgba(255,255,255,.75);padding:11px 12px;
}
.av-consent__btn--text:hover{color:#fff;}

@media (max-width:620px){
  .av-consent{padding:14px 16px;}
  .av-consent__actions{width:100%;}
  .av-consent__btn{flex:1 1 auto;min-width:120px;}
  .av-consent__btn--text{flex:1 1 100%;}
}

/* ---------- Settings Modal ---------- */
.av-consent-modal{
  position:fixed;inset:0;z-index:100000;
  display:none;
  align-items:center;justify-content:center;
  padding:20px;
  background:rgba(2,19,17,.75);
  backdrop-filter:blur(6px);
  font-family:"Manrope",Arial,sans-serif;
}
.av-consent-modal.is-open{display:flex;animation:avConsentFade .2s ease-out;}

@keyframes avConsentFade{from{opacity:0;}to{opacity:1;}}

.av-consent-modal__card{
  width:min(560px,100%);
  max-height:90vh;overflow-y:auto;
  background:#fff;color:#0d1424;
  border-radius:20px;
  padding:28px clamp(20px,4vw,34px);
  box-shadow:0 30px 80px rgba(0,0,0,.4);
}
.av-consent-modal__title{
  margin:0 0 10px;font-size:22px;font-weight:900;letter-spacing:-.02em;color:#024d44;
}
.av-consent-modal__intro{
  margin:0 0 20px;font-size:13.5px;line-height:1.6;color:rgba(13,20,36,.72);
}
.av-consent-modal__intro a{color:#024d44;text-decoration:underline;}

.av-consent-cat{
  border-top:1px solid rgba(13,20,36,.1);
  padding:16px 0;
  display:flex;gap:14px;align-items:flex-start;
}
.av-consent-cat__text{flex:1;}
.av-consent-cat__title{
  margin:0 0 4px;font-size:14px;font-weight:800;color:#0d1424;
}
.av-consent-cat__desc{
  margin:0;font-size:12.5px;line-height:1.55;color:rgba(13,20,36,.65);
}

/* Toggle Switch */
.av-consent-toggle{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0;}
.av-consent-toggle input{opacity:0;width:0;height:0;}
.av-consent-toggle__slider{
  position:absolute;cursor:pointer;inset:0;
  background:rgba(13,20,36,.2);border-radius:999px;transition:.25s;
}
.av-consent-toggle__slider::before{
  content:"";position:absolute;left:3px;top:3px;
  width:18px;height:18px;background:#fff;border-radius:50%;
  transition:.25s;box-shadow:0 1px 3px rgba(0,0,0,.2);
}
.av-consent-toggle input:checked + .av-consent-toggle__slider{background:#024d44;}
.av-consent-toggle input:checked + .av-consent-toggle__slider::before{transform:translateX(18px);}
.av-consent-toggle input:disabled + .av-consent-toggle__slider{opacity:.5;cursor:not-allowed;}

.av-consent-modal__actions{
  display:flex;gap:10px;flex-wrap:wrap;
  margin-top:22px;padding-top:18px;
  border-top:1px solid rgba(13,20,36,.1);
}
.av-consent-modal__actions .av-consent__btn{flex:1 1 auto;min-width:140px;}
.av-consent-modal__actions .av-consent__btn--secondary{
  background:rgba(13,20,36,.06);color:#0d1424;border:1px solid rgba(13,20,36,.15);
}
.av-consent-modal__actions .av-consent__btn--secondary:hover{background:rgba(13,20,36,.1);}
