/*
 * Bootstrap 4 Normalize + Typography Subset
 * Original site loads full bootstrap.min.css (from responsive-photo-gallery plugin)
 * BEFORE cocoon-style.css. Rules here must load BEFORE cocoon-style.css
 * to match the original cascade order.
 * Body/html rules below are overridden by cocoon-style.css (which loads after),
 * but they must exist in the cascade for correct inheritance behavior.
 */

/* Bootstrap Normalize: html */
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Bootstrap Normalize: box-sizing including pseudo-elements */
*, ::after, ::before {
  box-sizing: border-box;
}

/* Bootstrap Normalize: body */
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
}

/* Bootstrap Normalize: HTML5 display block */
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

/* Headings: font-weight 500 and line-height 1.2 survive because
   cocoon's * { margin:0 } (specificity 0,0,0) is lower than h1-h6 (0,0,1),
   and neither cocoon nor skin-fuwari set font-weight/line-height on headings */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }

/* Paragraph: margin-bottom survives because p (0,0,1) > * (0,0,0) */
p {
  margin-top: 0;
  margin-bottom: 1rem;
}

/* Lists: margin-bottom survives for same specificity reason */
ol, ul {
  margin-top: 0;
  margin-bottom: 1rem;
}

/* Links */
a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

/* Images */
img {
  vertical-align: middle;
  border-style: none;
}

/* Small */
small {
  font-size: 80%;
}

/* Table */
table {
  border-collapse: collapse;
}

/* Label */
label {
  display: inline-block;
  margin-bottom: .5rem;
}
