:root{
  --iwf-rgpd-primary:#6600FF;
  --iwf-rgpd-accent:#C851D1;
  --iwf-rgpd-lilac:#A567F9;
  --iwf-rgpd-ink:#171229;
  --iwf-rgpd-text:#4E4764;
  --iwf-rgpd-muted:#756E89;
  --iwf-rgpd-line:rgba(72,45,111,.12);
  --iwf-rgpd-surface:#FFFFFF;
  --iwf-rgpd-soft:#F7F3FC;
  --iwf-rgpd-accept-bg:#6600FF;
  --iwf-rgpd-accept-text:#fff;
  --iwf-rgpd-reject-bg:#fff;
  --iwf-rgpd-reject-text:#31284A;
  --iwf-rgpd-custom-bg:#fff;
  --iwf-rgpd-custom-text:#6600FF;
  --iwf-rgpd-custom-border:#D4C4F4;
  --iwf-rgpd-save-bg:#fff;
  --iwf-rgpd-save-text:#31284A;
  --iwf-rgpd-reopen-bg:#fff;
  --iwf-rgpd-reopen-text:#6600FF;
}

.iwf-rgpd-overlay,.iwf-rgpd-overlay *{box-sizing:border-box}
.iwf-rgpd-overlay[hidden],.iwf-rgpd-reopen[hidden]{display:none!important}
body.iwf-rgpd-lock{overflow:hidden!important}

.iwf-rgpd-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:grid!important;
  place-items:center!important;
  padding:28px!important;
  background:
    radial-gradient(circle at 12% 18%,rgba(165,103,249,.28),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(200,81,209,.24),transparent 30%),
    rgba(34,22,49,.58)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;
}

.iwf-rgpd-modal{
  position:relative!important;
  width:min(1420px,96vw)!important;
  max-height:min(920px,94vh)!important;
  display:grid!important;
  grid-template-columns:minmax(380px,.92fr) minmax(560px,1.08fr)!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:32px!important;
  box-shadow:0 40px 120px rgba(18,8,44,.34),0 1px 0 rgba(255,255,255,.78) inset!important;
}

.iwf-rgpd-close{
  position:absolute!important;
  top:20px!important;
  right:22px!important;
  z-index:10!important;
  width:44px!important;
  height:44px!important;
  border:0!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.76)!important;
  color:#21193A!important;
  font-size:30px!important;
  font-weight:300!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:0 8px 24px rgba(34,20,63,.10)!important;
  transition:transform .2s ease,background .2s ease!important;
}
.iwf-rgpd-close:hover{transform:rotate(5deg) scale(1.05)!important;background:#fff!important}

.iwf-rgpd-visual{
  position:relative!important;
  min-height:760px!important;
  overflow:hidden!important;
  background:#EEE5FA!important;
}
.iwf-rgpd-visual>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:saturate(.92) contrast(.96) brightness(1.08)!important;
  transform:scale(1.018)!important;
}
.iwf-rgpd-visual-shade{
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(180deg,rgba(25,9,54,.035),rgba(36,14,68,.08)),
    linear-gradient(90deg,rgba(91,48,140,.025),transparent 46%),
    linear-gradient(0deg,rgba(31,14,59,.42) 0%,rgba(31,14,59,.04) 52%,rgba(255,255,255,.16) 100%)!important;
}
.iwf-rgpd-visual-copy{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  padding:54px 48px!important;
  color:#fff!important;
  text-shadow:0 2px 18px rgba(28,8,56,.34)!important;
}
.iwf-rgpd-visual-logo{
  position:absolute!important;
  top:38px!important;
  left:42px!important;
  width:auto!important;
  height:70px!important;
  max-width:260px!important;
  object-fit:contain!important;
  background:rgba(255,255,255,.91)!important;
  border:1px solid rgba(255,255,255,.86)!important;
  border-radius:18px!important;
  padding:12px 16px!important;
  box-shadow:0 14px 38px rgba(34,14,69,.16)!important;
  filter:none!important;
  transform:none!important;
}
.iwf-rgpd-eyebrow{
  display:inline-flex!important;
  padding:8px 12px!important;
  margin-bottom:18px!important;
  border:1px solid rgba(255,255,255,.38)!important;
  border-radius:999px!important;
  background:rgba(28,10,56,.24)!important;
  backdrop-filter:blur(8px)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.iwf-rgpd-visual-copy h2{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(34px,3.2vw,56px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  font-weight:800!important;
}
.iwf-rgpd-visual-copy h2 strong{
  display:inline-block!important;
  color:#F0D8FF!important;
  font-weight:850!important;
}
.iwf-rgpd-visual-copy p{
  max-width:500px!important;
  margin:18px 0 24px!important;
  color:rgba(255,255,255,.92)!important;
  font-size:17px!important;
  line-height:1.55!important;
}
.iwf-rgpd-visual-points{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
.iwf-rgpd-visual-points span{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.15)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  backdrop-filter:blur(10px)!important;
  font-size:12px!important;
  font-weight:750!important;
}
.iwf-rgpd-visual-points i{font-style:normal!important;color:#F1D5FF!important;font-weight:900!important}

.iwf-rgpd-content{
  position:relative!important;
  min-width:0!important;
  overflow:auto!important;
  padding:48px 54px 40px!important;
  background:
    radial-gradient(circle at 96% 2%,rgba(200,81,209,.08),transparent 20%),
    radial-gradient(circle at 4% 96%,rgba(102,0,255,.07),transparent 22%),
    linear-gradient(180deg,#fff 0%,#FDFCFF 100%)!important;
  color:var(--iwf-rgpd-ink)!important;
}
.iwf-rgpd-topline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding-right:42px!important;
  margin-bottom:20px!important;
}
.iwf-rgpd-kicker{
  color:var(--iwf-rgpd-primary)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.iwf-rgpd-continue,.iwf-rgpd-link-button{
  border:0!important;
  background:transparent!important;
  color:#5B5370!important;
  padding:0!important;
  font:inherit!important;
  font-size:13px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  cursor:pointer!important;
}
.iwf-rgpd-content>h2{
  margin:0!important;
  color:#0D0A23!important;
  font-size:clamp(32px,3vw,48px)!important;
  line-height:1.04!important;
  font-weight:850!important;
  letter-spacing:-.045em!important;
}
.iwf-rgpd-intro{
  max-width:760px!important;
  margin:16px 0 24px!important;
  color:var(--iwf-rgpd-text)!important;
  font-size:16px!important;
  line-height:1.65!important;
}

.iwf-rgpd-preferences{display:grid!important;gap:12px!important}
.iwf-rgpd-row{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  padding:17px 18px!important;
  border:1px solid rgba(79,55,115,.11)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 10px 28px rgba(59,37,87,.045)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.iwf-rgpd-row:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(102,0,255,.18)!important;
  box-shadow:0 14px 34px rgba(74,42,113,.07)!important;
}
.iwf-rgpd-row-icon{
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:16px!important;
  color:var(--iwf-rgpd-primary)!important;
  background:linear-gradient(145deg,#F4ECFF,#EDE4FF)!important;
}
.iwf-rgpd-row-icon svg{width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.iwf-rgpd-row-icon--chart svg path{fill:currentColor!important;stroke:none!important}
.iwf-rgpd-row-copy{min-width:0!important}
.iwf-rgpd-row-title{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-bottom:4px!important}
.iwf-rgpd-row-copy strong{color:#16102A!important;font-size:15px!important;font-weight:820!important}
.iwf-rgpd-row-copy>span{display:block!important;color:#6A627D!important;font-size:13px!important;line-height:1.45!important}
.iwf-rgpd-always{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  color:#6F30D9!important;
  background:#F1E8FF!important;
  font-size:11px!important;
  font-weight:800!important;
}

.iwf-rgpd-switch{position:relative!important;display:inline-flex!important;width:52px!important;height:30px!important;flex:0 0 auto!important;cursor:pointer!important}
.iwf-rgpd-switch input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.iwf-rgpd-switch>span{
  width:52px!important;
  height:30px!important;
  border-radius:999px!important;
  background:#DCD8E8!important;
  border:1px solid rgba(50,34,73,.06)!important;
  transition:.2s ease!important;
  box-shadow:inset 0 1px 2px rgba(31,18,46,.08)!important;
}
.iwf-rgpd-switch>span:after{
  content:""!important;
  position:absolute!important;
  width:22px!important;
  height:22px!important;
  left:4px!important;
  top:4px!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 3px 10px rgba(22,12,36,.16)!important;
  transition:.2s ease!important;
}
.iwf-rgpd-switch input:checked+span{background:linear-gradient(135deg,var(--iwf-rgpd-primary),var(--iwf-rgpd-accent))!important}
.iwf-rgpd-switch input:checked+span:after{transform:translateX(22px)!important}
.iwf-rgpd-switch input:focus-visible+span{box-shadow:0 0 0 4px rgba(102,0,255,.14)!important}
.iwf-rgpd-switch--locked{cursor:default!important;opacity:.72!important}
.iwf-rgpd-switch--locked>span{background:#CFCBDD!important}
.iwf-rgpd-switch--locked>span:after{transform:translateX(22px)!important}

.iwf-rgpd-actions{margin-top:22px!important}
.iwf-rgpd-btn{
  min-height:52px!important;
  border-radius:16px!important;
  border:1px solid transparent!important;
  padding:13px 18px!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:820!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  line-height:1.2!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

.iwf-rgpd-btn:hover{transform:translateY(-2px)!important}
.iwf-rgpd-btn span{font-size:16px!important;margin:0!important;flex:0 0 auto!important;line-height:1!important}
.iwf-rgpd-btn-accept{
  width:100%!important;
  color:var(--iwf-rgpd-accept-text)!important;
  background:linear-gradient(90deg,var(--iwf-rgpd-accept-bg),var(--iwf-rgpd-accent))!important;
  box-shadow:0 14px 30px rgba(102,0,255,.22)!important;
}
.iwf-rgpd-actions-secondary{display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;gap:12px!important;margin-top:12px!important}
.iwf-rgpd-btn-reject{
  color:var(--iwf-rgpd-reject-text)!important;
  background:var(--iwf-rgpd-reject-bg)!important;
  border-color:#DCD4EA!important;
  box-shadow:0 8px 18px rgba(44,27,65,.05)!important;
}
.iwf-rgpd-btn-save{
  color:var(--iwf-rgpd-save-text)!important;
  background:var(--iwf-rgpd-save-bg)!important;
  border-color:#D9C8F3!important;
  box-shadow:0 8px 18px rgba(102,0,255,.05)!important;
  padding-left:14px!important;
  padding-right:14px!important;
  font-size:13.5px!important;
}

.iwf-rgpd-btn:focus-visible,.iwf-rgpd-close:focus-visible,.iwf-rgpd-continue:focus-visible,.iwf-rgpd-link-button:focus-visible,.iwf-rgpd-links a:focus-visible{outline:3px solid rgba(102,0,255,.23)!important;outline-offset:3px!important}

.iwf-rgpd-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:14px 22px!important;
  margin-top:22px!important;
  padding-top:18px!important;
  border-top:1px solid var(--iwf-rgpd-line)!important;
}
.iwf-rgpd-links a,.iwf-rgpd-link-button{
  color:#6B647B!important;
  font-size:12px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
.iwf-rgpd-links a:hover,.iwf-rgpd-link-button:hover{color:var(--iwf-rgpd-primary)!important}

.iwf-rgpd-reopen{
  position:fixed!important;
  left:18px!important;
  bottom:18px!important;
  z-index:2147482000!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  border:1px solid rgba(102,0,255,.14)!important;
  border-radius:999px!important;
  padding:11px 15px!important;
  background:var(--iwf-rgpd-reopen-bg)!important;
  color:var(--iwf-rgpd-reopen-text)!important;
  font:700 13px/1 Inter,ui-sans-serif,system-ui,sans-serif!important;
  box-shadow:0 12px 34px rgba(28,15,56,.16)!important;
  cursor:pointer!important;
}
.iwf-rgpd-reopen span{width:22px!important;height:22px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:linear-gradient(135deg,var(--iwf-rgpd-primary),var(--iwf-rgpd-accent))!important;color:#fff!important}

.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:1100px){
  .iwf-rgpd-modal{grid-template-columns:minmax(320px,.82fr) minmax(500px,1.18fr)!important}
  .iwf-rgpd-content{padding:40px 38px 34px!important}
  .iwf-rgpd-visual-copy{padding:42px 34px!important}
  .iwf-rgpd-visual-logo{left:30px!important;top:30px!important;height:62px!important}
}

@media(max-width:860px){
  .iwf-rgpd-overlay{padding:10px!important}
  .iwf-rgpd-modal{display:block!important;width:min(720px,100%)!important;max-height:96dvh!important;border-radius:24px!important}
  .iwf-rgpd-visual{display:none!important}
  .iwf-rgpd-content{padding:34px 26px 26px!important;max-height:96dvh!important}
  .iwf-rgpd-topline{padding-right:46px!important}
}

@media(max-width:560px){
  .iwf-rgpd-overlay{padding:0!important;place-items:end center!important}
  .iwf-rgpd-modal{width:100%!important;max-height:96dvh!important;border-radius:24px 24px 0 0!important}
  .iwf-rgpd-content{padding:28px 18px 22px!important}
  .iwf-rgpd-topline{align-items:flex-start!important;flex-direction:column!important;gap:8px!important;margin-bottom:16px!important}
  .iwf-rgpd-content>h2{font-size:32px!important}
  .iwf-rgpd-intro{font-size:14px!important;margin:12px 0 18px!important}
  .iwf-rgpd-row{grid-template-columns:44px minmax(0,1fr) auto!important;gap:12px!important;padding:14px 13px!important;border-radius:16px!important}
  .iwf-rgpd-row-icon{width:42px!important;height:42px!important;border-radius:14px!important}
  .iwf-rgpd-row-copy strong{font-size:14px!important}
  .iwf-rgpd-row-copy>span{font-size:12px!important}
  .iwf-rgpd-always{display:none!important}
  .iwf-rgpd-switch,.iwf-rgpd-switch>span{width:46px!important;height:28px!important}
  .iwf-rgpd-switch>span:after{width:20px!important;height:20px!important}
  .iwf-rgpd-switch input:checked+span:after,.iwf-rgpd-switch--locked>span:after{transform:translateX(18px)!important}
  .iwf-rgpd-actions-secondary{grid-template-columns:1fr!important}
  .iwf-rgpd-links{gap:12px 16px!important}
  .iwf-rgpd-close{top:16px!important;right:14px!important}
}
