
/* MONTREAL.AI Regulatory Fortress v124 */
:root{--legal-paper:#fffdf8;--legal-ivory:#f7f1e6;--legal-navy:#07182b;--legal-gold:#b8872e;--legal-line:#d8c8aa;--legal-red:#9c3849;--legal-green:#276b50;--legal-muted:#68788d}
.legal-document-wrap{padding:clamp(28px,5vw,72px) 0;background:radial-gradient(circle at 10% 0%,rgba(184,135,46,.11),transparent 28%),linear-gradient(rgba(7,24,43,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(7,24,43,.018) 1px,transparent 1px),var(--legal-ivory);background-size:auto,52px 52px,52px 52px;color:var(--legal-navy)}
.legal-paper{width:min(1080px,94vw);margin:auto;background:var(--legal-paper);border:1px solid var(--legal-line);border-radius:28px;padding:clamp(28px,5vw,64px);box-shadow:0 28px 85px rgba(7,24,43,.12);position:relative;color:var(--legal-navy)}
.legal-paper:before,.legal-paper:after{content:"";position:absolute;pointer-events:none;border:1px solid rgba(184,135,46,.38);inset:12px;border-radius:20px}.legal-paper:after{inset:20px;border-color:rgba(184,135,46,.16)}
.legal-inner{position:relative;z-index:1}.legal-inner .eyebrow{color:var(--legal-gold);font-size:.72rem;letter-spacing:.18em;font-weight:900;text-transform:uppercase}.legal-inner .title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.65rem,6vw,5.6rem);line-height:.92;letter-spacing:-.055em;margin:18px 0;color:var(--legal-navy)}.legal-inner .subtitle{font-family:Georgia,"Times New Roman",serif;font-size:1.16rem;line-height:1.55;color:#4c5560;font-style:italic}.legal-inner .notice{border-left:4px solid var(--legal-gold);background:#fff7df;border-radius:0 16px 16px 0;padding:17px 19px;margin:24px 0;font-family:Georgia,"Times New Roman",serif;font-weight:700;line-height:1.52}.legal-inner .critical{border-color:var(--legal-red);background:#fff1f3}.legal-inner .good{border-color:var(--legal-green);background:#eef8f2}.legal-inner h2{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;margin:34px 0 12px;border-bottom:1px solid var(--legal-line);padding-bottom:8px;color:var(--legal-navy)}.legal-inner h3{font-size:1rem;margin:24px 0 8px;color:#0c2c4d}.legal-inner p,.legal-inner li{line-height:1.66;color:#25384d}.legal-inner li{margin:.35rem 0}.legal-inner a{color:#155889}.legal-inner .meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0}.legal-inner .meta div{border:1px solid var(--legal-line);border-radius:14px;padding:12px;background:#fff}.legal-inner .meta b{display:block;color:var(--legal-gold);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px}.legal-inner .toc{columns:2;column-gap:28px;padding:18px 22px;background:#f9f4ea;border:1px solid var(--legal-line);border-radius:16px}.legal-inner .toc a{display:block;margin:6px 0;text-decoration:none}.legal-inner .legal-footer{margin-top:36px;padding-top:18px;border-top:1px solid var(--legal-line);font-size:.78rem;color:var(--legal-muted);line-height:1.6}.legal-inner .caps{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;font-weight:800}.legal-inner .table{width:100%;border-collapse:collapse;margin:16px 0}.legal-inner .table th,.legal-inner .table td{border:1px solid var(--legal-line);padding:10px;vertical-align:top;text-align:left}.legal-inner .table th{background:var(--legal-navy);color:#fff}.legal-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.legal-card{border:1px solid var(--legal-line);border-radius:18px;padding:18px;background:#fff}.legal-card h3{margin-top:0;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem}.legal-card a{display:block;margin:.45rem 0}.legal-badges{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.legal-badge{border:1px solid var(--legal-line);border-radius:999px;padding:7px 10px;background:#fff;font-size:.72rem;font-weight:800;color:var(--legal-navy)}
.regulatory-strip{margin:0;background:#07131f;border-top:1px solid rgba(184,135,46,.45);border-bottom:1px solid rgba(184,135,46,.32);color:#dce4eb;padding:16px 0;font-size:.78rem;line-height:1.55}.regulatory-strip .shell{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.regulatory-strip strong{color:#f0cf7c}.regulatory-strip a{color:#f0cf7c;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.regulatory-strip p{margin:0;max-width:1080px}
.ai-art-caption{position:absolute;left:clamp(18px,3vw,48px);bottom:12px;z-index:4;max-width:min(620px,82%);margin:0;padding:7px 10px;border:1px solid rgba(236,202,117,.3);border-radius:8px;background:rgba(2,9,20,.72);color:#ccd6df;font-size:.64rem;line-height:1.4;backdrop-filter:blur(10px)}
.legal-gate[hidden]{display:none}.legal-gate{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(1,6,13,.84);backdrop-filter:blur(14px)}.legal-gate-card{width:min(760px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(184,135,46,.6);border-radius:24px;background:#fffdf8;color:#07182b;padding:clamp(22px,4vw,38px);box-shadow:0 36px 110px rgba(0,0,0,.5);position:relative}.legal-gate-card h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.8rem,4vw,3rem);margin:8px 0 12px}.legal-gate-card p{line-height:1.58}.legal-gate-kicker{letter-spacing:.15em;text-transform:uppercase;font-size:.68rem;font-weight:900;color:#9a6a17}.legal-gate-check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;border-top:1px solid #ded2bd;padding:13px 0}.legal-gate-check input{width:18px;height:18px;margin-top:2px;accent-color:#9b6b17}.legal-gate-check label{font-size:.9rem;line-height:1.48}.legal-gate-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}.legal-gate-actions button{border:1px solid #cbb993;border-radius:999px;padding:10px 16px;background:#fff;color:#07182b;font-weight:800;cursor:pointer}.legal-gate-actions .legal-gate-accept{background:#07182b;color:#fff;border-color:#07182b}.legal-gate-actions .legal-gate-accept:disabled{opacity:.45;cursor:not-allowed}.legal-gate-close{position:absolute;right:16px;top:14px;border:0;background:transparent;font-size:1.7rem;color:#07182b;cursor:pointer}.legal-gate-links{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.legal-gate-links a{border:1px solid #d8c8aa;border-radius:999px;padding:7px 10px;color:#155889;text-decoration:none;font-size:.76rem;font-weight:800}.legal-gate-warning{background:#fff1f3;border-left:4px solid #9c3849;padding:12px 14px;border-radius:0 12px 12px 0;font-weight:700}.privacy-local-note{font-size:.75rem;color:#596778;margin-top:10px}
.footer-legal-links{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}.footer-legal-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.legal-card-grid,.legal-inner .meta{grid-template-columns:1fr}.legal-inner .toc{columns:1}.legal-paper{padding:30px 22px}.legal-inner .title{font-size:2.75rem}.regulatory-strip .shell{display:block}.regulatory-strip a{display:inline-block;margin-top:10px;white-space:normal}.ai-art-caption{position:relative;left:auto;bottom:auto;max-width:none;border-radius:0;background:#07131f}.legal-gate-actions{justify-content:stretch}.legal-gate-actions button{flex:1}}
/* Mobile-safe legal evidence tables */
.legal-inner .table{max-width:100%;table-layout:fixed}
.legal-inner .table th,.legal-inner .table td{overflow-wrap:anywhere;word-break:normal}
@media(max-width:760px){.legal-inner{min-width:0;overflow:hidden}.legal-inner .table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;table-layout:auto}.legal-inner .table th,.legal-inner .table td{min-width:150px}}
