html, body { color: #4f4f4f; font-family: "Roboto Flex", sans-serif; font-size: 16px; -webkit-font-smoothing: antialiased; }
.container { padding: 0; width: 100%; }

/* Links */
a { transition: background-color .2s, color .2s; padding: 4px 0; }
a:hover { text-decoration: none; }
a:focus { text-decoration: none; }
button { background: #666; border: 0; color: #fff; margin: 12px 0 6px; padding: 6px 12px; transition: background .2s, color .2s; }
button:hover { background: #999; }

/* Headers */
h1 { font-size: 3.4em; margin: 32px 0 0; }
h2 { font-family: Lato,sans-serif; font-size: 2.6em; font-weight: 700; margin: 0; }
h3 { color: #9E361B; font-family: Lato,sans-serif; font-size: 1.8em; font-weight: 700; margin: 60px 0 0; }
h4 { font-size: 1.5em; margin: 32px 0 0; }
h5 { font-size: 1.4em; margin: 32px 0 0; }
h6 { font-size: 1.2em; margin: 32px 0 0; }

/* Paragraphs & Lists */
p { line-height: 1.6em; margin: 16px 0 6px; }
ul, ol { margin: 16px 0 10px; }
li { line-height: 1.4em; margin-bottom: 8px; }
img { max-width: 100%; }

/* Header */
header { background-color: #9f290b; background-image: url("../images/header-bg.jpg"); background-size: cover; background-position: bottom; color: #fff; padding: 28px 2%; }
header h1 { left: -9999px; position: absolute; }
header img { height: 48px; margin-right: 34px;  }
header nav { float: right; }
header nav ul { display: inline-block; margin: 8px 14px 0 0; padding: 0; }
header nav li { display: inline-block; font-family: Lato; font-size: 1.2em; margin-left: 42px; }
header nav li a { color: #fff; display: block; padding: 2px 8px ; position: relative; }
header nav li a:before { background: #9f290b; content: ""; height: 60%; left: 50%; opacity: 0; position: absolute; bottom: 0; transition: .3s; transform: translateX(-50%); transition: .4s; width: 60%; }
header nav li a:hover:before { background: #fff; height: 2px; opacity: 1; width: 100%; }
header nav li a.active { color: #F3A945; }
header nav li a:hover { color: #ddd; }

#translation-widget { bottom: 12px; color: #000; display: inline-block; left: 0; margin-left: 28px; vertical-align: middle; }
.has-js #translation-widget { display: block; }
#translation-widget label { left: -9999px; position: absolute;  }
#translation-widget select { width: 100%; }
#google_translate_element { display: none; }

#skiptocontent { background-color: #fff; border-radius: 8px; box-shadow: 2px 2px 8px 0 #000; font-size: 1.3em; left: -9999px; padding: 6px 12px; position: absolute; top: -9999px; }
#skiptocontent:focus { left: 8px; top: 8px; }

#mobile-menu { background: transparent; border: 0; display: none; margin: 0 0 0 10px; padding: 2px 4px 0; position: relative; }
#mobile-menu .line { background: #fff; display: block; height: 3px; left: 0; margin: 2px 0 6px; position: relative; top: 0; transition: .3s; width: 26px; }

/* General Formatting */
.row { margin: 0; }
#content { margin: 0 auto; max-width: 100%; }
#content > .row { padding: 44px 12% 104px; }
#content .row > div { padding: 0 2%; }
#content .row > div:first-of-type { padding-left: 0; }
#content .row > div:last-of-type { padding-right: 0; }

.ada-element { left: -9999px; position: absolute; }
.uppercase { text-transform: uppercase; }

/* Homepage */
#announcement { background: #FFDB22; color: #6A2412; line-height: 1.2em; padding: 12px 18px 16px; text-align: center; font-size: 1.25em;}
#announcement img { display: inline-block; margin-right: 6px; vertical-align: middle; }
#announcement > div { display: inline-block; overflow: hidden; position: relative; vertical-align: middle; }
#announcement > div > span { display: block; position: relative; }
#announcement > div > div span:first-of-type { position: absolute; left: 0; top: 0; width: 100%; }
#announcement > div > div span:last-of-type { position: absolute; left: 102%; top: 0; width: 100%; }
#announcement a {color: #0b1e7d; text-decoration: underline; font-weight: bold;}

#intro-panel { background-image: url("../images/DJI_0051.jpg"); background-position: center; background-size: cover; overflow: hidden; padding: 74px 24px 42px; position: relative; text-align: center; }
#intro-panel:before { background-image: linear-gradient(rgba(0,0,0,.4), #000); content: ""; height: 100%; left: 0; position: absolute; top: 100%; width: 100%; }
#intro-panel > img { height: 240px; opacity: 0; position: relative; top: 70px; transform: translateY(-30px); }
#intro-panel h2 { color: #fff; line-height: 1.3em; margin-top: 24px; opacity: 0; position: relative; top: -80px; transform: translateY(20px); }
#intro-panel h2 span { display: block; }

#intro-panel.started:before { opacity: 1; top: 0; transition: 1.2s; }
#intro-panel.started > img { opacity: 1; top: 0; transform: translateY(0px); transition: .9s ease-in-out .1s, transform 1s ease-in-out .8s; }
#intro-panel.started h2 { opacity: 1; top: 0; transform: translateY(0px); transition: .9s ease-in-out .1s, transform 1s ease-in-out .8s; }

@keyframes pulse {
    0% { height: 34px; transform: translateX(-50%) translateY(0px); }
    50% { height: 38px; transform: translateX(-50%) translateY(-2px); }
}

#intro-panel ul { display: inline-block; opacity: 0; padding: 0; position: relative; }
#intro-panel ul button { background: transparent; height: 34px; }
#intro-panel ul button img { animation-name: pulse; animation-duration: 1.6s; animation-iteration-count: infinite; height: 34px; left: 50%; position: absolute; transform: translateX(-50%) translateY(0px); top: 7px; transition: .6s; }
#intro-panel ul li { border-right: 1px solid #fff; display: inline-block; left: -9999px; margin: 0; opacity: 0; padding: 0 20px; position: relative; transition: left 0s ease-in-out .2s, opacity .2s;  }
#intro-panel ul li:last-of-type { border: 0; }
#intro-panel ul li a { color: #fff; }
#intro-panel ul li a:hover { color: #F3A945; }

#intro-panel.started ul { opacity: 1; transition: 1.4s; }
#intro-panel.menu-opened ul button img { left: 0; }
#intro-panel.menu-opened ul li { left: 0; opacity: 1; transition: left 0s, opacity .3s; }

#introduction { padding: 64px 12% 80px !important; }
#introduction p { position: relative; z-index: 1; }
#introduction > div:first-of-type p:first-of-type { color: #9f290b; font-weight: 700; }
/* #introduction img { left: -12%; position: relative; } */
#introduction > div:nth-of-type(2) { padding-right: 0; }
#introduction > div:last-of-type { padding-left: 0; }

#interactive-map { background: #9E361B; color: #fff; min-height: 680px; position: relative; }
#interactive-map h3 { color: #fff; }
#interactive-map iframe { border: 0; border-radius: 12px; height: 680px; margin-top: 28px; width: 100%; }
#interactive-map a { color: #fff; text-decoration: underline; }
#interactive-map a:hover { color: #dbb; }

#introduction ul { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; padding: 0; }
#introduction ul li { align-items: center; border: 1px solid #136d9d; display: flex; margin-bottom: 24px; padding: 9px 16px; width: 31%; }
#introduction ul li img { height: 56px; margin: 0 14px 0 -26px; }

.parallax-hills { bottom: 0; left: 0; overflow: hidden; padding: 0 !important; position: absolute; }
.parallax-hills img { bottom: 0; left: 0; max-width: 8000%; position: absolute; width: 140%; }
.parallax-hills img:first-of-type { left: -7%; position: relative; width: 190%;}
.parallax-hills img:nth-of-type(2) { left: -13%; width: 170%; }
.parallax-hills img:nth-of-type(3) { left: -19%; width: 160%; }
.parallax-hills img:nth-of-type(4) { left: -25%; }

#upcoming-events h3 { color: #1B2D52; }

#meetings { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; margin-top: 28px; padding: 0; }
#meetings li { background-image: linear-gradient(120deg, #3D65B8, #1B2D52 61%); border-radius: 10px; color: #fff; padding-top: 18px; text-align: center; width: 31%; }
#meetings li span { background: #1D7481; border-radius: 0 0 10px 10px; display: block; margin-top: 14px; padding: 12px 16px 14px; }
#meetings li img { height: 44px; }
#meetings li h4 { font-family: Lato,sans-serif; margin: 16px 14px 10px;  }
#meetings li p { margin: 0 14px; }

#project-updates { background: #EEDFDB; }
#project-updates table { margin-bottom: 32px; }
#project-updates table thead { background: #1e7481; color: #fff; }
#project-updates table th,
#project-updates table td { border-color: #1e7481; text-align: center; }
#project-updates table tbody th { font-weight: 400; text-align: left; }
#project-updates table tbody tr:first-of-type,
#project-updates table tbody tr:first-of-type th { font-weight: 700; }

#videos { background: #e5d1c0; }

.challenge-graph { display: flex; margin: 32px 0 48px; }
.challenge-graph > ul { list-style: none; margin: 0; padding: 0; text-align: right; width: 30%; }
.challenge-graph > ul li { font-size: .95rem; margin: 14px 0; position: relative; }
.challenge-graph > ul li span { color: #1b6fa1; font-weight: 700; left: -9999px; position: absolute; }
.challenge-graph > ul li:nth-of-type(2) span { color: #1a2d52; }
.challenge-graph > ul li:nth-of-type(3) span { color: #1e7481; }
.challenge-graph > ul li:nth-of-type(4) span { color: #836b49; }
.challenge-graph > ul li:nth-of-type(5) span { color: #cb862f; }
.challenge-graph > ul li:nth-of-type(6) span { color: #9c351b; }
.challenge-graph > ul li:nth-of-type(7) span { color: #5eb3cf; }
.challenge-graph > ul li:nth-of-type(8) span { color: #297954; }
.challenge-graph > ul li:after { background: #1b6fa1; content: ""; display: block; height: 16px; left: 100%; margin-left: 12%; position: absolute; top: 50%; transform: translateY(-50%); width: 186.5%; z-index: 1; }
.challenge-graph > ul li:nth-of-type(2):after { background: #1a2d52; width: 154%; }
.challenge-graph > ul li:nth-of-type(3):after { background: #1e7481; width: 140%; }
.challenge-graph > ul li:nth-of-type(4):after { background: #d7b584; width: 135%; }
.challenge-graph > ul li:nth-of-type(5):after { background: #f6a845; width: 128%; }
.challenge-graph > ul li:nth-of-type(6):after { background: #9c351b; width: 125%; }
.challenge-graph > ul li:nth-of-type(7):after { background: #5eb3cf; width: 73%; }
.challenge-graph > ul li:nth-of-type(8):after { background: #297954; width: 41%; }

.challenge-graph  > div { display: block; position: relative; width: 70%; }
.challenge-graph  > div ul { display: flex; list-style: none; height: 100%; margin: 0;  padding: 0; width: 100%; }
.challenge-graph  > div ul li { flex: 1; font-size: .75em; margin: 0; position: relative; text-align: center; }
.challenge-graph  > div ul li:before { background: #cbc9c9; content: ""; display: block; height: 100%; margin-left: 50%; margin-bottom: 5px; width: 1px; }

#one-challenge > ul li:after { margin-left: 19.4%; width: 167%; }
#one-challenge > ul li:nth-of-type(2):after { background: #d7b584; width: 72%; }
#one-challenge > ul li:nth-of-type(3):after { background: #1a2d52; width: 61%; }
#one-challenge > ul li:nth-of-type(4):after { background: #1e7481; width: 54%; }
#one-challenge > ul li:nth-of-type(5):after { background: #f6a845; width: 38.5%; }
#one-challenge > ul li:nth-of-type(6):after { background: #9c351b; width: 24%; }
#one-challenge > ul li:nth-of-type(7):after { background: #5eb3cf; width: 21%; }
#one-challenge > ul li:nth-of-type(8):after { background: #297954; width: 14%; }

#circle-graph { align-items: center; display: flex; gap: 40px; margin: 32px 0 56px; }
#circle-graph ul { font-size: 1.1em; list-style: none; }
#circle-graph li:before { background: #2a7955; content: ""; display: inline-block; height: 14px; margin-right: 13px; vertical-align: center; width: 14px; }
#circle-graph li:nth-of-type(2):before { background: #f2d2a3; }
#circle-graph li:nth-of-type(3):before { background: #f6a947; }
#circle-graph li:nth-of-type(4):before { background: #9e361b; }
#circle-graph li:nth-of-type(5):before { background: #1b2e4f; }
#circle-graph li:nth-of-type(6):before { background: #247d53; }
#circle-graph li:nth-of-type(7):before { background: #9c3116; }
#circle-graph li:nth-of-type(8):before { background: #217283; }
#circle-graph li:nth-of-type(9):before { background: #af6a0d; }
#circle-graph li:nth-of-type(10):before { background: #5f2011; }
#circle-graph li:nth-of-type(11):before { background: #2b7387; }

#contact { background-image: url("../images/Home-2.jpg"); background-repeat: no-repeat; background-position: bottom; background-size: cover; position: relative; }
#contact h3 { color: #1B2D52; }
#contact:before { background-image: linear-gradient( transparent, rgba(0,0,0,.5) ); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
#contact iframe { border-radius: 12px; margin-top: 28px; }

.embed-container { position: relative; padding-bottom: 56.25%; height: 0; margin: 28px 0; overflow: hidden; width: 100%; max-width: 100%; } 
.embed-container iframe, 
.embed-container object, 
.embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* Subpage */

#subpage-header { align-items: center; background-color: #9f290b; background-image: url("../images/About-hero.jpg"); background-position: center; background-size: cover; color: #fff; display: flex; padding: 122px 12%; position: relative; }
#subpage-header p { font-size: 1.2em; line-height: 1.8em; }
#subpage-header img { height: 170px; margin-right: 3%; }

.download { border-bottom: 2px dotted #1970A0; color: #4f4f4f; display: block; font-size: 1.1em; margin-bottom: 6px; padding: 8px 28px 16px 40px; position: relative; }
.download:before { background-image: url("../images/Icons/Document.svg"); background-repeat: no-repeat; content: ""; display: inline-block; height: 35px; left: 0; position: absolute; top: 0; vertical-align: middle; width: 26px; }
.download:after { background-image: url("../images/Icons/download-arrow.png"); background-repeat: no-repeat; content: ""; height: 28px; position: absolute; right: 0; top: 4px; transition: top .3s; width: 18px; }

.download:hover { border-bottom: 2px solid #1970a0; color: #1970a0; }
.download:hover:after { top: 10px; }

.download-list { list-style: none; margin-top: 24px; padding: 0; }
.download-list li { margin-bottom: 14px; }
.download-list small { display: block; font-size: .9em; font-style: italic; margin: 2px 10px 18px; }

/* About */
.about-header > div { border-left: 10px solid #f1c487; padding-left: 32px; position: relative; }
.about-header > div:before,
.about-header > div:after { background: #F0D2A1; content: ""; height: 33.333%; left: -10px; position: absolute; width: 10px; }
.about-header > div:after { background: #F3A945; bottom: 0; }

#about-content { background-image: url("../images/About-2b.jpg"); background-position: bottom; background-size: 100%; background-repeat: no-repeat; padding-bottom: 244px !important; }

#needs-assessment { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 22px; }
#needs-assessment > * { border-radius: 8px; width: 32%; }
#needs-assessment > p { background: #F0D2A1; font-size: 1.1em; margin: 0; padding: 26px;  }
#needs-assessment button { background: #6A2412; margin: 0; padding: 48px 26px; position: relative; }
#needs-assessment button > img:first-of-type { position: absolute; right: 16px; top: 10px; transition: .4s; width: 28px;  }
#needs-assessment button > img:last-of-type { height: 89px; transition: .5s; }
#needs-assessment button h4 { height: 24px; left: 0; opacity: 1; position: relative; top: 0; transition: .35s ease-in-out .01s, left 0s ease-in-out .01s; }
#needs-assessment button p { left: -9999px; line-height: 1.3em; margin-top: -16px; opacity: .2; position: absolute; transition: .3s, left 0s ease-in-out .25s; width: 80%; }
#needs-assessment button:hover > img:first-of-type { width: 36px; }
#needs-assessment button.interacting > img:last-of-type { padding-bottom: 16px; height: 73px; }
#needs-assessment button.interacting h4 { left: -9999px; margin-bottom: 4px; opacity: .2; top: -28px; transition: .5s, left 0s ease-in .25s; }
#needs-assessment button.interacting p { left: 10%; margin-top: -40px; opacity: 1; transition: .35s ease-in-out .025s, left 0s ease-in-out .1s; }

.documents-downloads { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; padding: 0; }
.documents-downloads li { width: 48%; }

#taskforce-buttons { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; margin-top: 34px; padding: 0; }
#taskforce-buttons a { background: #1B2D52; border-radius: 6px; color: #fff; display: block; font-weight: 700; padding: 9px 13px 11px; }
#taskforce-buttons a:hover { background: #0e1d3b; }
#taskforce-buttons a img { display: inline-block; height: 22px; margin-right: 6px; vertical-align: middle; }

/* Events */
.events-header { background-image: url("../images/Events-hero.jpg") !important; }

#event-calendar { background: #EEDFDB; background-image: url("../images/Cactus-line-art.svg"); background-repeat: no-repeat; background-size: 180px; background-position: right 4% bottom; }

#calendar { border-radius: 14px; margin: 0 auto 0; position: relative; width: 100%; }
#calendar button { background: #0b1e7d; border-radius: 50%; border: 0; color: #fff; height: 34px; left: 5%; line-height: 34px; margin: 10px 12px 0 0; padding: 0; text-align: center; top: 10px; transition: background .2s; width: 34px; }
#calendar button:hover { background: #021260; }
#calendar #next-month { left: auto; right: 5%; }
#calendar button span { left: -9999px; position: absolute; }
#calendar table { background: #fff;box-shadow: 0 8px 14px -6px #333;  margin: 14px auto 0; width: 100%; }
#calendar table tr > * { border: 1px solid #102542; font-size: .85em; padding: 8px 0; width: 14.285714%; }
#calendar table thead tr { background: #1970A0; color: #fff; font-size: 1.2em; font-weight: 700; text-transform: uppercase; }
#calendar table thead tr th { text-align: center; }
#calendar table thead tr span { left: -9999px; position: absolute; }
#calendar table tbody td { height: 120px; padding: 32px 12px 12px 12px; position: relative; }
#calendar table tbody td h4 { margin-top: 0; }
#calendar table tbody td span { display: block; margin: 8px 0 6px; }
#calendar table tbody td div { font-size: 1.2em; padding: 8px; position: absolute; right: 0; top: 0;  }

.event { background: #e5e5e5; display: block; margin: 32px 0; padding: 22px 30px 22px 146px; position: relative; }
.event h4 { font-family: "Source Sans Pro", sans-serif; font-size: 1.6em; margin-top: 0; }
.event h5 { font-size: 1.1em; font-weight: 700; margin-top: 12px; }
.event > div { background: #c9da10; font-family: "Source Sans Pro", sans-serif; font-size: 1.6em; font-weight: 700; height: 100%; left: 0; line-height: 1.5em; position: absolute; text-align: center; text-transform: uppercase; top: 0; width: 120px; }
.event > div:before { height: 94%; }
.event > div > span > span { display: block; font-size: 2.3em; }

#upcoming-events { display: none; }  
#see-future-events { display: none; }

#past-events { background: #FFF5E4; }

/* Resources */
.resources-header { background-image: url("../images/resources-hero.jpg") !important; }

#assistance-program { background: #fff5e4; }
#assistance-program .row > div:first-of-type { padding-right: 5%; }
#assistance-program .row > div:last-of-type { border: 1px solid #9E361B; border-radius: 12px; margin-top: 18px; padding: 28px; }
#assistance-program .row > div:last-of-type a { word-wrap: break-word; }

#faqs { background: #FEE9C8; }

#tf-docs { background: #FFF5E4; background-image: url("../images/Cactus-line-art.svg"); background-repeat: no-repeat; background-size: 200px; background-position: right -38px bottom; }
#tf-docs h4 { margin: 42px 0 34px; }

/* Contact */
.connect-header { background-image: url("../images/connect-hero.jpg") !important; }

#teams { background: #FFF5E4; position: relative; }
#teams .parallax-hills:after { background-image: url("../images/Cactus-line-art.svg"); background-repeat: no-repeat; background-size: 200px; background-position: right -38px bottom; content: ""; height: 100%; left: 0; top: 0; position: absolute;  width: 100%; }

.team-list { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; margin-top: 34px; padding: 0; }
.team-list li { background: #fff; width: 30%; }
.team-list li img { width: 100%; }
.team-list li div { padding: 24px 26px; }
.team-list li h4 { color: #1B2D52; font-family: Lato,sans-serif; font-size: 1.3em; font-weight: 700; margin: 0; }
.team-list li a { color: #9E361B; display: inline-block; font-weight: 700; position: relative; }
.team-list li a:before { background: #9E361B; content: ""; height: 2px; left: 100%; margin-left: 4px; margin-top: -2px; position: absolute; top: 50%; transform: translateY(-50%); transition: .3s; width: 12px; }
.team-list li a:after { border: 2px solid #9E361B; border-width: 2px 2px 0 0; content: ""; height: 8px; left: 100%; margin-left: 4px; margin-top: -3px; position: absolute; top: 50%; transform: rotate(45deg) translateY(-50%); transition: .3s; width: 8px; }
.team-list li a:hover { color: #7b220a; }
.team-list li a:hover:before { background: #7b220a; margin-left: 8px; }
.team-list li a:hover:after { border-color: #7b220a; margin-left: 8px; }

#task-force { background: #EEDFDB; }
#taskforce-list { list-style: none; margin-top: 24px; padding: 0; position: relative; }
#taskforce-list div { display: flex; flex-wrap: wrap; justify-content: space-between; left: -9999px; opacity: .1; position: absolute; }
#taskforce-list div.active { left: 0; opacity: 1; position: relative; transition: .6s, left 0s; }
#taskforce-list div > li { background: #fff; border-radius: 8px; margin-bottom: 22px; padding: 26px; width: 49%; }
#taskforce-list h4 { margin: 0; }
#taskforce-list h4 img { display: inline-block; margin-right: 6px; vertical-align: middle; }
#taskforce-list button span { left: -9999px; position: absolute; }
#taskforce-list > button { background: transparent; left: -58px; position: absolute; top: 37%; }
#taskforce-list > button:after { border: 6px solid #000; border-width: 6px 0 0 6px; content: ""; height: 34px; position: absolute; transform: rotate(-45deg); transition: margin .3s; width: 34px; }
#taskforce-list > button:hover:after { margin-left: -18px; }
#taskforce-list > button.next-btn { left: 100%; }
#taskforce-list > button.next-btn:after { transform: rotate(135deg); }
#taskforce-list > button.next-btn:hover:after { margin-left: 16px; }
#taskforce-list li > ul { list-style: none; padding: 0; }
#taskforce-list > ul { list-style: none; margin: 0 auto; padding: 0; text-align: center; }
#taskforce-list > ul li { display: inline-block; margin: 0 9px; }
#taskforce-list > ul button { background: #fff; border-radius: 50%; height: 18px; padding: 0; width: 18px; }
#taskforce-list > ul button.active { background: #1970A0; }

#taskforce-list.temp-about div > li { background: #EEDFDB; }
#taskforce-list.temp-about > ul button { background: #EEDFDB; }
#taskforce-list.temp-about > ul button.active { background: #1970A0; }

#contact-us { background-image: url("../images/Connect-2.jpg"); background-repeat: no-repeat; background-size: cover; background-position: bottom; }
#contact-us h3 { color: #1b2d52; }
#contact-us iframe { border-radius: 12px; margin-top: 28px; }

/* Footer */
#closing-line { background: #002669; color: #fff; font-size: 1.1em; font-weight: 700; padding: 18px 18px; text-align: center; }
#closing-line img { height: 32px; padding: 0 12px; }

footer { background-color: #C24200; color: #fff; }

#footer-top { align-items: center; display: flex; padding: 58px 2%; }
#footer-top > div { align-content: center; align-self: stretch; border-right: 2px dashed #fff; float: none; padding: 0 3%; }
#footer-top > div:last-of-type { border: 0; }

#footer-contact { margin-top: 26px; }
#footer-contact a { display: block; line-height: 1em; margin: 8px 0; word-wrap: break-word; }

.footer-logos { align-items: center; display: flex; justify-content: space-between;}
.footer-logos img { max-width: 280px; width: 47%; }
.footer-logos div { width: 53%; }
.footer-logos div img { display: block; height: 70px; margin: 28px auto; width: auto; }
.footer-logos div img:first-of-type { height: 170px; }

.footer-mailing-list { text-align: center; }
.footer-mailing-list h2 { font-family: Lato,sans-serif; font-size: 1.8em; margin: 0; }
.footer-mailing-list img { margin-bottom: 14px; }

.footer-right { text-align: right; }
.footer-right a { color: #fff; }
.footer-right a:hover { color: #F3A945; }
.footer-right ul { list-style: none; padding: 0;}
.footer-right li { margin: 14px 0; }
.footer-right ul a { font-weight: 700; }
.footer-right ul a.active { color: #F3A945; }
.footer-right .legal { font-size: .9em; margin: 34px 0 18px; }
.footer-right .social-media a { border-radius: 8px; display: inline-block; margin-left: 8px; padding: 0; width: 38px; }
.footer-right .social-media a:hover { background: #F3A945; }

#footer-bottom { background: #252529; padding: 14px 9%; }
#footer-bottom p { display: inline-block; margin: 0; }
#footer-bottom a { color: #fff; display: flex; float: right; padding: 0; }
#footer-bottom a:hover { color: #F3A945; }
#footer-bottom a img { display: inline-block; height: 24px; margin-left: 8px; vertical-align: middle; }

/* Accordions */
.accordion-set { margin: 28px 0 0; }
.accordion h4 { margin-top: 4px; }
.accordion-header { background: transparent; border-bottom: 2px dotted transparent; color: #1B2D52; cursor: pointer; padding: 4px 8px 16px 48px; position: relative; text-align: left; transition: .3s; width: 100%; }
.accordion-header:hover { background: transparent; border-bottom: 2px dotted #1B2D52; }
.opened .accordion-header:hover { border-bottom-color: transparent; }
.accordion-header span { border: 2px solid #1B2D52; border-radius: 50%; height: 28px; left: 0; position: absolute; top: 0;  width: 28px; }
.accordion-header span:before,
.accordion-header span:after { background: #1b2d52; border-radius: 10px; content: ""; height: 2px; left: 4px; margin-top: -1px;  position: absolute; top: 50%; width: 16px; }
.accordion-header span:after { transform: rotate(90deg); transition: transform .5s; }
.opened .accordion-header span:after { transform: rotate(-180deg); }
.accordion > div { border-bottom: 2px dotted #1B2D52; padding: 12px 2px 18px; }
.accordion > div p { margin-top: 0; }

/* Forms */
form { margin: 18px 0; }
label { display: block; margin: 10px 0 8px; width: 100%; }
input[type="text"] { margin-bottom: 8px; padding-left: 3px; width: 100%; }
textarea { height: 80px; margin-bottom: 8px; padding: 3px 5px; resize: none; width: 100%; }
input[type="checkbox"],
input[type="radio"] { margin: 0 4px 0 2px; }
input[type="checkbox"] + label,
input[type="radio"] + label { display: inline-block; margin-right: 14px; position: relative; top: -1px; width: auto; }
input[type="submit"],
input[type="reset"] { background-color: #666; border-radius: 14px; border: 0; color: #fff; letter-spacing: .05em; margin-top: 14px; padding: 4px 16px; transition: background-color .2s; }
input[type="submit"]:hover,
input[type="reset"]:hover { background-color: #999; }

/* Tables */
table { border: 1px solid #333; margin: 14px 0; width: 100%; }
table tr th { border: 1px solid #333; padding: 2px 4px; }
table tr td { border: 1px solid #333; padding: 2px 4px; }

/************ Responsive ****************************************************************************************/

@media screen and (min-width: 2030px) {
    html,body { font-size: 18px; }
    p { line-height: 1.8em; margin: 24px 0 8px; }
    h1, h2, h3, h4, h5, h6 { margin: 54px 0 0; }

    header img { height: 64px; }
    header nav ul { margin-top: 14px; }

    /* #introduction img { margin-left: 12%; } */

    #contact { background-position: -50%; }

    #about-content { padding-bottom: 365px !important; }
}

@media screen and (min-width: 2030px) {
    #contact-us { background-position: -50%; }
}

@media screen and (max-width: 1560px) {
    /* #introduction img { margin-left: 18%; } */

    .footer-logos { width: 33.333%; }
    .footer-right { width: 33.333%; }
}

@media screen and (max-width: 1380px) {
    header { padding: 24px 2.5%; }
    header img { height: 38px; margin-right: 18px; }
    header nav ul { margin: 6px 4px 0 0; }
    header nav li { font-size: 1.1em; margin-left: 20px; }
    
    #event-calendar { padding: 18px 7% 64px !important; }
    
    .footer-logos div img { height: auto; width: 100%; }
    .footer-logos div img:first-of-type { height: auto; width: 56%; }

    .challenge-graph > ul li { font-size: .75em; }
}

@media screen and (max-width: 1170px) {
    #subpage-header { padding: 90px 12%; }

    /* #introduction { align-items: flex-end; display: flex; } */
    
    #taskforce-buttons a { font-size: .9em; padding: 7px 11px 8px; }
    #taskforce-buttons a img { height: 18px; }

    #circle-graph img { width: 350px; }
    
    .footer-logos { display: block; width: 24%; }
    .footer-logos img { width: 100%; }
    .footer-logos div { width: 100%; }
    .footer-logos div img:first-of-type { width: 70%; }
    .footer-mailing-list { width: 43%  }
    .footer-right { font-size: .9em;  width: 43%; }
}

@media screen and (max-width: 992px) {
    h2 { font-size: 2em; }
    h3 { font-size: 1.5em; margin: 44px 0 0; }
    h4 { font-size: 1.3em; margin: 24px 0 0; }
    h5 { font-size: 1.2em; margin: 24px 0 0; }
    h6 { font-size: 1.1em; margin: 24px 0 0; }
    p, li { font-size: .9em; line-height: 1.3em; }
    button { font-size: .9em; padding: 4px 10px; }

    #content > .row { padding: 0px 7% 44px; }
    #content .row > div { padding: 0 !important; }

    /* Header */
    #mobile-menu { display: inline-block; vertical-align: middle; }
    .menu-opened #mobile-menu .line.top { top: 8px; transform: rotate(45deg); }
    .menu-opened #mobile-menu .line.mid { opacity: 0; transform: rotate(90deg); }
    .menu-opened #mobile-menu .line.btm { top: -10px; transform: rotate(-45deg); }
    
    header { padding: 18px 22px; }
    header img { height: 32px; }
    header nav { position: relative; }
    header nav ul { opacity: 0; overflow: hidden; position: absolute; right: 110%; top: 100%; width: 220px; z-index: 1; }
    header nav li { border-top: 1px solid #FFDB22; box-shadow: 2px 4px 8px -4px #000; display: block; margin: 0; padding: 0; position: relative; left: 100%; text-align: center; transition: left; width: 100%; }
    header nav li a { background-color: #9E361B; padding: 6px 4px; }
    header nav li a:before { display: none; }
    .menu-opened header nav ul { opacity: 1; right: -26px; transition: right 0s, opacity .2s; }
    .menu-opened header nav li { left: 0; transition: left .7s ease-in-out 0s; }
    .menu-opened header nav li:nth-of-type(2) { transition: left .7s ease-in-out .06s; }
    .menu-opened header nav li:nth-of-type(3) { transition: left .7s ease-in-out .12s; }
    .menu-opened header nav li:nth-of-type(4) { transition: left .7s ease-in-out .18s; }
    .menu-opened header nav li:nth-of-type(5) { transition: left .7s ease-in-out .24s; }

    .accordion h4 { font-size: 1.2em; }

    #announcement img { height: 18px; }

    #intro-panel { padding: 48px 44px 38px; }
    #intro-panel > img { height: 168px; }
    #intro-panel h2 { margin-bottom: 12px; }
    #intro-panel ul button { display: none; }
    #intro-panel ul li { left: 0; opacity: 1; }

    #introduction { display: block; padding: 32px 7% 48px !important; }
    #introduction img { margin-top: 22px; }
    /* #introduction img { display: block; height: 220px; margin: 38px 0 0 36%; } */

    #interactive-map iframe { height: 520px; }

    #subpage-header { padding: 60px 8%; }
    #subpage-header p { font-size: 1.1em; line-height: 1.6em; }
    
    #needs-assessment > p { font-size: 1em; padding: 18px; }
    #needs-assessment button p { font-size: 1em; }
                               
    .documents-downloads li { width: 100%; }

    #calendar-area { overflow: auto; width: 100%; }
    #calendar { font-size: .9em;width: 992px; }
    #calendar tbody tr td { height: 70px; }

    .team-list li { width: 31.5%; }
    .team-list li div { padding: 16px 18px 14px; }

    #taskforce-list > div li img { height: 18px; margin-top: -6px; }
    #taskforce-list > button { left: -38px; top: 52%; }
    #taskforce-list > button:after { border-width: 4px 0 0 4px; height: 22px; width: 22px; }
    #taskforce-list > button:hover:after { margin-left: -6px; }
    #taskforce-list > button.next-btn:after { margin-left: 2px; }
    #taskforce-list > button.next-btn:hover:after { margin-left: 8px; }

    #assistance-program .row > div:last-of-type { padding: 24px !important; }

    #closing-line { font-size: 1em; }
    #closing-line img { height: 24px; }
    #footer-top { padding: 30px 3%; }
    .footer-mailing-list { width: 47%; }
    .footer-right .social-media a { margin-left: 4px; } 
    .footer-right .social-media a:first-of-type { margin: 0; }
    .footer-right .social-media a img { width: 30px; }
}

@media screen and (max-width: 768px) {
    header { margin-bottom: 0; }

    #subpage-header img { height: 110px; }
    #subpage-header h2 { font-size: 1.8em; }
    #subpage-header p { font-size: 1em; line-height: 1.6em; }
    
    #about-content { padding-bottom: 150px !important; }

    /* #introduction img { margin-left: 32%; } */

    #interactive-map iframe { height: 420px; }

    #taskforce-buttons { display: block; }
    #taskforce-buttons li { display: inline-block; margin: 0 8px 10px 0; }

    #taskforce-list > div > li { margin-bottom: 12px; padding: 12px 18px; }

    #circle-graph { gap: 0px; }
    #circle-graph img { width: 250px; }

    #introduction ul li { width: 48%; }
        
    #footer-top { display: block; padding: 44px 4%; }
    #footer-top > div { border: 0; border-bottom: 2px dashed #fff; margin-bottom: 32px; padding-bottom: 28px; text-align: center; width: 100%;}
    .footer-logos { display: block; }
    .footer-logos img { display: inline-block !important; height: 88px !important; margin: 0 16px 16px !important; width: auto !important; }
    .footer-logos img[src*="RTA"] { height: 44px !important; }
    .footer-logos img[src*="PAG"] { height: 44px !important; }
    .footer-logos div { display: inline-block; width: auto; }
    .footer-right { margin-bottom: 0 !important; padding-bottom: 0 !important; }
    .footer-right li { display: inline-block; margin: 0 8px; }
    #footer-bottom { text-align: center; }
    #footer-bottom a { display: block; float: none; margin: 18px auto 4px; }
}

@media screen and (max-width: 620px) {
    header nav { float: none; margin-top: 12px; text-align: right; }
    #translation-widget { font-size: .8em; }
    
    #meetings li { margin-bottom: 14px;  width: 100%; }
    #meetings li img { height: 32px; }
    
    #subpage-header { align-items: flex-start; padding: 36px 8% 30px; }
    #subpage-header img { height: 56px; margin-right: 14px; }

    .about-header > div { border-left-width: 6px; padding-left: 24px; }
    .about-header > div:before,
    .about-header > div:after { left: -6px; width: 6px; }
    
    #needs-assessment > * { margin-bottom: 18px !important; width: 100%; }
    #needs-assessment button { padding: 22px 18px; }

    #taskforce-list > div > li { margin: 0 auto 16px; padding: 14px 20px; width: 90%; }    
    #taskforce-list { position: relative; }
    #taskforce-list > button { left: -18px; top: 230px; }
    #taskforce-list > button:after { border-width: 4px 0 0 4px; height: 22px; width: 22px; }
    #taskforce-list > button:hover:after { margin-left: -6px; }
    #taskforce-list > button.next-btn:after { margin-left: -26px; }
    #taskforce-list > button.next-btn:hover:after { margin-left: -18px; }
}

@media screen and (max-width: 550px) {
    #introduction { padding: 18px 7% 36px !important; }
    
    .team-list li { margin-bottom: 24px; width: 100%; }

    #circle-graph { flex-direction: column; gap: 18px; }
    #circle-graph ul { padding: 0; }
}

@media screen and (max-width: 480px) {
    header img { height: 24px; margin-right: 12px; }
    #mobile-menu { padding: 0; }
    
    .download { padding: 4px 20px 14px 28px; }
    .download:before { background-size: 18px; height: 24px; width: 18px; }
    .download:after { background-size: 14px; height: 22px; top: 0; width: 14px; }

    #intro-panel { padding: 38px 25px 18px; }
    #intro-panel > img { height: 138px; }
    #intro-panel h2 { font-size: 1.7em; margin-bottom: 10px; }
    #intro-panel h2 span { display: inline; }
    #intro-panel ul li { border: 0; display: block; margin-bottom: 10px; }

    /* #introduction img { margin-left: 7%; } */
    #introduction ul li { width: 100%; }

    .challenge-graph > ul { text-align: left; width: 100%; }
    .challenge-graph > ul li { font-size: 1em; }
    .challenge-graph > ul li span { position: static; }
    .challenge-graph > ul li span:before { content: "- "; }
    .challenge-graph > ul li:after { display: none; }
    .challenge-graph  > div { display: none; }
                    
    #about-content { background-size: 250%; padding-bottom: 100px !important; }
}