@media only screen and (min-width: 320px) {
    :root{
        --hero-title-font-size: 30px;
    }
    .hero-block, .is-root-container .hero-block{
        position: relative;
        display: flex;
        align-items: center;
    }

    /*Hero with image*/
    .hero-with-img > figure, .is-root-container .hero-with-img > figure{
        position: absolute;
        left:0px;
        right:0px;
        width: 100%;
        height: 100%;
        z-index: 0;
    }
    .hero-with-img > figure img.hero-image, .is-root-container .hero-with-img > figure img.hero-image{
        object-fit: cover;
        height: 100%;
        width:100%;
    }
    .hero-with-img > figure:after, .is-root-container .hero-with-img > figure:after{
        display: block;
        content: '';
        position: absolute;
        width:100%;
        height:100%;
        background:var(--hero-overlay, rgba(0, 0 ,0, 0.25));
        left:0px;
        top:0px;
    }
    /* Content containers sit above the absolute background image */
    .hero-with-img > .gb-container, .is-root-container .hero-with-img > .gb-container{
        position: relative;
        z-index: 1;
    }
    /* Overlay variants: set on the hero container as a global class */
    .hero-overlay-gradient{
        --hero-overlay: linear-gradient(180deg, color-mix(in srgb, var(--on-image-clr) 25%, transparent) 0%, transparent 25%, transparent 50%, var(--overlay-clr) 100%);
    }
    /* Darkens from the left when the hero text sits on the left (service page A, front page "Me autamme sinua" C) */
    .hero-overlay-left{
        --hero-overlay: linear-gradient(90deg, color-mix(in srgb, var(--navy) 82%, transparent) 0%, color-mix(in srgb, var(--navy) 62%, transparent) 45%, color-mix(in srgb, var(--navy) 12%, transparent) 100%);
    }
    /* Promise list on a photo hero: headline with a left check icon in an accent circle */
    .hero-lupaus.gb-headline{
        display: flex;
        align-items: flex-start;
        column-gap: 12px;
        margin: 0;
        line-height: 1.5;
    }
    .hero-lupaus > .gb-icon{
        flex: 0 0 auto;
        width: 28px;
        height: 28px;
        margin-top: 1px;
        border-radius: 50%;
        background-color: var(--accent-clr);
        color: var(--navy);
        display: grid;
        place-items: center;
    }
    .hero-lupaus > .gb-icon svg{
        fill: none; /* GB sets fill: currentColor; the check mark is an open stroke */
        width: 16px;
        height: 16px;
    }
    .hero-overlay-dark{
        --hero-overlay: var(--overlay-clr);
    }


    /*Hero text settings*/
    .hero-txt-container, .is-root-container .hero-txt-container{
        z-index: 2;
        text-align: center;
        padding:100px 0px;
    }

    .hero-label, .is-root-container .hero-label{
        font-size:1.1em;
        margin-bottom:0px;
        z-index: 1;
    }

    .hero-title, .is-root-container .hero-title{
        font-size:var(--hero-title-font-size);
        margin-bottom: 10px;
        z-index: 1;
    }
    .hero-excerpt, .is-root-container .hero-excerpt{
        z-index: 1;
    }
    .hero-button, .is-root-container .hero-button{
        z-index: 1;
    }
}

@media only screen and (min-width: 768px) {
    :root{
        --hero-title-font-size: 40px;
    }
    /*Hero text settings*/
    .hero-txt-container, .is-root-container .hero-txt-container{
        text-align: left;
    }
    
    .hero-txt-container .gb-headline, .is-root-container .hero-txt-container .gb-headline{
        
    }

    .hero-title, .is-root-container .hero-title{
        font-size:var(--hero-title-font-size);
    }
}

@media only screen and (min-width: 1280px) {
    :root{
        --hero-title-font-size: 50px;
        --hero-title-line-height: 1.1em;
    }
   .hero-title, .is-root-container .hero-title{
        font-size:var(--hero-title-font-size);
        line-height:var(--hero-title-line-height);
    }
}
/*Admin styles*/
.editor-styles-wrapper .hero-block{
    position:relative;
}
.editor-styles-wrapper .hero-with-img > figure{
    position:absolute;
    left:0px;
    right:0px;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.editor-styles-wrapper .hero-with-img > figure img.hero-image{
    object-fit: cover;
    height: 100%;
    width:100%;
}
.editor-styles-wrapper .hero-with-img > figure:after{
    display: block;
    content: '';
}