/* One content grid for every section, including the two shaded panels. */
:root { --content-max:1240px; --section-inset:24px; --page-edge:24px; }
html { scrollbar-gutter:stable; }
main > .section, main.section.legal-main, footer.section.site-footer {
  box-sizing:border-box;
  width:min(calc(var(--content-max) + 2 * var(--section-inset)),calc(100% - 2 * var(--page-edge)));
  max-width:none;
  min-width:0;
  margin-inline:auto;
  padding-inline:var(--section-inset);
}
main > .request-section { border:0; box-shadow:inset 0 0 0 1px var(--line); }
.site-header {
  padding-inline:max(calc(var(--page-edge) + var(--section-inset)),calc((100% - var(--content-max)) / 2));
}
main > .section > *, .section-heading > *, .hero-visual-stack, .case-copy { min-width:0; }
.case-copy h2 strong { font-weight:800; }

/* Keyboard focus uses fill and underlining, without the former blue frames. */
:is(a,button,input,select,textarea,summary,dialog,[tabindex]):is(:focus,:focus-visible) {
  outline:0 !important;
  outline-offset:0 !important;
}
:is(input,select,textarea):focus { box-shadow:none; }
a:focus-visible { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:4px; }
a.button:focus-visible, button.button:focus-visible { background:#1755dc; text-decoration:none; box-shadow:none; }
button:not(.button):focus-visible, summary:focus-visible { background-color:var(--blueSoft); }
:is(input:not([type=checkbox]):not([type=radio]),textarea,select):focus-visible { background-color:var(--surface2); }
.cookie-row input.cookie-switch:focus-visible { filter:brightness(.9); }
.brand-image:focus-visible img { filter:brightness(1.15); }

@media(max-width:1100px) { :root { --section-inset:16px; --page-edge:16px; } }
@media(max-width:720px) { :root { --section-inset:12px; --page-edge:8px; } }
@media(max-width:420px) { :root { --page-edge:4px; } }
