/* AdeptDEV Privacy & Cookie Center v0.24.0 */
:root {
  --adev-pc-blue: #2864ec;
  --adev-pc-blue-2: #174fd3;
  --adev-pc-cyan: #52b9ff;
  --adev-pc-ink: #102a55;
  --adev-pc-text: #647a9d;
  --adev-pc-line: #dbe6f7;
  --adev-pc-soft: #f5f9ff;
  --adev-pc-white: #fff;
  --adev-pc-green: #1d9f6d;
  --adev-pc-red: #d5444d;
}

body.adev-privacy-open { overflow: hidden !important; }

.adev-privacy-banner,
.adev-privacy-banner *,
.adev-privacy-center,
.adev-privacy-center *,
.adev-privacy-footer-tools,
.adev-privacy-footer-tools *,
.adev-privacy-toast,
.adev-privacy-toast * { box-sizing: border-box; }

.adev-privacy-banner {
  position: fixed;
  z-index: 2147483200;
  left: 50%;
  bottom: 22px;
  width: min(1180px, calc(100vw - 40px));
  transform: translate(-50%, 24px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .24s ease, transform .24s ease;
}
.adev-privacy-banner.is-visible { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.adev-privacy-banner__inner {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 20px 22px;
  border: 1px solid rgba(180,204,242,.82);
  border-radius: 26px;
  background:
    radial-gradient(circle at 7% 20%, rgba(75,142,255,.15), transparent 25%),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,250,255,.98));
  box-shadow: 0 26px 70px rgba(16, 42, 85, .20), inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter: blur(18px);
}
.adev-privacy-banner__brand { display:flex; align-items:center; gap:11px; color:var(--adev-pc-blue); font-size:11px; font-weight:900; letter-spacing:.12em; }
.adev-privacy-banner__icon { display:grid; place-items:center; width:42px; height:42px; border-radius:14px; color:#fff; background:linear-gradient(135deg,#4c86ff,#1d55dc); box-shadow:0 12px 24px rgba(36,98,230,.22); }
.adev-privacy-banner__icon svg,.adev-privacy-center__shield svg,.adev-privacy-footer-tools__icon svg,.adev-privacy-toast span svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.adev-privacy-banner__copy h2 { margin:0 0 6px; color:var(--adev-pc-ink); font-size:20px; line-height:1.2; font-weight:850; letter-spacing:-.02em; }
.adev-privacy-banner__copy p { margin:0; max-width:690px; color:var(--adev-pc-text); font-size:13px; line-height:1.6; font-weight:550; }
.adev-privacy-banner__copy a { color:var(--adev-pc-blue); font-weight:750; text-decoration:none; border-bottom:1px solid rgba(40,100,236,.24); }
.adev-privacy-banner__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; max-width:390px; }

.adev-privacy-btn {
  appearance:none; border:1px solid #cad9f1; border-radius:15px; min-height:46px; padding:0 16px; background:#fff; color:#21406f; font-family:inherit; font-size:12.5px; line-height:1; font-weight:800; cursor:pointer; box-shadow:0 8px 18px rgba(21,66,135,.06); transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.adev-privacy-btn:hover { transform:translateY(-1px); border-color:#9bb9ea; box-shadow:0 11px 22px rgba(21,66,135,.10); }
.adev-privacy-btn--primary { border-color:transparent; color:#fff; background:linear-gradient(135deg,#4b83ff 0%,#2458df 100%); box-shadow:0 13px 26px rgba(36,88,223,.22); }
.adev-privacy-btn--primary:hover { box-shadow:0 16px 30px rgba(36,88,223,.29); }
.adev-privacy-btn--ghost { background:#f6f9ff; }

.adev-privacy-center { position:fixed; z-index:2147483500; inset:0; display:grid; place-items:center; padding:24px; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .2s ease,visibility .2s ease; }
.adev-privacy-center.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.adev-privacy-center__backdrop { position:absolute; inset:0; background:rgba(7,20,46,.56); backdrop-filter:blur(10px); }
.adev-privacy-center__dialog { position:relative; z-index:1; width:min(780px,100%); max-height:min(820px,calc(100vh - 48px)); display:flex; flex-direction:column; overflow:hidden; border:1px solid rgba(210,224,247,.95); border-radius:30px; background:linear-gradient(160deg,#fff 0%,#f7fbff 100%); box-shadow:0 42px 100px rgba(8,30,69,.32); transform:translateY(16px) scale(.985); transition:transform .22s ease; }
.adev-privacy-center.is-open .adev-privacy-center__dialog { transform:none; }
.adev-privacy-center__head { position:relative; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:24px 26px; border-bottom:1px solid #e3ebf8; background:radial-gradient(circle at 90% 10%,rgba(76,142,255,.14),transparent 28%),linear-gradient(135deg,#fff,#f4f9ff); }
.adev-privacy-center__identity { display:flex; align-items:center; gap:14px; min-width:0; }
.adev-privacy-center__shield { display:grid; place-items:center; flex:0 0 48px; width:48px; height:48px; border-radius:16px; color:#fff; background:linear-gradient(135deg,#4c86ff,#2055db); box-shadow:0 14px 28px rgba(32,85,219,.23); }
.adev-privacy-center__identity span:not(.adev-privacy-center__shield) { display:block; margin-bottom:4px; color:#3670ea; font-size:10px; font-weight:900; letter-spacing:.12em; }
.adev-privacy-center__identity h2 { margin:0; color:var(--adev-pc-ink); font-size:25px; line-height:1.15; font-weight:850; letter-spacing:-.025em; }
.adev-privacy-center__close { position:relative; flex:0 0 44px; width:44px; height:44px; border:1px solid #cfddf2; border-radius:15px; background:#fff; cursor:pointer; transition:.16s ease; }
.adev-privacy-center__close:hover { border-color:#94b4e9; transform:translateY(-1px); }
.adev-privacy-center__close span { position:absolute; left:50%; top:50%; width:16px; height:2px; border-radius:2px; background:#5d759b; }
.adev-privacy-center__close span:first-child { transform:translate(-50%,-50%) rotate(45deg); }
.adev-privacy-center__close span:last-child { transform:translate(-50%,-50%) rotate(-45deg); }
.adev-privacy-center__body { overflow:auto; overscroll-behavior:contain; padding:22px 26px 18px; }
.adev-privacy-center__intro { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:start; margin-bottom:18px; }
.adev-privacy-center__intro > p { margin:0; color:var(--adev-pc-text); font-size:13.5px; line-height:1.65; font-weight:550; }
.adev-privacy-center__status { display:inline-flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid #e0e8f5; border-radius:999px; background:#fff; color:#7385a2; font-size:10.5px; line-height:1.3; font-weight:750; white-space:nowrap; }
.adev-privacy-center__status span { width:7px; height:7px; border-radius:50%; background:#95a6c0; box-shadow:0 0 0 4px rgba(149,166,192,.12); }
.adev-privacy-center__status.is-saved { color:#267b5b; border-color:#d6eee4; background:#f6fcf9; }
.adev-privacy-center__status.is-saved span { background:#28a674; box-shadow:0 0 0 4px rgba(40,166,116,.12); }
.adev-privacy-categories { display:grid; gap:10px; }
.adev-privacy-category { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; padding:17px 18px; border:1px solid #dce6f6; border-radius:20px; background:#fff; box-shadow:0 8px 24px rgba(23,68,136,.045); }
.adev-privacy-category.is-locked { background:linear-gradient(135deg,#f7fbff,#f1f7ff); border-color:#cfe0f8; }
.adev-privacy-category__top { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:5px; }
.adev-privacy-category h3 { margin:0; color:#18345f; font-size:15px; line-height:1.35; font-weight:850; }
.adev-privacy-category p { margin:0; color:#7084a4; font-size:12px; line-height:1.55; font-weight:550; }
.adev-privacy-category__badge { display:inline-flex; align-items:center; min-height:22px; padding:0 8px; border-radius:999px; background:#edf4ff; color:#4b70ac; font-size:9.5px; font-weight:850; letter-spacing:.02em; }
.adev-privacy-locked { color:#2d6ce5; font-size:11px; font-weight:850; white-space:nowrap; }
.adev-privacy-switch { display:inline-flex; align-items:center; cursor:pointer; }
.adev-privacy-switch input { position:absolute; opacity:0; width:1px; height:1px; pointer-events:none; }
.adev-privacy-switch__track { position:relative; display:block; width:48px; height:28px; border:1px solid #cbd9ee; border-radius:999px; background:#eef3f9; box-shadow:inset 0 1px 3px rgba(31,62,108,.06); transition:.18s ease; }
.adev-privacy-switch__track span { position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 3px 8px rgba(22,54,103,.18); transition:transform .18s ease; }
.adev-privacy-switch input:checked + .adev-privacy-switch__track { border-color:#2462e9; background:linear-gradient(135deg,#4b83ff,#2358df); }
.adev-privacy-switch input:checked + .adev-privacy-switch__track span { transform:translateX(20px); }
.adev-privacy-switch input:focus-visible + .adev-privacy-switch__track { box-shadow:0 0 0 4px rgba(36,98,233,.14); }
.adev-privacy-center__links { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:17px; }
.adev-privacy-center__links a { color:#2a62d9; font-size:11px; font-weight:750; text-decoration:none; }
.adev-privacy-center__links span { width:3px; height:3px; border-radius:50%; background:#a7b6cc; }
.adev-privacy-center__actions { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:17px 26px 20px; border-top:1px solid #e3ebf8; background:rgba(249,252,255,.96); }
.adev-privacy-center__actions > div { display:flex; gap:9px; }
.adev-privacy-text-action { appearance:none; border:0; padding:8px 0; background:transparent; color:#5d7397; font-family:inherit; font-size:11px; line-height:1.3; font-weight:750; cursor:pointer; }
.adev-privacy-text-action:hover { color:#205bdc; }

.adev-privacy-footer-tools { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:10px; color:rgba(33,64,111,.72); font-size:11px; line-height:1.4; }
.adev-privacy-footer-tools__icon { display:grid; place-items:center; width:26px; height:26px; border-radius:9px; color:#2864ec; background:#edf4ff; }
.adev-privacy-footer-tools__icon svg { width:14px; height:14px; }
.adev-privacy-footer-tools a,.adev-privacy-footer-tools button { color:inherit !important; font-family:inherit !important; font-size:11px !important; line-height:1.4 !important; font-weight:750 !important; text-decoration:none !important; }
.adev-privacy-footer-tools button { appearance:none; border:0; padding:0; background:transparent; cursor:pointer; }
.adev-privacy-footer-tools a:hover,.adev-privacy-footer-tools button:hover { color:#2864ec !important; }
.adev-privacy-footer-tools__dot { width:3px; height:3px; border-radius:50%; background:#9fb0ca; }

.adev-privacy-toast { position:fixed; z-index:2147483600; left:50%; bottom:26px; display:flex; align-items:center; gap:10px; max-width:min(460px,calc(100vw - 32px)); padding:12px 14px; border:1px solid #d6e3f6; border-radius:17px; background:rgba(255,255,255,.97); box-shadow:0 20px 50px rgba(13,43,91,.20); transform:translate(-50%,18px); opacity:0; pointer-events:none; transition:.2s ease; }
.adev-privacy-toast.is-visible { transform:translate(-50%,0); opacity:1; }
.adev-privacy-toast > span { display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px; border-radius:11px; color:#fff; background:linear-gradient(135deg,#4b83ff,#2358df); }
.adev-privacy-toast > span svg { width:16px; height:16px; }
.adev-privacy-toast p { margin:0; color:#24436f; font-size:12px; line-height:1.4; font-weight:750; }

/* Privacy / Cookie policy pages */
.adev-legal-page { --legal-blue:#2864ec; --legal-ink:#102a55; --legal-text:#62799e; width:100%; max-width:1280px; margin:0 auto; padding:0 0 48px; }
.adev-legal-hero { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr); gap:22px; padding:34px; border:1px solid #d8e5f7; border-radius:30px; background:radial-gradient(circle at 92% 8%,rgba(69,139,255,.16),transparent 29%),linear-gradient(135deg,#fff 0%,#f5faff 58%,#edf6ff 100%); box-shadow:0 20px 55px rgba(21,63,126,.08); }
.adev-legal-eyebrow { display:inline-flex; align-items:center; gap:9px; margin-bottom:14px; color:#2d6be9; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.adev-legal-eyebrow:before { content:""; width:9px; height:9px; border-radius:50%; background:#3980ff; box-shadow:0 0 0 6px rgba(57,128,255,.10); }
.adev-legal-hero h1 { margin:0 0 13px; color:var(--legal-ink); font-size:44px; line-height:1.07; font-weight:850; letter-spacing:-.035em; }
.adev-legal-hero p { margin:0; max-width:760px; color:var(--legal-text); font-size:16px; line-height:1.75; font-weight:520; }
.adev-legal-status { align-self:start; padding:18px; border:1px solid rgba(209,224,247,.95); border-radius:22px; background:rgba(255,255,255,.74); backdrop-filter:blur(8px); }
.adev-legal-status strong { display:block; margin-bottom:6px; color:#19355f; font-size:15px; font-weight:850; }
.adev-legal-status p { font-size:12.5px; line-height:1.6; }
.adev-legal-status .adev-privacy-btn { width:100%; margin-top:14px; }
.adev-legal-grid { display:grid; grid-template-columns:240px minmax(0,1fr); gap:18px; margin-top:18px; }
.adev-legal-nav { position:sticky; top:22px; align-self:start; padding:14px; border:1px solid #dce7f6; border-radius:22px; background:#fff; box-shadow:0 12px 32px rgba(26,69,135,.055); }
.adev-legal-nav a { display:block; padding:11px 12px; border-radius:13px; color:#587197; font-size:12px; line-height:1.35; font-weight:750; text-decoration:none; transition:.16s ease; }
.adev-legal-nav a:hover { color:#215bdb; background:#f2f7ff; }
.adev-legal-content { display:grid; gap:12px; }
.adev-legal-section { scroll-margin-top:130px; padding:24px 26px; border:1px solid #dce7f6; border-radius:24px; background:#fff; box-shadow:0 10px 30px rgba(24,68,135,.045); }
.adev-legal-section h2 { margin:0 0 9px; color:#17335f; font-size:20px; line-height:1.25; font-weight:850; }
.adev-legal-section p,.adev-legal-section li { color:#61799f; font-size:14px; line-height:1.75; font-weight:520; }
.adev-legal-section p { margin:0 0 10px; }
.adev-legal-section p:last-child { margin-bottom:0; }
.adev-legal-section ul { margin:0; padding-left:20px; }
.adev-legal-section li { margin-bottom:6px; }
.adev-legal-section a { color:#215dde; font-weight:700; text-decoration:none; border-bottom:1px solid rgba(33,93,222,.22); }
.adev-cookie-table { width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid #dbe6f5; border-radius:17px; background:#fff; }
.adev-cookie-table th,.adev-cookie-table td { padding:12px 13px; border-bottom:1px solid #e7eef9; vertical-align:top; text-align:left; color:#60789d; font-size:12px; line-height:1.55; }
.adev-cookie-table th { color:#17335f; background:#f5f9ff; font-weight:850; }
.adev-cookie-table tr:last-child td { border-bottom:0; }

@media (max-width: 980px) {
  .adev-privacy-banner__inner { grid-template-columns:150px minmax(0,1fr); }
  .adev-privacy-banner__actions { grid-column:1/-1; max-width:none; justify-content:flex-start; }
  .adev-legal-hero { grid-template-columns:1fr; }
  .adev-legal-grid { grid-template-columns:1fr; }
  .adev-legal-nav { position:static; display:flex; overflow:auto; gap:4px; }
  .adev-legal-nav a { white-space:nowrap; }
}

@media (max-width: 680px) {
  .adev-privacy-banner { bottom:calc(82px + env(safe-area-inset-bottom)); width:calc(100vw - 24px); }
  .adev-privacy-banner__inner { display:block; padding:17px; border-radius:22px; }
  .adev-privacy-banner__brand { margin-bottom:12px; }
  .adev-privacy-banner__copy h2 { font-size:19px; }
  .adev-privacy-banner__copy p { font-size:12.5px; }
  .adev-privacy-banner__actions { display:grid; grid-template-columns:1fr 1fr; margin-top:15px; }
  .adev-privacy-banner__actions .adev-privacy-btn--primary { grid-column:1/-1; }
  .adev-privacy-banner__actions .adev-privacy-btn { min-width:0; padding:0 10px; }
  .adev-privacy-center { padding:10px; align-items:end; }
  .adev-privacy-center__dialog { max-height:calc(100dvh - 18px); border-radius:24px 24px 18px 18px; }
  .adev-privacy-center__head { padding:18px 17px; }
  .adev-privacy-center__shield { flex-basis:42px; width:42px; height:42px; border-radius:14px; }
  .adev-privacy-center__identity h2 { font-size:20px; }
  .adev-privacy-center__body { padding:17px 15px 14px; }
  .adev-privacy-center__intro { grid-template-columns:1fr; gap:10px; }
  .adev-privacy-center__status { justify-self:start; white-space:normal; }
  .adev-privacy-category { grid-template-columns:minmax(0,1fr) auto; padding:15px 14px; border-radius:18px; }
  .adev-privacy-category p { font-size:11.5px; }
  .adev-privacy-center__actions { display:grid; gap:10px; padding:13px 15px calc(14px + env(safe-area-inset-bottom)); }
  .adev-privacy-center__actions > div { display:grid; grid-template-columns:1fr 1fr; }
  .adev-privacy-center__actions .adev-privacy-btn { padding:0 10px; }
  .adev-privacy-text-action { order:2; text-align:center; }
  .adev-privacy-toast { bottom:calc(86px + env(safe-area-inset-bottom)); }
  .adev-legal-page { padding-bottom:calc(100px + env(safe-area-inset-bottom)); }
  .adev-legal-hero { padding:23px 18px; border-radius:23px; }
  .adev-legal-hero h1 { font-size:32px; }
  .adev-legal-hero p { font-size:14px; }
  .adev-legal-section { padding:19px 17px; border-radius:20px; }
  .adev-legal-section h2 { font-size:18px; }
  .adev-legal-section p,.adev-legal-section li { font-size:13px; }
  .adev-cookie-table { display:block; overflow-x:auto; white-space:nowrap; }
}

@media (prefers-reduced-motion: reduce) {
  .adev-privacy-banner,.adev-privacy-center,.adev-privacy-center__dialog,.adev-privacy-btn,.adev-privacy-switch__track,.adev-privacy-switch__track span,.adev-privacy-toast { transition:none !important; }
}
