/* Required */
/*  ------------------------------------------------------------------
  
@library :      CNN Grid System - SASS
@version :      0.0.0.1
@description :  System for managing breakpoints and
	            responsive grid columns.

@author :       Kenneth Uzquiano (kenneth.uzquiano@gmail.com)

------------------------------------------------------------------ */
    /*  BASE VALUES
		-----------
		All default values for generating the grid can be found in the
		'lib/vars' file. They can also be overidden by the project's vars file.
		Here is a brief description of what each variable within this file does.
		These variables are global, as they need to be used from mixin to mixin,
		but are calculated at each grid change, thus, do not need to be initialized.
		
		    $grid-id :              Active grid id
		    $grid-active :          Active grid
		    $grid-columns :         Number of columns in active grid
		    $grid-column-width :    Width of a column based on units below
		    $grid-query :           Media query for active grid
		    $grid-full-width :      Full width of active grid
    */
    /*  -------------------------------
	                MIXINS
		-------------------------------

		@mixin :                @mixin breakpoint( $breakpointId: mobile )
		@description :          Define active grid by id
		@param $breakpointId :  Id of grid to activate (default : mobile)
		@param $retina :        Include media queries for retina displays (default : false)
    */
/* 20px */
    /*  
    	@mixin :                @mixin grid-col( $col: 1 )
		@description :          Calculate widths of grid columns based on px, ems, or %
		@param $col :           Number of columns to calculate width (default : 1)
		@param $fluid :         Calculate using percentages vs em / px (default : true)
	*/
/*
	@mixin :                @mixin grid-row( $fluid: true )
	@description :          Define a row to house columned elements
	@param $fluid :         Calculate using percentages vs em / px (default : true)
*/
/*
	---------------------------------
	           FUNCTIONS
	---------------------------------
*/
/*
	@function :         -fn-findGridById( $gridID: mobile )
	@description :      Define active grid by id
	@param $gridId :    Id of grid to activate
*/
/*
	@function :         -fn-setGridProperties($p_grid)
	@description :      Set properties based on active grid
	@param $p_grid :    Grid to use to set properties
*/
/*
	@function :         -fn-getStaticWidth($col: 1)
	@description :      Calculate and return the static width of columns.
	@param $col :       Number of columns to use to calculate static width.
*/
/*
	@function :         -fn-getFluidWidth($col: 1)
	@description :      Calculate and return the fluid width of columns.
	@param $col :       Number of columns to use to calculate fluid width.
*/
/*
	@function :         -fn-getStaticMargin()
	@description :      Calculate and return the static margin
	@param :            null
*/
/*
	@function :         -fn-getFluidMargin()
	@description :      Calculate and return the fluid margin
	@param :            null
*/
body {
  font-size: 16px;
  font-family: CNN,"Helvetica Neue",Helvetica,Arial,sans-serif;
  margin: 0; }
  body * {
    box-sizing: border-box; }

a {
  color: #006598; }

/* Set up flexible containers */
.interactive-container,
.cnn-outbrain,
#comments,
#disqus_thread {
  margin: 0 auto;
  width: 95%;
  max-width: 1100px; }

/* ------------ MOBILE / DEFAULT STYLES ------------ */
h1 {
  font-size: 1.75rem;
  line-height: 1.21429;
  padding: 10px 0 0;
  font-weight: 300;
  margin: 10px 0; }

.metadata {
  color: #737373;
  font-weight: 400;
  font-size: .75rem;
  line-height: 1.5; }
  .metadata p {
    margin-bottom: 0; }
  .metadata__byline {
    font-weight: 700;
    padding-bottom: 0; }
    .metadata__byline a {
      color: #006598; }
  .metadata:after {
    clear: both;
    content: '';
    display: table; }

p {
  padding: 0 10px 18px 0; }

/* ------------ TABLET STYLES ------------ */
/* md 10 screen and (min-width: 30em) */
@media screen and (min-width: 30em) {
  h1 {
    font-size: 3.25rem;
    line-height: 1.07692;
    padding: 10px 0 0;
    font-weight: 300;
    margin: 10px 0; }

  .metadata {
    color: #737373;
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.57143; }
    .metadata p {
      margin-bottom: 0; }
    .metadata__byline {
      font-weight: 700;
      padding-bottom: 0; }
      .metadata__byline a {
        color: #006598; }
    .metadata:after {
      clear: both;
      content: '';
      display: table; } }
/* ------------ DESKTOP STYLES ------------ */
/* lg 12 screen and (min-width: 48em) */
@media screen and (min-width: 48em) {
  h1 {
    font-size: 3.875rem;
    line-height: 1.06452;
    padding: 10px 0 0;
    font-weight: 300;
    margin: 10px 0; }

  .metadata {
    color: #737373;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5; }
    .metadata p {
      margin-bottom: 0; }
    .metadata__byline {
      font-weight: 700;
      padding-bottom: 0; }
      .metadata__byline a {
        color: #006598; }
    .metadata:after {
      clear: both;
      content: '';
      display: table; } }
/* CNN Sharebar */
.share-container {
  width: 150px; }
  .share-container .share-bar {
    margin: 0;
    padding: 0; }
    .share-container .share-bar li.share-button {
      width: 35px;
      height: 35px;
      display: inline-block;
      margin-right: 15px;
      cursor: pointer;
      list-style-type: none;
      -webkit-transition: transform 0.5s ease 0s;
      transition: transform 0.5s ease 0s; }
      .share-container .share-bar li.share-button.email {
        background: url("https://cdn.cnn.com/cnn/.e/img/4.0/interactive/sharebar/email.png");
        background-size: 35px 35px; }
      .share-container .share-bar li.share-button.facebook {
        background: url("https://cdn.cnn.com/cnn/.e/img/4.0/interactive/sharebar/facebook.png");
        background-size: 35px 35px; }
      .share-container .share-bar li.share-button.twitter {
        background: url("https://cdn.cnn.com/cnn/.e/img/4.0/interactive/sharebar/twitter.png");
        background-size: 35px 35px; }
      .share-container .share-bar li.share-button:hover {
        transform: scale(1.2, 1.2);
        -webkit-transform: scale(1.2, 1.2); }
      .share-container .share-bar li.share-button:last-child {
        margin-right: 0; }

/*---------------
DESKTOP
---------------*/
/* lg 12 screen and (min-width: 48em) */
@media screen and (min-width: 48em) {
  .share-container {
    float: right;
    margin-left: 30px;
    margin-bottom: 30px; }
    .share-container .share-bar {
      text-align: right; } }
/* Project-level vars */
/* 
    CNN Colors
    based on swatches from Data viz style guide
	https://www.dropbox.com/s/vo2qkfk6ycgndni/Data%20Viz%20Style%20Guide-1.pdf?dl=0
*/
body {
  background-color: #1A1A1A;
  color: #F2F2F2; }

.eyebrow-container {
  text-align: center;
  margin: 2rem auto 1rem auto; }

.eyebrow {
  width: 25%;
  min-width: 200px; }

h1 {
  text-align: center;
  font-size: 48px;
  margin: 2rem auto 0 auto;
  max-width: 780px;
  line-height: 1.1em;
  font-family: 'CNN Condensed', 'CNN', sans-serif;
  font-weight: 500; }

p.intro {
  font-weight: 300;
  letter-spacing: .02em;
  margin: 1em auto;
  max-width: 700px;
  text-align: center;
  font-size: 18px; }

p.byline {
  color: #A6A6A6;
  font-weight: 300;
  font-size: 18px;
  letter-spacing: .01em;
  margin: 1em auto;
  max-width: 700px;
  text-align: center; }

.share-container {
  margin: 20px auto;
  text-align: center;
  float: none;
  clear: both; }

/* Packery grid setup */
.grid,
.grid * {
  box-sizing: border-box; }

.grid {
  width: 100%; }

.grid-card {
  margin: 0 0 10px 0;
  padding: 10px;
  width: 100%;
  position: relative; }
  .grid-card.double {
    width: 100%; }

.grid-card:hover {
  cursor: pointer; }

@media screen and (min-width: 600px) {
  .grid-card {
    width: 50%; }
    .grid-card.double, .grid-card.open {
      width: 100%; } }
@media screen and (min-width: 900px) {
  .grid-card {
    width: 33%; }
    .grid-card.double, .grid-card.open {
      width: 67%; } }
.card__top {
  position: relative;
  margin: 0; }

.card__top > img {
  width: 100%;
  margin: 0; }

.card__header {
  background: linear-gradient(to top, black, transparent);
  padding: 20px 10px 10px 10px;
  margin: 0;
  position: absolute;
  bottom: 5px;
  left: 0;
  opacity: 0;
  width: 100%;
  transition: opacity .25s ease-in-out; }

.grid-card:hover .card__header {
  opacity: 1; }

.card__photo-credit {
  padding: 2px 0 0 0;
  margin: 0;
  color: #A6A6A6;
  text-align: right;
  font-size: .8em;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: .01em; }

.card__date {
  font-weight: 500;
  color: #FFC61C;
  margin: 15px 0 5px 0;
  padding: 0;
  line-height: 1em;
  font-size: .8em;
  text-transform: uppercase; }

.card__headline {
  font-size: 21px;
  font-weight: 300;
  letter-spacing: .01em;
  line-height: 1.1em;
  margin: 0;
  padding: 0; }

.card__body {
  padding: 0 20px 10px 20px;
  display: none;
  margin-top: -6px; }

.grid-card.open > .card__body {
  display: block; }

.grid-card.open .card__header {
  display: none; }

.card__blurb {
  margin: 1em 0;
  padding: 0;
  line-height: 1.4em;
  font-weight: 300;
  letter-spacing: .01em; }

.cnn-outbrain-container {
  background-color: #D9D9D9;
  margin-bottom: -40px;
  margin-top: 2em;
  padding-top: 1em; }

a {
  text-decoration: none;
  color: #3061F3; }
  a:hover {
    color: #FB1B17; }

.source {
  font-size: .75rem;
  color: #595959;
  text-align: right; }

.cvp-video {
  height: 0;
  position: relative;
  padding-bottom: 56.25%;
  margin-bottom: 20px; }
  .cvp-video div {
    height: auto;
    max-width: 100%;
    width: 100%; }
  .cvp-video video, .cvp-video iframe, .cvp-video object {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }

/*# sourceMappingURL=global-100-days.css.map */
