/* SUNAWI consent components. Site colours may override these variables. */
:root{--privacy-ink:#183a2c;--privacy-paper:#fbf8f0;--privacy-border:#728478;--privacy-accent:#244c37}
.privacy-banner,.privacy-dialog{color:var(--privacy-ink);background:var(--privacy-paper);font:inherit;line-height:1.55;box-sizing:border-box}
.privacy-banner{position:fixed;z-index:2000;inset:auto 1rem 1rem;max-width:76rem;margin-inline:auto;padding:1.5rem;border:1px solid var(--privacy-border);border-radius:1rem;box-shadow:0 10px 48px #132c2530;display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);gap:1.5rem;max-height:calc(100dvh - 2rem);overflow:auto;overscroll-behavior:contain}
.privacy-banner h2,.privacy-dialog h2{font:inherit;font-size:1.35rem;font-weight:700;line-height:1.25;margin:0 0 .65rem;color:inherit}
.privacy-banner p,.privacy-dialog p{margin:.5rem 0;font-size:.95rem;color:inherit}
.privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;align-content:center}
.privacy-banner .privacy-actions>.privacy-button-secondary{grid-column:1/-1}
.privacy-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:46px;padding:.7rem 1rem;border:1px solid var(--privacy-accent);border-radius:.4rem;background:var(--privacy-accent);color:#fff;font:inherit;font-size:.9rem;font-weight:650;line-height:1.3;letter-spacing:normal;text-transform:none;text-decoration:none;text-align:center;cursor:pointer;box-shadow:none;white-space:normal}
.privacy-button:hover{filter:brightness(1.12)}
.privacy-button-secondary{color:var(--privacy-ink);background:transparent;border-color:var(--privacy-border)}
.privacy-banner a,.privacy-dialog a{color:inherit;text-decoration:underline;text-underline-offset:.2em}
.privacy-banner :focus-visible,.privacy-dialog :focus-visible,[data-map] .privacy-button:focus-visible{outline:3px solid var(--privacy-accent);outline-offset:4px}
.privacy-links{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem}
.privacy-dialog{width:min(40rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem);margin:auto;padding:1.65rem;border:1px solid var(--privacy-border);border-radius:1rem;overflow:auto;overscroll-behavior:contain;box-shadow:0 16px 64px #132c2540}
.privacy-dialog::backdrop{background:#091a17aa}
.privacy-dialog .privacy-actions{margin-top:1.25rem}
.privacy-dialog .privacy-actions>.privacy-button:last-child:nth-child(3){grid-column:1/-1}
.privacy-option{display:flex;gap:.85rem;align-items:flex-start;padding:1rem 0;border-block:1px solid var(--privacy-border);margin-top:1rem;cursor:pointer}
.privacy-option input{flex:none;appearance:auto;width:1.3rem;height:1.3rem;margin:.1rem 0 0;accent-color:var(--privacy-accent)}
.privacy-option-detail{display:block;font-size:.94rem;font-weight:400;margin-top:.35rem}
.privacy-secondary-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}
.privacy-secondary-actions .privacy-button{flex:1 1 12rem}
.privacy-map-status{font-size:.875rem;line-height:1.5;margin:.65rem 0;color:inherit}
.privacy-map-revoke{margin:0 0 .75rem}
[data-map-canvas]{width:100%;height:clamp(20rem,45vw,32rem);border-radius:.8rem;isolation:isolate;background:#e9eee5}
[data-map-canvas][hidden],[data-map-placeholder][hidden],.privacy-button[hidden]{display:none!important}
.privacy-map-pin{background:transparent;border:0}
.privacy-map-pin span{display:block;width:30px;height:30px;border:3px solid white;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--privacy-accent);box-shadow:0 2px 6px #0005}
.privacy-map-pin span::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:white;left:8px;top:8px}
.privacy-sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:700px){.privacy-banner{grid-template-columns:1fr;gap:1rem;inset:auto .65rem .65rem;padding:1.15rem;max-height:calc(100dvh - 1.3rem)}.privacy-dialog{padding:1.2rem}.privacy-button{padding:.7rem .6rem}}
@media(max-width:360px){.privacy-actions{grid-template-columns:1fr}.privacy-actions>*{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){.privacy-banner *,.privacy-dialog *{scroll-behavior:auto!important}}
@media print{.privacy-banner,.privacy-dialog,.privacy-map-revoke,.privacy-map-status,[data-map-canvas]{display:none!important}}
