/*!
 * Milligram v1.4.1 (Optimized Layout Edition for Underscores)
 * https://milligram.io
 */

/* 1. Global Box Sizing Reset */
html {
  box-sizing: border-box;
}
*, *:after, *:before {
  box-sizing: inherit;
}

/* 2. Flexbox Grid Base Layout Track */
.container {
  margin: 0 auto;
  width: 85%;        /* Takes up 85% of the screen width on smaller/medium screens */
  max-width: 1200px; /* STOPS it from expanding past 1200px on large 1920px screens */
  padding: 0;        /* You can set padding to 0 since your width percentage creates built-in margins */
  position: relative;
}

.row {
  display: flex;
  flex-direction: column; /* Mobile-first stacking */
  padding: 0;
  width: 100%;
}

/* Clear margins on rows inside nested structures */
.row.row-no-padding {
  padding: 0;
}
.row.row-no-padding > .column {
  padding: 0;
}

.row.row-wrap {
  flex-wrap: wrap;
}

/* Responsive grid layout trigger for Tablets, Desktops, and up */
@media (min-width: 40.0rem) { /* 40rem = ~640px and wider devices */
  .row {
    flex-direction: row;
    margin-left: -1.0rem;
    width: calc(100% + 2.0rem);
  }
  .column {
    display: block;
    flex: 1 1 auto; /* Columns auto-size themselves evenly based on content */
    max-width: 100%;
    padding: 0 1.0rem;
  }
  
  /* Vertical alignment helper modifiers */
  .row-top { align-items: flex-start; }
  .row-bottom { align-items: flex-end; }
  .row-center { align-items: center; }
  .row-stretch { align-items: stretch; }
  .row-baseline { align-items: baseline; }
  
  .column-top { align-self: flex-start; }
  .column-bottom { align-self: flex-end; }
  .column-center { align-self: center; }

  /* 3. Explicit Proportional Grid Modifiers (Optional Explicit Sizing) */
  .column-10 { flex: 0 0 10%; max-width: 10%; }
  .column-20 { flex: 0 0 20%; max-width: 20%; }
  .column-25 { flex: 0 0 25%; max-width: 25%; } /* Perfect 1/4 Column */
  .column-33, .column-34 { flex: 0 0 33.3333%; max-width: 33.3333%; } /* Perfect 1/3 Column */
  .column-40 { flex: 0 0 40%; max-width: 40%; }
  .column-50 { flex: 0 0 50%; max-width: 50%; } /* Perfect 1/2 Column */
  .column-60 { flex: 0 0 60%; max-width: 60%; }
  .column-66, .column-67 { flex: 0 0 66.6666%; max-width: 66.6666%; } /* Perfect 2/3 Column */
  .column-75 { flex: 0 0 75%; max-width: 75%; } /* Perfect 3/4 Column */
  .column-80 { flex: 0 0 80%; max-width: 80%; }
  .column-90 { flex: 0 0 90%; max-width: 90%; }
  
  /* Explicit Offset Modifiers */
  .column-offset-10 { margin-left: 10%; }
  .column-offset-20 { margin-left: 20%; }
  .column-offset-25 { margin-left: 25%; }
  .column-offset-33 { margin-left: 33.3333%; }
  .column-offset-40 { margin-left: 40%; }
  .column-offset-50 { margin-left: 50%; }
  .column-offset-60 { margin-left: 60%; }
  .column-offset-66 { margin-left: 66.6666%; }
  .column-offset-75 { margin-left: 75%; }
  .column-offset-80 { margin-left: 80%; }
  .column-offset-90 { margin-left: 90%; }
}
