/* Golden Maple Group — /updates/ and /unsubscribe/ (small standalone pages). */
.nav-plain { position: static; }
/* No hero behind it, so the nav never goes transparent on these pages. */
.js-nav .nav.nav-plain:not(.is-solid), .nav-plain { background: var(--forest); border-bottom-color: var(--line-light); }
.u-page { min-height: calc(100vh - 8rem); padding-top: clamp(3rem, 8vh, 5rem); }
.u-page h1 { font-size: clamp(2.3rem, 6vw, 3.4rem); line-height: 1.08; margin-bottom: 1.1rem; color: var(--cream-on-forest); }
.u-page form { max-width: 30rem; }
.opt-tag { font-weight: 500; letter-spacing: 0; color: var(--soft-on-forest); margin-left: 0.3rem; font-size: 0.76rem; text-transform: none; }
.u-topics { border: 0; padding: 0; margin: 0 0 1.3rem; }
.u-topics legend { padding: 0; font-size: 0.82rem; font-weight: 600; letter-spacing: 0.04em; margin-bottom: 0.6rem; color: var(--cream-on-forest); }
.u-topic {
  display: flex; align-items: center; gap: 0.7rem; cursor: pointer;
  background: var(--forest-soft); border: 1px solid var(--line-light); border-radius: 8px;
  padding: 0.7rem 0.9rem; margin-bottom: 0.5rem; font-size: 0.95rem; color: var(--cream-on-forest);
  transition: border-color 0.2s ease;
}
/* `.field label` (block, small caps-ish) must not restyle the topic cards. */
.field .u-topic { display: flex; font-size: 0.95rem; font-weight: 400; letter-spacing: 0; margin-bottom: 0.5rem; color: var(--cream-on-forest); }
.u-topic:hover { border-color: var(--gold-deep); }
.u-topic:has(input:checked) { border-color: var(--gold); }
.u-topic:has(input:focus-visible) { outline: 2px solid var(--gold); outline-offset: 2px; }
.field .u-topic input { accent-color: var(--gold); width: 1rem; height: 1rem; margin: 0; padding: 0; flex: none; }
.u-consent { background: rgba(243, 238, 220, 0.04); border: 1px solid var(--line-light); border-radius: 8px; padding: 0.8rem 0.9rem; }
.u-foot { padding: 1.6rem 0; }
.u-foot .foot-fine { margin-top: 0 !important; }

/* unsubscribe states */
.u-state[hidden] { display: none; }
.u-state .btn { margin-top: 0.4rem; }
.u-done h1 { color: var(--cream-on-forest); }
.u-fallback { margin-top: 2.4rem; padding-top: 1.6rem; border-top: 1px solid var(--line-light); }
.u-fallback h2 { font-size: 1.5rem; color: var(--cream-on-forest); }
