/* 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; }

.interactive-container {
  width: 100%;
  max-width: none; }

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

.metadata {
  color: #737373;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  margin: 15px auto;
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif; }
  .metadata p {
    margin: 0;
    padding: 0; }
  .metadata__byline {
    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: 300;
    font-size: 16px;
    line-height: 1.57143;
    text-align: center;
    margin: 15px auto;
    font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif; }
    .metadata p {
      margin: 0;
      padding: 0; }
    .metadata__byline {
      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: 300;
    font-size: 16px;
    line-height: 1.5;
    max-width: 720px;
    text-align: center;
    margin: 15px auto;
    font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif; }
    .metadata p {
      margin: 0;
      padding: 0; }
    .metadata__byline {
      padding-bottom: 0; }
      .metadata__byline a {
        color: #006598; }
    .metadata:after {
      clear: both;
      content: '';
      display: table; } }
/* CNN Sharebar */
.share-container {
  width: 150px;
  margin: 0 auto; }
  .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 {
    margin: 0 auto; }
    .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
*/
a {
  text-decoration: none; }

.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%; }

body {
  color: #262626; }

.politics-hed {
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  font-weight: 500;
  max-width: 720px;
  margin: 0 auto;
  color: #262626;
  text-align: center; }

#topper {
  padding: 15px 0 0 0;
  width: 100%; }

.topper-inset {
  max-width: 720px;
  width: 100%;
  margin: 0 auto; }

.intro {
  padding: 0; }

.cnn_clear_bottom {
  clear: both;
  margin-top: 60px; }

#timeline-intro {
  width: 100%;
  border-bottom: 1px solid #d9d9d9;
  z-index: 2; }

.timeline-intro-text {
  font-size: 18px;
  padding: 20px 0 0 0;
  line-height: 1.6;
  clear: both;
  font-weight: 300;
  max-width: 720px;
  margin: 0 auto; }

/*TIMELINE*/
#complete_timeline {
  margin: 50px auto;
  z-index: -1; }

.item-wrapper {
  width: 100%; }

.item {
  font-family: CNN,"Helvetica Neue",Helvetica,Arial,sans-serif;
  padding: 20px 0;
  margin: 0 auto 40px auto;
  clear: both;
  z-index: 1;
  font-weight: 300;
  max-width: 720px;
  border-top: 1px solid #e6e6e6; }

.timeline-block {
  width: 100%;
  padding-top: 7px;
  clear: both; }

.role {
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  color: #8c8c8c;
  font-size: 16px;
  font-weight: 200;
  padding: 3px 0;
  margin: 0 0 10px 0;
  float: left;
  clear: both;
  padding: 0; }

.fired {
  background-color: #FF4A43;
  padding: 3px 8px;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 500;
  font-size: 14px;
  border-radius: 20px;
  letter-spacing: 1px;
  margin-right: 5px; }

.resigned {
  background-color: #FFC61C;
  padding: 3px 8px;
  text-transform: uppercase;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  border-radius: 20px;
  letter-spacing: 1px;
  margin-right: 5px; }

.unknown {
  background-color: #8C8C8C;
  padding: 3px 8px;
  text-transform: uppercase;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  border-radius: 20px;
  letter-spacing: 1px;
  margin-right: 5px; }

.hed {
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  font-weight: 700;
  color: #262626;
  text-decoration: none;
  font-size: 30px;
  line-height: 36px;
  margin: 0;
  padding: 0;
  float: left;
  clear: both; }

.light-text {
  font-style: italic; }

.time {
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  color: #595959;
  font-size: 16px;
  font-weight: 200;
  padding: 3px 0;
  margin: 0;
  clear: both; }

.right-float {
  float: right; }

.left-float {
  float: left;
  width: calc(100% - 140px); }

a {
  text-decoration: none; }

.image-block {
  float: left;
  margin-bottom: 7px;
  width: 120px;
  height: 120px;
  margin-right: 20px;
  background-color: #e6e6e6;
  border-radius: 50%; }

.timeline-img {
  width: 100%;
  float: left;
  margin: 0 10px 3px 0;
  border-radius: 50%; }

.timeline-caption {
  font-size: 12px;
  color: #bebebe;
  text-align: right;
  font-weight: 400;
  padding: 0; }

.timeline-desc {
  font-size: 1.1rem;
  margin: 0 0 60px 0;
  line-height: 1.5;
  clear: both;
  padding: 0; }

.timeline-note {
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  font-size: 14px;
  text-transform: uppercase;
  color: #8c8c8c;
  font-weight: 700;
  white-space: nowrap; }

.timeline-note:hover {
  text-decoration: underline; }

.timeline-note::after {
  display: inline-block;
  width: 0px;
  height: 0px;
  content: '';
  position: relative;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid #8c8c8c;
  left: 5px;
  top: 0px;
  margin: 0; }

.bolded {
  font-weight: 700; }

.credits {
  margin: 0 auto;
  max-width: 720px; }

.credits p {
  text-align: center;
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  font-style: italic;
  color: #bebebe;
  font-weight: 200; }

.contributor {
  margin: 30px auto;
  max-width: 720px; }

.contributor p {
  font-size: 16px;
  font-style: italic;
  color: #737373;
  font-weight: 200; }

@media (max-width: 760px) {
  #complete_timeline {
    margin: 30px 15px 0 15px; }

  .topper-inset {
    padding: 0 15px 30px 15px; }

  .contributor {
    margin: 30px 15px; } }
@media (max-width: 480px) {
  .hed, .time {
    font-size: 24px;
    line-height: 32px;
    padding-bottom: 2px; }

  .role {
    font-size: 14px; }

  .fired, .resignation, .unknown {
    font-size: 12px; }

  .timeline-block {
    padding-top: 2px; }

  .item {
    margin-bottom: 20px;
    padding: 10px 0; }

  .politics-hed {
    font-size: 2.75rem; } }
@media (max-width: 360px) {
  .hed, .time {
    font-size: 22px;
    line-height: 28px;
    padding-bottom: 2px; }

  .role {
    font-size: 13px; }

  .fired, .resignation, .unknown {
    font-size: 11px; }

  .timeline-block {
    padding-top: 2px; } }
.departure {
  display: block;
  margin: 1em 0;
  padding: 0; }

.departure_details {
  padding: 10px 10px 10px 0;
  width: 100%;
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  font-size: 14px;
  font-weight: 300;
  cursor: pointer; }

.departure_name {
  color: #262626;
  font-size: 16px;
  margin-top: 3px; }

.departure_role {
  color: #bebebe;
  font-style: italic;
  margin-left: 22px; }

.departure_chart {
  width: 100%;
  height: 100px;
  flex: 1 0 auto; }

@media screen and (min-width: 600px) {
  .departure {
    display: flex;
    align-items: center;
    margin: 0; }

  .departure_chart {
    width: 70%; }

  .departure_details {
    padding: 10px 10px 10px 0;
    width: 30%; } }
.xAxisGroup line {
  fill: none;
  stroke: #e6e6e6;
  stroke-dasharray: 1px 1px;
  shape-rendering: crispEdges;
  stroke-width: 1px; }

.domain {
  display: none; }

.tenure {
  fill: none;
  stroke: #595959;
  stroke-width: 2px; }

.Resigned {
  fill: #FFC61C;
  stroke: #FFC61C;
  stroke-width: 2; }

.Resigned_photo {
  border: 2px solid #FFC61C; }

.Resigned_text {
  background-color: #FFC61C;
  color: #ffffff;
  padding: 2px 5px;
  border-radius: 3px;
  font-size: 14px; }

.Fired {
  fill: #FF4A43;
  stroke: #FF4A43;
  stroke-width: 2; }

.Fired_photo {
  border: 2px solid #FF4A43; }

.Fired_text {
  background-color: #FF4A43;
  color: #ffffff;
  padding: 2px 5px;
  border-radius: 3px;
  font-size: 14px; }

.Unknown {
  fill: #8C8C8C;
  stroke: #8C8C8C;
  stroke-width: 2; }

.Unknown_photo {
  border: 2px solid #8C8C8C; }

.Unknown_text {
  background-color: #8C8C8C;
  color: #ffffff;
  padding: 2px 5px;
  border-radius: 3px;
  font-size: 14px; }

.start_circle {
  fill: #ffffff;
  stroke: #8C8C8C;
  stroke-width: 2; }

#dot_plot {
  max-width: 1100px;
  margin: 20px auto 80px auto; }

#fired_table, #resigned_table, #unknown_table {
  max-width: 720px;
  margin: 20px auto; }

.departure_image {
  display: inline-block;
  height: 70px;
  width: 70px;
  border-radius: 50%;
  float: left;
  background-color: #e6e6e6;
  margin: -5px 10px 0 0; }

.departure_image {
  background-size: cover; }

.departure_type {
  font-weight: 700;
  text-transform: uppercase; }

.reason {
  font-weight: 300;
  font-size: 18px;
  line-height: 30px;
  border-bottom: 1px dotted #e6e6e6;
  margin: 0;
  padding: 0 0 40px 0; }

.table-hed {
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  font-weight: 700;
  color: #ffffff;
  text-decoration: none;
  font-size: 16px;
  margin: 0 0 20px 0;
  text-transform: uppercase; }

#fired_table .table-hed {
  background-color: #FF4A43;
  border-radius: 3px;
  padding: 3px 8px; }

#resigned_table .table-hed {
  background-color: #FFC61C;
  border-radius: 3px;
  padding: 3px 8px; }

#unknown_table .table-hed {
  background-color: #8C8C8C;
  border-radius: 3px;
  padding: 3px 8px; }

.table-name {
  font-weight: 700;
  font-size: 30px;
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  color: #262626;
  margin: 8px 0 0 0;
  padding: 0; }

.table-role {
  font-weight: 300;
  font-size: 18px;
  font-family: CNN Condensed, CNN, "Helvetica Neue",Helvetica,Arial,Utkal,sans-serif;
  color: #bebebe;
  font-style: italic;
  margin: 0 0 10px 0;
  padding: 0; }

/*# sourceMappingURL=20170706-timeline-template-jd.css.map */
.resigned-image {
  border: 3px solid #FFC61C; }

.fired-image {
  border: 3px solid #FF4A43; }

.unknown-image {
  border: 3px solid #8C8C8C; }

.time-reason {
  padding: 0;
  margin: 0 0 10px 0; }

#responsive-embed-20180309-timeline-duration-departures {
  max-width: 930px;
  margin: 0 auto; }

.update-note {
  font-size: 12px;
  color: #8c8c8c;
  padding: 5px 0 0 0; }

@media (max-width: 620px) {
  .image-block {
    width: 80px;
    height: 80px; }

  .hed {
    font-size: 24px;
    padding: 0; }

  .type, .time {
    font-size: 12px; }

  .role {
    padding: 0;
    margin-bottom: 10px; }

  .time-reason {
    margin-bottom: 5px; }

  .left-float {
    float: left;
    width: calc(100% - 100px); }

  .timeline-desc {
    font-size: 1em; } }
@media (max-width: 400px) {
  .image-block {
    width: 60px;
    height: 60px; }

  .left-float {
    float: left;
    width: calc(100% - 90px); } }

/*# sourceMappingURL=20170706-timeline-template-jd.css.map */
