.slmc-page { width: min(760px, calc(100% - 40px)); margin: 60px auto 90px; line-height: 1.7; }
.slmc-page h1 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.15; margin: 12px 0 24px; }
.slmc-form { display: grid; gap: 12px; margin: 28px 0; }
.slmc-form label { font-weight: 600; }
.slmc-form input:not([type=checkbox]), .slmc-form textarea { box-sizing: border-box; width: 100%; padding: 13px 16px; border: 1px solid #777; border-radius: 3px; background: #fff; color: #202b2d; font: inherit; }
.slmc-form textarea { resize: vertical; }
.slmc-form input:focus-visible, .slmc-form textarea:focus-visible, .slmc-page button:focus-visible { outline: 3px solid #087c89; outline-offset: 3px; }
.slmc-form .slmc-consent { display: flex; align-items: flex-start; gap: 12px; font-weight: 400; }
.slmc-consent input { margin-top: 7px; width: 20px; height: 20px; flex-shrink: 0; }
.slmc-page a { text-decoration: underline; }
.slmc-notice { border-left: 4px solid #226c65; padding: 18px; margin: 24px 0; background: #eef5f2; color: #173c36; }
.slmc-error { border-color: #a32938; background: #fff1f2; color: #761c28; }
.slmc-form .slmc-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.slmc-small { font-size: .9rem; }
.slmc-actions { display: flex; flex-wrap: wrap; gap: 18px; }
.slmc-page button { cursor: pointer; padding: 12px 18px; }
