/* Dakota Valley Symphony – Normalize (v8‑optimized, 2026)
   Designed to pair with DVSC Minimal Reset + existing site CSS
   Only modern, relevant normalization rules included
   (Created 10/14/2026 by CoPilot)
*/

/* ============================================================
   1. Document-level normalization
   ============================================================ */

html {
    line-height: 1.15; /* Improve text rendering consistency */
    -webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape on iOS */
}

/* ============================================================
   2. Sections
   ============================================================ */

body {
    margin: 0; /* Already expected by your layout */
}

/* ============================================================
   3. Text-level semantics
   ============================================================ */

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

hr {
    height: 0; /* Modern browsers: consistent rendering */
}

pre {
    font-family: monospace, monospace; /* Ensure consistent monospace */
    font-size: 1em;
}

/* ============================================================
   4. Links
   ============================================================ */

a {
    background-color: transparent; /* Remove old IE link background */
}

/* ============================================================
   5. Abbreviations
   ============================================================ */

abbr[title] {
    border-bottom: none; /* Modern browsers already handle this well */
    text-decoration: underline dotted;
}

/* ============================================================
   6. Bold / strong
   ============================================================ */

b,
strong {
    font-weight: bolder; /* Modern spec behavior */
}

/* ============================================================
   7. Code / kbd / samp
   ============================================================ */

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

/* ============================================================
   8. Small text
   ============================================================ */

small {
    font-size: 80%;
}

/* ============================================================
   9. Subscript / superscript
   ============================================================ */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* ============================================================
   10. Images
   ============================================================ */

img {
    border-style: none; /* Remove default border on linked images */
}

/* ============================================================
   11. Forms
   ============================================================ */

button,
input,
optgroup,
select,
textarea {
    font-family: inherit; /* Match your site typography */
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button,
input { /* Prevent WebKit from applying weird line-height */
    line-height: normal;
}

button,
select {
    text-transform: none; /* Prevent uppercase transform inheritance */
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button; /* Ensure consistent button rendering */
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

legend {
    padding: 0;
}

/* ============================================================
   12. Textareas
   ============================================================ */

textarea {
    overflow: auto; /* Prevent scrollbars from disappearing */
}

/* ============================================================
   13. Tables
   ============================================================ */

table {
    border-collapse: collapse;
}

td,
th {
    padding: 0;
}
