/* ============ ORIGINAL SOURCE: HERO ============ */


/* =========================================================
   RESET
========================================================= */

.gef-blog-hero,
.gef-blog-hero *{
    box-sizing:border-box;
}


/* =========================================================
   HERO SECTION
========================================================= */

.gef-blog-hero{
    position:relative;
    width:100%;
    min-height:400px;
    margin:0;
    overflow:hidden;
    display:flex;
    align-items:center;
    background:#073c77;
    font-family:"Poppins", Arial, sans-serif;
}


/* =========================================================
   IMAGE
========================================================= */

.gef-blog-hero-image{
    position:absolute;
    inset:0;
    z-index:0;
}


.gef-blog-hero-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}


/* =========================================================
   OVERLAY
========================================================= */

.gef-blog-hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(
            90deg,
            rgba(5,53,103,.97) 0%,
            rgba(6,59,114,.94) 34%,
            rgba(7,66,125,.78) 52%,
            rgba(7,66,125,.28) 72%,
            rgba(7,66,125,.12) 100%
        );
}


/* =========================================================
   CONTAINER
========================================================= */

.gef-blog-hero-container{
    position:relative;
    z-index:4;
    width:100%;
    max-width:1380px;
    margin:0 auto;
    padding:32px 48px 30px;
}


.gef-blog-hero-content{
    width:100%;
    max-width:610px;
}


/* =========================================================
   BACK LINK
========================================================= */

.gef-blog-back{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:16px;
    color:#ffffff;
    text-decoration:none;
    font-size:12px;
    font-weight:500;
    line-height:1;
}


.gef-blog-back i{
    font-size:11px;
}


.gef-blog-back:hover{
    color:#ffffff;
    opacity:.85;
}


/* =========================================================
   TAGS
========================================================= */

.gef-blog-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:16px;
}


.gef-blog-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    padding:5px 11px;
    border-radius:30px;
    color:#ffffff;
    font-size:9px;
    font-weight:600;
    line-height:1;
}


.gef-tag-blue{
    background:#13a1f1;
}

.gef-tag-purple{
    background:#7d60e3;
}

.gef-tag-green{
    background:#78b84f;
}


/* =========================================================
   TITLE
========================================================= */

.gef-blog-hero h1{
    margin:0 0 18px;
    color:#ffffff;
    font-size:clamp(30px, 3.2vw, 44px);
    line-height:1.12;
    font-weight:700;
    letter-spacing:-1px;
}


.gef-blog-hero h1 span{
    display:block;
}


/* =========================================================
   META
========================================================= */

.gef-blog-meta{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    color:#ffffff;
}


.gef-blog-meta-item,
.gef-blog-share{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#ffffff;
    text-decoration:none;
    font-size:11px;
    font-weight:400;
    line-height:1;
}


.gef-blog-meta-item i,
.gef-blog-share i{
    font-size:12px;
}


.gef-blog-meta-divider{
    width:1px;
    height:15px;
    background:rgba(255,255,255,.38);
}


.gef-blog-share:hover{
    color:#ffffff;
    opacity:.85;
}


/* =========================================================
   HANDWRITTEN TEXT ON IMAGE
========================================================= */

.gef-blog-hero-note{
    position:absolute;
    top:46px;
    right:70px;
    z-index:5;
    width:170px;
    color:#ffffff;
    font-family:"Caveat", cursive;
    font-size:29px;
    line-height:1.02;
    font-weight:700;
    text-align:center;
    transform:rotate(-6deg);
    text-shadow:0 2px 8px rgba(0,0,0,.18);
}


.gef-blog-hero-note span{
    display:block;
}


.gef-blog-hero-note::before,
.gef-blog-hero-note::after{
    content:"";
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    border-radius:50px;
}


/* GOLD LINE UNDER NOTE */
.gef-blog-hero-note::after{
    width:118px;
    height:4px;
    bottom:-12px;
    background:#ffc61d;
    transform:translateX(-50%) rotate(-5deg);
}


/* SMALL GOLD STROKES */
.gef-blog-hero-note::before{
    width:0;
    height:0;
    box-shadow:
        -82px 4px 0 0 #ffc61d,
        -76px 18px 0 0 #ffc61d,
        -70px 32px 0 0 #ffc61d,
        82px 4px 0 0 #ffc61d,
        76px 18px 0 0 #ffc61d,
        70px 32px 0 0 #ffc61d;
}


/* =========================================================
   <= 1200PX
========================================================= */

@media(max-width:1200px){

    .gef-blog-hero-container{
        padding-left:30px;
        padding-right:30px;
    }

    .gef-blog-hero-note{
        right:35px;
        width:150px;
        font-size:25px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    .gef-blog-hero{
        min-height:370px;
    }

    .gef-blog-hero-container{
        padding:30px 20px;
    }

    .gef-blog-hero-content{
        max-width:520px;
    }

    .gef-blog-hero h1{
        font-size:clamp(28px, 4.6vw, 38px);
        letter-spacing:-.6px;
    }

    .gef-blog-hero-note{
        right:18px;
        top:38px;
        width:130px;
        font-size:22px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:700px){

    .gef-blog-hero{
        min-height:auto;
    }

    .gef-blog-hero-overlay{
        background:
            linear-gradient(
                180deg,
                rgba(6,58,112,.97) 0%,
                rgba(6,58,112,.95) 55%,
                rgba(6,58,112,.72) 74%,
                rgba(6,58,112,.28) 100%
            );
    }

    .gef-blog-hero-container{
        padding:28px 15px 235px;
    }

    .gef-blog-hero-content{
        max-width:100%;
    }

    .gef-blog-back{
        margin-bottom:14px;
        font-size:11px;
    }

    .gef-blog-tags{
        gap:6px;
        margin-bottom:14px;
    }

    .gef-blog-tag{
        min-height:22px;
        padding:4px 9px;
        font-size:8px;
    }

    .gef-blog-hero h1{
        margin-bottom:16px;
        font-size:clamp(27px, 8vw, 35px);
        line-height:1.14;
    }

    .gef-blog-meta{
        gap:8px;
    }

    .gef-blog-meta-item,
    .gef-blog-share{
        font-size:9px;
    }

    .gef-blog-meta-divider{
        height:13px;
    }

    .gef-blog-hero-note{
        top:auto;
        right:18px;
        bottom:24px;
        width:120px;
        font-size:22px;
    }

    .gef-blog-hero-note::after{
        width:86px;
        bottom:-9px;
    }

    .gef-blog-hero-note::before{
        box-shadow:
            -58px 4px 0 0 #ffc61d,
            -53px 15px 0 0 #ffc61d,
            58px 4px 0 0 #ffc61d,
            53px 15px 0 0 #ffc61d;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:480px){

    .gef-blog-hero-container{
        padding-left:14px;
        padding-right:14px;
        padding-bottom:220px;
    }

    .gef-blog-hero-note{
        right:12px;
        width:110px;
        font-size:20px;
    }

}


@media(max-width:380px){

    .gef-blog-hero h1{
        font-size:26px;
    }

    .gef-blog-meta-divider{
        display:none;
    }

    .gef-blog-hero-note{
        width:100px;
        font-size:18px;
    }

}


/* ============ ORIGINAL SOURCE: CONTENT ============ */


/* =========================================================
   RESET
========================================================= */

.gef-detail-content-section,
.gef-detail-content-section *{
    box-sizing:border-box;
}


/* =========================================================
   SECTION
========================================================= */

.gef-detail-content-section{
    width:100%;
    margin:0;

    padding:
        42px 0
        58px;

    background:#ffffff;

    font-family:
        "Poppins",
        Arial,
        sans-serif;
}


/* =========================================================
   CONTAINER
========================================================= */

.gef-detail-content-container{
    width:100%;
    max-width:1450px;

    margin:0 auto;

    padding-left:40px;
    padding-right:40px;
}


/* =========================================================
   MAIN GRID
========================================================= */

.gef-detail-content-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        minmax(0,1.75fr)
        minmax(360px,.85fr);

    align-items:start;

    gap:52px;
}


/* =========================================================
   LEFT ARTICLE
========================================================= */

.gef-detail-article{
    min-width:0;
}


.gef-detail-article > p,
.gef-detail-block > p{
    margin:
        0 0
        17px;

    color:#416b9f;

    font-size:17px;

    line-height:1.72;

    font-weight:400;
}


.gef-detail-intro{
    margin-bottom:27px !important;
}


/* =========================================================
   ARTICLE HEADINGS
========================================================= */

.gef-detail-block{
    scroll-margin-top:110px;
}


.gef-detail-block h2{
    margin:
        0 0
        10px;

    padding:0;

    color:#06438f;

    font-size:28px;

    line-height:1.25;

    font-weight:700;

    letter-spacing:-.5px;
}


.gef-detail-block + .gef-detail-block{
    margin-top:28px;
}


/* =========================================================
   STRATEGIES
========================================================= */

.gef-strategy-list{
    width:100%;

    margin-top:21px;

    display:flex;

    flex-direction:column;

    gap:23px;
}


.gef-strategy-item{
    display:grid;

    grid-template-columns:
        52px
        minmax(0,1fr);

    align-items:start;

    gap:18px;
}


.gef-strategy-number{
    width:48px;
    height:48px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    color:#ffffff;

    font-size:14px;

    line-height:1;

    font-weight:700;

    box-shadow:
        0 6px 14px
        rgba(10,90,160,.10);
}


.gef-blue{
    background:linear-gradient(135deg,#08a8f3,#087fd7);
}


.gef-green{
    background:linear-gradient(135deg,#82d83a,#48bc22);
}


.gef-purple{
    background:linear-gradient(135deg,#a540ed,#7425d8);
}


.gef-orange{
    background:linear-gradient(135deg,#ffbd13,#ff9400);
}


.gef-teal{
    background:linear-gradient(135deg,#22cbca,#0aa8ad);
}


.gef-strategy-info{
    padding-top:1px;
}


.gef-strategy-info h3{
    margin:
        0 0
        4px;

    color:#074591;

    font-size:16px;

    line-height:1.4;

    font-weight:600;
}


.gef-strategy-info p{
    margin:0;

    color:#4972a3;

    font-size:15px;

    line-height:1.65;

    font-weight:400;
}


/* =========================================================
   QUOTE
========================================================= */

.gef-detail-quote{
    width:100%;

    margin-top:30px;

    padding:
        24px 28px;

    display:grid;

    grid-template-columns:
        55px
        minmax(0,1fr);

    gap:16px;

    align-items:center;

    background:
        linear-gradient(
            90deg,
            #edf8ff,
            #f6fbff
        );

    border-radius:8px;
}


.gef-detail-quote-icon{
    color:#078ee3;

    font-family:Georgia,"Times New Roman",serif;

    font-size:64px;

    line-height:.7;

    font-weight:700;
}


.gef-detail-quote p{
    margin:0;

    color:#0870bc;

    font-size:15px;

    line-height:1.65;

    font-weight:600;

    font-style:italic;
}


/* =========================================================
   RIGHT SIDEBAR
========================================================= */

.gef-detail-sidebar{
    width:100%;

    min-width:0;

    display:flex;

    flex-direction:column;

    gap:18px;
}


/* =========================================================
   GENERIC SIDEBAR CARD
========================================================= */

.gef-side-card{
    width:100%;

    padding:22px;

    background:#ffffff;

    border:
        1px solid
        #d7e8f7;

    border-radius:9px;

    box-shadow:
        0 7px 22px
        rgba(26,82,139,.05);
}


/* =========================================================
   AUTHOR CARD — BIGGER READABLE TEXT
========================================================= */

.gef-author-main{
    display:grid;

    grid-template-columns:
        80px
        minmax(0,1fr);

    align-items:start;

    gap:16px;
}


.gef-author-photo{
    width:80px;
    height:80px;

    overflow:hidden;

    border-radius:50%;

    border:
        4px solid
        #eef6fc;

    background:#eef4f8;
}


.gef-author-photo img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:center;
}


.gef-author-text h3{
    margin:
        0 0
        4px;

    color:#07458f;

    font-size:16px;

    line-height:1.4;

    font-weight:600;
}


.gef-author-text > span{
    display:block;

    margin-bottom:8px;

    color:#47709f;

    font-size:13.5px;

    line-height:1.5;

    font-weight:500;
}


.gef-author-text p{
    margin:0;

    color:#5077a5;

    font-size:13.5px;

    line-height:1.65;

    font-weight:400;
}


/* =========================================================
   AUTHOR META
========================================================= */

.gef-author-meta{
    width:100%;

    margin-top:18px;

    padding-top:15px;

    display:flex;

    align-items:center;

    gap:14px;

    border-top:
        1px solid
        #e4eef7;
}


.gef-author-meta > div{
    display:flex;

    align-items:center;

    gap:7px;

    color:#3e6ea3;

    font-size:12.5px;

    line-height:1.4;
}


.gef-author-meta i{
    color:#0785d5;

    font-size:14px;
}


.gef-author-separator{
    width:1px;
    height:18px;

    background:#dbe7f2;
}


/* =========================================================
   TABLE OF CONTENTS — BIGGER
========================================================= */

.gef-toc-card h3,
.gef-related-heading h3{
    margin:
        0 0
        16px;

    color:#06438f;

    font-size:21px;

    line-height:1.25;

    font-weight:700;
}


.gef-toc-list{
    display:flex;

    flex-direction:column;

    gap:12px;
}


.gef-toc-list a{
    display:grid;

    grid-template-columns:
        30px
        minmax(0,1fr);

    gap:10px;

    align-items:center;

    color:#4674a9;

    font-size:13.5px;

    line-height:1.5;

    font-weight:400;

    text-decoration:none;

    transition:
        color .2s ease;
}


.gef-toc-list a:hover{
    color:#0784d4;
}


.gef-toc-number{
    width:29px;
    height:29px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#e4f4ff;

    color:#087fd1;

    font-size:12px;

    line-height:1;

    font-weight:600;
}


/* =========================================================
   RELATED ARTICLES
========================================================= */

.gef-related-heading{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:12px;

    margin-bottom:3px;
}


.gef-related-heading h3{
    margin-bottom:0;
}


.gef-related-heading > a{
    display:flex;

    align-items:center;

    gap:6px;

    color:#0788dc;

    font-size:12px;

    line-height:1.4;

    font-weight:600;

    text-decoration:none;
}


/* RELATED ITEM */

.gef-related-item{
    width:100%;

    display:grid;

    grid-template-columns:
        120px
        minmax(0,1fr);

    align-items:center;

    gap:13px;

    padding:
        14px 0;

    border-bottom:
        1px solid
        #e4edf6;

    text-decoration:none;
}


.gef-related-item:last-child{
    padding-bottom:0;

    border-bottom:none;
}


.gef-related-image{
    width:120px;
    height:84px;

    overflow:hidden;

    border-radius:6px;

    background:#edf4f8;
}


.gef-related-image img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:
        transform .3s ease;
}


.gef-related-item:hover
.gef-related-image img{
    transform:
        scale(1.05);
}


/* CATEGORY */

.gef-related-category{
    display:inline-flex;

    margin-bottom:6px;

    padding:
        4px 8px;

    border-radius:30px;

    font-size:10.5px;

    line-height:1;

    font-weight:600;
}


.gef-cat-blue{
    color:#4067cd;
    background:#e5eaff;
}


.gef-cat-purple{
    color:#7a48ce;
    background:#f0e4ff;
}


.gef-cat-cyan{
    color:#1681bd;
    background:#def4ff;
}


.gef-cat-green{
    color:#31954a;
    background:#e3f8e7;
}


/* RELATED TITLE */

.gef-related-content h4{
    margin:
        0 0
        7px;

    color:#07509b;

    font-size:14px;

    line-height:1.4;

    font-weight:500;
}


/* RELATED META */

.gef-related-meta{
    display:flex;

    flex-wrap:wrap;

    align-items:center;

    gap:9px;

    color:#6787aa;

    font-size:10.5px;

    line-height:1.45;
}


.gef-related-meta span{
    display:flex;

    align-items:center;

    gap:4px;
}


.gef-related-meta i{
    font-size:10px;
}


/* =========================================================
   NEWSLETTER — BIGGER READABLE TEXT
========================================================= */

.gef-newsletter-card{
    width:100%;

    padding:
        23px;

    border-radius:9px;

    background:
        linear-gradient(
            135deg,
            #075499,
            #053875
        );

    color:#ffffff;
}


.gef-newsletter-heading{
    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:9px;
}


.gef-newsletter-heading i{
    font-size:19px;
}


.gef-newsletter-heading h3{
    margin:0;

    color:#ffffff;

    font-size:20px;

    line-height:1.3;

    font-weight:600;
}


.gef-newsletter-card > p{
    margin:
        0 0
        15px;

    color:
        rgba(255,255,255,.94);

    font-size:13.5px;

    line-height:1.6;

    font-weight:400;
}


/* FORM */

.gef-newsletter-form{
    display:flex;

    flex-direction:column;

    gap:11px;
}


.gef-newsletter-input{
    width:100%;
    height:43px;

    padding:
        0 13px;

    display:flex;

    align-items:center;

    gap:9px;

    background:#ffffff;

    border-radius:6px;
}


.gef-newsletter-input i{
    color:#6483a5;

    font-size:13px;
}


.gef-newsletter-input input{
    width:100%;
    height:100%;

    margin:0;
    padding:0;

    border:none;
    outline:none;

    background:transparent;

    color:#3a5f84;

    font-family:"Poppins",sans-serif;

    font-size:12.5px;
}


.gef-newsletter-form button{
    width:max-content;

    min-width:140px;
    min-height:41px;

    padding:
        0 20px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    gap:8px;

    border:none;

    border-radius:50px;

    background:#ffc000;

    color:#073a70;

    font-family:"Poppins",sans-serif;

    font-size:12.5px;

    line-height:1;

    font-weight:600;

    cursor:pointer;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.gef-newsletter-form button:hover{
    transform:
        translateY(-2px);

    box-shadow:
        0 8px 18px
        rgba(0,0,0,.15);
}


/* =========================================================
   <= 1350PX
========================================================= */

@media(max-width:1350px){

    .gef-detail-content-container{
        padding-left:28px;
        padding-right:28px;
    }


    .gef-detail-content-grid{
        grid-template-columns:
            minmax(0,1.65fr)
            minmax(350px,.9fr);

        gap:42px;
    }


    .gef-detail-article > p,
    .gef-detail-block > p{
        font-size:16px;
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media(max-width:1180px){

    .gef-detail-content-section{
        padding:
            38px 0
            52px;
    }


    .gef-detail-content-grid{
        grid-template-columns:
            minmax(0,1.55fr)
            minmax(340px,.9fr);

        gap:32px;
    }


    .gef-detail-block h2{
        font-size:25px;
    }


    .gef-detail-article > p,
    .gef-detail-block > p{
        font-size:15.5px;
    }


    .gef-strategy-info h3{
        font-size:15px;
    }


    .gef-strategy-info p{
        font-size:14px;
    }


    .gef-author-text h3{
        font-size:15px;
    }


    .gef-author-text > span,
    .gef-author-text p{
        font-size:13px;
    }


    .gef-toc-list a{
        font-size:13px;
    }


    .gef-related-content h4{
        font-size:13px;
    }


    .gef-related-meta{
        font-size:10px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    .gef-detail-content-section{
        padding:
            34px 0
            48px;
    }


    .gef-detail-content-container{
        padding-left:20px;
        padding-right:20px;
    }


    .gef-detail-content-grid{
        grid-template-columns:1fr;

        gap:38px;
    }


    .gef-detail-sidebar{
        display:grid;

        grid-template-columns:
            repeat(2,minmax(0,1fr));

        align-items:start;

        gap:18px;
    }


    .gef-related-card,
    .gef-newsletter-card{
        height:100%;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .gef-detail-content-section{
        padding:
            28px 0
            42px;
    }


    .gef-detail-content-container{
        padding-left:15px;
        padding-right:15px;
    }


    .gef-detail-content-grid{
        gap:30px;
    }


    /* LEFT */

    .gef-detail-article > p,
    .gef-detail-block > p{
        font-size:14.5px;

        line-height:1.75;
    }


    .gef-detail-block h2{
        margin-bottom:9px;

        font-size:22px;

        line-height:1.28;
    }


    .gef-detail-block + .gef-detail-block{
        margin-top:24px;
    }


    .gef-strategy-list{
        gap:19px;

        margin-top:18px;
    }


    .gef-strategy-item{
        grid-template-columns:
            43px
            minmax(0,1fr);

        gap:12px;
    }


    .gef-strategy-number{
        width:41px;
        height:41px;

        font-size:11px;
    }


    .gef-strategy-info h3{
        font-size:14px;
    }


    .gef-strategy-info p{
        font-size:13px;
    }


    .gef-detail-quote{
        grid-template-columns:
            40px
            minmax(0,1fr);

        gap:10px;

        padding:
            19px 17px;
    }


    .gef-detail-quote-icon{
        font-size:50px;
    }


    .gef-detail-quote p{
        font-size:12.5px;
    }


    /* RIGHT SIDEBAR */

    .gef-detail-sidebar{
        display:flex;

        flex-direction:column;

        gap:16px;
    }


    .gef-side-card,
    .gef-newsletter-card{
        padding:18px;
    }


    /* AUTHOR */

    .gef-author-main{
        grid-template-columns:
            70px
            minmax(0,1fr);

        gap:13px;
    }


    .gef-author-photo{
        width:70px;
        height:70px;
    }


    .gef-author-text h3{
        font-size:15px;
    }


    .gef-author-text > span{
        font-size:12.5px;
    }


    .gef-author-text p{
        font-size:12.5px;
    }


    .gef-author-meta > div{
        font-size:11.5px;
    }


    /* TOC */

    .gef-toc-card h3,
    .gef-related-heading h3{
        font-size:19px;
    }


    .gef-toc-list a{
        font-size:13px;
    }


    .gef-toc-number{
        width:28px;
        height:28px;

        font-size:11px;
    }


    /* RELATED */

    .gef-related-heading > a{
        font-size:11px;
    }


    .gef-related-item{
        grid-template-columns:
            112px
            minmax(0,1fr);

        gap:12px;
    }


    .gef-related-image{
        width:112px;
        height:80px;
    }


    .gef-related-category{
        font-size:9.5px;
    }


    .gef-related-content h4{
        font-size:13px;
    }


    .gef-related-meta{
        font-size:9.5px;
    }


    /* NEWSLETTER */

    .gef-newsletter-heading h3{
        font-size:19px;
    }


    .gef-newsletter-card > p{
        font-size:13px;
    }


    .gef-newsletter-input input{
        font-size:12px;
    }


    .gef-newsletter-form button{
        font-size:12px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:380px){

    .gef-detail-content-container{
        padding-left:14px;
        padding-right:14px;
    }


    .gef-detail-block h2{
        font-size:21px;
    }


    .gef-detail-article > p,
    .gef-detail-block > p{
        font-size:14px;
    }


    .gef-related-item{
        grid-template-columns:
            100px
            minmax(0,1fr);
    }


    .gef-related-image{
        width:100px;
        height:74px;
    }


    .gef-related-content h4{
        font-size:12.5px;
    }

}


/* ============ ORIGINAL SOURCE: NAV ============ */


/* =========================================================
   RESET
========================================================= */

.gef-blog-navigation-section,
.gef-blog-navigation-section *{
    box-sizing:border-box;
}


/* =========================================================
   SECTION
========================================================= */

.gef-blog-navigation-section{
    width:100%;

    margin:0;

    padding:
        20px 0
        34px;

    background:#ffffff;

    font-family:
        "Poppins",
        Arial,
        sans-serif;
}


/* =========================================================
   CONTAINER
========================================================= */

.gef-blog-navigation-container{
    width:100%;

    max-width:1450px;

    margin:0 auto;

    padding-left:40px;
    padding-right:40px;
}


/* =========================================================
   MAIN BOX
========================================================= */

.gef-blog-navigation-box{
    width:100%;

    padding:
        20px 22px;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        1px
        minmax(0,1fr);

    align-items:center;

    gap:24px;

    background:#ffffff;

    border:
        1px solid
        #d7e8f7;

    border-radius:10px;

    box-shadow:
        0 7px 22px
        rgba(29,85,140,.05);
}


/* =========================================================
   NAV CARD
========================================================= */

.gef-blog-nav-card{
    min-width:0;

    display:flex;

    align-items:center;

    gap:16px;

    color:inherit;

    text-decoration:none;
}


/* NEXT ALIGNMENT */

.gef-blog-nav-next{
    justify-content:flex-end;
}


/* =========================================================
   ARROW
========================================================= */

.gef-blog-nav-arrow{
    flex:0 0 auto;

    width:36px;
    height:36px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#eef8ff;

    color:#0783d3;

    font-size:14px;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}


.gef-blog-nav-card:hover
.gef-blog-nav-arrow{
    background:#0783d3;

    color:#ffffff;
}


.gef-blog-nav-prev:hover
.gef-blog-nav-arrow{
    transform:
        translateX(-3px);
}


.gef-blog-nav-next:hover
.gef-blog-nav-arrow{
    transform:
        translateX(3px);
}


/* =========================================================
   IMAGE
========================================================= */

.gef-blog-nav-image{
    flex:0 0 120px;

    width:120px;
    height:84px;

    overflow:hidden;

    border-radius:7px;

    background:#eef4f8;
}


.gef-blog-nav-image img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:center;

    transition:
        transform .35s ease;
}


.gef-blog-nav-card:hover
.gef-blog-nav-image img{
    transform:
        scale(1.06);
}


/* =========================================================
   CONTENT
========================================================= */

.gef-blog-nav-content{
    min-width:0;
}


/* LABEL */

.gef-blog-nav-label{
    display:block;

    margin-bottom:5px;

    color:#0787db;

    font-size:12px;

    line-height:1.3;

    font-weight:600;
}


/* TITLE */

.gef-blog-nav-content h3{
    margin:
        0 0
        8px;

    color:#074991;

    font-size:15px;

    line-height:1.45;

    font-weight:600;

    transition:
        color .2s ease;
}


.gef-blog-nav-card:hover
.gef-blog-nav-content h3{
    color:#0783d3;
}


/* =========================================================
   META
========================================================= */

.gef-blog-nav-meta{
    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:13px;

    color:#6585a8;

    font-size:11.5px;

    line-height:1.4;
}


.gef-blog-nav-meta span{
    display:flex;

    align-items:center;

    gap:5px;
}


.gef-blog-nav-meta i{
    color:#0785d5;

    font-size:11px;
}


/* =========================================================
   DIVIDER
========================================================= */

.gef-blog-nav-divider{
    width:1px;

    height:78px;

    background:#dce8f3;
}


/* =========================================================
   <= 1350PX
========================================================= */

@media(max-width:1350px){

    .gef-blog-navigation-container{
        padding-left:28px;
        padding-right:28px;
    }


    .gef-blog-navigation-box{
        gap:20px;
    }


    .gef-blog-nav-image{
        flex-basis:110px;

        width:110px;
        height:80px;
    }


    .gef-blog-nav-content h3{
        font-size:14.5px;
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media(max-width:1180px){

    .gef-blog-navigation-section{
        padding-bottom:30px;
    }


    .gef-blog-navigation-box{
        padding:
            18px;

        gap:18px;
    }


    .gef-blog-nav-card{
        gap:12px;
    }


    .gef-blog-nav-image{
        flex-basis:100px;

        width:100px;
        height:74px;
    }


    .gef-blog-nav-content h3{
        font-size:13.5px;
    }


    .gef-blog-nav-meta{
        font-size:10.5px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    .gef-blog-navigation-container{
        padding-left:20px;
        padding-right:20px;
    }


    .gef-blog-navigation-box{
        grid-template-columns:1fr;

        gap:17px;
    }


    .gef-blog-nav-divider{
        width:100%;

        height:1px;
    }


    .gef-blog-nav-next{
        justify-content:flex-start;
    }


    .gef-blog-nav-next
    .gef-blog-nav-content{
        order:2;
    }


    .gef-blog-nav-next
    .gef-blog-nav-image{
        order:1;
    }


    .gef-blog-nav-next
    .gef-blog-nav-arrow{
        order:3;

        margin-left:auto;
    }


    .gef-blog-nav-image{
        flex-basis:120px;

        width:120px;
        height:82px;
    }


    .gef-blog-nav-content h3{
        font-size:15px;
    }


    .gef-blog-nav-meta{
        font-size:11px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .gef-blog-navigation-section{
        padding:
            15px 0
            26px;
    }


    .gef-blog-navigation-container{
        padding-left:15px;
        padding-right:15px;
    }


    .gef-blog-navigation-box{
        padding:
            15px;

        gap:15px;
    }


    .gef-blog-nav-card{
        gap:11px;
    }


    .gef-blog-nav-arrow{
        width:32px;
        height:32px;

        font-size:12px;
    }


    .gef-blog-nav-image{
        flex-basis:95px;

        width:95px;
        height:70px;
    }


    .gef-blog-nav-label{
        margin-bottom:3px;

        font-size:11px;
    }


    .gef-blog-nav-content h3{
        margin-bottom:6px;

        font-size:13px;

        line-height:1.4;
    }


    .gef-blog-nav-meta{
        gap:8px;

        font-size:9.5px;
    }


    .gef-blog-nav-meta i{
        font-size:9px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:420px){

    .gef-blog-navigation-container{
        padding-left:14px;
        padding-right:14px;
    }


    .gef-blog-nav-card{
        display:grid;

        grid-template-columns:
            32px
            82px
            minmax(0,1fr);
    }


    .gef-blog-nav-image{
        width:82px;
        height:66px;

        flex-basis:auto;
    }


    .gef-blog-nav-next
    .gef-blog-nav-image{
        order:1;
    }


    .gef-blog-nav-next
    .gef-blog-nav-content{
        order:2;
    }


    .gef-blog-nav-next
    .gef-blog-nav-arrow{
        order:3;

        margin-left:0;
    }


    .gef-blog-nav-content h3{
        font-size:12px;
    }


    .gef-blog-nav-meta{
        font-size:9px;
    }

}


/* ============ ORIGINAL SOURCE: RELATED ============ */


/* =========================================================
   RESET
========================================================= */

.gef-related-blogs-section,
.gef-related-blogs-section *{
    box-sizing:border-box;
}


/* =========================================================
   SECTION
========================================================= */

.gef-related-blogs-section{
    width:100%;

    margin:0;

    padding:
        50px 0
        65px;

    background:#f7fbff;

    font-family:
        "Poppins",
        Arial,
        sans-serif;
}


/* =========================================================
   CONTAINER
========================================================= */

.gef-related-blogs-container{
    width:100%;

    max-width:1450px;

    margin:0 auto;

    padding-left:40px;
    padding-right:40px;
}


/* =========================================================
   HEADING
========================================================= */

.gef-related-blogs-heading{
    width:100%;

    margin-bottom:25px;

    display:flex;

    align-items:flex-end;
    justify-content:space-between;

    gap:20px;
}


/* LABEL */

.gef-related-blogs-label{
    display:block;

    margin-bottom:6px;

    color:#0b8ad6;

    font-size:12px;

    line-height:1;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;
}


/* TITLE */

.gef-related-blogs-heading h2{
    margin:0;

    color:#06438f;

    font-size:32px;

    line-height:1.2;

    font-weight:700;

    letter-spacing:-.5px;
}


/* VIEW ALL */

.gef-related-blogs-view{
    min-height:42px;

    padding:
        0 18px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    gap:9px;

    border:
        1px solid
        #1389cf;

    border-radius:50px;

    color:#087bc4;

    background:#ffffff;

    font-size:13px;

    line-height:1;

    font-weight:600;

    text-decoration:none;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}


.gef-related-blogs-view:hover{
    background:#087fc9;

    color:#ffffff;

    transform:
        translateY(-2px);
}


/* =========================================================
   GRID
========================================================= */

.gef-related-blogs-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:22px;
}


/* =========================================================
   CARD
========================================================= */

.gef-blog-card{
    width:100%;

    overflow:hidden;

    display:flex;

    flex-direction:column;

    background:#ffffff;

    border:
        1px solid
        #dbe9f5;

    border-radius:10px;

    box-shadow:
        0 7px 22px
        rgba(25,79,132,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.gef-blog-card:hover{
    transform:
        translateY(-6px);

    box-shadow:
        0 14px 30px
        rgba(25,79,132,.12);
}


/* =========================================================
   IMAGE
========================================================= */

.gef-blog-card-image{
    position:relative;

    display:block;

    width:100%;
    height:190px;

    overflow:hidden;

    background:#edf4f8;
}


.gef-blog-card-image img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:center;

    transition:
        transform .45s ease;
}


.gef-blog-card:hover
.gef-blog-card-image img{
    transform:
        scale(1.06);
}


/* =========================================================
   CATEGORY
========================================================= */

.gef-blog-card-category{
    position:absolute;

    left:14px;
    bottom:14px;

    min-height:26px;

    padding:
        5px 11px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    border-radius:30px;

    font-size:10px;

    line-height:1;

    font-weight:600;

    box-shadow:
        0 4px 12px
        rgba(0,0,0,.08);
}


.gef-blog-category-purple{
    background:#e8e5ff;
    color:#6557d2;
}


.gef-blog-category-violet{
    background:#f0e5ff;
    color:#864bd1;
}


.gef-blog-category-blue{
    background:#ddf3ff;
    color:#137daf;
}


.gef-blog-category-green{
    background:#e4f8e7;
    color:#348f49;
}


/* =========================================================
   CARD BODY
========================================================= */

.gef-blog-card-body{
    flex:1;

    padding:
        18px 18px
        20px;

    display:flex;

    flex-direction:column;
}


/* =========================================================
   META
========================================================= */

.gef-blog-card-meta{
    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:12px;

    margin-bottom:10px;

    color:#6b88a8;

    font-size:11px;

    line-height:1.4;
}


.gef-blog-card-meta span{
    display:flex;

    align-items:center;

    gap:5px;
}


.gef-blog-card-meta i{
    color:#0b87d3;

    font-size:11px;
}


/* =========================================================
   CARD TITLE
========================================================= */

.gef-blog-card-body h3{
    margin:
        0 0
        10px;

    padding:0;

    font-size:17px;

    line-height:1.42;

    font-weight:600;
}


.gef-blog-card-body h3 a{
    color:#07488f;

    text-decoration:none;

    transition:
        color .2s ease;
}


.gef-blog-card-body h3 a:hover{
    color:#0786d4;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.gef-blog-card-body > p{
    margin:
        0 0
        17px;

    color:#54779f;

    font-size:13.5px;

    line-height:1.65;

    font-weight:400;
}


/* =========================================================
   READ MORE
========================================================= */

.gef-blog-card-link{
    margin-top:auto;

    display:inline-flex;

    align-items:center;

    gap:7px;

    width:max-content;

    color:#0784d2;

    font-size:12.5px;

    line-height:1;

    font-weight:600;

    text-decoration:none;
}


.gef-blog-card-link i{
    font-size:11px;

    transition:
        transform .2s ease;
}


.gef-blog-card-link:hover i{
    transform:
        translateX(4px);
}


/* =========================================================
   <= 1350PX
========================================================= */

@media(max-width:1350px){

    .gef-related-blogs-container{
        padding-left:28px;
        padding-right:28px;
    }


    .gef-related-blogs-grid{
        gap:18px;
    }


    .gef-blog-card-image{
        height:175px;
    }


    .gef-blog-card-body h3{
        font-size:16px;
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media(max-width:1180px){

    .gef-related-blogs-section{
        padding:
            45px 0
            58px;
    }


    .gef-related-blogs-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));

        gap:22px;
    }


    .gef-blog-card-image{
        height:215px;
    }


    .gef-blog-card-body h3{
        font-size:17px;
    }


    .gef-blog-card-body > p{
        font-size:13.5px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    .gef-related-blogs-container{
        padding-left:20px;
        padding-right:20px;
    }


    .gef-related-blogs-heading h2{
        font-size:29px;
    }


    .gef-related-blogs-view{
        min-height:40px;

        font-size:12px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .gef-related-blogs-section{
        padding:
            38px 0
            46px;
    }


    .gef-related-blogs-container{
        padding-left:15px;
        padding-right:15px;
    }


    .gef-related-blogs-heading{
        align-items:flex-start;

        flex-direction:column;

        margin-bottom:20px;
    }


    .gef-related-blogs-label{
        font-size:11px;
    }


    .gef-related-blogs-heading h2{
        font-size:27px;
    }


    .gef-related-blogs-view{
        min-height:38px;

        padding:
            0 15px;

        font-size:11.5px;
    }


    .gef-related-blogs-grid{
        grid-template-columns:1fr;

        gap:18px;
    }


    .gef-blog-card-image{
        height:210px;
    }


    .gef-blog-card-body{
        padding:
            17px;
    }


    .gef-blog-card-body h3{
        font-size:16px;
    }


    .gef-blog-card-body > p{
        font-size:13px;
    }


    .gef-blog-card-meta{
        font-size:10.5px;
    }


    .gef-blog-card-link{
        font-size:12px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:380px){

    .gef-related-blogs-container{
        padding-left:14px;
        padding-right:14px;
    }


    .gef-blog-card-image{
        height:190px;
    }


    .gef-related-blogs-heading h2{
        font-size:25px;
    }


    .gef-blog-card-body h3{
        font-size:15px;
    }

}



/* ADDITIONS: mapping arbitrary native WordPress Post content to the supplied design. */
.gef-single-view { width:100%; margin:0; padding:0; }
.gef-single-view,.gef-single-view * {box-sizing:border-box}
.gef-single-view .gef-blog-share{padding:0; border:0; background:transparent; cursor:pointer; font-family:inherit}
.gef-single-view .gef-blog-tag{text-decoration:none}
.gef-single-view .gef-blog-hero h1 span{display:block}
.gef-single-view .gef-single-post-content{overflow-wrap:anywhere;scroll-margin-top:110px}
.gef-single-view .gef-single-post-content > p:first-child{margin-bottom:27px!important}
.gef-single-view .gef-single-post-content p{color:#416b9f;font-size:17px;line-height:1.72;font-weight:400;margin:0 0 17px}
.gef-single-view .gef-single-post-content h2{color:#06438f;font-size:28px;line-height:1.25;font-weight:700;letter-spacing:-.5px;margin:28px 0 10px;scroll-margin-top:110px}
.gef-single-view .gef-single-post-content h3{color:#074591;font-size:19px;line-height:1.4;font-weight:600;margin:18px 0 9px}
.gef-single-view .gef-single-post-content h4{color:#074591;font-size:17px;line-height:1.4;font-weight:600;margin:17px 0 8px}
.gef-single-view .gef-single-post-content ul,.gef-single-view .gef-single-post-content ol{margin:0 0 20px 24px;padding:0;color:#416b9f;line-height:1.72;font-size:16px}
.gef-single-view .gef-single-post-content li{margin-bottom:8px}
.gef-single-view .gef-single-post-content a{color:#087bc4;text-decoration:underline}
.gef-single-view .gef-single-post-content img{max-width:100%;height:auto}
.gef-single-view .gef-single-post-content figure{margin:25px 0}
.gef-single-view .gef-single-post-content blockquote{border-left:4px solid #0783d3;padding:14px 22px;background:#eef8ff;border-radius:6px;margin:24px 0;color:#0870bc}
.gef-single-view .gef-single-post-content .gef-detail-block > p{margin-bottom:17px}
.gef-single-view .gef-single-post-content .gef-detail-block h2{margin-top:0}
.gef-single-view .gef-single-post-content .gef-strategy-info h3{font-size:16px;margin:0 0 4px}
.gef-single-view .gef-single-post-content .gef-strategy-info p{font-size:15px;margin:0;color:#416b9f}
.gef-single-view .gef-single-post-content .gef-detail-quote p{margin:0;color:#0870bc;font-size:15px;line-height:1.65;font-weight:600;font-style:italic}
.gef-single-view .gef-blog-navigation-box.gef-blog-nav-single{grid-template-columns:minmax(0,1fr);}
.gef-single-view .gef-single-image-placeholder{width:100%;height:100%;min-height:60px;display:flex;justify-content:center;align-items:center;color:#073569;background:#e1eff9;font-family:Poppins,Arial,sans-serif;font-size:16px;font-weight:700}
.gef-single-view .gef-form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important}
.gef-single-view .gef-single-subscribe-message{display:none;font-size:13px;line-height:1.4;color:#ffffff;margin:9px 0 0}
.gef-single-view .gef-single-subscribe-message.is-visible{display:block}
.gef-single-view .gef-single-subscribe-message.is-error{color:#ffe2e2}
.gef-single-view .gef-single-page-links{margin:24px 0;color:#06438f}
body.gef-blog-single-own-header #masthead{display:none!important}
body.gef-blog-single-own-header .ast-above-header-wrap,body.gef-blog-single-own-header .ast-below-header-wrap{display:none!important}
@media(max-width:767px){.gef-single-view .gef-single-post-content p{font-size:15px}.gef-single-view .gef-single-post-content h2{font-size:23px}.gef-single-view .gef-single-post-content h3{font-size:17px}}

/* ================================================================
   v0.3.0 ASTRA FULL-WIDTH FIX
   Astra opens its .ast-container in header.php before template body.
   Reset ONLY on custom WP single posts, without affecting listing,
   other pages, theme header / footer, or global Astra settings.
   This eliminates manual Container > Full Width / 0 padding steps.
   ================================================================ */
body.gef-blog-single-active #content,
body.gef-blog-single-active .site-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.gef-blog-single-active #content > .ast-container,
body.gef-blog-single-active .site-content > .ast-container,
body.gef-blog-single-active #content > .ast-container.ast-container {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}
body.gef-blog-single-active #content > .ast-container > .gef-single-view {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* In case a shortcode is also nested inside a boxed Elementor widget,
   escape that inner wrapper rather than asking the editor to resize it. */
body.gef-blog-single-active .elementor .gef-single-view,
body.gef-blog-single-active .entry-content .gef-single-view:not(#gef-single-view),
body.gef-blog-single-active .wp-block-shortcode .gef-single-view {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 0 !important;
}
body.gef-blog-single-active .gef-single-view .gef-blog-hero,
body.gef-blog-single-active .gef-single-view .gef-detail-content-section,
body.gef-blog-single-active .gef-single-view .gef-blog-navigation-section,
body.gef-blog-single-active .gef-single-view .gef-related-blogs-section {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
body.gef-blog-single-active { overflow-x: clip; }


/* ================================================================
   v0.3.1 — TRANSPARENT HEADER / SINGLE BLOG HERO INNER TOP GAP
   Keep the image and blue overlay beginning at the TOP of the hero.
   Only offset the INNER content so site navigation/logo never overlap
   back link, categories or title. Do not create an outside white strip.
   The right-hand decorative note also clears transparent navigation.
   Applies only to native WordPress Posts using this plugin template.
   ================================================================ */
@media (min-width: 992px) {
    body.gef-blog-single-active .gef-single-view .gef-blog-hero {
        min-height: 515px;
    }
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-container {
        padding-top: 138px;
        padding-bottom: 42px;
    }
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-note {
        top: 155px;
    }
}
@media (min-width: 701px) and (max-width: 991px) {
    body.gef-blog-single-active .gef-single-view .gef-blog-hero {
        min-height: 480px;
    }
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-container {
        padding-top: 125px;
        padding-bottom: 40px;
    }
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-note {
        top: 145px;
    }
}
@media (max-width: 700px) {
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-container {
        padding-top: 128px;
    }
    /* On phones, retain the original decorative note at the bottom. */
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-note {
        top: auto;
    }
}
@media (max-width: 480px) {
    body.gef-blog-single-active .gef-single-view .gef-blog-hero-container {
        padding-top: 122px;
    }
}
/* When opting into the supplied fixed GEF header (instead of the site
   header), overlay it on the hero without inserting a spacer strip. */
body.gef-blog-single-own-header #gef-header-spacer {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.gef-blog-single-own-header #gef-header {
    background: transparent;
    border-bottom-color: transparent;
    box-shadow: none;
}
body.gef-blog-single-own-header #gef-header .gef-desktop-menu > a {
    color: #fff;
}
body.gef-blog-single-own-header #gef-header .gef-desktop-menu > a:hover,
body.gef-blog-single-own-header #gef-header .gef-desktop-menu > a[aria-current="page"] {
    color: #ffd42a;
}
