/* ---General rules - scales images, videos to size of container--- */
img, embed, object, video, picture {
   max-width: 100%;
 }

 /* ---Change the way the box model works, tells the browser to account for any border and padding in the values you specify for an element's width and height.--- */

 html {
   box-sizing: border-box;
 }

 *, *::before, *::after {
   box-sizing: inherit;
 }

/* ---Mini CSS reset--- */

body, p, h1, h2, h3, h4, h5, ul {
   margin: 0px; 
   padding: 0px;
}

/* ---Utility Classes--- */

.no-display {
   display: none;
}

.hidden:not(:focus):not(:active) {
   position: absolute !important; 
   width: 1px !important; 
   height: 1px !important; 
   padding: 0 !important; 
   margin: -1px !important; 
   overflow: hidden !important; 
   clip-path: inset(50%); 
   white-space: nowrap !important; 
   border: 0 !important; 
}

.centered {
   margin: 0 auto;
}

.box {
   background-color: violet;
   color: #fff;
   padding: 20px;
   margin-top: 10px;
   margin-bottom: 10px;
 }

 .test-color {
   background-color: aqua;
 }

  .test-color2 {
   background-color: blue;
 }

 .full-width-grid-con {
   /* set this container as a grid, with 3 columns
   the other grid will sit in the middle column, this allows for overlapping content */
   display: grid; 
	grid-template-columns: 1fr minmax(0, 1200px) 1fr;  
}

.image-placeholder {
   width: 100%;
   background-image: linear-gradient(to right, #F59E0B, #ec4899);
   border: 2px dashed #aaa;
   aspect-ratio: 16/9;
}

/* ---Mobile Library Grid Styles--- */

 .grid-con { 
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   grid-column-gap: 28px;
   max-width: 1200px;
   padding: 0 16px;
}

.subgrid-con {
   display: grid;
   grid-template-columns: subgrid;
}

/* Add full width grid con for nesting, later */

.col-span-1	{grid-column: span 1;}
.col-span-2	{grid-column: span 2;}
.col-span-3	{grid-column: span 3;}
.col-span-4	{grid-column: span 4;}
.col-span-full {grid-column: 1 / -1;}

.col-start-1	{grid-column-start: 1;}
.col-start-2	{grid-column-start: 2;}
.col-start-3	{grid-column-start: 3;}
.col-start-4	{grid-column-start: 4;}

.col-end-1	{grid-column-end: 1;}
.col-end-2	{grid-column-end: 2;}
.col-end-3	{grid-column-end: 3;}
.col-end-4	{grid-column-end: 4;}
.col-end-5	{grid-column-end: 5;}

/* ---Tablet Library Grid Styles--- */

@media screen and (min-width: 768px) { 
  .grid-con { 
      grid-template-columns: repeat(12, minmax(0, 1fr));
      grid-column-gap: 20px;
      padding: 0 16px;
   }

  .m-col-span-1 { grid-column: span 1; }
  .m-col-span-2 { grid-column: span 2; }
  .m-col-span-3 { grid-column: span 3; }
  .m-col-span-4 { grid-column: span 4; }
  .m-col-span-5 { grid-column: span 5; }
  .m-col-span-6 { grid-column: span 6; }
  .m-col-span-7 { grid-column: span 7; }
  .m-col-span-8 { grid-column: span 8; }
  .m-col-span-9 { grid-column: span 9; }
  .m-col-span-10 { grid-column: span 10; }
  .m-col-span-11 { grid-column: span 11; }
  .m-col-span-12 { grid-column: span 12; }
  .m-col-span-full { grid-column: 1 / -1; }

   .m-col-start-1	{grid-column-start: 1;}
   .m-col-start-2	{grid-column-start: 2;}
   .m-col-start-3	{grid-column-start: 3;}
   .m-col-start-4	{grid-column-start: 4;}
   .m-col-start-5	{grid-column-start: 5;}
   .m-col-start-6	{grid-column-start: 6;}
   .m-col-start-7	{grid-column-start: 7;}
   .m-col-start-8	{grid-column-start: 8;}
   .m-col-start-9	{grid-column-start: 9;}
   .m-col-start-10	{grid-column-start: 10;}
   .m-col-start-11	{grid-column-start: 11;}
   .m-col-start-12	{grid-column-start: 12;}
   .m-col-start-13	{grid-column-start: 13;}

   .m-col-end-1	{grid-column-end: 1;}
   .m-col-end-2	{grid-column-end: 2;}
   .m-col-end-3	{grid-column-end: 3;}
   .m-col-end-4	{grid-column-end: 4;}
   .m-col-end-5	{grid-column-end: 5;}
   .m-col-end-6	{grid-column-end: 6;}
   .m-col-end-7	{grid-column-end: 7;}
   .m-col-end-8	{grid-column-end: 8;}
   .m-col-end-9	{grid-column-end: 9;}
   .m-col-end-10	{grid-column-end: 10;}
   .m-col-end-11	{grid-column-end: 11;}
   .m-col-end-12	{grid-column-end: 12;}
   .m-col-end-13	{grid-column-end: 13;}
}


/* ---Desktop Library Grid Styles--- */

@media screen and (min-width: 1200px) { 
   .grid-con { 
      grid-column-gap: 28px;
      padding: 0 16px;
   }

   .l-col-span-1  { grid-column: span 1; }
  .l-col-span-2  { grid-column: span 2; }
  .l-col-span-3  { grid-column: span 3; }
  .l-col-span-4  { grid-column: span 4; }
  .l-col-span-5  { grid-column: span 5; }
  .l-col-span-6  { grid-column: span 6; }
  .l-col-span-7  { grid-column: span 7; }
  .l-col-span-8  { grid-column: span 8; }
  .l-col-span-9  { grid-column: span 9; }
  .l-col-span-10 { grid-column: span 10; }
  .l-col-span-11 { grid-column: span 11; }
  .l-col-span-12 { grid-column: span 12; }
  .l-col-span-full { grid-column: 1 / -1; }

   .l-col-start-1	{grid-column-start: 1;}
   .l-col-start-2	{grid-column-start: 2;}
   .l-col-start-3	{grid-column-start: 3;}
   .l-col-start-4	{grid-column-start: 4;}
   .l-col-start-5	{grid-column-start: 5;}
   .l-col-start-6	{grid-column-start: 6;}
   .l-col-start-7	{grid-column-start: 7;}
   .l-col-start-8	{grid-column-start: 8;}
   .l-col-start-9	{grid-column-start: 9;}
   .l-col-start-10	{grid-column-start: 10;}
   .l-col-start-11	{grid-column-start: 11;}
   .l-col-start-12	{grid-column-start: 12;}
   .l-col-start-13	{grid-column-start: 13;}

   .l-col-end-1	{grid-column-end: 1;}
   .l-col-end-2	{grid-column-end: 2;}
   .l-col-end-3	{grid-column-end: 3;}
   .l-col-end-4	{grid-column-end: 4;}
   .l-col-end-5	{grid-column-end: 5;}
   .l-col-end-6	{grid-column-end: 6;}
   .l-col-end-7	{grid-column-end: 7;}
   .l-col-end-8	{grid-column-end: 8;}
   .l-col-end-9	{grid-column-end: 9;}
   .l-col-end-10	{grid-column-end: 10;}
   .l-col-end-11	{grid-column-end: 11;}
   .l-col-end-12	{grid-column-end: 12;}
   .l-col-end-13	{grid-column-end: 13;}
}

/* Add XL Later */
