:is(.single-post, .single-mediaroom) {

    .hero {

        position: relative;
        background: var(--background);
        color: var(--wp--preset--color--white);

        &.with-background {
            background-position: center;
            background-size: cover;

            &::after {
                content: "";
                position: absolute;
                inset: 0;
                background-color: rgb(61 82 82 / 90%);
            }

            .hero-content {

                position: relative;
                z-index: 2;

                * {
                    color: var(--wp--preset--color--white);
                }

            }

        }

        nav.breadcrumbs {
            position: absolute;
            top: calc(var(--wp--preset--spacing--80) / 2);
            transform: translateY(-50%);
            z-index: 2;
    
            ul {
                display: flex;
                align-items: center;
                padding: 0;
                margin: 0;
                list-style: none;
                font-weight: 300;
                flex-wrap: wrap;
    
                li {
    
                    font-weight: 400;
                    font-size: calc(var(--wp--preset--font-size--body) - 2px);
    
                    &:not(:last-child)::after {
                        content: ">";
                        margin: 0 var(--wp--preset--spacing--30);
                        font-family: var(--wp--preset--font-family--bnpp-sans-condensed);
                    }
    
                    a {
                        color: var(--wp--preset--color--white);
                        opacity: 0.9;
                        font-weight: 300;
                        text-decoration: none;
    
                        &:hover {
                            text-decoration: underline;
                        }
                    }
    
                }
            }
        }

        .hero-content {
            display: grid;
            grid-template-columns: 60% 1fr;
            gap: var(--wp--preset--spacing--40);

            @media only screen and (max-width: 768px) {
                grid-template-columns: 100%;
            }


            .post-category {
		width: fit-content;
		color: #EDF5F2;
		border-radius: 25px;
		border: 2px solid #EDF5F2;
		background: #12494B;
		font-family: "BNPP Rounded";
		font-size: 16px;
		font-style: normal;
		font-weight: 400;
		padding: 8px 18px 8px;
		margin-bottom: 20px;
            }

            h1 {
                font-weight: 400;
            }
        }

    }

    #main-content {

        .bnpp-container {
            padding: var(--wp--preset--spacing--80) 0;

            @media only screen and (max-width: 768px) {
                padding: var(--wp--preset--spacing--80) 0 var(--wp--preset--spacing--60);
		margin-left:auto!important;
            }

            .content-wrapper {
                display: grid;
                grid-template-columns: 75% 1fr;
                gap: var(--wp--preset--spacing--40);

                @media only screen and (max-width: 768px) {
                    grid-template-columns: 100%;

                    .content-right {
                        order: -1;
                    }
                }

                article {

                    .wp-block-heading {
                        margin: var(--wp--preset--spacing--60) 0 var(--wp--preset--spacing--40);

                        strong {
                            font-weight: 400;
                        }
                    }

                    .wp-block-button__link {
                        --buttonHoverColour: #004E31;
                        background-color: var(--wp--preset--color--bnpp-green);
                        padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--60);
                        color: var(--wp--preset--color--white);
                        font-size: var(--wp--preset--font-size--medium);
                        text-decoration: none;
                        border: none;
                        cursor: pointer;
                        transition: 300ms;
                        display: inline-flex;
                        align-items: center;
                        width: fit-content;
                        gap: var(--wp--preset--spacing--40);
                        position: relative; 
                                          
                        &:hover {
                            background-color: var(--buttonHoverColour);
                        }

                        &.has-blackvp-color {
                            background-color: var(--wp--preset--color--bnpp-black)!important;
                        }
                
                    }

                    a:not(.wp-block-button__link, .bnpp-button) {
                        color: var(--wp--preset--color--bnpp-green);
                        text-decoration: underline;
                        font-weight: 400;
                        text-decoration-color: #008252;
                        &:hover {
                            font-weight: 700;
                        }
                    }

                    blockquote {
                        color: var(--wp--preset--color--bnpp-green);
                        border-left: solid 3px var(--wp--preset--color--bnpp-green);
                        margin: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60);

                        p {
                            color: var(--wp--preset--color--bnpp-green);
                            font-family: var(--wp--preset--font-family--bnpp-sans-condensed)!important;  
                            margin: 0;
                            font-size: var(--wp--preset--font-size--heading-m);
                            padding: var(--wp--preset--spacing--60);
                            font-weight: 400;
                        }

                        &&::before,
                        &&::after {
                            content: none!important;
                        }
                    }

                    p {
                        margin-block-end: 1rem;
                    }

                }
            
                .documents-container {
                    margin-top: var(--wp--preset--spacing--60);
                }

                aside {

                    display: flex;
                    flex-direction: column;
                    gap: var(--wp--preset--spacing--40);
                    height: 100%;

                    &> div {
                        padding-bottom: var(--wp--preset--spacing--40);
                        margin-bottom: var(--wp--preset--spacing--40);
                        border-bottom: solid 1px #3D525226;

                        &:first-child {
                            border-top: solid 1px #3D525226;
                            padding-top: var(--wp--preset--spacing--40);
                        }

                    }

                    .meta-title {
                        display: block;
                        color: var(--wp--preset--color--bnpp-green);
                        font-weight: 400;
                    }

                    .post-meta {
                        display: grid;
                        grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
                        gap: var(--wp--preset--spacing--40);
                    }

                    .share-links {

                        &.active {
                            position: relative;

                            &::after {
                                content: "Copied to clipboard";
                                position: absolute;
                                display: inline-block;
                                bottom: 100%;
                                right: 0;
                                transform: translateX(-20%);
                                font-size: 13px;
                                box-shadow: 0px 0px 10px -4px;
                                border-radius: 5px;
                                padding: 4px 7px 2px;
                                line-height: 1;
                            }
                            
                        }

                        .share-menu {
                            display: inline-block;
                            position: absolute;
                            opacity: 0;
                            transform: scale(0);
                            overflow: hidden;
                            height: 27px;
                            
                            &.visible {

                                position: relative;
                                opacity: 1;
                                transform: scale(1);
                            
                                .track {
                                    transform: translateX(0%);
                                }
                            }

                            .track {
                                transform: translateX(-100%);
                                transition: 1s;

                                ul {
                                    list-style: none;
                                    padding: 0;
                                    margin: 0;
                                    display: flex;
                                    flex-wrap: wrap;
                                    gap: var(--wp--preset--spacing--40);
                                }
                            }

                            
                        }

                        .share-buttons {
                            display: flex;
                            align-items: center;
                            gap: 1rem;

                            .share-button, .bookmark-button {
                                background: none;
                                border: none;
                                padding: 0;
                                cursor: pointer;
                                opacity: 1;
    
                                &.hidden {
                                    opacity: 0;
                                    position: absolute;
                                }
                            }

                            .bookmark-button {

                                &:hover {

                                    path {
                                        fill: var(--wp--preset--color--bnpp-green-tint-30);
                                    }
                                }

                                &:active {

                                    path {
                                        fill: var(--wp--preset--color--bnpp-green-tint-60);
                                    }
                                }

                                &.active {

                                    path {
                                        fill: var(--wp--preset--color--bnpp-green);
                                    }
                                }
                            }

                        }


                    }
                
                    .post-authors {

                        display: flex;
                        flex-direction: column;
                        gap: var(--wp--preset--spacing--40);

                        .author {
                            display: grid;
                            grid-template-columns: 60px 1fr;
                            gap: var(--wp--preset--spacing--40);
                            align-items: center;
                            text-decoration: none;
                            color: var(--wp--preset--color--bnpp-black);

                            &:has(.author-image:empty) {
                                grid-template-columns: 1fr;
                                gap: 0;
                            }

                            &:hover {
                                text-decoration: underline;
                            }

                            img {
                                aspect-ratio: 1 / 1;
                                object-fit: cover;
                                border-radius: 50%;
                            }

                            .author-name {
                                font-size: calc(var(--wp--preset--font-size--body) + 4px);
                                font-weight: 400;
                            }
                            
                            .author-role {
                                font-size: var(--wp--preset--font-size--body);
                                font-weight: 300;
                            }
                        }
                        
                    }

                    .contents {
                        position: sticky;
                        top: calc(var(--headerHeight) + var(--wp--preset--spacing--60));

                        #contents-list {

                            padding: 0;

                            li {

                                list-style: none;
    
                                a {
                                    font-family: var(--wp--preset--font-family--bnpp-sans-condensed);
                                    color: var(--wp--preset--color--bnpp-black);
                                    font-size: calc(var(--wp--preset--font-size--medium) + 4px);
    
                                    &.active {
                                        color: var(--wp--preset--color--bnpp-green);
                                    }
                                }

                            }
                        }
                    }

                }

                .post-tags {

                    margin: 2rem 0;
                    padding: 2rem 0;
                    border-top: solid 1px #D8D8D8;
                    
                    .tag-list {
                        display: flex;
                        flex-wrap: wrap;
                        gap: var(--wp--preset--spacing--40);
                        padding: 0;
                        margin: 0;

                        .tag-item {
                            list-style: none;

                            .tag-link {
                                background-color: var(--wp--preset--color--bnpp-green-tint-30);
                                color: var(--wp--preset--color--bnpp-black);
                                padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--40);
                                border-radius: 50px;
                                text-decoration: none;
                            }
                        }

                    }

                }

                .bnpvp-section.bnpvp-articles-disclaimer {
                    display: flex;
                    gap: 2rem;
                    background-color: var(--wp--preset--color--bnpp-green-tint-10);
                    padding: var(--wp--preset--spacing--70);
                    font-family: var(--wp--preset--font-family--bnpp-sans);

                    @media only screen and (max-width: 768px) {
                        flex-direction: column;
                        gap: 0;
                    }
                }

            }

            /* Old Posts */
            &.entry-content {

                &>p:first-of-type {
                    color: var(--wp--preset--color--bnpp-green);
                    font-size: var(--wp--preset--font-size--medium);
                }
                
                & > p {
                    margin-bottom: var(--wp--preset--spacing--40);
                }
                
                &> .wp-block-image {
                    margin-top: var(--wp--preset--spacing--50);
                }

                &>.wp-block-pullquote {
                    border-left: solid 3px var(--wp--preset--color--bnpp-green);
                    margin: 2rem;
                    padding: 4rem;

                    p {
                        font-family: var(--wp--preset--font-family--bnpp-sans-condensed);
                        color: var(--wp--preset--color--bnpp-green);
                        text-align: left;
                        font-size: var(--wp--preset--font-size--heading-s);
                        font-weight: 400;
                    }
                }


            }

        }
        .columns-block {
            .bnpp-container {
                display: flex;
                padding: 54px 54px 54px 54px;
            }
        }

        @media (max-width: 768px){
            .columns-block {
                .bnpp-container {
                    display: flex;
                    flex-direction: column;
                    padding: 36px 36px 36px 36px;
                    .column-module img {
                        min-width: 0px;
                    }
                }
            }
        }

        :is(.dark, .charcoal, .green) .bnpp-container  {
            padding: var(--wp--preset--spacing--80);

            @media only screen and (max-width: 768px) {
                padding: var(--wp--preset--spacing--60);
            }
        }

        .related-insights-block {
            border-top: solid 2px #D8D8D8;
        }

    }

    /* BNPP Container overide for single posts so new blocks are sized correctly */

    .bnpp-container article [class*="wp-block-bnpp-custom-blocks"] .bnpp-container {
        width: 100% !important;
        max-width: none !important;
    }

}
