From 61075c6a4a0921fd1af6c74ae0a10c2b4efc91f6 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 10:45:35 +0900 Subject: [PATCH 01/39] Added pages to partials --- 2018/page.html | 399 +++++++++++++++++++++++++++++++ 2018/src/html/_partial/pages.ejs | 7 + 2018/src/html/page.ejs | 41 ++++ 3 files changed, 447 insertions(+) create mode 100644 2018/page.html create mode 100644 2018/src/html/_partial/pages.ejs create mode 100644 2018/src/html/page.ejs diff --git a/2018/page.html b/2018/page.html new file mode 100644 index 0000000..e8fcac0 --- /dev/null +++ b/2018/page.html @@ -0,0 +1,399 @@ + + + + + + + + + + Document + + +
+ + + + +
+ + + diff --git a/2018/src/html/_partial/pages.ejs b/2018/src/html/_partial/pages.ejs new file mode 100644 index 0000000..141d06a --- /dev/null +++ b/2018/src/html/_partial/pages.ejs @@ -0,0 +1,7 @@ +<% + +function hh (time) { + return momentTz(time).tz(slots.tz).format('H:mm') + } +hh(entry.start) +%> \ No newline at end of file diff --git a/2018/src/html/page.ejs b/2018/src/html/page.ejs new file mode 100644 index 0000000..0f76640 --- /dev/null +++ b/2018/src/html/page.ejs @@ -0,0 +1,41 @@ +<% +var page = { + title: 'Page' +} +%> + + + + + + + + + Document + + +
<% for (const calName in calendar ) { + const cal = calendar[calName] + %> + + <% }%> +
+ + + From 29487fc165341365abb1cab7c3d56516f4624dec Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 17:06:07 +0900 Subject: [PATCH 02/39] Added page.ejs --- 2018/src/html/page.ejs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/2018/src/html/page.ejs b/2018/src/html/page.ejs index 0f76640..e9034d4 100644 --- a/2018/src/html/page.ejs +++ b/2018/src/html/page.ejs @@ -21,16 +21,26 @@ var page = { <% for (const room in cal.rooms) { const entries = cal.rooms[room]%> <% for (const entry of entries) { - const speaker = speakers[entry.person] %> + const speaker = speakers[entry.person] + %>
  • <%- room-%> - <%- - entry.start-%> + <%-entry.start-%>
    <%- entry.summary -%> <%- entry.description -%>
    + <% if(entry.person){%> + + <%}%> + <% for (const biography in speaker) { + const bio = speaker.biography %> + <% if(speaker){%> + <%- bio-%> + <%}%> + <%} %>
  • + <% } %> <% }%> From e7f8e2a5bd1355d0eb8c87c05a3abc25cf5db0d1 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 17:07:34 +0900 Subject: [PATCH 03/39] used npm run dev --- 2018/page.html | 1022 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1022 insertions(+) diff --git a/2018/page.html b/2018/page.html index e8fcac0..1fc2fca 100644 --- a/2018/page.html +++ b/2018/page.html @@ -17,27 +17,120 @@
  • Room A 2018-11-23T01:00:00.000Z
    Doors Open
    + +
  • +
  • Room A 2018-11-23T01:30:00.000Z
    Keynote
    + +
  • +
  • Room A 2018-11-23T01:45:00.000Z
    Look What You MIDI Me Do! Who loves pushing buttons? You? And you over there? And the person behind you? Oh wait, everyone loves it?!!? Of course they do, a button is irresistible. Now… what if I told you that you could hook up a LOT of buttons to your computer… and use it to do wild things with the web? I’m glad you’re listening! Let’s take a journey into the Web MIDI api where the possibilities of the web aren’t just at your keyboard fingertips anymore, they’re literally any MIDI compatible controller you have connected! Want to make glitchy audio responsive visuals with WebGL shaders? Rad, we can do that. Want to create custom beats and have those input as a drum machine? No problem when you throw a little Web Audio API in the mix. Let’s dive in and find out how!
    + + + + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. + + + Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. +
  • +
  • Room A 2018-11-23T02:15:00.000Z
    Node.js: The Road to Workers Workers, and threading support in general, have been one of the most frequently requested features for Node.js over the last years. Finally, the finishing line is in sight and we’re pretty excited to have experimental support available! This talk will tell you everything around the API, features, use cases & alternatives, our roadmap, and the technical and social challenges that we had to overcome to make it happen!
    + + + + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. + + + Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. +
  • +
  • Room A 2018-11-23T04:00:00.000Z
    JavaScript Class Features: A case study in TC39 ES6 classes were intentionally minimal, containing only public method declarations. Now, TC39 is considering adding several other features to classes: private, fields, and decorators. In this talk, we'll see how these proposals work in detail, the process that got them there, and how you can get involved. TC39 needs your help to build features like these and the future of JavaScript.
    + + + + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. + + + Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. +
  • +
  • Room A 2018-11-23T04:30:00.000Z
    @@ -46,17 +139,101 @@ It is not in fact magic that takes care of the garbage, and this talk will show you how it’s done. First, we’ll explore how two of the most common garbage collection algorithms, reference counting and tracing, figure out what is ready to be collected. Next, we’ll see how we could get the garbage truck out of the way faster by using a generational algorithm, and finally we’ll have a brief look at how Python’s garbage collection works. This friendly introduction to taking out the trash gives an overview of important aspects of garbage collection algorithms. It is specifically meant to be accessible developers of all levels and you’ll walk away with an understanding of and appreciation for all the hard work that goes on behind the scenes.
    + + + + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. + + + Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. +
  • +
  • Room A 2018-11-23T05:15:00.000Z
    libuv: What's a Unicorn Velociraptor? libuv is what gives Node.js its event loop and cross-platform asynchronous I/O capabilities. This talk explains what libuv is all about, and how it's used by Node.js. This talk also looks at recent development efforts in the libuv project.
    + + + + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. + + + Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. +
  • +
  • Room A 2018-11-23T05:45:00.000Z
    Leak Hunting: Finding and debugging a memory leak in Node.js Performance metrics? Response time higher? Memory leak? We would walk through different memory leak situations to identify and analyze patterns that produce an increase of memory, CPU usage, and the load average over time, without any apparent reason. We'll start talking about taking the time to set up a proper test environment to repeat the exact same conditions as in production. Then we'll discuss how to access Node.js memory using V8 Inspector & Chrome Dev Tools, create a dump of the heap memory for the inspected application, with a lot of details about the memory usage, watching memory allocation in real time and finally a compilation of best practices about how we could end fixing the memory leak. In the end, we'll be able to use the right tools to monitor, understand, and debug the memory consumption of a Node.js application on time.
    + + + + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. + + + Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. +
  • +
  • Room A 2018-11-23T06:30:00.000Z
    @@ -77,37 +254,153 @@ Expect modules you can use *today* to start implmenting great collaborative offline-first applications and plenty of demos.
    + + + + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. + + + Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. +
  • +
  • Room A 2018-11-23T07:00:00.000Z
    Visualizing the Decentralized Web A new generation of peer-to-peer protocols is coming to the web. Browsers will soon be able to talk directly to each other, without the need for centralized servers. Exciting new applications and social networks are being created which put people back in control of their personal data. See how IPFS, the Dat Protocol and Secure Scuttlebutt work. This presentation will use interactive visualizations to demonstrate core concepts.
    + + + + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 + + + Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 +
  • +
  • Room A 2018-11-23T07:45:00.000Z
    Real-Time Machine Learning in JavaScript Real-time machine learning is a collection of statistical methods to obtain insights from continuous data streams. In this talk, I'll provide an overview of real-time machine learning algorithms and discuss how these algorithms can be implemented and used in JavaScript. I'll highlight why running these algorithms in JavaScript has several advantages compared to languages traditionally used for numerical computing, including the ability to perform client-side computations. I'll conclude by discussing best-practices and common pitfalls encountered when using machine learning algorithms within JavaScript environments.
    + + + + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. + + + Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. +
  • +
  • Room A 2018-11-23T08:15:00.000Z
    Haute Codeture What if, instead going for practicality, we used IoT to create fleeting moments of interaction and beauty? What would happen if others could interact with my clothing via a web app? I’ll share my story of how I got started with hardware and how it’s evolved into using fashion to create interactive, artistic experiences with strangers.
    + + + + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. + + + Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. +
  • +
  • Room A 2018-11-23T09:00:00.000Z
    Sponsor Talk
    + +
  • +
  • Room A 2018-11-23T09:30:00.000Z
    Lightning Talks
    + +
  • +
  • Room A 2018-11-23T11:15:00.000Z
    After Party
    + +
  • + @@ -116,7 +409,36 @@ Javascript で機械学習はじめよう Javascript で機械学習する時代が本格的にやってきた。 機械学習プロジェクトとなると、今までは Python や R などのプログラミング言語で記述することが多かった。しかし、最近 TensorFlow.js をはじめとする 機械学習のための Javascript ライブラリが登場しはじめたことにより、その状況は変わりつつある。Javascript で機械学習を記述することによって、ウェブサーバとの通信を必要としないウェブブラウザ上での学習・推論や、クライアントの GPU の活用など、さまざまなメリットを享受できる。 このセッションでは、Javascript で機械学習することの意味、そして TensorFlow.js を用いてウェブアプリケーションを構築する方法について実例を交えながら解説したいと思う。
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  • Room B 2018-11-23T02:15:00.000Z
    @@ -125,7 +447,33 @@ こちらの記事をベースに、発表にまとめる予定です。 https://qiita.com/massie_g/items/3ee11c105b4458686bc1
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T04:00:00.000Z
    @@ -141,7 +489,30 @@ ・ Analysis: あえてアプリケーションをクラッシュさせて指標を得るpost-mortemの考え方 などの観点で、実際にコードを診断してみます。 Node.jsではどのような診断方法が用意・検討されているのか、最新動向を追ってみます。
    + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T04:30:00.000Z
    @@ -150,20 +521,98 @@ 昨年からPrerenderなどそれ専用のソリューションが出たり、Gatsbyjsなどの静的サイトジェネレータの隆盛もあり、取れる打ち手が増えてきましたが、世間には未だに曖昧な論拠に基づいた「SSR必要論」ないし「SSR不要論」が溢れています。 このトークでは「SEO対策」とは具体的になにを指すのか、SPAでSEO対策をする際の打ち手やそれぞれのメリット・デメリットはなにかを解説します。
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T05:15:00.000Z
    React におけるパフォーマンスチューニング React で作成された大規模SPAにおいて,再レンダリングの最適化をはじめとした パフォーマンスチューニング や ボトルネックの発見方法,具体的な改善事例について
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T05:45:00.000Z
    WebアプリをNativeアプリにする Capacitor が広げるWebの可能性 iOS/Androidアプリ開発でHTML5アプリが候補にあがると必ず言われる「でも、遅いでしょ?」。Webの進化はすでにそれを過去のものに変えようとしており、自由度が高く表現豊かなアプリをつくることができます。アプリ人材の不足が叫ばれますが、フロントエンド界隈には多くの潜在人材がいます。 このセッションでは、HTML5アプリの歴史と技術、パフォーマンスと「今」を整理します。
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T06:30:00.000Z
    @@ -172,7 +621,30 @@ 採用してどうだったのか? graphqlを利用するクライアントサイド側からの視点強めで話をしていきたいと思います。 話題のelmだったのでその話も少し添えて
    + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T07:00:00.000Z
    @@ -186,7 +658,33 @@ ・ ページコンテンツのキャッシュに関する検討中のアイデアなど また、キャッシュされたリソース間でのバージョンの不整合を防ぐ仕組みや、これらの有効期限の設定など、運用において気を付けている事柄と対応についても共有します。
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room B 2018-11-23T07:45:00.000Z
    @@ -195,7 +693,52 @@ Contribution Accessibilityを解消する一助として開発した goofi というツールをご紹介します。 また、同ツールはTypeScript, React, Next.js, GraphQLなどのJavaScript周辺技術を使用しているため、これらの技術要素の選定理由や使用しての所感・考察もお伝えします。 上記課題はスピーカー自身が感じていたものでもありました。そのためスピーカー自身が同ツールを利用して実際にcontributionすることができるようになった例についてお話します。
    + + + + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. + + + Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. + +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. +
  • +
  • Room B 2018-11-23T08:15:00.000Z
    @@ -210,40 +753,178 @@ ・ PWA(Progressive Web Apps) の 概要 ・ Vue.js/Nuxt.js を 使った PWA な モバイルアプリ の 開発手法 ・ GitHub、CircleCI、GitHuba Pages を 使った 常にアクセス可能なプロトタイプ環境を持つ PWA アプリ開発環境
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room C 2018-11-23T01:45:00.000Z
    JSなんでもお悩み相談室
    + +
  • +
  • Room D 2018-11-23T01:45:00.000Z
    無限LT部屋
    + +
  • +
  • Room E 2018-11-23T01:45:00.000Z
    How I made critical code run much faster I have this critical piece of code. It has to run fast otherwise my clients complain. Also it is synchronous so I want it to have a small impact on the performance of the applications. This is the story of how I spent a week to gain microseconds in some very critical piece of code.
    + + + + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. + + + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. +
  • +
  • Room E 2018-11-23T02:15:00.000Z
    Accessibility vs latest Web APIs. Can’t we just get along? Unfortunately, we still treat accessibility in the same way we deal with front-end development for older browsers, something to be done at the end. What if I tell you that we can use the latest Web APIs and still offer an inclusive and accessible experience. In this talk, you'll learn how to combine Web APIs such as Speech Recognition and Geolocation, with performant Javascript techniques to create empathic user interfaces.
    + + + + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. + +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. + +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. +
  • +
  • Room E 2018-11-23T04:00:00.000Z
    A trillion points with Node.js I will be presenting our progress of using DAT to create a open-source visualization system for very large point-cloud data sets. This visualization system is entirely built on JavaScript and can enable new ways how we share and use data.
    + + + + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. +
  • +
  • Room E 2018-11-23T04:30:00.000Z
    @@ -252,19 +933,94 @@ Delayed rendering makes routing simpler. Instead of manually managing component state and loading spinners, you just assign URLs to content using `async`/`await` and `import()`. Navi does the rest -- it fetches your content, manages your page's `<title>` and scroll position, and even warns you about broken links! In this talk, I'll introduce Navi, and use it to live code a static website with create-react-app.
    + + + + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! + + + Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! +
  • +
  • Room E 2018-11-23T05:15:00.000Z
    Node.jsアプリの開発をモダン化するために取り組んできたこと ビットバンク株式会社では仮想通貨取引所 bitbank.cc を開発・運営しております。 お客様や取引量の増加に伴い、サーバーサイドアプリケーションの要求水準も高まるばかりです。 このトークでは超少人数でメンテされていたNode.jsバージョン6のアプリケーションの開発をモダン化する過程での取り組み(ローカル開発環境の刷新、TypeScriptの採用と新規フレームワークの導入、AWSのインフラ構成変更など)について、背景や実際の進め方を踏まえてお話をさせて頂くことで、開発手法や環境構築に悩んでいる人の助けになれればと思います。
    + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room E 2018-11-23T05:45:00.000Z
    ブロックチェーンアプリケーション開発でのJavascriptの話 ブロックチェーンアプリケーション、DApps開発(Ethereum)をする上でのJavascript、フロントエンドの話
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room E 2018-11-23T06:30:00.000Z
    @@ -273,13 +1029,65 @@ Angular UniversalはAngularでSSRを可能にするためのプロジェクトであり、今回のアプリケーションはこのプロジェクトが提供するツールを利用しています。現時点で公式ドキュメントがあまり充実していないため、実際にアプリケーション開発を進める中で得られた知見を共有することで、その部分を補ればと思います。たとえば、開発中にローカルでファイルをwatchしながらSSRする方法や、サーバサイドで取得した状態をクライアントサイドに伝播する方法などが含まれます。 また、Angular Universalでは未提供の、必要なリソースをHTTP/2 Server Pushする機能を独自に実装し(ようとし)たお話もする予定です。
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room E 2018-11-23T07:00:00.000Z
    React + Apollo Client (GraphQL) により変化するアプリケーション設計 GraphQL を利用した Web アプリケーション開発において、Apollo Client を導入することによりクライアントの設計は大きく変化します。コードはより容易に簡素化され、関心事の分離という観点からも GraphQL を導入するメリットをより大きくしてくれます。 このトークでは Apollo についてや、それによってどのようにクライアントの設計が変わってくるのかという話をしたいと思います。
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • + @@ -290,53 +1098,149 @@
  • Room A 2018-11-24T01:00:00.000Z
    Doors Open
    + +
  • +
  • Room A 2018-11-24T01:30:00.000Z
    Node/JS Discussion
    + +
  • +
  • Room A 2018-11-24T04:00:00.000Z
    Node/W3C Discussion
    + +
  • +
  • Room A 2018-11-24T06:00:00.000Z
    Code And Learn Code & Learn events allow you to get started (or go further) with Node.js core contributions. Experienced contributors help guide you through your first (or second or third or fourth) commit to Node.js core. They also are available to provide impromptu guided tours through specific areas of Node.js core source code.
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room A 2018-11-24T08:00:00.000Z
    Lightning Talks
    + +
  • +
  • Room A 2018-11-24T09:15:00.000Z
    After Party
    + +
  • +
  • Room B 2018-11-24T01:30:00.000Z
    NodeSchool
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room C 2018-11-24T01:30:00.000Z
    Collaboration Space
    + +
  • +
  • Room D 2018-11-24T01:30:00.000Z
    Workshop: Building hardware
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • Room D 2018-11-24T06:00:00.000Z
    @@ -352,7 +1256,33 @@ ・ State vs stateless components This workshop is best for developers who have never used React or have only used it a little and want to gain deeper understanding.
    + + + + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. + + + Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. +
  • + @@ -368,7 +1298,33 @@ ・ DAT を使ってホームページを作って公開する。 ・ その ホームページを Beaker Browser で見てやりとりする。 ・ Node.js を使って DAT をリモートプロセスでやりとりする。
    + + + + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + + + Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. + +
  • Room E 2018-11-24T04:00:00.000Z
    @@ -383,12 +1339,78 @@ ・ Code Generating (taking that representation and turning it into, in this case, JavaScript). This workshop is for people who are already somewhat familiar with JavaScript (just the language itself, not any particular library or framework). To get started, you only need the workshop git repository (TBA), a Terminal / Console, Node.js 8+, and a text editor of your choice.
    + + + + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. + + + Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. + +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. +
  • +
  • Room E 2018-11-24T06:00:00.000Z
    Workshop: JavaScript TodoMVC
    + + + + + + + + + + + + + + + + + + + + + + + + +
  • + From a631aef3c5e2e4682c4d244e4575d06bfa9d96f5 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Wed, 21 Nov 2018 17:31:17 +0900 Subject: [PATCH 04/39] fixed multiple rendering of biographies. --- 2018/page.html | 721 +---------------------------------------- 2018/src/html/page.ejs | 2 +- 2 files changed, 14 insertions(+), 709 deletions(-) diff --git a/2018/page.html b/2018/page.html index 1fc2fca..9d6df00 100644 --- a/2018/page.html +++ b/2018/page.html @@ -38,27 +38,6 @@ - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. - - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. @@ -72,27 +51,6 @@ - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. - - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. @@ -106,27 +64,6 @@ - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. - - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. @@ -144,27 +81,6 @@ - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. - - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. @@ -178,27 +94,6 @@ - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. - - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. @@ -212,24 +107,6 @@ - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. - - - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. - - - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. - - - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. - - - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. - - - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. - - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. @@ -259,27 +136,6 @@ - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. - - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. @@ -293,24 +149,6 @@ - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 - - - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 - - - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 - - - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 - - - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 - - - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 - - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 @@ -324,24 +162,6 @@ - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. - - - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. - - - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. - - - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. - - - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. - - - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. - - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. @@ -355,24 +175,6 @@ - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. - - - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. - - - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. - - - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. - - - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. - - - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. - - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. @@ -416,27 +218,6 @@ - - - - - - - - - - - - - - - - - - - - - @@ -451,24 +232,6 @@ - - - - - - - - - - - - - - - - - - @@ -496,21 +259,6 @@ - - - - - - - - - - - - - - - @@ -525,24 +273,6 @@ - - - - - - - - - - - - - - - - - - @@ -557,24 +287,6 @@ - - - - - - - - - - - - - - - - - - @@ -590,24 +302,6 @@ - - - - - - - - - - - - - - - - - - @@ -628,21 +322,6 @@ - - - - - - - - - - - - - - - @@ -662,24 +341,6 @@ - - - - - - - - - - - - - - - - - - @@ -698,41 +359,6 @@ - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. - -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. - - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. @@ -757,24 +383,6 @@ - - - - - - - - - - - - - - - - - - @@ -811,80 +419,20 @@ - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. - - - - -
  • - Room E 2018-11-23T02:15:00.000Z
    - Accessibility vs latest Web APIs. Can’t we just get along? Unfortunately, we still treat accessibility in the same way we deal with front-end development for older browsers, something to be done at the end. What if I tell you that we can use the latest Web APIs and still offer an inclusive and accessible experience. - -In this talk, you'll learn how to combine Web APIs such as Speech Recognition and Geolocation, with performant Javascript techniques to create empathic user interfaces.
    - - - - - - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. - -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. - -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. - - - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. - -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. - -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. - - - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. - -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. - -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. - - - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. - -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. - -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. - - - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. - -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. - -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. - - - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. - -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. - -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. + Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. +
  • + + +
  • + Room E 2018-11-23T02:15:00.000Z
    + Accessibility vs latest Web APIs. Can’t we just get along? Unfortunately, we still treat accessibility in the same way we deal with front-end development for older browsers, something to be done at the end. What if I tell you that we can use the latest Web APIs and still offer an inclusive and accessible experience. + +In this talk, you'll learn how to combine Web APIs such as Speech Recognition and Geolocation, with performant Javascript techniques to create empathic user interfaces.
    + + + + A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. @@ -903,24 +451,6 @@ - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community.
  • @@ -938,24 +468,6 @@ - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! - - - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! - - - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! - - - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! - - - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! - - - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! - - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! @@ -973,21 +485,6 @@ - - - - - - - - - - - - - - - @@ -998,24 +495,6 @@ - - - - - - - - - - - - - - - - - - @@ -1033,24 +512,6 @@ - - - - - - - - - - - - - - - - - - @@ -1065,24 +526,6 @@ - - - - - - - - - - - - - - - - - - @@ -1126,24 +569,6 @@ - - - - - - - - - - - - - - - - - - @@ -1175,24 +600,6 @@ - - - - - - - - - - - - - - - - - - @@ -1218,24 +625,6 @@ - - - - - - - - - - - - - - - - - - @@ -1261,24 +650,6 @@ - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. - - - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. - - - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. - - - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. - - - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. - - - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. - - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. @@ -1303,24 +674,6 @@ - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. - - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. @@ -1344,36 +697,6 @@ - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. - -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. - - - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. - -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. - - - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. - -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. - - - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. - -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. - - - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. - -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. - - - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. - -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. - - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. @@ -1388,24 +711,6 @@ - - - - - - - - - - - - - - - - - - diff --git a/2018/src/html/page.ejs b/2018/src/html/page.ejs index e9034d4..1efaf69 100644 --- a/2018/src/html/page.ejs +++ b/2018/src/html/page.ejs @@ -33,7 +33,7 @@ var page = { <% if(entry.person){%> <%}%> - <% for (const biography in speaker) { + <% if (speaker) { const bio = speaker.biography %> <% if(speaker){%> <%- bio-%> From 73bec25288dcbbdb9ecaa3685d65514c1d0b6428 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 18:48:50 +0900 Subject: [PATCH 05/39] Put summary, description and bio in HTML tags to make more visible --- 2018/page.html | 359 ++++++++++++++++++++++++++++------------- 2018/src/html/page.ejs | 6 +- 2 files changed, 248 insertions(+), 117 deletions(-) diff --git a/2018/page.html b/2018/page.html index 9d6df00..5beaef6 100644 --- a/2018/page.html +++ b/2018/page.html @@ -16,7 +16,9 @@
  • Room A 2018-11-23T01:00:00.000Z
    - Doors Open
    +

    Doors Open

    +

    +
  • @@ -24,7 +26,9 @@
  • Room A 2018-11-23T01:30:00.000Z
    - Keynote
    +

    Keynote

    +

    +
  • @@ -32,92 +36,111 @@
  • Room A 2018-11-23T01:45:00.000Z
    - Look What You MIDI Me Do! Who loves pushing buttons? You? And you over there? And the person behind you? Oh wait, everyone loves it?!!? Of course they do, a button is irresistible. Now… what if I told you that you could hook up a LOT of buttons to your computer… and use it to do wild things with the web? I’m glad you’re listening! Let’s take a journey into the Web MIDI api where the possibilities of the web aren’t just at your keyboard fingertips anymore, they’re literally any MIDI compatible controller you have connected! Want to make glitchy audio responsive visuals with WebGL shaders? Rad, we can do that. Want to create custom beats and have those input as a drum machine? No problem when you throw a little Web Audio API in the mix. Let’s dive in and find out how!
    +

    Look What You MIDI Me Do!

    +

    Who loves pushing buttons? You? And you over there? And the person behind you? Oh wait, everyone loves it?!!? Of course they do, a button is irresistible. Now… what if I told you that you could hook up a LOT of buttons to your computer… and use it to do wild things with the web? I’m glad you’re listening! Let’s take a journey into the Web MIDI api where the possibilities of the web aren’t just at your keyboard fingertips anymore, they’re literally any MIDI compatible controller you have connected! Want to make glitchy audio responsive visuals with WebGL shaders? Rad, we can do that. Want to create custom beats and have those input as a drum machine? No problem when you throw a little Web Audio API in the mix. Let’s dive in and find out how!

    +
    - Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes. +

    Rachel White is a technologist, artist, and pretend-cyborg who is currently a Developer Experience Lead, member of the Node.js Community Committee, and co-host of the Changelog podcast JSParty. She is interested in new uses for old hardware, useless robots, VR/AR/MR, and bots. She has spoken internationally about Node.js, JavaScript, Creative Coding, IoT, Artificial Intelligence, NodeBots, and hardware. She's a previous artist in residence at Pioneer Works where she worked on a series that visualized what modern cybernetic augmentation could look like with todays hardware and special effects makeup. Her other interests include glitch art, 80s horror, and indie games. Her aesthetic is fog machines, laser lights, and broken VHS tapes.

    +
  • Room A 2018-11-23T02:15:00.000Z
    - Node.js: The Road to Workers Workers, and threading support in general, have been one of the most frequently requested features for Node.js over the last years. Finally, the finishing line is in sight and we’re pretty excited to have experimental support available! This talk will tell you everything around the API, features, use cases & alternatives, our roadmap, and the technical and social challenges that we had to overcome to make it happen!
    +

    Node.js: The Road to Workers

    +

    Workers, and threading support in general, have been one of the most frequently requested features for Node.js over the last years. Finally, the finishing line is in sight and we’re pretty excited to have experimental support available! This talk will tell you everything around the API, features, use cases & alternatives, our roadmap, and the technical and social challenges that we had to overcome to make it happen!

    +
    - Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community. +

    Over the last 2 and a half years, Anna has been one of the most active contributors to Node.js core. Currently pursuing a Master’s degree in mathematics in Germany, she is fueled by a passion for Node and its community.

    +
  • Room A 2018-11-23T04:00:00.000Z
    - JavaScript Class Features: A case study in TC39 ES6 classes were intentionally minimal, containing only public method declarations. Now, TC39 is considering adding several other features to classes: private, fields, and decorators. In this talk, we'll see how these proposals work in detail, the process that got them there, and how you can get involved. TC39 needs your help to build features like these and the future of JavaScript.
    +

    JavaScript Class Features: A case study in TC39

    +

    ES6 classes were intentionally minimal, containing only public method declarations. Now, TC39 is considering adding several other features to classes: private, fields, and decorators. In this talk, we'll see how these proposals work in detail, the process that got them there, and how you can get involved. TC39 needs your help to build features like these and the future of JavaScript.

    +
    - Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya. +

    Daniel Ehrenberg is a TC39 delegate who works for Igalia, a Galician free software consultancy. He lives in Catalunya.

    +
  • Room A 2018-11-23T04:30:00.000Z
    - Who Takes Out Your Trash In our daily development lives, most of us don’t have to worry about unused objects gathering cobwebs and filling up the memory. All we need to know is that our language has a garbage collector that just comes by and makes our trash disappear. Somehow it figures out what should stay and what can go, our program can keep going without running out of space, and we don’t have to do a thing. +

    Who Takes Out Your Trash

    +

    In our daily development lives, most of us don’t have to worry about unused objects gathering cobwebs and filling up the memory. All we need to know is that our language has a garbage collector that just comes by and makes our trash disappear. Somehow it figures out what should stay and what can go, our program can keep going without running out of space, and we don’t have to do a thing. It is not in fact magic that takes care of the garbage, and this talk will show you how it’s done. First, we’ll explore how two of the most common garbage collection algorithms, reference counting and tracing, figure out what is ready to be collected. Next, we’ll see how we could get the garbage truck out of the way faster by using a generational algorithm, and finally we’ll have a brief look at how Python’s garbage collection works. -This friendly introduction to taking out the trash gives an overview of important aspects of garbage collection algorithms. It is specifically meant to be accessible developers of all levels and you’ll walk away with an understanding of and appreciation for all the hard work that goes on behind the scenes.


    +This friendly introduction to taking out the trash gives an overview of important aspects of garbage collection algorithms. It is specifically meant to be accessible developers of all levels and you’ll walk away with an understanding of and appreciation for all the hard work that goes on behind the scenes.

    +
    - Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine. +

    Sanne is a former teacher turned (mostly self-taught) software engineer. Currently, she works at TELE2 in Amsterdam, building applications that help her colleagues keep an eye on anything network-related. When she's not coding, you'll probably find her either 25 browser tabs deep into a new CS topic, or behind her sewing machine.

    +
  • Room A 2018-11-23T05:15:00.000Z
    - libuv: What's a Unicorn Velociraptor? libuv is what gives Node.js its event loop and cross-platform asynchronous I/O capabilities. This talk explains what libuv is all about, and how it's used by Node.js. This talk also looks at recent development efforts in the libuv project.
    +

    libuv: What's a Unicorn Velociraptor?

    +

    libuv is what gives Node.js its event loop and cross-platform asynchronous I/O capabilities. This talk explains what libuv is all about, and how it's used by Node.js. This talk also looks at recent development efforts in the libuv project.

    +
    - Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN. +

    Colin Ihrig is a member of the Node.js Core Technical Committee, a libuv collaborator, and a hapi.js core team member. Colin is the author of Pro Node.js for Developers, and co-author of Full Stack JavaScript Development with MEAN.

    +
  • Room A 2018-11-23T05:45:00.000Z
    - Leak Hunting: Finding and debugging a memory leak in Node.js Performance metrics? Response time higher? Memory leak? We would walk through different memory leak situations to identify and analyze patterns that produce an increase of memory, CPU usage, and the load average over time, without any apparent reason. We'll start talking about taking the time to set up a proper test environment to repeat the exact same conditions as in production. Then we'll discuss how to access Node.js memory using V8 Inspector & Chrome Dev Tools, create a dump of the heap memory for the inspected application, with a lot of details about the memory usage, watching memory allocation in real time and finally a compilation of best practices about how we could end fixing the memory leak. In the end, we'll be able to use the right tools to monitor, understand, and debug the memory consumption of a Node.js application on time.
    +

    Leak Hunting: Finding and debugging a memory leak in Node.js

    +

    Performance metrics? Response time higher? Memory leak? We would walk through different memory leak situations to identify and analyze patterns that produce an increase of memory, CPU usage, and the load average over time, without any apparent reason. We'll start talking about taking the time to set up a proper test environment to repeat the exact same conditions as in production. Then we'll discuss how to access Node.js memory using V8 Inspector & Chrome Dev Tools, create a dump of the heap memory for the inspected application, with a lot of details about the memory usage, watching memory allocation in real time and finally a compilation of best practices about how we could end fixing the memory leak. In the end, we'll be able to use the right tools to monitor, understand, and debug the memory consumption of a Node.js application on time.

    +
    - Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development. +

    Support Engineer at NodeSource. At NodeSource I spend time working on products, giving talks and fixing other companies issues related to Node.js. I created my own lisp based language, a modern CSS framework and a ton of C libs because I enjoy learning and having fun during the process. Previously worked at Mozilla porting Firefox OS to ARM devices, building IoT tools for web developers and speaking about Rust, Node.js and embedded OS development.

    +
  • Room A 2018-11-23T06:30:00.000Z
    - Offline-First Collaborative Data Structures The web is growing bigger and bigger every year. +

    Offline-First Collaborative Data Structures

    +

    The web is growing bigger and bigger every year. With the increasing rise of the mobile internet and with users in places that have spotty or slow internet -we've have seen an increased interest in making things work +we've have seen an increased interest in making things work offline, without degrading user experience. This talk is a hands-on talk about a series of data structures @@ -125,64 +148,77 @@ whilst still allowing you to build collaborative applictions, such as chat applications, shared TODO lists and more. -I'll be talking about cool new data structures such as the HAMT +I'll be talking about cool new data structures such as the HAMT (Hash Array Mapped Trie) on top of append-only logs and why this is the future of the offline-first internet. Expect modules you can use *today* to start implmenting great -collaborative offline-first applications and plenty of demos.


    +collaborative offline-first applications and plenty of demos.

    +
    - Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol. +

    Mathias Buus is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is also the Chief of Research at Beaker leading the technical work on the Dat protocol.

    +
  • Room A 2018-11-23T07:00:00.000Z
    - Visualizing the Decentralized Web A new generation of peer-to-peer protocols is coming to the web. Browsers will soon be able to talk directly to each other, without the need for centralized servers. Exciting new applications and social networks are being created which put people back in control of their personal data. See how IPFS, the Dat Protocol and Secure Scuttlebutt work. This presentation will use interactive visualizations to demonstrate core concepts.
    +

    Visualizing the Decentralized Web

    +

    A new generation of peer-to-peer protocols is coming to the web. Browsers will soon be able to talk directly to each other, without the need for centralized servers. Exciting new applications and social networks are being created which put people back in control of their personal data. See how IPFS, the Dat Protocol and Secure Scuttlebutt work. This presentation will use interactive visualizations to demonstrate core concepts.

    +
    - Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。 +

    Jim is a software developer based in Vancouver, Canada. In the past year, he has worked for both the Dat Project and Protocol Labs (IPFS). He is also a co-host of the DatCast podcast. Over the years, Jim has been involved in many open source communities, including the Debian project, the Linux kernel, and Node.js. 簡単な日本語なら話せます。

    +
  • Room A 2018-11-23T07:45:00.000Z
    - Real-Time Machine Learning in JavaScript Real-time machine learning is a collection of statistical methods to obtain insights from continuous data streams. In this talk, I'll provide an overview of real-time machine learning algorithms and discuss how these algorithms can be implemented and used in JavaScript. I'll highlight why running these algorithms in JavaScript has several advantages compared to languages traditionally used for numerical computing, including the ability to perform client-side computations. I'll conclude by discussing best-practices and common pitfalls encountered when using machine learning algorithms within JavaScript environments.
    +

    Real-Time Machine Learning in JavaScript

    +

    Real-time machine learning is a collection of statistical methods to obtain insights from continuous data streams. In this talk, I'll provide an overview of real-time machine learning algorithms and discuss how these algorithms can be implemented and used in JavaScript. I'll highlight why running these algorithms in JavaScript has several advantages compared to languages traditionally used for numerical computing, including the ability to perform client-side computations. I'll conclude by discussing best-practices and common pitfalls encountered when using machine learning algorithms within JavaScript environments.

    +
    - Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib. +

    Athan Reines is a full-stack engineer and data scientist. He has a PhD in Physics, where he used machine learning and time series analytics to probe biological systems at the nanoscale. He currently works full-time on open source projects to facilitate numerical and scientific computing in Node.js and JavaScript. For his latest open source project, see stdlib, a standard library for Node.js and Javascript: https://github.com/stdlib-js/stdlib.

    +
  • Room A 2018-11-23T08:15:00.000Z
    - Haute Codeture What if, instead going for practicality, we used IoT to create fleeting moments of interaction and beauty? What would happen if others could interact with my clothing via a web app? I’ll share my story of how I got started with hardware and how it’s evolved into using fashion to create interactive, artistic experiences with strangers.
    +

    Haute Codeture

    +

    What if, instead going for practicality, we used IoT to create fleeting moments of interaction and beauty? What would happen if others could interact with my clothing via a web app? I’ll share my story of how I got started with hardware and how it’s evolved into using fashion to create interactive, artistic experiences with strangers.

    +
    - Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things. +

    Stephanie is a developer living in Berlin. She is works at Microsoft and co-organizes the Stupid Hackathon Amsterdam. She enjoys experimenting with hardware and LEDs to make beautiful, useless things.

    +
  • Room A 2018-11-23T09:00:00.000Z
    - Sponsor Talk
    +

    Sponsor Talk

    +

    +
  • @@ -190,7 +226,9 @@
  • Room A 2018-11-23T09:30:00.000Z
    - Lightning Talks
    +

    Lightning Talks

    +

    +
  • @@ -198,7 +236,9 @@
  • Room A 2018-11-23T11:15:00.000Z
    - After Party
    +

    After Party

    +

    +
  • @@ -208,39 +248,46 @@
  • Room B 2018-11-23T01:45:00.000Z
    - Javascript で機械学習はじめよう Javascript で機械学習する時代が本格的にやってきた。 +

    Javascript で機械学習はじめよう

    +

    Javascript で機械学習する時代が本格的にやってきた。 機械学習プロジェクトとなると、今までは Python や R などのプログラミング言語で記述することが多かった。しかし、最近 TensorFlow.js をはじめとする 機械学習のための Javascript ライブラリが登場しはじめたことにより、その状況は変わりつつある。Javascript で機械学習を記述することによって、ウェブサーバとの通信を必要としないウェブブラウザ上での学習・推論や、クライアントの GPU の活用など、さまざまなメリットを享受できる。 -このセッションでは、Javascript で機械学習することの意味、そして TensorFlow.js を用いてウェブアプリケーションを構築する方法について実例を交えながら解説したいと思う。


    +このセッションでは、Javascript で機械学習することの意味、そして TensorFlow.js を用いてウェブアプリケーションを構築する方法について実例を交えながら解説したいと思う。

    +
    - +

    +
  • Room B 2018-11-23T02:15:00.000Z
    - Node.jsでつくるNode.js ミニインタープリター&コンパイラー 「RubyでつくるRuby ゼロから学びなおすプログラミング言語入門」という書籍に感銘を受けて、自分でもミニNode.js インタープリターを作ってみました。それを通して変数や関数のスコープについてより深く理解することができました。 +

    Node.jsでつくるNode.js ミニインタープリター&コンパイラー

    +

    「RubyでつくるRuby ゼロから学びなおすプログラミング言語入門」という書籍に感銘を受けて、自分でもミニNode.js インタープリターを作ってみました。それを通して変数や関数のスコープについてより深く理解することができました。 さらに以前から気になっていたLLVMを使って、バイナリを生成するミニコンパイラにもチャレンジしています。 こちらの記事をベースに、発表にまとめる予定です。 -https://qiita.com/massie_g/items/3ee11c105b4458686bc1


    +https://qiita.com/massie_g/items/3ee11c105b4458686bc1

    +
    - +

    +
  • Room B 2018-11-23T04:00:00.000Z
    - Diagnose your Node.js app 想定対象者: Node.js初学者(≠プログラミング初心者)から中級者まで +

    Diagnose your Node.js app

    +

    想定対象者: Node.js初学者(≠プログラミング初心者)から中級者まで このセッションでは、コアAPIの視点からNode.jsの特性について整理し、自身のコードの診断ができるようになることを目指します。 @@ -251,83 +298,98 @@ ・ Profiling: stack profilerを利用した改善 ・ Analysis: あえてアプリケーションをクラッシュさせて指標を得るpost-mortemの考え方 などの観点で、実際にコードを診断してみます。 -Node.jsではどのような診断方法が用意・検討されているのか、最新動向を追ってみます。


    +Node.jsではどのような診断方法が用意・検討されているのか、最新動向を追ってみます。

    +
    - +

    +
  • Room B 2018-11-23T04:30:00.000Z
    - State of SEO for SPA SPAを作る人ならきっと向き合ったことがあるであろう課題、SEO対策。 +

    State of SEO for SPA

    +

    SPAを作る人ならきっと向き合ったことがあるであろう課題、SEO対策。 昨年からPrerenderなどそれ専用のソリューションが出たり、Gatsbyjsなどの静的サイトジェネレータの隆盛もあり、取れる打ち手が増えてきましたが、世間には未だに曖昧な論拠に基づいた「SSR必要論」ないし「SSR不要論」が溢れています。 -このトークでは「SEO対策」とは具体的になにを指すのか、SPAでSEO対策をする際の打ち手やそれぞれのメリット・デメリットはなにかを解説します。


    +このトークでは「SEO対策」とは具体的になにを指すのか、SPAでSEO対策をする際の打ち手やそれぞれのメリット・デメリットはなにかを解説します。

    +
    - +

    +
  • Room B 2018-11-23T05:15:00.000Z
    - React におけるパフォーマンスチューニング React で作成された大規模SPAにおいて,再レンダリングの最適化をはじめとした パフォーマンスチューニング -や ボトルネックの発見方法,具体的な改善事例について
    +

    React におけるパフォーマンスチューニング

    +

    React で作成された大規模SPAにおいて,再レンダリングの最適化をはじめとした パフォーマンスチューニング +や ボトルネックの発見方法,具体的な改善事例について

    +
    - +

    +
  • Room B 2018-11-23T05:45:00.000Z
    - WebアプリをNativeアプリにする Capacitor が広げるWebの可能性 iOS/Androidアプリ開発でHTML5アプリが候補にあがると必ず言われる「でも、遅いでしょ?」。Webの進化はすでにそれを過去のものに変えようとしており、自由度が高く表現豊かなアプリをつくることができます。アプリ人材の不足が叫ばれますが、フロントエンド界隈には多くの潜在人材がいます。 +

    WebアプリをNativeアプリにする Capacitor が広げるWebの可能性

    +

    iOS/Androidアプリ開発でHTML5アプリが候補にあがると必ず言われる「でも、遅いでしょ?」。Webの進化はすでにそれを過去のものに変えようとしており、自由度が高く表現豊かなアプリをつくることができます。アプリ人材の不足が叫ばれますが、フロントエンド界隈には多くの潜在人材がいます。 -このセッションでは、HTML5アプリの歴史と技術、パフォーマンスと「今」を整理します。


    +このセッションでは、HTML5アプリの歴史と技術、パフォーマンスと「今」を整理します。

    +
    - +

    +
  • Room B 2018-11-23T06:30:00.000Z
    - 実践GraphQL for クライアント側 最近よく話題にあがるgraphqlを業務で使っているのでその話をしようと思います。 +

    実践GraphQL for クライアント側

    +

    最近よく話題にあがるgraphqlを業務で使っているのでその話をしようと思います。 graphqlは我々の持っていたどんな課題を解決してくれると望んで採用したのか? 採用してどうだったのか? graphqlを利用するクライアントサイド側からの視点強めで話をしていきたいと思います。 -話題のelmだったのでその話も少し添えて


    +話題のelmだったのでその話も少し添えて

    +
    - +

    +
  • Room B 2018-11-23T07:00:00.000Z
    - Service Workerを用いたキャッシング戦略 〜Wikiアプリケーションを例に〜 ユーザーによってコンテンツが頻繁に更新されるようなウェブサービスにService Workerを導入して、ローカルに持てるリソースを徐々に増やし活用していく取り組みについてお話します。Nota Inc.で開発・運営する +

    Service Workerを用いたキャッシング戦略 〜Wikiアプリケーションを例に〜

    +

    ユーザーによってコンテンツが頻繁に更新されるようなウェブサービスにService Workerを導入して、ローカルに持てるリソースを徐々に増やし活用していく取り組みについてお話します。Nota Inc.で開発・運営する Scrapbox という、サーバーサイドにNode.js (Express, Socket.IO)、クライアントサイドにReactを使用したフルJavaScript実装なWikiアプリでの具体例を示しつつ、他のサービスでも汎用的に採用できるキャッシング戦略を紹介します。 ネットワーク接続状況に依らずに記事ページの表示や編集を可能にすることを目指して私達が選択した、以下のような手法を取り上げる予定です。 @@ -336,39 +398,45 @@ ・ リンクをmouseoverした際のページコンテンツのprefetch ・ ページコンテンツのキャッシュに関する検討中のアイデアなど -また、キャッシュされたリソース間でのバージョンの不整合を防ぐ仕組みや、これらの有効期限の設定など、運用において気を付けている事柄と対応についても共有します。


    +また、キャッシュされたリソース間でのバージョンの不整合を防ぐ仕組みや、これらの有効期限の設定など、運用において気を付けている事柄と対応についても共有します。

    +
    - +

    +
  • Room B 2018-11-23T07:45:00.000Z
    - 貢献できるOSSの見つけ方 -完結編- Contributionを期待するメンテナと、OSSに貢献したいがどうしたら良いかわからない大多数のエンジニア。 +

    貢献できるOSSの見つけ方 -完結編-

    +

    Contributionを期待するメンテナと、OSSに貢献したいがどうしたら良いかわからない大多数のエンジニア。 この期待値のギャップと、貢献したいが誰が何を求めているのかわからないという情報の不透明性をContribution Accessibilityと本トークでは呼び、解決したい課題と位置づけます。 Contribution Accessibilityを解消する一助として開発した goofi というツールをご紹介します。 また、同ツールはTypeScript, React, Next.js, GraphQLなどのJavaScript周辺技術を使用しているため、これらの技術要素の選定理由や使用しての所感・考察もお伝えします。 -上記課題はスピーカー自身が感じていたものでもありました。そのためスピーカー自身が同ツールを利用して実際にcontributionすることができるようになった例についてお話します。


    +上記課題はスピーカー自身が感じていたものでもありました。そのためスピーカー自身が同ツールを利用して実際にcontributionすることができるようになった例についてお話します。

    +
    - Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. +

    Masato Ohba is currently an engineering manager at Quipper and works for StudySapuri, which is one of the most popular education services in Japan. He mainly develops web applications with Ruby on Rails and single page applications written in React. -Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup. +Besides his work, he recently started organizing an event and a community named Engineering Manager Meetup.

    +
  • Room B 2018-11-23T08:15:00.000Z
    - Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ・バトル・アプリ スマートフォンやタブレット向けのモバイルアプリは PWA (Progressive Web Apps) による Web 技術を使った形態が期待されてきています。 +

    Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ・バトル・アプリ

    +

    スマートフォンやタブレット向けのモバイルアプリは PWA (Progressive Web Apps) による Web 技術を使った形態が期待されてきています。 私たちは、全国規模で行われるモバイル・アプリ開発ハッカソンの予選で、あえてPWAアーキテクチャにこだわって開発し優秀賞を受賞しました。 わずか 24時間という開発期間で、リアルタイムな動画配信を使ったラップのバトルと観戦が同時に行え、観戦者がリアルタイムにフィードバック・エフェクトを返せるアプリを、通常5人チームのところ 3人の少人数で作り上げています。 モバイルアプリのハッカソンとしてネイティブ系開発チームが並み居る中で、唯一 PWA を 武器に戦い 受賞できたのは、Vue.js/Nuxt.js の 活用があったからといって過言ではないでしょう。 @@ -378,13 +446,15 @@ 本セッションでは Vue.js/Nuxt.js で PWA の リアルタイム動画ラップ・バトル・アプリ を いかにして作り上げたのか、どのように活用したのか、Vue.js/Nuxt.js の 技術を、デモを交えて ご紹介します。 ・ PWA(Progressive Web Apps) の 概要 ・ Vue.js/Nuxt.js を 使った PWA な モバイルアプリ の 開発手法 -・ GitHub、CircleCI、GitHuba Pages を 使った 常にアクセス可能なプロトタイプ環境を持つ PWA アプリ開発環境


    +・ GitHub、CircleCI、GitHuba Pages を 使った 常にアクセス可能なプロトタイプ環境を持つ PWA アプリ開発環境

    +
    - +

    +
  • @@ -393,7 +463,9 @@
  • Room C 2018-11-23T01:45:00.000Z
    - JSなんでもお悩み相談室
    +

    JSなんでもお悩み相談室

    +

    +
  • @@ -403,7 +475,9 @@
  • Room D 2018-11-23T01:45:00.000Z
    - 無限LT部屋
    +

    無限LT部屋

    +

    +
  • @@ -413,121 +487,145 @@
  • Room E 2018-11-23T01:45:00.000Z
    - How I made critical code run much faster I have this critical piece of code. It has to run fast otherwise my clients complain. Also it is synchronous so I want it to have a small impact on the performance of the applications. This is the story of how I spent a week to gain microseconds in some very critical piece of code.
    +

    How I made critical code run much faster

    +

    I have this critical piece of code. It has to run fast otherwise my clients complain. Also it is synchronous so I want it to have a small impact on the performance of the applications. This is the story of how I spent a week to gain microseconds in some very critical piece of code.

    +
    - Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance. +

    Vladimir is an active contributor of the Node.js project especially in the Security Working Group. He has been leading the ecosystem security initiative in the WG. He has been publishing multiple articles regarding Node.js security and performance.

    +
  • Room E 2018-11-23T02:15:00.000Z
    - Accessibility vs latest Web APIs. Can’t we just get along? Unfortunately, we still treat accessibility in the same way we deal with front-end development for older browsers, something to be done at the end. What if I tell you that we can use the latest Web APIs and still offer an inclusive and accessible experience. +

    Accessibility vs latest Web APIs. Can’t we just get along?

    +

    Unfortunately, we still treat accessibility in the same way we deal with front-end development for older browsers, something to be done at the end. What if I tell you that we can use the latest Web APIs and still offer an inclusive and accessible experience. -In this talk, you'll learn how to combine Web APIs such as Speech Recognition and Geolocation, with performant Javascript techniques to create empathic user interfaces.


    +In this talk, you'll learn how to combine Web APIs such as Speech Recognition and Geolocation, with performant Javascript techniques to create empathic user interfaces.

    +
    - A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. +

    A self-educated UI Developer working at SinnerSchrader. As part of the product engineering team, he works as a proxy between the design and engineering teams. You’ll find him in that sweet spot where art meets science. Using technology to craft user-centric experiences. -He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. +He’s currently also leading the educational program module 'Modern Software Development' at SinnerSchrader. -He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur. +He is also the co-founder of Woodlike Ocean and an engaged social entrepreneur.

    +
  • Room E 2018-11-23T04:00:00.000Z
    - A trillion points with Node.js I will be presenting our progress of using DAT to create a open-source visualization system for very large point-cloud data sets. This visualization system is entirely built on JavaScript and can enable new ways how we share and use data.
    +

    A trillion points with Node.js

    +

    I will be presenting our progress of using DAT to create a open-source visualization system for very large point-cloud data sets. This visualization system is entirely built on JavaScript and can enable new ways how we share and use data.

    +
    - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. +

    Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community.

    +
  • Room E 2018-11-23T04:30:00.000Z
    - Navi: painless routing for React Navi is a new kind of router: as your app's URL changes, it starts fetching the new URL's content, and then it *waits*. It then renders the page *once the content has loaded*. +

    Navi: painless routing for React

    +

    Navi is a new kind of router: as your app's URL changes, it starts fetching the new URL's content, and then it *waits*. It then renders the page *once the content has loaded*. -Delayed rendering makes routing simpler. Instead of manually managing component state and loading spinners, you just assign URLs to content using `async`/`await` and `import()`. Navi does the rest -- it fetches your content, manages your page's `<title>` and scroll position, and even warns you about broken links! +Delayed rendering makes routing simpler. Instead of manually managing component state and loading spinners, you just assign URLs to content using `async`/`await` and `import()`. Navi does the rest -- it fetches your content, manages your page's `&lt;title&gt;` and scroll position, and even warns you about broken links! -In this talk, I'll introduce Navi, and use it to live code a static website with create-react-app.


    +In this talk, I'll introduce Navi, and use it to live code a static website with create-react-app.

    +
    - Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process! +

    Hi! I've been playing with JavaScript for over half my life, and I'm building Frontend Armory to help share what I've learned in the process!

    +
  • Room E 2018-11-23T05:15:00.000Z
    - Node.jsアプリの開発をモダン化するために取り組んできたこと ビットバンク株式会社では仮想通貨取引所 bitbank.cc を開発・運営しております。 +

    Node.jsアプリの開発をモダン化するために取り組んできたこと

    +

    ビットバンク株式会社では仮想通貨取引所 bitbank.cc を開発・運営しております。 お客様や取引量の増加に伴い、サーバーサイドアプリケーションの要求水準も高まるばかりです。 -このトークでは超少人数でメンテされていたNode.jsバージョン6のアプリケーションの開発をモダン化する過程での取り組み(ローカル開発環境の刷新、TypeScriptの採用と新規フレームワークの導入、AWSのインフラ構成変更など)について、背景や実際の進め方を踏まえてお話をさせて頂くことで、開発手法や環境構築に悩んでいる人の助けになれればと思います。


    +このトークでは超少人数でメンテされていたNode.jsバージョン6のアプリケーションの開発をモダン化する過程での取り組み(ローカル開発環境の刷新、TypeScriptの採用と新規フレームワークの導入、AWSのインフラ構成変更など)について、背景や実際の進め方を踏まえてお話をさせて頂くことで、開発手法や環境構築に悩んでいる人の助けになれればと思います。

    +
    - +

    +
  • Room E 2018-11-23T05:45:00.000Z
    - ブロックチェーンアプリケーション開発でのJavascriptの話 ブロックチェーンアプリケーション、DApps開発(Ethereum)をする上でのJavascript、フロントエンドの話
    +

    ブロックチェーンアプリケーション開発でのJavascriptの話

    +

    ブロックチェーンアプリケーション、DApps開発(Ethereum)をする上でのJavascript、フロントエンドの話

    +
    - +

    +
  • Room E 2018-11-23T06:30:00.000Z
    - Angular Universal on Google App Engine 今年の6月からNode.jsがサポートされたGoogle App Engine Standard Environmentで、Angularアプリケーションをserver-side rendering (SSR)した事例についてご紹介します。 +

    Angular Universal on Google App Engine

    +

    今年の6月からNode.jsがサポートされたGoogle App Engine Standard Environmentで、Angularアプリケーションをserver-side rendering (SSR)した事例についてご紹介します。 Angular UniversalはAngularでSSRを可能にするためのプロジェクトであり、今回のアプリケーションはこのプロジェクトが提供するツールを利用しています。現時点で公式ドキュメントがあまり充実していないため、実際にアプリケーション開発を進める中で得られた知見を共有することで、その部分を補ればと思います。たとえば、開発中にローカルでファイルをwatchしながらSSRする方法や、サーバサイドで取得した状態をクライアントサイドに伝播する方法などが含まれます。 -また、Angular Universalでは未提供の、必要なリソースをHTTP/2 Server Pushする機能を独自に実装し(ようとし)たお話もする予定です。


    +また、Angular Universalでは未提供の、必要なリソースをHTTP/2 Server Pushする機能を独自に実装し(ようとし)たお話もする予定です。

    +
    - +

    +
  • Room E 2018-11-23T07:00:00.000Z
    - React + Apollo Client (GraphQL) により変化するアプリケーション設計 GraphQL を利用した Web アプリケーション開発において、Apollo Client を導入することによりクライアントの設計は大きく変化します。コードはより容易に簡素化され、関心事の分離という観点からも GraphQL を導入するメリットをより大きくしてくれます。 -このトークでは Apollo についてや、それによってどのようにクライアントの設計が変わってくるのかという話をしたいと思います。
    +

    React + Apollo Client (GraphQL) により変化するアプリケーション設計

    +

    GraphQL を利用した Web アプリケーション開発において、Apollo Client を導入することによりクライアントの設計は大きく変化します。コードはより容易に簡素化され、関心事の分離という観点からも GraphQL を導入するメリットをより大きくしてくれます。 +このトークでは Apollo についてや、それによってどのようにクライアントの設計が変わってくるのかという話をしたいと思います。

    +
    - +

    +
  • @@ -540,7 +638,9 @@
  • Room A 2018-11-24T01:00:00.000Z
    - Doors Open
    +

    Doors Open

    +

    +
  • @@ -548,7 +648,9 @@
  • Room A 2018-11-24T01:30:00.000Z
    - Node/JS Discussion
    +

    Node/JS Discussion

    +

    +
  • @@ -556,7 +658,9 @@
  • Room A 2018-11-24T04:00:00.000Z
    - Node/W3C Discussion
    +

    Node/W3C Discussion

    +

    +
  • @@ -564,20 +668,25 @@
  • Room A 2018-11-24T06:00:00.000Z
    - Code And Learn Code & Learn events allow you to get started (or go further) with Node.js core contributions. Experienced contributors help guide you through your first (or second or third or fourth) commit to Node.js core. They also are available to provide impromptu guided tours through specific areas of Node.js core source code.
    +

    Code And Learn

    +

    Code & Learn events allow you to get started (or go further) with Node.js core contributions. Experienced contributors help guide you through your first (or second or third or fourth) commit to Node.js core. They also are available to provide impromptu guided tours through specific areas of Node.js core source code.

    +
    - +

    +
  • Room A 2018-11-24T08:00:00.000Z
    - Lightning Talks
    +

    Lightning Talks

    +

    +
  • @@ -585,7 +694,9 @@
  • Room A 2018-11-24T09:15:00.000Z
    - After Party
    +

    After Party

    +

    +
  • @@ -595,13 +706,16 @@
  • Room B 2018-11-24T01:30:00.000Z
    - NodeSchool
    +

    NodeSchool

    +

    +
    - +

    +
  • @@ -610,7 +724,9 @@
  • Room C 2018-11-24T01:30:00.000Z
    - Collaboration Space
    +

    Collaboration Space

    +

    +
  • @@ -620,37 +736,43 @@
  • Room D 2018-11-24T01:30:00.000Z
    - Workshop: Building hardware
    +

    Workshop: Building hardware

    +

    +
    - +

    +
  • Room D 2018-11-24T06:00:00.000Z
    - Workshop: Hands-On React An accelerated workshop to get your hands dirty with React. We'll cover the following topics: +

    Workshop: Hands-On React

    +

    An accelerated workshop to get your hands dirty with React. We'll cover the following topics: ・ Difference between framework and a library -・ What's special about React? +・ What's special about React? ・ Non-React things like Babel and transpilation -・ React components & JSX +・ React components & JSX ・ React component Lifecycle ・ State management ・ React patterns ・ State vs stateless components -This workshop is best for developers who have never used React or have only used it a little and want to gain deeper understanding.


    +This workshop is best for developers who have never used React or have only used it a little and want to gain deeper understanding.

    +
    - Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College. +

    Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College.

    +
  • @@ -659,7 +781,8 @@
  • Room E 2018-11-24T01:30:00.000Z
    - ワークショップ: 分散ストレージ体験 このワークショップは日本語で行われます。 +

    ワークショップ: 分散ストレージ体験

    +

    このワークショップは日本語で行われます。 分散ストレージはデータ保存やデータ利用に関するエキサイティングで新たな方法です。DAT プロジェクトのよく出来た Node.js 版ライブラリを利用することで、私たちは DAT を使った分散ストレージを体験できます。このワークショップではツールやコードを用いた @@ -668,51 +791,59 @@ ワークショップのゴール: ・ DAT を使ってホームページを作って公開する。 ・ その ホームページを Beaker Browser で見てやりとりする。 -・ Node.js を使って DAT をリモートプロセスでやりとりする。


    +・ Node.js を使って DAT をリモートプロセスでやりとりする。

    +
    - Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community. +

    Martin has been freelance OSS developer from Austria living in Osaka, Japan for many years. For several years now he focuses on Node.js as his main development platform and is an active member of the Osakan developer community.

    +
  • Room E 2018-11-24T04:00:00.000Z
    - Workshop: Building a Small Compiler in JavaScript "Compilers" are usually-mysterious things that a lot of us actually use and rely on from day to day, eg. the JavaScript V8 compiler, the TypeScript compiler, or the Clang+LLVM compilers. Digging into how these work can be satisfying (like sleuthing a good puzzle); but some of the ways we implement them can appear in other forms, such as when validating user input, transforming big structures, or when separating side-effects from business logic. +

    Workshop: Building a Small Compiler in JavaScript

    +

    "Compilers" are usually-mysterious things that a lot of us actually use and rely on from day to day, eg. the JavaScript V8 compiler, the TypeScript compiler, or the Clang+LLVM compilers. Digging into how these work can be satisfying (like sleuthing a good puzzle); but some of the ways we implement them can appear in other forms, such as when validating user input, transforming big structures, or when separating side-effects from business logic. -This workshop is comprised of a short talk that introduces the main parts of a compiler, followed by an at-your-own-pace tour through building a little one of your own. We'll start with a simple language that compiles to JavaScript. +This workshop is comprised of a short talk that introduces the main parts of a compiler, followed by an at-your-own-pace tour through building a little one of your own. We'll start with a simple language that compiles to JavaScript. -We'll be stepping through: +We'll be stepping through: ・ Tokenising (taking a string and turning it into a bunch of symbols), ・ Token Parsing (taking these symbols and turning it into a representation of a program), and ・ Code Generating (taking that representation and turning it into, in this case, JavaScript). -This workshop is for people who are already somewhat familiar with JavaScript (just the language itself, not any particular library or framework). To get started, you only need the workshop git repository (TBA), a Terminal / Console, Node.js 8+, and a text editor of your choice.


    +This workshop is for people who are already somewhat familiar with JavaScript (just the language itself, not any particular library or framework). To get started, you only need the workshop git repository (TBA), a Terminal / Console, Node.js 8+, and a text editor of your choice.

    +
    - Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. +

    Rob is a web developer from sunny Australia, who currently switches between JavaScript, Elixir, Ruby and Haskell. Having so far made a career from learning and mixing the nice parts from different programming languages, he wants nothing more than to help different programming communities to learn more from each other and become more welcoming for newcomers. -If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage. +If you're a fan of essay-length tweet threads, he's on Twitter (and most other things) as @damncabbage.

    +
  • Room E 2018-11-24T06:00:00.000Z
    - Workshop: JavaScript TodoMVC
    +

    Workshop: JavaScript TodoMVC

    +

    +
    - +

    +
  • diff --git a/2018/src/html/page.ejs b/2018/src/html/page.ejs index 1efaf69..4f5f45a 100644 --- a/2018/src/html/page.ejs +++ b/2018/src/html/page.ejs @@ -27,8 +27,8 @@ var page = { <%- room-%> <%-entry.start-%>
    - <%- entry.summary -%> - <%- entry.description -%> +

    <%= entry.summary %>

    +

    <%= entry.description %>


    <% if(entry.person){%> @@ -36,7 +36,7 @@ var page = { <% if (speaker) { const bio = speaker.biography %> <% if(speaker){%> - <%- bio-%> +

    <%= bio %>

    <%}%> <%} %> From a33f6bb7f3c67e625820775cbc5aff953475329a Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 19:33:16 +0900 Subject: [PATCH 06/39] Added slots and used hh function to format start and end times --- 2018/page.html | 193 +++++++++++++++++++++++++++++++---------- 2018/src/html/page.ejs | 11 ++- 2 files changed, 154 insertions(+), 50 deletions(-) diff --git a/2018/page.html b/2018/page.html index 5beaef6..7b8420e 100644 --- a/2018/page.html +++ b/2018/page.html @@ -15,7 +15,9 @@
  • - Room A 2018-11-23T01:00:00.000Z
    + +

    Room A 10:00 - 10:30

    +

    Doors Open


    @@ -25,7 +27,9 @@

    Doors Open

  • - Room A 2018-11-23T01:30:00.000Z
    + +

    Room A 10:30 - 10:45

    +

    Keynote


    @@ -35,7 +39,9 @@

    Keynote

  • - Room A 2018-11-23T01:45:00.000Z
    + +

    Room A 10:45 - 11:15

    +

    Look What You MIDI Me Do!

    Who loves pushing buttons? You? And you over there? And the person behind you? Oh wait, everyone loves it?!!? Of course they do, a button is irresistible. Now… what if I told you that you could hook up a LOT of buttons to your computer… and use it to do wild things with the web? I’m glad you’re listening! Let’s take a journey into the Web MIDI api where the possibilities of the web aren’t just at your keyboard fingertips anymore, they’re literally any MIDI compatible controller you have connected! Want to make glitchy audio responsive visuals with WebGL shaders? Rad, we can do that. Want to create custom beats and have those input as a drum machine? No problem when you throw a little Web Audio API in the mix. Let’s dive in and find out how!


    @@ -51,7 +57,9 @@

    Look What You MIDI Me Do!

  • - Room A 2018-11-23T02:15:00.000Z
    + +

    Room A 11:15 - 11:45

    +

    Node.js: The Road to Workers

    Workers, and threading support in general, have been one of the most frequently requested features for Node.js over the last years. Finally, the finishing line is in sight and we’re pretty excited to have experimental support available! This talk will tell you everything around the API, features, use cases & alternatives, our roadmap, and the technical and social challenges that we had to overcome to make it happen!


    @@ -67,7 +75,9 @@

    Node.js: The Road to Workers

  • - Room A 2018-11-23T04:00:00.000Z
    + +

    Room A 13:00 - 13:30

    +

    JavaScript Class Features: A case study in TC39

    ES6 classes were intentionally minimal, containing only public method declarations. Now, TC39 is considering adding several other features to classes: private, fields, and decorators. In this talk, we'll see how these proposals work in detail, the process that got them there, and how you can get involved. TC39 needs your help to build features like these and the future of JavaScript.


    @@ -83,7 +93,9 @@

    JavaScript Class Features: A case study in TC39

  • - Room A 2018-11-23T04:30:00.000Z
    + +

    Room A 13:30 - 14:00

    +

    Who Takes Out Your Trash

    In our daily development lives, most of us don’t have to worry about unused objects gathering cobwebs and filling up the memory. All we need to know is that our language has a garbage collector that just comes by and makes our trash disappear. Somehow it figures out what should stay and what can go, our program can keep going without running out of space, and we don’t have to do a thing. @@ -103,7 +115,9 @@

    Who Takes Out Your Trash

  • - Room A 2018-11-23T05:15:00.000Z
    + +

    Room A 14:15 - 14:45

    +

    libuv: What's a Unicorn Velociraptor?

    libuv is what gives Node.js its event loop and cross-platform asynchronous I/O capabilities. This talk explains what libuv is all about, and how it's used by Node.js. This talk also looks at recent development efforts in the libuv project.


    @@ -119,7 +133,9 @@

    libuv: What's a Unicorn Velociraptor?

  • - Room A 2018-11-23T05:45:00.000Z
    + +

    Room A 14:45 - 15:15

    +

    Leak Hunting: Finding and debugging a memory leak in Node.js

    Performance metrics? Response time higher? Memory leak? We would walk through different memory leak situations to identify and analyze patterns that produce an increase of memory, CPU usage, and the load average over time, without any apparent reason. We'll start talking about taking the time to set up a proper test environment to repeat the exact same conditions as in production. Then we'll discuss how to access Node.js memory using V8 Inspector & Chrome Dev Tools, create a dump of the heap memory for the inspected application, with a lot of details about the memory usage, watching memory allocation in real time and finally a compilation of best practices about how we could end fixing the memory leak. In the end, we'll be able to use the right tools to monitor, understand, and debug the memory consumption of a Node.js application on time.


    @@ -135,7 +151,9 @@

    Leak Hunting: Finding and debugging a memory leak in Node.js

  • - Room A 2018-11-23T06:30:00.000Z
    + +

    Room A 15:30 - 16:00

    +

    Offline-First Collaborative Data Structures

    The web is growing bigger and bigger every year. With the increasing rise of the mobile internet and @@ -167,7 +185,9 @@

    Offline-First Collaborative Data Structures

  • - Room A 2018-11-23T07:00:00.000Z
    + +

    Room A 16:00 - 16:30

    +

    Visualizing the Decentralized Web

    A new generation of peer-to-peer protocols is coming to the web. Browsers will soon be able to talk directly to each other, without the need for centralized servers. Exciting new applications and social networks are being created which put people back in control of their personal data. See how IPFS, the Dat Protocol and Secure Scuttlebutt work. This presentation will use interactive visualizations to demonstrate core concepts.


    @@ -183,7 +203,9 @@

    Visualizing the Decentralized Web

  • - Room A 2018-11-23T07:45:00.000Z
    + +

    Room A 16:45 - 17:15

    +

    Real-Time Machine Learning in JavaScript

    Real-time machine learning is a collection of statistical methods to obtain insights from continuous data streams. In this talk, I'll provide an overview of real-time machine learning algorithms and discuss how these algorithms can be implemented and used in JavaScript. I'll highlight why running these algorithms in JavaScript has several advantages compared to languages traditionally used for numerical computing, including the ability to perform client-side computations. I'll conclude by discussing best-practices and common pitfalls encountered when using machine learning algorithms within JavaScript environments.


    @@ -199,7 +221,9 @@

    Real-Time Machine Learning in JavaScript

  • - Room A 2018-11-23T08:15:00.000Z
    + +

    Room A 17:15 - 17:45

    +

    Haute Codeture

    What if, instead going for practicality, we used IoT to create fleeting moments of interaction and beauty? What would happen if others could interact with my clothing via a web app? I’ll share my story of how I got started with hardware and how it’s evolved into using fashion to create interactive, artistic experiences with strangers.


    @@ -215,7 +239,9 @@

    Haute Codeture

  • - Room A 2018-11-23T09:00:00.000Z
    + +

    Room A 18:00 - 18:30

    +

    Sponsor Talk


    @@ -225,7 +251,9 @@

    Sponsor Talk

  • - Room A 2018-11-23T09:30:00.000Z
    + +

    Room A 18:30 - 19:45

    +

    Lightning Talks


    @@ -235,7 +263,9 @@

    Lightning Talks

  • - Room A 2018-11-23T11:15:00.000Z
    + +

    Room A 20:15 - 22:00

    +

    After Party


    @@ -247,7 +277,9 @@

    After Party

  • - Room B 2018-11-23T01:45:00.000Z
    + +

    Room B 10:45 - 11:15

    +

    Javascript で機械学習はじめよう

    Javascript で機械学習する時代が本格的にやってきた。 機械学習プロジェクトとなると、今までは Python や R などのプログラミング言語で記述することが多かった。しかし、最近 TensorFlow.js をはじめとする 機械学習のための Javascript ライブラリが登場しはじめたことにより、その状況は変わりつつある。Javascript で機械学習を記述することによって、ウェブサーバとの通信を必要としないウェブブラウザ上での学習・推論や、クライアントの GPU の活用など、さまざまなメリットを享受できる。 @@ -265,7 +297,9 @@

    Javascript で機械学習はじめよう

  • - Room B 2018-11-23T02:15:00.000Z
    + +

    Room B 11:15 - 11:45

    +

    Node.jsでつくるNode.js ミニインタープリター&コンパイラー

    「RubyでつくるRuby ゼロから学びなおすプログラミング言語入門」という書籍に感銘を受けて、自分でもミニNode.js インタープリターを作ってみました。それを通して変数や関数のスコープについてより深く理解することができました。 さらに以前から気になっていたLLVMを使って、バイナリを生成するミニコンパイラにもチャレンジしています。 @@ -285,7 +319,9 @@

    Node.jsでつくるNode.js ミニインタープリター&コンパイラ
  • - Room B 2018-11-23T04:00:00.000Z
    + +

    Room B 13:00 - 13:30

    +

    Diagnose your Node.js app

    想定対象者: Node.js初学者(≠プログラミング初心者)から中級者まで @@ -312,7 +348,9 @@

    Diagnose your Node.js app

  • - Room B 2018-11-23T04:30:00.000Z
    + +

    Room B 13:30 - 14:00

    +

    State of SEO for SPA

    SPAを作る人ならきっと向き合ったことがあるであろう課題、SEO対策。 @@ -332,7 +370,9 @@

    State of SEO for SPA

  • - Room B 2018-11-23T05:15:00.000Z
    + +

    Room B 14:15 - 14:45

    +

    React におけるパフォーマンスチューニング

    React で作成された大規模SPAにおいて,再レンダリングの最適化をはじめとした パフォーマンスチューニング や ボトルネックの発見方法,具体的な改善事例について

    @@ -349,7 +389,9 @@

    React におけるパフォーマンスチューニング

  • - Room B 2018-11-23T05:45:00.000Z
    + +

    Room B 14:45 - 15:15

    +

    WebアプリをNativeアプリにする Capacitor が広げるWebの可能性

    iOS/Androidアプリ開発でHTML5アプリが候補にあがると必ず言われる「でも、遅いでしょ?」。Webの進化はすでにそれを過去のものに変えようとしており、自由度が高く表現豊かなアプリをつくることができます。アプリ人材の不足が叫ばれますが、フロントエンド界隈には多くの潜在人材がいます。 @@ -367,7 +409,9 @@

    WebアプリをNativeアプリにする Capacitor が広げるWebの可能
  • - Room B 2018-11-23T06:30:00.000Z
    + +

    Room B 15:30 - 16:00

    +

    実践GraphQL for クライアント側

    最近よく話題にあがるgraphqlを業務で使っているのでその話をしようと思います。 graphqlは我々の持っていたどんな課題を解決してくれると望んで採用したのか? @@ -387,7 +431,9 @@

    実践GraphQL for クライアント側

  • - Room B 2018-11-23T07:00:00.000Z
    + +

    Room B 16:00 - 16:30

    +

    Service Workerを用いたキャッシング戦略 〜Wikiアプリケーションを例に〜

    ユーザーによってコンテンツが頻繁に更新されるようなウェブサービスにService Workerを導入して、ローカルに持てるリソースを徐々に増やし活用していく取り組みについてお話します。Nota Inc.で開発・運営する Scrapbox という、サーバーサイドにNode.js (Express, Socket.IO)、クライアントサイドにReactを使用したフルJavaScript実装なWikiアプリでの具体例を示しつつ、他のサービスでも汎用的に採用できるキャッシング戦略を紹介します。 @@ -412,7 +458,9 @@

    Service Workerを用いたキャッシング戦略 〜Wikiアプリケーシ
  • - Room B 2018-11-23T07:45:00.000Z
    + +

    Room B 16:45 - 17:15

    +

    貢献できるOSSの見つけ方 -完結編-

    Contributionを期待するメンテナと、OSSに貢献したいがどうしたら良いかわからない大多数のエンジニア。 この期待値のギャップと、貢献したいが誰が何を求めているのかわからないという情報の不透明性をContribution Accessibilityと本トークでは呼び、解決したい課題と位置づけます。 @@ -434,7 +482,9 @@

    貢献できるOSSの見つけ方 -完結編-

  • - Room B 2018-11-23T08:15:00.000Z
    + +

    Room B 17:15 - 17:45

    +

    Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ・バトル・アプリ

    スマートフォンやタブレット向けのモバイルアプリは PWA (Progressive Web Apps) による Web 技術を使った形態が期待されてきています。 私たちは、全国規模で行われるモバイル・アプリ開発ハッカソンの予選で、あえてPWAアーキテクチャにこだわって開発し優秀賞を受賞しました。 @@ -462,7 +512,9 @@

    Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ
  • - Room C 2018-11-23T01:45:00.000Z
    + +

    Room C 10:45 - 17:45

    +

    JSなんでもお悩み相談室


    @@ -474,7 +526,9 @@

    JSなんでもお悩み相談室

  • - Room D 2018-11-23T01:45:00.000Z
    + +

    Room D 10:45 - 17:45

    +

    無限LT部屋


    @@ -486,7 +540,9 @@

    無限LT部屋

  • - Room E 2018-11-23T01:45:00.000Z
    + +

    Room E 10:45 - 11:15

    +

    How I made critical code run much faster

    I have this critical piece of code. It has to run fast otherwise my clients complain. Also it is synchronous so I want it to have a small impact on the performance of the applications. This is the story of how I spent a week to gain microseconds in some very critical piece of code.


    @@ -502,7 +558,9 @@

    How I made critical code run much faster

  • - Room E 2018-11-23T02:15:00.000Z
    + +

    Room E 11:15 - 11:45

    +

    Accessibility vs latest Web APIs. Can’t we just get along?

    Unfortunately, we still treat accessibility in the same way we deal with front-end development for older browsers, something to be done at the end. What if I tell you that we can use the latest Web APIs and still offer an inclusive and accessible experience. @@ -524,7 +582,9 @@

    Accessibility vs latest Web APIs. Can’t we just get along?

  • - Room E 2018-11-23T04:00:00.000Z
    + +

    Room E 13:00 - 13:30

    +

    A trillion points with Node.js

    I will be presenting our progress of using DAT to create a open-source visualization system for very large point-cloud data sets. This visualization system is entirely built on JavaScript and can enable new ways how we share and use data.


    @@ -540,7 +600,9 @@

    A trillion points with Node.js

  • - Room E 2018-11-23T04:30:00.000Z
    + +

    Room E 13:30 - 14:00

    +

    Navi: painless routing for React

    Navi is a new kind of router: as your app's URL changes, it starts fetching the new URL's content, and then it *waits*. It then renders the page *once the content has loaded*. @@ -560,7 +622,9 @@

    Navi: painless routing for React

  • - Room E 2018-11-23T05:15:00.000Z
    + +

    Room E 14:15 - 14:45

    +

    Node.jsアプリの開発をモダン化するために取り組んできたこと

    ビットバンク株式会社では仮想通貨取引所 bitbank.cc を開発・運営しております。 お客様や取引量の増加に伴い、サーバーサイドアプリケーションの要求水準も高まるばかりです。 @@ -578,7 +642,9 @@

    Node.jsアプリの開発をモダン化するために取り組んできた
  • - Room E 2018-11-23T05:45:00.000Z
    + +

    Room E 14:45 - 15:15

    +

    ブロックチェーンアプリケーション開発でのJavascriptの話

    ブロックチェーンアプリケーション、DApps開発(Ethereum)をする上でのJavascript、フロントエンドの話


    @@ -594,7 +660,9 @@

    ブロックチェーンアプリケーション開発でのJavascriptの話
  • - Room E 2018-11-23T06:30:00.000Z
    + +

    Room E 15:30 - 16:00

    +

    Angular Universal on Google App Engine

    今年の6月からNode.jsがサポートされたGoogle App Engine Standard Environmentで、Angularアプリケーションをserver-side rendering (SSR)した事例についてご紹介します。 @@ -614,7 +682,9 @@

    Angular Universal on Google App Engine

  • - Room E 2018-11-23T07:00:00.000Z
    + +

    Room E 16:00 - 16:30

    +

    React + Apollo Client (GraphQL) により変化するアプリケーション設計

    GraphQL を利用した Web アプリケーション開発において、Apollo Client を導入することによりクライアントの設計は大きく変化します。コードはより容易に簡素化され、関心事の分離という観点からも GraphQL を導入するメリットをより大きくしてくれます。 このトークでは Apollo についてや、それによってどのようにクライアントの設計が変わってくるのかという話をしたいと思います。

    @@ -637,7 +707,9 @@

    React + Apollo Client (GraphQL) により変化するアプリケーショ
  • - Room A 2018-11-24T01:00:00.000Z
    + +

    Room A 10:00 - 10:30

    +

    Doors Open


    @@ -647,7 +719,9 @@

    Doors Open

  • - Room A 2018-11-24T01:30:00.000Z
    + +

    Room A 10:30 - 11:45

    +

    Node/JS Discussion


    @@ -657,7 +731,9 @@

    Node/JS Discussion

  • - Room A 2018-11-24T04:00:00.000Z
    + +

    Room A 13:00 - 15:00

    +

    Node/W3C Discussion


    @@ -667,7 +743,9 @@

    Node/W3C Discussion

  • - Room A 2018-11-24T06:00:00.000Z
    + +

    Room A 15:00 - 17:00

    +

    Code And Learn

    Code & Learn events allow you to get started (or go further) with Node.js core contributions. Experienced contributors help guide you through your first (or second or third or fourth) commit to Node.js core. They also are available to provide impromptu guided tours through specific areas of Node.js core source code.


    @@ -683,7 +761,9 @@

    Code And Learn

  • - Room A 2018-11-24T08:00:00.000Z
    + +

    Room A 17:00 - 18:00

    +

    Lightning Talks


    @@ -693,7 +773,9 @@

    Lightning Talks

  • - Room A 2018-11-24T09:15:00.000Z
    + +

    Room A 18:15 - 20:00

    +

    After Party


    @@ -705,7 +787,9 @@

    After Party

  • - Room B 2018-11-24T01:30:00.000Z
    + +

    Room B 10:30 - 17:00

    +

    NodeSchool


    @@ -723,7 +807,9 @@

    NodeSchool

  • - Room C 2018-11-24T01:30:00.000Z
    + +

    Room C 10:30 - 17:00

    +

    Collaboration Space


    @@ -735,7 +821,9 @@

    Collaboration Space

  • - Room D 2018-11-24T01:30:00.000Z
    + +

    Room D 10:30 - 15:00

    +

    Workshop: Building hardware


    @@ -751,7 +839,9 @@

    Workshop: Building hardware

  • - Room D 2018-11-24T06:00:00.000Z
    + +

    Room D 15:00 - 17:00

    +

    Workshop: Hands-On React

    An accelerated workshop to get your hands dirty with React. We'll cover the following topics: @@ -780,7 +870,9 @@

    Workshop: Hands-On React

  • - Room E 2018-11-24T01:30:00.000Z
    + +

    Room E 10:30 - 11:45

    +

    ワークショップ: 分散ストレージ体験

    このワークショップは日本語で行われます。 @@ -805,7 +897,9 @@

    ワークショップ: 分散ストレージ体験

  • - Room E 2018-11-24T04:00:00.000Z
    + +

    Room E 13:00 - 15:00

    +

    Workshop: Building a Small Compiler in JavaScript

    "Compilers" are usually-mysterious things that a lot of us actually use and rely on from day to day, eg. the JavaScript V8 compiler, the TypeScript compiler, or the Clang+LLVM compilers. Digging into how these work can be satisfying (like sleuthing a good puzzle); but some of the ways we implement them can appear in other forms, such as when validating user input, transforming big structures, or when separating side-effects from business logic. @@ -833,7 +927,9 @@

    Workshop: Building a Small Compiler in JavaScript

  • - Room E 2018-11-24T06:00:00.000Z
    + +

    Room E 15:00 - 17:00

    +

    Workshop: JavaScript TodoMVC


    @@ -851,6 +947,7 @@

    Workshop: JavaScript TodoMVC

    + diff --git a/2018/src/html/page.ejs b/2018/src/html/page.ejs index 4f5f45a..87d555c 100644 --- a/2018/src/html/page.ejs +++ b/2018/src/html/page.ejs @@ -24,8 +24,14 @@ var page = { const speaker = speakers[entry.person] %>
  • - <%- room-%> - <%-entry.start-%> + <% + const slots = cal.toSlots() + const slotClasses = new Map() + function hh (time) { + return momentTz(time).tz(slots.tz).format('H:mm') + } + %> +

    <%=`${room} ${hh(entry.start)} - ${hh(entry.end)}`%>


    <%= entry.summary %>

    <%= entry.description %>

    @@ -45,6 +51,7 @@ var page = { <% }%> <% }%> + From da8d1e4d02a33e637644137e39b68c51d33c21d3 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 19:42:53 +0900 Subject: [PATCH 07/39] Deleted pages.ejs partial because it was not needed --- 2018/src/html/_partial/pages.ejs | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 2018/src/html/_partial/pages.ejs diff --git a/2018/src/html/_partial/pages.ejs b/2018/src/html/_partial/pages.ejs deleted file mode 100644 index 141d06a..0000000 --- a/2018/src/html/_partial/pages.ejs +++ /dev/null @@ -1,7 +0,0 @@ -<% - -function hh (time) { - return momentTz(time).tz(slots.tz).format('H:mm') - } -hh(entry.start) -%> \ No newline at end of file From bde8aa982f9359759d4283aa5aad5af7f2c2fe98 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 20:50:08 +0900 Subject: [PATCH 08/39] Changed page.html and page.ejs to room --- 2018/{page.html => room.html} | 0 2018/src/html/{page.ejs => room.ejs} | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename 2018/{page.html => room.html} (100%) rename 2018/src/html/{page.ejs => room.ejs} (96%) diff --git a/2018/page.html b/2018/room.html similarity index 100% rename from 2018/page.html rename to 2018/room.html diff --git a/2018/src/html/page.ejs b/2018/src/html/room.ejs similarity index 96% rename from 2018/src/html/page.ejs rename to 2018/src/html/room.ejs index 87d555c..8da254a 100644 --- a/2018/src/html/page.ejs +++ b/2018/src/html/room.ejs @@ -1,6 +1,6 @@ <% var page = { - title: 'Page' + title: 'Room' } %> From 7e4c64fdd3ce44eb3da371fcea087fb9451a9286 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Wed, 21 Nov 2018 22:56:38 +0900 Subject: [PATCH 09/39] Added room.js and requied room.html path in main.js --- 2018/main.js | 2 +- 2018/src/js/main.js | 1 + 2018/src/js/page/room.js | 4 ++++ 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 2018/src/js/page/room.js diff --git a/2018/main.js b/2018/main.js index 3936cc2..944b6cc 100644 --- a/2018/main.js +++ b/2018/main.js @@ -1 +1 @@ -!function i(a,s,l){function u(t,e){if(!s[t]){if(!a[t]){var r="function"==typeof require&&require;if(!e&&r)return r(t,!0);if(c)return c(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var o=s[t]={exports:{}};a[t][0].call(o.exports,function(e){return u(a[t][1][e]||e)},o,o.exports,i,a,s,l)}return s[t].exports}for(var c="function"==typeof require&&require,e=0;eu&&++iu&&++i Date: Wed, 21 Nov 2018 23:27:17 +0900 Subject: [PATCH 10/39] Added a module export to room.js --- 2018/main.js | 2 +- 2018/src/js/page/room.js | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/2018/main.js b/2018/main.js index 944b6cc..0d23cd3 100644 --- a/2018/main.js +++ b/2018/main.js @@ -1 +1 @@ -!function i(a,s,l){function u(t,e){if(!s[t]){if(!a[t]){var r="function"==typeof require&&require;if(!e&&r)return r(t,!0);if(c)return c(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var o=s[t]={exports:{}};a[t][0].call(o.exports,function(e){return u(a[t][1][e]||e)},o,o.exports,i,a,s,l)}return s[t].exports}for(var c="function"==typeof require&&require,e=0;eu&&++iu&&++i Date: Thu, 22 Nov 2018 12:00:11 +0900 Subject: [PATCH 11/39] Added room navigation. --- 2018/src/html/room.ejs | 53 +++++++++++++++++++++++++++------------- 2018/src/js/page/room.js | 34 +++++++++++++++++++++++--- 2 files changed, 66 insertions(+), 21 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 8da254a..8fd7694 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -14,23 +14,41 @@ var page = { Document -
    <% for (const calName in calendar ) { - const cal = calendar[calName] - %> -
      - <% for (const room in cal.rooms) { - const entries = cal.rooms[room]%> +
      +

      Rooms

      +
        + <% + for (const calName in calendar ) { + const cal = calendar[calName] + var count = 0 + for (const room in cal.rooms) { + const entries = cal.rooms[room] + %> +
      • <%= calName %> - <%= room %>
      • <% + count += 1 + } + } + %> +
      +
      +
      + <% + for (const calName in calendar ) { + const cal = calendar[calName] + var count = 0. + for (const room in cal.rooms) { + const entries = cal.rooms[room] + %> +
        <% for (const entry of entries) { const speaker = speakers[entry.person] - %> -
      • - <% const slots = cal.toSlots() const slotClasses = new Map() function hh (time) { return momentTz(time).tz(slots.tz).format('H:mm') } %> +
      • <%=`${room} ${hh(entry.start)} - ${hh(entry.end)}`%>


        <%= entry.summary %>

        @@ -45,14 +63,15 @@ var page = {

        <%= bio %>

        <%}%> <%} %> -
      • - - <% } %> - <% }%> -
      - <% }%> - + <% + } + %> +
    <% + count += 1 + } + }%>
    - + + diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 9f823ca..745f7fe 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -1,6 +1,32 @@ var hashChange = require('../vendor/hashChange'); -module.exports = function() { -hashChange.addListener(function (hash) { - var parts = /^[\/|#]?(([^-]+)(-(.+))?)/.exec(hash);}) -}; \ No newline at end of file +module.exports = function () { + var overview = document.getElementById('rooms') + var rooms = [].slice.call(document.querySelectorAll('.room-list')) + var allParts = rooms.concat(overview) + hashChange.addListener(function (hash) { + var parts = /^[\/|#]?([^-]+)-(.+)/.exec(hash); + var day = parts && parts[1]; + var roomName = parts && parts[2]; + var selectedPart + if (day) { + var lookupId = 'list-' + day + '-' + roomName; + console.log(parts) + selectedPart = rooms.filter(function (part) { + console.log(lookupId, '...', part.id) + return part.id === lookupId; + })[0]; + } + if (!selectedPart) { + selectedPart = overview + } + console.log(allParts) + allParts.forEach(function (part) { + if (part === selectedPart) { + part.style.display = '' + } else { + part.style.display = 'none' + } + }) + }) +} From 402090c9b886d833ff97bb83734546f8a1e52fc8 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 12:43:14 +0900 Subject: [PATCH 12/39] Using proper isoString --- 2018/src/html/room.ejs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 8fd7694..77032bf 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -48,7 +48,7 @@ var page = { return momentTz(time).tz(slots.tz).format('H:mm') } %> -
  • +
  • <%=`${room} ${hh(entry.start)} - ${hh(entry.end)}`%>


    <%= entry.summary %>

    From 403d7773419655977611bf8cb4c2f2804f2d671b Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 12:44:13 +0900 Subject: [PATCH 13/39] If a room is selected, let it contain all the list entries. --- 2018/src/js/page/room.js | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 745f7fe..849158b 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -4,23 +4,26 @@ module.exports = function () { var overview = document.getElementById('rooms') var rooms = [].slice.call(document.querySelectorAll('.room-list')) var allParts = rooms.concat(overview) + rooms = rooms.map(function (roomNode) { + var entries = [].slice.call(roomNode.querySelectorAll('li')) + return { + node: roomNode, + entries: entries + } + }) hashChange.addListener(function (hash) { var parts = /^[\/|#]?([^-]+)-(.+)/.exec(hash); var day = parts && parts[1]; var roomName = parts && parts[2]; - var selectedPart + var selectedRoom if (day) { var lookupId = 'list-' + day + '-' + roomName; - console.log(parts) - selectedPart = rooms.filter(function (part) { - console.log(lookupId, '...', part.id) - return part.id === lookupId; + selectedRoom = rooms.filter(function (part) { + return part.node.id === lookupId; })[0]; } - if (!selectedPart) { - selectedPart = overview - } console.log(allParts) + var selectedPart = (selectedRoom && selectedRoom.node) || overview allParts.forEach(function (part) { if (part === selectedPart) { part.style.display = '' From e1a29e96a5646b0f85390d9bb34bd6ac982fbced Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 12:52:22 +0900 Subject: [PATCH 14/39] Added time display. --- 2018/src/js/page/room.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 849158b..ba028c2 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -1,7 +1,9 @@ var hashChange = require('../vendor/hashChange'); +var momentTz = require('moment-timezone'); module.exports = function () { var overview = document.getElementById('rooms') + var timeNode = document.getElementById('room-time') var rooms = [].slice.call(document.querySelectorAll('.room-list')) var allParts = rooms.concat(overview) rooms = rooms.map(function (roomNode) { @@ -11,11 +13,12 @@ module.exports = function () { entries: entries } }) + var selectedRoom hashChange.addListener(function (hash) { var parts = /^[\/|#]?([^-]+)-(.+)/.exec(hash); var day = parts && parts[1]; var roomName = parts && parts[2]; - var selectedRoom + selectedRoom = null if (day) { var lookupId = 'list-' + day + '-' + roomName; selectedRoom = rooms.filter(function (part) { @@ -32,4 +35,10 @@ module.exports = function () { } }) }) + function render () { + var now = momentTz(Date.now()).tz('Asia/Tokyo') + timeNode.innerText = now.format('HH:mm') + } + render() + setInterval(render, 100) } From 18f69dec069accbc3a7705fe3fe3e022449b9cab Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 12:53:10 +0900 Subject: [PATCH 15/39] Added hour/minute override to hash (to only select a certain time) --- 2018/src/js/page/room.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index ba028c2..7d803a2 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -14,10 +14,14 @@ module.exports = function () { } }) var selectedRoom + var hour + var minute hashChange.addListener(function (hash) { - var parts = /^[\/|#]?([^-]+)-(.+)/.exec(hash); + var parts = /^[\/|#]?([^-]+)-([^-]+)(-(\d{2}):(\d{2}))?/.exec(hash); var day = parts && parts[1]; var roomName = parts && parts[2]; + hour = parts && parts[4]; + minute = parts && parts[5]; selectedRoom = null if (day) { var lookupId = 'list-' + day + '-' + roomName; @@ -37,6 +41,12 @@ module.exports = function () { }) function render () { var now = momentTz(Date.now()).tz('Asia/Tokyo') + if (hour) { + now.hours(hour) + } + if (minute) { + now.minutes(minute) + } timeNode.innerText = now.format('HH:mm') } render() From 515149dc0f58053491f819936e76f792aaa8ab15 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 13:56:51 +0900 Subject: [PATCH 16/39] Showing only the list items that are relevant right now. --- 2018/src/html/room.ejs | 4 +++- 2018/src/js/page/room.js | 34 +++++++++++++++++++++++++++++++++- 2018/src/scss/main.scss | 11 +++++++++++ 3 files changed, 47 insertions(+), 2 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 77032bf..448e8e5 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -11,9 +11,11 @@ var page = { - Document + Room + +

    Rooms

      diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 7d803a2..6ba1835 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -1,6 +1,12 @@ var hashChange = require('../vendor/hashChange'); var momentTz = require('moment-timezone'); +function replaceFlag (oldNode, newNode, flag) { + oldNode && oldNode.classList.remove(flag) + newNode && newNode.classList.add(flag) + return newNode +} + module.exports = function () { var overview = document.getElementById('rooms') var timeNode = document.getElementById('room-time') @@ -8,6 +14,9 @@ module.exports = function () { var allParts = rooms.concat(overview) rooms = rooms.map(function (roomNode) { var entries = [].slice.call(roomNode.querySelectorAll('li')) + entries.forEach(function (entryNode) { + entryNode.start = momentTz(entryNode.attributes['data-start'].value).tz('Asia/Tokyo') + }) return { node: roomNode, entries: entries @@ -29,7 +38,6 @@ module.exports = function () { return part.node.id === lookupId; })[0]; } - console.log(allParts) var selectedPart = (selectedRoom && selectedRoom.node) || overview allParts.forEach(function (part) { if (part === selectedPart) { @@ -39,6 +47,11 @@ module.exports = function () { } }) }) + + var before + var after + var current + function render () { var now = momentTz(Date.now()).tz('Asia/Tokyo') if (hour) { @@ -48,6 +61,25 @@ module.exports = function () { now.minutes(minute) } timeNode.innerText = now.format('HH:mm') + if (!selectedRoom) { + return + } + var newBefore + var newCurrent + var newAfter + selectedRoom.entries.forEach(function (entryNode) { + var isBefore = entryNode.start.hours() < now.hours() || + entryNode.start.hours() === now.hours() && entryNode.start.minutes() < now.minutes() + if (isBefore) { + newBefore = newCurrent + newCurrent = entryNode + } else if(!newAfter) { + newAfter = entryNode + } + }) + current = replaceFlag(current, newCurrent, 'room-entry-current') + before = replaceFlag(before, newBefore, 'room-entry-before') + after = replaceFlag(after, newAfter, 'room-entry-after') } render() setInterval(render, 100) diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index 941816e..bb2ff44 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2738,3 +2738,14 @@ a.confcal-button-inactive { border-bottom: 4px solid $color-sunred; } } + +.room-list { + + li { + display: none; + + &.room-entry-before, &.room-entry-after, &.room-entry-current { + display: list-item; + } + } +} From ca1bdf271198e1f5d5a44fbfce542571269bbfcb Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 14:08:31 +0900 Subject: [PATCH 17/39] Added first & last closed. --- 2018/src/html/room.ejs | 4 +++- 2018/src/js/page/room.js | 18 ++++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 448e8e5..fe9c8da 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -42,6 +42,7 @@ var page = { const entries = cal.rooms[room] %>
        +
      • Closed
      • <% for (const entry of entries) { const speaker = speakers[entry.person] const slots = cal.toSlots() @@ -67,7 +68,8 @@ var page = { <%} %> <% } - %> + %> +
      • Closed
      <% count += 1 } diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 6ba1835..6677601 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -14,12 +14,18 @@ module.exports = function () { var allParts = rooms.concat(overview) rooms = rooms.map(function (roomNode) { var entries = [].slice.call(roomNode.querySelectorAll('li')) + var first = entries.shift() + var last = entries.pop() entries.forEach(function (entryNode) { - entryNode.start = momentTz(entryNode.attributes['data-start'].value).tz('Asia/Tokyo') + var start = entryNode.attributes['data-start'] + entryNode.start = momentTz(start.value).tz('Asia/Tokyo') }) + return { node: roomNode, - entries: entries + entries: entries, + first: first, + last: last } }) var selectedRoom @@ -65,18 +71,22 @@ module.exports = function () { return } var newBefore - var newCurrent - var newAfter + var newCurrent = selectedRoom.first + var newAfter = selectedRoom.entries[0] selectedRoom.entries.forEach(function (entryNode) { var isBefore = entryNode.start.hours() < now.hours() || entryNode.start.hours() === now.hours() && entryNode.start.minutes() < now.minutes() if (isBefore) { newBefore = newCurrent newCurrent = entryNode + newAfter = null } else if(!newAfter) { newAfter = entryNode } }) + if (!newAfter) { + newAfter = selectedRoom.last + } current = replaceFlag(current, newCurrent, 'room-entry-current') before = replaceFlag(before, newBefore, 'room-entry-before') after = replaceFlag(after, newAfter, 'room-entry-after') From e247b980528f98b867693fb18430511a6b5224d6 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 14:10:17 +0900 Subject: [PATCH 18/39] Performance improvement. --- 2018/src/js/page/room.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 6677601..4c452e6 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -2,6 +2,9 @@ var hashChange = require('../vendor/hashChange'); var momentTz = require('moment-timezone'); function replaceFlag (oldNode, newNode, flag) { + if (oldNode === newNode) { + return + } oldNode && oldNode.classList.remove(flag) newNode && newNode.classList.add(flag) return newNode From 0ec0498204c9c22a671c5b926783992f054eb533 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 14:14:11 +0900 Subject: [PATCH 19/39] Added breaks. --- 2018/src/html/room.ejs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index fe9c8da..b4eb416 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -43,13 +43,18 @@ var page = { %>
      • Closed
      • - <% for (const entry of entries) { + <% + var formerEnd; + for (const entry of entries) { const speaker = speakers[entry.person] const slots = cal.toSlots() const slotClasses = new Map() function hh (time) { return momentTz(time).tz(slots.tz).format('H:mm') } + if (formerEnd && entry.start > formerEnd) { %> +
      • Break
      • <% + } %>
      • <%=`${room} ${hh(entry.start)} - ${hh(entry.end)}`%>

        @@ -67,6 +72,7 @@ var page = { <%}%> <%} %>
      • <% + formerEnd = entry.end } %>
      • Closed
      • From 1e2746015ce4198c5935268da0f42ba449969d30 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Thu, 22 Nov 2018 15:18:33 +0900 Subject: [PATCH 20/39] Fixed selection logic (current/before/after) --- 2018/src/html/room.ejs | 10 ++++- 2018/src/js/page/room.js | 93 +++++++++++++++++++++++++++++----------- 2 files changed, 75 insertions(+), 28 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index b4eb416..1ea260b 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -53,10 +53,16 @@ var page = { return momentTz(time).tz(slots.tz).format('H:mm') } if (formerEnd && entry.start > formerEnd) { %> -
      • Break
      • <% +
      • Break
      • <% } %> -
      • +
      • <%=`${room} ${hh(entry.start)} - ${hh(entry.end)}`%>


        <%= entry.summary %>

        diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 4c452e6..ecdffea 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -1,13 +1,32 @@ var hashChange = require('../vendor/hashChange'); var momentTz = require('moment-timezone'); -function replaceFlag (oldNode, newNode, flag) { - if (oldNode === newNode) { - return +function compareHmm (time, now) { + if (time.hours() === now.hours()) { + if (time.minutes() === now.minutes()) { + return 0 + } + if (time.minutes() < now.minutes()) { + return -1 + } + return 1 + } + if (time.hours() < now.hours()) { + return -1 + } + return 1 +} + +function toggle (node, clazz, flag) { + if (flag) { + if (!node.classList.contains(clazz)) { + node.classList.add(clazz) + } + } else { + if (node.classList.contains(clazz)) { + node.classList.remove(clazz) + } } - oldNode && oldNode.classList.remove(flag) - newNode && newNode.classList.add(flag) - return newNode } module.exports = function () { @@ -22,6 +41,8 @@ module.exports = function () { entries.forEach(function (entryNode) { var start = entryNode.attributes['data-start'] entryNode.start = momentTz(start.value).tz('Asia/Tokyo') + var end = entryNode.attributes['data-end'] + entryNode.end = momentTz(end.value).tz('Asia/Tokyo') }) return { @@ -57,9 +78,11 @@ module.exports = function () { }) }) - var before - var after - var current + function updateTime (time) { + if (time !== timeNode.innerText) { + timeNode.innerText = time + } + } function render () { var now = momentTz(Date.now()).tz('Asia/Tokyo') @@ -69,30 +92,48 @@ module.exports = function () { if (minute) { now.minutes(minute) } - timeNode.innerText = now.format('HH:mm') + updateTime(now.format('HH:mm')) if (!selectedRoom) { return } - var newBefore - var newCurrent = selectedRoom.first - var newAfter = selectedRoom.entries[0] + var beforeStart = true + var previous + var before + var after + var current selectedRoom.entries.forEach(function (entryNode) { - var isBefore = entryNode.start.hours() < now.hours() || - entryNode.start.hours() === now.hours() && entryNode.start.minutes() < now.minutes() - if (isBefore) { - newBefore = newCurrent - newCurrent = entryNode - newAfter = null - } else if(!newAfter) { - newAfter = entryNode + var isBefore = compareHmm(entryNode.end, now) === -1 + var isAfter = compareHmm(entryNode.start, now) === 1 + // console.log(entryNode.start.format('HH:mm'), now.format('HH:mm'), entryNode.end.format('HH:mm'), isBefore, isAfter) + var isCurrent = !isBefore && !isAfter + if (isCurrent || isBefore) { + beforeStart = false + } + if (isCurrent) { + before = previous + current = entryNode } + if (isAfter && !after) { + after = entryNode + } + previous = entryNode + return isCurrent }) - if (!newAfter) { - newAfter = selectedRoom.last + var afterFinish = !current && !beforeStart + if (afterFinish) { + before = previous } - current = replaceFlag(current, newCurrent, 'room-entry-current') - before = replaceFlag(before, newBefore, 'room-entry-before') - after = replaceFlag(after, newAfter, 'room-entry-after') + selectedRoom.entries.forEach(function (entryNode) { + toggle(entryNode, 'room-entry-current', entryNode === current) + toggle(entryNode, 'room-entry-after', entryNode === after) + toggle(entryNode, 'room-entry-before', entryNode === before) + }) + toggle(selectedRoom.first, 'room-entry-current', beforeStart) + toggle(selectedRoom.first, 'room-entry-before', selectedRoom.entries[0].classList.contains('room-entry-current')) + toggle(selectedRoom.last, 'room-entry-current', afterFinish) + toggle(selectedRoom.last, 'room-entry-after', selectedRoom.entries[selectedRoom.entries.length - 1].classList.contains('room-entry-current')) + toggle(selectedRoom.node, 'room-before-start', beforeStart) + toggle(selectedRoom.node, 'room-after-finish', afterFinish) } render() setInterval(render, 100) From b915487d21b61aca078d99459f74598a7a7cf020 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 15:48:10 +0900 Subject: [PATCH 21/39] Put clock component in a container for positioning with flexbox --- 2018/src/html/room.ejs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 1ea260b..f529246 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -15,7 +15,9 @@ var page = { -
        +
        +
        +

        Rooms

          From f55ab406bf56a2a39ec6bf6f50adc91cc6844090 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 15:49:27 +0900 Subject: [PATCH 22/39] Positioned and added styles to clock --- 2018/src/scss/main.scss | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index bb2ff44..a3a4bf8 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2749,3 +2749,21 @@ a.confcal-button-inactive { } } } + +#room-time-container{ + width: 100%; + display: flex; + position: sticky; + top: 0; +} + +.room-time { + margin: 0.5em 1em 0 auto; + font-size: 1.5em; + background: #FFFFFF; + border:0.05em solid #00111C; + color: #CC4712; + padding: 0.1em 0.5em; + /* box-shadow is from materialize css's website */ + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); +} \ No newline at end of file From 8c1078ec5acd6584908393c7820d0f5e43c1c3b8 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 15:51:03 +0900 Subject: [PATCH 23/39] Ran npm run dev --- 2018/main.css | 2 +- 2018/main.js | 2 +- 2018/room.html | 360 +++++++++++++++++++------------------------------ 3 files changed, 140 insertions(+), 224 deletions(-) diff --git a/2018/main.css b/2018/main.css index 95ef908..2e38eb3 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;background:#fff;border:.05em solid #00111c;color:#cc4712;padding:.1em .5em;box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12),0 1px 5px 0 rgba(0,0,0,.2)} \ No newline at end of file diff --git a/2018/main.js b/2018/main.js index 0d23cd3..c86304d 100644 --- a/2018/main.js +++ b/2018/main.js @@ -1 +1 @@ -!function i(a,s,l){function u(t,e){if(!s[t]){if(!a[t]){var r="function"==typeof require&&require;if(!e&&r)return r(t,!0);if(c)return c(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var o=s[t]={exports:{}};a[t][0].call(o.exports,function(e){return u(a[t][1][e]||e)},o,o.exports,i,a,s,l)}return s[t].exports}for(var c="function"==typeof require&&require,e=0;eu&&++i= 2.6.0. You are using Moment.js "+A.version+". See momentjs.com"),t.prototype={_set:function(M){this.name=M.name,this.abbrs=M.abbrs,this.untils=M.untils,this.offsets=M.offsets,this.population=M.population},_index:function(M){var b,z=+M,p=this.untils;for(b=0;b= 2.9.0. You are using Moment.js "+A.version+"."),A.defaultZone=M?s(M):null,A};var g=A.momentProperties;return"[object Array]"===Object.prototype.toString.call(g)?(g.push("_z"),g.push("_a")):g&&(g._z=null),A})},{moment:6}],6:[function(Pz,xz,M){var b,z;b=this,z=function(){"use strict";var M,O;function e(){return M.apply(null,arguments)}function q(M){return M instanceof Array||"[object Array]"===Object.prototype.toString.call(M)}function c(M){return null!=M&&"[object Object]"===Object.prototype.toString.call(M)}function W(M){return void 0===M}function n(M){return"number"==typeof M||"[object Number]"===Object.prototype.toString.call(M)}function d(M){return M instanceof Date||"[object Date]"===Object.prototype.toString.call(M)}function a(M,b){var z,p=[];for(z=0;z>>0,p=0;psM(M)?(A=M+1,q-sM(M)):(A=M,q),{year:A,dayOfYear:o}}function PM(M,b,z){var p,O,A=kM(M.year(),b,z),o=Math.floor((M.dayOfYear()-A-1)/7)+1;return o<1?p=o+xM(O=M.year()-1,b,z):o>xM(M.year(),b,z)?(p=o-xM(M.year(),b,z),O=M.year()+1):(O=M.year(),p=o),{week:p,year:O}}function xM(M,b,z){var p=kM(M,b,z),O=kM(M+1,b,z);return(sM(M)-p+O)/7}P("w",["ww",2],"wo","week"),P("W",["WW",2],"Wo","isoWeek"),S("week","w"),S("isoWeek","W"),E("week",5),E("isoWeek",5),cM("w",Q),cM("ww",Q,j),cM("W",Q),cM("WW",Q,j),aM(["w","ww","W","WW"],function(M,b,z,p){b[p.substr(0,1)]=u(M)});P("d",0,"do","day"),P("dd",0,0,function(M){return this.localeData().weekdaysMin(this,M)}),P("ddd",0,0,function(M){return this.localeData().weekdaysShort(this,M)}),P("dddd",0,0,function(M){return this.localeData().weekdays(this,M)}),P("e",0,0,"weekday"),P("E",0,0,"isoWeekday"),S("day","d"),S("weekday","e"),S("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),cM("d",Q),cM("e",Q),cM("E",Q),cM("dd",function(M,b){return b.weekdaysMinRegex(M)}),cM("ddd",function(M,b){return b.weekdaysShortRegex(M)}),cM("dddd",function(M,b){return b.weekdaysRegex(M)}),aM(["dd","ddd","dddd"],function(M,b,z,p){var O=z._locale.weekdaysParse(M,p,z._strict);null!=O?b.d=O:X(z).invalidWeekday=M}),aM(["d","e","E"],function(M,b,z,p){b[p]=u(M)});var IM="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var UM="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var jM="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var YM=oM;var GM=oM;var KM=oM;function QM(){function M(M,b){return b.length-M.length}var b,z,p,O,A,o=[],q=[],c=[],W=[];for(b=0;b<7;b++)z=i([2e3,1]).day(b),p=this.weekdaysMin(z,""),O=this.weekdaysShort(z,""),A=this.weekdays(z,""),o.push(p),q.push(O),c.push(A),W.push(p),W.push(O),W.push(A);for(o.sort(M),q.sort(M),c.sort(M),W.sort(M),b=0;b<7;b++)q[b]=nM(q[b]),c[b]=nM(c[b]),W[b]=nM(W[b]);this._weekdaysRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+q.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function JM(){return this.hours()%12||12}function ZM(M,b){P(M,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),b)})}function $M(M,b){return b._meridiemParse}P("H",["HH",2],0,"hour"),P("h",["hh",2],0,JM),P("k",["kk",2],0,function(){return this.hours()||24}),P("hmm",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)}),P("hmmss",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)+w(this.seconds(),2)}),P("Hmm",0,0,function(){return""+this.hours()+w(this.minutes(),2)}),P("Hmmss",0,0,function(){return""+this.hours()+w(this.minutes(),2)+w(this.seconds(),2)}),ZM("a",!0),ZM("A",!1),S("hour","h"),E("hour",13),cM("a",$M),cM("A",$M),cM("H",Q),cM("h",Q),cM("k",Q),cM("HH",Q,j),cM("hh",Q,j),cM("kk",Q,j),cM("hmm",J),cM("hmmss",Z),cM("Hmm",J),cM("Hmmss",Z),eM(["H","HH"],XM),eM(["k","kk"],function(M,b,z){var p=u(M);b[XM]=24===p?0:p}),eM(["a","A"],function(M,b,z){z._isPm=z._locale.isPM(M),z._meridiem=M}),eM(["h","hh"],function(M,b,z){b[XM]=u(M),X(z).bigHour=!0}),eM("hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p)),X(z).bigHour=!0}),eM("hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p,2)),b[rM]=u(M.substr(O)),X(z).bigHour=!0}),eM("Hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p))}),eM("Hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p,2)),b[rM]=u(M.substr(O))});var Mb,bb=HM("Hours",!0),zb={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:SM,monthsShort:yM,week:{dow:0,doy:6},weekdays:IM,weekdaysMin:jM,weekdaysShort:UM,meridiemParse:/[ap]\.?m?\.?/i},pb={},Ob={};function Ab(M){return M?M.toLowerCase().replace("_","-"):M}function ob(M){var b=null;if(!pb[M]&&void 0!==xz&&xz&&xz.exports)try{b=Mb._abbr,Pz("./locale/"+M),qb(b)}catch(M){}return pb[M]}function qb(M,b){var z;return M&&((z=W(b)?Wb(M):cb(M,b))?Mb=z:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+M+" not found. Did you forget to load it?")),Mb._abbr}function cb(M,b){if(null===b)return delete pb[M],null;var z,p=zb;if(b.abbr=M,null!=pb[M])H("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),p=pb[M]._config;else if(null!=b.parentLocale)if(null!=pb[b.parentLocale])p=pb[b.parentLocale]._config;else{if(null==(z=ob(b.parentLocale)))return Ob[b.parentLocale]||(Ob[b.parentLocale]=[]),Ob[b.parentLocale].push({name:M,config:b}),null;p=z._config}return pb[M]=new F(m(p,b)),Ob[M]&&Ob[M].forEach(function(M){cb(M.name,M.config)}),qb(M),pb[M]}function Wb(M){var b;if(M&&M._locale&&M._locale._abbr&&(M=M._locale._abbr),!M)return Mb;if(!q(M)){if(b=ob(M))return b;M=[M]}return function(M){for(var b,z,p,O,A=0;A=b&&o(O,z,!0)>=b-1)break;b--}A++}return Mb}(M)}function nb(M){var b,z=M._a;return z&&-2===X(M).overflow&&(b=z[RM]<0||11FM(z[tM],z[RM])?iM:z[XM]<0||24xM(z,A,o)?X(M)._overflowWeeks=!0:null!=c?X(M)._overflowWeekday=!0:(q=DM(z,p,O,A,o),M._a[tM]=q.year,M._dayOfYear=q.dayOfYear)}(M),null!=M._dayOfYear&&(A=db(M._a[tM],p[tM]),(M._dayOfYear>sM(A)||0===M._dayOfYear)&&(X(M)._overflowDayOfYear=!0),z=VM(A,0,M._dayOfYear),M._a[RM]=z.getUTCMonth(),M._a[iM]=z.getUTCDate()),b=0;b<3&&null==M._a[b];++b)M._a[b]=o[b]=p[b];for(;b<7;b++)M._a[b]=o[b]=null==M._a[b]?2===b?1:0:M._a[b];24===M._a[XM]&&0===M._a[BM]&&0===M._a[rM]&&0===M._a[fM]&&(M._nextDay=!0,M._a[XM]=0),M._d=(M._useUTC?VM:function(M,b,z,p,O,A,o){var q=new Date(M,b,z,p,O,A,o);return M<100&&0<=M&&isFinite(q.getFullYear())&&q.setFullYear(M),q}).apply(null,o),O=M._useUTC?M._d.getUTCDay():M._d.getDay(),null!=M._tzm&&M._d.setUTCMinutes(M._d.getUTCMinutes()-M._tzm),M._nextDay&&(M._a[XM]=24),M._w&&void 0!==M._w.d&&M._w.d!==O&&(X(M).weekdayMismatch=!0)}}var ab=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tb=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Rb=/Z|[+-]\d\d(?::?\d\d)?/,ib=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Xb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Bb=/^\/?Date\((\-?\d+)/i;function rb(M){var b,z,p,O,A,o,q=M._i,c=ab.exec(q)||tb.exec(q);if(c){for(X(M).iso=!0,b=0,z=ib.length;bz.valueOf():z.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cz.isLocal=function(){return!!this.isValid()&&!this._isUTC},cz.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cz.isUtc=kb,cz.isUTC=kb,cz.zoneAbbr=function(){return this._isUTC?"UTC":""},cz.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cz.dates=z("dates accessor is deprecated. Use date instead.",zz),cz.months=z("months accessor is deprecated. Use month instead",CM),cz.years=z("years accessor is deprecated. Use year instead",hM),cz.zone=z("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(M,b){return null!=M?("string"!=typeof M&&(M=-M),this.utcOffset(M,b),this):-this.utcOffset()}),cz.isDSTShifted=z("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!W(this._isDSTShifted))return this._isDSTShifted;var M={};if(f(M,this),(M=Nb(M))._a){var b=M._isUTC?i(M._a):Hb(M._a);this._isDSTShifted=this.isValid()&&0W&&++A - Document + Room + +
          +
          +
          +
          -
            + +
              +
            • Closed
            • - -
            • - +
            • Room A 10:00 - 10:30


              Doors Open

              @@ -24,10 +44,7 @@

              Doors Open

            • - - -
            • - +
            • Room A 10:30 - 10:45


              Keynote

              @@ -36,10 +53,7 @@

              Keynote

            • - - -
            • - +
            • Room A 10:45 - 11:15


              Look What You MIDI Me Do!

              @@ -54,10 +68,7 @@

              Look What You MIDI Me Do!

            • - - -
            • - +
            • Room A 11:15 - 11:45


              Node.js: The Road to Workers

              @@ -72,10 +83,8 @@

              Node.js: The Road to Workers

            • - - -
            • - +
            • Break
            • +
            • Room A 13:00 - 13:30


              JavaScript Class Features: A case study in TC39

              @@ -90,10 +99,7 @@

              JavaScript Class Features: A case study in TC39

            • - - -
            • - +
            • Room A 13:30 - 14:00


              Who Takes Out Your Trash

              @@ -112,10 +118,8 @@

              Who Takes Out Your Trash

            • - - -
            • - +
            • Break
            • +
            • Room A 14:15 - 14:45


              libuv: What's a Unicorn Velociraptor?

              @@ -130,10 +134,7 @@

              libuv: What's a Unicorn Velociraptor?

            • - - -
            • - +
            • Room A 14:45 - 15:15


              Leak Hunting: Finding and debugging a memory leak in Node.js

              @@ -148,10 +149,8 @@

              Leak Hunting: Finding and debugging a memory leak in Node.js

            • - - -
            • - +
            • Break
            • +
            • Room A 15:30 - 16:00


              Offline-First Collaborative Data Structures

              @@ -182,10 +181,7 @@

              Offline-First Collaborative Data Structures

            • - - -
            • - +
            • Room A 16:00 - 16:30


              Visualizing the Decentralized Web

              @@ -200,10 +196,8 @@

              Visualizing the Decentralized Web

            • - - -
            • - +
            • Break
            • +
            • Room A 16:45 - 17:15


              Real-Time Machine Learning in JavaScript

              @@ -218,10 +212,7 @@

              Real-Time Machine Learning in JavaScript

            • - - -
            • - +
            • Room A 17:15 - 17:45


              Haute Codeture

              @@ -236,10 +227,8 @@

              Haute Codeture

            • - - -
            • - +
            • Break
            • +
            • Room A 18:00 - 18:30


              Sponsor Talk

              @@ -248,10 +237,7 @@

              Sponsor Talk

            • - - -
            • - +
            • Room A 18:30 - 19:45


              Lightning Talks

              @@ -260,10 +246,8 @@

              Lightning Talks

            • - - -
            • - +
            • Break
            • +
            • Room A 20:15 - 22:00


              After Party

              @@ -271,13 +255,13 @@

              After Party


              -
            • - - - + +
            • Closed
            • +
            +
              +
            • Closed
            • -
            • - +
            • Room B 10:45 - 11:15


              Javascript で機械学習はじめよう

              @@ -294,10 +278,7 @@

              Javascript で機械学習はじめよう

            • - - -
            • - +
            • Room B 11:15 - 11:45


              Node.jsでつくるNode.js ミニインタープリター&コンパイラー

              @@ -316,10 +297,8 @@

              Node.jsでつくるNode.js ミニインタープリター&コンパイラ

            • - - -
            • - +
            • Break
            • +
            • Room B 13:00 - 13:30


              Diagnose your Node.js app

              @@ -345,10 +324,7 @@

              Diagnose your Node.js app

            • - - -
            • - +
            • Room B 13:30 - 14:00


              State of SEO for SPA

              @@ -367,10 +343,8 @@

              State of SEO for SPA

            • - - -
            • - +
            • Break
            • +
            • Room B 14:15 - 14:45


              React におけるパフォーマンスチューニング

              @@ -386,10 +360,7 @@

              React におけるパフォーマンスチューニング

            • - - -
            • - +
            • Room B 14:45 - 15:15


              WebアプリをNativeアプリにする Capacitor が広げるWebの可能性

              @@ -406,10 +377,8 @@

              WebアプリをNativeアプリにする Capacitor が広げるWebの可能

            • - - -
            • - +
            • Break
            • +
            • Room B 15:30 - 16:00


              実践GraphQL for クライアント側

              @@ -428,10 +397,7 @@

              実践GraphQL for クライアント側

            • - - -
            • - +
            • Room B 16:00 - 16:30


              Service Workerを用いたキャッシング戦略 〜Wikiアプリケーションを例に〜

              @@ -455,10 +421,8 @@

              Service Workerを用いたキャッシング戦略 〜Wikiアプリケーシ

            • - - -
            • - +
            • Break
            • +
            • Room B 16:45 - 17:15


              貢献できるOSSの見つけ方 -完結編-

              @@ -479,10 +443,7 @@

              貢献できるOSSの見つけ方 -完結編-

            • - - -
            • - +
            • Room B 17:15 - 17:45


              Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ・バトル・アプリ

              @@ -506,13 +467,13 @@

              Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ

              -

            • - - - + +
            • Closed
            • +
            +
              +
            • Closed
            • -
            • - +
            • Room C 10:45 - 17:45


              JSなんでもお悩み相談室

              @@ -520,13 +481,13 @@

              JSなんでもお悩み相談室


              -
            • - - - + +
            • Closed
            • +
            +
              +
            • Closed
            • -
            • - +
            • Room D 10:45 - 17:45


              無限LT部屋

              @@ -534,13 +495,13 @@

              無限LT部屋


              -
            • - - - + +
            • Closed
            • +
            +
              +
            • Closed
            • -
            • - +
            • Room E 10:45 - 11:15


              How I made critical code run much faster

              @@ -555,10 +516,7 @@

              How I made critical code run much faster

            • - - -
            • - +
            • Room E 11:15 - 11:45


              Accessibility vs latest Web APIs. Can’t we just get along?

              @@ -579,10 +537,8 @@

              Accessibility vs latest Web APIs. Can’t we just get along?

            • - - -
            • - +
            • Break
            • +
            • Room E 13:00 - 13:30


              A trillion points with Node.js

              @@ -597,10 +553,7 @@

              A trillion points with Node.js

            • - - -
            • - +
            • Room E 13:30 - 14:00


              Navi: painless routing for React

              @@ -619,10 +572,8 @@

              Navi: painless routing for React

            • - - -
            • - +
            • Break
            • +
            • Room E 14:15 - 14:45


              Node.jsアプリの開発をモダン化するために取り組んできたこと

              @@ -639,10 +590,7 @@

              Node.jsアプリの開発をモダン化するために取り組んできた

            • - - -
            • - +
            • Room E 14:45 - 15:15


              ブロックチェーンアプリケーション開発でのJavascriptの話

              @@ -657,10 +605,8 @@

              ブロックチェーンアプリケーション開発でのJavascriptの話

            • - - -
            • - +
            • Break
            • +
            • Room E 15:30 - 16:00


              Angular Universal on Google App Engine

              @@ -679,10 +625,7 @@

              Angular Universal on Google App Engine

            • - - -
            • - +
            • Room E 16:00 - 16:30


              React + Apollo Client (GraphQL) により変化するアプリケーション設計

              @@ -697,17 +640,14 @@

              React + Apollo Client (GraphQL) により変化するアプリケーショ

              -

            • - - - + +
            • Closed
            - -
              - +
                +
              • Closed
              • -
              • - +
              • Break
              • +
              • Room A 10:00 - 10:30


                Doors Open

                @@ -716,10 +656,7 @@

                Doors Open

              • - - -
              • - +
              • Room A 10:30 - 11:45


                Node/JS Discussion

                @@ -728,10 +665,8 @@

                Node/JS Discussion

              • - - -
              • - +
              • Break
              • +
              • Room A 13:00 - 15:00


                Node/W3C Discussion

                @@ -740,10 +675,7 @@

                Node/W3C Discussion

              • - - -
              • - +
              • Room A 15:00 - 17:00


                Code And Learn

                @@ -758,10 +690,7 @@

                Code And Learn

              • - - -
              • - +
              • Room A 17:00 - 18:00


                Lightning Talks

                @@ -770,10 +699,8 @@

                Lightning Talks

              • - - -
              • - +
              • Break
              • +
              • Room A 18:15 - 20:00


                After Party

                @@ -781,13 +708,13 @@

                After Party


                -
              • - - - + +
              • Closed
              • +
              +
                +
              • Closed
              • -
              • - +
              • Room B 10:30 - 17:00


                NodeSchool

                @@ -801,13 +728,13 @@

                NodeSchool

                -
              • - - - + +
              • Closed
              • +
              +
                +
              • Closed
              • -
              • - +
              • Room C 10:30 - 17:00


                Collaboration Space

                @@ -815,13 +742,13 @@

                Collaboration Space


                -
              • - - - + +
              • Closed
              • +
              +
                +
              • Closed
              • -
              • - +
              • Room D 10:30 - 15:00


                Workshop: Building hardware

                @@ -836,10 +763,7 @@

                Workshop: Building hardware

              • - - -
              • - +
              • Room D 15:00 - 17:00


                Workshop: Hands-On React

                @@ -864,13 +788,13 @@

                Workshop: Hands-On React

                Yan Fan is co-founder and CTO of Code Chrysalis. Prior, she has worked as an engineer at Ayasdi, an instructor for a prep programming course run by a leading Silicon Valley bootcamp, and CTO of a coding bootcamp in Jordan. Before she embarked on her career in tech, she worked in commodities trading. She holds degrees in Economics and Arabic from Dartmouth College.

                -
              • - - - + +
              • Closed
              • +
              +
                +
              • Closed
              • -
              • - +
              • Room E 10:30 - 11:45


                ワークショップ: 分散ストレージ体験

                @@ -894,10 +818,8 @@

                ワークショップ: 分散ストレージ体験

              • - - -
              • - +
              • Break
              • +
              • Room E 13:00 - 15:00


                Workshop: Building a Small Compiler in JavaScript

                @@ -924,10 +846,7 @@

                Workshop: Building a Small Compiler in JavaScript

              • - - -
              • - +
              • Room E 15:00 - 17:00


                Workshop: JavaScript TodoMVC

                @@ -941,14 +860,11 @@

                Workshop: JavaScript TodoMVC

                -
              • - - - -
              - - + +
            • Closed
            • +
          - + + From dbb745e4b547aee90d3a633f2585ddde3646f8e2 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 15:54:18 +0900 Subject: [PATCH 24/39] Ran npm run dev --- 2018/main.js | 2 +- 2018/room.html | 325 +++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 261 insertions(+), 66 deletions(-) diff --git a/2018/main.js b/2018/main.js index c86304d..6a0a7b5 100644 --- a/2018/main.js +++ b/2018/main.js @@ -1 +1 @@ -!function A(o,q,c){function W(b,M){if(!q[b]){if(!o[b]){var z="function"==typeof require&&require;if(!M&&z)return z(b,!0);if(n)return n(b,!0);var p=new Error("Cannot find module '"+b+"'");throw p.code="MODULE_NOT_FOUND",p}var O=q[b]={exports:{}};o[b][0].call(O.exports,function(M){return W(o[b][1][M]||M)},O,O.exports,A,o,q,c)}return q[b].exports}for(var n="function"==typeof require&&require,M=0;M= 2.6.0. You are using Moment.js "+A.version+". See momentjs.com"),t.prototype={_set:function(M){this.name=M.name,this.abbrs=M.abbrs,this.untils=M.untils,this.offsets=M.offsets,this.population=M.population},_index:function(M){var b,z=+M,p=this.untils;for(b=0;b= 2.9.0. You are using Moment.js "+A.version+"."),A.defaultZone=M?s(M):null,A};var g=A.momentProperties;return"[object Array]"===Object.prototype.toString.call(g)?(g.push("_z"),g.push("_a")):g&&(g._z=null),A})},{moment:6}],6:[function(Pz,xz,M){var b,z;b=this,z=function(){"use strict";var M,O;function e(){return M.apply(null,arguments)}function q(M){return M instanceof Array||"[object Array]"===Object.prototype.toString.call(M)}function c(M){return null!=M&&"[object Object]"===Object.prototype.toString.call(M)}function W(M){return void 0===M}function n(M){return"number"==typeof M||"[object Number]"===Object.prototype.toString.call(M)}function d(M){return M instanceof Date||"[object Date]"===Object.prototype.toString.call(M)}function a(M,b){var z,p=[];for(z=0;z>>0,p=0;psM(M)?(A=M+1,q-sM(M)):(A=M,q),{year:A,dayOfYear:o}}function PM(M,b,z){var p,O,A=kM(M.year(),b,z),o=Math.floor((M.dayOfYear()-A-1)/7)+1;return o<1?p=o+xM(O=M.year()-1,b,z):o>xM(M.year(),b,z)?(p=o-xM(M.year(),b,z),O=M.year()+1):(O=M.year(),p=o),{week:p,year:O}}function xM(M,b,z){var p=kM(M,b,z),O=kM(M+1,b,z);return(sM(M)-p+O)/7}P("w",["ww",2],"wo","week"),P("W",["WW",2],"Wo","isoWeek"),S("week","w"),S("isoWeek","W"),E("week",5),E("isoWeek",5),cM("w",Q),cM("ww",Q,j),cM("W",Q),cM("WW",Q,j),aM(["w","ww","W","WW"],function(M,b,z,p){b[p.substr(0,1)]=u(M)});P("d",0,"do","day"),P("dd",0,0,function(M){return this.localeData().weekdaysMin(this,M)}),P("ddd",0,0,function(M){return this.localeData().weekdaysShort(this,M)}),P("dddd",0,0,function(M){return this.localeData().weekdays(this,M)}),P("e",0,0,"weekday"),P("E",0,0,"isoWeekday"),S("day","d"),S("weekday","e"),S("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),cM("d",Q),cM("e",Q),cM("E",Q),cM("dd",function(M,b){return b.weekdaysMinRegex(M)}),cM("ddd",function(M,b){return b.weekdaysShortRegex(M)}),cM("dddd",function(M,b){return b.weekdaysRegex(M)}),aM(["dd","ddd","dddd"],function(M,b,z,p){var O=z._locale.weekdaysParse(M,p,z._strict);null!=O?b.d=O:X(z).invalidWeekday=M}),aM(["d","e","E"],function(M,b,z,p){b[p]=u(M)});var IM="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var UM="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var jM="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var YM=oM;var GM=oM;var KM=oM;function QM(){function M(M,b){return b.length-M.length}var b,z,p,O,A,o=[],q=[],c=[],W=[];for(b=0;b<7;b++)z=i([2e3,1]).day(b),p=this.weekdaysMin(z,""),O=this.weekdaysShort(z,""),A=this.weekdays(z,""),o.push(p),q.push(O),c.push(A),W.push(p),W.push(O),W.push(A);for(o.sort(M),q.sort(M),c.sort(M),W.sort(M),b=0;b<7;b++)q[b]=nM(q[b]),c[b]=nM(c[b]),W[b]=nM(W[b]);this._weekdaysRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+q.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function JM(){return this.hours()%12||12}function ZM(M,b){P(M,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),b)})}function $M(M,b){return b._meridiemParse}P("H",["HH",2],0,"hour"),P("h",["hh",2],0,JM),P("k",["kk",2],0,function(){return this.hours()||24}),P("hmm",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)}),P("hmmss",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)+w(this.seconds(),2)}),P("Hmm",0,0,function(){return""+this.hours()+w(this.minutes(),2)}),P("Hmmss",0,0,function(){return""+this.hours()+w(this.minutes(),2)+w(this.seconds(),2)}),ZM("a",!0),ZM("A",!1),S("hour","h"),E("hour",13),cM("a",$M),cM("A",$M),cM("H",Q),cM("h",Q),cM("k",Q),cM("HH",Q,j),cM("hh",Q,j),cM("kk",Q,j),cM("hmm",J),cM("hmmss",Z),cM("Hmm",J),cM("Hmmss",Z),eM(["H","HH"],XM),eM(["k","kk"],function(M,b,z){var p=u(M);b[XM]=24===p?0:p}),eM(["a","A"],function(M,b,z){z._isPm=z._locale.isPM(M),z._meridiem=M}),eM(["h","hh"],function(M,b,z){b[XM]=u(M),X(z).bigHour=!0}),eM("hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p)),X(z).bigHour=!0}),eM("hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p,2)),b[rM]=u(M.substr(O)),X(z).bigHour=!0}),eM("Hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p))}),eM("Hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[BM]=u(M.substr(p,2)),b[rM]=u(M.substr(O))});var Mb,bb=HM("Hours",!0),zb={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:SM,monthsShort:yM,week:{dow:0,doy:6},weekdays:IM,weekdaysMin:jM,weekdaysShort:UM,meridiemParse:/[ap]\.?m?\.?/i},pb={},Ob={};function Ab(M){return M?M.toLowerCase().replace("_","-"):M}function ob(M){var b=null;if(!pb[M]&&void 0!==xz&&xz&&xz.exports)try{b=Mb._abbr,Pz("./locale/"+M),qb(b)}catch(M){}return pb[M]}function qb(M,b){var z;return M&&((z=W(b)?Wb(M):cb(M,b))?Mb=z:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+M+" not found. Did you forget to load it?")),Mb._abbr}function cb(M,b){if(null===b)return delete pb[M],null;var z,p=zb;if(b.abbr=M,null!=pb[M])H("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),p=pb[M]._config;else if(null!=b.parentLocale)if(null!=pb[b.parentLocale])p=pb[b.parentLocale]._config;else{if(null==(z=ob(b.parentLocale)))return Ob[b.parentLocale]||(Ob[b.parentLocale]=[]),Ob[b.parentLocale].push({name:M,config:b}),null;p=z._config}return pb[M]=new F(m(p,b)),Ob[M]&&Ob[M].forEach(function(M){cb(M.name,M.config)}),qb(M),pb[M]}function Wb(M){var b;if(M&&M._locale&&M._locale._abbr&&(M=M._locale._abbr),!M)return Mb;if(!q(M)){if(b=ob(M))return b;M=[M]}return function(M){for(var b,z,p,O,A=0;A=b&&o(O,z,!0)>=b-1)break;b--}A++}return Mb}(M)}function nb(M){var b,z=M._a;return z&&-2===X(M).overflow&&(b=z[RM]<0||11FM(z[tM],z[RM])?iM:z[XM]<0||24xM(z,A,o)?X(M)._overflowWeeks=!0:null!=c?X(M)._overflowWeekday=!0:(q=DM(z,p,O,A,o),M._a[tM]=q.year,M._dayOfYear=q.dayOfYear)}(M),null!=M._dayOfYear&&(A=db(M._a[tM],p[tM]),(M._dayOfYear>sM(A)||0===M._dayOfYear)&&(X(M)._overflowDayOfYear=!0),z=VM(A,0,M._dayOfYear),M._a[RM]=z.getUTCMonth(),M._a[iM]=z.getUTCDate()),b=0;b<3&&null==M._a[b];++b)M._a[b]=o[b]=p[b];for(;b<7;b++)M._a[b]=o[b]=null==M._a[b]?2===b?1:0:M._a[b];24===M._a[XM]&&0===M._a[BM]&&0===M._a[rM]&&0===M._a[fM]&&(M._nextDay=!0,M._a[XM]=0),M._d=(M._useUTC?VM:function(M,b,z,p,O,A,o){var q=new Date(M,b,z,p,O,A,o);return M<100&&0<=M&&isFinite(q.getFullYear())&&q.setFullYear(M),q}).apply(null,o),O=M._useUTC?M._d.getUTCDay():M._d.getDay(),null!=M._tzm&&M._d.setUTCMinutes(M._d.getUTCMinutes()-M._tzm),M._nextDay&&(M._a[XM]=24),M._w&&void 0!==M._w.d&&M._w.d!==O&&(X(M).weekdayMismatch=!0)}}var ab=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tb=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Rb=/Z|[+-]\d\d(?::?\d\d)?/,ib=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Xb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Bb=/^\/?Date\((\-?\d+)/i;function rb(M){var b,z,p,O,A,o,q=M._i,c=ab.exec(q)||tb.exec(q);if(c){for(X(M).iso=!0,b=0,z=ib.length;bz.valueOf():z.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cz.isLocal=function(){return!!this.isValid()&&!this._isUTC},cz.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cz.isUtc=kb,cz.isUTC=kb,cz.zoneAbbr=function(){return this._isUTC?"UTC":""},cz.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cz.dates=z("dates accessor is deprecated. Use date instead.",zz),cz.months=z("months accessor is deprecated. Use month instead",CM),cz.years=z("years accessor is deprecated. Use year instead",hM),cz.zone=z("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(M,b){return null!=M?("string"!=typeof M&&(M=-M),this.utcOffset(M,b),this):-this.utcOffset()}),cz.isDSTShifted=z("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!W(this._isDSTShifted))return this._isDSTShifted;var M={};if(f(M,this),(M=Nb(M))._a){var b=M._isUTC?i(M._a):Hb(M._a);this._isDSTShifted=this.isValid()&&0W&&++A= 2.6.0. You are using Moment.js "+A.version+". See momentjs.com"),t.prototype={_set:function(M){this.name=M.name,this.abbrs=M.abbrs,this.untils=M.untils,this.offsets=M.offsets,this.population=M.population},_index:function(M){var b,z=+M,p=this.untils;for(b=0;b= 2.9.0. You are using Moment.js "+A.version+"."),A.defaultZone=M?s(M):null,A};var g=A.momentProperties;return"[object Array]"===Object.prototype.toString.call(g)?(g.push("_z"),g.push("_a")):g&&(g._z=null),A})},{moment:6}],6:[function(Pz,xz,M){var b,z;b=this,z=function(){"use strict";var M,O;function e(){return M.apply(null,arguments)}function q(M){return M instanceof Array||"[object Array]"===Object.prototype.toString.call(M)}function c(M){return null!=M&&"[object Object]"===Object.prototype.toString.call(M)}function W(M){return void 0===M}function n(M){return"number"==typeof M||"[object Number]"===Object.prototype.toString.call(M)}function d(M){return M instanceof Date||"[object Date]"===Object.prototype.toString.call(M)}function a(M,b){var z,p=[];for(z=0;z>>0,p=0;psM(M)?(A=M+1,q-sM(M)):(A=M,q),{year:A,dayOfYear:o}}function PM(M,b,z){var p,O,A=kM(M.year(),b,z),o=Math.floor((M.dayOfYear()-A-1)/7)+1;return o<1?p=o+xM(O=M.year()-1,b,z):o>xM(M.year(),b,z)?(p=o-xM(M.year(),b,z),O=M.year()+1):(O=M.year(),p=o),{week:p,year:O}}function xM(M,b,z){var p=kM(M,b,z),O=kM(M+1,b,z);return(sM(M)-p+O)/7}P("w",["ww",2],"wo","week"),P("W",["WW",2],"Wo","isoWeek"),S("week","w"),S("isoWeek","W"),E("week",5),E("isoWeek",5),cM("w",Q),cM("ww",Q,j),cM("W",Q),cM("WW",Q,j),aM(["w","ww","W","WW"],function(M,b,z,p){b[p.substr(0,1)]=u(M)});P("d",0,"do","day"),P("dd",0,0,function(M){return this.localeData().weekdaysMin(this,M)}),P("ddd",0,0,function(M){return this.localeData().weekdaysShort(this,M)}),P("dddd",0,0,function(M){return this.localeData().weekdays(this,M)}),P("e",0,0,"weekday"),P("E",0,0,"isoWeekday"),S("day","d"),S("weekday","e"),S("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),cM("d",Q),cM("e",Q),cM("E",Q),cM("dd",function(M,b){return b.weekdaysMinRegex(M)}),cM("ddd",function(M,b){return b.weekdaysShortRegex(M)}),cM("dddd",function(M,b){return b.weekdaysRegex(M)}),aM(["dd","ddd","dddd"],function(M,b,z,p){var O=z._locale.weekdaysParse(M,p,z._strict);null!=O?b.d=O:X(z).invalidWeekday=M}),aM(["d","e","E"],function(M,b,z,p){b[p]=u(M)});var IM="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var UM="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var jM="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var YM=oM;var GM=oM;var KM=oM;function QM(){function M(M,b){return b.length-M.length}var b,z,p,O,A,o=[],q=[],c=[],W=[];for(b=0;b<7;b++)z=i([2e3,1]).day(b),p=this.weekdaysMin(z,""),O=this.weekdaysShort(z,""),A=this.weekdays(z,""),o.push(p),q.push(O),c.push(A),W.push(p),W.push(O),W.push(A);for(o.sort(M),q.sort(M),c.sort(M),W.sort(M),b=0;b<7;b++)q[b]=nM(q[b]),c[b]=nM(c[b]),W[b]=nM(W[b]);this._weekdaysRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+q.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function JM(){return this.hours()%12||12}function ZM(M,b){P(M,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),b)})}function $M(M,b){return b._meridiemParse}P("H",["HH",2],0,"hour"),P("h",["hh",2],0,JM),P("k",["kk",2],0,function(){return this.hours()||24}),P("hmm",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)}),P("hmmss",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)+w(this.seconds(),2)}),P("Hmm",0,0,function(){return""+this.hours()+w(this.minutes(),2)}),P("Hmmss",0,0,function(){return""+this.hours()+w(this.minutes(),2)+w(this.seconds(),2)}),ZM("a",!0),ZM("A",!1),S("hour","h"),E("hour",13),cM("a",$M),cM("A",$M),cM("H",Q),cM("h",Q),cM("k",Q),cM("HH",Q,j),cM("hh",Q,j),cM("kk",Q,j),cM("hmm",J),cM("hmmss",Z),cM("Hmm",J),cM("Hmmss",Z),eM(["H","HH"],XM),eM(["k","kk"],function(M,b,z){var p=u(M);b[XM]=24===p?0:p}),eM(["a","A"],function(M,b,z){z._isPm=z._locale.isPM(M),z._meridiem=M}),eM(["h","hh"],function(M,b,z){b[XM]=u(M),X(z).bigHour=!0}),eM("hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p)),X(z).bigHour=!0}),eM("hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p,2)),b[BM]=u(M.substr(O)),X(z).bigHour=!0}),eM("Hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p))}),eM("Hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p,2)),b[BM]=u(M.substr(O))});var Mb,bb=HM("Hours",!0),zb={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:SM,monthsShort:yM,week:{dow:0,doy:6},weekdays:IM,weekdaysMin:jM,weekdaysShort:UM,meridiemParse:/[ap]\.?m?\.?/i},pb={},Ob={};function Ab(M){return M?M.toLowerCase().replace("_","-"):M}function ob(M){var b=null;if(!pb[M]&&void 0!==xz&&xz&&xz.exports)try{b=Mb._abbr,Pz("./locale/"+M),qb(b)}catch(M){}return pb[M]}function qb(M,b){var z;return M&&((z=W(b)?Wb(M):cb(M,b))?Mb=z:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+M+" not found. Did you forget to load it?")),Mb._abbr}function cb(M,b){if(null===b)return delete pb[M],null;var z,p=zb;if(b.abbr=M,null!=pb[M])H("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),p=pb[M]._config;else if(null!=b.parentLocale)if(null!=pb[b.parentLocale])p=pb[b.parentLocale]._config;else{if(null==(z=ob(b.parentLocale)))return Ob[b.parentLocale]||(Ob[b.parentLocale]=[]),Ob[b.parentLocale].push({name:M,config:b}),null;p=z._config}return pb[M]=new F(m(p,b)),Ob[M]&&Ob[M].forEach(function(M){cb(M.name,M.config)}),qb(M),pb[M]}function Wb(M){var b;if(M&&M._locale&&M._locale._abbr&&(M=M._locale._abbr),!M)return Mb;if(!q(M)){if(b=ob(M))return b;M=[M]}return function(M){for(var b,z,p,O,A=0;A=b&&o(O,z,!0)>=b-1)break;b--}A++}return Mb}(M)}function nb(M){var b,z=M._a;return z&&-2===X(M).overflow&&(b=z[RM]<0||11FM(z[tM],z[RM])?iM:z[XM]<0||24xM(z,A,o)?X(M)._overflowWeeks=!0:null!=c?X(M)._overflowWeekday=!0:(q=DM(z,p,O,A,o),M._a[tM]=q.year,M._dayOfYear=q.dayOfYear)}(M),null!=M._dayOfYear&&(A=db(M._a[tM],p[tM]),(M._dayOfYear>sM(A)||0===M._dayOfYear)&&(X(M)._overflowDayOfYear=!0),z=VM(A,0,M._dayOfYear),M._a[RM]=z.getUTCMonth(),M._a[iM]=z.getUTCDate()),b=0;b<3&&null==M._a[b];++b)M._a[b]=o[b]=p[b];for(;b<7;b++)M._a[b]=o[b]=null==M._a[b]?2===b?1:0:M._a[b];24===M._a[XM]&&0===M._a[rM]&&0===M._a[BM]&&0===M._a[fM]&&(M._nextDay=!0,M._a[XM]=0),M._d=(M._useUTC?VM:function(M,b,z,p,O,A,o){var q=new Date(M,b,z,p,O,A,o);return M<100&&0<=M&&isFinite(q.getFullYear())&&q.setFullYear(M),q}).apply(null,o),O=M._useUTC?M._d.getUTCDay():M._d.getDay(),null!=M._tzm&&M._d.setUTCMinutes(M._d.getUTCMinutes()-M._tzm),M._nextDay&&(M._a[XM]=24),M._w&&void 0!==M._w.d&&M._w.d!==O&&(X(M).weekdayMismatch=!0)}}var ab=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tb=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Rb=/Z|[+-]\d\d(?::?\d\d)?/,ib=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Xb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],rb=/^\/?Date\((\-?\d+)/i;function Bb(M){var b,z,p,O,A,o,q=M._i,c=ab.exec(q)||tb.exec(q);if(c){for(X(M).iso=!0,b=0,z=ib.length;bz.valueOf():z.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cz.isLocal=function(){return!!this.isValid()&&!this._isUTC},cz.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cz.isUtc=kb,cz.isUTC=kb,cz.zoneAbbr=function(){return this._isUTC?"UTC":""},cz.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cz.dates=z("dates accessor is deprecated. Use date instead.",zz),cz.months=z("months accessor is deprecated. Use month instead",CM),cz.years=z("years accessor is deprecated. Use year instead",hM),cz.zone=z("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(M,b){return null!=M?("string"!=typeof M&&(M=-M),this.utcOffset(M,b),this):-this.utcOffset()}),cz.isDSTShifted=z("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!W(this._isDSTShifted))return this._isDSTShifted;var M={};if(f(M,this),(M=Nb(M))._a){var b=M._isUTC?i(M._a):Hb(M._a);this._isDSTShifted=this.isValid()&&0W&&++ARooms
    • Closed
    • -
    • +
    • Room A 10:00 - 10:30


      Doors Open

      @@ -44,7 +47,10 @@

      Doors Open

    • -
    • +
    • Room A 10:30 - 10:45


      Keynote

      @@ -53,7 +59,10 @@

      Keynote

    • -
    • +
    • Room A 10:45 - 11:15


      Look What You MIDI Me Do!

      @@ -68,7 +77,10 @@

      Look What You MIDI Me Do!

    • -
    • +
    • Room A 11:15 - 11:45


      Node.js: The Road to Workers

      @@ -83,8 +95,14 @@

      Node.js: The Road to Workers

    • -
    • Break
    • -
    • +
    • Break
    • +
    • Room A 13:00 - 13:30


      JavaScript Class Features: A case study in TC39

      @@ -99,7 +117,10 @@

      JavaScript Class Features: A case study in TC39

    • -
    • +
    • Room A 13:30 - 14:00


      Who Takes Out Your Trash

      @@ -118,8 +139,14 @@

      Who Takes Out Your Trash

    • -
    • Break
    • -
    • +
    • Break
    • +
    • Room A 14:15 - 14:45


      libuv: What's a Unicorn Velociraptor?

      @@ -134,7 +161,10 @@

      libuv: What's a Unicorn Velociraptor?

    • -
    • +
    • Room A 14:45 - 15:15


      Leak Hunting: Finding and debugging a memory leak in Node.js

      @@ -149,8 +179,14 @@

      Leak Hunting: Finding and debugging a memory leak in Node.js

    • -
    • Break
    • -
    • +
    • Break
    • +
    • Room A 15:30 - 16:00


      Offline-First Collaborative Data Structures

      @@ -181,7 +217,10 @@

      Offline-First Collaborative Data Structures

    • -
    • +
    • Room A 16:00 - 16:30


      Visualizing the Decentralized Web

      @@ -196,8 +235,14 @@

      Visualizing the Decentralized Web

    • -
    • Break
    • -
    • +
    • Break
    • +
    • Room A 16:45 - 17:15


      Real-Time Machine Learning in JavaScript

      @@ -212,7 +257,10 @@

      Real-Time Machine Learning in JavaScript

    • -
    • +
    • Room A 17:15 - 17:45


      Haute Codeture

      @@ -227,8 +275,14 @@

      Haute Codeture

    • -
    • Break
    • -
    • +
    • Break
    • +
    • Room A 18:00 - 18:30


      Sponsor Talk

      @@ -237,7 +291,10 @@

      Sponsor Talk

    • -
    • +
    • Room A 18:30 - 19:45


      Lightning Talks

      @@ -246,8 +303,14 @@

      Lightning Talks

    • -
    • Break
    • -
    • +
    • Break
    • +
    • Room A 20:15 - 22:00


      After Party

      @@ -261,7 +324,10 @@

      After Party

      • Closed
      • -
      • +
      • Room B 10:45 - 11:15


        Javascript で機械学習はじめよう

        @@ -278,7 +344,10 @@

        Javascript で機械学習はじめよう

      • -
      • +
      • Room B 11:15 - 11:45


        Node.jsでつくるNode.js ミニインタープリター&コンパイラー

        @@ -297,8 +366,14 @@

        Node.jsでつくるNode.js ミニインタープリター&コンパイラ

      • -
      • Break
      • -
      • +
      • Break
      • +
      • Room B 13:00 - 13:30


        Diagnose your Node.js app

        @@ -324,7 +399,10 @@

        Diagnose your Node.js app

      • -
      • +
      • Room B 13:30 - 14:00


        State of SEO for SPA

        @@ -343,8 +421,14 @@

        State of SEO for SPA

      • -
      • Break
      • -
      • +
      • Break
      • +
      • Room B 14:15 - 14:45


        React におけるパフォーマンスチューニング

        @@ -360,7 +444,10 @@

        React におけるパフォーマンスチューニング

      • -
      • +
      • Room B 14:45 - 15:15


        WebアプリをNativeアプリにする Capacitor が広げるWebの可能性

        @@ -377,8 +464,14 @@

        WebアプリをNativeアプリにする Capacitor が広げるWebの可能

      • -
      • Break
      • -
      • +
      • Break
      • +
      • Room B 15:30 - 16:00


        実践GraphQL for クライアント側

        @@ -397,7 +490,10 @@

        実践GraphQL for クライアント側

      • -
      • +
      • Room B 16:00 - 16:30


        Service Workerを用いたキャッシング戦略 〜Wikiアプリケーションを例に〜

        @@ -421,8 +517,14 @@

        Service Workerを用いたキャッシング戦略 〜Wikiアプリケーシ

      • -
      • Break
      • -
      • +
      • Break
      • +
      • Room B 16:45 - 17:15


        貢献できるOSSの見つけ方 -完結編-

        @@ -443,7 +545,10 @@

        貢献できるOSSの見つけ方 -完結編-

      • -
      • +
      • Room B 17:15 - 17:45


        Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ・バトル・アプリ

        @@ -473,7 +578,10 @@

        Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ
        • Closed
        • -
        • +
        • Room C 10:45 - 17:45


          JSなんでもお悩み相談室

          @@ -487,7 +595,10 @@

          JSなんでもお悩み相談室

          • Closed
          • -
          • +
          • Room D 10:45 - 17:45


            無限LT部屋

            @@ -501,7 +612,10 @@

            無限LT部屋

            • Closed
            • -
            • +
            • Room E 10:45 - 11:15


              How I made critical code run much faster

              @@ -516,7 +630,10 @@

              How I made critical code run much faster

            • -
            • +
            • Room E 11:15 - 11:45


              Accessibility vs latest Web APIs. Can’t we just get along?

              @@ -537,8 +654,14 @@

              Accessibility vs latest Web APIs. Can’t we just get along?

            • -
            • Break
            • -
            • +
            • Break
            • +
            • Room E 13:00 - 13:30


              A trillion points with Node.js

              @@ -553,7 +676,10 @@

              A trillion points with Node.js

            • -
            • +
            • Room E 13:30 - 14:00


              Navi: painless routing for React

              @@ -572,8 +698,14 @@

              Navi: painless routing for React

            • -
            • Break
            • -
            • +
            • Break
            • +
            • Room E 14:15 - 14:45


              Node.jsアプリの開発をモダン化するために取り組んできたこと

              @@ -590,7 +722,10 @@

              Node.jsアプリの開発をモダン化するために取り組んできた

            • -
            • +
            • Room E 14:45 - 15:15


              ブロックチェーンアプリケーション開発でのJavascriptの話

              @@ -605,8 +740,14 @@

              ブロックチェーンアプリケーション開発でのJavascriptの話

            • -
            • Break
            • -
            • +
            • Break
            • +
            • Room E 15:30 - 16:00


              Angular Universal on Google App Engine

              @@ -625,7 +766,10 @@

              Angular Universal on Google App Engine

            • -
            • +
            • Room E 16:00 - 16:30


              React + Apollo Client (GraphQL) により変化するアプリケーション設計

              @@ -646,8 +790,14 @@

              React + Apollo Client (GraphQL) により変化するアプリケーショ
              • Closed
              • -
              • Break
              • -
              • +
              • Break
              • +
              • Room A 10:00 - 10:30


                Doors Open

                @@ -656,7 +806,10 @@

                Doors Open

              • -
              • +
              • Room A 10:30 - 11:45


                Node/JS Discussion

                @@ -665,8 +818,14 @@

                Node/JS Discussion

              • -
              • Break
              • -
              • +
              • Break
              • +
              • Room A 13:00 - 15:00


                Node/W3C Discussion

                @@ -675,7 +834,10 @@

                Node/W3C Discussion

              • -
              • +
              • Room A 15:00 - 17:00


                Code And Learn

                @@ -690,7 +852,10 @@

                Code And Learn

              • -
              • +
              • Room A 17:00 - 18:00


                Lightning Talks

                @@ -699,8 +864,14 @@

                Lightning Talks

              • -
              • Break
              • -
              • +
              • Break
              • +
              • Room A 18:15 - 20:00


                After Party

                @@ -714,7 +885,10 @@

                After Party

                • Closed
                • -
                • +
                • Room B 10:30 - 17:00


                  NodeSchool

                  @@ -734,7 +908,10 @@

                  NodeSchool

                  • Closed
                  • -
                  • +
                  • Room C 10:30 - 17:00


                    Collaboration Space

                    @@ -748,7 +925,10 @@

                    Collaboration Space

                    • Closed
                    • -
                    • +
                    • Room D 10:30 - 15:00


                      Workshop: Building hardware

                      @@ -763,7 +943,10 @@

                      Workshop: Building hardware

                    • -
                    • +
                    • Room D 15:00 - 17:00


                      Workshop: Hands-On React

                      @@ -794,7 +977,10 @@

                      Workshop: Hands-On React

                      • Closed
                      • -
                      • +
                      • Room E 10:30 - 11:45


                        ワークショップ: 分散ストレージ体験

                        @@ -818,8 +1004,14 @@

                        ワークショップ: 分散ストレージ体験

                      • -
                      • Break
                      • -
                      • +
                      • Break
                      • +
                      • Room E 13:00 - 15:00


                        Workshop: Building a Small Compiler in JavaScript

                        @@ -846,7 +1038,10 @@

                        Workshop: Building a Small Compiler in JavaScript

                      • -
                      • +
                      • Room E 15:00 - 17:00


                        Workshop: JavaScript TodoMVC

                        From fdd9e0dc124dc74ce9a1f28f408b175376979239 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 16:24:23 +0900 Subject: [PATCH 25/39] Removed box around clock, changed font color and added white text shadow --- 2018/main.css | 2 +- 2018/src/scss/main.scss | 6 +----- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/2018/main.css b/2018/main.css index 2e38eb3..506fca8 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;background:#fff;border:.05em solid #00111c;color:#cc4712;padding:.1em .5em;box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12),0 1px 5px 0 rgba(0,0,0,.2)} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em} \ No newline at end of file diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index a3a4bf8..1b67871 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2760,10 +2760,6 @@ a.confcal-button-inactive { .room-time { margin: 0.5em 1em 0 auto; font-size: 1.5em; - background: #FFFFFF; - border:0.05em solid #00111C; - color: #CC4712; + text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px; padding: 0.1em 0.5em; - /* box-shadow is from materialize css's website */ - box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); } \ No newline at end of file From 33982803addb899b36158357028aee75cd61e85b Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 17:52:01 +0900 Subject: [PATCH 26/39] Changed ul id rooms to rooms-container --- 2018/room.html | 2 +- 2018/src/html/room.ejs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/2018/room.html b/2018/room.html index e4d303d..09c5f57 100644 --- a/2018/room.html +++ b/2018/room.html @@ -14,7 +14,7 @@
                        -
                        +

                        Rooms

                          diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index f529246..fc13115 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -18,7 +18,7 @@ var page = {
                          -
                          +

                          Rooms

                            <% From 38be351d0a0b05972d66d1d30af3d00dbd511bab Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 21:12:34 +0900 Subject: [PATCH 27/39] change room img tags to divs with background images --- 2018/main.css | 2 +- 2018/room.html | 70 ++++++++++++++++++++--------------------- 2018/src/html/room.ejs | 2 +- 2018/src/scss/main.scss | 23 ++++++++++++-- 4 files changed, 58 insertions(+), 39 deletions(-) diff --git a/2018/main.css b/2018/main.css index 506fca8..85212fd 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list{display:flex;flex-direction:column;height:100vh}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}.room-entry-current{flex:4}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:300px;width:300px;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file diff --git a/2018/room.html b/2018/room.html index 09c5f57..b35d581 100644 --- a/2018/room.html +++ b/2018/room.html @@ -69,7 +69,7 @@

                            Look What You MIDI Me Do!

                            Who loves pushing buttons? You? And you over there? And the person behind you? Oh wait, everyone loves it?!!? Of course they do, a button is irresistible. Now… what if I told you that you could hook up a LOT of buttons to your computer… and use it to do wild things with the web? I’m glad you’re listening! Let’s take a journey into the Web MIDI api where the possibilities of the web aren’t just at your keyboard fingertips anymore, they’re literally any MIDI compatible controller you have connected! Want to make glitchy audio responsive visuals with WebGL shaders? Rad, we can do that. Want to create custom beats and have those input as a drum machine? No problem when you throw a little Web Audio API in the mix. Let’s dive in and find out how!


                            - +
                            @@ -87,7 +87,7 @@

                            Node.js: The Road to Workers

                            Workers, and threading support in general, have been one of the most frequently requested features for Node.js over the last years. Finally, the finishing line is in sight and we’re pretty excited to have experimental support available! This talk will tell you everything around the API, features, use cases & alternatives, our roadmap, and the technical and social challenges that we had to overcome to make it happen!


                            - +
                            @@ -109,7 +109,7 @@

                            JavaScript Class Features: A case study in TC39

                            ES6 classes were intentionally minimal, containing only public method declarations. Now, TC39 is considering adding several other features to classes: private, fields, and decorators. In this talk, we'll see how these proposals work in detail, the process that got them there, and how you can get involved. TC39 needs your help to build features like these and the future of JavaScript.


                            - +
                            @@ -131,7 +131,7 @@

                            Who Takes Out Your Trash

                            This friendly introduction to taking out the trash gives an overview of important aspects of garbage collection algorithms. It is specifically meant to be accessible developers of all levels and you’ll walk away with an understanding of and appreciation for all the hard work that goes on behind the scenes.


                            - +
                            @@ -153,7 +153,7 @@

                            libuv: What's a Unicorn Velociraptor?

                            libuv is what gives Node.js its event loop and cross-platform asynchronous I/O capabilities. This talk explains what libuv is all about, and how it's used by Node.js. This talk also looks at recent development efforts in the libuv project.


                            - +
                            @@ -171,7 +171,7 @@

                            Leak Hunting: Finding and debugging a memory leak in Node.js

                            Performance metrics? Response time higher? Memory leak? We would walk through different memory leak situations to identify and analyze patterns that produce an increase of memory, CPU usage, and the load average over time, without any apparent reason. We'll start talking about taking the time to set up a proper test environment to repeat the exact same conditions as in production. Then we'll discuss how to access Node.js memory using V8 Inspector & Chrome Dev Tools, create a dump of the heap memory for the inspected application, with a lot of details about the memory usage, watching memory allocation in real time and finally a compilation of best practices about how we could end fixing the memory leak. In the end, we'll be able to use the right tools to monitor, understand, and debug the memory consumption of a Node.js application on time.


                            - +
                            @@ -209,7 +209,7 @@

                            Offline-First Collaborative Data Structures

                            collaborative offline-first applications and plenty of demos.


                            - +
                            @@ -227,7 +227,7 @@

                            Visualizing the Decentralized Web

                            A new generation of peer-to-peer protocols is coming to the web. Browsers will soon be able to talk directly to each other, without the need for centralized servers. Exciting new applications and social networks are being created which put people back in control of their personal data. See how IPFS, the Dat Protocol and Secure Scuttlebutt work. This presentation will use interactive visualizations to demonstrate core concepts.


                            - +
                            @@ -249,7 +249,7 @@

                            Real-Time Machine Learning in JavaScript

                            Real-time machine learning is a collection of statistical methods to obtain insights from continuous data streams. In this talk, I'll provide an overview of real-time machine learning algorithms and discuss how these algorithms can be implemented and used in JavaScript. I'll highlight why running these algorithms in JavaScript has several advantages compared to languages traditionally used for numerical computing, including the ability to perform client-side computations. I'll conclude by discussing best-practices and common pitfalls encountered when using machine learning algorithms within JavaScript environments.


                            - +
                            @@ -267,7 +267,7 @@

                            Haute Codeture

                            What if, instead going for practicality, we used IoT to create fleeting moments of interaction and beauty? What would happen if others could interact with my clothing via a web app? I’ll share my story of how I got started with hardware and how it’s evolved into using fashion to create interactive, artistic experiences with strangers.


                            - +
                            @@ -336,7 +336,7 @@

                            Javascript で機械学習はじめよう

                            このセッションでは、Javascript で機械学習することの意味、そして TensorFlow.js を用いてウェブアプリケーションを構築する方法について実例を交えながら解説したいと思う。


                            - +
                            @@ -358,7 +358,7 @@

                            Node.jsでつくるNode.js ミニインタープリター&コンパイラ https://qiita.com/massie_g/items/3ee11c105b4458686bc1


                            - +
                            @@ -391,7 +391,7 @@

                            Diagnose your Node.js app

                            Node.jsではどのような診断方法が用意・検討されているのか、最新動向を追ってみます。


                            - +
                            @@ -413,7 +413,7 @@

                            State of SEO for SPA

                            このトークでは「SEO対策」とは具体的になにを指すのか、SPAでSEO対策をする際の打ち手やそれぞれのメリット・デメリットはなにかを解説します。


                            - +
                            @@ -436,7 +436,7 @@

                            React におけるパフォーマンスチューニング

                            や ボトルネックの発見方法,具体的な改善事例について


                            - +
                            @@ -456,7 +456,7 @@

                            WebアプリをNativeアプリにする Capacitor が広げるWebの可能 このセッションでは、HTML5アプリの歴史と技術、パフォーマンスと「今」を整理します。


                            - +
                            @@ -482,7 +482,7 @@

                            実践GraphQL for クライアント側

                            話題のelmだったのでその話も少し添えて


                            - +
                            @@ -509,7 +509,7 @@

                            Service Workerを用いたキャッシング戦略 〜Wikiアプリケーシ また、キャッシュされたリソース間でのバージョンの不整合を防ぐ仕組みや、これらの有効期限の設定など、運用において気を付けている事柄と対応についても共有します。


                            - +
                            @@ -535,7 +535,7 @@

                            貢献できるOSSの見つけ方 -完結編-

                            上記課題はスピーカー自身が感じていたものでもありました。そのためスピーカー自身が同ツールを利用して実際にcontributionすることができるようになった例についてお話します。


                            - +
                            @@ -565,7 +565,7 @@

                            Vue.js/Nuxt.js で 実現できた PWA の リアルタイム動画ラップ ・ GitHub、CircleCI、GitHuba Pages を 使った 常にアクセス可能なプロトタイプ環境を持つ PWA アプリ開発環境


                            - +
                            @@ -622,7 +622,7 @@

                            How I made critical code run much faster

                            I have this critical piece of code. It has to run fast otherwise my clients complain. Also it is synchronous so I want it to have a small impact on the performance of the applications. This is the story of how I spent a week to gain microseconds in some very critical piece of code.


                            - +
                            @@ -642,7 +642,7 @@

                            Accessibility vs latest Web APIs. Can’t we just get along?

                            In this talk, you'll learn how to combine Web APIs such as Speech Recognition and Geolocation, with performant Javascript techniques to create empathic user interfaces.


                            - +
                            @@ -668,7 +668,7 @@

                            A trillion points with Node.js

                            I will be presenting our progress of using DAT to create a open-source visualization system for very large point-cloud data sets. This visualization system is entirely built on JavaScript and can enable new ways how we share and use data.


                            - +
                            @@ -690,7 +690,7 @@

                            Navi: painless routing for React

                            In this talk, I'll introduce Navi, and use it to live code a static website with create-react-app.


                            - +
                            @@ -714,7 +714,7 @@

                            Node.jsアプリの開発をモダン化するために取り組んできた このトークでは超少人数でメンテされていたNode.jsバージョン6のアプリケーションの開発をモダン化する過程での取り組み(ローカル開発環境の刷新、TypeScriptの採用と新規フレームワークの導入、AWSのインフラ構成変更など)について、背景や実際の進め方を踏まえてお話をさせて頂くことで、開発手法や環境構築に悩んでいる人の助けになれればと思います。


                            - +
                            @@ -732,7 +732,7 @@

                            ブロックチェーンアプリケーション開発でのJavascriptの話

                            ブロックチェーンアプリケーション、DApps開発(Ethereum)をする上でのJavascript、フロントエンドの話


                            - +
                            @@ -758,7 +758,7 @@

                            Angular Universal on Google App Engine

                            また、Angular Universalでは未提供の、必要なリソースをHTTP/2 Server Pushする機能を独自に実装し(ようとし)たお話もする予定です。


                            - +
                            @@ -777,7 +777,7 @@

                            React + Apollo Client (GraphQL) により変化するアプリケーショ このトークでは Apollo についてや、それによってどのようにクライアントの設計が変わってくるのかという話をしたいと思います。


                            - +
                            @@ -844,7 +844,7 @@

                            Code And Learn

                            Code & Learn events allow you to get started (or go further) with Node.js core contributions. Experienced contributors help guide you through your first (or second or third or fourth) commit to Node.js core. They also are available to provide impromptu guided tours through specific areas of Node.js core source code.


                            - +
                            @@ -895,7 +895,7 @@

                            NodeSchool


                            - +
                            @@ -935,7 +935,7 @@

                            Workshop: Building hardware


                            - +
                            @@ -964,7 +964,7 @@

                            Workshop: Hands-On React

                            This workshop is best for developers who have never used React or have only used it a little and want to gain deeper understanding.


                            - +
                            @@ -996,7 +996,7 @@

                            ワークショップ: 分散ストレージ体験

                            ・ Node.js を使って DAT をリモートプロセスでやりとりする。


                            - +
                            @@ -1028,7 +1028,7 @@

                            Workshop: Building a Small Compiler in JavaScript

                            This workshop is for people who are already somewhat familiar with JavaScript (just the language itself, not any particular library or framework). To get started, you only need the workshop git repository (TBA), a Terminal / Console, Node.js 8+, and a text editor of your choice.


                            - +
                            @@ -1048,7 +1048,7 @@

                            Workshop: JavaScript TodoMVC


                            - +
                            diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index fc13115..d6a6536 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -71,7 +71,7 @@ var page = {

                            <%= entry.description %>


                            <% if(entry.person){%> - +
                            <%}%> <% if (speaker) { const bio = speaker.biography %> diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index 1b67871..b6b027d 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2740,7 +2740,9 @@ a.confcal-button-inactive { } .room-list { - + display: flex; + flex-direction: column; + height: 100vh; li { display: none; @@ -2750,7 +2752,15 @@ a.confcal-button-inactive { } } -#room-time-container{ +.room-entry-current { + flex: 4; +} + +.room-entry-before,.room-entry-after { + flex: 1; +} + +#room-time-container { width: 100%; display: flex; position: sticky; @@ -2762,4 +2772,13 @@ a.confcal-button-inactive { font-size: 1.5em; text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px; padding: 0.1em 0.5em; +} + +.room-image { + height: 300px; + width: 300px; + background-clip: content-box; + background-size: cover; + background-position: center; + border-radius: 50%; } \ No newline at end of file From 6bbc3cddcd1112b37b36e56eb95e86ab38e1e7cf Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 21:38:41 +0900 Subject: [PATCH 28/39] Added gray overlay for room-entry-before and made room-time-container's position above the overlay --- 2018/main.css | 2 +- 2018/src/scss/main.scss | 18 ++++++++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/2018/main.css b/2018/main.css index 85212fd..28e2205 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list{display:flex;flex-direction:column;height:100vh}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}.room-entry-current{flex:4}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:300px;width:300px;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list{display:flex;flex-direction:column;height:100vh}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}.room-entry-current{flex:4}.room-entry-before{position:relative;top:0;bottom:0;left:0;right:0;height:100%;width:100%;opacity:.5;transition:.3s ease;background-color:#b3b3b3;z-index:1}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:200px;width:200px;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index b6b027d..daa2004 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2756,6 +2756,19 @@ a.confcal-button-inactive { flex: 4; } +.room-entry-before { + position: relative; + top: 0; + bottom: 0; + left: 0; + right: 0; + height: 100%; + width: 100%; + opacity: 0.5; + transition: .3s ease; + background-color:#b3b3b3; + z-index: 1; +} .room-entry-before,.room-entry-after { flex: 1; } @@ -2765,6 +2778,7 @@ a.confcal-button-inactive { display: flex; position: sticky; top: 0; + z-index: 2; } .room-time { @@ -2775,8 +2789,8 @@ a.confcal-button-inactive { } .room-image { - height: 300px; - width: 300px; + height: 200px; + width: 200px; background-clip: content-box; background-size: cover; background-position: center; From e10e520502c5d866a5ee6f6111169db6215c7b25 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Thu, 22 Nov 2018 23:51:05 +0900 Subject: [PATCH 29/39] Went crazy with flexbox --- 2018/main.css | 2 +- 2018/src/scss/main.scss | 40 +++++++++++++++++++++++----------------- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/2018/main.css b/2018/main.css index 28e2205..3c0a0e4 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list{display:flex;flex-direction:column;height:100vh}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:list-item}.room-entry-current{flex:4}.room-entry-before{position:relative;top:0;bottom:0;left:0;right:0;height:100%;width:100%;opacity:.5;transition:.3s ease;background-color:#b3b3b3;z-index:1}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:200px;width:200px;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list{display:flex;flex-direction:column;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:flex;overflow:hidden;position:relative}.room-entry-current{flex-grow:8}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:100%;width:20%;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index daa2004..7344095 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2742,32 +2742,38 @@ a.confcal-button-inactive { .room-list { display: flex; flex-direction: column; - height: 100vh; + position: absolute; + top: 0; + left:0; + width: 100%; + height: 100%; + overflow: hidden; li { display: none; - &.room-entry-before, &.room-entry-after, &.room-entry-current { - display: list-item; + display: flex; + overflow: hidden; + position: relative; } } } .room-entry-current { - flex: 4; + flex-grow: 8; } .room-entry-before { - position: relative; - top: 0; - bottom: 0; - left: 0; - right: 0; - height: 100%; - width: 100%; - opacity: 0.5; - transition: .3s ease; - background-color:#b3b3b3; - z-index: 1; + // position: relative; + // top: 0; + // bottom: 0; + // left: 0; + // right: 0; + // height: 100%; + // width: 100%; + // opacity: 0.5; + // transition: .3s ease; + // background-color:#b3b3b3; + // z-index: 1; } .room-entry-before,.room-entry-after { flex: 1; @@ -2789,8 +2795,8 @@ a.confcal-button-inactive { } .room-image { - height: 200px; - width: 200px; + height: 100%; + width: 20%; background-clip: content-box; background-size: cover; background-position: center; From c1461110fdac96e036db0b6dc3c6063ebe9ebfed Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 00:02:02 +0900 Subject: [PATCH 30/39] Making sure that the entire container is hidden. --- 2018/main.js | 2 +- 2018/src/js/page/room.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/2018/main.js b/2018/main.js index 6a0a7b5..27ee683 100644 --- a/2018/main.js +++ b/2018/main.js @@ -1 +1 @@ -!function A(o,q,c){function W(b,M){if(!q[b]){if(!o[b]){var z="function"==typeof require&&require;if(!M&&z)return z(b,!0);if(n)return n(b,!0);var p=new Error("Cannot find module '"+b+"'");throw p.code="MODULE_NOT_FOUND",p}var O=q[b]={exports:{}};o[b][0].call(O.exports,function(M){return W(o[b][1][M]||M)},O,O.exports,A,o,q,c)}return q[b].exports}for(var n="function"==typeof require&&require,M=0;M= 2.6.0. You are using Moment.js "+A.version+". See momentjs.com"),t.prototype={_set:function(M){this.name=M.name,this.abbrs=M.abbrs,this.untils=M.untils,this.offsets=M.offsets,this.population=M.population},_index:function(M){var b,z=+M,p=this.untils;for(b=0;b= 2.9.0. You are using Moment.js "+A.version+"."),A.defaultZone=M?s(M):null,A};var g=A.momentProperties;return"[object Array]"===Object.prototype.toString.call(g)?(g.push("_z"),g.push("_a")):g&&(g._z=null),A})},{moment:6}],6:[function(Pz,xz,M){var b,z;b=this,z=function(){"use strict";var M,O;function e(){return M.apply(null,arguments)}function q(M){return M instanceof Array||"[object Array]"===Object.prototype.toString.call(M)}function c(M){return null!=M&&"[object Object]"===Object.prototype.toString.call(M)}function W(M){return void 0===M}function n(M){return"number"==typeof M||"[object Number]"===Object.prototype.toString.call(M)}function d(M){return M instanceof Date||"[object Date]"===Object.prototype.toString.call(M)}function a(M,b){var z,p=[];for(z=0;z>>0,p=0;psM(M)?(A=M+1,q-sM(M)):(A=M,q),{year:A,dayOfYear:o}}function PM(M,b,z){var p,O,A=kM(M.year(),b,z),o=Math.floor((M.dayOfYear()-A-1)/7)+1;return o<1?p=o+xM(O=M.year()-1,b,z):o>xM(M.year(),b,z)?(p=o-xM(M.year(),b,z),O=M.year()+1):(O=M.year(),p=o),{week:p,year:O}}function xM(M,b,z){var p=kM(M,b,z),O=kM(M+1,b,z);return(sM(M)-p+O)/7}P("w",["ww",2],"wo","week"),P("W",["WW",2],"Wo","isoWeek"),S("week","w"),S("isoWeek","W"),E("week",5),E("isoWeek",5),cM("w",Q),cM("ww",Q,j),cM("W",Q),cM("WW",Q,j),aM(["w","ww","W","WW"],function(M,b,z,p){b[p.substr(0,1)]=u(M)});P("d",0,"do","day"),P("dd",0,0,function(M){return this.localeData().weekdaysMin(this,M)}),P("ddd",0,0,function(M){return this.localeData().weekdaysShort(this,M)}),P("dddd",0,0,function(M){return this.localeData().weekdays(this,M)}),P("e",0,0,"weekday"),P("E",0,0,"isoWeekday"),S("day","d"),S("weekday","e"),S("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),cM("d",Q),cM("e",Q),cM("E",Q),cM("dd",function(M,b){return b.weekdaysMinRegex(M)}),cM("ddd",function(M,b){return b.weekdaysShortRegex(M)}),cM("dddd",function(M,b){return b.weekdaysRegex(M)}),aM(["dd","ddd","dddd"],function(M,b,z,p){var O=z._locale.weekdaysParse(M,p,z._strict);null!=O?b.d=O:X(z).invalidWeekday=M}),aM(["d","e","E"],function(M,b,z,p){b[p]=u(M)});var IM="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var UM="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var jM="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var YM=oM;var GM=oM;var KM=oM;function QM(){function M(M,b){return b.length-M.length}var b,z,p,O,A,o=[],q=[],c=[],W=[];for(b=0;b<7;b++)z=i([2e3,1]).day(b),p=this.weekdaysMin(z,""),O=this.weekdaysShort(z,""),A=this.weekdays(z,""),o.push(p),q.push(O),c.push(A),W.push(p),W.push(O),W.push(A);for(o.sort(M),q.sort(M),c.sort(M),W.sort(M),b=0;b<7;b++)q[b]=nM(q[b]),c[b]=nM(c[b]),W[b]=nM(W[b]);this._weekdaysRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+q.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function JM(){return this.hours()%12||12}function ZM(M,b){P(M,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),b)})}function $M(M,b){return b._meridiemParse}P("H",["HH",2],0,"hour"),P("h",["hh",2],0,JM),P("k",["kk",2],0,function(){return this.hours()||24}),P("hmm",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)}),P("hmmss",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)+w(this.seconds(),2)}),P("Hmm",0,0,function(){return""+this.hours()+w(this.minutes(),2)}),P("Hmmss",0,0,function(){return""+this.hours()+w(this.minutes(),2)+w(this.seconds(),2)}),ZM("a",!0),ZM("A",!1),S("hour","h"),E("hour",13),cM("a",$M),cM("A",$M),cM("H",Q),cM("h",Q),cM("k",Q),cM("HH",Q,j),cM("hh",Q,j),cM("kk",Q,j),cM("hmm",J),cM("hmmss",Z),cM("Hmm",J),cM("Hmmss",Z),eM(["H","HH"],XM),eM(["k","kk"],function(M,b,z){var p=u(M);b[XM]=24===p?0:p}),eM(["a","A"],function(M,b,z){z._isPm=z._locale.isPM(M),z._meridiem=M}),eM(["h","hh"],function(M,b,z){b[XM]=u(M),X(z).bigHour=!0}),eM("hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p)),X(z).bigHour=!0}),eM("hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p,2)),b[BM]=u(M.substr(O)),X(z).bigHour=!0}),eM("Hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p))}),eM("Hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p,2)),b[BM]=u(M.substr(O))});var Mb,bb=HM("Hours",!0),zb={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:SM,monthsShort:yM,week:{dow:0,doy:6},weekdays:IM,weekdaysMin:jM,weekdaysShort:UM,meridiemParse:/[ap]\.?m?\.?/i},pb={},Ob={};function Ab(M){return M?M.toLowerCase().replace("_","-"):M}function ob(M){var b=null;if(!pb[M]&&void 0!==xz&&xz&&xz.exports)try{b=Mb._abbr,Pz("./locale/"+M),qb(b)}catch(M){}return pb[M]}function qb(M,b){var z;return M&&((z=W(b)?Wb(M):cb(M,b))?Mb=z:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+M+" not found. Did you forget to load it?")),Mb._abbr}function cb(M,b){if(null===b)return delete pb[M],null;var z,p=zb;if(b.abbr=M,null!=pb[M])H("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),p=pb[M]._config;else if(null!=b.parentLocale)if(null!=pb[b.parentLocale])p=pb[b.parentLocale]._config;else{if(null==(z=ob(b.parentLocale)))return Ob[b.parentLocale]||(Ob[b.parentLocale]=[]),Ob[b.parentLocale].push({name:M,config:b}),null;p=z._config}return pb[M]=new F(m(p,b)),Ob[M]&&Ob[M].forEach(function(M){cb(M.name,M.config)}),qb(M),pb[M]}function Wb(M){var b;if(M&&M._locale&&M._locale._abbr&&(M=M._locale._abbr),!M)return Mb;if(!q(M)){if(b=ob(M))return b;M=[M]}return function(M){for(var b,z,p,O,A=0;A=b&&o(O,z,!0)>=b-1)break;b--}A++}return Mb}(M)}function nb(M){var b,z=M._a;return z&&-2===X(M).overflow&&(b=z[RM]<0||11FM(z[tM],z[RM])?iM:z[XM]<0||24xM(z,A,o)?X(M)._overflowWeeks=!0:null!=c?X(M)._overflowWeekday=!0:(q=DM(z,p,O,A,o),M._a[tM]=q.year,M._dayOfYear=q.dayOfYear)}(M),null!=M._dayOfYear&&(A=db(M._a[tM],p[tM]),(M._dayOfYear>sM(A)||0===M._dayOfYear)&&(X(M)._overflowDayOfYear=!0),z=VM(A,0,M._dayOfYear),M._a[RM]=z.getUTCMonth(),M._a[iM]=z.getUTCDate()),b=0;b<3&&null==M._a[b];++b)M._a[b]=o[b]=p[b];for(;b<7;b++)M._a[b]=o[b]=null==M._a[b]?2===b?1:0:M._a[b];24===M._a[XM]&&0===M._a[rM]&&0===M._a[BM]&&0===M._a[fM]&&(M._nextDay=!0,M._a[XM]=0),M._d=(M._useUTC?VM:function(M,b,z,p,O,A,o){var q=new Date(M,b,z,p,O,A,o);return M<100&&0<=M&&isFinite(q.getFullYear())&&q.setFullYear(M),q}).apply(null,o),O=M._useUTC?M._d.getUTCDay():M._d.getDay(),null!=M._tzm&&M._d.setUTCMinutes(M._d.getUTCMinutes()-M._tzm),M._nextDay&&(M._a[XM]=24),M._w&&void 0!==M._w.d&&M._w.d!==O&&(X(M).weekdayMismatch=!0)}}var ab=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tb=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Rb=/Z|[+-]\d\d(?::?\d\d)?/,ib=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Xb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],rb=/^\/?Date\((\-?\d+)/i;function Bb(M){var b,z,p,O,A,o,q=M._i,c=ab.exec(q)||tb.exec(q);if(c){for(X(M).iso=!0,b=0,z=ib.length;bz.valueOf():z.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cz.isLocal=function(){return!!this.isValid()&&!this._isUTC},cz.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cz.isUtc=kb,cz.isUTC=kb,cz.zoneAbbr=function(){return this._isUTC?"UTC":""},cz.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cz.dates=z("dates accessor is deprecated. Use date instead.",zz),cz.months=z("months accessor is deprecated. Use month instead",CM),cz.years=z("years accessor is deprecated. Use year instead",hM),cz.zone=z("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(M,b){return null!=M?("string"!=typeof M&&(M=-M),this.utcOffset(M,b),this):-this.utcOffset()}),cz.isDSTShifted=z("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!W(this._isDSTShifted))return this._isDSTShifted;var M={};if(f(M,this),(M=Nb(M))._a){var b=M._isUTC?i(M._a):Hb(M._a);this._isDSTShifted=this.isValid()&&0W&&++A= 2.6.0. You are using Moment.js "+A.version+". See momentjs.com"),t.prototype={_set:function(M){this.name=M.name,this.abbrs=M.abbrs,this.untils=M.untils,this.offsets=M.offsets,this.population=M.population},_index:function(M){var b,z=+M,p=this.untils;for(b=0;b= 2.9.0. You are using Moment.js "+A.version+"."),A.defaultZone=M?s(M):null,A};var g=A.momentProperties;return"[object Array]"===Object.prototype.toString.call(g)?(g.push("_z"),g.push("_a")):g&&(g._z=null),A})},{moment:6}],6:[function(Pz,xz,M){var b,z;b=this,z=function(){"use strict";var M,O;function e(){return M.apply(null,arguments)}function q(M){return M instanceof Array||"[object Array]"===Object.prototype.toString.call(M)}function c(M){return null!=M&&"[object Object]"===Object.prototype.toString.call(M)}function W(M){return void 0===M}function n(M){return"number"==typeof M||"[object Number]"===Object.prototype.toString.call(M)}function d(M){return M instanceof Date||"[object Date]"===Object.prototype.toString.call(M)}function a(M,b){var z,p=[];for(z=0;z>>0,p=0;psM(M)?(A=M+1,q-sM(M)):(A=M,q),{year:A,dayOfYear:o}}function PM(M,b,z){var p,O,A=kM(M.year(),b,z),o=Math.floor((M.dayOfYear()-A-1)/7)+1;return o<1?p=o+xM(O=M.year()-1,b,z):o>xM(M.year(),b,z)?(p=o-xM(M.year(),b,z),O=M.year()+1):(O=M.year(),p=o),{week:p,year:O}}function xM(M,b,z){var p=kM(M,b,z),O=kM(M+1,b,z);return(sM(M)-p+O)/7}P("w",["ww",2],"wo","week"),P("W",["WW",2],"Wo","isoWeek"),S("week","w"),S("isoWeek","W"),E("week",5),E("isoWeek",5),cM("w",Q),cM("ww",Q,j),cM("W",Q),cM("WW",Q,j),aM(["w","ww","W","WW"],function(M,b,z,p){b[p.substr(0,1)]=u(M)});P("d",0,"do","day"),P("dd",0,0,function(M){return this.localeData().weekdaysMin(this,M)}),P("ddd",0,0,function(M){return this.localeData().weekdaysShort(this,M)}),P("dddd",0,0,function(M){return this.localeData().weekdays(this,M)}),P("e",0,0,"weekday"),P("E",0,0,"isoWeekday"),S("day","d"),S("weekday","e"),S("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),cM("d",Q),cM("e",Q),cM("E",Q),cM("dd",function(M,b){return b.weekdaysMinRegex(M)}),cM("ddd",function(M,b){return b.weekdaysShortRegex(M)}),cM("dddd",function(M,b){return b.weekdaysRegex(M)}),aM(["dd","ddd","dddd"],function(M,b,z,p){var O=z._locale.weekdaysParse(M,p,z._strict);null!=O?b.d=O:X(z).invalidWeekday=M}),aM(["d","e","E"],function(M,b,z,p){b[p]=u(M)});var IM="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var UM="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var jM="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var YM=oM;var GM=oM;var KM=oM;function QM(){function M(M,b){return b.length-M.length}var b,z,p,O,A,o=[],q=[],c=[],W=[];for(b=0;b<7;b++)z=i([2e3,1]).day(b),p=this.weekdaysMin(z,""),O=this.weekdaysShort(z,""),A=this.weekdays(z,""),o.push(p),q.push(O),c.push(A),W.push(p),W.push(O),W.push(A);for(o.sort(M),q.sort(M),c.sort(M),W.sort(M),b=0;b<7;b++)q[b]=nM(q[b]),c[b]=nM(c[b]),W[b]=nM(W[b]);this._weekdaysRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+q.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function JM(){return this.hours()%12||12}function ZM(M,b){P(M,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),b)})}function $M(M,b){return b._meridiemParse}P("H",["HH",2],0,"hour"),P("h",["hh",2],0,JM),P("k",["kk",2],0,function(){return this.hours()||24}),P("hmm",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)}),P("hmmss",0,0,function(){return""+JM.apply(this)+w(this.minutes(),2)+w(this.seconds(),2)}),P("Hmm",0,0,function(){return""+this.hours()+w(this.minutes(),2)}),P("Hmmss",0,0,function(){return""+this.hours()+w(this.minutes(),2)+w(this.seconds(),2)}),ZM("a",!0),ZM("A",!1),S("hour","h"),E("hour",13),cM("a",$M),cM("A",$M),cM("H",Q),cM("h",Q),cM("k",Q),cM("HH",Q,j),cM("hh",Q,j),cM("kk",Q,j),cM("hmm",J),cM("hmmss",Z),cM("Hmm",J),cM("Hmmss",Z),eM(["H","HH"],XM),eM(["k","kk"],function(M,b,z){var p=u(M);b[XM]=24===p?0:p}),eM(["a","A"],function(M,b,z){z._isPm=z._locale.isPM(M),z._meridiem=M}),eM(["h","hh"],function(M,b,z){b[XM]=u(M),X(z).bigHour=!0}),eM("hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p)),X(z).bigHour=!0}),eM("hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p,2)),b[BM]=u(M.substr(O)),X(z).bigHour=!0}),eM("Hmm",function(M,b,z){var p=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p))}),eM("Hmmss",function(M,b,z){var p=M.length-4,O=M.length-2;b[XM]=u(M.substr(0,p)),b[rM]=u(M.substr(p,2)),b[BM]=u(M.substr(O))});var Mb,bb=HM("Hours",!0),zb={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:SM,monthsShort:yM,week:{dow:0,doy:6},weekdays:IM,weekdaysMin:jM,weekdaysShort:UM,meridiemParse:/[ap]\.?m?\.?/i},pb={},Ob={};function Ab(M){return M?M.toLowerCase().replace("_","-"):M}function ob(M){var b=null;if(!pb[M]&&void 0!==xz&&xz&&xz.exports)try{b=Mb._abbr,Pz("./locale/"+M),qb(b)}catch(M){}return pb[M]}function qb(M,b){var z;return M&&((z=W(b)?Wb(M):cb(M,b))?Mb=z:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+M+" not found. Did you forget to load it?")),Mb._abbr}function cb(M,b){if(null===b)return delete pb[M],null;var z,p=zb;if(b.abbr=M,null!=pb[M])H("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),p=pb[M]._config;else if(null!=b.parentLocale)if(null!=pb[b.parentLocale])p=pb[b.parentLocale]._config;else{if(null==(z=ob(b.parentLocale)))return Ob[b.parentLocale]||(Ob[b.parentLocale]=[]),Ob[b.parentLocale].push({name:M,config:b}),null;p=z._config}return pb[M]=new F(m(p,b)),Ob[M]&&Ob[M].forEach(function(M){cb(M.name,M.config)}),qb(M),pb[M]}function Wb(M){var b;if(M&&M._locale&&M._locale._abbr&&(M=M._locale._abbr),!M)return Mb;if(!q(M)){if(b=ob(M))return b;M=[M]}return function(M){for(var b,z,p,O,A=0;A=b&&o(O,z,!0)>=b-1)break;b--}A++}return Mb}(M)}function nb(M){var b,z=M._a;return z&&-2===X(M).overflow&&(b=z[RM]<0||11FM(z[tM],z[RM])?iM:z[XM]<0||24xM(z,A,o)?X(M)._overflowWeeks=!0:null!=c?X(M)._overflowWeekday=!0:(q=DM(z,p,O,A,o),M._a[tM]=q.year,M._dayOfYear=q.dayOfYear)}(M),null!=M._dayOfYear&&(A=db(M._a[tM],p[tM]),(M._dayOfYear>sM(A)||0===M._dayOfYear)&&(X(M)._overflowDayOfYear=!0),z=VM(A,0,M._dayOfYear),M._a[RM]=z.getUTCMonth(),M._a[iM]=z.getUTCDate()),b=0;b<3&&null==M._a[b];++b)M._a[b]=o[b]=p[b];for(;b<7;b++)M._a[b]=o[b]=null==M._a[b]?2===b?1:0:M._a[b];24===M._a[XM]&&0===M._a[rM]&&0===M._a[BM]&&0===M._a[fM]&&(M._nextDay=!0,M._a[XM]=0),M._d=(M._useUTC?VM:function(M,b,z,p,O,A,o){var q=new Date(M,b,z,p,O,A,o);return M<100&&0<=M&&isFinite(q.getFullYear())&&q.setFullYear(M),q}).apply(null,o),O=M._useUTC?M._d.getUTCDay():M._d.getDay(),null!=M._tzm&&M._d.setUTCMinutes(M._d.getUTCMinutes()-M._tzm),M._nextDay&&(M._a[XM]=24),M._w&&void 0!==M._w.d&&M._w.d!==O&&(X(M).weekdayMismatch=!0)}}var ab=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tb=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Rb=/Z|[+-]\d\d(?::?\d\d)?/,ib=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Xb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],rb=/^\/?Date\((\-?\d+)/i;function Bb(M){var b,z,p,O,A,o,q=M._i,c=ab.exec(q)||tb.exec(q);if(c){for(X(M).iso=!0,b=0,z=ib.length;bz.valueOf():z.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cz.isLocal=function(){return!!this.isValid()&&!this._isUTC},cz.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cz.isUtc=kb,cz.isUTC=kb,cz.zoneAbbr=function(){return this._isUTC?"UTC":""},cz.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cz.dates=z("dates accessor is deprecated. Use date instead.",zz),cz.months=z("months accessor is deprecated. Use month instead",CM),cz.years=z("years accessor is deprecated. Use year instead",hM),cz.zone=z("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(M,b){return null!=M?("string"!=typeof M&&(M=-M),this.utcOffset(M,b),this):-this.utcOffset()}),cz.isDSTShifted=z("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!W(this._isDSTShifted))return this._isDSTShifted;var M={};if(f(M,this),(M=Nb(M))._a){var b=M._isUTC?i(M._a):Hb(M._a);this._isDSTShifted=this.isValid()&&0W&&++A Date: Fri, 23 Nov 2018 00:04:33 +0900 Subject: [PATCH 31/39] Adding clear background to page. --- 2018/main.css | 2 +- 2018/src/html/room.ejs | 2 +- 2018/src/scss/main.scss | 4 ++++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/2018/main.css b/2018/main.css index 3c0a0e4..9416994 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-list{display:flex;flex-direction:column;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:flex;overflow:hidden;position:relative}.room-entry-current{flex-grow:8}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:100%;width:20%;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-page{background:#eada96}.room-list{display:flex;flex-direction:column;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:flex;overflow:hidden;position:relative}.room-entry-current{flex-grow:8}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:100%;width:20%;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index d6a6536..0235cc5 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -14,7 +14,7 @@ var page = { Room - +
                            diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index 7344095..ff070fe 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2739,6 +2739,10 @@ a.confcal-button-inactive { } } +.room-page { + background: #eada96; +} + .room-list { display: flex; flex-direction: column; From 82509b6eab7ae4e2bdabcdcdc3bfdc0154242177 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 00:12:44 +0900 Subject: [PATCH 32/39] Making the screen full. --- 2018/main.css | 2 +- 2018/src/scss/main.scss | 26 ++++++++++++++++++-------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/2018/main.css b/2018/main.css index 9416994..70347c6 100644 --- a/2018/main.css +++ b/2018/main.css @@ -1 +1 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-page{background:#eada96}.room-list{display:flex;flex-direction:column;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:flex;overflow:hidden;position:relative}.room-entry-current{flex-grow:8}.room-entry-after,.room-entry-before{flex:1}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:100%;width:20%;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file +@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}body{line-height:1.618;font-family:-apple-system,Helvetica Neue,Hiragino Sans,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;color:#2d293e;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.8) 10%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}body.is-expand{overflow:hidden}a{text-decoration:underline;color:inherit}a:hover{text-decoration:none}strong{font-weight:700}.Button{display:block;box-sizing:border-box;position:relative;border:1px solid #fff;padding:.75em;background:0 0;color:#fff;font-size:1rem;font-family:inherit;font-weight:100;letter-spacing:.125em;text-align:center;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color 150ms ease-in}.Button.-primary{border-color:#d75a43;background-color:#d75a43;font-weight:400;box-shadow:2px 2px 0 0 rgba(28,34,38,.25);transition:all 150ms ease-in}.Button.-primary:hover{background-color:#e18370}.Button.-primary:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-interactive{border:4px solid #fffef7;background-color:#f9e057;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-interactive:hover{background-color:#fcefa7}.Button.-interactive:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-conference{border:4px solid #fffef7;background-color:#80bd01;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-conference:hover{background-color:#c0de7c}.Button.-conference:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.-sponsors{border:4px solid #fffef7;background-color:#f7df1e;font-weight:400;color:#263238;box-shadow:2px 2px 0 0 rgba(28,34,38,.5);transition:all 150ms ease-in}.Button.-sponsors:hover{background-color:#fbef8b}.Button.-sponsors:active{-webkit-transform:translate(2px,2px);transform:translate(2px,2px);box-shadow:0 0 0 0 rgba(255,254,247,.75)}.Button.is-disabled{border-color:#bcbba9;background-color:#bcbba9;color:#00111c;text-decoration:line-through;pointer-events:none}.Button.is-disabled:hover{text-decoration:line-through;background-color:#bcbba9}.Button.is-disabled:active{-webkit-transform:translate(0,0);transform:translate(0,0);box-shadow:2px 2px 0 0 rgba(28,34,38,.5)}.Button.-invert{border-color:#152a58;color:#152a58}.Button.-invert.-cfs:hover{border-color:#152a58;background-color:#152a58;color:#fff}.Button:hover{text-decoration:none}@media (min-width:480px){.Button{font-size:1.6rem}}.Hex{display:inline-block;width:320px;vertical-align:top}.Hex-outer{width:100%;height:0;padding-bottom:115.4%;display:block;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:rotate(-60deg) skewY(30deg);transform:rotate(-60deg) skewY(30deg);overflow:hidden;position:relative}.Hex-inner{width:auto;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;-webkit-transform:skewY(-30deg) rotate(60deg);transform:skewY(-30deg) rotate(60deg)}.Hex-image{width:369.28px;height:369.28px;-webkit-transform:translateX(-24.64px);transform:translateX(-24.64px);-webkit-filter:brightness(75%) grayscale(100%) sepia(50%);filter:brightness(75%) grayscale(100%) sepia(50%);transition:.3s -webkit-filter ease-out;transition:.3s filter ease-out;transition:.3s filter ease-out,.3s -webkit-filter ease-out}.header{position:absolute;top:0;left:0;right:0}.header:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-header.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.header{position:static;padding-top:0;color:#fffef7}}@media (min-width:1600px){.header:before{max-width:1600px;background-size:contain}}@media (min-width:768px){.header-inner{position:relative;z-index:10;box-sizing:border-box;display:flex;margin-left:auto;margin-right:auto;padding-left:192px;max-width:64rem}}.header-logo{display:block;position:absolute;left:.5rem;top:.5rem}.header-logo>img{box-sizing:border-box;border:1px solid #fffef7;padding:3px;width:48px;height:48px}@media (min-width:768px){.header-logo{left:1rem;top:1rem}.header-logo>img{box-sizing:border-box;border:3px solid #fffef7;padding:8px;width:128px;height:128px}}@media (min-width:992px){.header-logo{left:0;top:1rem}}.header-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.header-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.header-button{display:none}}.header-icon{width:32px;height:32px;fill:#fffef7}@media (min-width:768px){.header-icon{width:3rem;height:3rem}}.navigation{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925)}.navigation.is-expand{display:block}.navigation.is-embed{display:block;position:relative}@media (min-width:992px){.navigation{display:block;padding:0;position:static;flex:1 1 auto;background-color:transparent}}.navigation-list{padding:4rem 1rem 1rem;background-color:#fffef7}@media (min-width:768px){.navigation-list{padding-top:6rem;font-size:1.25rem}}@media (min-width:992px){.navigation-list{display:flex;flex-wrap:wrap;padding:2rem 0 4rem 0;width:75%;justify-content:space-between;align-items:center;background-color:transparent;height:3rem;font-size:1rem}.navigation-list>*{flex:0 0 33%}}@media (min-width:1200px){.navigation-list{flex-wrap:nowrap;padding:0;width:100%;height:5rem;font-size:1rem}.navigation-list>*{flex:1 0 auto}}.navigation-target{display:block;padding:1em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-weight:200;color:#263238;transition:background-color 150ms ease-in}.navigation-target:hover{background-color:#eada96}.navigation-target.-button{min-width:128px;border:2px solid currentColor;color:#d75a43}@media (min-width:992px){.navigation-target{color:#fffef7}.navigation-target:hover{background-color:rgba(0,17,28,.5)}.navigation-target.-button{color:#fffef7}}.navigation-button{position:absolute;right:.5rem;top:.5rem;width:3rem;height:3rem;line-height:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}@media (min-width:768px){.navigation-button{right:1rem;top:1rem;width:4rem;height:4rem}}@media (min-width:992px){.navigation-button{display:none}}.navigation-icon{width:2rem;height:2rem;fill:#263238}@media (min-width:768px){.navigation-icon{width:3rem;height:3rem}}.cover{background-color:#2d293e;background-image:url(img/bg-header-home-sm.jpg);background-size:142% auto;background-position:center top;background-repeat:no-repeat}@media (min-width:768px){.cover{background-image:url(img/bg-header-home.jpg);background-size:cover}}.cover-header{z-index:10}.cover-header:before{content:none}@media (min-width:768px){.cover-header{margin-left:auto;margin-right:auto;width:64rem}}.cover-inner{position:relative;z-index:2;padding-top:6rem}.cover-inner:before{content:"";position:absolute;top:0;left:0;right:0;z-index:-1;width:100%}@media (min-width:768px){.cover-inner{padding-top:6rem}}.cover-logo{display:block;border:5px solid #fffef7;margin-left:auto;margin-right:auto;margin-bottom:3rem;padding:8px;width:224px;height:224px}@media (min-width:768px){.cover-logo{border:10px solid #fffef7;margin-bottom:3rem;padding:16px;width:384px;height:384px}}.cover-outline{margin-bottom:3rem}@media (min-width:992px){.cover-navigationList{width:100%}}.home{overflow:hidden}.home-intro{position:relative;z-index:1;background-color:#eada96}@media (min-width:768px){.home-intro{background-color:transparent;background:linear-gradient(to bottom,rgba(234,218,150,0),#eada96)}}.home-mountain{position:absolute;top:0;left:50%;right:0;z-index:-1;width:80rem;height:46.3125rem;-webkit-transform:translate3d(-36%,-48%,0);transform:translate3d(-36%,-48%,0)}@media (min-width:768px){.home-mountain{width:160rem;height:92.625rem;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}@media (min-width:1200px){.home-mountain{width:192rem;height:111.15rem}}@media (min-width:1600px){.home-mountain{left:48%;-webkit-transform:translate3d(-32%,-40%,0);transform:translate3d(-32%,-40%,0)}}.home-main{position:relative;z-index:1;background-color:#fffef7;background-image:linear-gradient(to bottom,#eada96 0,rgba(234,218,150,.9) 5%,rgba(234,218,150,.75) 50%,rgba(234,218,150,.8) 90%,#eada96 100%),url(img/bg-tile.svg);background-position:center top;background-size:auto,64px auto}@media (min-width:768px){.home-main{margin-top:2rem}}.home-subhead{margin-bottom:1.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.home-subhead{font-size:1em}}@media (min-width:768px){.home-subhead{margin-bottom:4rem;font-size:3em}}@media (min-width:992px){.home-subhead{margin-bottom:6rem;font-size:4em}}.home-schedule,.home-speakers,.home-venues{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-schedule,.home-speakers,.home-venues{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-schedule,.home-speakers,.home-venues{padding-top:4rem;padding-bottom:4rem}}.home-speakers{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.home-speakers{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-speakers{padding-top:6rem;padding-bottom:6rem}}.home-speakersAction{margin:2.5rem 2rem 0 2rem;text-align:center}.home-speakersAction .Button{display:block;padding:1em 2em;font-size:1.5em}@media (max-width:479px){.home-speakersAction .Button{padding:1em;font-size:1em}}@media (min-width:768px){.home-speakersAction{margin-top:4rem}.home-speakersAction .Button{display:inline-block;padding:1em 2em;font-size:2em}}.home-scheduleBody{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.home-scheduleBody{margin-left:auto;margin-right:auto;max-width:64rem}}.home-scheduleSection{margin:0 0 2rem 0;padding-top:1rem}@media (min-width:768px){.home-scheduleSection{margin:4rem auto 0 auto;max-width:64rem}}.home-scheduleNote{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.home-scheduleNote{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}@media (min-width:1200px){.home-venues{margin-bottom:64px}}.home-sponsors{padding-top:2rem;padding-bottom:2rem;background-color:#00111c;background-image:linear-gradient(to bottom,#00111c 0,#263238 100%);color:#fffef7}@media (min-width:768px){.home-sponsors{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.home-sponsors{padding-top:4rem;padding-bottom:4rem}}.home-sponsorsSubhead{color:inherit}.press{position:relative;z-index:1;padding-top:1rem;padding-bottom:1rem;background-color:#00111c;color:#fffef7}@media (min-width:1200px){.press{padding-top:2rem;padding-bottom:2rem}}.press-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem}@media (min-width:1200px){.press-inner{margin-left:auto;margin-right:auto;max-width:64rem}}.press-subhead{margin-bottom:1rem;letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.press-subhead{font-size:2em}}@media (min-width:992px){.press-subhead{margin-bottom:1rem}}@media (min-width:1200px){.press-subhead{font-size:2em}}@media (min-width:768px){.press-body{font-size:.75em}}@media (min-width:992px){.press-body{font-size:.875em}}.outline{margin-left:auto;margin-right:auto;max-width:64rem;text-align:center}@media (min-width:768px){.outline{margin-bottom:2rem;padding-right:2rem;text-align:right}}.outline-body{display:inline-block;text-align:center;letter-spacing:.16em;color:#2d293e}@media (min-width:768px){.outline-body{line-height:1}}.outline-date{text-transform:uppercase}.outline-date{font-weight:100;font-size:1rem}@media (min-width:768px){.outline-date{margin-bottom:1rem;font-size:1.5rem}}@media (min-width:992px){.outline-date{margin-bottom:1rem;font-size:2rem}}.outline-name{font-weight:100;font-size:2rem}@media (min-width:768px){.outline-name{margin-bottom:1rem;font-size:2.5rem}}@media (min-width:992px){.outline-name{margin-bottom:1rem;font-size:3.5rem}}.intro{box-sizing:border-box;margin-left:.5rem;margin-right:.5rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:768px){.intro{margin-left:1rem;margin-right:1rem}}@media (min-width:992px){.intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;padding:2rem;max-width:64rem}}.intro-title{margin-bottom:1rem;text-align:center;letter-spacing:.08em;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:479px){.intro-title{font-size:.875em}}@media (min-width:768px){.intro-title{margin-bottom:1rem;font-size:2rem}}@media (min-width:992px){.intro-title{margin-bottom:1.5rem;font-size:3rem}}.intro-body{font-size:.875rem}.intro-body p{margin-bottom:1em}.intro-body p:last-child{margin-bottom:0}@media (min-width:768px){.intro-body{font-size:1rem}}.intro-twitter{display:flex;justify-content:center;margin-top:1rem;line-height:1.2;text-align:center;font-size:1.5rem}.intro-twitter a{text-decoration:none;color:#1da1f2}.intro-twitter a:hover{text-decoration:underline}.intro-twitterIcon{width:1.5em;height:1.5em;fill:#1da1f2;vertical-align:-.35em}.page{padding-top:0;padding-bottom:2rem}@media (min-width:768px){.page{padding-top:3rem;padding-bottom:4rem}}@media (min-width:1200px){.page{padding-top:12rem;padding-bottom:8rem}}.page-title{margin-bottom:2.5rem;line-height:4rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:1.5rem;color:#d75a43}@media (max-width:321px){.page-title{font-size:1em}}@media (min-width:768px){.page-title{margin-bottom:6rem;font-size:3em}}@media (min-width:992px){.page-title{margin-bottom:6rem;font-size:4em}}@media (min-width:1200px){.page-title{margin-bottom:8rem;font-size:6em}}.page-section{padding-top:2rem;padding-bottom:2rem}@media (min-width:768px){.page-section{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1200px){.page-section{padding-top:4rem;padding-bottom:4rem}}.page-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#263238}@media (min-width:768px){.page-subhead{font-size:3em}}@media (min-width:992px){.page-subhead{margin-bottom:2rem}}@media (min-width:1200px){.page-subhead{font-size:4em}}.speakers .Hex{width:320px}.speakers .Hex-outer{padding-bottom:115.4%}.speakers .Hex-image{width:369.28px;height:369.28px;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.speakers-list{margin-top:-1rem;text-align:center}.speakers-list>*{display:inline-block;margin-top:1rem}@media (min-width:768px){.speakers-list{display:flex;margin-top:-2rem;margin-left:auto;margin-right:auto;flex-wrap:wrap;flex-direction:row;justify-content:space-around;max-width:64rem}.speakers-list>*{margin-top:2rem;text-align:center}}@media (min-width:992px){.speakers-list{justify-content:space-between}}.speaker{display:block;position:relative;overflow:hidden;cursor:pointer}.speaker .Hex-inner{overflow:hidden}.speaker .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(234,218,150,.5) 0,rgba(215,90,67,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.speaker .Hex-inner::after{background-image:linear-gradient(-140deg,#eada96 0,#d75a43 100%);mix-blend-mode:multiply}}.speaker:hover .speaker-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .speaker-session{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.speaker:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.speaker:hover .Hex-image{-webkit-filter:brightness(75%) grayscale(10%) sepia(0);filter:brightness(75%) grayscale(10%) sepia(0)}.speaker-info{position:absolute;top:66.7%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;color:#fffef7}.speaker-name{letter-spacing:.064em;font-size:1.75rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0)}.speaker-session{letter-spacing:.064em;font-weight:200;font-size:1rem;transition:all .3s ease-out;-webkit-transform:translateY(0);transform:translateY(0);opacity:0}.about-organizer{text-align:center}.organizer{display:inline-block;position:relative;overflow:hidden;text-align:center}.organizer .Hex-inner{overflow:hidden}.organizer .Hex-inner::after{content:"";position:absolute;top:50%;left:0;right:0;bottom:0;background-image:linear-gradient(-140deg,rgba(128,189,1,.5) 0,rgba(97,163,71,.8) 100%);-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:rotate(-30deg) scaleX(1.5);transform:rotate(-30deg) scaleX(1.5);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@supports (mix-blend-mode:multiply){.organizer .Hex-inner::after{background-image:linear-gradient(-140deg,#80bd01 0,#61a347 100%);mix-blend-mode:multiply}}.organizer:hover .organizer-name{-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .organizer-id{opacity:1;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}.organizer:hover .Hex-inner::after{-webkit-transform:rotate(0) scaleX(1.5);transform:rotate(0) scaleX(1.5)}.organizer-image{display:inline-block}.organizer-info{position:absolute;top:50%;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fffef7}.organizer-name{letter-spacing:.064em;font-size:1.5rem;font-weight:100;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (min-width:768px){.organizer-name{font-size:1.75rem}}.organizer-id{letter-spacing:.064em;font-weight:200;font-size:1.25rem;transition:all .3s ease-out;opacity:0}@media (min-width:768px){.organizer-id{font-size:1rem}}.overlay{display:none;overflow-y:auto;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background-color:rgba(0,17,28,.925);padding:4rem 1rem 1rem}.overlay.is-expand{display:block}@media (min-width:768px){.overlay{padding:1rem}.overlay.is-expand{display:flex;align-items:center}}.overlay-content{max-height:100vh;background-color:#fffef7}@media (min-width:768px){.overlay-content{margin-left:auto;margin-right:auto;width:48rem}}.overlay-button{position:absolute;right:8px;top:8px;width:3rem;height:3rem;fill:#263238;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:0 0}.overlay-icon{width:2rem;height:2rem;fill:#fffef7}.team{display:flex;flex-wrap:wrap;margin-left:1rem;margin-right:1rem}.team>*{flex:0 0 50%}@media (min-width:768px){.team{margin-left:2rem;margin-right:2rem}.team>*{flex:0 0 25%}}@media (min-width:1200px){.team{margin-left:auto;margin-right:auto;max-width:64rem}.team>*{flex:0 0 20%}}.team-memberName a{text-decoration:none}.team-memberName a:hover{border-bottom:4px solid #eada96}@media (min-width:480px){.team-memberName{font-size:1.25rem}}@media (min-width:768px){.team-memberName{font-size:1.5rem}}.session-speaker{background-color:#fffef7}@media (min-width:640px){.session-speaker{display:flex}}.session-speakerAvatar{width:100%;padding-top:100%;background-size:cover;background-repeat:no-repeat;background-position:center}@media (min-width:640px){.session-speakerAvatar{flex:0 0 320px;width:320px;min-height:320px;padding-top:0}}.session-speakerProfile{flex:0 1 100%;padding:1rem}@media (min-width:640px){.session-speakerProfile{overflow:hidden;padding:1.5rem 2rem 2rem 2rem;text-align:left}}.session-speakerName{margin-bottom:1rem;line-height:1.2944;font-size:2rem;font-weight:100;letter-spacing:.08em}@media (min-width:640px){.session-speakerName{text-align:left}}.session-speakerBio{font-size:.875rem;text-align:left}.session-speakerLinks{margin-bottom:-.5rem;text-align:center}.session-speakerLinks>li{display:inline-block}.session-speakerLinks>li>a{display:block;padding:.5rem;text-align:center}.session-speakerLinks>li>a>img{vertical-align:middle}@media (min-width:640px){.session-speakerLinks{margin-top:.5rem;text-align:right}.session-speakerLinks>li{display:inline-block;margin-left:.5rem}.session-speakerLinks>li>a{display:block;padding:0;width:2rem;height:2rem;vertical-align:middle;text-align:center}}.session-content{padding:1rem;background-color:#eada96}@media (min-width:640px){.session-content{clear:both;padding:2rem;overflow:hidden}}.session-time{margin-bottom:.5rem;font-size:.875rem;font-weight:700}.session-title{margin-bottom:1rem;line-height:1.2944;font-size:1.5rem;color:#d75a43}.session-summary{font-size:1rem;text-align:left}.confcal{position:relative;font-size:1rem;max-width:64rem;background-color:#fffef7;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;border:4px solid #eada96}.confcal th{padding:.5rem}.confcal td,.confcal th{vertical-align:middle;text-align:left;white-space:nowrap;border-bottom:2px solid #eada96}.confcal table{table-layout:fixed}.confcal thead th{text-align:center;text-transform:uppercase;border-right:none}.confcal tbody td{border-right:2px solid #eada96}.confcal thead tr{height:3rem}.confcal h3{min-width:10rem;font-size:1.2rem;white-space:wrap;display:inline-block;overflow:hidden;line-height:1.2944;padding:0;margin:0}.confcal-text{line-height:1.2944;display:block;padding:.5rem 1.5rem .5rem 1rem}.confcal-byline{line-height:1.2944;font-size:.875rem;letter-spacing:.08em;font-weight:100}.confcal-header{margin:2rem;display:flex;flex-direction:row;align-items:center;height:6rem;border:4px solid #61a347}.confcal-button{align-self:stretch;flex-direction:column;flex:1;display:flex;justify-content:center;line-height:1.2944;text-align:center}.confcal-button.confcal-button-active,.confcal-button.confcal-button-inactive:hover{text-decoration:none;background-color:#61a347;color:#3f6630}.confcal-button.confcal-button-active .confcal-buttonTitle,.confcal-button.confcal-button-inactive:hover .confcal-buttonTitle{color:#3f6630}.confcal-button-active .confcal-buttonTitle{font-weight:700}.confcal-buttonTitle{line-height:.9em;padding-bottom:.2em;flex:flex-shrink;font-weight:300;font-size:3em}@media (max-width:640px){.confcal-buttonTitle{font-size:6vw}}.confcal-date{flex:flex-shrink;font-size:1.2rem;line-height:1.2944}@media (max-width:640px){.confcal-date{font-size:6vw}}a.confcal-button-inactive{cursor:pointer!important;text-decoration:none;color:#61a347}.confcal-title{font-weight:700}.confcal-slot{background-color:#fffef7;height:3rem}.confcal-slot-by{height:5.2rem}.confcal-slot-break{height:2rem;background-color:#eeeddb}.confcal-entry-break{background-color:#eeeddb}.confcal-slots{width:7rem;left:2rem;margin-bottom:2rem;position:relative}.confcal-slots th{border-left:2px solid #eada96;line-height:1;font-weight:400;font-size:.875rem;text-align:center;vertical-align:middle;background-color:#fffef7}.confcal-box{position:absolute;left:9rem;right:2rem;overflow:scroll}.confcal-rooms{margin-bottom:1rem}@media (min-width:992px){.schedule-body{margin-left:auto;margin-right:auto;max-width:64rem}}.schedule-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.schedule-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:64rem;font-size:.875rem}}.venue-body{margin-left:1rem;margin-right:1rem}@media (min-width:992px){.venue-body{margin-left:auto;margin-right:auto;max-width:64rem}}.venue-section{margin-bottom:2rem;padding-top:1rem}@media (min-width:768px){.venue-section{margin-top:4rem}}.venue-subhead{margin-bottom:1.5rem;letter-spacing:.08em;line-height:1.2944;text-align:center;text-transform:uppercase;font-weight:200;font-size:1.5rem;color:#263238}@media (min-width:768px){.venue-subhead{font-size:2em}}@media (min-width:992px){.venue-subhead{margin-bottom:3rem}}@media (min-width:1200px){.venue-subhead{font-size:3em}}.venue-link{margin-bottom:.5rem;text-align:right}.venue-linkIcon{margin-right:.25em;vertical-align:middle}.venue-linkIcon img{width:1em;height:1em}.venue-map{display:block;overflow:hidden;height:384px;box-sizing:border-box;background-color:#fffef7;border:4px solid #eada96}@media (min-width:992px){.venue-map{border:8px solid #eada96}}.venue-map .gm-style-iw *{display:block;width:100%}.venue-map .gm-style-iw h4,.venue-map .gm-style-iw p{margin:0;padding:0}.venue-map .gm-style-iw a{color:#4272db}@media (min-width:768px){.venue-map{height:448px}}@media (min-width:768px){.venue-detail{display:flex}.venue-detail>*{flex:1 1 50%}}.venue-access{box-sizing:border-box;padding-top:1rem;padding-bottom:1rem}.venue-station{margin-top:.5rem;font-size:.875rem}.venue-icon{width:auto;height:1.5em;vertical-align:middle}@media (min-width:768px){.venue-icon{height:1.25em}}.venue-name{margin-bottom:.5rem;font-weight:700;font-size:.875rem}@media (min-width:768px){.venue-name{margin-bottom:1rem;font-size:1rem}}@media (min-width:992px){.venue-name{font-size:1.25rem}}.venue-address{font-size:.875rem}.venue-address a{text-decoration:none}.venue-address a:hover{border-bottom:4px solid #d75a43}@media (min-width:768px){.venue-address{font-size:1rem}}.venue-note{margin-top:1rem;font-size:.875rem}@media (min-width:768px){.venue-note{font-size:1rem}}.cfp{position:relative;padding:2rem 0 4rem 0}.cfp:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.cfp{padding:2rem 1rem 12rem}}@media (min-width:1920px){.cfp:before{top:0;left:auto;max-width:1920px;background-size:contain}}.cfp-header{margin-bottom:1.25rem}.cfp-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.cfp-title{font-size:4em}}.cfp-note{margin-top:1rem;text-align:center;font-size:.875rem}.cfp-note p{margin-top:1rem}@media (min-width:768px){.cfp-note{font-size:1rem}}@media (min-width:992px){.cfp-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.cfp-action{display:flex;margin-left:-1rem;margin-right:-1rem}.cfp-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.cfp-button{margin-top:1rem;text-align:center}.cfp-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.cfp-button .Button{padding:1em}}@media (min-width:768px){.cfp-button .Button{padding:.5em 1em;font-size:2em}}.cfp-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.cfp-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.cfp-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.tickets{position:relative;padding:2rem 0 4rem 0}.tickets:before{content:"";position:absolute;bottom:0;left:0;right:0;z-index:-1;width:100%;padding-top:38.54167%;background-image:url(img/bg-tickets.png);background-repeat:no-repeat;background-size:cover}@media (min-width:768px){.tickets{padding:2rem 1rem 12rem}}@media (min-width:1920px){.tickets:before{top:0;left:auto;max-width:1920px;background-size:contain}}.tickets-header{margin-bottom:1.25rem}.tickets-title{line-height:normal;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:768px){.tickets-title{font-size:4em}}.tickets-note{margin-top:1rem;text-align:center;font-size:.875rem}.tickets-note p{margin-top:1rem}@media (min-width:768px){.tickets-note{font-size:1rem}}@media (min-width:992px){.tickets-body{margin-left:auto;margin-right:auto;max-width:64rem}}@media (min-width:992px){.tickets-action{display:flex;margin-left:-1rem;margin-right:-1rem}.tickets-action>*{box-sizing:border-box;flex:0 0 50%;max-width:50%;padding-left:1rem;padding-right:1rem}}.tickets-button{margin-top:1rem;text-align:center}.tickets-button .Button{padding:1em;font-size:1em}@media (max-width:479px){.tickets-button .Button{padding:1em}}@media (min-width:768px){.tickets-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.tickets-buttonLead{display:block;font-size:.75em;text-transform:none}.tickets-inner{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:480px){.tickets-inner{margin-left:1rem;margin-right:1rem}}@media (min-width:1200px){.tickets-inner{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.sponsors-section{margin-bottom:2.5rem}@media (min-width:768px){.sponsors-section{margin-bottom:4rem}}.sponsors-grade{margin-bottom:.5rem;text-align:center;line-height:1;text-align:center;letter-spacing:.064em;font-size:1.5rem;color:#bcbba9}@media (min-width:480px){.sponsors-grade{font-size:1.25rem}}@media (min-width:768px){.sponsors-grade{margin-bottom:1rem;font-size:1.5rem}}.sponsors-list{margin-bottom:1rem}.sponsors-list>*{margin-top:1rem;margin-left:1rem;margin-right:1rem;border:1px solid #eeeddb;background-color:#fff}.sponsors-list.-gold{max-width:1280px;margin-left:auto;margin-right:auto}.sponsors-list.-silver{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-bronze{max-width:960px;margin-left:auto;margin-right:auto}.sponsors-list.-venue{max-width:960px;margin-left:auto;margin-right:auto}@media (min-width:768px){.sponsors-list{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1.5rem}}.sponsors-lead{margin-top:2rem;margin-bottom:1rem;line-height:1.9416;text-align:center;font-size:.875rem}@media (min-width:480px){.sponsors-lead{font-size:1rem}}@media (min-width:768px){.sponsors-lead{margin-bottom:1.5rem}}.sponsors-button{margin-top:1rem;text-align:center}.sponsors-button .Button{margin-left:1rem;margin-right:1rem;padding:1em;font-size:1em}@media (min-width:768px){.sponsors-button .Button{display:inline-block;margin-left:auto;margin-right:auto;padding:.5em 1em;font-size:2em}}.sponsors-action .Button{margin-left:auto;margin-right:auto;max-width:240px;font-size:1rem}@media (min-width:768px){.sponsors-action .Button{font-size:1.5rem;max-width:360px}}@media (min-width:992px){.sponsors-action .Button{font-size:2rem}}.sponsor{text-align:center;background-color:#fff}.sponsor-banner{display:inline-block;padding:1rem}.sponsor-banner.-platinum>img{max-width:280px}.sponsor-banner.-gold>img{max-width:240px}.sponsor-banner.-silver>img{max-width:180px}.sponsor-banner.-bronze>img{max-width:160px}.sponsor-banner.-venue>img{max-width:150px}@media (max-width:479px){.sponsor-banner.-platinum>img{max-width:100%}}@media (min-width:480px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}@media (min-width:768px){.sponsor-banner.-platinum>img{max-width:448px}.sponsor-banner.-gold>img{max-width:320px}.sponsor-banner.-silver>img{max-width:205.71429px}.sponsor-banner.-bronze>img{max-width:213.33333px}.sponsor-banner.-venue>img{max-width:200px}}.prs-section{padding-top:4rem;padding-bottom:2rem;margin-left:1rem;margin-right:1rem}@media (min-width:768px){.prs-section{padding-top:4rem;padding-bottom:4rem}}@media (min-width:1200px){.prs-section{margin-left:auto;margin-right:auto;max-width:64rem}}.prs-grade{margin-bottom:2rem;line-height:1;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-weight:100;font-size:2rem;color:#d75a43}@media (min-width:480px){.prs-grade{margin-bottom:2rem}}@media (min-width:768px){.prs-grade{margin-bottom:4rem;font-size:4em}}.prs-list{margin-left:-.5rem;margin-right:-.5rem}.prs-list>*{box-sizing:border-box;margin-bottom:1rem;padding-left:.5rem;padding-right:.5rem}@media (min-width:768px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-platinum>*{width:100%}.prs-list.-bronze>*,.prs-list.-gold>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 50%;max-width:50%}}@media (min-width:992px){.prs-list{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.prs-list>*{margin-bottom:2rem;padding-left:1rem;padding-right:1rem}.prs-list.-bronze>*,.prs-list.-silver>*,.prs-list.-venue>*{flex:0 0 33.3%;max-width:33.3%}}.pr{background-color:#eeeddb}.pr.-platinum .pr-logo{padding-top:1rem;padding-bottom:1rem}.pr.-platinum .pr-name{font-size:1.5rem}.pr.-platinum .pr-description{font-size:1.125rem}.pr.-platinum .pr-logo img{max-width:280px}.pr.-gold .pr-logo img{max-width:240px}.pr.-silver .pr-logo img{max-width:180px}.pr.-silver .pr-description{font-size:.875rem}.pr.-bronze .pr-logo img{max-width:160px}.pr.-bronze .pr-description{font-size:.75rem}.pr.-venue .pr-logo img{max-width:150px}.pr.-venue .pr-description{font-size:.75rem}@media (min-width:768px){.pr.-platinum{background-color:#fff;margin-left:auto;margin-right:auto;width:48rem}.pr.-platinum .pr-logo{box-sizing:border-box;padding:6rem 1rem;background-color:#fff}.pr.-platinum .pr-logo img{max-width:373.33333px}.pr.-platinum .pr-name{font-size:2rem}.pr.-platinum .pr-body{box-sizing:border-box;background-color:#eeeddb}.pr.-bronze,.pr.-gold,.pr.-silver,.pr.-venue{flex-direction:column;min-height:100%}.pr.-bronze .pr-body,.pr.-gold .pr-body,.pr.-silver .pr-body,.pr.-venue .pr-body{flex:1 0 auto}.pr.-gold .pr-logo{padding:1.5rem 1rem}.pr.-gold .pr-logo img{max-width:320px}.pr.-silver .pr-logo img{max-width:240px}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-logo img{max-width:100%}.pr.-bronze .pr-name{font-size:1rem}.pr.-venue .pr-logo img{max-width:100%}.pr.-venue .pr-name{font-size:1rem}}@media (min-width:992px){.pr.-platinum .pr-name{font-size:2rem}.pr.-silver .pr-name{font-size:1.25rem}.pr.-bronze .pr-name{font-size:1.25rem}.pr.-venue .pr-name{font-size:1.25rem}}.pr-logo{box-sizing:border-box;padding:1rem;background-color:#fff;text-align:center}.pr-logo img{max-width:100%;vertical-align:middle}.pr-body{padding:1rem}.pr-name{font-size:1.5rem}.pr-url{margin-bottom:1rem;word-break:break-all;font-size:.875rem}.organizers{margin-bottom:0;padding:1.5rem 1rem 2rem 1rem;background-color:rgba(21,42,88,.75);color:#fff}.organizers .Section-title{font-size:2rem}@media (min-width:480px){.organizers{padding:2rem 1rem 2.5rem}.organizers .Section-title{font-size:2.5rem}}@media (min-width:768px){.organizers{padding:3rem 1rem 4rem}}.organizers-list{display:flex;flex-wrap:wrap}.organizers-list>*{flex:0 0 50%;line-height:1.2;margin-bottom:.5rem}@media (min-width:480px){.organizers-list>*{flex:0 0 33.333%}}@media (min-width:768px){.organizers-list>*{flex:0 0 25%}}@media (min-width:992px){.organizers-list>*{flex:0 0 20%}}.organizer-name{text-align:left}.twitter>a{display:flex;justify-content:center;align-items:center;font-size:1.25rem}@media (min-width:480px){.twitter>a{font-size:2rem}}@media (min-width:768px){.twitter>a{font-size:2rem}}.twitter>a:hover{text-decoration:none}.twitter>a:hover .twitter-icon{-webkit-transform:rotate(15deg);transform:rotate(15deg)}.twitter-lead{line-height:1;text-align:center;letter-spacing:.064em;font-weight:100;color:#fff}.twitter-link{margin-left:1rem}.twitter-icon{width:1.25em;height:1.25em;fill:#fff;vertical-align:-.25em;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.coc-intro{box-sizing:border-box;margin-left:1rem;margin-right:1rem;margin-bottom:1rem;padding:1rem;background-color:#fffef7;border:4px solid #eada96}@media (min-width:1200px){.coc-intro{border:8px solid #eada96;margin-left:auto;margin-right:auto;margin-bottom:2rem;padding:2rem;max-width:64rem}}.coc-body{font-size:.875rem}.coc-body p{margin-bottom:1em}.coc-body p:last-child{margin-bottom:0}@media (min-width:768px){.coc-body{font-size:1rem}}.coc-section{margin-left:1rem;margin-right:1rem;padding-top:1rem;padding-bottom:1rem}.coc-section p{margin-bottom:1rem}.coc-section p:last-child{margin-bottom:0}@media (min-width:992px){.coc-section{margin-left:auto;margin-right:auto;padding-top:2rem;padding-bottom:2rem;max-width:48rem}}.coc-subhead{letter-spacing:.064em;font-weight:100;font-size:1.5rem}@media (min-width:768px){.coc-subhead{font-size:2em}}@media (min-width:992px){.coc-subhead{margin-bottom:2rem}}@media (min-width:1200px){.coc-subhead{font-size:2em}}.coc-note{margin-top:.5rem;margin-left:1rem;margin-right:1rem;font-size:.75rem}@media (min-width:768px){.coc-note{margin-top:1rem;margin-left:auto;margin-right:auto;max-width:48rem;font-size:.875rem}}.footer{position:relative;color:#fffef7;font-size:.875rem;text-align:center}.contentinfo{padding:1rem 0;background-color:#00111c}@media (min-width:768px){.contentinfo{padding:1rem;background-color:#00111c}}.contentinfo-inner{margin-left:auto;margin-right:auto;max-width:64rem}@media (min-width:768px){.contentinfo-inner::after{display:block;content:"";clear:both}}.contentinfo-logo{margin-bottom:1em;width:120px;height:50px}@media (min-width:768px){.contentinfo-logo{float:left}}.contentinfo-links{display:flex;flex-wrap:wrap;margin-bottom:1rem}.contentinfo-links>li{flex:0 0 50%}.contentinfo-links>li a{display:block;padding:.25rem}@media (min-width:590px){.contentinfo-links>li{flex:0 0 25%}}@media (min-width:768px){.contentinfo-links{float:right}.contentinfo-links>li{flex:1 1 auto;vertical-align:middle;line-height:50px}.contentinfo-links>li a{display:inline-block;padding:.25rem}.contentinfo-links>li+li::before{content:"|";margin-left:.5em;margin-right:.5em}}.copyright{margin-bottom:.5rem;font-size:.75rem}@media (min-width:768px){.copyright{clear:both;float:left;display:inline-block}}.copyright-usergroup{display:block;margin-top:.5rem}@media (min-width:768px){.copyright-usergroup{display:inline-block}.copyright-usergroup:before{content:"";border-left:1px solid #fffef7;margin-left:.5rem;padding-left:.5rem}}.createby{font-size:.75rem}@media (min-width:768px){.createby{float:right;font-size:.875rem}}.u-vh{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.u-tac{text-align:center}.u-em{color:#d75a43}.u-small{font-size:.75em}.u-link{text-decoration:none;border-bottom:4px solid #eada96;transition:all 150ms ease-out}.u-link:hover{border-bottom:4px solid #d75a43}.room-page{background:#eada96}.room-list{display:block;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.room-list li{display:none}.room-list li.room-entry-after,.room-list li.room-entry-before,.room-list li.room-entry-current{display:block;overflow:hidden;position:relative;width:100%}.room-entry-after,.room-entry-before{height:16%;background:#1da1f2}.room-entry-current{height:68%}.room-after-finish .room-entry-after,.room-after-finish .room-entry-before,.room-before-start .room-entry-after,.room-before-start .room-entry-before{height:24%}.room-after-finish .room-entry-current,.room-before-start .room-entry-current{height:76%}#room-time-container{width:100%;display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2}.room-time{margin:.5em 1em 0 auto;font-size:1.5em;text-shadow:#fff 3px 0 0,#fff 2.83487px .98158px 0,#fff 2.35766px 1.85511px 0,#fff 1.62091px 2.52441px 0,#fff .70571px 2.91581px 0,#fff -.28717px 2.98622px 0,#fff -1.24844px 2.72789px 0,#fff -2.07227px 2.16926px 0,#fff -2.66798px 1.37182px 0,#fff -2.96998px .42336px 0,#fff -2.94502px -.5717px 0,#fff -2.59586px -1.50383px 0,#fff -1.96093px -2.27041px 0,#fff -1.11013px -2.78704px 0,#fff -.13712px -2.99686px 0,#fff .85099px -2.87677px 0,#fff 1.74541px -2.43999px 0,#fff 2.44769px -1.73459px 0,#fff 2.88051px -.83825px 0;padding:.1em .5em}.room-image{height:100%;width:20%;background-clip:content-box;background-size:cover;background-position:center;border-radius:50%} \ No newline at end of file diff --git a/2018/src/scss/main.scss b/2018/src/scss/main.scss index ff070fe..6a37ccf 100644 --- a/2018/src/scss/main.scss +++ b/2018/src/scss/main.scss @@ -2744,8 +2744,7 @@ a.confcal-button-inactive { } .room-list { - display: flex; - flex-direction: column; + display: block; position: absolute; top: 0; left:0; @@ -2755,15 +2754,29 @@ a.confcal-button-inactive { li { display: none; &.room-entry-before, &.room-entry-after, &.room-entry-current { - display: flex; + display: block; overflow: hidden; position: relative; + width: 100% } - } + } +} + +.room-entry-before,.room-entry-after { + height: 16%; + background: #1da1f2; } .room-entry-current { - flex-grow: 8; + height: 68%; +} +.room-before-start, .room-after-finish { + .room-entry-before,.room-entry-after { + height: 24%; + } + .room-entry-current { + height: 76%; + } } .room-entry-before { @@ -2779,9 +2792,6 @@ a.confcal-button-inactive { // background-color:#b3b3b3; // z-index: 1; } -.room-entry-before,.room-entry-after { - flex: 1; -} #room-time-container { width: 100%; From 88feabc8929962357c81bd7da84a3dbea9a37ed7 Mon Sep 17 00:00:00 2001 From: Andrew Zamora Date: Fri, 23 Nov 2018 00:21:42 +0900 Subject: [PATCH 33/39] Ran npm run dev --- 2018/room.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2018/room.html b/2018/room.html index b35d581..fef0ef2 100644 --- a/2018/room.html +++ b/2018/room.html @@ -10,7 +10,7 @@ Room - +
                            From be80137b3688e910dd2a43ea8ae7c41056ad311e Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 00:41:00 +0900 Subject: [PATCH 34/39] Using the translated biographies first. --- 2018/src/html/room.ejs | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 0235cc5..db74485 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -2,6 +2,7 @@ var page = { title: 'Room' } +var _enableBr = function(str) { return str.replace(/\n/g, '
                            '); }; %> @@ -70,15 +71,16 @@ var page = {

                            <%= entry.summary %>

                            <%= entry.description %>


                            - <% if(entry.person){%> -
                            - <%}%> - <% if (speaker) { - const bio = speaker.biography %> - <% if(speaker){%> -

                            <%= bio %>

                            - <%}%> - <%} %> + <% + if (speaker) { + %>
                            <% + var translation = translations.speaker[speaker.id] || {} + var bio = speaker['自己紹介'] || translation.ja || speaker.biography + if (bio) { + %>

                            <%- _enableBr(bio) %>

                            <% + } + } + %> <% formerEnd = entry.end } From 9b022fb41dc877f2df7451d1ebc97ce67fd87944 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 01:25:11 +0900 Subject: [PATCH 35/39] Another stab at selecting the right nodes. --- 2018/src/html/room.ejs | 36 +++++++++++--------- 2018/src/js/page/room.js | 72 +++++++++++++++++++--------------------- 2 files changed, 55 insertions(+), 53 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index db74485..470544a 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -3,6 +3,17 @@ var page = { title: 'Room' } var _enableBr = function(str) { return str.replace(/\n/g, '
                            '); }; + +function itemHeader (start, end, clazz) { + %>
                          • <%= hh(start) + ' - ' + hh(end) %>

                            <% +} +function itemFooter () { + %>
                          • <% +} %> @@ -40,6 +51,9 @@ var _enableBr = function(str) { return str.replace(/\n/g, '
                            '); }; <% for (const calName in calendar ) { const cal = calendar[calName] + function hh (time) { + return momentTz(time).tz(cal.googleObject.timeZone).format('H:mm') + } var count = 0. for (const room in cal.rooms) { const entries = cal.rooms[room] @@ -50,23 +64,14 @@ var _enableBr = function(str) { return str.replace(/\n/g, '
                            '); }; var formerEnd; for (const entry of entries) { const speaker = speakers[entry.person] - const slots = cal.toSlots() const slotClasses = new Map() - function hh (time) { - return momentTz(time).tz(slots.tz).format('H:mm') - } - if (formerEnd && entry.start > formerEnd) { %> -
                          • Break
                          • <% + if (formerEnd && entry.start > formerEnd) { + itemHeader(formerEnd, entry.start, 'room-entry-break') + %>Break<% + itemFooter() } + itemHeader(entry.start, entry.end) %> -
                          • -

                            <%=`${room} ${hh(entry.start)} - ${hh(entry.end)}`%>


                            <%= entry.summary %>

                            <%= entry.description %>

                            @@ -80,8 +85,7 @@ var _enableBr = function(str) { return str.replace(/\n/g, '
                            '); }; %>

                            <%- _enableBr(bio) %>

                            <% } } - %> -
                          • <% + itemFooter() formerEnd = entry.end } %> diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index f5b8e62..64c98e2 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -29,6 +29,17 @@ function toggle (node, clazz, flag) { } } +function findNode (type, node, op) { + node = op(node) + while (node) { + if (type.test(node.nodeName)) { + return node + } + node = op(node) + } + return null +} + module.exports = function () { var overview = document.getElementById('rooms-container') var timeNode = document.getElementById('room-time') @@ -36,8 +47,8 @@ module.exports = function () { var allParts = rooms.concat(overview) rooms = rooms.map(function (roomNode) { var entries = [].slice.call(roomNode.querySelectorAll('li')) - var first = entries.shift() - var last = entries.pop() + var before = entries.shift() + var after = entries.pop() entries.forEach(function (entryNode) { var start = entryNode.attributes['data-start'] entryNode.start = momentTz(start.value).tz('Asia/Tokyo') @@ -48,8 +59,9 @@ module.exports = function () { return { node: roomNode, entries: entries, - first: first, - last: last + allEntries: [before].concat(entries).concat(after), + before: before, + after: after } }) var selectedRoom @@ -96,44 +108,30 @@ module.exports = function () { if (!selectedRoom) { return } - var beforeStart = true - var previous - var before - var after var current - selectedRoom.entries.forEach(function (entryNode) { - var isBefore = compareHmm(entryNode.end, now) === -1 - var isAfter = compareHmm(entryNode.start, now) === 1 - // console.log(entryNode.start.format('HH:mm'), now.format('HH:mm'), entryNode.end.format('HH:mm'), isBefore, isAfter) - var isCurrent = !isBefore && !isAfter - if (isCurrent || isBefore) { - beforeStart = false + var firstEntry = selectedRoom.entries[0] + if (compareHmm(firstEntry.start, now) > 0) { + current = selectedRoom.before + } else { + selectedRoom.entries.forEach(function (entryNode) { + var isAfter = compareHmm(entryNode.start, now) < 0 + if (isAfter && !current) { + current = entryNode + } + }) + if (!current) { + current = selectedRoom.after } - if (isCurrent) { - before = previous - current = entryNode - } - if (isAfter && !after) { - after = entryNode - } - previous = entryNode - return isCurrent - }) - var afterFinish = !current && !beforeStart - if (afterFinish) { - before = previous } - selectedRoom.entries.forEach(function (entryNode) { + var nextSibling = findNode(/^li$/ig, current, function (curr) { return curr.nextSibling }) + var prevSibling = findNode(/^li$/ig, current, function (curr) { return curr.prevSibling }) + selectedRoom.allEntries.forEach(function (entryNode) { toggle(entryNode, 'room-entry-current', entryNode === current) - toggle(entryNode, 'room-entry-after', entryNode === after) - toggle(entryNode, 'room-entry-before', entryNode === before) + toggle(entryNode, 'room-entry-after', entryNode === nextSibling) + toggle(entryNode, 'room-entry-before', entryNode === prevSibling) }) - toggle(selectedRoom.first, 'room-entry-current', beforeStart) - toggle(selectedRoom.first, 'room-entry-before', selectedRoom.entries[0].classList.contains('room-entry-current')) - toggle(selectedRoom.last, 'room-entry-current', afterFinish) - toggle(selectedRoom.last, 'room-entry-after', selectedRoom.entries[selectedRoom.entries.length - 1].classList.contains('room-entry-current')) - toggle(selectedRoom.node, 'room-before-start', beforeStart) - toggle(selectedRoom.node, 'room-after-finish', afterFinish) + toggle(selectedRoom.node, 'room-before-start', current === selectedRoom.before) + toggle(selectedRoom.node, 'room-after-finish', current === selectedRoom.after) } render() setInterval(render, 100) From 4d551094a5ea552e54b1e1f13c3bc1e2cfbf3f67 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 01:25:22 +0900 Subject: [PATCH 36/39] Better descriptions of the entries. --- 2018/src/html/room.ejs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/2018/src/html/room.ejs b/2018/src/html/room.ejs index 470544a..b207d5f 100644 --- a/2018/src/html/room.ejs +++ b/2018/src/html/room.ejs @@ -57,9 +57,10 @@ function itemFooter () { var count = 0. for (const room in cal.rooms) { const entries = cal.rooms[room] + const firstEntry = entries[0] %>
                              -
                            • Closed
                            • +
                            • This rooms opens at <%= hh(firstEntry.start) %>
                            • <% var formerEnd; for (const entry of entries) { @@ -89,7 +90,7 @@ function itemFooter () { formerEnd = entry.end } %> -
                            • Closed
                            • +
                            • This room closes at <%= hh(formerEnd) %>. Thank you for joining us today!
                            <% count += 1 } From 4768108301584bfa47774fa4dd63f8cf42981940 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 01:30:47 +0900 Subject: [PATCH 37/39] its previousSibling not prevSibling in javascript ... doh --- 2018/src/js/page/room.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 64c98e2..874390e 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -124,7 +124,7 @@ module.exports = function () { } } var nextSibling = findNode(/^li$/ig, current, function (curr) { return curr.nextSibling }) - var prevSibling = findNode(/^li$/ig, current, function (curr) { return curr.prevSibling }) + var prevSibling = findNode(/^li$/ig, current, function (curr) { return curr.previousSibling }) selectedRoom.allEntries.forEach(function (entryNode) { toggle(entryNode, 'room-entry-current', entryNode === current) toggle(entryNode, 'room-entry-after', entryNode === nextSibling) From dc422c471239f91b00d5813186c1a5a26aa3f5bd Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 01:32:20 +0900 Subject: [PATCH 38/39] Well, if we check for > in one if we need to do the <= in the other for the reverse operation. --- 2018/src/js/page/room.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index 874390e..cad6750 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -114,7 +114,7 @@ module.exports = function () { current = selectedRoom.before } else { selectedRoom.entries.forEach(function (entryNode) { - var isAfter = compareHmm(entryNode.start, now) < 0 + var isAfter = compareHmm(entryNode.start, now) <= 0 if (isAfter && !current) { current = entryNode } From d41396ca75a3d5327204aa4e236360f77601f535 Mon Sep 17 00:00:00 2001 From: Martin Heidegger Date: Fri, 23 Nov 2018 01:36:16 +0900 Subject: [PATCH 39/39] I am too tired to fix if switches. --- 2018/src/js/page/room.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/2018/src/js/page/room.js b/2018/src/js/page/room.js index cad6750..8e14a28 100644 --- a/2018/src/js/page/room.js +++ b/2018/src/js/page/room.js @@ -114,7 +114,7 @@ module.exports = function () { current = selectedRoom.before } else { selectedRoom.entries.forEach(function (entryNode) { - var isAfter = compareHmm(entryNode.start, now) <= 0 + var isAfter = compareHmm(entryNode.start, now) >= 0 if (isAfter && !current) { current = entryNode }