/* GM Core — Compliance Doc. Scoped to .gm-doc. Disclosure/legal page template. */
.gm-doc{
  --n:var(--navy,#0A1B33); --n2:var(--navy-2,#102847); --n3:var(--navy-3,#17375E);
  --gold:var(--gold,#D9A02B); --gold-lt:var(--gold-lt,#E8B33C);
  --grw:var(--growth,linear-gradient(90deg,#1F4FBF,#0E7CC4 34%,#0AA9AC 68%,#0FA37A));
  --b2t:var(--bar-2-t,#0E7BC4); --grey:var(--grey,#F3F6F9); --muted:var(--muted,#63738A); --border:#E1E7EE;
  --r:var(--r,14px); --rlg:var(--r-lg,22px); --ease:260ms cubic-bezier(.4,0,.2,1);
  font-family:var(--sans,"Inter",-apple-system,"Segoe UI",Roboto,sans-serif);
}

/* header — full-bleed navy */
.gm-doc__head{background:var(--n)!important;color:#fff;position:relative;overflow:hidden;padding:64px 0 72px;
  margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;max-width:100vw}
.gm-doc__head::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(620px 340px at 86% 12%,rgba(31,79,191,.26),transparent 60%),radial-gradient(520px 320px at 6% 94%,rgba(15,163,122,.15),transparent 62%)}
.gm-doc__head::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--grw)}
.gm-doc__head-in{position:relative;max-width:1240px;margin:0 auto;padding:0 28px;box-sizing:border-box}
.gm-doc__crumbs{font-size:.8rem;color:rgba(255,255,255,.55);margin-bottom:16px}
.gm-doc__crumbs a{color:rgba(255,255,255,.55)!important;text-decoration:none!important}
.gm-doc__crumbs a:hover{color:#E8B33C!important}
.gm-doc__crumbs span{margin:0 8px;opacity:.5}
.gm-doc__head h1{font-size:clamp(2rem,4vw,2.9rem)!important;font-weight:800!important;letter-spacing:-.03em;line-height:1.1!important;margin:0;color:#fff}
.gm-doc__meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:18px;font-size:.85rem;color:rgba(255,255,255,.66)}
.gm-doc__meta b{color:#fff;font-weight:600}

/* body grid */
.gm-doc__body{padding:56px 0 80px;background:#fff}
.gm-doc__grid{max-width:1240px;margin:0 auto;padding:0 28px;box-sizing:border-box;display:grid;grid-template-columns:260px 1fr;gap:48px;align-items:start}

/* side nav */
.gm-doc__nav{position:sticky;top:106px}
.gm-doc__nav-t{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:700;margin-bottom:14px}
.gm-doc__nav ul{list-style:none;margin:0;padding:0}
.gm-doc__nav a{display:block;font-size:.9rem;color:var(--muted)!important;padding:8px 0 8px 16px;border-left:2px solid var(--border);transition:all var(--ease);text-decoration:none!important}
.gm-doc__nav a:hover{color:var(--n)!important;border-left-color:var(--gold)}
.gm-doc__back{margin-top:26px;display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;color:var(--b2t)!important;text-decoration:none!important}
.gm-doc__back svg{width:15px;height:15px}

/* article */
.gm-doc__article{max-width:760px}
.gm-doc__article h2{font-size:1.35rem!important;font-weight:800!important;color:var(--n);letter-spacing:-.01em;margin:38px 0 14px;padding-top:8px;scroll-margin-top:100px;line-height:1.25!important}
.gm-doc__article h2:first-child{margin-top:0}
.gm-doc__article h3{font-size:1.05rem!important;font-weight:700!important;color:var(--n3);margin:24px 0 10px}
.gm-doc__article p{color:#3a4658!important;margin:0 0 16px;line-height:1.7!important}
.gm-doc__article a{color:var(--b2t)!important;font-weight:600;text-decoration:underline}
.gm-doc__article strong{color:var(--n);font-weight:700}

/* lists */
.gm-doc__list{list-style:none;margin:0 0 20px;padding:0}
.gm-doc__list li{position:relative;padding-left:28px;margin-bottom:11px;color:#3a4658;line-height:1.6}
.gm-doc__list li::before{content:"";position:absolute;left:2px;top:9px;width:8px;height:8px;border-radius:50%;background:var(--gold)}
ol.gm-doc__list{counter-reset:d}
ol.gm-doc__list li{counter-increment:d;padding-left:34px}
ol.gm-doc__list li::before{content:counter(d);top:0;left:0;width:22px;height:22px;border-radius:50%;background:var(--n);color:#fff;font-size:.72rem;font-weight:700;display:grid;place-items:center}

/* table */
.gm-doc__table{border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin:0 0 24px}
.gm-doc__table .tr{display:grid;grid-template-columns:1fr 1.4fr;border-bottom:1px solid var(--border)}
.gm-doc__table .tr:last-child{border-bottom:0}
.gm-doc__table .tr:nth-child(even){background:var(--grey)}
.gm-doc__table .k{padding:13px 18px;font-weight:600;color:var(--n3);font-size:.92rem;border-right:1px solid var(--border)}
.gm-doc__table .v{padding:13px 18px;color:#3a4658;font-size:.92rem}

/* note */
.gm-doc__note{background:var(--grey);border-left:4px solid transparent;border-image:var(--grw) 1;border-radius:0 var(--r) var(--r) 0;padding:18px 22px;margin:0 0 24px;font-size:.95rem;color:var(--n2)}
.gm-doc__note strong{color:var(--n)}

/* contact */
.gm-doc__contact{background:var(--n)!important;color:#fff;border-radius:var(--rlg);padding:26px 28px;margin:8px 0 24px;position:relative;overflow:hidden}
.gm-doc__contact::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--grw)}
.gm-doc__contact h3{color:#fff!important;margin:0 0 14px;font-size:1.05rem!important}
.gm-doc__contact .line{display:flex;gap:10px;font-size:.92rem;padding:5px 0;color:rgba(255,255,255,.82)}
.gm-doc__contact .line b{color:rgba(255,255,255,.55)!important;font-weight:600;min-width:120px}
.gm-doc__contact .line a{color:var(--gold-lt)!important;font-weight:600;text-decoration:none!important}

/* statutory strip */
.gm-doc__legal{background:var(--cream,#FCF9F2)!important;border-top:1px solid var(--border);padding:34px 0;
  margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;max-width:100vw}
.gm-doc__legal-in{max-width:1240px;margin:0 auto;padding:0 28px;box-sizing:border-box}
.gm-doc__legal p{font-size:.78rem!important;line-height:1.7!important;color:var(--muted)!important;max-width:1000px;margin:0 auto 8px}
.gm-doc__legal p:last-child{margin-bottom:0}
.gm-doc__legal b{color:var(--n3)!important}

.gm-doc svg{max-width:100%;max-height:24px}

@media(max-width:960px){
  .gm-doc__grid{grid-template-columns:1fr;gap:32px}
  .gm-doc__nav{position:static;padding-bottom:8px;border-bottom:1px solid var(--border)}
}
