/* Mobile-first overrides for the public website homepage. */
@media (max-width: 991.98px) {
    html,
    body {
        overflow-x: hidden;
    }

    #wrapper.container-fluid {
        padding-left: 0;
        padding-right: 0;
    }

    #content .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    #pageContent .row > [class*="col-"],
    #questionForm .row > [class*="col-"],
    #footerContent [class*="col-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    #headerContent img#headerImage {
        width: 100%;
        height: auto;
    }

    #headerSearchContent .input-group {
        margin-bottom: 0.75rem;
    }

    #headerSearchContent .input-group .form-control,
    #headerSearchContent .input-group .btn {
        height: 42px;
    }

    #mainNavbar {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    #mainNavbar .navbar-brand {
        margin-right: 0;
        font-size: 1rem;
    }

    #mainNavbar .navbar-toggler {
        margin-left: auto;
    }

    #mainNavbar .navbar-nav {
        width: 100%;
    }

    #mainNavbar .navbar-nav .nav-item {
        width: 100%;
    }

    #mainNavbar .navbar-nav .nav-link {
        display: block;
        width: 100%;
        padding: 12px 10px;
        white-space: normal;
        line-height: 1.35;
    }

    /* On touch devices, hover-only submenus are inaccessible, so stack them. */
    #mainNavbar .navbar-nav .nav-item ul {
        display: block;
        position: static;
        width: 100%;
        box-shadow: none;
        margin: 0;
        background-color: rgba(0, 0, 0, 0.12);
    }

    #mainNavbar .navbar-nav .nav-item ul li ul {
        left: auto;
        top: auto;
        margin-left: 0;
    }

    #pageContent {
        overflow-wrap: break-word;
        word-wrap: break-word;
    }

    #pageContent,
    #pageContent * {
        max-width: 100%;
        box-sizing: border-box;
    }

    #pageContent p,
    #pageContent li,
    #pageContent span,
    #pageContent a,
    #pageContent td,
    #pageContent th,
    #pageContent div {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    #pageContent .document-section,
    #pageContent .document-section * {
        white-space: normal !important;
    }

    #pageContent [style*="margin-left"] {
        margin-left: 0 !important;
    }

    #pageContent [style*="padding-left"] {
        padding-left: 0 !important;
    }

    #pageContent pre,
    #pageContent code {
        white-space: pre-wrap;
        word-break: break-word;
    }

    #pageContent ul,
    #pageContent ol {
        margin-left: 0 !important;
        padding-left: 1.2rem !important;
    }

    #pageContent ul ul,
    #pageContent ul ol,
    #pageContent ol ul,
    #pageContent ol ol {
        margin-left: 0 !important;
        padding-left: 0.9rem !important;
    }

    #pageContent li {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    #pageContent li > p,
    #pageContent li > div {
        margin-left: 0 !important;
    }

    #pageContent ul[style],
    #pageContent ol[style],
    #pageContent li[style],
    #pageContent li > p[style],
    #pageContent li > div[style] {
        margin-left: 0 !important;
        text-indent: 0 !important;
    }

    #pageContent img,
    #pageContent video,
    #pageContent iframe {
        max-width: 100%;
        height: auto;
    }

    #pageContent table {
        display: block;
        width: 100% !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    #pageContent table colgroup,
    #pageContent table col {
        display: none !important;
    }

    #pageContent table tbody,
    #pageContent table tr,
    #pageContent table th,
    #pageContent table td {
        display: block;
        width: 100% !important;
    }

    #pageContent table td,
    #pageContent table th {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #pageContent table td + td,
    #pageContent table th + th {
        margin-top: 0.75rem;
    }

    #questionForm {
        margin-top: 0.75rem;
    }

    #questionForm .form-group {
        margin-bottom: 0.9rem;
    }

    #questionForm .btn.btn-custom {
        width: 100%;
        padding-top: 0.6rem;
        padding-bottom: 0.6rem;
    }

    #footerContent {
        padding-bottom: 0.5rem;
        text-align: center;
    }

    #footerContent img {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
}
