/* Shared local privacy notice, in the established Lichtatelier material. */
.privacy-shade{position:fixed;inset:0;z-index:1090;background:#101d3324;pointer-events:none;animation:privacy-shade-in 240ms ease-out both}
.privacy-shade[hidden]{display:none}
.privacy-banner{position:fixed;inset:auto 24px 24px auto;z-index:1100;box-sizing:border-box;width:min(560px,calc(100% - 48px));max-height:calc(100dvh - 48px);margin:0;padding:32px;border:0;border-radius:16px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8fb2e2 #172a47;color:#f4f8ff;color-scheme:dark;font-family:inherit;background:radial-gradient(ellipse at 90% 0,#47699842,transparent 62%),linear-gradient(145deg,#1b304f,#101d33 68%,#172b47);box-shadow:inset 0 1px 1px #e0edff66,inset 0 -1px 2px #030b16,0 24px 60px -22px #07172b6b;isolation:isolate}
.privacy-banner:not([open]){display:none}
.privacy-banner[open]{animation:privacy-card-in 260ms cubic-bezier(.23,1,.32,1) both}
.privacy-banner::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(135deg,#e4f0ffa6,#9bc3ef28 40%,#6c99d161 72%,#d0e4ff80);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.privacy-banner::selection{background:#bed6ff;color:#101d33}
.privacy-header{display:flex;align-items:center;gap:20px;padding-right:42px}
.privacy-icon{display:grid;place-items:center;flex:0 0 60px;width:60px;height:60px;border-radius:14px;color:#c5ddff;background:linear-gradient(145deg,#c7e1ff26,#759dd916);box-shadow:inset 0 1px 1px #e0edff80,inset 0 -1px 1px #72a2db4d,0 8px 18px -13px #030b1699}
.privacy-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.privacy-banner h2{font-size:29px;font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:0;text-wrap:balance;color:#f4f8ff}
.privacy-description{font-size:15px;line-height:1.7;color:#c3d5eb;margin:21px 0 20px;max-width:70ch}
.privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.privacy-banner .privacy-choice,.privacy-banner .privacy-details-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:11px 24px;border-radius:12px;font-family:inherit;font-size:14px;font-weight:500;line-height:1.3;cursor:pointer;text-decoration:none;transition:background-color .25s,border-color .25s}
.privacy-banner .privacy-choice{flex:1;position:relative;margin:0;color:#fff;background:linear-gradient(145deg,#33529a,#223d7e 70%,#304f96);border:1px solid #8ba7df;box-shadow:inset 0 1px 1px #d9e9ff59,0 7px 13px -9px #030b1680}
.privacy-banner .privacy-choice svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.privacy-details-button{flex:1;border:1px solid #6682a9;background:#c1d9ff0d;color:#e6f0ff}
.privacy-close{position:absolute;top:16px;right:16px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:10px;background:transparent;color:#c3d5eb;cursor:pointer}
.privacy-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.privacy-links{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:23px;padding-top:17px;position:relative;color:#b9cde6;font-size:12px;line-height:1.6}
.privacy-links::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,#bdd8ff38,#e0efff7a 45%,#719aca28)}
.privacy-links a{color:#d5e7ff;text-decoration:underline;text-decoration-color:#89a5c28c;text-underline-offset:4px}
.privacy-details{margin:22px 0 0;padding-top:20px;border-top:1px solid #789bc238}
.privacy-details[hidden]{display:none}
.privacy-details h3{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 10px;font-size:16px;font-weight:500;line-height:1.4;color:#f4f8ff}
.privacy-details h3 span{font-size:11px;font-weight:500;white-space:nowrap;color:#bed6ff;padding:5px 8px;background:#8fbcf117;border-radius:6px}
.privacy-details p{font-size:14px;line-height:1.7;margin:0 0 16px;color:#c3d5eb}
.privacy-details h3:not(:first-child){margin-top:22px}
.privacy-banner button:focus-visible,.privacy-banner a:focus-visible{outline:2px solid #b9d7ff;outline-offset:4px}
.site-footer .privacy-settings-link{font:inherit;line-height:inherit;color:inherit;background:none;border:0;padding:0;min-height:44px;cursor:pointer;text-align:inherit}
.site-footer .privacy-settings-link:focus-visible{outline:2px solid #2148b0;outline-offset:4px;border-radius:4px}
@media(hover:hover) and (pointer:fine){.privacy-banner .privacy-choice:hover{background:linear-gradient(145deg,#4367b5,#2f508f 70%,#4163a9)}.privacy-details-button:hover{background:#bfdcff1a;border-color:#9bb7db}.privacy-close:hover{background:#bfdcff12;color:#fff}.privacy-settings-link:hover{text-decoration:underline;text-underline-offset:4px}}
@media(max-width:600px){.privacy-banner{width:calc(100% - 24px);right:12px;bottom:12px;padding:24px 20px 20px;max-height:calc(100dvh - 24px)}.privacy-header{gap:14px;padding-right:24px}.privacy-icon{flex-basis:44px;width:44px;height:44px;border-radius:11px}.privacy-icon svg{width:30px;height:30px}.privacy-banner h2{font-size:23px}.privacy-description{font-size:14px;margin:18px 0;line-height:1.65}.privacy-actions{gap:10px}.privacy-banner .privacy-choice,.privacy-banner .privacy-details-button{min-height:48px;padding:12px 14px}.privacy-close{top:6px;right:6px;width:40px;height:40px}.privacy-links{margin-top:20px;padding-top:15px;gap:14px}.privacy-details p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.privacy-banner[open],.privacy-shade{animation:none}.privacy-banner button{transition:none}}
@media(prefers-reduced-transparency:reduce){.privacy-banner{background:#101d33}.privacy-icon{background:#203b61}.privacy-details-button{background:#203b61}}
@media(forced-colors:active){.privacy-banner,.privacy-icon{background:Canvas;color:CanvasText;border:1px solid CanvasText;box-shadow:none}.privacy-banner::before,.privacy-links::before,.privacy-shade{display:none}.privacy-banner h2,.privacy-banner h3,.privacy-banner p,.privacy-banner dt,.privacy-banner dd,.privacy-banner span,.privacy-banner a{color:CanvasText}.privacy-banner .privacy-choice,.privacy-banner .privacy-details-button,.privacy-close{background:ButtonFace;color:ButtonText;border:1px solid ButtonText;box-shadow:none}}
@keyframes privacy-card-in{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes privacy-shade-in{from{opacity:0}to{opacity:1}}

/* Explicit, equally prominent accept/refuse controls and native checkbox. */
.privacy-banner>.privacy-details-button{width:100%;margin-top:10px;min-height:44px}
.privacy-banner h2:focus{outline:none}
.privacy-option{display:flex;align-items:center;gap:16px;position:relative;min-height:56px;padding:12px 0;cursor:pointer}
.privacy-option>span:first-child{flex:1}.privacy-option strong{display:block;font-size:16px;font-weight:500;color:#f4f8ff}.privacy-option small{display:block;margin-top:4px;font-size:12px;color:#bed6ff}
.privacy-option input{position:absolute;right:0;top:50%;translate:0 -50%;z-index:1;width:44px;height:28px;opacity:0;cursor:pointer}
.privacy-switch{position:relative;flex:0 0 44px;width:44px;height:26px;box-sizing:border-box;border:1px solid #7899bf;border-radius:20px;background:#101d33}
.privacy-switch::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#e2edfb;transition:transform .2s cubic-bezier(.16,1,.3,1)}
.privacy-option input:checked+.privacy-switch{background:#365eae;border-color:#bad2ef}.privacy-option input:checked+.privacy-switch::after{transform:translateX(18px)}
.privacy-option input:focus-visible+.privacy-switch{outline:2px solid #bed6ff;outline-offset:4px}
.privacy-banner .privacy-save{width:100%;margin:0;flex:none}.privacy-error{font-size:13px;line-height:1.6;color:#f3d4cf;margin:18px 0 0}.privacy-error[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.privacy-switch::after{transition:none}}
@media(forced-colors:active){.privacy-option input{opacity:1;appearance:auto;accent-color:Highlight}.privacy-switch{display:none}.privacy-error,.privacy-option strong,.privacy-option small{color:CanvasText}}

/* The frame belongs to the resizing dialog, never its scroll viewport. */
.privacy-banner{border:1px solid #a8c5e65c;background-clip:padding-box}
.privacy-banner::before{display:none}
