@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&family=Roboto:ital,wght@0,300;0,400;0,900;1,400&display=swap');

.c-fix:after{
    display:table;
    clear:both;
    content:"";
}

div{
    box-sizing:border-box;
}

.no-display{
    display:none;
}

.metro-interactive{
    padding:0px;
    background-color:#fafafa;
}

.metro-interactive p,
.metro-interactive li{
    font-family: 'Roboto', sans-serif;
    font-size:16px;
    font-weight:400;
    line-height:1.7em;
    color:#111111;
    margin:0em 0em 1em 0em;
}

.metro-interactive b, .metro-interactive i{
    font-family:inherit;
    font-size:inherit;
}

.metro-interactive b{
    font-weight:bold;
}

.metro-interactive #figure7 img{
    width:100%;
    max-width:385px;
    height:auto;
}

.metro-interactive .corridors-banner{
    margin:0px auto 3em auto;
    background-image:url("https://c24215cec6c97b637db6-9c0895f07c3474f6636f95b6bf3db172.ssl.cf1.rackcdn.com/interactives/2020/corridors-of-demand/assets/img/corridors-banner.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-size:cover;
    background-position: 50% 50%;
    width:100%;
    height:500px;
    height:65vh;
    margin-bottom:9em;
    position:relative;
}


.metro-interactive .corridors-banner > div{
    position:absolute;
    background-color:#0257a1;
    
    bottom:-40px;
    left:0px;

    padding:25px 25px 15px 25px;

    width:65%;

    clip-path:polygon(0% 0%, 100% 0%, 95% 100%, 0% 100%);
}

.metro-interactive .corridors-banner > div p{
    color:#ffffff;
}

.metro-interactive p a{
    color:#0257a1;
    text-decoration:none;
    border-bottom:1px dotted #0257a1;
}

.metro-interactive p a:hover{
    border-bottom:2px solid #0257a1;
}


.metro-interactive .corridors-banner p.corridors-title{
    font-size:2.5em;
    line-height:1.4em;
    font-weight: 300;
}

.metro-interactive .authors-and-dates p{
    text-decoration:none;
    border:none;
    font-size:0.9em;
}

.metro-interactive .authors-and-dates a{
    font-weight:bold;
}

.metro-interactive .authors-and-dates *{
    color:#ffffff !important;
}

.metro-interactive .corridors-section-header{
    padding:1em 0px;
    margin-bottom:1em;
    position:relative;
}

.metro-interactive .cornered{
    position:relative;
    padding:20px 20px 20px 20px !important;
}

.metro-interactive .corridors-section-header:before,
.metro-interactive .corridors-section-header:after{
    position:absolute;
    left:0px;
    top:0px;
    width:90px;
    height:12px;
    border:3px solid #FF5E1A;
    border-width:3px 0px 0px 0px;
    content:"";
    transform:translateY(0em);
    box-sizing:border-box;
}

.metro-interactive .corridors-section-header:before{
    left:15px;
    top:7px;
    width:15px;
    border-width:0px 0px 0px 0px;
}

.metro-interactive .corridors-flex .cornered:before{
    position:absolute;
    left:20px;
    top:10px;
    width:60px;
    height:60px;
    border:1px solid #333333;
    border-width:1px 0px 0px 0px;
    content:"";
}

.metro-interactive .corridors-section-header > p{
    font-family: 'Playfair Display', serif;
    margin-bottom:0.5rem;
    font-size:1.25em;
}

.metro-interactive .corridors-section-header > p:first-child{
    font-size:1.8em;
    font-weight:bold;
}

.metro-interactive .corridors-topic-box{
    padding:2em 2em;
    min-height:50vh;
    min-height:320px;
    background-color:#DDE5ED;
}

.metro-interactive .corridors-topic-box-title{
    font-family: 'Playfair Display', serif;
    font-size:1.8em;
    font-weight:bold;
    margin-bottom:2em;
}

.metro-interactive .corridors-chart-title{
    font-weight:bold;
    font-size:0.95em;
    margin-bottom:1em;
    text-align:right;
    line-height:1.4em;
}

.metro-interactive *.metro-note{
    font-weight:300;
}


.metro-interactive .corridors-section{
    max-width:1400px;
    margin:6em auto 2em auto;
}

.metro-interactive .corridors-main-content{
    max-width:1100px;
    margin-right:auto;
    margin-left:auto;
    padding-left:15px;
    padding-right:15px;
}

.metro-interactive .corridors-section.corridors-reading{
    max-width:800px;
}

.metro-interactive .corridors-caption{
    margin:0px;
    text-align:right;
    font-style:italic;
}

.metro-interactive .corridors-caption2{
    margin:1em 0px 1em 0px;
    text-align:right;
    font-style:italic;
    position:relative;
    font-size:0.95em;
}


.metro-interactive .corridors-flex{
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
    margin:2em auto;
}

.metro-interactive .corridors-flex > div{
    flex-basis:31%;
    padding:0px;
    flex-shrink:1;
    flex-grow:0;
    position:relative;
    margin-bottom:20px;
    background-color:#fafafa;
}

.metro-interactive .corridors-flex.flex-50 > div{
    flex-basis:49%
}

.metro-interactive .corridors-flex > div:before{
    width:60px;
    height:60px;
    border:3px solid #FF5E1A;
    border-width:0px 0px 0px 0px;
    position:absolute;
    top:0px;
    left:0px;
    content:"";
}

.metro-interactive .corridors-flex > div.span-2{
    flex-basis:64%;
}

.metro-interactive .dotted-border{
    padding:20px;
    background-image:url("https://c24215cec6c97b637db6-9c0895f07c3474f6636f95b6bf3db172.ssl.cf1.rackcdn.com/interactives/2020/corridors-of-demand/assets/img/orange-pixel-grid.png");
    background-repeat:repeat;
    position:relative;
    z-index:1;
}

.metro-interactive .dotted-border.dotted-10px{
    padding:10px;
}

.metro-interactive .dotted-border.dotted-10px > div{
    padding:10px;
    background-color:#fafafa;
}

.metro-interactive .corridors-2col{
    display:flex;
    justify-content: space-between;
}

.metro-interactive .corridors-2col > div{
    order:2;
}

.metro-interactive .corridors-2col > div:first-child{
    flex-grow:0;
    order:1
}

.metro-interactive .corridors-2col > div.corridors-wide-col{
    flex-basis:80%;
}


p.initial-letter-blue:first-child:first-letter {
    color:#FF5E1A;
    float: left;
    font-family: 'Playfair Display', serif;
    font-weight:bold;
    font-size: 80px;
    line-height: 60px;
    padding-top: 2px;
    padding-right: 10px;
    padding-left: 2px;
  }

  .metro-interactive .scrolly-sequence{
    margin:2em auto;
}

.metro-interactive .scrolly-narrative > div{
    min-height:50vh;
    margin-bottom:25vh;
    padding-top:3em;
    padding-bottom:1em;
    padding-left:1em;
    padding-right:1em;
    position:relative;
    transform:translateZ(0);
}
.metro-interactive .scrolly-narrative > div:after{
    position:absolute;
    top:3em;
    top:calc(3em + 3px);
    left:32px;
    width:60px;
    height:9px;
    content:"";
    border-top:1px solid #333333;
}

.metro-interactive .scrolly-narrative > div > *{
    margin:0em;
    padding:1em 1em;
    background:#fafafa;
}

@media screen and (min-width:0px){
    .metro-interactive .scrolly-fixed{
        width:auto;
        float:none;
        position:sticky;
        top:150px;
        left:0px;
        z-index:4;
    }
    
    .metro-interactive .scrolly-narrative{
        width:auto;
        float:none;
        z-index:5;
        position:relative;
    }

    .metro-interactive .corridors-banner > div{  
        width:85%;
    }

    .metro-interactive .corridors-banner p.corridors-title{
        font-size:1.5em;
    }

    .metro-interactive .corridors-2col{
        flex-direction: column;
    }
    
    .metro-interactive .corridors-2col > div{
        flex-basis:100%;
    }
    
    .metro-interactive .corridors-2col > div:first-child{
        flex-basis:100%;
        order:3
    }

    .metro-interactive #figure7 img{
        max-width:430px;
    }

    .metro-interactive .corridors-chart-title{
        text-align:left;
    }

    .metro-interactive .scrolly-narrative > div:after{
        visibility:hidden;
    }
    
    .metro-interactive .scrolly-narrative > div > *{
        margin:1em 2em;
        border-radius:1em;
        padding:0.5em 1em;
        background:rgba(250,250,250,0.9);
    }

    .metro-interactive .corridors-flex{
        flex-direction: column;
    }


}

@media screen and (min-width:720px){
    .metro-interactive .scrolly-fixed{
        width:50%;
        width:calc(60% + 40px);
        float:left;
        position:sticky;
        top:160px;
        left:0px;
    }
    
    .metro-interactive .scrolly-narrative{
        width:35%;
        width:calc(40% - 40px);
        float:right;
    }

    .metro-interactive .corridors-banner > div{  
        width:70%;
    }

    .metro-interactive .corridors-banner p.corridors-title{
        font-size:2.5em;
    }

    .metro-interactive .corridors-2col{
        flex-direction: row;
    }
    
    .metro-interactive .corridors-2col > div{
        flex-basis:36%;
    }
    
    .metro-interactive .corridors-2col > div:first-child{
        flex-basis:60%;
        order:1
    }

    .metro-interactive .corridors-chart-title{
        text-align:right;
    }

    .metro-interactive .scrolly-narrative > div:after{
        visibility:visible;
    }
    
    .metro-interactive .scrolly-narrative > div > *{
        margin:0em 0em;
        padding:1em 1em;
        border-radius:0em;
        background:#fafafa;
    }

    .metro-interactive .corridors-flex{
        flex-direction: row;
    }
}








