/* BILOCO F99 - scoped, bilingual, accessible on phone/tablet/desktop. */
.blc-privacy-page{padding:clamp(28px,5vw,72px) 20px;background:#f7f9fb;color:#1a2b39}
.blc-privacy-inner{max-width:860px;margin:auto;background:#fff;border:1px solid #e2e9ee;border-radius:18px;padding:clamp(20px,4vw,48px);box-shadow:0 8px 32px rgba(15,35,55,.05)}
.blc-privacy-eyebrow{font-size:.78rem;color:#a86033;font-weight:750;letter-spacing:.08em}
.blc-privacy-inner h1{font-size:clamp(1.55rem,4vw,2.4rem);line-height:1.2;margin:12px 0 8px;color:#102d42}
.blc-privacy-meta,.blc-privacy-source{font-size:.87rem;color:#657787}
.blc-privacy-inner section{margin:28px 0;line-height:1.7}
.blc-privacy-inner h2{font-size:1.2rem;line-height:1.4;color:#102d42}
.blc-privacy-request-form{display:grid;gap:14px;max-width:600px}
.blc-privacy-request-form label{display:grid;gap:6px;font-weight:650}
.blc-privacy-request-form :is(input,select,textarea){min-height:44px;width:100%;max-width:100%;padding:10px 12px;border:1px solid #aebfcb;border-radius:9px;background:#fff;color:#172b39;font:inherit;font-weight:400}
.blc-privacy-request-form button{background:#ad6030;color:#fff;border:0;border-radius:9px;padding:12px 18px;font:inherit;font-weight:700;cursor:pointer;justify-self:start}
.blc-privacy-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.blc-privacy-success{background:#e7f5ec;color:#186034;padding:12px;border-radius:8px}
.blc-privacy-error{background:#fff0ed;color:#8a2615;padding:12px;border-radius:8px}
.blc-form-privacy-consent{display:flex!important;gap:10px;align-items:flex-start;line-height:1.55;max-width:100%;font-size:.9rem;font-weight:400!important;margin:12px 0}
.blc-form-privacy-consent input[type=checkbox]{flex:0 0 auto;width:18px!important;height:18px!important;min-height:18px;margin:3px 0 0;accent-color:#106158}
.blc-form-privacy-consent a{color:#0a6384;text-decoration:underline}
.blc-privacy-preferences{color:inherit;background:transparent;border:0;text-decoration:underline;font:inherit;cursor:pointer;white-space:normal}
.blc-privacy-banner[hidden]{display:none!important}
.blc-privacy-banner{position:fixed;z-index:20000;left:max(12px,env(safe-area-inset-left));bottom:calc(12px + env(safe-area-inset-bottom));width:min(560px,calc(100vw - 24px));background:#fff;border:1px solid #c8d7df;border-radius:16px;box-shadow:0 14px 54px rgba(13,32,47,.22);color:#1a2c3b;padding:20px}
.blc-privacy-banner h2{font-size:1.1rem;margin:0 0 7px;color:#102c3f}
.blc-privacy-banner p{font-size:.89rem;line-height:1.55;margin:0 0 12px;color:#394e60}
.blc-privacy-banner a{color:#085881;text-decoration:underline}
.blc-privacy-banner-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}
.blc-privacy-banner button{border:1px solid #879fad;border-radius:9px;padding:11px 14px;background:#fff;color:#203748;font:inherit;font-weight:700;cursor:pointer;flex:1 1 160px}
.blc-privacy-banner button[data-blc-consent=allow]{background:#173b4e;color:white;border-color:#173b4e}
.blc-privacy-banner :is(button,a):focus-visible{outline:3px solid #d27b2b;outline-offset:3px}
@media(max-width:600px){.blc-privacy-banner{padding:16px;max-height:75dvh;overflow-y:auto}.blc-privacy-inner{padding:19px}}

/* BILOCO F101 — Personal data notice in public forms, never hidden behind a narrow grid. */
.blc-privacy-form-notice{display:block;grid-column:1/-1;clear:both;width:100%;min-width:0;max-width:100%;padding:12px 13px;margin:13px 0;border:1px solid #cadde1;border-radius:10px;background:#f5faf9;color:#244254;box-sizing:border-box;font-size:13px;line-height:1.65}
.blc-privacy-form-notice p{margin:0 0 6px;font-size:inherit;line-height:inherit;color:inherit}
.blc-privacy-form-notice .blc-form-privacy-consent{display:flex!important;align-items:flex-start!important;flex-direction:row!important;width:100%!important;gap:10px!important;margin:0 0 8px!important;color:#244254!important;font-size:13px!important;line-height:1.6!important;font-weight:450!important}
.blc-privacy-form-notice input[type=checkbox]{display:inline-block!important;appearance:auto!important;width:18px!important;height:18px!important;min-height:18px!important;max-width:18px!important;flex:0 0 18px!important;opacity:1!important;visibility:visible!important;position:static!important;margin:3px 0 0!important;accent-color:#136a5d}
.blc-privacy-form-notice .blc-privacy-form-link{display:inline-block!important;color:#095d76!important;text-decoration:underline!important;font-weight:650!important;white-space:normal}
@media(max-width:680px){.blc-privacy-form-notice{padding:11px;font-size:12px;margin:10px 0}}

/* F103 – opt-in review text, constrained scrolling, and safe rich HTML. */
.blc-privacy-form-heading{display:block;margin:0 0 5px;color:#14384a;font-weight:800}
.blc-privacy-form-notice .blc-privacy-review-intro{margin:0 0 7px!important}
.blc-privacy-readbox{box-sizing:border-box;width:100%;max-width:100%;height:auto;max-height:170px;min-height:65px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:10px 12px;background:#fff;border:1px solid #b9cfd8;border-radius:8px;color:#243d4c;line-height:1.6;scrollbar-gutter:stable}
.blc-privacy-readbox:focus-visible{outline:2px solid #216e81;outline-offset:2px}
.blc-privacy-readbox .blc-privacy-purpose{font-weight:550;margin-bottom:8px!important}
.blc-privacy-rich-content{min-width:0;max-width:100%;overflow-wrap:anywhere;line-height:1.65}
.blc-privacy-rich-content :is(p,div,ul,ol,blockquote,figure,table){max-width:100%;margin:0 0 9px}
.blc-privacy-rich-content :is(ul,ol){padding-left:22px}
.blc-privacy-rich-content :is(h2,h3,h4){font-size:1em;color:inherit;line-height:1.45;margin:8px 0 5px}
.blc-privacy-rich-content img{display:block;max-width:100%!important;width:auto;height:auto!important;object-fit:contain}
.blc-privacy-rich-content table{display:block;overflow-x:auto;border-collapse:collapse}
.blc-privacy-rich-content td,.blc-privacy-rich-content th{padding:5px;border:1px solid #c6d3da}
.blc-privacy-read-status{font-size:12px!important;color:#8a4c21!important;margin:8px 0!important}
.blc-privacy-reading-finished .blc-privacy-read-status{color:#14664d!important}
.blc-privacy-form-notice .blc-form-privacy-consent[hidden]{display:none!important}
.blc-privacy-needs-attention{border-color:#b65a28!important}
.blc-privacy-form-notice .blc-form-privacy-consent span{font-size:13px;line-height:1.5}
@media(max-width:680px){.blc-privacy-readbox{max-height:160px;padding:9px 10px}}
