/* BridgeLayer Advisory shared stylesheet for the legal and content routes.
   Ink on paper, one verdigris accent. Same tokens as the homepage. */
:root{
  --ink:#111111;--paper:#ffffff;--muted:#565656;--faint:#6b6b6b;
  --line:#e7e7e5;--wash:#f6f6f5;--accent:#2a7f74;--accent-deep:#1f6359;
  --accent-wash:#f0f6f5;--r-sm:10px;--r-md:16px;--r-lg:22px;--pill:999px;
  --max:1200px;--read:760px;
  --font:Poppins, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
@font-face{font-family:'Poppins';src:url('/fonts/poppins-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('/fonts/poppins-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('/fonts/poppins-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font);font-size:17px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
img,svg{display:block;max-width:100%}
::selection{background:var(--accent);color:var(--paper)}
h1,h2,h3,h4{font-weight:500;letter-spacing:-0.015em;line-height:1.2}
a{color:var(--accent-deep)}
a:hover{color:var(--accent)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:0 0 var(--r-sm) 0;text-decoration:none}
.skip:focus{left:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.read{max-width:var(--read)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:15.5px;font-weight:500;line-height:1.2;min-height:48px;padding:13px 26px;border-radius:var(--pill);text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:background .15s,border-color .15s,color .15s}
.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--paper)}
.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--paper)}
.btn-secondary{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn-secondary:hover{background:var(--wash);color:var(--ink)}
.btn-sm{min-height:40px;padding:9px 18px;font-size:14.5px}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
/* header */
.top{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;height:74px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);flex:none}
.wm{font-size:20px;letter-spacing:-0.015em;font-weight:400;line-height:1;white-space:nowrap}
.wm b{font-weight:500}
/* reading page */
.page{padding:52px 0 92px}
.page .read{margin:0 auto}
.page h1{font-size:clamp(1.85rem,3.5vw,2.4rem);margin:16px 0 6px}
.page .dated{color:var(--faint);font-size:13.5px;margin-bottom:34px}
.page h2{font-size:1.12rem;margin:32px 0 10px;border-top:1px solid var(--line);padding-top:22px}
.page h3{font-size:1rem;margin:22px 0 8px}
.page p,.page li{color:var(--muted);font-size:15px}
.page p{margin-bottom:12px}
.page ul,.page ol{margin:10px 0 16px 20px}
.page li{margin-bottom:7px}
.page li b,.page p b{color:var(--ink);font-weight:500}
.page .lede{font-size:16px;color:var(--muted)}
.back{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;text-decoration:none;min-height:44px}
.flag{border:1.5px solid var(--accent);background:var(--accent-wash);border-radius:var(--r-md);padding:14px 18px;margin:18px 0}
.flag p{color:var(--ink);font-size:14px;margin:0}
.flag b{font-weight:600}
.tag-blocker{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#a4262c;border:1px solid #a4262c;border-radius:var(--pill);padding:3px 10px;margin-left:6px}
/* footer */
footer{background:var(--ink);color:rgba(255,255,255,.72)}
footer .wrap{padding:54px 24px 34px}
.f-top{display:flex;justify-content:space-between;gap:34px;flex-wrap:wrap;margin-bottom:32px}
.f-brand .wm{color:var(--paper)}
.f-cols{display:flex;gap:44px;flex-wrap:wrap}
.f-col h2{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:500;margin-bottom:12px;border:0;padding:0}
.f-col a{display:block;color:rgba(255,255,255,.72);text-decoration:none;font-size:13.5px;padding:5px 0}
.f-col a:hover{color:var(--paper)}
.f-legal{font-size:12.5px;line-height:1.7;color:rgba(255,255,255,.55);border-top:1px solid rgba(255,255,255,.16);padding-top:20px;max-width:900px}
.f-legal p+p{margin-top:9px}
.f-copy{font-size:12px;color:rgba(255,255,255,.58);margin-top:16px}
