html{
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'PT Serif', serif;
    color: #333333;
    background-color: #f4f4f4;

}

.row {
    /* order important so don't override new syntax with old */
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.large {
    -ms-flex: 2 0 0;
    -webkit-flex: 2 0 0;
    flex: 2 0 0;
}

.fadein{
    opacity:0;
}

/* classes to fade in background elements */

/* .background-image-left{
    position: absolute;
    left:8%;
    z-index: -1;
    width: 15%;
}

.background-image-right{
    position: absolute;
    right:8%;
    z-index: -1;
    width: 10%;
} */

.small {
    -ms-flex: 1 0 0;
    -webkit-flex: 1 0 0;
    flex: 1 0 0;
}

.wide{
    max-width: 1080px;
    width: 100%;
    margin: 3em auto;
    display: inherit;
}

.full {
    max-width: 1500px;
    width: 100%;
    margin: 3em auto;
}

.central {
    width: 800px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
}



#intro-wrapper{
    position: relative;
    height: 1080px;
}

#intro-background {
    position: relative;
    width: 100%;
    height: auto;
    /* z-index: -5; */
    /* overflow: hidden; */
    background-color: #dbbca8;
    margin-top: 3em;
}

#intro-background img{
    vertical-align: middle;
    border-style: none;
    width: 100%;
    margin: auto;
    padding: 0em 8em;
    max-width: 80vw;
    display: flex;

}

.intro-2{
    -webkit-animation: 2.5s ease 0s normal forwards 1 fadein;
        -moz-animation: 2.5s ease 0s normal forwards 1 fadein;
        -ms-animation: 2.5s ease 0s normal forwards 1 fadein;
        -o-animation: 2.5s ease 0s normal forwards 1 fadein;
        animation: 2.5s ease 0s normal forwards 1 fadein;
}

.intro-hero{
    -webkit-animation: 1.5s ease 0s normal forwards 1 fadein;
        -moz-animation: 1.5s ease 0s normal forwards 1 fadein;
        -ms-animation: 1.5s ease 0s normal forwards 1 fadein;
        -o-animation: 1.5s ease 0s normal forwards 1 fadein;
        animation: 1.5s ease 0s normal forwards 1 fadein;
}

#intro-vid {
    position: absolute;
    top: 50%; 
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    max-width: 105%;
    min-width: 100%; 
    min-height: 100%; 
    width: auto; 
    height: auto;
}

#section-1 {
    height: auto;
    padding:0;
    padding-bottom:5em;
    width: 100%;
    background-color: #dbbca8;
}

h1 {
    font-family: 'PT Sans Narrow', sans-serif;
    font-weight: 400;
    font-size: 30px;
    line-height: 1.3em;
    /* color: #333333; */
    display: block;
    margin-block-start: 0.5em;
    margin-block-end: 0.5em;
}

/* .title-highlight {
    background-color:rgba(255, 110, 97, 0.8);
    padding: 5px;
    color: white;
} */

#article-title {
    margin: auto;
    text-align: center;
    margin-top: 1em;
}

#article-title h1{
    /* text-shadow: 0px 3px 6px #333333; */
    -webkit-animation: 2s ease 0s normal forwards 1 fadein;
        -moz-animation: 2s ease 0s normal forwards 1 fadein;
        -ms-animation: 2s ease 0s normal forwards 1 fadein;
        -o-animation: 2s ease 0s normal forwards 1 fadein;
        animation: 2s ease 0s normal forwards 1 fadein;
}

#article-title h3{
    /* text-shadow: 0px 3px 6px #333333; */
    font-family: 'Pt Serif', sans-serif;
    font-size: 1em;
    -webkit-animation: 2.8s ease 0s normal forwards 1 fadein;
        -moz-animation: 2.8s ease 0s normal forwards 1 fadein;
        -ms-animation: 2.8s ease 0s normal forwards 1 fadein;
        -o-animation: 2.8s ease 0s normal forwards 1 fadein;
        animation: 2.8s ease 0s normal forwards 1 fadein;
}

h3.title-highlight{
    line-height: 1.5em;
}

#article-title p{
    font-family: 'PT Serif', sans-serif;
    font-size:14px;
    text-shadow: 0px 3px 6px #333333;
    -webkit-animation: 4s ease 0s normal forwards 1 fadein;
        -moz-animation: 4s ease 0s normal forwards 1 fadein;
        -ms-animation: 4s ease 0s normal forwards 1 fadein;
        -o-animation: 4s ease 0s normal forwards 1 fadein;
        animation: 4s ease 0s normal forwards 1 fadein;
}

/* animate fadein of headline */

@keyframes fadein{
    0% { opacity:0; }
    66% { opacity:0; }
    100% { opacity:1; }
}

@-webkit-keyframes fadein{
    0% { opacity:0; }
    66% { opacity:0; }
    100% { opacity:1; }
}

.subtitle {
    font-family: 'PT Serif', serif;
    font-style: italic;
    font-size: 13.5px;
}

h2 {
    font-family: 'PT Sans Narrow', sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: 1.1;
    color:#333333;
    display: block;
    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
    text-align: left;
}

h3 {
    font-family: 'PT Sans Narrow', sans-serif;
    font-style: bold;
    font-weight: 700;
    font-size: 22px;
    line-height: 1.1;
}

p {
    font-family: "PT Serif", serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 36px;
    font-style: normal;
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

a {
    color: #333333;
    text-decoration: underline;
    /* border-bottom: 1.4px solid #f7f3a4; */
}

a:hover {
    color: #3445dd;
}

.first-par {
    margin-top:50px;
    font-size: 28px;
    line-height: 44px;
}

.iframe-caption{
    margin-bottom:20px;
}

.long-quote{
    margin-left: 1.5em;
    margin-top: 1em;
    padding-left: 1.5em;
    border-left: 3px solid #3445dd;
    font-family: 'PT Serif';
    font-size: 20px;
    line-height: 34px;
    color: #333333;
    width: 85%;
    margin-bottom: 1.5em;
}

#center{
    text-align: center;
}


.fas.fa-chevron-circle-down.fa-2x{
    color: #333333;
}

.session {
    margin-bottom: 15px;
    display: inline-block;
}

.last {
    width: 100%;
    margin-bottom: 0;
}

.column {
    flex: 50%;
}

/* different inline image sizes */

img.inline-xsm{
    margin: auto;
    width: 60%;
    margin-bottom:1em;
    -webkit-box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.65); 
box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.65);
}

img.inline-sm-ragout{
    margin: auto;
    height: auto;
    width: 100%;
    /* max-width: 800px; */
    margin-bottom:1em;
}

.img-sm-container{
    width: auto;
    max-width: 800px;
    margin: 30px auto 20px auto;
}

img.inline-sm{
    height: auto;
    width: 100%;
    margin-bottom:1em;
    -webkit-box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.65); 
box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.65);
}

.im-sm-container{
    width: auto;
    max-width: 800px;
    margin: 30px auto 20px auto;
}

.img-md-container{    
    width: auto;
    max-width: 1200px;
    margin: 50px auto 20px auto;
}

#small-inline{
    max-width:600px;
}

img.inline-md{
    width: 100%;
    height: auto;
    margin-bottom:1.2em;
    -webkit-box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.65); 
box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.65);
}

#profiles{
    -webkit-box-shadow: none; 
    box-shadow: none;
}

#mobile{
    display: none;
}

img.mobile{
    width: 100%;
}

.highchart-standard{
    width: 100%;
    height: 600px;
}

#finance-chart.highchart-standard{
    width: 100%;
    height: 500px;
}

.highchart-mid-tall{
    width: 100%;
    height: 750px;
}

.highchart-tall{
    width: 100%;
    height: 900px;
}

.highchart-image{
    display: none;
}

/* #ipcc-summary-chart{
    display: none;
} */

figcaption{
    max-width: 800px;
    margin: auto;
    padding-left: 15px;
    padding-right: 15px;
}

figcaption.left{
    padding: 0;
    margin: 0;
    width: inherit;
}

#caption-small{
    padding-left:0px;
    padding-right: 0px;
}

#caption-table{
    padding-left:0px;
    padding-right: 0px;
    margin: 0;
    margin-top:20px;
}

hr {
    border-top: 0.2px dashed #f7f3a4;
    margin-top:0.5rem;
    margin-bottom:0.5rem;
}


p#title{
    font-size:18px;

}

p.backTop {
    font-size:16px;
    width:100%;
}

.hidden{
    display: none;
}

ul {
    list-style-type: none;
    padding-left: 0;
}

.list-split {  display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    gap: 0px 30px;
    grid-auto-flow: row;
    grid-template-areas:
      "left-1 right-1";
  }
  
  .left-1 { grid-area: left-1; }
  
  .right-1 { grid-area: right-1; }
  

ul.inline-ul{
    list-style-type: disc;
    padding-left: revert;
}
ol.inline-ol{
    list-style-type:auto;    
    padding-left: revert;
}

ul.inline-ul li, ol.inline-ol li{
    font-size: 20px;
    margin-right: auto;
    border-radius: revert;
    padding: initial;
    cursor: auto;
    line-height: 2em;
}

ul#droplinks{
    width:100%;
}

ul#droplinks li{
    width: 100%;
    border: 1px solid #333333;
    padding:5px;
    padding-left:5%;
    padding-right:3%;
    margin: 20px 0px;
    font-family: "PT Serif", serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 36px;
    font-style: normal;
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    -webkit-transition: background-color 0.5s ease;
  -moz-transition: background-color 0.5s ease;
  -o-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
}

ul#droplinks li:hover{
    background-color: #3445dd99;
    cursor: pointer;
    color:#ffffff;

}

ul#droplinks a{
    text-decoration: none;
}

.fas.fa-chevron-circle-down.fa-lg{
    float:right;
}

.fa-lg{
    line-height:1.25em;
}

.list-group {
    padding: 0px;
}

button {
    /* display: inline-block; */
    border: none;
    padding: 5px 12px;
    border-radius: 15px;
    margin: 0;
    text-decoration: none;
    background: #f4f4f4;
    width: 200px;
    color: #333333;
    font-family: PT Sans;
    font-size: 12.5px;
    cursor: pointer;
    text-align: left;
    transition: background 150ms ease, transform 150ms ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    opacity: 0.92;
}

.dl-target{
    padding-top: 1em;
    width: inherit;
}

button.select-change.active{
    background: #f7f3a4;
    transition: background 150ms ease;
}

button:hover,
button:focus {
    background: #e7e7e7;
    outline:0;
}

li {
    font-size: 12.5px;
    margin-right: 0.7em;
    border-radius: 8px;
    padding: 2px 5px;
    cursor: pointer;
}

.list-group-item:hover {
    opacity: 1;
}

#pull-left{
    width: 20%;
    display: none;
    float: left;
    left: 5vw;
    position: absolute;
    margin-top: -2em;
    margin-right: 0;
    background: #dbbca966;
    border: 0.5px solid #333;
    padding: 1.5em;
}

#pull-left h3{
    font-size: 24px;
    line-height: 20px;
    margin-bottom: 1em;
    margin-top: 0.4em;
}
#pull-left p {
    font-size:15px;
    line-height: inherit;
}

#inline{
    background: #dbbca966;
    border: 0.8px solid #333333;
    padding:3%;
    position: relative;
    margin: 2em auto;
}

#inline h3{
  font-size: 24px;
  line-height: 30px;
}

#inline p{
  font-size: 16px;
  line-height: 30px;
}

#inline.series-block h3{
    font-size: 28px;
    width: inherit;
}

#inline.series-block p{
    font-size: 18px;
    line-height: inherit;
}

.series-block{
    border: #3445dd solid 3px !important;
    background: #efefef !important;
    margin-top: 4em !important;
}

#inline.series-block{
    margin-top: 1em !important;
}

.series-block h3{
    font-size: 28px;
}

.series-block p{
    font-size: 18px;
    line-height: inherit;
}

.series-block ul{
    list-style-type: disc;
    padding-left: inherit;
}

.series-block li{
    font-size:16px;
}

.series-block li:hover{
    text-decoration: underline;
}

.header{
    background-color:#3445dd;
    width: 100%;
    position: fixed;
    top: 0;
    height: 3em;
}

.logo {
    width: 95px;
    height: 30px;
    top: 0%;
    position: fixed;
}

.logo img{
    float: left;
    position: relative;
    display: inline-flex;
    z-index: 1001;
    max-width: 130px;
    padding-left: 10px;
    height: auto;
    opacity: 0.9;
    padding-top: 8px;
}
.logo img:hover{
    opacity:0.6;
}

#logo-small{
    display: none;
}

.share-icons {
    position: fixed;
    top: 10px;
    right: 10px;
    color: #ffffff;
    font-size: 12px;
    padding: 5px;
    padding-top: 0px;
}

/* change colour of social icons */

.fa-stack a{
    color: #dbbca9
}

.share-icons .fa-stack {
    opacity: 1;
    margin-right: 5px;
}

.share-icons .fa-stack:hover {
    opacity: 0.8;
}

.img-md-container a{
    border-bottom:0;
}

button.mfp-close:hover{
    background:none;
}
  
footer{
    display: block;
    padding-top: 3em;
    padding-bottom: 2em;
    background-color: #3445dd;
    margin-top: 2em;
}

footer p{
    color: #f4f4f4;
    font-size:16px;
    line-height: 28px;
    margin:10px 0;
}

.footer-logo{
    width: 150px;
    margin: 2em 0 1em;
}

footer a{
    color: #f4f4f4;
    text-decoration: underline;
}

footer a:hover{
    color: #222222
}

p.underline{
    text-decoration: underline;
}

p.new-line{
    width: 100%;
}

#credits p{
    font-size:15px;
    line-height: 22px;
    padding: 2px 0
}



/* DUAL COLUMN */

#inline-chart-container{
    height: 60vh;
    margin: auto;
    width:90%;
    margin-bottom: 1rem;
}

.highcharts-legend-item:hover .customLegend{
  color:#d3d3d3;
}


.spacer {
height: 15vh;
}

#mobile .spacer{
    height: 0vh;
}

.sticky {
  position: -webkit-sticky; /* Safari */  
position: sticky;
top: 15%;
flex: 1 1 30%;
width: 30%;
margin-top:7vh;
margin-bottom: 10vh;
height: 100%;
}

.section-container {
margin-top: 1em;
text-align: center;
transition: background 100ms;
display: flex;
}

.step {
height: 80vh;
display: flex;
place-items: center;
justify-content: center;
}

.step-content {
font-size: 1rem;
background: whitesmoke;
color: #ccc;
border-radius: 5px;
padding: .5rem 1rem;
display: flex;
flex-direction: column;
justify-content: center;
transition: background 500ms ease;
box-shadow: 1px 1px 10px rgba(0, 0, 0, .2);
text-align: left;
    width: 75%;
    margin: auto;
    max-width: 500px;
}

.step.active .step-content {
    background: white;
    color: black;
}

.steps-container {
flex: 1 1 65%;
z-index: 10;
height:100%;
}

#chart-container{
    height:70vh;
}

.highchart-container{
    height: 100%;
}

.custom-key-element{
    margin-right:2rem;
    font-family: 'Pt Sans', sans-serif;
    font-size: 0.9rem;
    display: inline-block;
}
.custom-key-element svg{
    margin-right:0.6rem;
}

.loaded0, .loaded1, .loaded2, .loaded3, .loaded4, .loaded5 .loaded6 .loaded7 .loaded8 .loaded9 .loaded10 .loaded11 .loaded12 .loaded13 .loaded14 .loaded15 .loaded16 .loaded17{
    animation: fadeIn 1s;
  -webkit-animation: fadeIn 1s;
  -moz-animation: fadeIn 1s;
  -o-animation: fadeIn 1s;
  -ms-animation: fadeIn 1s;
}

.loaded{
display: inherit;
animation: fadeIn 1s;
-webkit-animation: fadeIn 1s;
-moz-animation: fadeIn 1s;
-o-animation: fadeIn 1s;
-ms-animation: fadeIn 1s;
}

.unloaded{
    display: none;
    animation: fadeIn 1s;
    -webkit-animation: fadeIn 1s;
    -moz-animation: fadeIn 1s;
    -o-animation: fadeIn 1s;
    -ms-animation: fadeIn 1s;
    }

@keyframes fadeIn {
    0% {opacity:0;}
    100% {opacity:1;}
  }


#media-container{
    position: absolute;
    height: 66vh;
    width:100%;
    top:5vh;
}

.media1{
    height: 300px;
    width:100%;
}

.scrolly-vid{
    width: 100%;
}