/* Legal and contact pages in the editorial system (16 Sep 2026).
   Loaded only by pages that set $layout = 'legal'. site.css still loads
   first for the old chrome, so everything here is scoped and overrides it. */
body{background:var(--vm-paper);color:var(--vm-ink);font:16px/1.7 var(--vm-sans);-webkit-font-smoothing:antialiased}
.bmg-hero{background:var(--vm-paper);color:var(--vm-ink);padding:64px 0 44px;border-bottom:1px solid var(--vm-line)}
.bmg-hero .bmg-shell,main .bmg-shell{max-width:none;width:min(1256px,calc(100% - 96px));margin-inline:auto;padding:0}
.bmg-hero .bmg-kicker{display:flex;align-items:center;gap:12px;color:var(--vm-gold);font:700 11px/1.5 var(--vm-sans);letter-spacing:.15em;text-transform:uppercase}
.bmg-hero .bmg-kicker:before{content:'';width:24px;height:1px;background:var(--vm-gold)}
.bmg-hero h1{font-family:var(--vm-serif);font-weight:400;font-size:clamp(42px,5vw,68px);line-height:1.06;letter-spacing:-.045em;color:var(--vm-ink);margin:20px 0 0}
.bmg-hero p:not(.bmg-kicker){font:italic 22px/1.45 var(--vm-serif);color:var(--vm-muted);max-width:640px;margin-top:16px}

main .bmg-shell.has-toc{display:grid;grid-template-columns:220px minmax(0,1fr);gap:72px;align-items:start}
.bmg-legal{max-width:760px;padding:56px 0 80px}
.bmg-legal>p:first-child{font-size:18px;color:var(--vm-ink)}
.bmg-legal h2{font-family:var(--vm-serif);font-weight:400;font-size:32px;line-height:1.15;letter-spacing:-.03em;color:var(--vm-ink);margin:44px 0 14px;padding-top:28px;border-top:1px solid var(--vm-line);scroll-margin-top:120px}
.bmg-legal>h2:first-child{margin-top:0;padding-top:0;border-top:0}
.bmg-legal h3{font:700 13px/1.5 var(--vm-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--vm-ink);margin:28px 0 8px;scroll-margin-top:120px}
.bmg-legal p,.bmg-legal li{color:#3d4650}
.bmg-legal p{margin:0 0 14px}
.bmg-legal ul{margin:0 0 18px;padding-left:20px}
.bmg-legal li{margin-bottom:9px}
.bmg-legal li::marker{color:var(--vm-gold)}
.bmg-legal strong{color:var(--vm-ink)}
.bmg-legal a{color:var(--vm-ink);border-bottom:1px solid var(--vm-gold);overflow-wrap:anywhere}
.bmg-legal a:hover{color:var(--vm-gold)}
.bmg-legal table{width:100%;border-collapse:collapse;margin:14px 0 26px;font-size:15px;background:var(--vm-white)}
.bmg-legal th,.bmg-legal td{border:0;border-bottom:1px solid var(--vm-line);padding:13px 16px;text-align:left;vertical-align:top}
.bmg-legal tr:first-child th,.bmg-legal tr:first-child td{border-top:1px solid var(--vm-ink)}
.bmg-legal th{font-weight:700;color:var(--vm-ink);background:var(--vm-sage)}
.bmg-legal td{color:#3d4650}
.bmg-legal .callout{background:#efe9dc;border-left:3px solid var(--vm-gold);padding:22px 24px;margin:22px 0 26px}
.bmg-legal .callout p:last-child{margin-bottom:0}
.bmg-stamp{font-size:13px;color:var(--vm-muted);border-top:1px solid var(--vm-line);padding-top:18px;margin-top:56px}

.legal-toc{position:sticky;top:120px;padding:56px 0 0}
.legal-toc p{font:700 11px/1.5 var(--vm-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--vm-gold);margin:0 0 12px}
.legal-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--vm-line)}
.legal-toc a{display:block;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:13.5px;line-height:1.4;color:var(--vm-muted)}
.legal-toc a:hover,.legal-toc a[aria-current=true]{color:var(--vm-ink);border-left-color:var(--vm-gold)}
.legal-toc summary{display:none}

@media(max-width:1100px){.bmg-hero .bmg-shell,main .bmg-shell{width:calc(100% - 64px)}main .bmg-shell.has-toc{grid-template-columns:190px minmax(0,1fr);gap:44px}}
@media(max-width:860px){
  main .bmg-shell.has-toc{display:block}
  .legal-toc{position:static;padding:28px 0 0}
  .legal-toc details{border:1px solid var(--vm-line);background:var(--vm-white)}
  .legal-toc summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:0 16px;cursor:pointer;list-style:none;font:700 12px/1.5 var(--vm-sans);letter-spacing:.12em;text-transform:uppercase}
  .legal-toc summary::-webkit-details-marker{display:none}
  .legal-toc summary:after{content:'+';font-size:20px;color:var(--vm-gold)}
  .legal-toc details[open] summary:after{content:'\2212'}
  .legal-toc details>p{display:none}
  .legal-toc ol{border-left:0;padding:0 16px 12px}
  .legal-toc a{padding:9px 0;border-left:0;min-height:44px;display:flex;align-items:center}
  .bmg-legal{padding:36px 0 60px}
}
@media(max-width:800px){.bmg-hero .bmg-shell,main .bmg-shell{width:calc(100% - 40px)}.bmg-hero{padding:44px 0 32px}.bmg-hero p:not(.bmg-kicker){font-size:19px}.bmg-legal h2{font-size:27px;margin-top:44px;padding-top:22px}.bmg-legal>p:first-child{font-size:17px}}
@media(max-width:560px){
  .bmg-legal table,.bmg-legal tbody,.bmg-legal tr,.bmg-legal th,.bmg-legal td{display:block;width:100%}
  .bmg-legal tr{border-top:1px solid var(--vm-ink);padding:10px 0}
  .bmg-legal tr:first-child th,.bmg-legal tr:first-child td{border-top:0}
  .bmg-legal th,.bmg-legal td{border-bottom:0;padding:4px 14px}
  .bmg-legal th{background:transparent;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--vm-gold)}
  .bmg-legal .callout{padding:18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
