/* GG Gamble proposal layout, layered on the official presentation template. */
.nav { background: rgba(255,255,255,.94); border-bottom: 1px solid var(--hairline); }
.nav_brand { color: var(--ink); }
.nav_logo { fill: var(--ink); height: 19px; }
.nav_doc { font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; color: var(--ink-2); }
.hero { min-height: 680px; display: flex; align-items: center; padding-top: 130px; padding-bottom: 70px; }
.hero_content { width: 100%; }
.hero_h1 { max-width: 11ch; font-size: clamp(3.6rem, 8vw, 7.2rem); font-weight: 500; }
.hero_sub { max-width: 58ch; }
.hero_summary { display: grid; gap: 1rem; }
.summary-path { padding: 1.4rem; border: 1px solid rgba(255,255,255,.18); border-radius: var(--r); background: rgba(11,14,18,.58); backdrop-filter: blur(14px); display: grid; gap: .35rem; }
.summary-path .mono { color: var(--accent-br); }
.summary-path strong { font-family: var(--font-text); font-size: clamp(2rem,4vw,3rem); font-weight: 400; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.summary-path span:not(.mono) { color: rgba(255,255,255,.72); }
.section-nav { position: sticky; top: 62px; z-index: 80; background: rgba(240,241,244,.95); backdrop-filter: blur(12px); border-bottom: 1px solid var(--hairline); }
.section-nav-track { display: flex; gap: 1.4rem; overflow-x: auto; scrollbar-width: none; padding-block: .85rem; }
.section-nav-track::-webkit-scrollbar { display: none; }
.section-nav a { flex: 0 0 auto; text-decoration: none; font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .06em; font-size: .7rem; color: var(--ink-2); }
.section-nav a:hover { color: var(--accent); }
.doc-section { padding-block: clamp(3.8rem,7vw,7rem); scroll-margin-top: 116px; }
.doc-section.section--alt { background: var(--paper); }
.doc-section .container { max-width: 1080px; }
.section-kicker { color: var(--accent); font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; margin-bottom: .8rem; }
.doc-section h2 { font-size: clamp(2.2rem,5vw,4.4rem); max-width: 17ch; margin-bottom: 2.2rem; }
.doc-section h3 { font-size: clamp(1.4rem,2.5vw,2rem); margin: 2.8rem 0 1rem; }
.doc-section h4 { font-family: var(--font-text); font-size: 1.08rem; margin: 2rem 0 .6rem; }
.doc-section p { max-width: 78ch; margin: 0 0 1.2rem; color: #26282c; }
.doc-section strong { color: var(--ink); }
.doc-section ol, .doc-section ul { max-width: 84ch; padding-left: 1.5rem; display: grid; gap: .55rem; }
.doc-section li::marker { color: var(--accent); font-family: var(--font-mono); }
.doc-rule { border: 0; border-top: 1px solid var(--hairline); margin: 2rem 0; }
.table-wrap { overflow-x: auto; margin: 2rem 0 3rem; border: 1px solid var(--hairline); border-radius: var(--r); background: var(--paper); box-shadow: 0 18px 50px -38px rgba(11,14,18,.5); }
table { width: 100%; border-collapse: collapse; min-width: 760px; font-size: .92rem; line-height: 1.45; }
th, td { padding: .9rem 1rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--hairline); }
th { position: sticky; top: 0; background: var(--ink); color: #fff; font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .04em; font-size: .7rem; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover td { background: rgba(222,88,73,.045); }
td strong { font-family: var(--font-text); font-variant-numeric: tabular-nums; }
.proposal-footer { background: var(--ink); color: rgba(255,255,255,.72); padding: 2rem 0; font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .06em; font-size: .72rem; }
@media (max-width: 760px) {
  .nav_doc { display: none; }
  .hero { min-height: auto; }
  .hero_grid { grid-template-columns: 1fr; }
  .hero_h1 { font-size: clamp(3rem,15vw,5rem); }
  .section-nav { top: 62px; }
  .doc-section { padding-block: 3.5rem; }
  th, td { padding: .75rem; }
}
@media print {
  .nav, .section-nav, .scrollprog, .hero_canvas { display: none !important; }
  .hero { min-height: auto; padding: 2rem 0; background: var(--ink) !important; }
  .doc-section { padding: 2rem 0; break-inside: auto; }
  .table-wrap { overflow: visible; box-shadow: none; }
  table { min-width: 0; font-size: 8pt; }
  th { position: static; }
}
