* {
    box-sizing: border-box;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

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

table {
    width: 100%;
}

.table-responsive {
    overflow-x: auto;
}

input, select, textarea, button {
    max-width: 100%;
}

@media (max-width: 768px) {
    .row {
        margin-left: 0;
        margin-right: 0;
    }

    [class*="col-"] {
        width: 100%;
    }

    h1 {
        font-size: 1.6rem;
    }

    h2 {
        font-size: 1.3rem;
    }

    .d-flex {
        flex-wrap: wrap;
    }

    body {
        font-size: 16px;
    }
}