/* Scoped public legal/consent layer; existing layout and animation selectors are untouched. */
.wl-pd-consent { position:relative; box-sizing:border-box; width:100%; min-width:0; margin:18px 0; max-width:100%; color:#a6a6a6; font:inherit; font-size:14px; font-weight:300; line-height:1.5; letter-spacing:normal; word-spacing:normal; text-align:left; }
.wl-pd-consent label { position:static !important; transform:none !important; top:auto !important; left:auto !important; right:auto !important; width:auto !important; display:flex; align-items:flex-start; gap:10px; min-height:44px; cursor:pointer; }
.wl-pd-consent input[type="checkbox"] { position:static !important; display:block !important; opacity:1 !important; visibility:visible !important; width:22px !important; height:22px !important; min-width:22px; flex:0 0 22px; margin:4px 0; padding:0; appearance:none; -webkit-appearance:none; accent-color:#c9aa70; cursor:pointer; }
.wl-pd-consent span { min-width:0; padding:4px 0; }
.wl-pd-consent p { margin:4px 0 0 32px; font-size:12px; }
/* Keep legal text in the form's field column, with its own secondary typography. */
form .wl-pd-consent label,form .wl-pd-consent span,form .wl-pd-consent a,form.contacting__inner-right[data-wl-form] .wl-pd-consent :is(label,span,a) { color:inherit; font:inherit; letter-spacing:normal; word-spacing:normal; text-transform:none; }
form .wl-pd-consent p,form.contacting__inner-right[data-wl-form] .wl-pd-consent p { padding:0; margin:4px 0 0 32px; color:inherit; font-size:12px; line-height:1.5; letter-spacing:normal; word-spacing:normal; text-align:left; }
.index .contacting__inner-right .wl-pd-consent { width:63%; margin-inline:auto; }
.form-page .form__body .wl-pd-consent { width:min(88%,750px); margin-inline:auto; }
.contacting__inner-right[data-wl-model-form-v1="true"] .wl-pd-consent { width:70%; color:#686868; }
.wl-pd-consent a { color:inherit; text-decoration:none; }
.wl-pd-consent input:focus-visible,.wl-pd-consent a:focus-visible,.wl-legal-links a:focus-visible,.wl-legal-links button:focus-visible,.wl-cookie-panel button:focus-visible,.wl-cookie-panel a:focus-visible { outline:2px solid #c9aa70; outline-offset:4px; }
.wl-legal-links { box-sizing:border-box; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:4px 20px; width:100%; min-width:0; margin:12px 0 0; padding:0; color:#999; font-family:Realist,Arial,sans-serif; font-size:12px; font-weight:300; line-height:1.5; letter-spacing:normal; word-spacing:normal; text-align:center; text-transform:none; }
.wl-legal-links a,.wl-legal-links button,#footer .wl-legal-links a { display:inline-flex; justify-content:center; align-items:center; min-height:0; max-width:100%; padding:3px 0; color:inherit; font:inherit; letter-spacing:normal; word-spacing:normal; white-space:normal; overflow-wrap:break-word; text-decoration:none; }
/* Existing footer/form anchors draw their own decorative lines. Disable only legal lines. */
.wl-legal-links a,.wl-pd-consent a,.wl-cookie-actions a,#footer .wl-legal-links a { border-bottom:0; text-decoration:none; }
.wl-legal-links a::before,.wl-legal-links a::after,.wl-pd-consent a::before,.wl-pd-consent a::after,.wl-cookie-actions a::before,.wl-cookie-actions a::after,#footer .wl-legal-links a::before,#footer .wl-legal-links a::after { content:none; }
@media (hover:hover) { .wl-legal-links a:hover,.wl-legal-links button:hover,#footer .wl-legal-links a:hover { color:#ccc; } .wl-pd-consent a:hover { color:inherit; text-decoration:underline; text-underline-offset:3px; } }
.wl-legal-links button { position:static; width:auto; margin:0; padding:3px 0; border:0; background:transparent; font:inherit; text-align:center; cursor:pointer; }
.wl-legal-links [hidden],.wl-cookie-panel[hidden] { display:none !important; }
.wl-legal-footer { position:relative; padding:18px max(16px,5vw); background:#090909; color:#ddd; font-family:Realist,Arial,sans-serif; }
.wl-cookie-panel { box-sizing:border-box; position:fixed; z-index:100001; bottom:max(12px,env(safe-area-inset-bottom)); right:16px; left:16px; width:auto; max-width:580px; max-height:calc(100dvh - 24px); overflow:auto; margin-left:auto; padding:18px; border:1px solid #575044; border-radius:3px; color:#f4f0e8; background:rgba(12,12,12,.98); box-shadow:0 8px 36px #0005; font-family:Realist,Arial,sans-serif; font-size:14px; line-height:1.5; letter-spacing:normal; text-transform:none; }
.wl-cookie-panel h2 { font:inherit; font-size:18px; margin:0 0 8px; }
.wl-cookie-panel p { font:inherit; margin:0 0 14px; }
.wl-cookie-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.wl-cookie-actions button,.wl-cookie-actions a { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:8px 12px; font:inherit; color:inherit; border:1px solid #82745e; border-radius:2px; background:#1b1915; cursor:pointer; text-align:center; }
.wl-cookie-actions a { border-color:transparent; background:transparent; color:#b3b3b3; text-decoration:none; }
.wl-cookie-panel .wl-cookie-status:empty { display:none; }
.wl-cookie-panel .wl-cookie-status { margin-top:12px; }
.wl-legal-document { max-width:860px; margin:0 auto; padding:24px 24px 48px; font-size:17px; line-height:1.65; overflow-wrap:anywhere; }
.wl-legal-document h1 { font-size:clamp(26px,5vw,42px); line-height:1.2; margin:12px 0 24px; }
.wl-legal-document h2 { font-size:23px; line-height:1.3; margin:30px 0 12px; }
.wl-legal-document p { margin:0 0 16px; }
.wl-legal-document a { color:inherit; text-decoration:underline; }
.wl-legal-version { font-size:13px; color:#c9c0af; }
@media(max-width:480px) { .wl-cookie-panel { left:8px; right:8px; padding:14px; font-size:13px; } .wl-cookie-actions button { flex:1 1 130px; } .wl-legal-document { padding:16px; font-size:16px; } }
@media(prefers-reduced-motion:reduce) { .wl-cookie-panel,.wl-cookie-panel * { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

.wl-pd-consent label,.wl-pd-consent input,.wl-pd-consent span,.wl-pd-consent a { pointer-events:auto !important; }

/* Match the model archetype's existing .container contract (78% / portrait 90%). */
.model .wl-legal-footer { padding-inline:0; }
.model .wl-legal-footer > .wl-legal-links { width:78%; margin-inline:auto; }
@media (orientation:portrait) { .model .wl-legal-footer > .wl-legal-links { width:90%; } }
@media (max-width:767px) { .index .contacting__inner-right .wl-pd-consent,.contacting__inner-right[data-wl-model-form-v1="true"] .wl-pd-consent { width:100%; } }
@media (max-width:600px) { .wl-legal-links { gap:3px 12px; } .wl-legal-links a,.wl-legal-links button,#footer .wl-legal-links a { padding-block:2.25px; } .wl-legal-links > a:nth-of-type(-n+2) { flex-basis:100%; } }

/* Compact secondary navigation follows each existing footer container. */
#footer:has(> .wl-legal-links) { box-sizing:border-box; width:100%; min-height:0; bottom:auto; align-items:center; justify-content:center; text-align:center; padding:20px 0; }
.about #footer:has(> .wl-legal-links),.example-example #footer:has(> .wl-legal-links) { width:92%; margin-inline:auto; }

/* Opaque full-bleed surface only on Advice's real footer container. */
.advice main > .container:has(> #footer > .wl-legal-links) { position:relative; isolation:isolate; background:#000; }
.advice main > .container:has(> #footer > .wl-legal-links)::before { content:""; position:absolute; inset:0; z-index:-1; background:#000; box-shadow:0 0 0 100vmax #000; clip-path:inset(0 -100vmax -100vmax); pointer-events:none; }

/* Keep the real required input, and style its existing form-control cluster. */
form[data-wl-form] .wl-pd-consent input[type="checkbox"] { appearance:none; -webkit-appearance:none; border:1px solid #777; border-radius:3px; background-color:#161616; background-image:none; background-position:center; background-repeat:no-repeat; background-size:14px 14px; box-shadow:none; transition:background-color .15s,border-color .15s; }
form[data-wl-form] .wl-pd-consent input[type="checkbox"]:checked { border-color:#c9aa70; background-color:#c9aa70; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='%23161616' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
@media (hover:hover) { form[data-wl-form] .wl-pd-consent input[type="checkbox"]:hover:not(:disabled) { border-color:#c9aa70; } }
form[data-wl-form] .wl-pd-consent input[type="checkbox"]:focus-visible { outline:2px solid #c9aa70; outline-offset:4px; }
form[data-wl-form] .wl-pd-consent input[type="checkbox"]:disabled { opacity:.45 !important; cursor:not-allowed; }
@media (forced-colors:active) { form[data-wl-form] .wl-pd-consent input[type="checkbox"],form[data-wl-form] .wl-pd-consent input[type="checkbox"]:checked { appearance:auto; -webkit-appearance:auto; background:Canvas; border-color:ButtonText; forced-color-adjust:auto; } }

/* Owner UI correction: one central axis for the existing footer group. */
#footer:has(> .wl-legal-links) > span { text-align:center; }
.wl-legal-footer { text-align:center; }
/* Lightweight consultation bridges retain their existing typography and spacing. */
.home-trust-process__links:has(> .wl-consultation-cta) { justify-content:center; width:100%; text-align:center; }
.wl-consultation-cta:focus-visible { outline:2px solid #c9aa70; outline-offset:4px; }
