/* Core accessibility baseline; project colors/content still need manual checks. */
[hidden]{display:none!important}
:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid #0759b5!important;outline-offset:4px;box-shadow:0 0 0 7px #fff!important}
.skip-link{position:fixed;z-index:2000;left:16px;top:16px;transform:translateY(-200%);padding:12px 20px;background:#fff;color:#111;border:2px solid #111;border-radius:8px}
.skip-link:focus{transform:none}
main[id]{scroll-margin-top:150px}
.rich-content a,.legal-overview a{text-decoration:underline;text-underline-offset:.15em}
.ss-dialog{color:#171717;background:#fff;border:1px solid #d3d6da;border-radius:20px;padding:28px;max-width:min(620px,calc(100vw - 24px));max-height:85dvh;overflow:auto;box-shadow:0 20px 80px #0004}
.ss-dialog::backdrop{background:#0009}
.ss-dialog p{color:#454545}.ss-service{display:flex;gap:12px;align-items:flex-start;margin:20px 0;padding:12px;border:1px solid #ddd;border-radius:8px}.ss-service input{width:22px;height:22px;flex:none}
.ss-choices{display:flex;gap:12px;flex-wrap:wrap}.ss-choices button{flex:1;min-height:48px;background:#171717;border:2px solid #171717;color:#fff;border-radius:8px;padding:12px;font-weight:700}
.ss-dialog [data-ss-save]{margin:18px 0;padding:12px;min-height:44px;border-radius:8px;border:1px solid #171717;background:white;color:#171717}
.ss-dialog a{text-decoration:underline}.ss-embed{padding:20px;border:1px solid #aaa;border-radius:12px}.ss-embed iframe{width:100%;min-height:360px;border:0}
.ss-motion-toggle{position:relative;z-index:2;margin:12px 24px;min-height:44px;border:2px solid #fff;background:#111;color:#fff;border-radius:8px;padding:8px 16px}
.ss-service-editor{margin:14px 0;padding:16px;border:1px solid #c6c6c6;border-radius:10px}.ss-service-editor summary{cursor:pointer;min-height:44px}.legal-overview{margin-bottom:24px}fieldset{margin:24px 0;border:1px solid #c6c6c6;border-radius:12px;padding:20px}legend{font-weight:700;padding:0 8px}
button,a.button,.nav-toggle{min-height:44px}.check-row input{flex:none}input,select,textarea{max-width:100%}p,a,li{overflow-wrap:anywhere}
.reveal{opacity:1;transform:none}.hero-bg img{animation:none!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
@media(max-width:600px){fieldset{padding:14px}.ss-dialog{padding:20px}.ss-choices{flex-direction:column}}

dialog.lightbox:not([open]){display:none}dialog.lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0}.lightbox::backdrop{background:#000}

.button--filled{color:var(--on-accent,#111)}.brand-mark{color:#fff}.site-header.scrolled .brand-mark{color:#171717}
