.lh-newsletter-content { max-width: 720px; margin: 0 auto; padding-bottom: 4rem; line-height: 1.65; }
.lh-newsletter h1 { font-size: var(--lh-title-size); line-height: var(--lh-title-leading); letter-spacing: var(--lh-title-tracking); margin: 1.5rem 0; }
.lh-newsletter-breadcrumb { font-size: .9rem; color: #666; }
.lh-newsletter fieldset { margin: 2rem 0; border: 1px solid #ccc; padding: 1.5rem; }
.lh-newsletter legend { font-weight: 700; padding: 0 .5rem; }
.lh-newsletter label { display: block; margin-bottom: 1rem; }
.lh-newsletter input[type=email] { display: block; width: 100%; padding: .8rem; margin-top: .4rem; border: 1px solid #888; border-radius: 0; font: inherit; }
.lh-newsletter input[type=checkbox] { width: 1.2rem; height: 1.2rem; vertical-align: middle; accent-color: #202020; }
.lh-newsletter button { background: #202020; color: white; padding: .85rem 1.3rem; border: 0; }
.lh-newsletter fieldset:disabled { color: #666; }
.lh-newsletter fieldset:disabled button { background: #ddd; color: #555; cursor: not-allowed; }
.lh-newsletter .notice, .lh-newsletter .error { padding: 1rem; background: #f4f4f4; border-left: 3px solid #777; }
.lh-newsletter .error { border-color: #a32222; }
.lh-newsletter details { margin: 2rem 0; }
.lh-newsletter summary { cursor: pointer; font-weight: 700; }
.lh-newsletter .badge { display: inline-block; padding: .25rem .7rem; background: #eee; }
.lh-newsletter :is(a,button,input,summary):focus-visible { outline: 2px solid #202020; outline-offset: 4px; }
@media (max-width: 600px) { .lh-newsletter fieldset { padding: 1rem; } }
