@charset "UTF-8";
* { margin: 0; padding: 0; box-sizing: border-box; }

.site-header .wrapper, .site-footer .wrapper, .location, .page-home, article.page, article.page-event, .talk-list.is-fancy { *zoom: 1; }
.site-header .wrapper:before, .site-footer .wrapper:before, .location:before, .page-home:before, article.page:before, article.page-event:before, .talk-list.is-fancy:before, .site-header .wrapper:after, .site-footer .wrapper:after, .location:after, .page-home:after, article.page:after, article.page-event:after, .talk-list.is-fancy:after { display: table; content: ""; }
.site-header .wrapper:after, .site-footer .wrapper:after, .location:after, .page-home:after, article.page:after, article.page-event:after, .talk-list.is-fancy:after { clear: both; }

.site-header .wrapper, .site-footer .wrapper, .location, .page-home, article.page, article.page-event { max-width: 50rem; margin: 0 auto; }
@media screen and (max-width: 52rem) { .site-header .wrapper, .site-footer .wrapper, .location, .page-home, article.page, article.page-event { padding: 0 1rem; } }

.site-footer .site-nav, .site-footer .social-links, .talk-list.is-fancy .talk-item, .location .map, .location .address { width: 50%; float: left; }
@media screen and (min-width: 40.1rem) { .site-footer .site-nav:nth-child(2n+1), .site-footer .social-links:nth-child(2n+1), .talk-list.is-fancy .talk-item:nth-child(2n+1), .location .map:nth-child(2n+1), .location .address:nth-child(2n+1) { clear: left; padding-right: 1rem; }
  .site-footer .site-nav:nth-child(2n), .site-footer .social-links:nth-child(2n), .talk-list.is-fancy .talk-item:nth-child(2n), .location .map:nth-child(2n), .location .address:nth-child(2n) { clear: right; padding-left: 1rem; } }
@media screen and (max-width: 40rem) { .site-footer .site-nav, .site-footer .social-links, .talk-list.is-fancy .talk-item, .location .map, .location .address { width: 100%; float: none; *zoom: 1; }
  .site-footer .site-nav:before, .site-footer .social-links:before, .talk-list.is-fancy .talk-item:before, .location .map:before, .location .address:before, .site-footer .site-nav:after, .site-footer .social-links:after, .talk-list.is-fancy .talk-item:after, .location .map:after, .location .address:after { display: table; content: ""; }
  .site-footer .site-nav:after, .site-footer .social-links:after, .talk-list.is-fancy .talk-item:after, .location .map:after, .location .address:after { clear: both; } }

body, html { font-family: "Source Sans Pro", Roboto, "Droid Sans", Helvetica, Arial, sans-serif; font-size: 18px; line-height: 1.3; color: #333; }

html.wf-firasans-n4-active, html.wf-firasans-n4-active body { font-family: "Fira Sans", "Source Sans Pro", Roboto, "Droid Sans", Helvetica, Arial, sans-serif; }

h1, h2, h3 { margin: 1rem 0 0.4em; }

h1, .as-h1 { font-size: 2rem; font-weight: bold; }

h2, .as-h2 { font-size: 1rem; font-weight: bold; text-transform: uppercase; }

a { color: #FF7500; text-decoration: none; }

p { margin-bottom: 0.4em; }

ul { margin-left: 0; padding-left: 1.2rem; list-style: square; }

.text { line-height: 1.5; padding-bottom: 1rem; }
.text p, .text ul, .text ol + p, .text ul, .text ol { margin-top: 1rem; }
.text li + li { margin-top: 0.4em; }

address { font-style: normal; }

hr { border: 0; height: 0; margin-top: 1.4em; border-top: 1px dashed #ccc; padding-top: 1.4em; }

html, body, table { -webkit-font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0; -moz-font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0; font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0; }

h1, h2, h3 { -webkit-font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 1; -moz-font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 1; font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 1; }

time { -webkit-font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0; -moz-font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0; font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0; }

figure { margin-bottom: 1rem; }
figure figcaption { margin-bottom: 0.4em; font-style: italic; }
figure img { display: block; max-width: 100%; height: auto; }

.embed { position: relative; display: block; height: 0; padding: 0; overflow: hidden; }
.embed iframe, .embed video { position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border: 0; }

.ratio-16-9 { padding-bottom: 56.25%; }

.site-header { padding-top: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #ccc; margin-bottom: 1rem; }
.site-header .wrapper { display: flex; }
.site-header .wrapper .left, .site-header .wrapper .right { display: flex; flex-direction: column; justify-content: center; }
.site-header .wrapper svg g, .site-header .wrapper svg path { transition: all 0.2s ease-in-out; transform-origin: center center; }
.site-header .wrapper svg:hover .cathedral { fill: #FF7500; }
.site-header .wrapper svg:hover .cogwheel { transform: rotate(-2deg); }
@media screen and (max-width: 20rem) { .site-header .wrapper { flex-direction: column-reverse; }
  .site-header .wrapper svg { display: block; margin-left: auto; margin-right: auto; max-height: 5em; } }
@media screen and (min-width: 20.0001rem) { .site-header .wrapper .left { flex: 1; }
  .site-header .wrapper .right { margin-left: 1rem; } }

.site-title { word-wrap: break-word; font-size: 2rem; }
@media screen and (max-width: 25rem) { .site-title { font-size: 1.5rem; } }

.site-footer { margin-top: 1.4em; border-top: 1px solid #ccc; padding-top: 1.4em; padding-bottom: 1.4em; }

.event { margin: 1rem 0; }
.event .talk-list, .event .location, .event .event-links { margin-top: 1rem; }

.event-title { font-size: 1.5rem; }

.event-in-space-time { display: block; font-weight: normal; }

.event-title, .event-meetupcom, .event time, .event-meta { margin-bottom: 1rem; }

.event-links ul { padding-left: 0; margin-left: 0; list-style: none; }
.event-links li { display: inline-block; padding-bottom: 0.4em; padding-right: 0.4em; }
.event-links li + li:before { display: inline-block; padding-right: 0.4em; content: " – "; color: #ccc; }

.event-list { list-style: none; padding-left: 0; }
.event-list .event-item:not(:last-child) { padding-bottom: 1rem; border-bottom: 1px solid #ccc; margin-bottom: 1rem; }
.event-list .event-title { font-size: 1rem; font-weight: normal; }
.event-list .event-title .title { display: block; font-weight: bold; }
.event-list .event-title .separator { display: none; }

.talk-list.is-fancy { margin-bottom: 1rem; }
.talk-list.is-fancy .talk-item { margin-bottom: 1rem; }

.talk-list.is-short li { margin-left: 1.3em; }

.talk-item .talk:before { padding: 0.2em 0.4em; margin: 0; font-size: 0.75rem; font-weight: bold; text-transform: uppercase; background-color: #333; color: #FFF; display: block; }

.talk-header { margin-bottom: 1rem; }
.talk-header .talk-title { font-size: 1rem; margin-top: 0.4em; }

.talk-speaker-twitter svg, .talk-speaker-github svg { fill: #FF7500; }

.talk-abstract { font-size: 0.9em; line-height: 1.5; }

.talk-list.is-fancy { counter-reset: talk-counter; list-style: none; }
.talk-list.is-fancy .talk-item .talk:before { counter-increment: talk-counter; content: "Talk #" counter(talk-counter,decimal); }

.location { padding: 0; }
.location .map-container { position: relative; height: 0; padding-bottom: 70%; margin-bottom: 1rem; }
.location .map-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.location h1 { font-size: 1em; line-height: 1.4; margin-top: 0; }
.location .location-directions { font-size: 0.9em; line-height: 1.5; }

.page-home .section-headline { padding: 0.2em 0.4em; margin: 0; font-size: 0.75rem; font-weight: bold; text-transform: uppercase; background-color: #333; color: #FFF; display: inline-block; clear: right; }
.page-home .event { margin-top: 0; }
.page-home .event-title { margin-top: 0.2em; }
.page-home figure { margin-top: 1rem; }

.next-meetup { padding-top: 1rem; }

.future-meetups, .prev-meetup, .featured-impressions { margin-top: 1.4em; border-top: 1px solid #ccc; padding-top: 1.4em; }

body { background-color: #FFF; color: #333; }
