*, *::before, *::after {
    box-sizing: border-box;
}

html {
    width: 100%;
    height: 100%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    width: 100%;
    max-width: 100vw;
    min-height: 100dvh;
    min-height: 100vh;
    overflow-x: hidden;
}

.site-shell {
    width: min(100%, 40rem);
    max-width: 100%;
}

.site-shell-wide {
    width: min(100%, 56.25rem);
    max-width: 100%;
}

/* Text Us: phones only (shown when mobile.js sets html.is-cell-phone) */
a.btn.text-us-link {
    display: none !important;
}

html.is-cell-phone a.btn.text-us-link {
    display: inline-block !important;
}
