@charset "UTF-8";
html {
    color: #222
}

a:visited {
    color: #551a8b
}

a:hover {
    color: #06e
}

img {
    vertical-align: middle
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

.nocallout {
    -webkit-touch-callout: none
}

.pressed {
    background-color: rgba(0, 0, 0, .7)
}

textarea[contenteditable] {
    -webkit-appearance: none
}

.gifhidden {
    position: absolute;
    left: -100%
}

.ir {
    background-color: transparent;
    background-repeat: no-repeat;
    border: 0;
    direction: ltr;
    display: block;
    overflow: hidden;
    text-align: left;
    text-indent: -999em
}

.ir br {
    display: none
}

.hidden {
    display: none!important;
    visibility: hidden
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto
}

.invisible {
    visibility: hidden
}

.clearfix::before,
.clearfix::after {
    content: "";
    display: table
}

.clearfix::after {
    clear: both
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

a {
    background: 0 0
}

a:active,
a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

mark {
    background: #ff0;
    color: #000
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 0
}

hr {
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto
}

input[type="search"] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

blockquote {
    margin: 0
}

*,
*::before,
*::after {
    box-sizing: border-box
}

html,
body,
button {
    -moz-osx-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased
}

body {
    font-size: 16px;
    /*    line-height: 1.625em;*/
    color: #404040
}

body::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    z-index: 9;
    display: none;
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .15)95%, rgba(0, 0, 0, .15)100%);
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .15)95%, rgba(0, 0, 0, .15)100%);
    background-size: 100% 26px
}

body.debug::after {
    display: block;
    pointer-events: none
}

pre {
    background: #f0f0f0;
    padding: 13px
}

#dad {
    float: left;
    margin: 20px 20px 5px 0;
    width: 200px;
}


/* Section styles required for link effects */

section,
footer {
    position: relative;
    /* z-index: 1;  needed for setting pseudo-element z-index */
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

section a,
footer a {
    position: relative;
    display: inline-block;
    outline: none;
    color: #404d5b;
    vertical-align: bottom;
    text-decoration: none;
    white-space: nowrap;
}

section a::before,
section a::after,
footer a::before,
footer a::after {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
}


/* Flip */

.link-flip {
    /*    background: rgba(149,165,166,0.2);*/
}

.link-flip a {
    font-weight: 500;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
    -webkit-perspective: 600px;
    perspective: 600px;
    -webkit-perspective-origin: 50% 100%;
    perspective-origin: 50% 100%;
}

.link-flip a:hover,
.link-flip a:focus {
    color: #fff;
}

.link-flip a::before,
.link-flip a::after {
    position: absolute;
    top: 0;
    left: -4px;
    z-index: -1;
    box-sizing: content-box;
    padding: 0 4px;
    width: 100%;
    height: 100%;
    content: '';
}

.link-flip a::before {
    background-color: hsla(217, 92%, 66%, 0.85);
    -webkit-transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
    transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
    -webkit-transform: rotateX(90deg);
    transform: rotateX(90deg);
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
}

.link-flip a:hover::before,
.link-flip a:focus::before {
    -webkit-transform: rotateX(0deg);
    transform: rotateX(0deg);
}

.link-flip a::after {
    border-bottom: 2px solid hsla(217, 92%, 66%, 0.85);
}

footer {
    padding-bottom: 20px;
}

@media only screen and (max-width: 360px) {
    #dad {
        width: 100%;
    }
}

.main-container {
    box-sizing: content-box;
    position: relative;
    padding-left: 5%;
    padding-right: 5%;
    margin-left: auto;
    margin-right: auto
}

@media only screen and (min-width: 620px) {
    .main-container {
        padding-left: 4.8%;
        padding-right: 4.8%;
        max-width: 688px
    }
}

@media only screen and (min-width: 800px) {
    .main-container {
        padding-left: 4.4%;
        padding-right: 4.4%;
        max-width: 864px
    }
}

.container {
    box-sizing: content-box;
    position: relative;
    padding-left: 5%;
    padding-right: 5%;
    margin-left: auto;
    margin-right: auto
}

@media only screen and (min-width: 620px) {
    .container {
        padding-left: 4.8%;
        padding-right: 4.8%;
        max-width: 688px
    }
    .yo {
        float: right;
    }
}

@media only screen and (min-width: 800px) {
    .container {
        padding-left: 4.4%;
        padding-right: 4.4%;
        max-width: 864px
    }
}

@media only screen and (min-width: 620px) {
    .container-medium {
        box-sizing: content-box;
        position: relative;
        padding-left: 5%;
        padding-right: 5%;
        margin-left: auto;
        margin-right: auto
    }
}

@media only screen and (min-width: 620px) and (min-width: 620px) {
    .container-medium {
        padding-left: 4.8%;
        padding-right: 4.8%;
        max-width: 688px
    }
}

@media only screen and (min-width: 620px) and (min-width: 800px) {
    .container-medium {
        padding-left: 4.4%;
        padding-right: 4.4%;
        max-width: 864px
    }
}

@media only screen and (max-width: 619px) {
    .container-small {
        box-sizing: content-box;
        position: relative;
        padding-left: 5%;
        padding-right: 5%;
        margin-left: auto;
        margin-right: auto
    }
}

@media only screen and (max-width: 619px) and (min-width: 620px) {
    .container-small {
        padding-left: 4.8%;
        padding-right: 4.8%;
        max-width: 688px
    }
}

@media only screen and (max-width: 619px) and (min-width: 800px) {
    .container-small {
        padding-left: 4.4%;
        padding-right: 4.4%;
        max-width: 864px
    }
}

@media only screen and (min-width: 800px) {
    .content {
        margin-right: 25.9%
    }
    .content pre {
        margin-right: -25.9%
    }
}

@font-face {
    font-family: icons;
    src: url(../images/icons/icons.eot);
    src: url(../images/icons/icons.eot?#iefix) format("embedded-opentype"), url(../images/icons/icons.woff2) format("woff2"), url(../images/icons/icons.woff) format("woff"), url(../images/icons/icons.ttf) format("truetype"), url(../images/icons/icons.svg?#icons) format("svg");
    font-weight: 400;
    font-style: normal
}

.icon {
    font-family: 'icons';
    display: inline-block;
    vertical-align: top;
    line-height: 1;
    font-weight: 400;
    font-style: normal;
    speak: none;
    text-decoration: inherit;
    text-transform: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-bullet::before,
ul li::before,
ul.list-links a::before,
.list-anchor a::before {
    content: "\e001"
}

.icon-chevron-down::before {
    content: '\e002'
}

.icon-chevron-large::before {
    content: '\e003'
}

.icon-chevron-left::before,
.article-nav-link--prev::before {
    content: '\e004'
}

.icon-chevron-right::before,
.article-nav-link--next::before,
ul.list-links.list-links--primary a::before {
    content: '\e005'
}

.icon-chevron-up::before {
    content: '\e006'
}

.icon-close::before {
    content: '\e007'
}

.icon-cog::before {
    content: '\e008'
}

.icon-diamond::before {
    content: '\e009'
}

.icon-exclamation::before {
    content: '\e00a'
}

.icon-google-dev::before {
    content: '\e00b'
}

.icon-hash::before {
    content: '\e00c'
}

.icon-introduction-to-media::before {
    content: '\e00d'
}

.icon-lessons::before {
    content: '\e00e'
}

.icon-menu::before {
    content: '\e00f'
}

.icon-minus::before {
    content: '\e010'
}

.icon-multi-device-layouts::before {
    content: '\e011'
}

.icon-performance::before {
    content: '\e012'
}

.icon-plus::before {
    content: '\e013'
}

.icon-question::before {
    content: '\e014'
}

.icon-slash::before {
    content: '\e015'
}

.icon-star::before {
    content: '\e016'
}

.icon-tick::before {
    content: '\e017'
}

.icon-user-input::before {
    content: '\e018'
}

.highlight-module {
    overflow: hidden;
    margin-top: 52px;
    margin-bottom: 26px;
    position: relative
}

.highlight-module::after {
    background: #f0f0f0;
    content: '';
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 0;
    width: 100%;
    right: 0;
    left: 0
}

.highlight-module ul,
.highlight-module ol {
    padding-left: 0
}

.highlight-module__container {
    box-sizing: content-box;
    padding-left: 5%;
    padding-right: 5%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 78px;
    z-index: 1;
    position: relative
}

@media only screen and (min-width: 620px) {
    .highlight-module__container {
        padding-left: 4.8%;
        padding-right: 4.8%;
        max-width: 688px
    }
}

@media only screen and (min-width: 800px) {
    .highlight-module__container {
        padding-left: 4.4%;
        padding-right: 4.4%;
        max-width: 864px
    }
}

.highlight-module__container::before {
    display: none
}

@media only screen and (min-width: 620px) {
    .highlight-module__container::before {
        display: block;
        position: absolute;
        top: 106px;
        right: 45px;
        font-family: "icons";
        font-size: 130px;
        line-height: 1px;
        text-align: center;
        height: 100%;
        width: 30.3%;
        color: #fff
    }
}

.highlight-module--left .highlight-module__container::before {
    right: auto;
    left: 45px
}

@media only screen and (min-width: 800px) {
    .highlight-module__container::before {
        top: 204px;
        width: 22.2%;
        font-size: 180px
    }
    .highlight-module--large .highlight-module__container::before {
        font-size: 430px
    }
}

@media only screen and (min-width: 620px) {
    .highlight-module__container {
        padding-bottom: 52px
    }
}

@media only screen and (min-width: 800px) {
    .highlight-module__container {
        min-height: 208px
    }
}

.highlight-module__title {
    font-family: 'Arima Madurai', cursive;
    font-size: 68px;
    font-weight: 300;
    line-height: 1.1471em;
    padding-bottom: 0;
    padding-top: 26px
}

@media only screen and (min-width: 800px) {
    .highlight-module__title {
        font-family: 'Arima Madurai', cursive;
        font-size: 110px;
        font-weight: 300;
        line-height: 1.19em;
        padding-top: .2364em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 800px) {
    .highlight-module__title {
        font-family: 'Arima Madurai', cursive;
        font-size: 42px;
        font-weight: 300;
        line-height: 1.2381em;
        padding-top: .619em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 800px) and (min-width: 800px) {
    .highlight-module__title {
        font-family: 'Arima Madurai', cursive;
        font-size: 68px;
        font-weight: 300;
        line-height: 1.1471em;
        padding-top: .3824em;
        padding-bottom: 0
    }
}

.highlight-module__cta {
    display: block
}

.highlight-module--learning {
    color: #fff
}

.highlight-module--learning::after {
    background-color: #da2e75
}

.highlight-module--learning a {
    color: #fff;
    text-decoration: underline
}

.highlight-module--remember {
    color: #fff
}

.highlight-module--remember::after {
    background-color: #ca07bf
}

.highlight-module--remember a {
    color: #fff;
    text-decoration: underline
}

.highlight-module--code {
    overflow: visible;
    margin-bottom: 52px
}

.highlight-module--code pre {
    margin: 0;
    font-size: 14px;
    line-height: 26px;
    padding: 26px 0 0
}

.highlight-module--code pre span {
    margin: 0;
    padding: 0;
    display: inline-block
}

.highlight-module--code code {
    margin: 0;
    padding: 0;
    word-spacing: -2px;
    display: block
}

.highlight-module--code .highlight-module__container {
    padding-bottom: 0
}

.highlight-module--code .highlight-module__cta {
    position: absolute;
    bottom: -26px
}

@media only screen and (min-width: 800px) {
    .highlight-module--left::after {
        width: 80%;
        right: 20%
    }
}

@media only screen and (min-width: 800px) {
    .highlight-module--right::after {
        width: 80%;
        left: 20%
    }
}

@media only screen and (min-width: 800px) {
    .highlight-module--right.highlight-module--code::after {
        width: 100%;
        left: 0
    }
}

.highlight-module--inline {
    color: #404040;
    overflow: visible;
    margin: 26px 0 0
}

.highlight-module--inline .highlight-module__container {
    padding-bottom: 0
}

.highlight-module--inline .highlight-module__container::before {
    display: none
}

.highlight-module--inline .highlight-module__content {
    border-color: #e0e0e0;
    border-style: solid;
    border-width: 1px;
    border-left-width: 0;
    border-right-width: 0;
    margin-bottom: -2px;
    padding: 0 0 26px
}

.highlight-module--inline .highlight-module__title {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.3em;
    padding-top: 1.3em;
    padding-bottom: 0
}

@media only screen and (min-width: 800px) {
    .highlight-module--inline .highlight-module__title {
        font-family: 'Arima Madurai', cursive;
        font-size: 26px;
        font-weight: 300;
        line-height: 1em;
        padding-top: 1em;
        padding-bottom: 0
    }
}

.highlight-module--inline.highlight-module--remember .highlight-module__title,
.highlight-module--inline.highlight-module--remember li::before {
    color: #09829a
}

.highlight-module--inline.highlight-module--learning .highlight-module__title,
.highlight-module--inline.highlight-module--learning li::before {
    color: #da2e75
}

.highlight-module--inline::after {
    display: none!important
}

div.highlight>pre>code,
code .highlight {
    background: 0 0
}

div.highlight>pre>code .c,
code .highlight .c {
    color: #998;
    font-style: italic
}

div.highlight>pre>code .err,
code .highlight .err {
    color: #a61717;
    background-color: #e3d2d2
}

div.highlight>pre>code .cm,
code .highlight .cm {
    color: #998;
    font-style: italic
}

div.highlight>pre>code .cp,
code .highlight .cp {
    color: rgba(0, 0, 0, .54)
}

div.highlight>pre>code .c1,
code .highlight .c1 {
    color: #998;
    font-style: italic
}

div.highlight>pre>code .cs,
code .highlight .cs {
    color: rgba(0, 0, 0, .54);
    font-style: italic
}

div.highlight>pre>code .gs,
code .highlight .gd {
    color: #000;
    background-color: #fdd
}

div.highlight>pre>code .gd .x,
code .highlight .gd .x {
    color: #000;
    background-color: #faa
}

div.highlight>pre>code .ge,
code .highlight .ge {
    font-style: italic
}

div.highlight>pre>code .gr,
code .highlight .gr {
    color: #a00
}

div.highlight>pre>code .gh,
code .highlight .gh {
    color: rgba(0, 0, 0, .54)
}

div.highlight>pre>code .gi,
code .highlight .gi {
    color: #000;
    background-color: #dfd
}

div.highlight>pre>code .gi .x,
code .highlight .gi .x {
    color: #000;
    background-color: #afa
}

div.highlight>pre>code .go,
code .highlight .go {
    color: #888
}

div.highlight>pre>code .gp,
code .highlight .gp {
    color: #555
}

div.highlight>pre>code .gu,
code .highlight .gu {
    color: #aaa
}

div.highlight>pre>code .gt,
code .highlight .gt {
    color: #a00
}

div.highlight>pre>code .kt,
code .highlight .kt {
    color: #458
}

div.highlight>pre>code .m,
code .highlight .m {
    color: #099
}

div.highlight>pre>code .s,
code .highlight .s {
    color: #da2e75
}

div.highlight>pre>code .na,
code .highlight .na {
    color: teal
}

div.highlight>pre>code .nb,
code .highlight .nb {
    color: #0086B3
}

div.highlight>pre>code .nc,
code .highlight .nc {
    color: #458
}

div.highlight>pre>code .no,
code .highlight .no {
    color: teal
}

div.highlight>pre>code .ni,
code .highlight .ni {
    color: purple
}

div.highlight>pre>code .ne,
code .highlight .ne,
div.highlight>pre>code .nf,
code .highlight .nf {
    color: #900
}

div.highlight>pre>code .nn,
code .highlight .nn {
    color: #555
}

div.highlight>pre>code .nt,
code .highlight .nt {
    color: #09829a
}

div.highlight>pre>code .nv,
code .highlight .nv {
    color: teal
}

div.highlight>pre>code .w,
code .highlight .w {
    color: #bbb
}

div.highlight>pre>code .mf,
code .highlight .mf,
div.highlight>pre>code .mh,
code .highlight .mh,
div.highlight>pre>code .mi,
code .highlight .mi,
div.highlight>pre>code .mo,
code .highlight .mo {
    color: #099
}

div.highlight>pre>code .sb,
code .highlight .sb,
div.highlight>pre>code .sc,
code .highlight .sc,
div.highlight>pre>code .sd,
code .highlight .sd,
div.highlight>pre>code .s2,
code .highlight .s2,
div.highlight>pre>code .se,
code .highlight .se,
div.highlight>pre>code .sh,
code .highlight .sh,
div.highlight>pre>code .si,
code .highlight .si,
div.highlight>pre>code .sx,
code .highlight .sx {
    color: #da2e75
}

div.highlight>pre>code .sr,
code .highlight .sr {
    color: #009926
}

div.highlight>pre>code .s1,
code .highlight .s1 {
    color: #da2e75
}

div.highlight>pre>code .ss,
code .highlight .ss {
    color: #990073
}

div.highlight>pre>code .bp,
code .highlight .bp {
    color: rgba(0, 0, 0, .54)
}

div.highlight>pre>code .vc,
code .highlight .vc,
div.highlight>pre>code .vg,
code .highlight .vg,
div.highlight>pre>code .vi,
code .highlight .vi {
    color: teal
}

div.highlight>pre>code .il,
code .highlight .il {
    color: #099
}

.editorial-header {
    overflow: hidden
}

.editorial-header .breadcrumbs,
.editorial-header .breadcrumbs a {
    color: #3372df
}

@media only screen and (min-width: 620px) {
    .editorial-header .container {
        position: relative
    }
    .editorial-header .container::before {
        content: "";
        font-family: "icons";
        font-size: 1000px;
        line-height: 0;
        display: block;
        position: absolute;
        top: 0;
        right: 100%;
        color: #f0f0f0;
        margin: 168px -35px 0 0
    }
}

.editorial-header__excerpt {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.3em;
    padding-top: 1.3em;
    padding-bottom: 0;
    font-family: 'Arima Madurai', cursive
}

.editorial-header .tag {
    padding-top: 52px
}

.editorial-header__subtitle {
    font-family: 'Arima Madurai', cursive;
    font-size: 42px;
    font-weight: 300;
    line-height: 1.2381em;
    padding-bottom: 0;
    padding-top: 0;
    color: #3372df
}

@media only screen and (min-width: 800px) {
    .editorial-header__subtitle {
        font-family: 'Arima Madurai', cursive;
        font-size: 68px;
        font-weight: 300;
        line-height: 1.1471em;
        padding-top: .3824em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 620px) {
    .editorial-header__subtitle {
        padding-top: 0;
        padding-bottom: 26px
    }
}

.editorial-header__toc {
    margin-top: 26px
}

.editorial-header__toc ol {
    padding-top: 0
}

@media only screen and (min-width: 620px) {
    .editorial-header__toc ol {
        padding-top: 0
    }
}

.editorial-header__toc-title {
    font-family: 'Arima Madurai', cursive;
    border-bottom: 1px solid #e0e0e0;
    margin-bottom: 13px;
    padding-bottom: 13px!important;
    color: #3372df
}

.summary-header {
    background-color: #3372df;
    padding-bottom: 78px;
    color: #fff;
    margin-bottom: 26px;
    box-shadow: inset 0 2px 0 0 #fff
}

.summary-header .breadcrumbs__link {
    color: #fff
}

.summary-header__anchor-list {
    margin-top: 52px
}

.summary-header__anchors-item a {
    color: #fff
}

.related-guides {
    margin-top: 78px;
    padding-bottom: 50px;
    border-top: 2px solid #e0e0e0;
    padding-top: 50px
}

.related-guides__list .list-links {
    padding-top: 0
}

.related-guides__list a {
    display: block
}

.related-guides__title {
    font-family: 'Arima Madurai', cursive;
    font-size: 26px;
    font-weight: 300;
    line-height: 1em;
    padding-bottom: 0;
    padding-top: 0
}

@media only screen and (min-width: 800px) {
    .related-guides__title {
        font-family: 'Arima Madurai', cursive;
        font-size: 42px;
        font-weight: 300;
        line-height: 1.2381em;
        padding-top: .619em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 620px) {
    .related-guides__title {
        padding-top: 0
    }
}

.related-guides__main-link {
    text-transform: uppercase
}

.related-guides__main-link::before {
    content: '#';
    display: inline-block;
    padding-right: 2px
}

.in-this-guide {
    margin-top: -78px
}

.in-this-guide__title {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.3em;
    padding-top: 1.3em;
    padding-bottom: 0;
    font-family: 'Arima Madurai', cursive;
    margin-bottom: 26px
}

.articles-section {
    background: #f0f0f0;
    text-align: center;
    padding: 26px 0 104px
}

.articles-count {
    color: #3372df;
    font-family: 'Arima Madurai', cursive;
    font-weight: 400
}

.article-section__icon {
    top: -26px
}

@media only screen and (min-width: 620px) {
    .article-section__icon {
        top: -39px
    }
}

.guides-section {
    background: #f0f0f0;
    padding: 26px 0 104px
}

.guides-section,
.page-header {
    text-align: center
}

.page-header .breadcrumbs {
    text-align: left;
    color: #3372df
}

.page-header .breadcrumbs a {
    color: #3372df
}

.page-header h3 {
    color: rgba(0, 0, 0, .87);
    padding-top: 52px
}

.page-header__excerpt {
    position: relative;
    padding-top: 0
}

.page-header__excerpt:last-child {
    padding-bottom: 78px
}

.featured-section {
    background: #f0f0f0
}

.featured-spotlight {
    background: rgba(0, 0, 0, .87);
    color: #fff;
    overflow: hidden;
    padding-bottom: 77px;
    margin-top: 52px
}

.featured-spotlight p {
    padding-bottom: 26px
}

.featured-spotlight .cta--primary {
    color: #fff
}

.featured-spotlight .cta--primary:hover {
    color: #fff
}

.featured-spotlight__container {
    position: relative
}

@media only screen and (max-width: 619px) {
    .featured-spotlight__img {
        padding-top: 58.4%;
        padding-bottom: 0;
        height: 0;
        overflow: hidden;
        position: relative;
        width: 100%
    }
}

.featured-spotlight__img img {
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    margin: 0
}

@media only screen and (min-width: 620px) {
    .featured-spotlight__img img {
        width: auto;
        max-width: none;
        left: 109%
    }
}

@media only screen and (min-width: 800px) {
    .featured-spotlight__img img {
        left: 107.4%
    }
}

.quote__content {
    position: relative;
    font-family: 'Arima Madurai', cursive;
    font-size: 16px;
    line-height: 1.625em;
    padding-bottom: 0;
    padding-top: 104px;
    padding-left: 26px
}

@media only screen and (min-width: 800px) {
    .quote__content {
        font-size: 20px;
        font-weight: 300;
        line-height: 1.3em;
        padding-top: 1.3em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 620px) {
    .quote__content {
        padding-top: 52px;
        padding-left: 0
    }
}

.quote__content p {
    border-top: 1px solid #e0e0e0;
    text-align: right;
    font-weight: 500;
    margin-top: 12px;
    padding-top: 13px
}

.quote__content::before {
    content: open-quote;
    display: block;
    position: absolute;
    font-family: 'Arima Madurai', cursive;
    font-weight: 700;
    color: #f0f0f0;
    top: 90px;
    left: 26px;
    font-size: 260px
}

@media only screen and (min-width: 620px) {
    .quote__content::before {
        top: 225px;
        left: -210px;
        font-size: 540px
    }
}

.article-nav {
    overflow: hidden;
    position: relative
}

.article-nav::before {
    content: '';
    border-left: 2px solid #e0e0e0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%
}

.article-nav-link {
    padding: 26px 32px;
    float: left;
    width: 50%;
    position: relative
}

.article-nav-link::before {
    position: absolute;
    top: 21px;
    font-family: 'Arima Madurai', cursive;
    font-size: 20px;
    font-weight: 400
}

@media only screen and (min-width: 620px) {
    .article-nav-link::before {
        top: 25px;
        font-size: 26px;
        display: block;
        padding: 13px 10px;
        color: #fff;
        background: #3372df
    }
}

.article-nav p {
    padding: 0;
    margin: 0
}

.article-nav-link--prev {
    text-align: right
}

.article-nav-link--prev::before {
    font-family: "icons";
    left: 32px
}

@media only screen and (min-width: 620px) {
    .article-nav-link--prev p {
        padding-left: 52px
    }
}

.article-nav-link--next::before {
    font-family: "icons";
    right: 32px
}

@media only screen and (min-width: 620px) {
    .article-nav-link--next p {
        padding-right: 52px
    }
}

.article-nav-count {
    font-size: 20px;
    line-height: 1.3em;
    padding-top: 1.3em;
    padding-bottom: 0;
    font-weight: 700
}

@media only screen and (min-width: 800px) {
    .article-nav-count {
        font-family: 'Arima Madurai', cursive;
        font-size: 26px;
        font-weight: 300;
        line-height: 1em;
        padding-top: 1em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 620px) {
    .article-nav-count {
        font-weight: 400
    }
}

@media only screen and (min-width: 620px) {
    .did-you-know ol {
        padding-top: 0!important
    }
}

.did-you-know .cta--primary {
    margin-top: 26px;
    font-weight: 500
}

.did-you-know>.g--half {
    position: relative;
    padding-left: 0
}

@media only screen and (min-width: 620px) {
    .did-you-know>.g--half {
        padding-left: 32px
    }
}

.did-you-know__symbol {
    padding-bottom: 312px
}

@media only screen and (min-width: 620px) {
    .did-you-know__symbol {
        padding-bottom: 26px
    }
}

.did-you-know__symbol::after {
    content: "";
    color: #3372df;
    font-family: "icons";
    font-size: 300px;
    top: 150px;
    left: 30%;
    position: relative;
    display: block;
    width: 0
}

@media only screen and (min-width: 620px) {
    .did-you-know__symbol::after {
        position: absolute;
        font-size: 400px;
        top: 200px;
        left: 110%
    }
}

@media only screen and (min-width: 800px) {
    .did-you-know__symbol::after {
        position: absolute;
        font-size: 400px;
        top: 200px;
        left: 124%
    }
}

.toc__title {
    font-size: 16px;
    line-height: 1.625em;
    padding-top: 1.625em;
    font-family: 'Arima Madurai', cursive;
    padding-bottom: 13px;
    margin-bottom: 12px;
    border-bottom: 1px solid #e0e0e0
}

@media only screen and (min-width: 800px) {
    .toc__title {
        font-size: 20px;
        font-weight: 300;
        line-height: 1.3em;
        padding-top: 1.3em;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 620px) {
    .toc__title {
        padding-bottom: 13px;
        margin-bottom: 13px
    }
}

.toc__list {
    padding-top: 0;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 12px;
    margin-bottom: 13px
}

.toc__list a {
    display: block
}

.toc__sublist {
    padding-top: 0
}

.next-lessons {
    background: rgba(0, 0, 0, .87);
    padding: 26px 26px 52px;
    margin-top: 26px;
    color: #fff;
    position: relative
}

@media only screen and (min-width: 620px) {
    .next-lessons h3 i {
        display: none
    }
}

.next-lessons::before,
.next-lessons::after {
    color: rgba(255, 255, 255, .5);
    position: absolute;
    display: none
}

@media only screen and (min-width: 620px) {
    .next-lessons::before,
    .next-lessons::after {
        display: inline-block
    }
}

@media only screen and (min-width: 620px) {
    .next-lessons::before {
        content: attr(data-current-lesson);
        font-family: 'Arima Madurai', cursive;
        font-size: 16px;
        font-weight: 400;
        line-height: 1;
        background: rgba(0, 0, 0, .87);
        display: inline-block;
        padding: 5px 7px;
        right: 127px;
        top: 143px;
        z-index: 1;
        color: rgba(255, 255, 255, .5)
    }
}

@media only screen and (min-width: 800px) {
    .next-lessons::before {
        font-size: 20px;
        padding-left: 15px;
        padding-right: 15px;
        top: 126px;
        right: 230px
    }
}

@media only screen and (min-width: 620px) {
    .next-lessons::after {
        content: "";
        font-family: "icons";
        font-size: 150px;
        right: 40px;
        top: 185px
    }
}

@media only screen and (min-width: 800px) {
    .next-lessons::after {
        font-size: 210px;
        right: 120px
    }
}

@media only screen and (min-width: 620px) and (max-width: 799px) {
    .g-medium--1 {
        float: left;
        margin-right: 4.5%;
        width: 30.3%
    }
    .g-medium--push-1 {
        margin-left: 34.8%
    }
    .g-medium--pull-1 {
        margin-right: 34.8%
    }
    .g-medium--2 {
        float: left;
        margin-right: 4.5%;
        width: 65.1%
    }
    .g-medium--push-2 {
        margin-left: 69.6%
    }
    .g-medium--pull-2 {
        margin-right: 69.6%
    }
    .g-medium--3 {
        float: left;
        width: 99.9%;
        margin-right: 0
    }
    .g-medium--full {
        float: left;
        margin-right: 0;
        width: 100%
    }
    .g--third {
        float: left;
        margin-right: 4.5%;
        width: 30.3%
    }
    .g--half,
    .g-medium--half {
        float: left;
        margin-right: 4.5%;
        width: 47.75%
    }
    .g-medium--last {
        margin-right: 0
    }
    .g-medium--last+.g-medium--half {
        clear: left
    }
    .g--pull-half {
        margin-right: 52.25%
    }
}

@media only screen and (min-width: 800px) {
    .g-wide--1 {
        float: left;
        margin-right: 3.7%;
        width: 22.2%
    }
    .g-wide--push-1 {
        margin-left: 25.9%
    }
    .g-wide--pull-1 {
        margin-right: 25.9%
    }
    .g-wide--2 {
        float: left;
        margin-right: 3.7%;
        width: 48.1%
    }
    .g-wide--push-2 {
        margin-left: 51.8%
    }
    .g-wide--pull-2 {
        margin-right: 51.8%
    }
    .g-wide--3 {
        float: left;
        margin-right: 3.7%;
        width: 74%
    }
    .g-wide--push-3 {
        margin-left: 77.7%
    }
    .g-wide--pull-3 {
        margin-right: 77.7%
    }
    .g-wide--4 {
        float: left;
        width: 99.9%
    }
    .g-wide--4,
    .g-wide--last,
    .g-wide--full {
        margin-right: 0
    }
    .g-wide--full {
        float: left;
        width: 100%
    }
    .g--third {
        float: left;
        margin-right: 3.7%;
        width: 30.8%
    }
    .g--half,
    .g-wide--half {
        float: left;
        margin-right: 3.7%;
        width: 48.15%
    }
    .g--pull-half {
        margin-right: 51.85%
    }
}

.g--last {
    margin-right: 0
}

.g--centered {
    float: none;
    margin-left: auto;
    margin-right: auto
}

.grid-overlay {
    display: none;
    pointer-events: none
}

.debug .grid-overlay {
    box-sizing: content-box;
    padding-left: 5%;
    padding-right: 5%;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    display: block
}

@media only screen and (min-width: 620px) {
    .debug .grid-overlay {
        padding-left: 4.8%;
        padding-right: 4.8%;
        max-width: 688px
    }
    .f-icon {
        margin: 5px 10px 0 0;
    }
    a.f-icon img {
        width: 66px;
        height: 56px;
    }
    .page--styleguide section {
        margin-bottom: 52px;
        border-bottom: 1px solid #ccc;
        padding-bottom: 77px
    }
}

@media only screen and (max-width: 460px) {
    .app-bar .logo {
        font-size: 1.5em;
    }
    .f-icon {
        margin: 15px 10px 0 0;
    }
    a.f-icon img {
        width: 39px;
        height: 32px;
    }
    .page--styleguide section {
        margin-bottom: 12px;
        border-bottom: 1px solid #ccc;
        padding-bottom: 17px
    }
    p.copy {
        font-size: 0.8em;
    }
}

@media only screen and (min-width: 460px) {
    p.copy {
        font-size: 1.0em;
    }
}

@media only screen and (min-width: 460px) and (max-width: 620px) {
    .f-icon {
        margin: 5px 10px 0 0;
    }
    a.f-icon img {
        width: 58px;
        height: 48px;
    }
}

.page--styleguide section {
    margin-bottom: 22px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 27px
}


}
@media only screen and (min-width: 800px) {
    .debug .grid-overlay {
        padding-left: 4.4%;
        padding-right: 4.4%;
        max-width: 864px
    }
}
.debug .grid-overlay[class*="g-"] {
    height: 100%;
    background-color: rgba(89, 89, 89, .2)
}
@media only screen and (min-width: 620px) and (max-width: 799px) {
    .debug .grid-overlay .g-wide--last {
        display: none
    }
}
@media only screen and (max-width: 619px) {
    .debug .grid-overlay {
        display: none
    }
}
h1,
h2,
h3,
h4,
h5,
p {
    margin: 0
}
.small,
small {
    font-size: 13px;
    line-height: 2em;
    padding-top: 2em;
    padding-bottom: 0
}
.base,
p,
ul,
ol,
.medium,
h4 {
    line-height: 1.625em;
    padding-top: 1.625em;
    padding-bottom: 0
}
.medium,
h4 {
    font-size: 16px
}
@media only screen and (min-width: 800px) {
    .medium,
    h4 {
        font-size: 20px;
        font-weight: 300;
        line-height: 1.3em;
        padding-top: 1.3em;
        padding-bottom: 0
    }
}
.large {
    font-weight: 300
}
.large,
h3 {
    font-size: 20px;
    line-height: 1.3em;
    padding-top: 1.3em;
    padding-bottom: 0;
}
@media only screen and (min-width: 800px) {
    .large,
    h3 {
        font-family: 'Arima Madurai', cursive;
        font-size: 26px;
        font-weight: 300;
        line-height: 1em;
        padding-top: 1em;
        padding-bottom: 0
    }
}
.xlarge,
h2 {
    font-family: 'Arima Madurai', cursive;
    font-size: 26px;
    font-weight: 300;
    line-height: 1em;
    padding-top: 1em;
    padding-bottom: 0
}
@media only screen and (min-width: 800px) {
    .xlarge,
    h2 {
        font-family: 'Arima Madurai', cursive;
        font-size: 34px;
        font-weight: 300;
        line-height: 1.2381em;
        padding-top: .619em;
        padding-bottom: 0
    }
}
.xxlarge,
h1 {
    font-family: 'Arima Madurai', cursive;
    font-size: 42px;
    font-weight: 300;
    line-height: 1.2381em;
    padding-top: .619em;
    padding-bottom: 0
}
@media only screen and (min-width: 800px) {
    .xxlarge,
    h1 {
        font-family: 'Arima Madurai', cursive;
        font-size: 56px;
        font-weight: 300;
        line-height: 1.1471em;
        padding-top: .3824em;
        padding-bottom: 0
    }
}
.huge {
    font-family: 'Arima Madurai', cursive;
    font-size: 68px;
    font-weight: 300;
    line-height: 1.1471em;
    padding-top: .3824em;
    padding-bottom: 0
}
@media only screen and (min-width: 800px) {
    .huge {
        font-family: 'Arima Madurai', cursive;
        font-size: 110px;
        font-weight: 300;
        line-height: 1.19em;
        padding-top: .2364em;
        padding-bottom: 0
    }
}
li>p {
    padding-top: 0
}
.button,
.button--primary,
.button--secondary,
.button--secondary-variation {
    display: inline-block;
    padding: 12px 32px;
    margin-bottom: 13px;
    margin-top: 13px;
    min-height: 26px;
    text-align: center;
    font-family: 'Arima Madurai', cursive;
    font-weight: 600;
    text-decoration: none;
    outline: 0;
    -webkit-transition: none;
    transition: none
}
.button:hover,
.button--primary:hover,
.button--secondary:hover,
.button--secondary-variation:hover {
    background: #4d4d4d;
    color: #fff;
    border: 1px solid #4d4d4d;
    text-decoration: none
}
.button--primary {
    background: #4285f4;
    color: #fff;
    border: 1px solid #1266f1
}
.button--secondary,
.button--secondary-variation {
    background: #fff;
    color: #3372df;
    border: 1px solid #e6e6e6
}
.button--secondary-variation {
    border-color: transparent
}
ul,
ol {
    list-style: none;
    margin: 0
}
@media only screen and (max-width: 619px) {
    ul,
    ol {
        padding-left: 0
    }
}
ul li {
    position: relative;
    padding-left: 16px
}
ul li::before {
    font-family: "icons";
    display: block;
    font-weight: 400;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 26px;
    font-size: 4px
}
ol {
    counter-reset: list
}
ol>li {
    position: relative;
    padding-left: 32px
}
ol>li::before {
    counter-increment: list;
    content: "0" counter(list);
    color: inherit;
    font-weight: 400;
    display: inline-block;
    position: absolute;
    left: 0
}
ol>li:nth-child(10n)~li::before,
ol>li:nth-child(10n)::before {
    content: counter(list)
}
ul ol,
ol ul {
    padding-top: 0
}
ul.list-links li::before {
    display: none
}
ul.list-links a {
    font-weight: 400
}
ul.list-links a::before {
    font-family: "icons";
    display: block;
    font-weight: 400;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 26px;
    font-size: 4px
}
ul.list-links.list-links--primary a {
    font-weight: 400;
    font-family: 'Arima Madurai', cursive;
    line-height: 1;
    text-decoration: none
}
ul.list-links.list-links--primary a::before {
    font-family: "icons";
    font-size: 13px;
    display: block;
    font-weight: 400;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 26px
}
ol.list-links li::before {
    display: none
}
ol.list-links li a {
    display: inline-block;
    font-weight: 300
}
ol.list-links li a::before {
    counter-increment: list;
    content: "0" counter(list);
    color: inherit;
    font-weight: 400;
    display: inline-block;
    position: absolute;
    left: 0
}
ol.list-links li:nth-child(10n)~li a::before,
ol.list-links li:nth-child(10n) a::before {
    content: counter(list)
}
ol.list-links.list-links--secondary a::before {
    display: none
}
.list-links--secondary {
    font-size: 16px;
    line-height: 1.625em;
    padding-top: 1.625em;
    padding-bottom: 0;
    padding-left: 0
}
.list-links--secondary li,
.list-anchor {
    padding-left: 0
}
.list-anchor li {
    font-size: 16px;
    line-height: 1.625em;
    padding-bottom: 0;
    padding-top: 0;
    padding-left: 0
}
.list-anchor li::before {
    display: none
}
.list-anchor a {
    line-height: 1;
    display: inline-block;
    padding-left: 16px
}
.list-anchor a::before {
    font-family: "icons";
    display: block;
    font-weight: 400;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 26px;
    font-size: 4px
}
@media only screen and (min-width: 620px) {
    .list-small li {
        font-size: 13px;
        line-height: 2em;
        padding-bottom: 0;
        padding-top: 0
    }
}
.list-centered {
    text-align: center;
    padding-left: 0
}
.featured-list {
    padding-top: 78px;
    padding-bottom: 78px
}
.featured-list__item {
    background: #fff;
    padding-left: 0;
    padding-top: 26px;
    padding-bottom: 26px;
    margin-top: 26px
}
@media only screen and (min-width: 620px) {
    .featured-list__item {
        min-height: 338px;
        padding: 52px 32px
    }
}
.featured-list__item:first-child {
    margin-top: 0
}
.featured-list__item p {
    margin-bottom: 26px
}
.featured-list__img-wrapper {
    display: none;
    position: relative;
    padding-top: 26px;
    margin: 0 -5%
}
@media only screen and (min-width: 620px) {
    .featured-list__img-wrapper {
        display: block;
        padding-top: 0;
        margin: 0
    }
}
@media only screen and (min-width: 620px) {
    .featured-list__img {
        padding-top: 60.8%;
        padding-bottom: 0;
        height: 0;
        overflow: hidden;
        position: absolute;
        width: 100%
    }
}
.featured-list__img img {
    display: block;
    margin: 0 auto;
    max-width: 100%
}
@media only screen and (min-width: 620px) {
    .featured-list__img img {
        margin: 0;
        position: absolute;
        top: 0;
        height: 100%;
        width: 100%;
        left: 0
    }
}
.related-guides-list {
    font-family: 'Arima Madurai', cursive;
    padding-top: 0;
    padding-left: 0
}
@media only screen and (min-width: 620px) {
    .related-guides-list {
        padding-top: 26px
    }
}
@media only screen and (min-width: 800px) {
    .related-guides-list {
        padding-top: 0
    }
}
.related-guides-list p,
.related-guides-list .tag {
    padding-top: 0
}
.related-guides-list li {
    padding-top: 26px;
    padding-bottom: 25px;
    border-bottom: 1px solid #e0e0e0
}
.related-guides-list li:last-child {
    border-color: transparent
}
@media only screen and (min-width: 620px) {
    .related-guides-list li {
        padding-top: 0;
        padding-bottom: 0;
        border-color: transparent
    }
}
.list--reset,
.list--reset li {
    padding-left: 0
}
.list--reset.list-links a::before,
.list--reset li::before {
    display: none!important
}
.list-lessons {
    padding-left: 0
}
.list-lessons a {
    color: #fff
}
.list-lessons .current,
.list-lessons .current a {
    text-decoration: none;
    cursor: default
}
.list-lessons .current .icon {
    font-size: 13px;
    display: inline-block;
    background: rgba(0, 0, 0, .2);
    border-radius: 100%;
    width: 26px;
    line-height: 26px;
    text-align: center;
    margin-left: 7px
}
.list-guides-intro {
    margin-bottom: 52px
}
@media only screen and (max-width: 619px) {
    .list-guides-intro {
        padding-top: 52px
    }
}
.list-guides-intro li {
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 51px;
    margin-bottom: 52px
}
@media only screen and (min-width: 620px) {
    .list-guides-intro li {
        border-color: transparent;
        padding-bottom: 0
    }
}
.list-guides-intro li:last-child {
    border-bottom: transparent;
    margin-bottom: 0
}
a {
    color: #3372df
}
a:hover {
    text-decoration: none
}
.cta--primary {
    font-family: 'Arima Madurai', cursive;
    color: #3372df;
    font-weight: 400;
    display: inline-block;
    line-height: 1;
    text-decoration: none
}
.cta--primary:hover {
    color: rgba(0, 0, 0, .87)
}
.cta--primary::before {
    display: inline-block;
    padding-right: 10px;
    font-family: "icons";
    line-height: 25px;
    font-size: 13px;
    content: ""
}
.cta--secondary {
    font-family: 'Arima Madurai', cursive;
    color: #3372df;
    font-weight: 400;
    display: inline-block;
    line-height: 1
}
.cta--secondary:hover {
    color: rgba(0, 0, 0, .87)
}
table {
    margin-top: 26px;
    width: 100%
}
table thead {
    background: #3372df;
    color: #fff
}
table th {
    text-align: center;
    display: none;
    font-family: 'Arima Madurai', cursive;
    font-size: 16px;
    line-height: 1.625em;
    padding-top: 1.625em;
    padding-bottom: 0
}
@media only screen and (min-width: 800px) {
    table th {
        font-size: 20px;
        font-weight: 300;
        line-height: 1.3em;
        padding-top: 1.3em;
        padding-bottom: 0
    }
}
@media only screen and (min-width: 620px) {
    table tr {
        border-bottom: 1px solid #fff
    }
}
table tbody {
    background: #f0f0f0
}
table td {
    display: block;
    padding-top: 13px;
    padding-bottom: 13px
}
table td::before {
    content: attr(data-th)" :";
    display: inline-block;
    color: #fff;
    background: #3372df;
    border-right: 2px solid #fff;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100px;
    max-height: 100%;
    font-family: 'Arima Madurai', cursive;
    font-size: 16px;
    font-weight: 400;
    padding-left: 13px;
    padding-top: 13px
}
@media only screen and (min-width: 620px) {
    table td::before {
        display: none
    }
}
table th,
table td {
    position: relative;
    padding-left: 140px
}
@media only screen and (min-width: 620px) {
    table th,
    table td {
        display: table-cell
    }
}
@media only screen and (min-width: 620px) {
    table th {
        padding: 13px 26px 12px
    }
}
@media only screen and (min-width: 620px) {
    table td {
        padding: 26px 26px 25px
    }
}
td:last-child::after {
    content: "";
    display: block;
    background: #fff;
    height: 1px;
    left: 0;
    position: absolute;
    bottom: 0;
    width: 100%
}
@media only screen and (min-width: 620px) {
    td:last-child::after {
        display: none
    }
}
.table-2 col {
    width: 344px
}
@media only screen and (min-width: 800px) {
    .table-2 col {
        width: 432px
    }
}
@media only screen and (min-width: 620px) {
    .table-2 th:first-child,
    .table-2 td:first-child {
        border-right: 2px solid #fff
    }
}
.table-3 col {
    width: 229.3333333333px
}
@media only screen and (min-width: 800px) {
    .table-3 col {
        width: 288px
    }
}
@media only screen and (min-width: 620px) {
    .table-3 th:nth-child(2),
    .table-3 td:nth-child(2) {
        border-left: 2px solid #fff;
        border-right: 2px solid #fff
    }
}
.table-4 col {
    width: 172px
}
@media only screen and (min-width: 800px) {
    .table-4 col {
        width: 216px
    }
}
@media only screen and (min-width: 620px) {
    .table-4 th:nth-child(2),
    .table-4 th:nth-child(3),
    .table-4 td:nth-child(2),
    .table-4 td:nth-child(3) {
        border-left: 2px solid #fff;
        border-right: 2px solid #fff
    }
}
img,
video,
object {
    max-width: 100%
}
.content img {
    margin-top: 26px;
    margin-bottom: 26px
}
.breadcrumbs {
    display: none;
    position: relative;
    z-index: 1
}
@media only screen and (min-width: 620px) {
    .breadcrumbs {
        display: block
    }
}
.breadcrumbs p {
    padding-top: 26px
}
.breadcrumbs p,
.breadcrumbs__link {
    font-size: 13px;
    line-height: 2em;
    padding-bottom: 0
}
.breadcrumbs__link {
    color: #000;
    font-weight: 400;
    padding-top: 0
}
@media only screen and (min-width: 620px) {
    .breadcrumbs__link {
        padding-top: 0
    }
}
.subsection-title {
    color: rgba(0, 0, 0, .87);
    margin-top: 52px
}
.subsection-number {
    font-size: 16px;
    line-height: 1.625em;
    padding-bottom: 0;
    padding-top: 0;
    display: block
}
.articles-list {
    padding-left: 0
}
.articles-list__item {
    padding-bottom: 52px;
    padding-left: 0
}
.articles-list__item:last-child {
    padding-bottom: 53px
}
.articles-list__item::before {
    content: "";
    display: block;
    width: 40%;
    height: 1px;
    box-shadow: inset 0 1px 0 0 #e0e0e0;
    margin-right: 0;
    margin-left: 30%
}
.articles-list__item h3 a:hover {
    text-decoration: none
}
.articles-list__item p {
    margin-top: 26px;
    margin-bottom: 26px
}
.articles-list__item:first-child {
    padding-top: 0
}
@media only screen and (min-width: 620px) {
    .articles-list__item:first-child {
        padding-top: 24px
    }
}
.articles-list__item:first-child::before {
    display: none
}
.guides-list {
    overflow: hidden
}
@media only screen and (min-width: 620px) {
    .guides-list {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-top: 52px
    }
}
.guides-list__item {
    padding: 0;
    background: #fff;
    margin-top: 26px;
    margin-bottom: 0
}
@media only screen and (min-width: 620px) {
    .guides-list__item {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}
.guides-list__item h3 {
    margin: 0 32px
}
.guides-list__item p {
    margin: 26px 32px 0
}
@media only screen and (min-width: 620px) {
    .guides-list__item .primary-content {
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
}
.guides-list__item .secondary-content {
    position: relative;
    margin-top: 51px;
    border-top: 1px solid #e0e0e0
}
@media only screen and (min-width: 620px) {
    .guides-list__item .secondary-content {
        width: 100%
    }
}
.guides-list__item .secondary-content .icon-circle {
    position: absolute;
    top: -28px;
    left: 50%;
    margin-left: -21px;
    border: 2px solid #fff
}
.guides-list__item .secondary-content .icon-circle i {
    font-size: 23px
}
.guides-list__item ol {
    padding: 52px 0;
    margin: 0
}
.guides-list__item::before {
    display: none
}
.icon-circle {
    position: relative;
    padding: 22px;
    margin: 4px auto
}
.icon-circle,
.icon-circle--large {
    height: 0;
    width: 0;
    background: rgba(0, 0, 0, .54);
    display: block;
    border-radius: 100%;
    font-size: 0
}
.icon-circle i {
    font-size: 26px
}
.icon-circle i,
.icon-circle span,
.icon-circle--large i,
.icon-circle--large span {
    position: absolute;
    line-height: 0;
    top: 50%;
    width: 100%;
    left: 0;
    text-align: center;
    color: #fff
}
.icon-circle span,
.icon-circle--large span {
    font-family: 'Arima Madurai', cursive;
    font-size: 26px;
    font-weight: 700
}
@media only screen and (min-width: 620px) {
    .icon-circle span,
    .icon-circle--large span {
        font-size: 42px
    }
}
.icon-circle--large {
    margin: 0 auto;
    padding: 26px;
    position: relative
}
.icon-circle--large i {
    font-size: 26px
}
@media only screen and (min-width: 620px) {
    .icon-circle--large i {
        font-size: 42px
    }
}
@media only screen and (min-width: 620px) {
    .icon-circle--large {
        padding: 37px;
        border: 2px solid #fff
    }

    a .icon-circle--large {
        padding: 38px;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .42);
        border: 1px solid;
        -webkit-transition: all 100ms linear;
        transition: all 100ms linear;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }

    .no-touch a:hover .icon-circle--large {
        box-shadow: inset 0 0 0 1px #fff;
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}
.icon-circle--nav {
    height: 0;
    width: 0;
    background: rgba(0, 0, 0, .54);
    display: block;
    position: relative;
    border-radius: 100%;
    font-size: 0;
    padding: 13px;
    margin: 0 auto
}
@media only screen and (min-width: 620px) {
    .icon-circle--nav {
        padding: 22px;
        margin-top: 4px;
        margin-bottom: 4px
    }
}
.icon-circle--nav i {
    position: absolute;
    line-height: 1px;
    top: 50%;
    width: 100%;
    left: 0;
    text-align: center;
    color: #fff;
    font-size: 16px
}
@media only screen and (min-width: 620px) {
    .icon-circle--nav i {
        font-size: 26px
    }
}
.theme--multi-device-layouts .themed {
    color: #297ea9
}
.theme--introduction-to-media .themed {
    color: #cf423a
}
.theme--user-input .themed {
    color: #2c8566
}
.theme--performance .themed {
    color: #7b5294
}
.theme--multi-device-layouts .themed--background,
.theme--multi-device-layouts .themed--background.next-lessons::before {
    background-color: #297ea9
}
.theme--introduction-to-media .themed--background,
.theme--introduction-to-media .themed--background.next-lessons::before {
    background-color: #cf423a
}
.theme--user-input .themed--background,
.theme--user-input .themed--background.next-lessons::before {
    background-color: #2c8566
}
.theme--performance .themed--background,
.theme--performance .themed--background.next-lessons::before {
    background-color: #7b5294
}
.theme--multi-device-layouts .themed--hover:hover {
    color: #297ea9
}
.theme--introduction-to-media .themed--hover:hover {
    color: #cf423a
}
.theme--user-input .themed--hover:hover {
    color: #2c8566
}
.theme--performance .themed--hover:hover {
    color: #7b5294
}
.theme--multi-device-layouts .themed--hover-secondary:hover {
    color: #89c4e2
}
.theme--introduction-to-media .themed--hover-secondary:hover {
    color: #edb8b5
}
.theme--user-input .themed--hover-secondary:hover {
    color: #78d2b3
}
.theme--performance .themed--hover-secondary:hover {
    color: #c4add2
}
.article--multi-device-layouts .article-container h1,
.article--multi-device-layouts .article-container h2 {
    color: #297ea9
}
.article--introduction-to-media .article-container h1,
.article--introduction-to-media .article-container h2 {
    color: #cf423a
}
.article--user-input .article-container h1,
.article--user-input .article-container h2 {
    color: #2c8566
}
.article--performance .article-container h1,
.article--performance .article-container h2 {
    color: #7b5294
}
.nav-theme--multi-device-layouts .themed--hover:hover {
    color: #297ea9
}
.nav-theme--introduction-to-media .themed--hover:hover {
    color: #cf423a
}
.nav-theme--user-input .themed--hover:hover {
    color: #2c8566
}
.nav-theme--performance .themed--hover:hover {
    color: #7b5294
}
.nav-theme--multi-device-layouts .themed {
    color: #297ea9
}
.nav-theme--introduction-to-media .themed {
    color: #cf423a
}
.nav-theme--user-input .themed {
    color: #2c8566
}
.nav-theme--performance .themed {
    color: #7b5294
}
.nav-theme--multi-device-layouts .themed--background {
    background-color: #297ea9
}
.nav-theme--introduction-to-media .themed--background {
    background-color: #cf423a
}
.nav-theme--user-input .themed--background {
    background-color: #2c8566
}
.nav-theme--performance .themed--background {
    background-color: #7b5294
}
.page--styleguide .styleguide__module-title {
    margin-bottom: 26px
}
.page--styleguide .styleguide__color-list {
    text-align: center
}
.page--styleguide .styleguide__color-list li {
    border-bottom: 52px solid;
    margin-bottom: 26px;
    position: relative
}
.page--styleguide .styleguide__breadcrumb .breadcrumbs {
    display: block
}
.page--styleguide .styleguide__lists ul,
.page--styleguide .styleguide__lists ol {
    margin-bottom: 26px
}
.page--styleguide .styleguide__inverted-block {
    background: #e8e8e8;
    padding: 0 13px
}
.page--styleguide .styleguide__theme-block {
    background: #297ea9;
    padding: 0 13px
}
.demo {
    margin-bottom: 26px;
    margin-top: 26px
}
.demo[class*="g-"] {
    background-color: rgba(0, 0, 0, .26);
    position: relative;
    margin-bottom: 26px;
    min-height: 156px
}
.demo[class*="g-"]::before,
.demo[class*="g-"]::after {
    font-size: 13px;
    line-height: 2em;
    padding-top: 2em;
    padding-bottom: 0;
    display: block;
    margin: 0 10px
}
.demo[class*="g-"]::before {
    content: 'HTML classes: ';
    font-weight: 600
}
.demo[class*="g-"]::after {
    content: attr(class);
    word-spacing: 15px
}
.page--resources .article-section__icon,
.page--resources .articles-count,
.page--resources .guides-list__item .secondary-content {
    display: none
}
.page--resources .primary-content {
    padding-top: 26px;
    padding-bottom: 52px
}
.page--resources .primary-content p {
    margin-top: 0
}
.clear::before,
.clear::after {
    content: '';
    display: table
}
.clear::after {
    clear: both
}
.color--blue {
    color: #3372df
}
.color--red {
    color: #cb4437
}
.color--green {
    color: #0f9d58
}
.color--yellow {
    color: #f4b400
}
.color--blue-secondary {
    color: #b7cdf4
}
.color--red-secondary {
    color: #ebb6b0
}
.color--green-secondary {
    color: #56efa5
}
.color--yellow-secondary {
    color: #ffd45b
}
.color--gray-background {
    color: #f0f0f0
}
.color--gray-keyline {
    color: #e0e0e0
}
.color--gray {
    color: rgba(0, 0, 0, .54)
}
.color--gray-dark {
    color: rgba(0, 0, 0, .87)
}
.color--text {
    color: #404040
}
.color--highlight {
    color: #3372df
}
.color--warning {
    color: #ffd45b
}
.color--danger {
    color: #cb4437
}
.color--muted {
    color: #737373
}
.color--remember {
    color: #09829a
}
.color--learning {
    color: #da2e75
}
.color--layouts {
    color: #297ea9
}
.color--user {
    color: #2c8566
}
.color--media {
    color: #cf423a
}
.color--performance {
    color: #7b5294
}
.color--layouts-secondary {
    color: #89c4e2
}
.color--user-secondary {
    color: #78d2b3
}
.color--media-secondary {
    color: #edb8b5
}
.color--performance-secondary {
    color: #c4add2
}
.text-divider {
    position: relative;
    margin-bottom: 26px
}
.text-divider::after {
    content: '';
    display: block;
    position: absolute;
    width: 40%;
    height: 1px;
    box-shadow: 0 1px 0 0 #e0e0e0;
    left: 30%;
    bottom: -13px
}
.text-divider.xlarge {
    margin-bottom: 52px
}
.text-divider.xlarge::after {
    bottom: -26px
}
.text-divider.xxlarge {
    margin-bottom: 78px
}
.text-divider.xxlarge::after {
    bottom: -39px
}
.text-divider.huge {
    margin-bottom: 78px
}
.text-divider.huge::after {
    bottom: -39px
}
.centered {
    text-align: center
}
.tag {
    font-size: 13px;
    line-height: 2em;
    padding-top: 2em;
    padding-bottom: 0;
    font-family: 'Arima Madurai', cursive;
    text-transform: uppercase;
    font-weight: 700;
    display: inline-block;
    text-decoration: none
}
.tag:hover {
    color: rgba(0, 0, 0, .87)
}
.tag::before {
    content: '# ';
    display: inline-block
}
html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0
}
body {
    position: relative;
    font-family: Helvetica, Arial, sans-serif;
    font-weight: 300;
    /*    background-color:#ddd;*/

    background-image: url(../images/whitediamond.png);
    box-sizing: border-box;
    min-height: 100%
}
body.open {
    overflow: hidden
}
h3 {
    font-weight: 400
}
.app-bar {
    display: block;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: #31d265;
    overflow: hidden;
    z-index: 1
}
.app-bar-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 60px;
    position: relative;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    margin: 0 auto
}
.app-bar.open,
.app-bar.open~main {
    -webkit-transform: translate(250px, 0);
    transform: translate(250px, 0)
}
.app-bar .logo {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    line-height: 60px;
    margin: 0 16px;
    padding: 0;
    color: #fefefe;
    float: none;
    max-width: none;
    font-weight: 300;
    display: initial
}
.app-bar .logo a {
    text-decoration: none;
    color: inherit;
    font-weight: 400
}
.app-bar-actions {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    z-index: 2
}
.app-bar button {
    width: 60px;
    height: 60px;
    background-image: none;
    background-color: transparent;
    border: none;
    padding: 0;
    display: inline-block;
    -webkit-transition: background-color .2s ease-out;
    transition: background-color .2s ease-out;
    -webkit-tap-highlight-color: transparent
}
.app-bar button img {
    height: 24px;
    width: 24px
}
.app-bar button:hover {
    background-color: rgba(255, 255, 255, .1)
}
.app-bar button:focus {
    background-color: rgba(255, 255, 255, .2);
    outline: 0
}
.app-bar button:active {
    background-color: rgba(255, 255, 255, .4)
}
.promote-layer {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}
.base,
p,
ul,
ol {
    font-size: 19px
}
.navdrawer-container {
    z-index: 1000;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 250px;
    height: 100%;
    background-color: #3367D6;
    color: #fefefe;
    -webkit-transform: translate(-250px, 0);
    transform: translate(-250px, 0);
    overflow-y: auto
}
.navdrawer-container.open {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0)
}
.app-bar,
.navdrawer-container.opened,
main {
    -webkit-transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out
}
.navdrawer-container h4,
.navdrawer-container ul li a {
    height: 60px;
    padding: 17px 20px;
    line-height: 1.4
}
.navdrawer-container h4 {
    background-color: #fff;
    color: #3367D6
}
.navdrawer-container ul {
    padding: 0;
    margin: 0;
    list-style-type: none
}
.navdrawer-container ul li a {
    display: block;
    text-decoration: none;
    color: #fff;
    border: 1px solid #2351a3;
    -webkit-transition: background-color .2s ease-out;
    transition: background-color .2s ease-out;
    white-space: nowrap
}
.navdrawer-container ul li+li+li a {
    border-right: 1px solid #2351a3;
}
.navdrawer-container ul li+li a {
    border-right: none;
}
.navdrawer-container ul li a {
    border-right: none;
}
.navdrawer-container ul li {
    border-bottom-style: solid;
    border-width: 1px;
    border-color: #fff;
    padding: 0
}
.navdrawer-container ul li::before {
    content: none
}
.navdrawer-container ul li a:hover {
    background-color: rgba(255, 255, 255, .2)
}
.navdrawer-container ul li a:focus {
    background-color: rgba(255, 255, 255, .3);
    outline: 0
}
.navdrawer-container ul li a:active {
    background-color: rgba(255, 255, 255, .4)
}
main {
    margin: 0 auto;
    padding: 60px 16px 16px;
}
@media all and (min-width: 990px) {
    .app-bar {
        position: relative
    }

    .app-bar.open,
    .app-bar.open~main {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    .app-bar-container {
        display: block;
        height: 130px;
        max-width: 864px;
        padding: 0 16px;
        box-sizing: border-box;
        background-color: #31d265
    }

    .app-bar .logo {
        float: left;
        margin: 0;
        padding: 0;
        line-height: 130px;
        font-size: 46px
    }

    .app-bar-actions {
        float: right
    }

    .app-bar::after {
        content: ' ';
        display: block;
        height: 0;
        overflow: hidden;
        clear: both
    }

    button.menu {
        display: none
    }

    .navdrawer-container {
        position: relative;
        width: 100%;
        height: auto;
        margin-top: 0;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        -webkit-transition: none;
        transition: none;
        overflow-y: auto
    }

    .navdrawer-container h4 {
        display: none
    }

    .navdrawer-container ul {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        max-width: 864px;
        margin: 0 auto;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .navdrawer-container ul li {
        border: none
    }

    main {
        max-width: 864px;
        padding-top: 0;
        min-height: initial
    }

    body {
        overflow-y: scroll
    }

    a.f-icon img {
        width: 96px;
        height: 79px;
    }
}
.work {
    margin: 40px 0 0 0;
}
.caption {
    font-size: 13px;
    font-weight: 300;
    line-height: 1.0;
}

}
