.legal-page .page-heading{padding-bottom:32px}
.legal-page .page-heading h1{max-width:18ch;font-size:clamp(46px,6.2vw,88px)}
.legal-page .article{width:min(960px,calc(100% - var(--gutter)*2));margin-inline:auto;padding:0 0 72px;font-size:17px;line-height:1.7;color:var(--ink)}
.legal-content>p{margin-top:20px}
.legal-content>.legal-updated{margin:0 0 28px;color:var(--ink);font-size:17px}
.legal-content h2{margin:42px 0 18px;font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:-.02em}
.legal-content ul{padding-left:24px;margin:18px 0}
.legal-content li+li{margin-top:12px}
.legal-content a,.form-privacy-notice a,.privacy-banner a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;margin:24px 0;scrollbar-width:thin}
.legal-content table{width:100%;min-width:580px;border-collapse:collapse;font:inherit;line-height:1.5}
.legal-content th,.legal-content td{padding:14px 16px;text-align:left;vertical-align:top;border:1px solid var(--line)}
.legal-content th{font-weight:600;background:#eeebe5}
.legal-content th:first-child,.legal-content td:first-child{width:29%}
.inquiry-form .form-privacy-notice{display:block;margin:0 0 24px;font-size:17px!important;line-height:1.65;color:var(--ink)!important;text-align:left;font-weight:400}
.inquiry-form .wpforms-field:has(>input[aria-hidden="true"][tabindex="-1"]){position:absolute!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%);pointer-events:none}
.inquiry-form .wpforms-field-label[aria-hidden="true"]{display:none!important}
.footer-legal{grid-column:1/-1;padding-top:16px;border-top:1px solid var(--line);min-width:0}
.site-footer .footer-legal nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 24px;padding:0;font-size:14px;line-height:1.5}
.site-footer .footer-legal nav a,.site-footer .privacy-settings-link{font:inherit;border:0;background:transparent;color:var(--muted);padding:6px 0;text-decoration:none;text-underline-offset:4px;cursor:pointer}
.site-footer .footer-legal nav a:hover,.site-footer .footer-legal nav a:focus-visible,.site-footer .privacy-settings-link:hover,.site-footer .privacy-settings-link:focus-visible{color:var(--ink);text-decoration:underline}
.privacy-banner[hidden],.privacy-chat-launcher[hidden],[data-privacy-placeholder][hidden]{display:none}
.privacy-banner{position:fixed;z-index:90;inset:auto 20px 20px;max-width:1120px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:24px;padding:26px 30px;border:1px solid var(--ink);background:#fff;color:var(--ink);box-shadow:0 8px 30px #1212121a;font-size:16px;line-height:1.5}
.privacy-banner h2{font-family:Inter,Arial,sans-serif;font-size:19px;line-height:1.25;letter-spacing:0;font-weight:600;margin-bottom:10px}
.privacy-banner p{margin:0 0 10px}
.privacy-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.privacy-actions button,.privacy-placeholder button{min-height:44px;padding:10px 14px;border:1px solid var(--ink);border-radius:0;color:var(--ink);background:#fff;font-size:15px;line-height:1.3;white-space:normal}
.privacy-actions button:hover,.privacy-placeholder button:hover{background:var(--paper)}
.privacy-dialog{width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:30px;border:1px solid var(--ink);color:var(--ink);background:#fff;overflow-y:auto}
.privacy-dialog::backdrop{background:#12121280}
.privacy-dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.privacy-dialog h2{font-size:40px;line-height:1}
.privacy-close{border:0;border-bottom:1px solid var(--ink);padding:0 0 3px;background:none;font-size:15px}
.privacy-dialog p{font-size:16px;line-height:1.5}
.privacy-dialog fieldset{border:0;padding:0;margin:26px 0}
.privacy-dialog legend{font-size:17px;font-weight:600;margin-bottom:14px}
.privacy-dialog label{display:flex;align-items:flex-start;gap:12px;padding:15px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.4;cursor:pointer}
.privacy-dialog input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--ink);flex:none}
.privacy-dialog label strong,.privacy-dialog label span span{display:block}
.privacy-dialog label span span{margin-top:6px;font-size:15px}
.privacy-placeholder{padding:28px 0;font-size:17px;color:var(--ink)}
.privacy-placeholder p{margin:0 0 18px}
.privacy-chat-launcher{position:fixed;z-index:18;right:24px;bottom:24px;min-height:48px;padding:12px 18px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:15px}
body:has(.privacy-dialog[open]) .concerto-cb,body:has(.privacy-dialog[open]) .privacy-chat-launcher,body:has(.privacy-dialog[open]) .back-to-top{visibility:hidden!important}
.menu-open .privacy-chat-launcher,.bio-open .privacy-chat-launcher,.gallery-open .privacy-chat-launcher{display:none}
@media(max-width:800px){
.legal-page .article{font-size:17px;padding-bottom:52px}
.legal-page .page-heading{padding-block:38px 30px}
.legal-content th,.legal-content td{padding:12px}
.privacy-banner{inset:auto 12px max(12px,env(safe-area-inset-bottom));padding:20px;grid-template-columns:minmax(0,1fr);gap:16px;max-height:calc(100dvh - 24px);overflow-y:auto}
.privacy-actions{align-items:stretch}
.privacy-actions button{flex:1 1 130px}
.privacy-dialog{padding:24px 20px}
.privacy-dialog h2{font-size:34px}
.privacy-chat-launcher{position:relative;inset:auto;display:block;margin:12px var(--gutter) 24px auto}
.site-footer .footer-legal nav{width:auto;grid-template-columns:none}
}
