:root {
    /* Icon dimensions */
    --h3width: 6rem;
    --h3width: 6rem;
    --h4width: 5.5rem;
    --h4height: 5.5rem;
    --h5width: 4.75rem;
    --h5height: 4.75rem;
    --h6width: 4rem;
    --h6height: 4rem;
}
.wp-block-icon-heading {
    position: relative;
}
.lorem .wp-block-icon-heading h2,
.lorem .wp-block-icon-heading h3,
.lorem .wp-block-icon-heading h4,
.lorem .wp-block-icon-heading h5,
.lorem .wp-block-icon-heading h6 {
    position: relative;
}
.layout-bar .acf-innerblocks-container > .wp-block-icon-heading:first-child > * {
    margin-top: 0;
}
.wp-block-icon-heading .icon:before {
    position: absolute;
    display: block;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wp-block-icon-heading h2 .icon,
.wp-block-icon-heading h3 .icon,
.wp-block-icon-heading h4 .icon {
    width: var(--h4width);
    height: var(--h4height);
}
    .wp-block-icon-heading h2 .icon:before,
    .wp-block-icon-heading h3 .icon:before,
    .wp-block-icon-heading h4 .icon:before {
        width: var(--h4width);
        height: var(--h4height);
        border: solid 3px #00164d;
        background: #00164d;
        font-size: 2rem;
        color: #fff;
    }
.wp-block-icon-heading h5 .icon {
    width: var(--h5width);
    height: var(--h5height);
}
    .wp-block-icon-heading h5 .icon:before {
        width: var(--h5width);
        height: var(--h5height);
        border: solid 3px #0a4a9d;
        background: #0a4a9d;
        font-size: 1.7rem;
        color: #fff;
    }
.wp-block-icon-heading h6 .icon {
    width: var(--h6width);
    height: var(--h6height);
}
    .wp-block-icon-heading h6 .icon:before {
        width: var(--h6width);
        height: var(--h6height);
        border: solid 2px #000;
        background: #000;
        font-size: 1.4rem;
        color: #fff;
    }
/* Make H3 icon bigger on homepage templates */
.page-template-featured-page main.hpbbars .wp-block-icon-heading.lila h3,
.page-template-featured-page main.lp .wp-block-icon-heading.lila h3 {
    min-height: 6rem;
    padding-left: 7.25rem;
}
.page-template-featured-page main.hpbbars .wp-block-icon-heading.tica h3,
.page-template-featured-page main.lp .wp-block-icon-heading.tica h3 {
    padding-top: 7.25rem;
}
.page-template-featured-page main.hpbbars .wp-block-icon-heading h3 .icon,
.page-template-featured-page main.lp .wp-block-icon-heading h3 .icon {
    width: 6rem;
    height: 6rem;
}
.page-template-featured-page main.hpbbars .wp-block-icon-heading h3 .icon:before,
.page-template-featured-page main.lp .wp-block-icon-heading h3 .icon:before {
    width: 6rem;
    height: 6rem;
}

/* Left Icon / Left Align */
.wp-block-icon-heading.lila .icon {
    position: absolute;
    left: 0;
    top: 0;
}
.wp-block-icon-heading.lila h2,
.wp-block-icon-heading.lila h3,
.wp-block-icon-heading.lila h4 {
    padding: 0 0 0 6.75rem;
    margin: 55px 0 25px 0;
    min-height: var(--h4height);
    display: flex;
    align-items: center;
}
.wp-block-icon-heading.lila h5 {
    padding: 0 0 0 5.75rem;
    margin: 50px 0 20px 0;
    min-height: var(--h5height);
    display: flex;
    align-items: center;
    /*color: #0a4a9d;*/
}
.wp-block-icon-heading.lila h6 {
    padding: 0 0 0 5rem;
    margin: 45px 0 15px 0;
    min-height: var(--h6height);
    display: flex;
    align-items: center;
}


/* Center Icon / Center Align */
.wp-block-icon-heading.tica .icon {
    position: absolute;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.wp-block-icon-heading.tica h2,
.wp-block-icon-heading.tica h3,
.wp-block-icon-heading.tica h4,
.wp-block-icon-heading.tica h5,
.wp-block-icon-heading.tica h6 {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wp-block-icon-heading.tica h2,
.wp-block-icon-heading.tica h3,
.wp-block-icon-heading.tica h4 {
    padding: 7rem 0 0 0;
    margin: 55px 0 35px 0;
}
.wp-block-icon-heading.tica h5 {
    padding: 6rem 0 0 0;
    margin: 50px 0 25px 0;
    /*color: #0a4a9d;*/
}
.wp-block-icon-heading.tica h6 {
    padding: 5rem 0 0 0;
    margin: 45px 0 20px 0;
}

.lorem .wp-block-icon-heading.is-style-outline :where(h1,h2,h3,h4,h5,h6) {
    color: #00164d;
}
.lorem .wp-block-icon-heading.is-style-outline-grey :where(h1,h2,h3,h4,h5,h6),
.lorem .wp-block-icon-heading.is-style-grey :where(h1,h2,h3,h4,h5,h6) {
    color: #313435;
}

/* Style Options */
.wp-block-icon-heading.is-style-outline .icon:before {
    background: none;
    color: #00164d;
}
.wp-block-icon-heading.is-style-grey .icon:before {
    background: #313435;
    border-color: #313435;
}
.wp-block-icon-heading.is-style-outline-grey .icon:before {
    background: none;
    border-color: #313435;
    color: #313435;
}

/* -> On solid bars (layout and cover) */
.layout-bar.neg.grey .wp-block-icon-heading.is-style-grey .icon:before {
    background: #202122;
    border-color: #202122;
}
.layout-bar.neg.grey .wp-block-icon-heading.is-style-outline-grey .icon:before {
    border-color: #fff;
    color: #fff;
}
.layout-bar.neg.grey .wp-block-icon-heading.is-style-outline .icon:before {
    border-color: #fff;
    color: #fff;
}
.layout-bar.neg.blue .wp-block-icon-heading.is-style-default .icon:before,
.layout-bar.neg.blue .wp-block-icon-heading:not(.is-style-outline):not(.is-style-grey):not(.is-style-outline-grey) .icon:before,
.cover-bar.neg.b .wp-block-icon-heading.is-style-default .icon:before,
.cover-bar.neg.b .wp-block-icon-heading:not(.is-style-outline):not(.is-style-grey):not(.is-style-outline-grey) .icon:before {
    background: #97dbf8;
    border-color: #97dbf8;
    color: #00164d;
}
.layout-bar.neg.blue .wp-block-icon-heading.is-style-outline .icon:before,
.cover-bar.neg.b .wp-block-icon-heading.is-style-outline .icon:before,
.cover-bar.neg.db .wp-block-icon-heading.is-style-outline .icon:before,
.cover-bar.neg.dg .wp-block-icon-heading.is-style-outline .icon:before,
.cover-bar.neg.blk .wp-block-icon-heading.is-style-outline .icon:before {
    border-color: #97dbf8;
    color: #97dbf8;
}
.neg .wp-block-icon-heading.is-style-grey .icon:before {
    background: #fff;
    border-color: #fff;
    color: #0a4a9d;
}
.cover-bar.neg.dg .wp-block-icon-heading.is-style-grey .icon:before {
    background: #202122;
    border-color: #202122;
}
.layout-bar.neg.blue .wp-block-icon-heading.is-style-outline-grey .icon:before,
.cover-bar.has-bg-img.blk-filter.neg .wp-block-icon-heading.is-style-outline .icon:before,
.cover-bar.neg.b .wp-block-icon-heading.is-style-outline-grey .icon:before,
.cover-bar.neg.db .wp-block-icon-heading.is-style-outline-grey .icon:before,
.cover-bar.neg.dg .wp-block-icon-heading.is-style-outline-grey .icon:before,
.cover-bar.neg.blk .wp-block-icon-heading.is-style-outline-grey .icon:before,
.cover-bar.neg.has-bg-img.blk-filter .wp-block-icon-heading.is-style-outline-grey .icon:before {
    border-color: #fff;
    color: #fff;
}
/* -> Panels */
.layout-bar .panel.is-style-red .wp-block-icon-heading.is-style-default .icon:before {
    background: #9b1208;
    border-color: #9b1208;
}
.layout-bar .panel.is-style-red .wp-block-icon-heading.is-style-outline .icon:before {
    border-color: #9b1208;
    color: #9b1208;
}

/* -> Icon headings on light panels on solid negative layout bars */
.layout-bar.neg .panel:not(.is-style-sb) .wp-block-icon-heading:not(.is-style-outline, .is-style-grey, .is-style-outline-grey) .icon:before {
    background: #0a4a9d !important;
    border-color: #0a4a9d !important;
    color: #fff !important;
}
.layout-bar.neg .panel:not(.is-style-sb) .wp-block-icon-heading:where(.is-style-outline) .icon:before {
    color: #0a4a9d !important;
    border-color: #0a4a9d !important;
}
.layout-bar.neg .panel:not(.is-style-sb) .wp-block-icon-heading:where(.is-style-grey) .icon:before {
    background: #313435 !important;
    border-color: #313435 !important;
     color: #fff !important;
}
.layout-bar.neg .panel:not(.is-style-sb) .wp-block-icon-heading:where(.is-style-outline-grey) .icon:before {
    border-color: #313435 !important;
    color: #313435 !important;
}

.lorem .neg .panel.neg .wp-block-icon-heading h2,
.lorem .neg .panel.neg .wp-block-icon-heading h3,
.lorem .neg .panel.neg .wp-block-icon-heading h4,
.lorem .neg .panel.neg .wp-block-icon-heading h5,
.lorem .neg .panel.neg .wp-block-icon-heading h6,
.editor-styles-wrapper .neg .panel.neg .wp-block-icon-heading h2,
.editor-styles-wrapper .neg .panel.neg .wp-block-icon-heading h3,
.editor-styles-wrapper .neg .panel.neg .wp-block-icon-heading h4,
.editor-styles-wrapper .neg .panel.neg .wp-block-icon-heading h5,
.editor-styles-wrapper .neg .panel.neg .wp-block-icon-heading h6 {
   color: #fff !important;
}
.lorem .acf-innerblocks-container > .wp-block-icon-heading:first-child > *,
.cover-bar .r > .acf-innerblocks-container > .center-block:first-child > .wp-block-icon-heading > *,
.lorem .wp-block-group > .wp-block-icon-heading:first-child > *:is(h1,h2,h3,h4,h5,h6) {
    margin-top: 0 !important;
}
.layout-bar .acf-innerblocks-container > .center-block:first-child .wp-block-icon-heading > * {
    margin-top: 0 !important;
}

@media only screen and (max-width: 650px) {
    
    /* Force break/hyphens */
    .wp-block-icon-heading h2,
    .wp-block-icon-heading h3,
    .wp-block-icon-heading h4,
    .wp-block-icon-heading h5,
    .wp-block-icon-heading h6 {
        overflow-wrap: break-word;
        word-wrap: break-word;
        -ms-word-break: break-all;
        word-break: break-word;
        -ms-hyphens: auto;
        -moz-hyphens: auto;
        -webkit-hyphens: auto;
        hyphens: auto;
    }
    
}
@media only screen and (max-width: 450px) {

    /* Change left align to center on small screens */
    .wp-block-icon-heading.lila h2,
    .wp-block-icon-heading.lila h3,
    .wp-block-icon-heading.lila h4 {
        padding: 6.75rem 0 0 0;
        justify-content: center;
        text-align: center;
    }
    .wp-block-icon-heading.lila h5 {
        padding: 5.75rem 0 0 0;
        justify-content: center;
        text-align: center;
    }
    .wp-block-icon-heading.lila h6 {
        padding: 4.85rem 0 0 0;
        justify-content: center;
        text-align: center;
    }
    .wp-block-icon-heading.lila h2 .icon,
    .wp-block-icon-heading.lila h3 .icon,
    .wp-block-icon-heading.lila h4 .icon,
    .wp-block-icon-heading.lila h5 .icon,
    .wp-block-icon-heading.lila h6 .icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
    .page-template-featured-page main.hpbbars .wp-block-icon-heading.lila h3,
    .page-template-featured-page main.lp .wp-block-icon-heading.lila h3 {
        min-height: unset;
        padding-left: unset;
        padding-top: 7.25rem;
    }
    .page-template-featured-page main.hpbbars .wp-block-icon-heading h3 .icon,
    .page-template-featured-page main.lp .wp-block-icon-heading h3 .icon {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
}

.panel .acf-innerblocks-container > *:first-child > .wp-block-icon-heading > * {
    margin-top: 0 !important;
}