/* Scoped under .ce-app to avoid breaking legacy pages before migration. */
.ce-app { box-sizing: border-box; background: var(--ce-paper); color: var(--ce-ink); font: 400 16px/1.55 var(--ce-font-ui); min-height: 100vh; -webkit-font-smoothing: antialiased; }
.ce-app *, .ce-app *::before, .ce-app *::after { box-sizing: inherit; }
.ce-app h1,.ce-app h2,.ce-app h3,.ce-app h4,.ce-app p { margin: 0; }
.ce-app a { color: var(--ce-link); text-underline-offset: .18em; }
.ce-app a:hover { text-decoration-thickness: 2px; }
.ce-app button,.ce-app input,.ce-app select,.ce-app textarea { font: inherit; }
.ce-app button { cursor: pointer; }
.ce-app :focus-visible { outline: 3px solid var(--ce-focus); outline-offset: 3px; }
.ce-app ::selection { background: #E6D4BF; color: var(--ce-ink); }
.ce-app .ce-display { font-family: var(--ce-font-display); font-weight: 480; letter-spacing: -.035em; line-height: 1.12; }
.ce-app .ce-page-title { font-size: var(--ce-title-lg); }
.ce-app .ce-section-title { font-size: var(--ce-title-sm); }
.ce-app .ce-muted { color: var(--ce-text-secondary); }
.ce-app .ce-meta { font-size: var(--ce-text-xs); color: var(--ce-text-muted); }
.ce-app .ce-eyebrow { font-size: var(--ce-text-xs); font-weight: 650; letter-spacing: .1em; text-transform: uppercase; color: var(--ce-text-secondary); }
.ce-app .ce-container { width: min(calc(100% - 2rem), var(--ce-container)); margin-inline: auto; }
.ce-app .ce-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media (min-width: 768px) { .ce-app .ce-container { width: min(calc(100% - 4rem), var(--ce-container)); } }
