@charset "utf-8";
/* CSS Document */

/*
 * Modern CSS Reset
 * Updated: September 2026
 * www.kdwebhostingdesign.com
 *
 * A practical baseline for new HTML/CSS projects.
 * This reset preserves useful semantic browser defaults while removing
 * common layout inconsistencies and improving responsive behavior.
 */

/* Use a predictable box model. */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent automatic text-size inflation on mobile browsers. */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Remove the browser's default body margin. */
body {
  margin: 0;
  min-height: 100vh;
  line-height: 1.5;
}

/* Remove default margins from common text and structural elements. */
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Keep list semantics for normal lists, but remove markers when a list
   explicitly has a navigation/presentation role. */
ul[role="list"],
ol[role="list"] {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Make media responsive without changing its intrinsic proportions. */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

img,
video {
  height: auto;
}

/* Inherit typography in form controls. */
button,
input,
select,
textarea {
  font: inherit;
}

/* Prevent long text and URLs from forcing containers wider. */
p,
h1,
h2,
h3,
h4,
h5
h6 {
  overflow-wrap: break-word;
}

/* Improve wrapping where supported. */
p {
  text-wrap: pretty;
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

/* Make textareas resize vertically by default. */
textarea:not([rows]) {
  min-height: 10em;
}

/* Give anchored targets breathing room when navigated to. */
:target {
  scroll-margin-block: 5ex;
}

/* Respect the user's motion preference. */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
}
