/* Admin
/* ------------------------------------------------------------- */

.neumayer-heading-2-rows.is-admin {
    position: relative;
    border: solid 1px #eee;
    padding: 10px;
}

.neumayer-heading-2-rows.is-admin .block-label {
    position: absolute;
    bottom: 100%;
    right: 10px;
    font-family: Lato, Arial, sans-serif;
    background-color: #eee;
    font-weight: 400;
    padding: 3px 7px;
    font-size: 10px;
}

.neumayer-heading-2-rows.is-admin span {
	height: 50px;
}

.neumayer-heading-2-rows.text-align-center.is-admin {
    text-align: center;
}

.neumayer-heading-2-rows.text-align-left.is-admin {
    text-align: left;
}

.neumayer-heading-2-rows.text-align-right.is-admin {
    text-align: right;
}

h1.neumayer-heading-2-rows.is-admin .is-style-heading-size-1 { font-size: 60px; }
h1.neumayer-heading-2-rows.is-admin .is-style-heading-size-2 { font-size: 50px; }
h1.neumayer-heading-2-rows.is-admin .is-style-heading-size-3 { font-size: 40px; }

h2.neumayer-heading-2-rows.is-admin .is-style-heading-size-1 { font-size: 60px; }
h2.neumayer-heading-2-rows.is-admin .is-style-heading-size-2 { font-size: 50px; }
h2.neumayer-heading-2-rows.is-admin .is-style-heading-size-3 { font-size: 40px; }

h3.neumayer-heading-2-rows.is-admin .is-style-heading-size-1 { font-size: 60px; }
h3.neumayer-heading-2-rows.is-admin .is-style-heading-size-2 { font-size: 50px; }
h3.neumayer-heading-2-rows.is-admin .is-style-heading-size-3 { font-size: 40px; }

.neumayer-heading-2-rows.is-admin .is-style-heading-size-1:not(:first-of-type),
.neumayer-heading-2-rows.is-admin .is-style-heading-size-2:not(:first-of-type),
.neumayer-heading-2-rows.is-admin .is-style-heading-size-r:not(:first-of-type) {
    font-size: 40px;
}

/* Frontend
/* ------------------------------------------------------------- */

#neumayer-heading-marker:first-of-type {
    display: flex;
    position: relative;
    background-image: url("./../../assets/images/logo-neumayer-mark-green.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    width: 100px;
    height: 100px;
    left: calc((100%/2) - (100px/2));
    top: 0;
    margin: 20px 0 -10px 0;
}

#neumayer-heading-marker:first-of-type::before {
    content: "";
    position: absolute;
    background-image: url("./../../assets/images/logo-neumayer-border.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    width: 100px;
    height: 100px;
    left: calc((100%/2) - (100px/2));
    top: 0;
    z-index: -1;
    transform: translate(0.5em, -0.75em);
}

h1.neumayer-heading-2-rows:first-of-type {
    margin-top: 0;
}

h1.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 34px; }
h1.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 28px; }
h1.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 26px; }

h2.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 34px; }
h2.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 28px; }
h2.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 26px; }

h3.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 34px; }
h3.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 28px; }
h3.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 26px; }

.neumayer-heading-2-rows {
    line-height: 0;
}

.neumayer-heading-2-rows span {
    position: relative;
    display: block;
    margin: 0;
}

.neumayer-heading-2-rows .is-style-heading-size-1:first-of-type::before,
.neumayer-heading-2-rows .is-style-heading-size-2:first-of-type::before,
.neumayer-heading-2-rows .is-style-heading-size-3:first-of-type::before {
    content: attr(data-title) "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    font-size: inherit;
    color: #FFFFFF;
    text-shadow:  1px  1px 1px #50AF47,
    1px -1px 1px #50AF47,
    -1px  1px 1px #50AF47,
    -1px -1px 1px #50AF47;
    opacity: 0.15;
    z-index: -1;
    transform: translate(0.125em, -0.3em);
}

.neumayer-heading-2-rows .is-style-heading-size-1:not(:first-of-type),
.neumayer-heading-2-rows .is-style-heading-size-2:not(:first-of-type),
.neumayer-heading-2-rows .is-style-heading-size-3:not(:first-of-type) {
    font-size: 28px;
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

    #neumayer-heading-marker:first-of-type::before {
        width: 150px;
        height: 150px;
        left: calc((100%/2) - (150px/2));
    }

    #neumayer-heading-marker:first-of-type {
        width: 150px;
        height: 150px;
        left: calc((100%/2) - (150px/2));
    }

    h1.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 50px; }
    h1.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 36px; }
    h1.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 32px; }

    h2.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 50px; }
    h2.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 36px; }
    h2.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 32px; }

    h3.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 50px; }
    h3.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 36px; }
    h3.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 32px; }

    .neumayer-heading-2-rows .is-style-heading-size-1:not(:first-of-type),
    .neumayer-heading-2-rows .is-style-heading-size-2:not(:first-of-type),
    .neumayer-heading-2-rows .is-style-heading-size-r:not(:first-of-type) {
        font-size: 36px;
    }

}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

    h1.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 80px; }
    h1.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 60px; }
    h1.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 50px; }

    h2.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 80px; }
    h2.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 60px; }
    h2.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 50px; }

    h3.neumayer-heading-2-rows .is-style-heading-size-1 { font-size: 80px; }
    h3.neumayer-heading-2-rows .is-style-heading-size-2 { font-size: 60px; }
    h3.neumayer-heading-2-rows .is-style-heading-size-3 { font-size: 50px; }

    .neumayer-heading-2-rows .is-style-heading-size-1:not(:first-of-type),
    .neumayer-heading-2-rows .is-style-heading-size-2:not(:first-of-type),
    .neumayer-heading-2-rows .is-style-heading-size-3:not(:first-of-type) {
        font-size: 40px;
    }

}