
:root {
    --radius: 0.25em
}

:root {
    --font-primary: sans-serif;
    --text-base-size: 0.6em;
    --text-scale-ratio: 1.2;
    --text-xs: calc(1em/var(--text-scale-ratio)/var(--text-scale-ratio));
    --text-sm: calc(var(--text-xs)*var(--text-scale-ratio));
    --text-md: calc(var(--text-sm)*var(--text-scale-ratio)*var(--text-scale-ratio));
    --text-lg: calc(var(--text-md)*var(--text-scale-ratio));
    --text-xl: calc(var(--text-lg)*var(--text-scale-ratio));
    --text-xxl: calc(var(--text-xl)*var(--text-scale-ratio));
    --text-xxxl: calc(var(--text-xxl)*var(--text-scale-ratio));
    --body-line-height: 1.4;
    --heading-line-height: 1.2;
    --font-primary-capital-letter: 1
}

@supports (--css: variables) {
    @media (min-width: 64rem) {
        :root {
            --text-base-size: 1.25em;
            --text-scale-ratio: 1.25
        }
    }
}

mark {
    background-color: hsla(355, 90%, 61%, 0.2);
    background-color: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.2);
    color: inherit
}

.text-component {
    --line-height-multiplier: 1;
    --text-vspace-multiplier: 1
}

.text-component blockquote {
    padding-left: 1em;
    border-left: 4px solid hsl(240, 1%, 83%);
    border-left: 4px solid var(--color-contrast-low)
}

.text-component hr {
    background: hsl(240, 1%, 83%);
    background: var(--color-contrast-low);
    height: 1px
}

.text-component figcaption {
    font-size: 0.83333em;
    font-size: var(--text-sm);
    color: hsl(240, 1%, 48%);
    color: var(--color-contrast-medium)
}

.article.text-component {
    --line-height-multiplier: 1.13;
    --text-vspace-multiplier: 1.2
}

:root {
    --btn-font-size: 1em;
    --btn-font-size-sm: calc(var(--btn-font-size) - 0.2em);
    --btn-font-size-md: calc(var(--btn-font-size) + 0.2em);
    --btn-font-size-lg: calc(var(--btn-font-size) + 0.4em);
    --btn-radius: 0.25em;
    --btn-padding-x: var(--space-sm);
    --btn-padding-y: var(--space-xs)
}

.btn {
    --color-shadow: hsla(240, 8%, 12%, 0.15);
    --color-shadow: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.15);
    box-shadow: 0 4px 16px hsla(240, 8%, 12%, 0.15);
    box-shadow: 0 4px 16px hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.15);
    cursor: pointer
}

.btn--primary {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.btn--accent {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.btn--disabled {
    opacity: 0.6
}

:root {
    --form-control-padding-x: var(--space-sm);
    --form-control-padding-y: var(--space-xs);
    --form-control-radius: 0.25em
}

.form-control {
    border: 2px solid hsl(240, 1%, 83%);
    border: 2px solid var(--color-contrast-low)
}

.form-control:focus {
    outline: none;
    border-color: hsl(220, 90%, 56%);
    border-color: var(--color-primary);
    --color-shadow: hsla(220, 90%, 56%, 0.2);
    --color-shadow: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
    box-shadow: undefined;
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-control:focus:focus {
    box-shadow: 0 0 0 3px hsla(220, 90%, 56%, 0.2);
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-control[aria-invalid="true"] {
    border-color: hsl(355, 90%, 61%);
    border-color: var(--color-error)
}

.form-control[aria-invalid="true"]:focus {
    --color-shadow: hsla(355, 90%, 61%, 0.2);
    --color-shadow: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), 0.2);
    box-shadow: undefined;
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-control[aria-invalid="true"]:focus:focus {
    box-shadow: 0 0 0 3px hsla(355, 90%, 61%, 0.2);
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-label {
    font-size: 0.83333em;
    font-size: var(--text-sm)
}

:root {
    --cd-color-1: hsl(213, 7%, 33%);
    --cd-color-1-h: 213;
    --cd-color-1-s: 7%;
    --cd-color-1-l: 33%;
    --cd-color-2: hsl(73, 46%, 55%);
    --cd-color-2-h: 73;
    --cd-color-2-s: 46%;
    --cd-color-2-l: 55%;
    --cd-color-3: hsl(210, 14%, 49%);
    --cd-color-3-h: 210;
    --cd-color-3-s: 14%;
    --cd-color-3-l: 49%;
    --cd-color-4: hsl(0, 0%, 100%);
    --cd-color-4-h: 0;
    --cd-color-4-s: 0%;
    --cd-color-4-l: 100%;
    --font-primary: 'Open Sans', sans-serif
}

.cd-faq {
    box-shadow: 0 1px 2px rgba(0, 0, 0, .085), 0 1px 8px rgba(0, 0, 0, .1);
    box-shadow: var(--shadow-sm)
}

.cd-faq::before {
    content: 'mobile';
    display: none
}

.cd-faq a {
    text-decoration: none
}

@media (min-width: 64rem) {
    .cd-faq {
        position: relative;
        box-shadow: none;
        display: -ms-flexbox;
        display: flex
    }
    .cd-faq::before {
        content: 'desktop'
    }
}

@media (min-width: 64rem) {
    .cd-faq__categories {
        position: -webkit-sticky;
        position: sticky;
        -ms-flex-item-align: start;
        align-self: flex-start;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        top: 20px;
        width: 20%;
        box-shadow: 0 1px 2px rgba(0, 0, 0, .085), 0 1px 8px rgba(0, 0, 0, .1);
        box-shadow: var(--shadow-sm);
        margin-top: 1.25em;
        margin-top: var(--space-md)
    }
}

@media (min-width: 80rem) {
    .cd-faq__categories {
        width: 200px
    }
}

.cd-faq__category {
    position: relative;
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 2em 0 1.05em;
    padding: 0 var(--space-lg) 0 calc(var(--space-sm)*1.4);
    color: hsl(0, 0%, 100%);
    color: var(--cd-color-4);
    background-color: hsl(213, 7%, 33%);
    background-color: var(--cd-color-1);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    --border-color: hsl(213, 7%, 36.3%);
    --border-color: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*1.1));
    border-bottom: 1px solid hsl(213, 7%, 36.3%);
    border-bottom: 1px solid var(--border-color)
}

.cd-faq__category::before,
.cd-faq__category::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 16px;
    display: inline-block;
    height: 1px;
    width: 10px;
    background-color: hsl(213, 7%, 52.8%);
    background-color: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*1.6))
}

.cd-faq__category::after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

li:last-child .cd-faq__category {
    border-bottom: none
}

@media (min-width: 64rem) {
    .cd-faq__category {
        font-size: 0.69444em;
        font-size: var(--text-xs);
        font-weight: 600;
        padding: 0 1.25em;
        padding: 0 var(--space-md);
        transition: background .2s
    }
    .cd-faq__category::before,
    .cd-faq__category::after {
        display: none
    }
    .cd-faq__category:hover {
        background: hsl(213, 7%, 36.3%);
        background: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*1.1))
    }
}

@media (min-width: 80rem) {
    .cd-faq__category::before {
        display: block;
        top: 0;
        right: auto;
        left: 0;
        height: 100%;
        width: 3px;
        background-color: hsl(73, 46%, 55%);
        background-color: var(--cd-color-2);
        opacity: 0;
        transition: opacity .2s
    }
}

@media (min-width: 80rem) {
    .cd-faq__category-selected {
        background: hsl(213, 7%, 26.4%);
        background: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*0.8))
    }
    .cd-faq__category-selected:hover {
        background: hsl(213, 7%, 26.4%);
        background: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*0.8))
    }
    .cd-faq__category-selected::before {
        opacity: 1
    }
}

.cd-faq__items {
    position: fixed;
    z-index: 1;
    height: 100%;
    width: 90%;
    top: 0;
    right: 0;
    background: hsl(0, 0%, 100%);
    background: var(--cd-color-4);
    padding: 0 1.25em 1.25em;
    padding: 0 var(--component-padding) var(--space-md);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0) translateX(100%);
    transform: translateZ(0) translateX(100%);
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s
}

@media (min-width: 64rem) {
    .cd-faq__items {
        position: static;
        height: auto;
        width: auto;
        -ms-flex-positive: 1;
        flex-grow: 1;
        overflow: visible;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        padding: 0 0 0 0.75em;
        padding: 0 0 0 var(--space-sm);
        background: transparent
    }
}

.cd-faq__items--slide-in {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

html:not(.js) .cd-faq__items {
    position: static;
    height: auto;
    width: 100%;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.cd-faq__group {
    display: none
}

@media (min-width: 64rem) {
    .cd-faq__group {
        display: block;    padding-left: 155px;
        padding-top: 1px
    }
}

html:not(.js) .cd-faq__group,
.cd-faq__group--selected {
    display: block
}

.cd-faq__title {
    margin: 1.25em 0;
    margin: var(--space-md) 0
}

.cd-faq__title h2 {
    text-transform: uppercase;
    font-size: 0.83333em;
    font-size: var(--text-sm);
    font-weight: 700;
    color: hsl(240, 1%, 74.7%);
    color: hsl(var(--color-contrast-low-h), var(--color-contrast-low-s), calc(var(--color-contrast-low-l)*0.9))
}

@media (min-width: 64rem) {
    .cd-faq__title {
        margin-bottom: 0.75em;
        margin-bottom: var(--space-sm)
    }
    .cd-faq__title h2 {
        font-size: 0.69444em;
        font-size: var(--text-xs)
    }
}

@media (min-width: 64rem) {
    .cd-faq__item {
        background: hsl(0, 0%, 100%);
        background: var(--cd-color-4);
        margin-bottom: 0.25em;
        margin-bottom: var(--space-xxxs);
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
        transition: box-shadow .2s
    }
    .cd-faq__item:hover {
        --box-shadow: hsla(210, 14%, 49%, 0.3);
        --box-shadow: hsla(var(--cd-color-3-h), var(--cd-color-3-s), var(--cd-color-3-l), 0.3);
        box-shadow: undefined;
        box-shadow: 0 1px 10px var(--box-shadow)
    }
    @media (min-width: 64rem) {
        .cd-faq__item:hover {
            box-shadow: 0 1px 10px hsla(210, 14%, 49%, 0.3);
            box-shadow: 0 1px 10px var(--box-shadow)
        }
    }
    .cd-faq__item:last-of-type {
        margin-bottom: 0
    }
}

.cd-faq__trigger {
    display: block;
    position: relative;
    margin: 1.25em 0 0.5em;
    margin: var(--space-md) 0 var(--space-xs);
    color: hsl(73, 46%, 55%);
    color: var(--cd-color-2)
}

@media (min-width: 64rem) {
    .cd-faq__trigger {
        font-weight: 300;
        margin: 0;
        padding: 0.75em 2em 0.75em 0.75em;
        padding: var(--space-sm) var(--space-lg) var(--space-sm) var(--space-sm)
    }
    .cd-faq__trigger span {
        font-size: 1.2em;
            font-size: 17px;
    }
    .cd-faq__trigger::before,
    .cd-faq__trigger::after {
        content: '';
        position: absolute;
        right: 24px;
        top: 50%;
        height: 2px;
        width: 13px;
        background: #EDB39B;
        background: #EDB39B, #EDB39B, #EDB39B);
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transition: -webkit-transform .2s;
        transition: transform .2s;
        transition: transform .2s, -webkit-transform .2s
    }
    .cd-faq__trigger::before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        right: 32px
    }
    .cd-faq__trigger::after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
    .cd-faq__item-visible .cd-faq__trigger::before {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
    .cd-faq__item-visible .cd-faq__trigger::after {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }
}

.cd-faq__content .text-component {
    font-size: 0.95em
}

.cd-faq__content p {
    color: hsl(210, 14%, 49%);
    color: var(--cd-color-3)
}

@media (min-width: 64rem) {
    .cd-faq__content {
        display: none;
        padding: 0 0.75em;
        padding: 0 var(--space-sm);
        overflow: hidden
    }
    .cd-faq__content .text-component {
        font-size: 0.75em;
        padding-bottom: 1.25em;
        padding-bottom: var(--space-md)
    }
}

.cd-faq__content--visible {
    display: block
}

@media (min-width: 64rem) {
    html:not(.js) .cd-faq__content {
        display: block
    }
}

.cd-faq__close-panel {
    position: fixed;
    z-index: 2;
    display: block;
    top: 5px;
    right: -40px;
    height: 40px;
    width: 40px;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: right .3s
}

.cd-faq__close-panel::before,
.cd-faq__close-panel::after {
    content: '';
    position: absolute;
    top: 16px;
    left: 12px;
    display: inline-block;
    height: 3px;
    width: 18px;
    background: hsl(210, 14%, 49%);
    background: var(--cd-color-3)
}

.cd-faq__close-panel::before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.cd-faq__close-panel::after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

@media (min-width: 64rem) {
    .cd-faq__close-panel {
        display: none
    }
}

.cd-faq__close-panel--move-left {
    right: 1.25em;
    right: var(--component-padding);
    transition-delay: 0.3s
}

.cd-faq__overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: hsla(213, 7%, 33%, 0.8);
    background-color: hsla(var(--cd-color-1-h), var(--cd-color-1-s), var(--cd-color-1-l), 0.8);
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s
}

@media (min-width: 64rem) {
    .cd-faq__overlay {
        display: none
    }
}

.cd-faq__overlay--is-visible {
    visibility: visible;
    opacity: 1
}

body {
    background-color: hsl(0, 0%, 95%);
    background-color: var(--color-contrast-lower)
}

.cd-header {
    --header-height: 180px;
    height: 180px;
    height: var(--header-height);
    background-color: hsl(73, 46%, 55%);
    background-color: var(--cd-color-2)
}

@media (min-width: 80rem) {
    .cd-header {
        height: 240px;
        height: var(--header-height)
    }
}

.cd-header h1 {
    font-size: 1.728em;
    font-size: var(--text-xl);
    font-weight: 300;
    color: hsl(0, 0%, 100%);
    color: var(--cd-color-4);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

@media (min-width: 80rem) {
    .cd-header {
        --header-height: 240px
    }
}

.cd-article-link {
    color: hsl(73, 46%, 27.5%);
    color: hsl(var(--cd-color-2-h), var(--cd-color-2-s), calc(var(--cd-color-2-l)*0.5));
    font-size: 0.83333em;
    font-size: var(--text-sm)
}


