.legal-links { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1.25rem; font-size:.85rem; }
.legal-links button { border:0; padding:0; font:inherit; text-decoration:underline; color:inherit; background:transparent; cursor:pointer; }
.business-identity { font-size:.85rem; line-height:1.6; overflow-wrap:anywhere; }
.business-identity p { margin:.35rem 0; }
.privacy-preferences { position:fixed; bottom:1rem; left:1rem; width:min(38rem,calc(100vw - 2rem)); max-height:calc(100dvh - 2rem); overflow-y:auto; z-index:1080; padding:1.4rem; border:1px solid #456455; border-radius:12px; color:#18392b; background:#fffef9; box-shadow:0 4px 24px #0003; font:400 .94rem/1.6 'Segoe UI',sans-serif; }
.privacy-preferences[hidden] { display:none; }
.privacy-preferences h2 { color:#18392b; font-size:1.2rem; font-weight:700; margin:0 0 .8rem; }
.privacy-preferences p { margin:0 0 .8rem; }
.privacy-preferences a { color:#204e36; text-decoration:underline; }
.privacy-preferences-actions { display:flex; gap:.75rem; flex-wrap:wrap; margin:.9rem 0; }
.privacy-preferences-actions button { flex:1 1 12rem; border:2px solid #245b43; border-radius:6px; padding:.7rem .9rem; background:#fff; color:#18392b; font-weight:650; cursor:pointer; }
.privacy-preferences :focus-visible,.legal-links :focus-visible { outline:3px solid #668c2c; outline-offset:3px; }
.privacy-feedback:empty { display:none; }
.external-video-placeholder { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:.6rem; padding:1rem; text-align:center; color:#18392b; background:#edf3e8; font-size:.84rem; }
.external-video-placeholder[hidden] { display:none; }
.external-video-placeholder button { padding:.55rem .8rem; border:2px solid #245b43; border-radius:5px; color:#18392b; background:#fff; font-weight:650; }
.privacy-notice { font-size:.85rem; line-height:1.6; color:#495e52; }
.site-footer .business-identity,.site-footer .legal-links { color:#d9e3dc; }
.site-footer .business-identity a,.site-footer .legal-links a { color:#d5ef88; }
.app-footer { flex-direction:column; align-items:stretch; }
.landing-page .site-header :focus-visible { outline-color:#d5ef88; box-shadow:0 0 0 5px #102b25; }
