* {
    box-sizing: border-box;
}

body {
    font-family: "Open Sans", sans-serif;
}

.accordion dd,
.accordion__panel {
    font-size: 1em;
    line-height: 1.5em;
}

.accordion {
    position: relative;
}

.container {
    max-width: 960px;
    margin: 0 auto;
    padding: 2em 0 2em 0;
}

.accordionTitle:not(first-child),
.accordion__Headin:not(first-child) {
    margin-top: -2px;
}

.accordionTitle,
.accordion__Heading {
    background-color: #fff;
    text-align: center;
    padding: 1em;
    display: block;
    text-decoration: none;
    color: #0095e9;
    transition: background-color 0.5s ease-in-out;
    border: 2px solid #0095e9;
    cursor: pointer;
}

.accordionTitle:before,
.accordion__Heading:before {
    content: "+";
    font-size: 1.5em;
    line-height: 0.5em;
    float: left;
    transition: transform 0.3s ease-in-out;
}

.accordionTitle:hover,
.accordion__Heading:hover {
    background-color: #0095e9;
    color: #fff;
}

.accordionTitleActive,
.accordionTitle.is-expanded {
    background-color: #0095e9;
    color: #fff;
}

.accordionTitleActive:before,
.accordionTitle.is-expanded:before {
    transform: rotate(-225deg);
}

.accordionItem {
    height: auto;
    overflow: hidden;
    transition: max-height 1s;
}

.accordionItem.is-collapsed {
    max-height: 0;
}

.no-js .accordionItem.is-collapsed {
    max-height: auto;
}

.animateIn {
    animation: accordionIn 0.45s normal ease-in-out both 1;
}

.animateOut {
    animation: accordionOut 0.45s alternate ease-in-out both 1;
}

@keyframes accordionIn {
    0% {
        opacity: 0;
        transform: scale(0.9) rotateX(-60deg);
        transform-origin: 50% 0;
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes accordionOut {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(0.9) rotateX(-60deg);
    }
}