/*
Theme Name: Elvira Strasser
Theme URI: http://www.elvira-strasser.de/
Author: Michael Maier
Author URI: http://www.mphased.de
Description: Elvira Straßer Theme
Version: 1.0.4
License:
License URI:
Text Domain: estrasser
Tags:
*/

/*
 * webfonts
 *
 * This CSS resource incorporates links to font software which is the valuable copyrighted
 * property of Monotype and/or its suppliers. You may not attempt to copy, install,
 * redistribute, convert, modify or reverse engineer this font software. Please contact Monotype
 * with any questions regarding Web Fonts:  http://www.linotype.com
 */
@font-face{
    font-family: "HelveticaNeueW01-45Ligh";
    src: url("fonts/692680/ae1656aa-5f8f-4905-aed0-93e667bd6e4a.eot?#iefix");
    src: url("fonts/692680/ae1656aa-5f8f-4905-aed0-93e667bd6e4a.eot?#iefix") format("eot"),
         url("fonts/692680/5a13f7d1-b615-418e-bc3a-525001b9a671.woff2") format("woff2"),
         url("fonts/692680/530dee22-e3c1-4e9f-bf62-c31d510d9656.woff") format("woff"),
         url("fonts/692680/688ab72b-4deb-4e15-a088-89166978d469.ttf") format("truetype"),
         url("fonts/692680/7816f72f-f47e-4715-8cd7-960e3723846a.svg#7816f72f-f47e-4715-8cd7-960e3723846a") format("svg");
}
@font-face{
    font-family: "HelveticaNeueW01-75Bold";
    src: url("fonts/692716/c07fef9e-a934-42d7-92ad-69205f2b8a00.eot?#iefix");
    src: url("fonts/692716/c07fef9e-a934-42d7-92ad-69205f2b8a00.eot?#iefix") format("eot"),
         url("fonts/692716/3b303641-706e-4221-94c4-4fb491f4f8ef.woff2") format("woff2"),
         url("fonts/692716/14ff6081-326d-4dae-b778-d7afa66166fc.woff") format("woff"),
         url("fonts/692716/8fda1e47-19be-46c7-8d83-8d4fb35572f0.ttf") format("truetype"),
         url("fonts/692716/f751c8ae-1057-46d9-8d74-62592e002568.svg#f751c8ae-1057-46d9-8d74-62592e002568") format("svg");
}

/*
 * basics
 */
body, html {
    height: 100%;
}

body {
    color: #556165;
    font-family: HelveticaNeueW01-45Ligh, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
}

.fullbg {
    width: 100%; /* test 100vw */
    height: 100%; /* test 100vh */
    background-image: url(img/bg/visual_50pc.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: fixed;
    z-index: -1;
}

.container {
    max-width: 960px !important;
}

.header {
    background-color: #fff;
}

.content {
    background: none;
}

.content .container {
    padding-top: 140px;
    padding-bottom: 40px;
}

/*
 * fonts
 */
h1, h2, h3, h4, h5, h6 {
    font-family: HelveticaNeueW01-75Bold, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    line-height: 1.25em;
    font-weight: normal;
}

h1 {
    font-size: 40px;
    margin: 20px 0 20px 0;
}

h2 {
    font-size: 20px;
}

h3 {
    font-size: 16px;
}

h4 {
    font-family: HelveticaNeueW01-45Ligh, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    color: #333;
}

h5 {
    font-family: HelveticaNeueW01-45Ligh, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    color: #333;
}

h6 {
    font-family: HelveticaNeueW01-45Ligh, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-style: italic;
    color: #333;
}

.content h1 {
    color: #556165;
}

.content h2 {
    color: #352c5d;
}

.content h3 {
    color: #c5161c;
}

.content h4, .content h5, .content h6 {
    color: #556165;
}

.content-area .entry-content h2:first-child,
.content-area .entry-content h3:first-child,
.content-area .entry-content h4:first-child,
.content-area .entry-content h5:first-child,
.content-area .entry-content h6:first-child {
    margin-top: 0;
}

.page-title,
.entry-title {
    margin-top: 0;
    color: #c5161c !important;
}

.page-title {
    font-family: HelveticaNeueW01-45Ligh, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-weight: normal;
    margin-bottom: 60px;
    font-size: 50px;
    text-transform: lowercase;
}

.single .eshilft {
    margin-bottom: 40px;
}

.single .page-title,
.entry-title {
    font-family: HelveticaNeueW01-75Bold, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-weight: normal;
}

.single .page-title {
    font-size: 16px;
    margin-bottom: 10px;
    color: #352c5d !important;
}

.eshilft {
    color: #352c5d;
    font-size: 100px;
    line-height: 100px;
    margin: 0;
}

.eshilft span {
    color: #c5161c;
}

ul {
    padding-left: 20px;
}

ol {
    padding-left: 15px;
}

p,
ul,
ol,
table {
    font-size: 16px;
    line-height: 24px;
}

a,
a:hover,
a:focus {
    color: #352c5d;
    text-decoration: none;
}

.content a,
.content a:hover,
.content a:focus {
    color: #352c5d;
}

.content a .fa,
.footer a .fa {
    font-size: 14px;
    padding-right: 3px;
}

.content-area p {
    text-align: justify;
}

.teaser-area p a:hover,
.teaser-area ul a:hover,
.teaser-area ol a:hover,
.content-area p a:hover,
.content-area ul a:hover,
.content-area ol a:hover {
    text-decoration: underline;
}

.teaser-area p a:before {
    font-family: FontAwesome;
    content: "\f054";
    font-size: 14px;
    padding-right: 3px;
    display: inline-block;
    font-style: normal;
    color: #352c5d;
}

/*
 * images
 */
.content-area img {
    display: block;
    margin-bottom: 10px;
    height: auto;
    max-width: 100%;
}

.content-area figure.aligncenter,
.content-area img.aligncenter {
    margin-left: auto;
    margin-right: auto;
}

.content-area figure.alignleft,
.content-area img.alignleft {
    display: block;
    float: left;
    margin-top: 2px;
    margin-right: 10px;
}

.content-area figure.alignright,
.content-area img.alignright {
    display: block;
    float: right;
    margin-top: 2px;
    margin-left: 10px;
}

.content-area figure {
    max-width: 100% !important;
}

figure figcaption {
    font-size: 12px;
    line-height: 16px;
    margin: -5px 0 10px 0;
}

/*
 * gallery
 */
.bs3-gallery-title {
    margin-bottom: 0;
}

.bs3-gallery-item {
    margin: 10px 0;
    outline: none !important;
}

/*
 * modal
 */
.ekko-lightbox .modal-content {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.ekko-lightbox .modal-title {
    color: #352c5d;
}

.ekko-lightbox .modal-body {
    padding: 0;
}

.ekko-lightbox .modal-footer {
    font-size: 12px;
    line-height: 16px;
}

/*
 * buttons
 */
.btn {
    line-height: 20px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    border: none;
}

.btn-default {
    background-color: #352c5d;
    color: #fff;
}

.navigation .menu-toggle {
    color: #352c5d;
    font-size: 14px;
    background: none;
    padding: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.navigation .menu-toggle:hover,
.navigation .menu-toggle:focus {
    background: none !important;
}

.navigation .toggle-btn-wrap .toggle-btn-label {
    padding: 0 3px;
    font-size: 12px;
}

.navigation .toggle-btn-wrap .menu-down {
    color: #fff;
}

.navigation .btn-toolbar {
    margin: 20px 0;
}

/*
 * header & navigation
 */
.navigation {
    background: #fff;
    font-size: 14px;
    line-height: 20px;
}

.navi {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.navi li {
    line-height: 20px;
    float: left;
}

.navi li:last-child {
    margin-right: 0;
}

.navi a {
    color: #352c5d;
    display: block;
    font-size: 13px;
    text-decoration: none;
    text-transform: lowercase;
    padding: 30px 20px;
    font-family: HelveticaNeueW01-75Bold, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-weight: normal;
    background: transparent url('img/nav_line.png') 0 -5px no-repeat;
}

/*.navi li:last-child a {*/
    /*background-image: none;*/
/*}*/

.navi .current-menu-item a,
.navi .current_page_parent a,
.navi .current-post-parent a,
.navi .current-category-ancestor a,
.navi .current-page-ancestor a,
.navi .current-post-ancestor a {
    background: none;
    color: #fff;
    background-color: #352c5d;
}

.navi a:hover {
    background: none;
    color: #fff;
    background-color: #352c5d;
}

.navi .sub-menu {
    display: none;
}

.navi .sub-menu {
    padding-left: 15px;
    list-style-type: disc;
    color: #fff;
}

.navi .sub-menu li {
    border: none !important;
}

.navi .sub-menu a {
    background: none;
    line-height: 16px !important;
}

.navi .current-menu-item .sub-menu a,
.navi .current_page_parent .sub-menu a,
.navi .current-post-parent .sub-menu a,
.navi .current-category-ancestor .sub-menu a,
.navi .current-page-ancestor .sub-menu a,
.navi .current-post-ancestor .sub-menu a {
    font-weight: normal;
}

.sub-menu .current-menu-item a,
.sub-menu .current_page_parent a,
.sub-menu .current-post-parent a,
.sub-menu .current-category-ancestor a,
.sub-menu .current-page-ancestor a,
.sub-menu .current-post-ancestor a {
    font-weight: bold !important;
}

.affix-top {
    position: fixed;
    top: 0;
    z-index: 1001;
    width: 100%;
}

.navi .logo-item,
.mobile-logo {
    font-family: HelveticaNeueW01-75Bold, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-weight: normal;
}

.navi .logo-item a {
    padding-left: 0;
    color: #352c5d;
}

.navi .logo-item a:hover {
    background: transparent url('img/nav_line.png') 100% -5px no-repeat !important;
}

.navi .logo-item span,
.mobile-logo span {
    color: #c5161c;
}

/*
 * side navi
 */
.sidebar-area {
    padding-top: 100px;
}

.side-navi {
    background-color: #fff;
    list-style-type: none;
    padding: 0;
    margin-top: 10px;
    margin-bottom: 30px;
}

.side-navi li {
    border-bottom: 1px solid #efefef;
    padding-left: 10px;
    padding-right: 10px;
}

.side-navi li:last-child {
    border-bottom: none;
}

.side-navi a {
    display: block;
    padding: 10px 0;
}

.side-navi a:hover,
.side-navi a:focus {
    font-weight: bold;
}

.side-navi .current-menu-item a {
    font-weight: bold;
}

.sidebar-title {
    color: #352c5d;
    text-align: center;
}

.sidebar-title a {
    /*padding: 0;*/
    color: #c5161c;
}

.sidebar-title .circle {
    width: 58px;
    height: 58px;
    margin: 0 auto 8px auto;
    display: block;
    border-radius: 29px;
    border: 3px solid #ececec;
}

.sidebar-title .fa {
    color: #ececec;
    display: block;
    text-align: center;
    font-size: 34px !important;
    line-height: 52px;
    padding: 0 !important;
}

.sidebar-title .caption {
    display: block;
    margin-bottom: 0;
}

.back-to-list {}

.back-to-list li {
    border: none;
}

/*
 * entry
 */
.hentry {
    margin-bottom: 20px;
}

.entry-meta {
    color: #666;
    font-size: 12px;
    line-height: 16px;
    text-align: left !important;
}

.single .entry-meta {
    margin-bottom: 10px;
}

/*
 * footer
 */
.footer {
    font-size: 13px;
    background-color: #fff;
    text-transform: lowercase;
}

.footer .container {
    padding-top: 24px;
    padding-bottom: 24px;
}

.footer .menu {
    font-size: 13px;
    list-style-type: none;
    margin: 0 0 8px 0;
    padding: 0;
    text-align: center;
}

.footer .menu li {
    display: inline-block;
    margin: 0 5px 5px 5px;
}

.footer .menu a {
    text-decoration: none;
    color: #352c5d;
}

.footer a:hover,
.footer a:focus {
    color: #c5161c
}

.footer .menu .current-menu-item a {
    color: #c5161c;
}

.foot-area p {
    font-size: 13px;
    margin: 0;
    text-align: center;
    color: #666;
}

/*
 * home template
 */
body.home .fullbg {
    background-image: url(img/bg/visual.jpg);
}

body.home .content {
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%;
}

body.home .message {
    padding-top: 100px;
    padding-left: 160px;
}

body.home .message h1,
body.home .message h2 {
    font-family: HelveticaNeueW01-45Ligh, "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
    font-weight: normal;
    text-transform: lowercase;
}

body.home .message h1 {
    color: #352c5d;
    font-size: 100px;
    line-height: 100px;
    margin: 0 0 5px 0;
}

body.home .message h1 span {
    color: #c5161c;
}

body.home .message h2 {
    color: #c5161c;
    font-size: 50px;
    line-height: 50px;
    margin: 0 0 15px 0;
}

body.home .message p {
    text-transform: lowercase;
    color: #c5161c;
}

body.home .message p span {
    color: #352c5d;
}

/*
 * puste template
 */
.page-template-puste-template .fullbg {
    background-image: url(img/bg/puste.jpg);
}

.page-template-puste-template .navigation {
    border-bottom: 1px solid #eee;
}

.page-template-puste-template .footer {
    background: none;
}

.page-template-puste-template .bubble-area {
    padding-left: 35px;
}

.page-template-puste-template .contact-bubble {
    margin-top: 65px;
}

.page-template-puste-template .bubble-tip {
    height: 60px;
    width: 200px;
    background: transparent url(img/bubble_tip.png) 0 0 no-repeat;
}

.page-template-puste-template .bubble {
    background-color: #352c5d;
    color: #fff;
    padding: 15px 15px 5px 15px;
}

.page-template-puste-template .contact-bubble h1,
.page-template-puste-template .contact-bubble h2,
.page-template-puste-template .contact-bubble h3,
.page-template-puste-template .contact-bubble h4,
.page-template-puste-template .contact-bubble h5,
.page-template-puste-template .contact-bubble h6,
.page-template-puste-template .contact-bubble p,
.page-template-puste-template .contact-bubble ul,
.page-template-puste-template .contact-bubble ol,
.page-template-puste-template .contact-bubble table,
.page-template-puste-template .contact-bubble td,
.page-template-puste-template .contact-bubble th,
.page-template-puste-template .contact-bubble a {
    color: #fff !important;
}


/*
 * archives, category etc.
 */
.more-link {
    margin: 0;
}

.cats {
    list-style-type: none;
}

.cats li {
    border-bottom: 1px solid #efefef;
}

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

.cats a {
    display: block;
    padding: 10px 0;
}

.cats .current-cat a {
    font-weight: bold;
}

/*
 * pagination
 */
.pagination-area {
    margin-top: 20px;
    font-size: 12px;
    line-height: 16px;
}

.pagination-area a:hover {
    text-decoration: underline;
}

.pagination-area a .fa {
    color: #352c5d;
    padding: 0;
}

.pagination-area .nav-previous a span {
    padding: 0 0 0 3px;
}

.pagination-area .nav-next a span {
    padding: 0 3px 0 0;
}

/*
 * legacy IE
 */
html.legacy-ie .btn-toolbar {
    display: none;
}

html.legacy-ie .container {
    width: 960px !important;
}

html.legacy-ie .col-sm-2,
html.legacy-ie .col-md-2 {
    width: 16.66666%;
    float: left;
}

html.legacy-ie .col-sm-3,
html.legacy-ie .col-md-3 {
    width: 25%;
    float: left;
}

html.legacy-ie .col-sm-4,
html.legacy-ie .col-md-4 {
    width: 33.333333%;
    float: left;
}

html.legacy-ie .col-sm-5,
html.legacy-ie .col-md-5 {
    width: 41.666666%;
    float: left;
}

html.legacy-ie .col-sm-6,
html.legacy-ie .col-md-6 {
    width: 50%;
    float: left;
}

html.legacy-ie .col-sm-8,
html.legacy-ie .col-md-8 {
    width: 66.66666%;
    float: left;
}

html.legacy-ie .col-sm-8,
html.legacy-ie .col-md-9 {
    width: 75%;
    float: left;
}

/*
 * responsive: everything above site width
 */
@media only screen and (min-width: 992px) {



}

/*
 * responsive: default, normal site width
 */
@media only screen and (min-width: 768px) and (max-width: 991px) { /* don't set to 992!*/

    /*.content {*/
    /*background-color: yellow;*/
    /*}*/

    /*
     * basics
     */
    .content .container {
        padding-top: 120px;
        padding-bottom: 40px;
    }

    /*
     * fonts
     */
    h1 {
        font-size: 24px;
    }

    /*
     * header & navigation
     */
    .navigation .navi a {
        padding: 26px 14px;
        font-size: 13px;
    }

    /*
     * home template
     */
    body.home .content .container {
        padding-top: 120px;
    }

    body.home .message {
        padding-left: 60px;
    }

}

/*
 * responsive: tablets
 */
@media only screen and (min-width : 481px) and (max-width: 767px) {

    /*.content {*/
    /*background-color: red;*/
    /*}*/

    /*
     * basics
     */
    .content .container {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /*
     * fonts
     */
    h1 {
        font-size: 24px;
    }

    .eshilft {
        font-size: 70px;
        line-height: 70px;
    }

    .page-title {
        font-size: 30px;
        line-height: 30px;
        margin-bottom: 30px;
    }

    .single .eshilft {
        margin-bottom: 30px;
    }

    /*
     * buttons
     */
    .navigation .toggle-btn-wrap {
        text-align: center;
    }

    .navigation .toggle-btn-wrap .menu-down {
        display: inline-block;
    }

    .navigation .menu-toggle {
        display: inline-block;
    }

    /*
     * header & navigation
     */
    .affix-top {
        position: static;
    }

    .navi-area {
        margin-bottom: 0;
    }

    .navigation .navi {
        margin: 10px 0 20px 0;
    }

    .navigation .navi li {
        line-height: 20px;
        float: none;
        padding: 7px 0;
        margin: 0;
    }

    .navigation .navi a {
        background: none;
        display: block;
        padding: 0;
        line-height: 20px;
        font-size: 13px;
        color: #352c5d;
    }

    .navigation .navi a:hover {
        color: #c5161c;
        font-weight: bold;
    }

    .navi .current-menu-item a,
    .navi .current_page_parent a,
    .navi .current-post-parent a,
    .navi .current-category-ancestor a,
    .navi .current-page-ancestor a,
    .navi .current-post-ancestor a {
        font-weight: bold;
        color: #c5161c;
    }

    .navi .sub-menu {
        display: block;
    }

    .navi .logo-item {
        display: none;
    }

    /*
     * side navi
     */
    .sidebar-area {
        padding-top: 10px;
    }

    .sidebar-area .post-img img {
        margin: 0 auto;
    }

    .side-navi,
    .back-to-list {
        margin-top: 0;
    }

    /*
     * images
     */
    .content-area img,
    .content-area figure {
        float: none !important;
        margin: 0 auto 10px auto !important;
    }

    /*
     * gallery
     */
    .bs3-gallery .bs3-gallery-item {
        display: block;
    }

    .bs3-gallery .bs3-gallery-item img {
        margin: 0 auto;
    }

    /*
     * home template
     */
    body.home {
        height: 500px;
        background-attachment: scroll !important;
        background-size: cover !important;
    }

    body.home .message {
        margin-top: 10px;
        padding-left: 80px;
    }

    body.home .message h1 {
        font-size: 70px;
        line-height: 70px;
    }

    body.home .message h2 {
        font-size: 30px;
        line-height: 30px;
    }

    /*
     * puste template
     */
    .page-template-puste-template .bubble-area {
        padding-left: 15px;
    }

    .page-template-puste-template .bubble-tip {
        height: 40px;
    }

    .page-template-puste-template .contact-bubble {
        float: none !important;
        margin-top: 0;
    }

    /*
     * footer
     */
    .footer .container {
        padding-top: 24px;
        padding-bottom: 24px;
    }

    .footer .menu {
        margin-bottom: 8px;
    }

}

/*
 * responsive: phones and below
 */
@media only screen and (min-width : 320px) and (max-width : 480px),
only screen and (max-width : 319px){

    /*.content {*/
    /*background-color: green;*/
    /*}*/

    .content .container {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /*
     * fonts
     */
    .footer .menu {
        margin-bottom: 15px;
    }

    h1 {
        font-size: 20px;
    }

    .eshilft {
        font-size: 40px;
        line-height: 40px;
    }

    .page-title {
        font-size: 20px;
        line-height: 20px;
        margin-bottom: 20px;
    }

    .single .eshilft {
        margin-bottom: 20px;
    }

    .content-area p {
        text-align: left;
    }

    /*
     * buttons
     */
    .navigation .toggle-btn-wrap {
        text-align: center;
    }

    .navigation .toggle-btn-wrap .menu-down {
        display: inline-block;
    }

    .navigation .menu-toggle {
        display: inline-block;
    }

    /*
     * header & navigation
     */
    .affix-top {
        position: static;
    }

    .navi-area {
        margin-bottom: 0;
    }

    .navigation .navi {
        margin: 10px 0 20px 0;
    }

    .navigation .navi li {
        line-height: 20px;
        float: none;
        padding: 7px 0;
        margin: 0;
    }

    .navigation .navi a {
        background: none;
        display: block;
        padding: 0;
        font-size: 13px;
        line-height: 20px;
        color: #352c5d;
    }

    .navigation .navi a:hover {
        color: #c5161c;
        font-weight: bold;
    }

    .navi .current-menu-item a,
    .navi .current_page_parent a,
    .navi .current-post-parent a,
    .navi .current-category-ancestor a,
    .navi .current-page-ancestor a,
    .navi .current-post-ancestor a {
        font-weight: bold;
        color: #c5161c;
    }

    .navi .sub-menu {
        display: block;
    }

    .navi .logo-item {
        display: none;
    }

    /*
     * side navi
     */
    .sidebar-area {
        padding-top: 10px;
    }

    .sidebar-area .post-img img {
        margin: 0 auto;
    }

    .side-navi,
    .back-to-list {
        margin-top: 0;
    }

    /*
     * images
     */
    .content-area img,
    .content-area figure {
        float: none !important;
        margin: 0 auto 10px auto !important;
    }

    /*
     * gallery
     */
    .bs3-gallery .bs3-gallery-item {
        display: block;
    }

    .bs3-gallery .bs3-gallery-item img {
        margin: 0 auto;
    }

    /*
     * home template
     */
    body.home {
        height: 300px;
        background-attachment: scroll !important;
        background-size: cover !important;
    }

    body.home .message {
        padding-top: 30px;
        padding-left: 15px;
    }

    body.home .message h1 {
        font-size: 40px;
        line-height: 40px;
    }

    body.home .message h2 {
        font-size: 20px;
        line-height: 20px;
    }

    /*
     * puste template
     */
    .page-template-puste-template .bubble-area {
        padding-left: 15px;
    }

    .page-template-puste-template .bubble-tip {
        height: 40px;
    }

    .page-template-puste-template .contact-bubble {
        float: none !important;
        margin-top: 0;
    }

    /*
     * footer
     */
    .footer .container {
        padding-top: 24px;
        padding-bottom: 24px;
    }

    .footer .menu {
        margin-bottom: 8px;
    }

}
