/* General styles */

body {
    background-color: white;
    color: black;
    font-size: 15px;
    line-height: 150%;
}

a {
    color: white;
}

strong {
    font-weight: bold;
}

@media screen and (min-width: 850px) {
    .mobile-only {
        display: none;
    }
}

@media screen and (min-width: 1009px) {
    body {
        background-color: #1e446c;
        background-color: #133a63;
    }
}


/* Top (left) area, nav */

.page-container.private {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    background-image: none;
    background-color: white;
}

.page-container.private .description {
    text-align: center;
}

.mobile {
    text-align: center;
}


.left-area {
    background-color: #255892;
}

.logo-area {
    display: table;
    width: 100%;
    background-color: #0f427c;
    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}

.logo-link {
    display: table-cell;
    width: 50%;
}

.logo-link img {
    width: 70%;
    padding-top: 5%;
    padding-bottom: 7%;
    padding-left: 12%;
    max-width: 150px;
}

.hamburger {
    display: table-cell;
    width: 50%;
    text-align: right;
    vertical-align: middle;
}

.hamburger img {
    width: 55px;
    margin-right: 28px;
}

.navigation {
    height: 0px;
    overflow: hidden;
    font-family: Oswald, sans-serif;
    font-weight: 400;
    transition: height 0.15s;
}

.navigation.expanded {
    height: 660px;
}

.navigation li {
}

.navigation li:first-child {
    padding-top: 24px;
}

.navigation ul li:last-child {
    border-bottom: none;
}

.navigation a,
.navigation .more-label {
    color: white;
    font-size: 22px;
    text-align: center;
    display: block;
    text-decoration: none;
}

.navigation a {
    height: 40px;
    line-height: 40px;
}

.navigation a.active {
    background-color: #4970ad;
}

.navigation li.section-top {
    padding-top: 2em;
}

@media screen and (min-width: 600px) {
    .page-container.private {
        max-width: 550px;
    }
}

@media screen and (min-width: 850px) {
    .page-container {
        display: table;
        width: 100%;
        min-height: 100vh;
        box-shadow: 0 4px 8px 0 rgba(0,0,0,0.12), 0 2px 4px 0 rgba(0,0,0,0.08);
    }

    .left-area {
        box-shadow: none;
        width: 250px;
        display: table-cell;
        vertical-align: top;
        background-color: #0f427c;
    }

    .logo-area {
        display: block;
        padding-top: 60px;
        padding-bottom: 40px;
        box-shadow: none;
    }

    .logo-link {
        display: block;
        width: 212px;
        margin-left: auto;
        margin-right: auto;
    }

    .logo-link img {
        width: 100%;
        padding: 0;
        max-width: none;
    }

    .hamburger {
        display: none;
    }

    .navigation {
        border-top: none;
        display: block;
        width: 84%;
        margin-left: auto;
        margin-right: auto;
        height: auto;
    }

    .navigation.expanded {
        height: auto;
    }

    .navigation li {
        border-bottom: none;
        text-align: center;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .navigation li ul li {
        padding-top: 3px;
        padding-bottom: 3px;
    }

    .navigation li ul li a {
        font-size: 17px;
    }

    .navigation a,
    .navigation .more-label {
        display: block;
        font-size: 21px;
        cursor: pointer;
    }

    .navigation a {
        height: 30px;
        line-height: 30px;
        padding-left: 7px;
        padding-right: 7px;
        text-align: left;
        transition: background-color 0.15s;
        border-radius: 4px;
    }

    .navigation a.active,
    .navigation a:hover {
        background-color: #395a8c;
    }

    .navigation .other-generator {
        padding-top: 0.1em;
        padding-bottom: 0.2em;
    }

    .navigation li.section-top {
    padding-top: 2.5em;
    }

    .navigation .other-generator.section-top {
        padding-top: 2.5em;
    }

    .navigation .other-generator a {
        font-size: 17px;
    }
}

@media screen and (min-width: 1009px) {
    .page-container.private {
        max-width: none;
    }

    .page-container.private .right-area {
        width: 550px;
        margin-left: auto;
        margin-right: auto;
        display: block;
        background-image: none;
    }

    .page-container {
        min-height: 100vh;
        width: 1000px;
        margin-left: auto;
        margin-right: auto;
        background-color: white;
    }
}

@media screen and (min-width: 1152px) {
    .page-container {
        background-image: url(../images/SiteBackgroundLg.png);
        width: 1143px;
        background-position: top left;
    }
}


/* Footer */

.left-area .footer {
    display: none;
}

.footer {
    font-family: Merriweather, serif;
    font-size: 14px;
}

.footer a {
    color: #2f5f8f;
    font-weight: 400;
}

.footer a:link,
.footer a:visited {
}

.footer a:hover,
.footer a:active {
    text-decoration: underline;
}

.footer .copyright {
    margin-bottom: 7px;
    vertical-align: middle;
}

.copyright a {
    display: inline-block;
    vertical-align: middle;
    margin-left: 0.4em;
}

.copyright svg {
    width: 24px;
    margin-top: 4px;
    opacity: 0.8;
    transition: opacity 0.15s;
}

.copyright svg:hover {
    opacity: 1.0;
}

.copyright svg .envelope {
    fill: black;
}

@media screen and (min-width: 850px) {
    .left-area .footer {
        display: block;
        text-align: left;
        margin-top: 40px;
        margin-bottom: 40px;
        margin-left: auto;
        margin-right: auto;
        font-size: 14px;
        color: white;
        width: 79%;
    }

    .footer .copyright {
        margin-bottom: 0px;
    }

    .footer a {
        color: white;
    }

    .footer .other-projects {
    }

    .copyright svg {
    }

    .copyright svg .envelope {
        fill: white;
    }
}



/* Right area / main content */

.right-area {
    padding-left: 3%;
    padding-right: 3%;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
}

.content-area {}

.private .content-area {
}

h2 {
    font-size: 29px;
    text-align: center;
    font-weight: 400;
    line-height: 125%;
    margin-top: 1em;
    margin-bottom: 20px;
    font-family: Oswald, sans-serif;
}

h2.main-title {
    font-size: 30px;
    margin-bottom: 3px;
}

h2.main-title.homepage {
    margin-bottom: 20px;
}

h3 {
    text-align: center;
    font-weight: 400;
    margin-bottom: 23px;
    font-family: Oswald, sans-serif;
    font-size: 18px;
}

.description {
    margin-top: 1em;
    margin-bottom: 1em;
    padding-left: 5%;
    padding-right: 5%;
    font-size: 15px;
    line-height: 150%;
    max-width: 355px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-family: Merriweather, serif;
}

.description p {
    margin-top: 1.2em;
}

.description.more-label {
    margin-top: 2em;
}

.description.homepage {
    margin-top: 2em;
}

@media screen and (min-width: 550px) {
    .description {
        max-width: none;
    }

    .description.more-label {
        text-align: center;
    }
}

@media screen and (min-width: 850px) {
    .right-area {
        display: table-cell;
        max-width: none;
    }

    .content-area {
        padding-top: 40px;
        max-width: 530px;
        margin-left: auto;
        margin-right: auto;
    }

    h2 {
        font-size: 37px;
        margin-top: 20px;
    }

    .description.more-label {
        margin-bottom: 0em;
    }
}

@media screen and (min-width: 1009px) {
    .description {
        font-size: 15px;
        margin-bottom: 32px;
        margin-top: 20px;
    }

    .right-area {
        width: 750px;
        padding-left: 0px;
        padding-right: 0px;
        background-image: linear-gradient(to right, white 530px, transparent 520px), url(../images/BgStripes.png);
    }

    .content-area {
        display: table-cell;
        padding-top: 40px;
        max-width: none;
        width: 530px;
        margin-left: 0px;
        margin-right: 0px;
        box-sizing: border-box;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 1152px) {
    .right-area {
        width: 893px;
    }
}



/* Homepage other panels */

.generator-panels {margin-bottom: 3em;}

.generator-panel {
    background-color: #6d8dae;
    margin-top: 22px;
    margin-bottom: 22px;
    padding: 15px;
    border-radius: 8px;
    width: 76%;
    margin-left: auto;
    margin-right: auto;
    max-width: 250px;
}

.generator-panel-inner {
}

.generator-panel a {
    text-decoration: none;
}

.generator-panel h3 {
    margin-bottom: 10px;
    font-weight: 500;
}

.generator-panel .sample-phrase {
    font-style: italic;
    font-family: Merriweather, serif;
    text-align: center;
    display: block;
    color: #ffffff;
    line-height: 153%;
}

@media screen and (min-width: 600px) {
    .generator-panels {
        overflow: hidden;
    }

    .generator-panel {
        width: 48%;
        float: left;
        box-sizing: border-box;
        max-width: none;
        margin-bottom: 10px;
        margin-top: 10px;
        height: 160px;
        display: table;
    }

    .generator-panel-inner {
        display: table-cell;
        vertical-align: middle;
    }

    .generator-panel:nth-child(2n+1) {
        clear: left;
        margin-right: 4%;
    }
     
    .generator-panel .sample-phrase {
    }
}

@media screen and (min-width: 850px) {
    .generator-panel .sample-phrase {
        font-size: 13px;
        top: 65px;
    }
}


/* Phrase panel */

.phrase-panel {
    background-color: #2f5f8f;
    /* background-color: #0f427c; */
    color: black;
    color: white;
    padding-top: 290px;
    font-family: Castoro, serif;
    font-weight: 400;
    font-size: 20px;
    text-align: center;
    line-height: 130%;
    border-radius: 9px;
    box-shadow: 0 2px 4px 0 rgba(0,0,0,0.10);
    position: relative;
    overflow: hidden;
}

.phrase-outer {
    position: absolute;
    width: 90%;
    left: 5%;
    top: 5%;
    right: 5%;
    bottom: 5%;
    overflow: hidden;
}

.phrase-inner {
    display: table;
    height: 80%;
    width: 100%;
}

.phrase {
    display: table-cell;
    vertical-align: middle;
    padding-bottom: 0.6em;
}

.phrase,
.current-word {
}

.current-word {
    opacity: 0.2;
    position: absolute;
    text-align: left;
    white-space: nowrap;
    vertical-align: baseline;
}

.end-marker {
    display: inline-block;
    opacity: 0.0;
    position: relative;
    left: 0px;
    top: 0px;
    white-space: nowrap;
    vertical-align: baseline;
}

.randomize-outer {
    text-align: center;
}

.randomize-button {
    display: inline-block;
    background-color: #faa61a;
    font-family: Oswald, sans-serif;
    font-weight: 500;
    font-size: 20px;
    color: black;
    padding: 0.3em 0.7em;
    border-radius: 0.3em;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.12), 0 2px 4px 0 rgba(0,0,0,0.08);
    text-decoration: none;
    transition: background-color 0.15s;
}

.randomize-button:hover {
    background-color: #ffb946;
}

.randomize-button:active {
    background-color: #faa61a;
}

@media screen and (min-width: 450px) {
    .phrase-panel {
        font-size: 24px;
    }
}

@media screen and (min-width: 550px) {
    .phrase-panel {
    padding-top: 60%;
    }
}

@media screen and (min-width: 600px) {
    .phrase-panel {
        font-size: 27px;
    }
}

@media screen and (min-width: 1009px) {
    .phrase-panel {
        font-size: 24px;
    }
}


/* Ad area */

.as-area {
    margin-top: 30px;
    padding-left: 5%;
    padding-right: 5%;
}

@media screen and (min-width: 1009px) {
    .as-area {
        padding-top: 60px;
        padding-left: 0;
        padding-right: 0;
        width: 220px;
        display: table-cell;
        vertical-align: top;
        overflow: hidden;
    }
}

@media screen and (min-width: 1152px) {
    .as-area {
        width: 363px;
    }
}

.as-area form {
    display: block;
    text-align: center;
    margin-top: 1em;
    margin-bottom: 2em;
}

.ad-intro,
.wh-intro {
    text-align: center;
    padding-left: 10%;
    padding-right: 10%;
    margin-bottom: 0px;
    display: none;
}

.wh-intro {
    padding-left: 5%;
    padding-right: 5%;
    display: block;
    margin-top: 36px;
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid #aabbcc52;
    padding-top: 20px;
    padding-bottom: 20px;
    max-width: 18em;
}

.ad-content,
.wh-content {
    margin-bottom: 25px;
    text-align: center;
}

.wh-content:after {
    content: ' ';
    display: block;
    border-top: 1px solid #aabbcc52;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
    max-width: 18em;
}

.as-area .footer {
    display: block;
    text-align: center;
    margin-bottom: 35px;
}

.as-area .footer:before {
    content: ' ';
    display: block;
    border-top: 1px solid #e8e8e8;
    width: 66%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.3em;
}

.wh-ad {
    display: block;
}

.wh-ad-desktop {
    display: none;
}

.wh-ad-mobile {
    width: 100%;
    max-width: 500px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (min-width: 850px) {
    .as-area .footer {
        display: none;
    }
}

@media screen and (min-width: 1009px) {
    .ad-intro,
    .wh-intro {
        display: block;
        border-top: none;
        margin-top: 0;
    }

    .wh-ad-mobile {
        display: none;
    }

    .wh-ad-desktop {
        display: block;
        width: 100%;
        max-width: 300px;
    }

    .wh-content:after {
        display: none;
    }

    .ad-content,
    .wh-content {
        padding-left: 15px;
        padding-right: 15px;
        box-sizing: border-box;
    }
}

@media screen and (min-width: 1152px) {
    .ad-content,
    .wh-content {
        padding-left: 30px;
        padding-right: 33px;
    }
}

/*ins.adsbygoogle {
    background-color: pink;
    min-height: 20px;
}*/


/* Twitter link */

.twitter-bot {
    text-align: center;
    font-family: Merriweather, serif;
    font-size: 15px;
    font-weight: 400;
    margin-top: 2.2em;
}

.twitter-bot a {
    color: #1da1f2;
}

.twitter-bot img {
    width: 2.1em;
    display: inline-block;
    vertical-align: middle;
    margin-right: -0.25em;
    margin-top: -0.1em;
}

@media screen and (min-width: 850px) {
    .twitter-bot {
        margin-top: 3em;
    }
}


/* Shameless plug */

.shameless-plug {padding-top: 2.799999999999991em;font-size: 15px;text-align: center;font-family: Merriweather, serif;padding-left: 3%;padding-right: 3%;}

.shameless-plug a {color: #d38605;}