﻿/* Flow */
  .flex-lr{display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-orient:horizontal; -webkit-box-direction:normal; -ms-flex-direction:row; flex-direction:row;}
  .flex-tb{display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-orient:vertical; -webkit-box-direction:normal; -ms-flex-direction:column; flex-direction:column;}
  .flex-rl{display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;}
  .flex-bt{display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-orient:vertical; -webkit-box-direction:reverse; -ms-flex-direction:column-reverse; flex-direction:column-reverse;}

  /* container */
  .wrap{-ms-flex-wrap:wrap;flex-wrap:wrap;}
  .nowrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap;}
  .wrap-rev{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse;}

  .align-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;}
  .align-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;}
  .align-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;}
  .align-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;}
  .align-around{-ms-flex-pack:distribute;justify-content:space-around;}
  .align-evenly{-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;}

  .cross-align-start{ -webkit-box-align:start; -ms-flex-align:start; align-items:flex-start;}
  .cross-align-end{ -webkit-box-align:end; -ms-flex-align:end; align-items:flex-end;}
  .cross-align-center{ -webkit-box-align:center; -ms-flex-align:center; align-items:center;}
  .cross-align-stretch{ -webkit-box-align:stretch; -ms-flex-align:stretch; align-items:stretch;}
  .cross-align-baseline{ -webkit-box-align:baseline; -ms-flex-align:baseline; align-items:baseline;}

  .wrap-align-start{-ms-flex-line-pack:start;align-content:flex-start;}
  .wrap-align-end{-ms-flex-line-pack:end;align-content:flex-end;}
  .wrap-align-center{-ms-flex-line-pack:center;align-content:center;}
  .wrap-align-stretch{-ms-flex-line-pack:stretch;align-content:stretch;}
  .wrap-align-between{-ms-flex-line-pack:justify;align-content:space-between;}
  .wrap-align-around{-ms-flex-line-pack:distribute;align-content:space-around;}

  /* items */
  .order-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0;} .order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;} .order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;} .order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3;} .order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4;} .order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5;} .order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6;} .order-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7;} .order-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8;} .order-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9;}
  .grow-0{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0} .grow-1{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;} .grow-2{-webkit-box-flex:2;-ms-flex-positive:2;flex-grow:2} .grow-3{-webkit-box-flex:3;-ms-flex-positive:3;flex-grow:3} .grow-4{-webkit-box-flex:4;-ms-flex-positive:4;flex-grow:4} .grow-5{-webkit-box-flex:5;-ms-flex-positive:5;flex-grow:5} .grow-6{-webkit-box-flex:6;-ms-flex-positive:6;flex-grow:6} .grow-7{-webkit-box-flex:7;-ms-flex-positive:7;flex-grow:7} .grow-8{-webkit-box-flex:8;-ms-flex-positive:8;flex-grow:8} .grow-9{-webkit-box-flex:9;-ms-flex-positive:9;flex-grow:9}
  .shrink-0{-ms-flex-negative:0;flex-shrink:0} .shrink-1{-ms-flex-negative:1;flex-shrink:1} .shrink-2{-ms-flex-negative:2;flex-shrink:2} .shrink-3{-ms-flex-negative:3;flex-shrink:3} .shrink-4{-ms-flex-negative:4;flex-shrink:4} .shrink-5{-ms-flex-negative:5;flex-shrink:5} .shrink-6{-ms-flex-negative:6;flex-shrink:6} .shrink-7{-ms-flex-negative:7;flex-shrink:7} .shrink-8{-ms-flex-negative:8;flex-shrink:8} .shrink-9{-ms-flex-negative:9;flex-shrink:9}

  .item-cross-align-start{ -ms-flex-item-align:start; align-self:flex-start;}
  .item-cross-align-end{ -ms-flex-item-align:end; align-self:flex-end;}
  .item-cross-align-center{ -ms-flex-item-align:center; -ms-grid-row-align:center; align-self:center;}
  .item-cross-align-stretch{ -ms-flex-item-align:stretch; -ms-grid-row-align:stretch; align-self:stretch;}
  .item-cross-align-baseline{ -ms-flex-item-align:baseline; align-self:baseline;}
  .item-cross-align-auto{ -ms-flex-item-align:auto; -ms-grid-row-align:auto; align-self:auto;}


  /* Utility */

  /* Flow margin (left to tright) */
  .flex-lr.fm-0 > *:not(:last-child){margin-right:0;}
  .flex-lr.fm-1 > *:not(:last-child){margin-right:3px;}
  .flex-lr.fm-2 > *:not(:last-child){margin-right:7px;}
  .flex-lr.fm-3 > *:not(:last-child){margin-right:15px;}
  .flex-lr.fm-4 > *:not(:last-child){margin-right:25px;}

  /* Cross axis */
  .flex-lr.wrap.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-bottom:0;}
  .flex-lr.wrap.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-bottom:3px;}
  .flex-lr.wrap.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-bottom:7px;}
  .flex-lr.wrap.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-bottom:15px;}
  .flex-lr.wrap.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-bottom:25px;}

  /* wrap reverse */
  .flex-lr.wrap-rev.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap-rev.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-top:0;}
  .flex-lr.wrap-rev.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap-rev.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-top:3px;}
  .flex-lr.wrap-rev.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap-rev.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-top:7px;}
  .flex-lr.wrap-rev.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap-rev.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-top:15px;}
  .flex-lr.wrap-rev.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-lr.wrap-rev.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-top:25px;}


  /* Flow margin (top to bottom) */
  .flex-tb.fm-0 > *:not(:last-child){margin-bottom:0;}
  .flex-tb.fm-1 > *:not(:last-child){margin-bottom:3px;}
  .flex-tb.fm-2 > *:not(:last-child){margin-bottom:7px;}
  .flex-tb.fm-3 > *:not(:last-child){margin-bottom:15px;}
  .flex-tb.fm-4 > *:not(:last-child){margin-bottom:25px;}

  /* Cross axis */
  .flex-tb.wrap.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-right:0;}
  .flex-tb.wrap.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-right:3px;}
  .flex-tb.wrap.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-right:7px;}
  .flex-tb.wrap.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-right:15px;}
  .flex-tb.wrap.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-right:25px;}

  /* wrap reverse */
  .flex-tb.wrap-rev.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap-rev.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-left:0;}
  .flex-tb.wrap-rev.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap-rev.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-left:3px;}
  .flex-tb.wrap-rev.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap-rev.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-left:7px;}
  .flex-tb.wrap-rev.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap-rev.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-left:15px;}
  .flex-tb.wrap-rev.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-tb.wrap-rev.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-left:25px;}


  /* Flow margin (right to left) */
  .flex-rl.fm-0 > *:not(:last-child){margin-left:0;}
  .flex-rl.fm-1 > *:not(:last-child){margin-left:3px;}
  .flex-rl.fm-2 > *:not(:last-child){margin-left:7px;}
  .flex-rl.fm-3 > *:not(:last-child){margin-left:15px;}
  .flex-rl.fm-4 > *:not(:last-child){margin-left:25px;}

  /* Cross axis */
  .flex-rl.wrap.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-bottom:0;}
  .flex-rl.wrap.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-bottom:3px;}
  .flex-rl.wrap.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-bottom:7px;}
  .flex-rl.wrap.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-bottom:15px;}
  .flex-rl.wrap.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-bottom:25px;}

  /* wrap reverse */
  .flex-rl.wrap-rev.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap-rev.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-top:0;}
  .flex-rl.wrap-rev.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap-rev.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-top:3px;}
  .flex-rl.wrap-rev.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap-rev.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-top:7px;}
  .flex-rl.wrap-rev.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap-rev.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-top:15px;}
  .flex-rl.wrap-rev.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-rl.wrap-rev.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-top:25px;}


  /* Flow margin (bottom to top) */
  .flex-bt.fm-0 > *:not(:last-child){margin-top:0;}
  .flex-bt.fm-1 > *:not(:last-child){margin-top:3px;}
  .flex-bt.fm-2 > *:not(:last-child){margin-top:7px;}
  .flex-bt.fm-3 > *:not(:last-child){margin-top:15px;}
  .flex-bt.fm-4 > *:not(:last-child){margin-top:25px;}

  /* Cross axis */
  .flex-bt.wrap.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-right:0;}
  .flex-bt.wrap.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-right:3px;}
  .flex-bt.wrap.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-right:7px;}
  .flex-bt.wrap.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-right:15px;}
  .flex-bt.wrap.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-right:25px;}

  /* wrap reverse */
  .flex-bt.wrap-rev.fm-0:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap-rev.fm-0.wrap-align-stretch.cross-align-stretch > * {margin-left:0;}
  .flex-bt.wrap-rev.fm-1:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap-rev.fm-1.wrap-align-stretch.cross-align-stretch > * {margin-left:3px;}
  .flex-bt.wrap-rev.fm-2:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap-rev.fm-2.wrap-align-stretch.cross-align-stretch > * {margin-left:7px;}
  .flex-bt.wrap-rev.fm-3:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap-rev.fm-3.wrap-align-stretch.cross-align-stretch > * {margin-left:15px;}
  .flex-bt.wrap-rev.fm-4:not(.wrap-align-stretch):not(.wrap-align-between):not(.wrap-align-around) > *, .flex-bt.wrap-rev.fm-4.wrap-align-stretch.cross-align-stretch > * {margin-left:25px;}
