:root{
    --bg:#f8f9ff;
    --surface:#ffffff;
    --surface-2:#f0f2f8;
    --surface-3:#e7eaf3;

    --ink:#171c25;
    --muted:#687080;

    --primary:#315da8;
    --primary-soft:#d9e6ff;

    --accent:#b3261e;
    --accent-soft:#ffdad6;

    --line:#dce1ea;

    --r1:14px;
    --r2:22px;
    --r3:32px;

    --shadow:
        0 1px 2px rgba(20,30,50,.08),
        0 8px 28px rgba(20,30,50,.07);

    --max:1380px;
}


*{
    box-sizing:border-box;
}


html{
    scroll-behavior:smooth;
}


body{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;
    -webkit-font-smoothing:antialiased;
}


img{
    max-width:100%;
    display:block;
}


a{
    color:inherit;
}


button,
input{
    font:inherit;
}


.il3-shell{
    width:min(
        calc(100% - 40px),
        var(--max)
    );
    margin-inline:auto;
}


.il3-skip{
    position:absolute;
    left:-9999px;
}


.il3-skip:focus{
    left:16px;
    top:16px;
    z-index:9999;
    padding:10px 14px;
    background:#fff;
}


.il3-appbar{
    position:sticky;
    top:0;
    z-index:900;
    background:rgba(248,249,255,.92);
    backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(220,225,234,.8);
}


.il3-appbar-row{
    min-height:76px;
    display:flex;
    align-items:center;
    gap:30px;
}


.il3-brand{
    display:flex;
    align-items:center;
    gap:11px;
    text-decoration:none;
}


.il3-logo{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    background:var(--primary);
    color:#fff;
    border-radius:15px 15px 15px 5px;
    font-size:24px;
    font-weight:800;
}


.il3-brand strong,
.il3-brand small{
    display:block;
}


.il3-brand strong{
    font-size:18px;
    letter-spacing:-.03em;
}


.il3-brand small{
    color:var(--muted);
    font-size:9px;
    margin-top:2px;
}


.il3-desktop-nav{
    display:flex;
    gap:4px;
    margin-left:auto;
}


.il3-desktop-nav a{
    padding:9px 13px;
    border-radius:999px;
    text-decoration:none;
    font-size:12px;
    font-weight:650;
}


.il3-desktop-nav a:hover{
    background:var(--surface-2);
}


.il3-actions{
    display:flex;
    gap:7px;
}


.il3-icon-button{
    width:42px;
    height:42px;
    border:0;
    border-radius:15px;
    background:var(--surface-2);
    color:var(--ink);
    cursor:pointer;
}


.il3-icon-button:hover{
    background:var(--primary-soft);
}


.il3-menu-button{
    display:none;
}


.il3-search{
    position:fixed;
    inset:0;
    z-index:2000;
    padding:12vh 20px;
    background:rgba(23,28,37,.75);
    backdrop-filter:blur(12px);
}


.il3-search[hidden]{
    display:none;
}


.il3-search form{
    width:min(720px,100%);
    margin:auto;
    padding:16px;
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:8px;
    background:var(--surface);
    border-radius:var(--r2);
    box-shadow:var(--shadow);
}


.il3-search input{
    border:0;
    outline:0;
    background:transparent;
    padding:14px;
    font-size:17px;
}


.il3-search button,
.il3-filled-button{
    border:0;
    border-radius:999px;
    padding:12px 18px;
    background:var(--primary);
    color:#fff;
    text-decoration:none;
    font-weight:700;
    cursor:pointer;
}


.il3-hero-section{
    padding:32px 0 26px;
}


.il3-section-label{
    min-height:56px;
    display:flex;
    align-items:center;
    gap:12px;
}


.il3-section-label > span{
    padding:6px 10px;
    border-radius:999px;
    background:var(--primary-soft);
    color:#23477e;
    font-size:10px;
    font-weight:750;
}


.il3-section-label > strong{
    font-size:24px;
    letter-spacing:-.035em;
}


.il3-section-label > small{
    margin-left:auto;
    color:var(--muted);
}


.il3-hero-layout{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) minmax(320px,.6fr);
    gap:18px;
}


.il3-card{
    min-width:0;
    background:var(--surface);
    border-radius:var(--r2);
    overflow:hidden;
    box-shadow:
        0 1px 0 rgba(20,30,50,.04);
    transition:
        transform .18s ease,
        box-shadow .18s ease;
}


.il3-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--shadow);
}


.il3-card-media{
    display:block;
    overflow:hidden;
    background:var(--surface-2);
}


.il3-card-media img{
    width:100%;
    height:100%;
    object-fit:cover;
}


.il3-card-body{
    padding:17px;
}


.il3-card-meta{
    display:flex;
    align-items:center;
    gap:9px;
    color:var(--muted);
    font-size:9px;
}


.il3-chip{
    display:inline-flex;
    width:max-content;
    align-items:center;
    min-height:27px;
    padding:0 10px;
    border-radius:999px;
    background:var(--primary-soft);
    color:#244b84;
    font-size:9px;
    font-weight:750;
}


.il3-card h2{
    margin:9px 0 7px;
    font-size:21px;
    line-height:1.15;
    letter-spacing:-.025em;
}


.il3-card h2 a{
    text-decoration:none;
}


.il3-card p{
    margin:0 0 12px;
    color:var(--muted);
    line-height:1.5;
    font-size:13px;
}


.il3-card time{
    color:var(--muted);
    font-size:9px;
}


.il3-card--hero .il3-card-media{
    height:430px;
}


.il3-card--hero h2{
    font-size:clamp(30px,4vw,51px);
    line-height:1.02;
    letter-spacing:-.045em;
}


.il3-card--hero .il3-card-body{
    padding:21px;
}


.il3-card--hero p{
    max-width:760px;
    font-size:15px;
}


.il3-priority-rail{
    display:grid;
    align-content:stretch;
    border-radius:var(--r2);
    background:var(--surface);
    overflow:hidden;
}


.il3-priority{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:9px;
    padding:17px;
    border-bottom:1px solid var(--line);
}


.il3-priority:last-child{
    border-bottom:0;
}


.il3-priority-number{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:var(--surface-2);
    color:var(--muted);
    font-size:11px;
}


.il3-priority h3{
    margin:7px 0 5px;
    font-size:18px;
    line-height:1.18;
    letter-spacing:-.02em;
}


.il3-priority h3 a{
    text-decoration:none;
}


.il3-priority small{
    color:var(--muted);
    font-size:9px;
}


.il3-topic-strip{
    padding:10px 0 22px;
}


.il3-topic-row{
    display:flex;
    align-items:center;
    gap:7px;
    overflow:auto;
    scrollbar-width:none;
}


.il3-topic-row::-webkit-scrollbar{
    display:none;
}


.il3-topic-row > span{
    margin-right:5px;
    font-size:10px;
    font-weight:750;
}


.il3-topic-row a{
    flex:0 0 auto;
    padding:8px 13px;
    border-radius:999px;
    background:var(--surface);
    text-decoration:none;
    font-size:10px;
    font-weight:650;
}


.il3-topic-row a:hover{
    background:var(--primary-soft);
}


.il3-feed-section{
    padding:18px 0 42px;
}


.il3-feed-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-flow:dense;
    gap:14px;
}


.il3-card--standard .il3-card-media{
    height:180px;
}


.il3-card--wide{
    grid-column:span 2;
}


.il3-card--wide .il3-card-media{
    height:260px;
}


.il3-card--wide h2{
    font-size:27px;
}


.il3-card--tall{
    grid-row:span 2;
}


.il3-card--tall .il3-card-media{
    height:340px;
}


.il3-card--compact .il3-card-media{
    height:115px;
}


.il3-card--compact h2{
    font-size:17px;
}


.il3-fallback{
    width:100%;
    height:100%;
    min-height:130px;
    display:grid;
    place-items:center;
    background:
        linear-gradient(
            145deg,
            var(--primary-soft),
            var(--surface-3)
        );
    color:var(--primary);
    font-weight:800;
}


.il3-ad-wrap{
    padding:0 0 40px;
}


.il3-ad-slot{
    min-height:82px;
    display:grid;
    place-items:center;
    border:1px dashed #bdc4cf;
    border-radius:var(--r2);
    color:var(--muted);
    background:rgba(255,255,255,.45);
}


.il3-ad-slot small{
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.1em;
}


/*
 * Fewer ads in V3.
 *
 * Only the explicit .il3-ad-slot remains visible.
 * These rules affect V3 only and do not alter plugin settings.
 */

body.insightlinks-v3
:is(
    .adsbygoogle,
    .advertisement:not(.il3-ad-slot),
    .advertisement-area,
    .ad-container,
    .ad-wrapper,
    .google-auto-placed,
    [class*="ad-placement"],
    [id*="ad-placement"]
){
    display:none !important;
}


.il3-brief-section{
    padding:10px 0 60px;
}


.il3-brief-card{
    min-height:230px;
    display:grid;
    grid-template-columns:1fr 1fr auto;
    align-items:center;
    gap:35px;
    padding:35px;
    border-radius:var(--r3);
    background:
        linear-gradient(
            135deg,
            #d9e6ff,
            #f3e6ff
        );
}


.il3-brief-card h2{
    margin:10px 0 0;
    font-size:38px;
    line-height:1;
    letter-spacing:-.045em;
}


.il3-brief-card p{
    color:#4d596b;
    line-height:1.6;
}


.il3-list-page{
    padding:35px 0 70px;
}


.il3-pagination{
    margin-top:35px;
}


.il3-pagination .nav-links{
    display:flex;
    gap:6px;
}


.il3-pagination a,
.il3-pagination span{
    min-width:40px;
    height:40px;
    display:grid;
    place-items:center;
    padding:0 10px;
    background:var(--surface);
    border-radius:13px;
    text-decoration:none;
}


.il3-article{
    padding:50px 20px 75px;
}


.il3-article > header{
    width:min(100%,960px);
    margin:auto;
}


.il3-article h1{
    margin:12px 0;
    font-size:clamp(42px,6vw,76px);
    line-height:.99;
    letter-spacing:-.055em;
}


.il3-article-deck{
    max-width:800px;
    color:var(--muted);
    font-size:19px;
    line-height:1.55;
}


.il3-article-meta{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    padding-top:18px;
    color:var(--muted);
    font-size:10px;
}


.il3-article-image{
    width:min(100%,1120px);
    margin:34px auto;
}


.il3-article-image img{
    width:100%;
    max-height:700px;
    object-fit:cover;
    border-radius:var(--r2);
}


.il3-article-layout{
    width:min(100%,760px);
    margin:auto;
}


.il3-article-content{
    font-family:
        Georgia,
        "Times New Roman",
        serif;
    font-size:19px;
    line-height:1.8;
}


.il3-article-content p{
    margin:0 0 1.35em;
}


.il3-article-content img{
    height:auto;
    border-radius:var(--r1);
}


.il3-article-content blockquote{
    margin:35px 0;
    padding:22px;
    border-radius:var(--r2);
    background:var(--primary-soft);
    font-size:24px;
    line-height:1.45;
}


.il3-empty{
    min-height:60vh;
    display:grid;
    place-items:center;
    align-content:center;
    text-align:center;
    padding:30px;
}


.il3-empty h1{
    margin:15px 0 6px;
    font-size:50px;
}


.il3-footer{
    padding:45px 0 20px;
    background:#171c25;
    color:#f7f8fc;
}


.il3-footer-grid{
    display:flex;
    justify-content:space-between;
    gap:30px;
}


.il3-footer h2{
    margin:9px 0 3px;
}


.il3-footer p{
    color:#aeb5c0;
}


.il3-footer nav{
    display:grid;
    align-content:start;
    grid-template-columns:1fr 1fr;
    gap:12px 25px;
}


.il3-footer nav a{
    color:#f7f8fc;
    text-decoration:none;
    font-size:12px;
}


.il3-footer-bottom{
    display:flex;
    justify-content:space-between;
    gap:20px;
    margin-top:35px;
    padding-top:18px;
    border-top:1px solid #343a45;
    color:#8d96a3;
    font-size:9px;
}


@media(max-width:1050px){

    .il3-feed-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }


    .il3-brief-card{
        grid-template-columns:1fr 1fr;
    }


    .il3-brief-card .il3-filled-button{
        grid-column:1/-1;
        width:max-content;
    }
}


@media(max-width:800px){

    .il3-shell{
        width:min(
            calc(100% - 24px),
            var(--max)
        );
    }


    .il3-desktop-nav{
        display:none;
    }


    .il3-menu-button{
        display:block;
    }


    .il3-actions{
        margin-left:auto;
    }


    .il3-hero-layout{
        grid-template-columns:1fr;
    }


    .il3-card--hero .il3-card-media{
        height:340px;
    }


    .il3-priority-rail{
        grid-template-columns:1fr 1fr 1fr;
    }


    .il3-priority{
        display:block;
        border-bottom:0;
        border-right:1px solid var(--line);
    }


    .il3-feed-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }


    .il3-card--wide{
        grid-column:span 2;
    }


    .il3-card--tall{
        grid-row:auto;
    }


    .il3-card--tall .il3-card-media{
        height:220px;
    }
}


@media(max-width:520px){

    .il3-appbar-row{
        min-height:66px;
    }


    .il3-brand small{
        display:none;
    }


    .il3-logo{
        width:38px;
        height:38px;
    }


    .il3-section-label > strong{
        font-size:20px;
    }


    .il3-section-label > small{
        display:none;
    }


    .il3-card--hero .il3-card-media{
        height:275px;
    }


    .il3-card--hero h2{
        font-size:34px;
    }


    .il3-priority-rail{
        display:block;
    }


    .il3-priority{
        display:grid;
        border-right:0;
        border-bottom:1px solid var(--line);
    }


    .il3-feed-grid{
        grid-template-columns:1fr;
    }


    .il3-card--wide{
        grid-column:auto;
    }


    .il3-card--standard .il3-card-media,
    .il3-card--wide .il3-card-media,
    .il3-card--tall .il3-card-media{
        height:220px;
    }


    .il3-brief-card{
        grid-template-columns:1fr;
        padding:25px;
    }


    .il3-brief-card .il3-filled-button{
        grid-column:auto;
    }


    .il3-search form{
        grid-template-columns:1fr;
    }


    .il3-article{
        padding-inline:14px;
    }


    .il3-article h1{
        font-size:42px;
    }


    .il3-article-content{
        font-size:18px;
    }


    .il3-footer-grid{
        display:block;
    }


    .il3-footer nav{
        margin-top:25px;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.1
   EXPRESSIVE MATERIAL FEED
   ========================================================== */


:root{
    --il31-blue:#3566b8;
    --il31-indigo:#4a4fa3;
    --il31-purple:#76558f;
    --il31-red:#b93635;
    --il31-green:#2f7055;
    --il31-orange:#a96226;
}


/*
 * Stronger identity without external fonts.
 */

.il3-brand strong{
    font-size:19px;
    font-weight:760;
}


.il3-brand small{
    letter-spacing:.01em;
}


/*
 * Material tonal masthead.
 */

.il3-appbar{
    box-shadow:
        0 1px 0 rgba(28,35,48,.04);
}


.il3-logo{
    background:
        linear-gradient(
            145deg,
            #315da8,
            #4776c7
        );
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.16);
}


/*
 * NEW signal.
 */

.il31-new{
    display:inline-flex;
    align-items:center;
    height:22px;
    padding:0 7px;
    border-radius:999px;
    background:var(--accent-soft);
    color:#87201b;
    font-size:8px;
    font-weight:850;
    letter-spacing:.08em;
}


/*
 * Category-specific tonal accents.
 */

.il3-card{
    --card-accent:var(--primary);
}


.il3-card.is-politics{
    --card-accent:var(--il31-indigo);
}


.il3-card.is-sports{
    --card-accent:var(--il31-green);
}


.il3-card.is-security{
    --card-accent:var(--il31-red);
}


.il3-card.is-economy{
    --card-accent:var(--il31-orange);
}


.il3-card.is-culture{
    --card-accent:var(--il31-purple);
}


.il3-card .il3-chip{
    background:
        color-mix(
            in srgb,
            var(--card-accent) 14%,
            white
        );
    color:var(--card-accent);
}


/*
 * Feature card:
 * large editorial surface occupying two columns and rows.
 */

.il3-card--feature{
    grid-column:span 2;
    grid-row:span 2;
    position:relative;
}


.il3-card--feature .il3-card-media{
    height:390px;
}


.il3-card--feature .il3-card-body{
    padding:22px;
}


.il3-card--feature h2{
    max-width:800px;
    margin-top:11px;
    font-size:34px;
    line-height:1.05;
    letter-spacing:-.045em;
}


.il3-card--feature p{
    max-width:700px;
    font-size:14px;
}


/*
 * More expressive shapes.
 */

.il3-feed-grid .il3-card:nth-child(6n+1){
    border-radius:30px 14px 30px 14px;
}


.il3-feed-grid .il3-card:nth-child(6n+2){
    border-radius:14px 30px 14px 30px;
}


.il3-feed-grid .il3-card:nth-child(6n+3){
    border-radius:24px;
}


.il3-feed-grid .il3-card:nth-child(6n+4){
    border-radius:14px;
}


.il3-feed-grid .il3-card:nth-child(6n+5){
    border-radius:30px 30px 14px 30px;
}


/*
 * Add subtle category line rather than heavy decoration.
 */

.il3-card::after{
    content:"";
    position:absolute;
    left:17px;
    right:17px;
    bottom:0;
    height:2px;
    border-radius:99px 99px 0 0;
    background:var(--card-accent);
    opacity:0;
    transform:scaleX(.6);
    transition:
        opacity .18s ease,
        transform .18s ease;
}


.il3-card{
    position:relative;
}


.il3-card:hover::after{
    opacity:.8;
    transform:scaleX(1);
}


/*
 * Secondary advertisement.
 * Intentionally quieter than editorial cards.
 */

.il31-feed-ad{
    min-height:170px;
    grid-column:span 2;
    display:grid;
    place-items:center;
    align-content:center;
    gap:10px;
    border:1px dashed #cbd0da;
    border-radius:var(--r2);
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.42),
            rgba(235,238,246,.60)
        );
}


.il31-feed-ad > span{
    color:#8a909c;
    font-size:8px;
    text-transform:uppercase;
    letter-spacing:.12em;
}


.il31-feed-ad-content{
    width:min(100%,728px);
    min-height:90px;
}


/*
 * Keep advertising subordinate to journalism.
 */

.il3-ad-wrap{
    padding-top:10px;
}


.il3-ad-slot{
    min-height:76px;
}


/*
 * Faster visual perception.
 *
 * Content-visibility lets off-screen feed cards avoid immediate
 * rendering work in supporting browsers.
 */

.il3-feed-grid > *{
    content-visibility:auto;
    contain-intrinsic-size:300px;
}


/*
 * Reduced motion preference.
 */

@media(prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{
        scroll-behavior:auto !important;
        animation:none !important;
        transition:none !important;
    }
}


/*
 * Strong focus visibility.
 */

.il3-card a:focus-visible,
.il3-priority a:focus-visible,
.il3-topic-row a:focus-visible,
.il3-desktop-nav a:focus-visible{
    outline:3px solid rgba(49,93,168,.28);
    outline-offset:4px;
}


/*
 * Large screens:
 * give editorial cards more room.
 */

@media(min-width:1400px){

    .il3-feed-grid{
        gap:16px;
    }


    .il3-card--standard .il3-card-media{
        height:195px;
    }
}


/*
 * Tablet.
 */

@media(max-width:900px){

    .il3-card--feature{
        grid-column:span 2;
        grid-row:auto;
    }


    .il3-card--feature .il3-card-media{
        height:320px;
    }


    .il31-feed-ad{
        grid-column:span 2;
    }
}


/*
 * Mobile:
 * editorial rhythm becomes simple and fast.
 */

@media(max-width:520px){

    .il3-feed-grid{
        gap:11px;
    }


    .il3-card--feature,
    .il31-feed-ad{
        grid-column:auto;
    }


    .il3-card--feature .il3-card-media{
        height:250px;
    }


    .il3-card--feature h2{
        font-size:27px;
    }


    .il31-feed-ad{
        min-height:125px;
    }


    .il3-feed-grid .il3-card{
        border-radius:20px;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.3
   LIGHT MATERIAL INTELLIGENCE
   ========================================================== */


:root{

    --il33-bg:
        #f7f9fc;

    --il33-paper:
        rgba(255,255,255,.88);

    --il33-paper-solid:
        #ffffff;

    --il33-ink:
        #172033;

    --il33-muted:
        #657085;

    --il33-line:
        rgba(25,45,78,.08);

    --il33-blue:
        #1769e0;

    --il33-cyan:
        #00a8b5;

    --il33-violet:
        #7258d6;

    --il33-gold:
        #dd9c24;

    --il33-red:
        #d84a5d;

    --il33-green:
        #258d69;

    --il33-radius-xl:
        28px;

    --il33-radius:
        20px;

    --il33-radius-sm:
        13px;

    --il33-shadow:
        0 10px 35px
        rgba(28,52,88,.07);
}


/* ----------------------------------------------------------
   PAGE
   ---------------------------------------------------------- */


html{
    background:
        #fff;
}


body{

    background:

        radial-gradient(
            circle at 8% 4%,
            rgba(41,169,255,.09),
            transparent 26%
        ),

        radial-gradient(
            circle at 88% 8%,
            rgba(119,83,221,.08),
            transparent 27%
        ),

        radial-gradient(
            circle at 48% 36%,
            rgba(0,190,170,.045),
            transparent 32%
        ),

        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8fafc 46%,
            #ffffff 100%
        ) !important;

    color:
        var(--il33-ink);

    -webkit-font-smoothing:
        antialiased;

    text-rendering:
        optimizeLegibility;
}


/* ----------------------------------------------------------
   GLOBAL SHELL
   ---------------------------------------------------------- */


.il3-shell,
.site-content,
main{

    width:
        min(
            1520px,
            calc(100% - 32px)
        );

    margin-inline:
        auto;
}


/* ----------------------------------------------------------
   HEADER
   ---------------------------------------------------------- */


.il3-header,
.site-header{

    position:
        sticky;

    top:
        8px;

    z-index:
        80;

    margin:
        8px auto 0;

    width:
        min(
            1540px,
            calc(100% - 24px)
        );

    border:
        1px solid
        rgba(40,63,95,.08);

    border-radius:
        22px;

    background:
        rgba(255,255,255,.82);

    backdrop-filter:
        blur(15px);

    -webkit-backdrop-filter:
        blur(15px);

    box-shadow:
        0 5px 25px
        rgba(30,55,90,.055);
}


/* ----------------------------------------------------------
   BREAKING / SIGNAL STRIP
   ---------------------------------------------------------- */


.il3-breaking,
.il3-signal-strip{

    min-height:
        36px;

    display:
        flex;

    align-items:
        center;

    gap:
        12px;

    margin:
        12px 0;

    padding:
        6px 10px;

    overflow:
        hidden;

    border:
        1px solid
        var(--il33-line);

    border-radius:
        999px;

    background:
        rgba(255,255,255,.7);
}


.il3-breaking::before,
.il3-signal-strip::before{

    content:
        "LIVE";

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    min-width:
        44px;

    min-height:
        24px;

    border-radius:
        999px;

    background:
        rgba(216,74,93,.09);

    color:
        var(--il33-red);

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        .12em;
}


/* ----------------------------------------------------------
   HERO
   ---------------------------------------------------------- */


.il3-hero,
.il3-feature{

    position:
        relative;

    overflow:
        hidden;

    min-height:
        520px;

    border:
        1px solid
        var(--il33-line);

    border-radius:
        32px 8px 32px 8px;

    background:
        var(--il33-paper-solid);

    box-shadow:
        var(--il33-shadow);
}


.il3-hero::before,
.il3-feature::before{

    content:
        "";

    position:
        absolute;

    width:
        380px;

    height:
        380px;

    right:
        -120px;

    top:
        -140px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(40,126,235,.14),
            rgba(115,84,215,.06) 48%,
            transparent 70%
        );

    pointer-events:
        none;

    z-index:
        1;
}


.il3-hero img,
.il3-feature img{

    width:
        100%;

    height:
        100%;

    object-fit:
        cover;

    display:
        block;
}


.il3-hero-content,
.il3-feature-content{

    position:
        absolute;

    left:
        22px;

    bottom:
        22px;

    z-index:
        3;

    width:
        min(
            680px,
            calc(100% - 44px)
        );

    padding:
        20px;

    border:
        1px solid
        rgba(255,255,255,.6);

    border-radius:
        22px 7px 22px 7px;

    background:
        rgba(255,255,255,.90);

    box-shadow:
        0 12px 35px
        rgba(18,42,76,.10);
}


.il3-hero h1,
.il3-feature h1{

    margin:
        5px 0 10px;

    font-size:
        clamp(
            28px,
            4.1vw,
            62px
        );

    line-height:
        .98;

    letter-spacing:
        -.045em;
}


/* ----------------------------------------------------------
   MATERIAL CARD GRID
   ---------------------------------------------------------- */


.il3-grid,
.il3-feed-grid{

    display:
        grid;

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

    grid-auto-flow:
        dense;

    gap:
        12px;
}


.il3-card,
.il3-story{

    position:
        relative;

    overflow:
        hidden;

    min-height:
        350px;

    grid-column:
        span 4;

    border:
        1px solid
        var(--il33-line);

    border-radius:
        var(--il33-radius);

    background:
        var(--il33-paper-solid);

    box-shadow:
        0 5px 18px
        rgba(36,58,89,.045);

    contain:
        layout paint;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}


.il3-card:hover,
.il3-story:hover{

    transform:
        translateY(-2px);

    border-color:
        rgba(23,105,224,.13);

    box-shadow:
        0 13px 34px
        rgba(36,58,89,.08);
}


/* intelligent geometry */

.il3-card--wide,
.il3-story--wide{

    grid-column:
        span 8;

    min-height:
        385px;
}


.il3-card--tall,
.il3-story--tall{

    grid-column:
        span 4;

    grid-row:
        span 2;

    min-height:
        540px;
}


.il3-card--compact,
.il3-story--compact{

    min-height:
        270px;
}


.il3-card--feature,
.il3-story--feature{

    grid-column:
        span 8;

    min-height:
        500px;
}


/* ----------------------------------------------------------
   CARD IMAGE
   ---------------------------------------------------------- */


.il3-card-media,
.il3-story-media{

    position:
        relative;

    height:
        205px;

    overflow:
        hidden;

    background:
        #edf3f8;
}


.il3-card--wide .il3-card-media,
.il3-story--wide .il3-story-media{

    height:
        240px;
}


.il3-card--tall .il3-card-media,
.il3-story--tall .il3-story-media{

    height:
        320px;
}


.il3-card-media img,
.il3-story-media img{

    width:
        100%;

    height:
        100%;

    object-fit:
        cover;

    transition:
        transform .35s ease;
}


.il3-card:hover img,
.il3-story:hover img{

    transform:
        scale(1.015);
}


/* ----------------------------------------------------------
   CARD CONTENT
   ---------------------------------------------------------- */


.il3-card-body,
.il3-story-body{

    padding:
        15px 16px 17px;
}


.il3-card h2,
.il3-story h2,
.il3-card h3,
.il3-story h3{

    margin:
        0;

    color:
        var(--il33-ink);

    font-size:
        clamp(
            18px,
            1.6vw,
            25px
        );

    line-height:
        1.06;

    letter-spacing:
        -.025em;
}


.il3-meta{

    display:
        flex;

    align-items:
        center;

    flex-wrap:
        wrap;

    gap:
        6px;

    margin-top:
        11px;

    color:
        var(--il33-muted);

    font-size:
        10px;
}


/* ----------------------------------------------------------
   CATEGORY SIGNAL PILLS
   ---------------------------------------------------------- */


.il3-category,
.il3-chip,
.il3-label{

    display:
        inline-flex;

    align-items:
        center;

    min-height:
        26px;

    padding:
        0 9px;

    border-radius:
        999px;

    background:
        rgba(23,105,224,.065);

    color:
        var(--il33-blue);

    font-size:
        8px;

    font-weight:
        800;

    letter-spacing:
        .07em;

    text-transform:
        uppercase;
}


/* ----------------------------------------------------------
   SECTION HEADERS
   ---------------------------------------------------------- */


.il3-section-head{

    display:
        flex;

    align-items:
        end;

    justify-content:
        space-between;

    gap:
        20px;

    margin:
        38px 0 15px;
}


.il3-section-head h2{

    margin:
        0;

    max-width:
        740px;

    font-size:
        clamp(
            27px,
            3.5vw,
            49px
        );

    line-height:
        .96;

    letter-spacing:
        -.045em;
}


.il3-section-head p{

    max-width:
        400px;

    margin:
        0;

    color:
        var(--il33-muted);

    font-size:
        13px;

    line-height:
        1.5;
}


/* ----------------------------------------------------------
   INTELLIGENCE STRIP
   ---------------------------------------------------------- */


.il33-intelligence{

    display:
        grid;

    grid-template-columns:
        1.3fr
        repeat(3,1fr);

    gap:
        9px;

    margin:
        14px 0 28px;
}


.il33-intel-card{

    min-height:
        102px;

    padding:
        14px;

    border:
        1px solid
        var(--il33-line);

    border-radius:
        18px 6px 18px 6px;

    background:
        rgba(255,255,255,.76);
}


.il33-intel-card:first-child{

    background:
        linear-gradient(
            135deg,
            rgba(225,241,255,.68),
            rgba(245,238,255,.64)
        );
}


.il33-intel-card small{

    display:
        block;

    margin-bottom:
        8px;

    color:
        var(--il33-muted);

    font-size:
        8px;

    font-weight:
        800;

    letter-spacing:
        .08em;

    text-transform:
        uppercase;
}


.il33-intel-card strong{

    display:
        block;

    font-size:
        clamp(
            17px,
            1.7vw,
            25px
        );

    line-height:
        1.05;
}


/* ----------------------------------------------------------
   ADS — DELIBERATELY QUIET
   ---------------------------------------------------------- */


.adsbygoogle,
.il3-ad,
.il3-advert{

    max-width:
        970px;

    margin:
        22px auto !important;
}


.il3-ad-shell{

    padding:
        8px;

    border:
        1px dashed
        rgba(70,85,110,.12);

    border-radius:
        14px;

    background:
        rgba(255,255,255,.54);
}


/*
 * Prevent giant empty advertising blocks.
 */

ins.adsbygoogle{

    min-height:
        90px;

    max-height:
        280px;
}


/* ----------------------------------------------------------
   IMAGE FALLBACK
   ---------------------------------------------------------- */


.il33-image-fallback{

    width:
        100%;

    height:
        100%;

    min-height:
        180px;

    display:
        grid;

    place-items:
        center;

    background:

        radial-gradient(
            circle at 20% 20%,
            rgba(44,153,230,.13),
            transparent 34%
        ),

        radial-gradient(
            circle at 80% 70%,
            rgba(122,81,211,.10),
            transparent 35%
        ),

        #f4f8fb;
}


.il33-image-fallback span{

    color:
        #66758c;

    font-size:
        10px;

    font-weight:
        900;

    letter-spacing:
        .18em;

    text-transform:
        uppercase;
}


/* ----------------------------------------------------------
   BELOW THE FOLD
   ---------------------------------------------------------- */


.il3-feed,
.il3-latest,
.il3-regions,
.il3-more{

    content-visibility:
        auto;

    contain-intrinsic-size:
        900px;
}


/* ----------------------------------------------------------
   TABLET
   ---------------------------------------------------------- */


@media(max-width:1050px){

    .il3-card,
    .il3-story{

        grid-column:
            span 6;
    }


    .il3-card--wide,
    .il3-story--wide,
    .il3-card--feature,
    .il3-story--feature{

        grid-column:
            span 12;
    }


    .il33-intelligence{

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


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */


@media(max-width:640px){

    .il3-shell,
    .site-content,
    main{

        width:
            calc(100% - 18px);
    }


    .il3-header,
    .site-header{

        top:
            5px;

        width:
            calc(100% - 10px);

        border-radius:
            16px;

        backdrop-filter:
            none;

        -webkit-backdrop-filter:
            none;
    }


    .il3-hero,
    .il3-feature{

        min-height:
            470px;

        border-radius:
            22px 6px 22px 6px;
    }


    .il3-hero-content,
    .il3-feature-content{

        left:
            10px;

        bottom:
            10px;

        width:
            calc(100% - 20px);

        padding:
            15px;

        border-radius:
            17px 5px 17px 5px;
    }


    .il3-grid,
    .il3-feed-grid{

        grid-template-columns:
            1fr;

        gap:
            9px;
    }


    .il3-card,
    .il3-story,
    .il3-card--wide,
    .il3-story--wide,
    .il3-card--tall,
    .il3-story--tall,
    .il3-card--feature,
    .il3-story--feature{

        grid-column:
            1;

        grid-row:
            auto;

        min-height:
            auto;

        border-radius:
            17px;
    }


    .il3-card-media,
    .il3-story-media,
    .il3-card--wide .il3-card-media,
    .il3-story--wide .il3-story-media,
    .il3-card--tall .il3-card-media,
    .il3-story--tall .il3-story-media{

        height:
            210px;
    }


    .il33-intelligence{

        grid-template-columns:
            1fr 1fr;

        gap:
            7px;
    }


    .il33-intel-card{

        min-height:
            86px;

        padding:
            11px;
    }


    .il3-section-head{

        display:
            block;
    }


    .il3-section-head p{

        margin-top:
            8px;
    }


    /*
     * Mobile speed:
     * no hover transforms / costly glass effects.
     */

    .il3-card:hover,
    .il3-story:hover{

        transform:
            none;
    }


    .il3-card:hover img,
    .il3-story:hover img{

        transform:
            none;
    }
}


/* ----------------------------------------------------------
   ACCESSIBILITY / REDUCED MOTION
   ---------------------------------------------------------- */


@media(prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{

        scroll-behavior:
            auto !important;

        transition:
            none !important;

        animation:
            none !important;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.7 — WHOLE SITE OS
   ========================================================== */


:root{

    --il37-bg:
        #f8fafc;

    --il37-paper:
        rgba(255,255,255,.88);

    --il37-white:
        #fff;

    --il37-text:
        #182236;

    --il37-muted:
        #6f7b8e;

    --il37-line:
        rgba(29,52,84,.08);

    --il37-blue:
        #286ed1;

    --il37-green:
        #238266;

    --il37-gold:
        #c88925;

    --il37-radius:
        20px;

    --il37-shadow:
        0 10px 36px
        rgba(31,54,86,.06);
}


/* global */

body.il37-site{

    margin:
        0;

    background:

        radial-gradient(
            circle at 7% 2%,
            rgba(51,151,235,.08),
            transparent 25%
        ),

        radial-gradient(
            circle at 93% 6%,
            rgba(129,92,213,.06),
            transparent 24%
        ),

        linear-gradient(
            180deg,
            #fff,
            #f8fafc 48%,
            #fff
        );

    color:
        var(--il37-text);
}


.il37-global-shell{

    width:
        min(
            1500px,
            calc(100% - 28px)
        );

    margin:
        0 auto;
}


/* header */

.il37-site-header{

    position:
        sticky;

    top:
        7px;

    z-index:
        100;

    width:
        min(
            1540px,
            calc(100% - 16px)
        );

    margin:
        7px auto 16px;

    overflow:
        hidden;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        22px;

    background:
        rgba(255,255,255,.88);

    backdrop-filter:
        blur(16px);

    box-shadow:
        0 7px 26px
        rgba(25,48,81,.055);
}


.il37-header-main{

    min-height:
        65px;

    display:
        grid;

    grid-template-columns:
        auto 1fr auto;

    align-items:
        center;

    gap:
        22px;

    padding:
        0 14px;
}


.il37-brand{

    display:
        inline-flex;

    align-items:
        center;

    gap:
        9px;

    color:
        var(--il37-text);

    text-decoration:
        none;
}


.il37-brand-mark{

    width:
        37px;

    height:
        37px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        13px 4px 13px 4px;

    background:
        linear-gradient(
            135deg,
            #2a73da,
            #249173
        );

    color:
        white;

    font-size:
        19px;

    font-weight:
        900;
}


.il37-brand-copy{

    display:
        grid;

    gap:
        1px;
}


.il37-brand-copy strong{

    font-size:
        16px;

    letter-spacing:
        -.035em;
}


.il37-brand-copy small{

    color:
        var(--il37-muted);

    font-size:
        7px;

    letter-spacing:
        .06em;
}


.il37-main-nav{

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        18px;
}


.il37-main-nav a{

    color:
        #46536a;

    font-size:
        10px;

    font-weight:
        720;

    text-decoration:
        none;
}


.il37-main-nav a:hover{

    color:
        var(--il37-blue);
}


.il37-search-button{

    min-height:
        36px;

    padding:
        0 13px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        999px;

    background:
        #f6f9fc;

    color:
        #415069;

    font:
        750 9px/1 inherit;

    cursor:
        pointer;
}


.il37-topic-ribbon{

    display:
        flex;

    align-items:
        center;

    gap:
        6px;

    padding:
        6px 12px 9px;

    overflow-x:
        auto;

    scrollbar-width:
        none;

    border-top:
        1px solid
        rgba(30,54,87,.055);
}


.il37-topic-ribbon::-webkit-scrollbar{

    display:
        none;
}


.il37-topic-ribbon > span{

    flex:
        0 0 auto;

    color:
        var(--il37-gold);

    font-size:
        7px;

    font-weight:
        900;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;
}


.il37-topic-ribbon a{

    flex:
        0 0 auto;

    padding:
        5px 9px;

    border-radius:
        999px;

    color:
        #647187;

    background:
        rgba(239,244,249,.82);

    font-size:
        8px;

    text-decoration:
        none;
}


/* breadcrumbs */

.il37-breadcrumbs{

    display:
        flex;

    align-items:
        center;

    gap:
        7px;

    margin:
        5px 4px 17px;

    overflow:
        hidden;

    color:
        #8994a4;

    white-space:
        nowrap;

    font-size:
        8px;
}


.il37-breadcrumbs a{

    color:
        #617087;

    text-decoration:
        none;
}


.il37-breadcrumbs span:last-child{

    overflow:
        hidden;

    text-overflow:
        ellipsis;
}


.il37-breadcrumb-separator{

    color:
        #c4cbd4;
}


/* search panel */

.il37-search-panel{

    position:
        fixed;

    inset:
        0;

    z-index:
        1000;

    display:
        grid;

    place-items:
        start center;

    padding-top:
        12vh;

    background:
        rgba(244,248,252,.83);

    backdrop-filter:
        blur(12px);
}


.il37-search-panel[hidden]{

    display:
        none;
}


.il37-search-dialog{

    width:
        min(
            680px,
            calc(100% - 28px)
        );

    padding:
        18px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        25px 7px 25px 7px;

    background:
        white;

    box-shadow:
        0 24px 70px
        rgba(27,49,79,.14);
}


.il37-search-dialog > button{

    display:
        block;

    margin-left:
        auto;

    border:
        0;

    background:
        transparent;

    color:
        var(--il37-muted);

    cursor:
        pointer;
}


.il37-search-dialog form{

    display:
        grid;

    grid-template-columns:
        1fr auto;

    gap:
        8px;

    margin-top:
        10px;
}


.il37-search-dialog label{

    grid-column:
        1 / -1;

    font-size:
        13px;

    font-weight:
        800;
}


.il37-search-dialog input,
.il37-inline-search input{

    min-width:
        0;

    min-height:
        47px;

    padding:
        0 14px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        14px;

    background:
        #f8fafc;

    color:
        var(--il37-text);

    outline:
        0;
}


.il37-search-dialog button[type="submit"],
.il37-inline-search button{

    min-height:
        47px;

    padding:
        0 17px;

    border:
        0;

    border-radius:
        14px;

    background:
        var(--il37-blue);

    color:
        white;

    font-weight:
        800;
}


/* universal page heading */

.il37-listing,
.il37-page-shell,
.il37-notfound{

    margin:
        25px 0 70px;
}


.il37-page-heading{

    max-width:
        900px;

    margin:
        0 auto 25px;

    text-align:
        center;
}


.il37-page-heading > span{

    display:
        block;

    margin-bottom:
        8px;

    color:
        var(--il37-green);

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        .13em;

    text-transform:
        uppercase;
}


.il37-page-heading h1{

    margin:
        0;

    font-size:
        clamp(
            36px,
            6vw,
            76px
        );

    line-height:
        .94;

    letter-spacing:
        -.055em;
}


.il37-page-heading p,
.il37-page-description{

    max-width:
        650px;

    margin:
        13px auto 0;

    color:
        var(--il37-muted);

    font-size:
        14px;

    line-height:
        1.55;
}


/* card system */

.il37-story-grid{

    display:
        grid;

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

    gap:
        11px;

    grid-auto-flow:
        dense;
}


.il37-card{

    min-width:
        0;

    overflow:
        hidden;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        20px 6px 20px 6px;

    background:
        var(--il37-paper);

    box-shadow:
        0 5px 17px
        rgba(30,51,80,.04);

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


.il37-card:hover{

    transform:
        translateY(-2px);

    box-shadow:
        var(--il37-shadow);
}


.il37-card-media{

    display:
        block;

    height:
        190px;

    overflow:
        hidden;

    background:
        #edf2f6;
}


.il37-card-media img{

    display:
        block;

    width:
        100%;

    height:
        100%;

    object-fit:
        cover;
}


.il37-fallback{

    width:
        100%;

    height:
        100%;

    display:
        grid;

    place-items:
        center;

    background:
        linear-gradient(
            135deg,
            #eef6ff,
            #f4f1fb
        );

    color:
        #748196;

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        .13em;

    text-transform:
        uppercase;
}


.il37-card-copy{

    padding:
        13px 14px 15px;
}


.il37-card-category{

    color:
        var(--il37-blue);

    font-size:
        7px;

    font-weight:
        850;

    letter-spacing:
        .09em;

    text-transform:
        uppercase;

    text-decoration:
        none;
}


.il37-card h2{

    margin:
        6px 0 9px;

    font-size:
        clamp(
            17px,
            1.5vw,
            23px
        );

    line-height:
        1.05;

    letter-spacing:
        -.027em;
}


.il37-card h2 a{

    color:
        var(--il37-text);

    text-decoration:
        none;
}


.il37-card-meta{

    color:
        #8a95a5;

    font-size:
        8px;
}


/* page content */

.il37-page{

    max-width:
        900px;

    margin:
        0 auto;
}


.il37-page-content{

    padding:
        28px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        25px 7px 25px 7px;

    background:
        rgba(255,255,255,.82);

    font-size:
        17px;

    line-height:
        1.7;
}


.il37-page-content img{

    max-width:
        100%;

    height:
        auto;

    border-radius:
        18px;
}


/* pagination */

.il37-pagination{

    margin:
        30px auto;

    text-align:
        center;
}


.il37-pagination .nav-links{

    display:
        flex;

    justify-content:
        center;

    flex-wrap:
        wrap;

    gap:
        5px;
}


.il37-pagination a,
.il37-pagination span{

    min-width:
        38px;

    min-height:
        38px;

    display:
        inline-grid;

    place-items:
        center;

    padding:
        0 9px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        11px;

    background:
        white;

    color:
        #55637a;

    text-decoration:
        none;
}


.il37-pagination .current{

    background:
        var(--il37-blue);

    color:
        white;
}


/* 404 */

.il37-notfound{

    max-width:
        1050px;

    margin-inline:
        auto;

    text-align:
        center;
}


.il37-404-number{

    color:
        rgba(40,110,209,.12);

    font-size:
        clamp(
            100px,
            22vw,
            270px
        );

    font-weight:
        950;

    line-height:
        .7;

    letter-spacing:
        -.10em;
}


.il37-notfound > span{

    color:
        var(--il37-green);

    font-size:
        9px;

    font-weight:
        850;

    letter-spacing:
        .10em;

    text-transform:
        uppercase;
}


.il37-notfound h1{

    margin:
        10px 0 0;

    font-size:
        clamp(
            35px,
            5vw,
            61px
        );

    letter-spacing:
        -.05em;
}


.il37-notfound > p{

    color:
        var(--il37-muted);
}


.il37-inline-search{

    max-width:
        620px;

    display:
        grid;

    grid-template-columns:
        1fr auto;

    gap:
        7px;

    margin:
        20px auto;
}


.il37-404-stories{

    display:
        grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap:
        9px;

    margin-top:
        30px;

    text-align:
        left;
}


/* internal backlinks */

.il37-related-links{

    max-width:
        1120px;

    margin:
        55px auto 25px;

    padding:
        22px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        25px 7px 25px 7px;

    background:
        linear-gradient(
            135deg,
            rgba(239,246,255,.66),
            rgba(249,246,236,.55)
        );
}


.il37-related-links header span{

    color:
        var(--il37-gold);

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        .11em;

    text-transform:
        uppercase;
}


.il37-related-links header h2{

    margin:
        5px 0 14px;

    font-size:
        clamp(
            27px,
            3vw,
            42px
        );

    letter-spacing:
        -.045em;
}


.il37-related-link-grid{

    display:
        grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap:
        7px;
}


.il37-related-link-grid a{

    min-height:
        90px;

    display:
        grid;

    align-content:
        start;

    gap:
        6px;

    padding:
        12px;

    border:
        1px solid
        rgba(28,53,86,.065);

    border-radius:
        14px;

    background:
        rgba(255,255,255,.73);

    color:
        var(--il37-text);

    text-decoration:
        none;
}


.il37-related-link-grid span{

    color:
        #8a96a5;

    font-size:
        7px;
}


.il37-related-link-grid strong{

    font-size:
        13px;

    line-height:
        1.12;
}


/* footer backlink/discovery network */

.il37-site-footer{

    width:
        min(
            1540px,
            calc(100% - 16px)
        );

    margin:
        0 auto 8px;

    padding:
        26px;

    border:
        1px solid
        var(--il37-line);

    border-radius:
        30px 8px 30px 8px;

    background:

        radial-gradient(
            circle at 4% 15%,
            rgba(42,115,218,.08),
            transparent 25%
        ),

        radial-gradient(
            circle at 95% 80%,
            rgba(35,130,102,.07),
            transparent 26%
        ),

        rgba(255,255,255,.86);
}


.il37-footer-grid{

    display:
        grid;

    grid-template-columns:
        1.4fr 1fr 1fr 1fr;

    gap:
        25px;
}


.il37-footer-grid h2{

    margin:
        0 0 9px;

    font-size:
        11px;

    letter-spacing:
        .01em;
}


.il37-footer-grid nav{

    display:
        grid;

    gap:
        7px;
}


.il37-footer-grid nav a{

    color:
        #647188;

    font-size:
        9px;

    line-height:
        1.3;

    text-decoration:
        none;
}


.il37-footer-grid nav a:hover{

    color:
        var(--il37-blue);
}


.il37-footer-brand p{

    max-width:
        300px;

    color:
        var(--il37-muted);

    font-size:
        11px;

    line-height:
        1.5;
}


.il37-footer-bottom{

    display:
        flex;

    justify-content:
        space-between;

    gap:
        12px;

    margin-top:
        25px;

    padding-top:
        12px;

    border-top:
        1px solid
        var(--il37-line);

    color:
        #8a95a5;

    font-size:
        8px;
}


/* tablet */

@media(max-width:1050px){

    .il37-main-nav{

        display:
            none;
    }


    .il37-header-main{

        grid-template-columns:
            auto 1fr;

    }


    .il37-header-actions{

        justify-self:
            end;
    }


    .il37-story-grid{

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


    .il37-footer-grid{

        grid-template-columns:
            1fr 1fr;
    }


    .il37-related-link-grid{

        grid-template-columns:
            1fr 1fr;
    }
}


/* mobile */

@media(max-width:640px){

    .il37-site-header{

        top:
            4px;

        width:
            calc(100% - 8px);

        border-radius:
            16px;

        backdrop-filter:
            none;
    }


    .il37-header-main{

        min-height:
            57px;

        padding:
            0 10px;
    }


    .il37-brand-mark{

        width:
            34px;

        height:
            34px;
    }


    .il37-brand-copy small{

        display:
            none;
    }


    .il37-global-shell{

        width:
            calc(100% - 16px);
    }


    .il37-page-heading{

        text-align:
            left;
    }


    .il37-page-heading h1{

        font-size:
            clamp(
                35px,
                12vw,
                54px
            );
    }


    .il37-story-grid{

        grid-template-columns:
            1fr;

        gap:
            8px;
    }


    .il37-card{

        display:
            grid;

        grid-template-columns:
            118px 1fr;

        min-height:
            116px;
    }


    .il37-card-media{

        height:
            100%;

        min-height:
            116px;
    }


    .il37-card-copy{

        padding:
            10px;
    }


    .il37-card h2{

        font-size:
            16px;
    }


    .il37-404-stories{

        grid-template-columns:
            1fr;
    }


    .il37-related-link-grid{

        grid-template-columns:
            1fr;
    }


    .il37-footer-grid{

        grid-template-columns:
            1fr;
    }


    .il37-site-footer{

        padding:
            18px;

        border-radius:
            22px 6px 22px 6px;
    }


    .il37-footer-bottom{

        display:
            grid;
    }


    .il37-inline-search{

        grid-template-columns:
            1fr;
    }


    .il37-search-dialog form{

        grid-template-columns:
            1fr;
    }
}


@media(prefers-reduced-motion:reduce){

    .il37-card{

        transition:
            none;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.8R
   ========================================================== */


.il38-archive{
    margin:24px 0 72px;
}


.il38-archive-hero{
    max-width:940px;
    margin:0 auto 20px;
    text-align:center;
}


.il38-archive-hero > span{
    display:block;
    margin-bottom:7px;
    color:#247c64;
    font-size:8px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}


.il38-archive-hero h1{
    margin:0;
    font-size:clamp(
        42px,
        7vw,
        84px
    );
    line-height:.92;
    letter-spacing:-.06em;
}


.il38-archive-hero p,
.il38-archive-hero > div{
    max-width:680px;
    margin:13px auto 0;
    color:#6d798c;
    font-size:14px;
    line-height:1.55;
}


.il38-archive-hero small{
    display:inline-flex;
    margin-top:10px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(39,111,209,.065);
    color:#587095;
    font-size:8px;
}


.il38-neighbors{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    margin:0 auto 22px;
    overflow-x:auto;
    scrollbar-width:none;
}


.il38-neighbors::-webkit-scrollbar{
    display:none;
}


.il38-neighbors > span{
    color:#b47e27;
    font-size:7px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}


.il38-neighbors a{
    flex:0 0 auto;
    padding:6px 10px;
    border:1px solid rgba(30,54,87,.07);
    border-radius:999px;
    background:rgba(255,255,255,.8);
    color:#59677c;
    font-size:8px;
    text-decoration:none;
}


.il38-archive-layout{
    display:grid;
    grid-template-columns:
        minmax(0,1fr)
        220px;
    align-items:start;
    gap:13px;
}


.il38-story-stream{
    display:grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );
    gap:10px;
}


.il38-lead{
    grid-column:span 2;
}


.il38-lead .il37-card-media{
    height:335px;
}


.il38-lead h2{
    font-size:clamp(
        27px,
        3vw,
        42px
    );
}


.il38-topic-rail{
    position:sticky;
    top:110px;
    padding:12px;
    border:1px solid rgba(31,55,87,.07);
    border-radius:19px 6px 19px 6px;
    background:rgba(255,255,255,.80);
}


.il38-topic-rail > span{
    color:#b17d2a;
    font-size:7px;
    font-weight:900;
    text-transform:uppercase;
}


.il38-topic-rail > strong{
    display:block;
    margin:4px 0 8px;
    font-size:16px;
}


.il38-topic-rail > a{
    display:flex;
    justify-content:space-between;
    gap:8px;
    padding:8px 4px;
    border-top:1px solid rgba(30,55,88,.05);
    color:#566479;
    font-size:9px;
    text-decoration:none;
}


.il38-topic-rail small{
    color:#a2abb7;
}


.il38-authority-map{
    max-width:1120px;
    margin:35px auto;
    padding:22px;
    border:1px solid rgba(29,54,87,.07);
    border-radius:28px 7px 28px 7px;
    background:
        radial-gradient(
            circle at 2% 4%,
            rgba(35,130,102,.07),
            transparent 27%
        ),
        radial-gradient(
            circle at 97% 96%,
            rgba(39,111,209,.06),
            transparent 27%
        ),
        rgba(255,255,255,.80);
}


.il38-authority-map header > span{
    color:#b27d26;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
}


.il38-authority-map h2{
    margin:4px 0;
    font-size:clamp(
        28px,
        3vw,
        44px
    );
    line-height:.98;
    letter-spacing:-.045em;
}


.il38-authority-map header p{
    margin:0 0 14px;
    color:#748094;
    font-size:11px;
}


.il38-authority-grid{
    display:grid;
    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        );
    gap:7px;
}


.il38-authority-grid a{
    min-height:94px;
    display:grid;
    align-content:start;
    gap:6px;
    padding:12px;
    border:1px solid rgba(31,55,88,.06);
    border-radius:15px;
    background:rgba(255,255,255,.78);
    color:#283448;
    text-decoration:none;
}


.il38-authority-grid time{
    color:#929ca9;
    font-size:7px;
}


.il38-authority-grid strong{
    font-size:12px;
    line-height:1.15;
}


.il38-mobile-nav{
    display:none;
}


@media(max-width:680px){

    body.il37-site{
        padding-bottom:72px;
    }


    .il38-mobile-nav{
        position:fixed;
        z-index:600;
        left:8px;
        right:8px;
        bottom:7px;

        min-height:59px;

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

        padding:5px;

        border:1px solid
            rgba(27,51,83,.10);

        border-radius:19px;

        background:
            rgba(255,255,255,.95);

        box-shadow:
            0 11px 35px
            rgba(25,46,76,.14);
    }


    .il38-mobile-nav a,
    .il38-mobile-nav button{
        display:grid;
        place-items:center;
        align-content:center;
        gap:2px;
        padding:0;
        border:0;
        background:transparent;
        color:#637086;
        font-family:inherit;
        text-decoration:none;
    }


    .il38-mobile-nav span{
        color:#286ed1;
        font-size:18px;
    }


    .il38-mobile-nav small{
        font-size:7px;
        font-weight:750;
    }


    .il38-archive-hero{
        text-align:left;
    }


    .il38-neighbors{
        justify-content:flex-start;
    }


    .il38-archive-layout{
        display:block;
    }


    .il38-topic-rail{
        display:none;
    }


    .il38-story-stream{
        grid-template-columns:1fr;
    }


    .il38-lead{
        grid-column:auto;
    }


    .il38-lead .il37-card-media{
        height:230px;
    }


    .il38-authority-map{
        padding:15px;
    }


    .il38-authority-grid{
        grid-template-columns:1fr 1fr;
    }
}


@media(
    min-width:681px
)
and
(
    max-width:1100px
){

    .il38-archive-layout{
        grid-template-columns:1fr;
    }


    .il38-topic-rail{
        display:none;
    }


    .il38-story-stream{
        grid-template-columns:1fr 1fr;
    }


    .il38-authority-grid{
        grid-template-columns:1fr 1fr;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.9R2
   ========================================================== */

.il39-article-signal{
    width:max-content;
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:0 0 12px;
    padding:6px 10px;
    border-radius:999px;
    font-size:8px;
    font-weight:900;
    letter-spacing:.10em;
    text-transform:uppercase;
}

.il39-article-signal > span{
    width:7px;
    height:7px;
    border-radius:50%;
}

.il39-signal-breaking{
    color:#c93651;
    background:rgba(201,54,81,.08);
}

.il39-signal-breaking > span{
    background:#d53b56;
    box-shadow:
        0 0 0 5px
        rgba(213,59,86,.09);
}

.il39-signal-developing{
    color:#ae7524;
    background:rgba(181,121,35,.09);
}

.il39-signal-developing > span{
    background:#bd8329;
}

.il39-signal-new{
    color:#24775f;
    background:rgba(36,119,95,.08);
}

.il39-signal-new > span{
    background:#278568;
}

.il39-story-timeline{
    max-width:1120px;
    margin:34px auto;
    padding:20px;
    border:
        1px solid
        rgba(30,54,87,.07);
    border-radius:
        27px 7px 27px 7px;
    background:
        rgba(255,255,255,.82);
    content-visibility:auto;
    contain-intrinsic-size:400px;
}

.il39-story-timeline header > span{
    color:#247a62;
    font-size:8px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.il39-story-timeline h2{
    margin:5px 0 16px;
    font-size:clamp(
        27px,
        3vw,
        42px
    );
    line-height:.98;
    letter-spacing:-.045em;
}

.il39-timeline{
    position:relative;
    display:grid;
    gap:4px;
}

.il39-timeline::before{
    content:"";
    position:absolute;
    left:7px;
    top:12px;
    bottom:12px;
    width:1px;
    background:
        rgba(40,111,209,.15);
}

.il39-timeline a{
    position:relative;
    display:grid;
    grid-template-columns:
        105px 1fr;
    gap:12px;
    padding:
        10px
        10px
        10px
        25px;
    border-radius:13px;
    color:#29364a;
    text-decoration:none;
}

.il39-timeline a::before{
    content:"";
    position:absolute;
    left:3px;
    top:15px;
    width:9px;
    height:9px;
    border:2px solid white;
    border-radius:50%;
    background:#2a72ca;
}

.il39-timeline time{
    color:#8a96a5;
    font-size:8px;
}

.il39-timeline strong{
    font-size:12px;
    line-height:1.18;
}

@media(max-width:680px){

    .il39-story-timeline{
        padding:15px;
    }

    .il39-timeline a{
        grid-template-columns:
            76px 1fr;
        gap:8px;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.10
   HOMEPAGE ORCHESTRATION
   ========================================================== */


.il310-home{
    margin:
        18px 0 75px;
}


/* live signal */

.il310-breaking{
    display:grid;
    grid-template-columns:
        auto 1fr;
    align-items:center;
    gap:10px;

    margin-bottom:12px;

    padding:
        7px 9px;

    border:
        1px solid
        rgba(31,54,85,.07);

    border-radius:
        16px;

    background:
        rgba(255,255,255,.80);

    overflow:hidden;
}


.il310-breaking-label{
    display:flex;
    align-items:center;
    gap:6px;

    padding:
        5px 9px;

    border-radius:
        999px;

    background:
        rgba(201,54,81,.08);

    color:
        #c43750;

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        .10em;

    text-transform:
        uppercase;
}


.il310-breaking-label span{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#d83c57;

    box-shadow:
        0 0 0 4px
        rgba(216,60,87,.09);
}


.il310-breaking-track{
    display:flex;
    align-items:center;
    gap:9px;

    overflow-x:auto;

    scrollbar-width:none;
}


.il310-breaking-track::-webkit-scrollbar{
    display:none;
}


.il310-breaking-track a{
    flex:0 0 auto;

    display:flex;
    align-items:center;
    gap:6px;

    max-width:430px;

    color:#3d485b;
    text-decoration:none;
    font-size:9px;
}


.il310-breaking-track strong{
    color:#ba4053;
    font-size:7px;
    text-transform:uppercase;
}


.il310-breaking-track span{
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}


/* hero */

.il310-hero{
    display:grid;

    grid-template-columns:
        minmax(0,1.65fr)
        minmax(280px,.8fr);

    gap:10px;

    align-items:stretch;
}


.il310-lead{
    position:relative;

    min-height:520px;

    overflow:hidden;

    border:
        1px solid
        rgba(31,54,86,.07);

    border-radius:
        30px 8px 30px 8px;

    background:#e9eef4;
}


.il310-lead-image{
    position:absolute;
    inset:0;
}


.il310-lead-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}


.il310-lead::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            rgba(10,20,30,.03) 15%,
            rgba(8,17,27,.18) 45%,
            rgba(7,15,24,.83) 100%
        );

    pointer-events:none;
}


.il310-lead-copy{
    position:absolute;
    z-index:2;

    left:0;
    right:0;
    bottom:0;

    padding:
        clamp(
            20px,
            4vw,
            42px
        );

    color:white;
}


.il310-signal{
    display:inline-flex;

    margin-bottom:8px;

    padding:
        5px 8px;

    border-radius:
        999px;

    background:
        rgba(255,255,255,.16);

    backdrop-filter:
        blur(10px);

    font-size:7px;

    font-weight:900;

    letter-spacing:.10em;

    text-transform:uppercase;
}


.il310-category{
    display:block;

    width:max-content;

    margin-bottom:8px;

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

    font-size:8px;

    font-weight:850;

    text-decoration:none;

    text-transform:uppercase;

    letter-spacing:.09em;
}


.il310-lead h1{
    max-width:900px;

    margin:0;

    font-size:
        clamp(
            40px,
            5vw,
            73px
        );

    line-height:.91;

    letter-spacing:-.057em;
}


.il310-lead h1 a{
    color:white;
    text-decoration:none;
}


.il310-lead p{
    max-width:680px;

    margin:
        14px 0 0;

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

    font-size:13px;

    line-height:1.5;
}


.il310-meta{
    margin-top:12px;

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

    font-size:8px;
}


/* secondary */

.il310-secondary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}


.il310-secondary-card{
    display:block;
}


.il310-secondary-card
.il37-card-media{
    height:150px;
}


.il310-secondary-card
.il37-card-copy{
    padding:10px;
}


.il310-secondary-card h2{
    font-size:16px;
}


/* feed */

.il310-feed-section{
    margin-top:36px;
}


.il310-section-head{
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:15px;

    margin-bottom:13px;
}


.il310-section-head span{
    color:#267c64;

    font-size:8px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}


.il310-section-head h2{
    margin:3px 0 0;

    font-size:
        clamp(
            31px,
            4vw,
            52px
        );

    letter-spacing:-.05em;
    line-height:.95;
}


.il310-section-head > a{
    padding:
        7px 11px;

    border:
        1px solid
        rgba(31,54,86,.08);

    border-radius:
        999px;

    background:white;

    color:#5b687c;

    font-size:8px;

    font-weight:750;

    text-decoration:none;
}


.il310-feed{
    display:grid;

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

    grid-auto-flow:dense;

    gap:9px;
}


.il310-card-wide{
    grid-column:span 2;
}


.il310-card-wide
.il37-card-media{
    height:260px;
}


.il310-card-wide h2{
    font-size:
        clamp(
            24px,
            2.5vw,
            36px
        );
}


.il310-card-tall{
    grid-row:span 2;
}


.il310-card-tall
.il37-card-media{
    height:340px;
}


/* topics */

.il310-topic-board{
    margin-top:42px;

    padding:23px;

    border:
        1px solid
        rgba(30,54,86,.07);

    border-radius:
        29px 8px 29px 8px;

    background:
        linear-gradient(
            135deg,
            rgba(238,246,255,.65),
            rgba(250,247,239,.50)
        );
}


.il310-topic-board header span{
    color:#ae7928;

    font-size:8px;
    font-weight:900;

    letter-spacing:.11em;

    text-transform:uppercase;
}


.il310-topic-board h2{
    margin:4px 0 17px;

    font-size:
        clamp(
            29px,
            4vw,
            48px
        );

    line-height:.96;

    letter-spacing:-.05em;
}


.il310-topic-board > div{
    display:grid;

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

    gap:7px;
}


.il310-topic-board a{
    min-height:74px;

    display:grid;

    align-content:center;

    gap:4px;

    padding:11px;

    border:
        1px solid
        rgba(30,54,86,.06);

    border-radius:15px;

    background:
        rgba(255,255,255,.78);

    color:#293649;

    text-decoration:none;
}


.il310-topic-board strong{
    font-size:13px;
}


.il310-topic-board span{
    color:#919ba9;
    font-size:8px;
}


/* tablet */

@media(max-width:1100px){

    .il310-hero{
        grid-template-columns:1fr;
    }


    .il310-secondary{
        grid-template-columns:
            repeat(
                4,
                1fr
            );
    }


    .il310-feed{
        grid-template-columns:
            repeat(
                2,
                1fr
            );
    }


    .il310-topic-board > div{
        grid-template-columns:
            repeat(
                3,
                1fr
            );
    }
}


/* mobile */

@media(max-width:680px){

    .il310-breaking{
        grid-template-columns:
            auto minmax(0,1fr);
    }


    .il310-lead{
        min-height:470px;

        border-radius:
            22px 6px 22px 6px;
    }


    .il310-lead-copy{
        padding:19px;
    }


    .il310-lead h1{
        font-size:
            clamp(
                36px,
                11vw,
                53px
            );
    }


    .il310-lead p{
        font-size:11px;
    }


    .il310-secondary{
        grid-template-columns:1fr;
    }


    .il310-secondary-card{
        display:grid;

        grid-template-columns:
            118px 1fr;
    }


    .il310-secondary-card
    .il37-card-media{
        height:100%;
        min-height:115px;
    }


    .il310-feed{
        grid-template-columns:1fr;
    }


    .il310-card-wide{
        grid-column:auto;
    }


    .il310-card-wide
    .il37-card-media,
    .il310-card-tall
    .il37-card-media{
        height:220px;
    }


    .il310-card-tall{
        grid-row:auto;
    }


    .il310-topic-board{
        padding:16px;
    }


    .il310-topic-board > div{
        grid-template-columns:
            1fr 1fr;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.11
   EDITORIAL EXPERIENCE
   ========================================================== */

.il311-editorial-experience{
    margin-top:44px;
}

.il311-heading{
    display:grid;
    grid-template-columns:
        minmax(0,1fr)
        minmax(220px,360px);
    gap:20px;
    align-items:end;
    margin-bottom:22px;
}

.il311-heading span,
.il311-lane header span,
.il311-local header span{
    color:#267b65;
    font-size:8px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.il311-heading h2{
    max-width:820px;
    margin:4px 0 0;
    font-size:clamp(
        32px,
        4.5vw,
        58px
    );
    line-height:.94;
    letter-spacing:-.055em;
}

.il311-heading p{
    margin:0;
    color:#788396;
    font-size:11px;
    line-height:1.5;
}

.il311-lane{
    margin-top:28px;
    padding-top:17px;
    border-top:
        1px solid
        rgba(30,54,86,.07);
}

.il311-lane > header{
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:12px;
    margin-bottom:10px;
}

.il311-lane h3{
    margin:2px 0 0;
    font-size:clamp(
        25px,
        3vw,
        38px
    );
    letter-spacing:-.045em;
}

.il311-lane > header > a{
    padding:6px 10px;
    border:
        1px solid
        rgba(30,54,86,.08);
    border-radius:999px;
    background:white;
    color:#657187;
    font-size:8px;
    font-weight:750;
    text-decoration:none;
}

.il311-lane-track{
    display:grid;
    grid-template-columns:
        1.45fr
        repeat(
            4,
            minmax(0,1fr)
        );
    gap:8px;
}

.il311-lane-card{
    overflow:hidden;
    border:
        1px solid
        rgba(31,54,86,.07);
    border-radius:
        17px 5px 17px 5px;
    background:
        rgba(255,255,255,.82);
}

.il311-lane-image{
    display:block;
    height:135px;
    overflow:hidden;
    background:#edf2f6;
}

.il311-lane-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.il311-lane-lead
.il311-lane-image{
    height:245px;
}

.il311-lane-copy{
    padding:10px;
}

.il311-story-signals{
    min-height:18px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:6px;
}

.il311-story-signals span{
    padding:4px 6px;
    border-radius:999px;
    background:
        rgba(38,123,101,.08);
    color:#267b65;
    font-size:6px;
    font-weight:850;
    text-transform:uppercase;
}

.il311-story-signals small{
    color:#a0a8b4;
    font-size:6px;
}

.il311-lane-card h4{
    margin:6px 0 8px;
    font-size:15px;
    line-height:1.08;
    letter-spacing:-.025em;
}

.il311-lane-lead h4{
    font-size:clamp(
        22px,
        2.2vw,
        31px
    );
}

.il311-lane-card h4 a{
    color:#273447;
    text-decoration:none;
}

.il311-lane-card time{
    color:#929ba8;
    font-size:7px;
}


/* LOCAL */

.il311-local{
    margin-top:38px;
    padding:22px;
    border:
        1px solid
        rgba(30,54,86,.07);
    border-radius:
        28px 7px 28px 7px;
    background:
        linear-gradient(
            135deg,
            rgba(244,249,255,.90),
            rgba(250,247,239,.60)
        );
}

.il311-local > header{
    display:grid;
    grid-template-columns:
        1fr auto;
    gap:20px;
    align-items:end;
    margin-bottom:14px;
}

.il311-local h3{
    margin:3px 0 0;
    font-size:clamp(
        28px,
        4vw,
        46px
    );
    line-height:.96;
    letter-spacing:-.05em;
}

.il311-local header p{
    max-width:300px;
    margin:0;
    color:#778396;
    font-size:10px;
}

.il311-local-grid{
    display:grid;
    grid-template-columns:
        repeat(
            3,
            1fr
        );
    gap:7px;
}

.il311-local-grid > a{
    min-height:108px;
    padding:13px;
    border:
        1px solid
        rgba(31,54,86,.06);
    border-radius:15px;
    background:
        rgba(255,255,255,.78);
    color:#293548;
    text-decoration:none;
}

.il311-local-grid > a div{
    display:grid;
    align-content:start;
    gap:6px;
}

.il311-local-grid span{
    width:max-content;
    padding:4px 6px;
    border-radius:999px;
    background:
        rgba(39,111,209,.07);
    color:#4c6f9e;
    font-size:6px;
    font-weight:850;
    text-transform:uppercase;
}

.il311-local-grid strong{
    font-size:14px;
    line-height:1.12;
}

.il311-local-grid small{
    color:#929ba8;
    font-size:7px;
}


/* CLEAN AD BOUNDARY */

.il311-ad-boundary{
    min-height:68px;
    display:grid;
    place-items:center;
    margin-top:30px;
    border:
        1px dashed
        rgba(70,84,105,.18);
    border-radius:16px;
    background:
        rgba(247,249,251,.65);
}

.il311-ad-boundary span{
    color:#a1a8b2;
    font-size:7px;
    letter-spacing:.13em;
    text-transform:uppercase;
}


/* WIDE DESKTOP */

@media(min-width:1350px){

    .il310-feed{
        grid-template-columns:
            repeat(
                5,
                minmax(0,1fr)
            );
    }

    .il311-lane-track{
        grid-template-columns:
            1.55fr
            repeat(
                4,
                minmax(0,1fr)
            );
    }
}


/* TABLET */

@media(max-width:1100px){

    .il311-lane-track{
        grid-template-columns:
            repeat(
                3,
                1fr
            );
    }

    .il311-lane-lead{
        grid-column:span 2;
    }

    .il311-local-grid{
        grid-template-columns:
            1fr 1fr;
    }
}


/* MOBILE SWIPE */

@media(max-width:680px){

    .il311-heading{
        grid-template-columns:1fr;
    }

    .il311-heading p{
        display:none;
    }

    .il311-lane-track{
        display:flex;
        gap:8px;
        overflow-x:auto;
        padding-bottom:5px;
        scroll-snap-type:
            x mandatory;
        scrollbar-width:none;
    }

    .il311-lane-track::-webkit-scrollbar{
        display:none;
    }

    .il311-lane-card{
        flex:
            0 0 68%;
        min-width:0;
        scroll-snap-align:start;
    }

    .il311-lane-lead{
        flex-basis:80%;
    }

    .il311-lane-lead
    .il311-lane-image{
        height:215px;
    }

    .il311-lane-image{
        height:170px;
    }

    .il311-local{
        padding:15px;
    }

    .il311-local > header{
        grid-template-columns:1fr;
    }

    .il311-local header p{
        display:none;
    }

    .il311-local-grid{
        grid-template-columns:1fr;
    }
}


/* ==========================================================
   INSIGHTLINKS V3.12
   PUBLICATION QUALITY
   ========================================================== */


/* breadcrumbs */

.il312-breadcrumbs{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:5px;
    margin:0 0 13px;
    color:#98a1ae;
    font-size:8px;
}

.il312-breadcrumbs a{
    color:#67768b;
    text-decoration:none;
}

.il312-breadcrumbs span[
    aria-current="page"
]{
    color:#a0a8b3;
}


/* ad-density guard */

.il37-site
ins.adsbygoogle,
.il37-site
.wp_insert_ad,
.il37-site
.wp-insert-ad,
.il37-site
[id*="wp_insert"],
.il37-site
[class*="wp_insert_ad"]{
    max-width:100%;
}

.il37-site
article
ins.adsbygoogle
+
ins.adsbygoogle,
.il37-site
article
.wp_insert_ad
+
.wp_insert_ad{
    margin-top:32px !important;
}

.il311-ad-boundary{
    contain:layout;
}


/*
 * Avoid ad blocks visually impersonating
 * editorial cards.
 */

.il311-ad-boundary
img{
    border-radius:0;
}


/*
 * Below-the-fold large surfaces can delay paint
 * without blocking initial layout.
 */

.il311-editorial-experience,
.il310-topic-board,
.il38-authority-map,
.il39-story-timeline{
    content-visibility:auto;
    contain-intrinsic-size:500px;
}


/* mobile */

@media(max-width:680px){

    .il312-breadcrumbs{
        margin-bottom:10px;
        overflow:hidden;
        white-space:nowrap;
    }

}

/* ==========================================================
   INSIGHTLINKS — ACTION UI PHASE 2
   ========================================================== */

:root{
    --il-blue:#155eef;
    --il-blue-dark:#0d47c8;
    --il-blue-soft:#eef4ff;
    --il-ink:#111827;
    --il-muted:#667085;
    --il-line:#e7eaf0;
}


/* STORY CARDS */

.il-story-card,
article.post,
.il310-card,
.il311-story{

    position:relative;

    border-radius:18px;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}


.il-story-card:hover,
.il310-card:hover,
.il311-story:hover{

    transform:translateY(-2px);

    box-shadow:
        0 12px 34px rgba(15,23,42,.08);
}


/* HEADLINES */

.entry-title a,
.il-story-title a,
.il310-card h2 a,
.il310-card h3 a,
.il311-story h3 a{

    color:var(--il-ink);

    font-weight:800;

    letter-spacing:-.025em;

    text-decoration:none;

    transition:color .15s ease;
}


.entry-title a:hover,
.il-story-title a:hover,
.il310-card h2 a:hover,
.il310-card h3 a:hover,
.il311-story h3 a:hover{

    color:var(--il-blue);
}


/* CATEGORY / CONTEXT PILLS */

.cat-links a,
.il-category,
.il311-context-badge{

    display:inline-flex;

    align-items:center;

    min-height:26px;

    padding:5px 10px;

    border-radius:999px;

    background:var(--il-blue-soft);

    color:var(--il-blue);

    font-size:11px;

    font-weight:800;

    line-height:1;

    text-decoration:none;
}


/* PRIMARY ACTION */

.il-action,
.read-more,
.more-link,
.wp-block-button__link{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:7px;

    min-height:40px;

    padding:0 16px;

    border:1px solid transparent;

    border-radius:12px;

    background:var(--il-blue);

    color:#fff !important;

    font-size:12px;

    font-weight:800;

    line-height:1;

    text-decoration:none !important;

    box-shadow:
        0 3px 9px rgba(21,94,239,.18);

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


.il-action:hover,
.read-more:hover,
.more-link:hover,
.wp-block-button__link:hover{

    background:var(--il-blue-dark);

    transform:translateY(-1px);

    box-shadow:
        0 7px 18px rgba(21,94,239,.22);
}


.read-more::after,
.more-link::after{

    content:"→";

    font-size:15px;

    transition:transform .15s ease;
}


.read-more:hover::after,
.more-link:hover::after{

    transform:translateX(3px);
}


/* FOCUS */

a:focus-visible,
button:focus-visible,
input:focus-visible{

    outline:3px solid rgba(21,94,239,.25);

    outline-offset:3px;
}


/* PAGINATION */

.pagination .nav-links{

    display:flex;

    flex-wrap:wrap;

    align-items:center;

    gap:7px;

    margin-top:32px;
}


.pagination .page-numbers{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:40px;

    height:40px;

    padding:0 12px;

    border:1px solid var(--il-line);

    border-radius:11px;

    background:#fff;

    color:#344054;

    font-size:12px;

    font-weight:800;

    text-decoration:none;

    transition:.15s ease;
}


.pagination a.page-numbers:hover{

    border-color:#bfd0ff;

    background:var(--il-blue-soft);

    color:var(--il-blue);
}


.pagination .current{

    border-color:var(--il-blue);

    background:var(--il-blue);

    color:#fff;
}


/* SEARCH */

.search-form{

    display:flex;

    gap:8px;

    align-items:center;
}


.search-form .search-field{

    min-height:44px;

    padding:0 14px;

    border:1px solid var(--il-line);

    border-radius:12px;

    background:#f8fafc;

    color:var(--il-ink);

    font-size:13px;
}


.search-form .search-submit{

    min-height:44px;

    padding:0 17px;

    border:0;

    border-radius:12px;

    background:var(--il-blue);

    color:#fff;

    font-weight:800;

    cursor:pointer;
}


/* DESKTOP NAV */

.il37-site-header a,
.main-navigation a{

    font-weight:750;

    text-decoration:none;
}


/* ARTICLE INLINE LINKS */

.entry-content a:not(.wp-block-button__link){

    color:var(--il-blue);

    font-weight:650;

    text-decoration-thickness:1px;

    text-underline-offset:3px;
}


/* MOBILE */

@media(max-width:720px){

    .il-action,
    .read-more,
    .more-link,
    .wp-block-button__link{

        min-height:44px;

        padding:0 15px;
    }


    .pagination .page-numbers{

        min-width:42px;

        height:42px;
    }


    .search-form{

        width:100%;
    }


    .search-form .search-field{

        flex:1;

        min-width:0;
    }


    .il-story-card,
    .il310-card,
    .il311-story{

        border-radius:15px;
    }

}


/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{

        scroll-behavior:auto !important;

        transition-duration:.01ms !important;

        animation-duration:.01ms !important;
    }

}

/* ==========================================================
   END ACTION UI PHASE 2
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS NAVIGATION PHASE 3
   ========================================================== */


/* HEADER */

.il37-site-header{
    position:sticky;
    top:0;
    z-index:1000;

    background:
        rgba(255,255,255,.88);

    backdrop-filter:
        blur(18px);

    border-bottom:
        1px solid rgba(15,23,42,.06);
}


/* NAV LINKS */

.il37-site-header nav a,
.main-navigation a{

    position:relative;

    display:inline-flex;

    align-items:center;

    min-height:42px;

    padding:
        0 10px;

    border-radius:10px;

    color:#344054;

    font-size:12px;

    font-weight:780;

    text-decoration:none;

    transition:
        background .15s ease,
        color .15s ease;
}


.il37-site-header nav a:hover,
.main-navigation a:hover{

    background:
        rgba(21,94,239,.06);

    color:#155eef;
}


/* ACTIVE */

.il37-site-header
.current-menu-item > a,
.main-navigation
.current-menu-item > a{

    background:
        rgba(21,94,239,.08);

    color:#155eef;

    font-weight:850;
}


/* HEADER ACTION */

.il37-site-header
.search-toggle,
.il37-site-header
.menu-toggle{

    min-width:42px;

    min-height:42px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    border:
        1px solid rgba(15,23,42,.07);

    border-radius:12px;

    background:white;

    color:#344054;

    box-shadow:
        0 2px 7px rgba(15,23,42,.04);
}


/* ARTICLE CTA */

.il-v3-article-cta{

    display:grid;

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

    gap:24px;

    align-items:center;

    margin:
        42px auto 28px;

    padding:
        24px;

    border:
        1px solid rgba(21,94,239,.10);

    border-radius:
        24px 8px 24px 8px;

    background:
        linear-gradient(
            135deg,
            rgba(238,244,255,.95),
            rgba(255,255,255,.95)
        );
}


.il-v3-article-cta > div > span{

    color:#155eef;

    font-size:8px;

    font-weight:900;

    letter-spacing:.12em;

    text-transform:uppercase;
}


.il-v3-article-cta h2{

    margin:
        5px 0 8px;

    font-size:
        clamp(
            28px,
            3vw,
            42px
        );

    line-height:.96;

    letter-spacing:-.045em;
}


.il-v3-article-cta p{

    max-width:620px;

    margin:0;

    color:#667085;

    font-size:11px;

    line-height:1.55;
}


.il-v3-article-cta-actions{

    display:flex;

    align-items:center;

    gap:8px;
}


.il-v3-cta-primary,
.il-v3-cta-secondary{

    min-height:42px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:
        0 15px;

    border-radius:12px;

    font-size:11px;

    font-weight:850;

    text-decoration:none;
}


.il-v3-cta-primary{

    background:#155eef;

    color:white !important;

    box-shadow:
        0 5px 14px rgba(21,94,239,.20);
}


.il-v3-cta-primary:hover{

    background:#0d47c8;
}


.il-v3-cta-secondary{

    border:
        1px solid rgba(21,94,239,.12);

    background:white;

    color:#155eef;
}


/* MOBILE BOTTOM NAV */

.il-v3-mobile-nav{

    display:none;
}


@media(max-width:760px){

    body{

        padding-bottom:
            calc(
                72px
                + env(safe-area-inset-bottom)
            );
    }


    .il-v3-mobile-nav{

        position:fixed;

        z-index:9999;

        left:10px;
        right:10px;

        bottom:
            calc(
                8px
                + env(safe-area-inset-bottom)
            );

        display:grid;

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

        gap:4px;

        padding:
            6px;

        border:
            1px solid rgba(15,23,42,.08);

        border-radius:
            18px;

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

        backdrop-filter:
            blur(20px);

        box-shadow:
            0 12px 32px rgba(15,23,42,.14);
    }


    .il-v3-mobile-nav a{

        min-height:52px;

        display:flex;

        flex-direction:column;

        align-items:center;

        justify-content:center;

        gap:3px;

        border-radius:13px;

        color:#667085;

        font-size:9px;

        font-weight:780;

        text-decoration:none;

        transition:.15s ease;
    }


    .il-v3-mobile-nav a:hover,
    .il-v3-mobile-nav a:active{

        background:
            rgba(21,94,239,.07);

        color:#155eef;
    }


    .il-v3-mobile-nav-icon{

        font-size:17px;

        line-height:1;
    }


    .il-v3-article-cta{

        grid-template-columns:1fr;

        padding:18px;
    }


    .il-v3-article-cta-actions{

        display:grid;

        grid-template-columns:1fr;
    }


    .il-v3-cta-primary,
    .il-v3-cta-secondary{

        min-height:46px;

        width:100%;
    }

}


/* WIDE DESKTOP */

@media(min-width:1400px){

    .il37-site-header nav a,
    .main-navigation a{

        padding:
            0 13px;
    }

}


/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

    .il-v3-mobile-nav a,
    .il-v3-cta-primary,
    .il-v3-cta-secondary{

        transition:none;
    }

}

/* ==========================================================
   END NAVIGATION PHASE 3
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS — TYPOGRAPHY PHASE 4
   EDITORIAL TYPE SYSTEM
   ========================================================== */

:root{

    --il-font-display:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    --il-font-body:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    --il-type-ink:
        #111827;

    --il-type-body:
        #445066;

    --il-type-muted:
        #7b8799;

    --il-type-blue:
        #155eef;

}


/* ----------------------------------------------------------
   GLOBAL TYPE
   ---------------------------------------------------------- */

html{

    font-size:
        16px;

    -webkit-font-smoothing:
        antialiased;

    text-rendering:
        optimizeLegibility;
}


body{

    font-family:
        var(--il-font-body);

    color:
        var(--il-type-body);

    font-size:
        16px;

    line-height:
        1.55;

    letter-spacing:
        -.006em;
}


h1,
h2,
h3,
h4,
h5,
h6{

    font-family:
        var(--il-font-display);

    color:
        var(--il-type-ink);

    font-weight:
        800;

    letter-spacing:
        -.035em;

    text-wrap:
        balance;
}


/* ----------------------------------------------------------
   BRAND
   ---------------------------------------------------------- */

.site-title,
.il-site-title,
.il37-brand-name,
.il-footer-brand strong{

    font-size:
        clamp(
            27px,
            3.2vw,
            42px
        );

    line-height:
        .95;

    font-weight:
        900;

    letter-spacing:
        -.06em;

    color:
        #101828;
}


.site-title a,
.il-site-title a{

    color:
        inherit;

    text-decoration:
        none;
}


/* ----------------------------------------------------------
   BRAND DESCRIPTION
   ---------------------------------------------------------- */

.site-description,
.il-site-description,
.il-footer-brand p{

    max-width:
        570px;

    margin-top:
        10px;

    font-size:
        clamp(
            14px,
            1.3vw,
            17px
        );

    line-height:
        1.55;

    color:
        #667085;

    letter-spacing:
        -.012em;
}


/* ----------------------------------------------------------
   SECTION HEADINGS
   ---------------------------------------------------------- */

.il-footer h2,
.il-footer h3,
.site-footer h2,
.site-footer h3,
.il-footer-section-title{

    margin:
        0 0 14px;

    color:
        #101828;

    font-size:
        12px;

    line-height:
        1;

    font-weight:
        900;

    letter-spacing:
        .10em;

    text-transform:
        uppercase;
}


/* ----------------------------------------------------------
   LATEST STORIES
   ---------------------------------------------------------- */

.il-footer-latest,
.il-latest-links{

    display:
        grid;

    gap:
        8px;
}


.il-footer-latest a,
.il-latest-links a{

    display:
        block;

    padding:
        7px 0;

    color:
        #263348;

    font-size:
        clamp(
            13px,
            1vw,
            15px
        );

    line-height:
        1.3;

    font-weight:
        720;

    letter-spacing:
        -.018em;

    text-decoration:
        none;

    border-bottom:
        1px solid
        rgba(15,23,42,.055);

    transition:
        color .15s ease,
        transform .15s ease;
}


.il-footer-latest a:hover,
.il-latest-links a:hover{

    color:
        var(--il-type-blue);

    transform:
        translateX(3px);
}


/* ----------------------------------------------------------
   TOPICS
   ---------------------------------------------------------- */

.il-footer-topics,
.il-topic-links{

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        7px;
}


.il-footer-topics a,
.il-topic-links a{

    display:
        inline-flex;

    align-items:
        center;

    min-height:
        34px;

    padding:
        0 11px;

    border:
        1px solid
        rgba(15,23,42,.07);

    border-radius:
        999px;

    background:
        rgba(248,250,252,.92);

    color:
        #475467;

    font-size:
        11px;

    font-weight:
        780;

    line-height:
        1;

    text-decoration:
        none;

    transition:
        background .15s ease,
        color .15s ease,
        border-color .15s ease;
}


.il-footer-topics a:hover,
.il-topic-links a:hover{

    border-color:
        rgba(21,94,239,.16);

    background:
        #eef4ff;

    color:
        #155eef;
}


/* ----------------------------------------------------------
   DISCOVER
   ---------------------------------------------------------- */

.il-footer-discover,
.il-discover-links{

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        7px;
}


.il-footer-discover a,
.il-discover-links a{

    display:
        inline-flex;

    align-items:
        center;

    min-height:
        36px;

    padding:
        0 12px;

    border-radius:
        11px;

    background:
        #f6f8fb;

    color:
        #344054;

    font-size:
        11px;

    font-weight:
        800;

    text-decoration:
        none;
}


.il-footer-discover a:hover,
.il-discover-links a:hover{

    background:
        #155eef;

    color:
        white;
}


/* ----------------------------------------------------------
   FOOTER LAYOUT
   ---------------------------------------------------------- */

.site-footer,
.il-footer{

    font-size:
        14px;
}


.il-footer-grid{

    display:
        grid;

    grid-template-columns:
        minmax(250px,1.25fr)
        minmax(280px,1.7fr)
        minmax(220px,1fr)
        minmax(180px,.8fr);

    gap:
        clamp(
            22px,
            4vw,
            58px
        );

    align-items:
        start;
}


/* ----------------------------------------------------------
   COPYRIGHT
   ---------------------------------------------------------- */

.site-info,
.il-footer-bottom{

    margin-top:
        32px;

    padding-top:
        18px;

    border-top:
        1px solid
        rgba(15,23,42,.07);

    color:
        #8a94a5;

    font-size:
        11px;

    line-height:
        1.45;
}


.site-info strong,
.il-footer-bottom strong{

    color:
        #475467;

    font-weight:
        800;
}


/* ----------------------------------------------------------
   ARTICLE HEADLINES
   ---------------------------------------------------------- */

.single-post h1,
.il-article-title{

    max-width:
        980px;

    font-size:
        clamp(
            39px,
            5.5vw,
            76px
        );

    line-height:
        .96;

    letter-spacing:
        -.058em;
}


.entry-content{

    font-size:
        clamp(
            16px,
            1.2vw,
            18px
        );

    line-height:
        1.72;

    color:
        #344054;
}


.entry-content p{

    max-width:
        760px;

    margin-left:
        auto;

    margin-right:
        auto;
}


/* ----------------------------------------------------------
   CARD HEADLINES
   ---------------------------------------------------------- */

.il310-card h2,
.il310-card h3,
.il311-lane-card h4{

    text-wrap:
        pretty;
}


.il310-card h2{

    font-size:
        clamp(
            21px,
            2vw,
            31px
        );

    line-height:
        1.03;
}


.il310-card h3{

    font-size:
        clamp(
            16px,
            1.4vw,
            21px
        );

    line-height:
        1.08;
}


/* ----------------------------------------------------------
   TABLET
   ---------------------------------------------------------- */

@media(max-width:1000px){

    .il-footer-grid{

        grid-template-columns:
            1fr 1fr;

        gap:
            32px 22px;
    }

}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media(max-width:680px){

    html{

        font-size:
            15px;
    }


    body{

        font-size:
            15px;
    }


    .site-title,
    .il-site-title,
    .il37-brand-name,
    .il-footer-brand strong{

        font-size:
            clamp(
                27px,
                9vw,
                36px
            );
    }


    .site-description,
    .il-site-description,
    .il-footer-brand p{

        font-size:
            14px;

        line-height:
            1.48;
    }


    .il-footer-grid{

        grid-template-columns:
            1fr;

        gap:
            30px;
    }


    .il-footer h2,
    .il-footer h3,
    .site-footer h2,
    .site-footer h3{

        font-size:
            11px;

        margin-bottom:
            11px;
    }


    .il-footer-latest a,
    .il-latest-links a{

        padding:
            9px 0;

        font-size:
            14px;

        line-height:
            1.32;
    }


    .il-footer-topics a,
    .il-topic-links a{

        min-height:
            36px;

        font-size:
            11px;
    }


    .single-post h1,
    .il-article-title{

        font-size:
            clamp(
                34px,
                10.5vw,
                52px
            );

        line-height:
            .98;
    }


    .entry-content{

        font-size:
            16px;

        line-height:
            1.68;
    }


    .site-info,
    .il-footer-bottom{

        font-size:
            10px;
    }

}


/* ----------------------------------------------------------
   VERY SMALL DEVICES
   ---------------------------------------------------------- */

@media(max-width:390px){

    .site-title,
    .il-site-title,
    .il37-brand-name{

        font-size:
            29px;
    }


    .il-footer-topics a,
    .il-topic-links a{

        padding:
            0 9px;

        font-size:
            10px;
    }


    .single-post h1,
    .il-article-title{

        font-size:
            34px;
    }

}


/* ==========================================================
   END TYPOGRAPHY PHASE 4
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS V3 FOOTER REBUILD
   ========================================================== */

.il-v3-footer{

    margin-top:
        80px;

    padding:
        54px
        clamp(18px,4vw,52px)
        20px;

    border-top:
        1px solid
        rgba(15,23,42,.07);

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8fafc 100%
        );

    color:
        #344054;
}


.il-v3-footer-shell{

    max-width:
        1440px;

    margin:
        0 auto;

    display:
        grid;

    grid-template-columns:
        minmax(260px,1.15fr)
        minmax(300px,1.65fr)
        minmax(240px,1fr)
        minmax(180px,.75fr);

    gap:
        clamp(
            28px,
            4vw,
            62px
        );
}


/* BRAND */

.il-v3-footer-logo{

    display:
        inline-block;

    color:
        #101828;

    font-size:
        clamp(
            30px,
            3vw,
            44px
        );

    font-weight:
        900;

    line-height:
        .9;

    letter-spacing:
        -.065em;

    text-decoration:
        none;
}


.il-v3-footer-logo span{

    color:
        #155eef;
}


.il-v3-footer-brand h2{

    max-width:
        290px;

    margin:
        18px 0 7px;

    color:
        #1d2939;

    font-size:
        clamp(
            18px,
            1.4vw,
            23px
        );

    line-height:
        1.05;

    letter-spacing:
        -.035em;
}


.il-v3-footer-brand p{

    max-width:
        280px;

    margin:
        0;

    color:
        #7b8797;

    font-size:
        13px;

    line-height:
        1.55;
}


.il-v3-footer-mark{

    display:
        flex;

    gap:
        4px;

    margin-top:
        24px;
}


.il-v3-footer-mark span{

    width:
        22px;

    height:
        4px;

    border-radius:
        999px;

    background:
        #155eef;
}


.il-v3-footer-mark span:nth-child(2){

    width:
        10px;

    background:
        #e5a12b;
}


.il-v3-footer-mark span:nth-child(3){

    width:
        6px;

    background:
        #29a378;
}


/* SECTION HEADER */

.il-v3-footer header{

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    margin-bottom:
        18px;
}


.il-v3-footer header > span{

    display:
        grid;

    place-items:
        center;

    width:
        24px;

    height:
        24px;

    border-radius:
        50%;

    background:
        #eef4ff;

    color:
        #155eef;

    font-size:
        7px;

    font-weight:
        900;
}


.il-v3-footer h3{

    margin:
        0;

    color:
        #101828;

    font-size:
        11px;

    font-weight:
        900;

    letter-spacing:
        .11em;

    text-transform:
        uppercase;
}


/* LATEST */

.il-v3-footer-story-list{

    display:
        grid;
}


.il-v3-footer-story-list a{

    display:
        grid;

    grid-template-columns:
        7px 1fr;

    gap:
        10px;

    align-items:
        start;

    padding:
        9px 0;

    border-bottom:
        1px solid
        rgba(15,23,42,.055);

    color:
        #344054;

    text-decoration:
        none;
}


.il-v3-footer-story-dot{

    width:
        5px;

    height:
        5px;

    margin-top:
        6px;

    border-radius:
        50%;

    background:
        #155eef;
}


.il-v3-footer-story-list strong{

    font-size:
        12px;

    font-weight:
        730;

    line-height:
        1.25;

    letter-spacing:
        -.015em;
}


.il-v3-footer-story-list a:hover strong{

    color:
        #155eef;
}


/* TOPICS */

.il-v3-footer-topic-list{

    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        7px;
}


.il-v3-footer-topic-list a{

    min-height:
        32px;

    display:
        inline-flex;

    align-items:
        center;

    padding:
        0 10px;

    border:
        1px solid
        rgba(15,23,42,.07);

    border-radius:
        999px;

    background:
        #fff;

    color:
        #475467;

    font-size:
        10px;

    font-weight:
        780;

    text-decoration:
        none;
}


.il-v3-footer-topic-list a:hover{

    border-color:
        rgba(21,94,239,.15);

    background:
        #eef4ff;

    color:
        #155eef;
}


/* DISCOVER */

.il-v3-footer-discover nav{

    display:
        grid;

    gap:
        5px;
}


.il-v3-footer-discover nav a{

    min-height:
        39px;

    display:
        flex;

    justify-content:
        space-between;

    align-items:
        center;

    padding:
        0 11px;

    border-radius:
        10px;

    color:
        #344054;

    font-size:
        11px;

    font-weight:
        760;

    text-decoration:
        none;
}


.il-v3-footer-discover nav a:hover{

    background:
        #eef4ff;

    color:
        #155eef;
}


.il-v3-footer-discover nav span{

    opacity:
        .45;
}


/* BOTTOM */

.il-v3-footer-bottom{

    max-width:
        1440px;

    margin:
        42px auto 0;

    padding-top:
        18px;

    border-top:
        1px solid
        rgba(15,23,42,.07);

    display:
        grid;

    grid-template-columns:
        auto 1fr auto;

    gap:
        18px;

    align-items:
        center;

    color:
        #98a2b3;

    font-size:
        10px;
}


.il-v3-footer-bottom span:first-child{

    color:
        #475467;

    font-weight:
        780;
}


.il-v3-footer-bottom a{

    color:
        #667085;

    font-weight:
        730;

    text-decoration:
        none;
}


/* TABLET */

@media(max-width:1050px){

    .il-v3-footer-shell{

        grid-template-columns:
            1fr 1fr;
    }

}


/* MOBILE */

@media(max-width:680px){

    .il-v3-footer{

        margin-top:
            52px;

        padding:
            38px 17px
            calc(
                92px
                + env(safe-area-inset-bottom)
            );
    }


    .il-v3-footer-shell{

        grid-template-columns:
            1fr;

        gap:
            34px;
    }


    .il-v3-footer-logo{

        font-size:
            36px;
    }


    .il-v3-footer-brand h2{

        max-width:
            100%;

        font-size:
            20px;
    }


    .il-v3-footer-brand p{

        max-width:
            330px;

        font-size:
            13px;
    }


    .il-v3-footer-story-list strong{

        font-size:
            13px;

        line-height:
            1.3;
    }


    .il-v3-footer-topic-list a{

        min-height:
            36px;

        padding:
            0 11px;

        font-size:
            11px;
    }


    .il-v3-footer-discover nav{

        grid-template-columns:
            1fr 1fr;

        gap:
            7px;
    }


    .il-v3-footer-discover nav a{

        min-height:
            44px;

        background:
            #f4f7fb;
    }


    .il-v3-footer-bottom{

        margin-top:
            34px;

        grid-template-columns:
            1fr;

        gap:
            7px;

        font-size:
            10px;
    }

}

/* ==========================================================
   END FOOTER REBUILD
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS — CARD RHYTHM PHASE 5
   ========================================================== */

:root{
    --il-card-radius:18px;
    --il-card-gap:10px;
    --il-card-border:rgba(15,23,42,.065);
    --il-card-shadow:0 10px 30px rgba(15,23,42,.055);
    --il-card-shadow-hover:0 18px 42px rgba(15,23,42,.095);
}


/* ----------------------------------------------------------
   UNIVERSAL CARD SURFACE
   ---------------------------------------------------------- */

.il37-card,
.il310-card,
.il311-lane-card,
.il38-authority-card,
.search-results article,
.archive article{

    position:relative;

    overflow:hidden;

    border:
        1px solid
        var(--il-card-border);

    border-radius:
        var(--il-card-radius);

    background:
        rgba(255,255,255,.92);

    box-shadow:
        0 1px 2px rgba(15,23,42,.025);

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}


.il37-card:hover,
.il310-card:hover,
.il311-lane-card:hover,
.il38-authority-card:hover{

    transform:
        translateY(-3px);

    border-color:
        rgba(21,94,239,.12);

    box-shadow:
        var(--il-card-shadow-hover);
}


/* ----------------------------------------------------------
   IMAGE SYSTEM
   ---------------------------------------------------------- */

.il37-card-media,
.il310-card-media,
.il311-lane-image,
.il38-authority-card figure{

    position:relative;

    overflow:hidden;

    background:
        #edf1f5;

    aspect-ratio:
        16 / 10;
}


.il37-card-media img,
.il310-card-media img,
.il311-lane-image img,
.il38-authority-card img{

    width:100%;

    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .35s ease;
}


.il37-card:hover
.il37-card-media img,
.il310-card:hover
.il310-card-media img,
.il311-lane-card:hover
.il311-lane-image img{

    transform:
        scale(1.025);
}


/* ----------------------------------------------------------
   WIDE FEATURE CARD
   ---------------------------------------------------------- */

.il310-card-wide
.il37-card-media{

    aspect-ratio:
        16 / 8.5;
}


.il310-card-wide
.il37-card-copy{

    padding:
        15px;
}


.il310-card-wide h2,
.il310-card-wide h3{

    max-width:
        720px;

    font-size:
        clamp(
            24px,
            2.5vw,
            38px
        );

    line-height:
        .98;

    letter-spacing:
        -.045em;
}


/* ----------------------------------------------------------
   TALL CARD
   ---------------------------------------------------------- */

.il310-card-tall
.il37-card-media{

    aspect-ratio:
        4 / 5;
}


.il310-card-tall h2,
.il310-card-tall h3{

    font-size:
        clamp(
            19px,
            1.8vw,
            27px
        );
}


/* ----------------------------------------------------------
   NORMAL CARD COPY
   ---------------------------------------------------------- */

.il37-card-copy,
.il310-card-copy,
.il311-lane-copy{

    padding:
        12px;
}


.il37-card h2,
.il37-card h3,
.il310-card h2,
.il310-card h3,
.il311-lane-card h4{

    margin:
        5px 0 7px;

    color:
        #172033;

    font-weight:
        820;

    letter-spacing:
        -.027em;

    text-wrap:
        pretty;
}


.il37-card h2,
.il310-card h2{

    font-size:
        clamp(
            18px,
            1.6vw,
            24px
        );

    line-height:
        1.04;
}


.il37-card h3,
.il310-card h3,
.il311-lane-card h4{

    font-size:
        clamp(
            15px,
            1.25vw,
            19px
        );

    line-height:
        1.08;
}


/* ----------------------------------------------------------
   EXCERPTS
   ---------------------------------------------------------- */

.il37-card p,
.il310-card p{

    margin:
        8px 0 0;

    color:
        #667085;

    font-size:
        11px;

    line-height:
        1.48;

    display:
        -webkit-box;

    -webkit-line-clamp:
        3;

    -webkit-box-orient:
        vertical;

    overflow:
        hidden;
}


/* ----------------------------------------------------------
   METADATA
   ---------------------------------------------------------- */

.il37-card-meta,
.il310-meta,
.il311-lane-card time,
.entry-meta{

    color:
        #98a2b3;

    font-size:
        8px;

    font-weight:
        700;

    letter-spacing:
        .015em;
}


.il37-card-meta{

    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:6px;

    margin-top:
        10px;
}


/* ----------------------------------------------------------
   CATEGORY CHIP
   ---------------------------------------------------------- */

.il37-card-category,
.il310-category,
.il311-story-signals span{

    display:inline-flex;

    align-items:center;

    width:max-content;

    min-height:
        24px;

    padding:
        0 8px;

    border-radius:
        999px;

    background:
        rgba(21,94,239,.07);

    color:
        #155eef;

    font-size:
        8px;

    font-weight:
        850;

    text-transform:
        uppercase;

    letter-spacing:
        .06em;
}


/* ----------------------------------------------------------
   HOMEPAGE GRID RHYTHM
   ---------------------------------------------------------- */

.il310-feed{

    gap:
        11px;
}


.il310-feed > *{

    min-width:
        0;
}


/* every fourth normal card gets slightly quieter */

.il310-feed
> article:nth-child(4n)
.il37-card-media{

    aspect-ratio:
        4 / 3;
}


/* ----------------------------------------------------------
   CATEGORY / ARCHIVE
   ---------------------------------------------------------- */

.archive
.il37-feed,
.category
.il37-feed,
.search
.il37-feed{

    display:grid;

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

    gap:
        12px;
}


.archive article,
.search-results article{

    min-width:
        0;
}


/* ----------------------------------------------------------
   RELATED / AUTHORITY
   ---------------------------------------------------------- */

.il38-authority-grid{

    display:grid;

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

    gap:
        9px;
}


.il38-authority-card{

    min-width:
        0;
}


.il38-authority-card h3{

    margin:
        8px 10px 12px;

    font-size:
        14px;

    line-height:
        1.08;

    letter-spacing:
        -.025em;
}


/* ----------------------------------------------------------
   DESKTOP 1440+
   ---------------------------------------------------------- */

@media(min-width:1400px){

    .il310-feed{

        gap:
            12px;
    }


    .il310-feed{

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


    .archive
    .il37-feed,
    .category
    .il37-feed,
    .search
    .il37-feed{

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

}


/* ----------------------------------------------------------
   TABLET
   ---------------------------------------------------------- */

@media(max-width:1100px){

    .archive
    .il37-feed,
    .category
    .il37-feed,
    .search
    .il37-feed{

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


    .il38-authority-grid{

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

}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media(max-width:680px){

    :root{

        --il-card-radius:
            15px;
    }


    .il310-feed,
    .archive .il37-feed,
    .category .il37-feed,
    .search .il37-feed{

        grid-template-columns:
            1fr;

        gap:
            10px;
    }


    .il37-card,
    .il310-card{

        display:grid;

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

        align-items:
            stretch;

        min-height:
            118px;
    }


    .il37-card-media,
    .il310-card-media{

        height:
            100%;

        min-height:
            118px;

        aspect-ratio:
            auto;

        border-radius:
            0;
    }


    .il37-card-copy,
    .il310-card-copy{

        padding:
            10px;
    }


    .il37-card h2,
    .il37-card h3,
    .il310-card h2,
    .il310-card h3{

        margin:
            3px 0 5px;

        font-size:
            15px;

        line-height:
            1.08;
    }


    .il37-card p,
    .il310-card p{

        display:none;
    }


    /*
     * Feature cards remain cinematic on mobile.
     */

    .il310-card-wide,
    .il310-card-tall{

        display:block;

        min-height:
            0;
    }


    .il310-card-wide
    .il37-card-media,
    .il310-card-tall
    .il37-card-media{

        height:
            auto;

        aspect-ratio:
            16 / 10;
    }


    .il310-card-wide h2,
    .il310-card-wide h3{

        font-size:
            24px;

        line-height:
            1;
    }


    .il38-authority-grid{

        display:flex;

        overflow-x:auto;

        gap:
            8px;

        padding-bottom:
            5px;

        scroll-snap-type:
            x mandatory;

        scrollbar-width:
            none;
    }


    .il38-authority-grid::-webkit-scrollbar{

        display:none;
    }


    .il38-authority-card{

        flex:
            0 0 72%;

        scroll-snap-align:
            start;
    }

}


/* ----------------------------------------------------------
   SMALL PHONE
   ---------------------------------------------------------- */

@media(max-width:390px){

    .il37-card,
    .il310-card{

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


    .il37-card-media,
    .il310-card-media{

        min-height:
            108px;
    }


    .il37-card h2,
    .il37-card h3,
    .il310-card h2,
    .il310-card h3{

        font-size:
            14px;
    }

}


/* ----------------------------------------------------------
   REDUCED MOTION
   ---------------------------------------------------------- */

@media(prefers-reduced-motion:reduce){

    .il37-card,
    .il310-card,
    .il311-lane-card,
    .il37-card img,
    .il310-card img{

        transform:none !important;

        transition:none !important;
    }

}

/* ==========================================================
   END CARD RHYTHM PHASE 5
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS ARTICLE PHASE 6
   ========================================================== */


/* READING PROGRESS */

.il-v3-reading-progress{

    position:fixed;

    z-index:99999;

    top:0;
    left:0;
    right:0;

    height:3px;

    pointer-events:none;

    background:
        transparent;
}


.il-v3-reading-progress span{

    display:block;

    width:0;

    height:100%;

    background:
        linear-gradient(
            90deg,
            #155eef,
            #31a27c
        );

    transition:
        width .08s linear;
}


/* ARTICLE TITLE */

.single-post h1,
.il-article-title{

    max-width:
        1040px;

    margin-left:
        auto;

    margin-right:
        auto;

    font-size:
        clamp(
            42px,
            5.6vw,
            78px
        );

    line-height:
        .95;

    letter-spacing:
        -.06em;

    font-weight:
        900;

    text-wrap:
        balance;
}


/* ARTICLE META */

.single-post .entry-meta,
.il-article-meta{

    max-width:
        760px;

    margin:
        18px auto 26px;

    display:flex;

    flex-wrap:wrap;

    gap:
        8px 14px;

    color:
        #8791a1;

    font-size:
        10px;

    font-weight:
        700;
}


/* FEATURE IMAGE */

.single-post
.post-thumbnail,
.il-article-hero{

    max-width:
        1180px;

    margin:
        28px auto 34px;

    overflow:hidden;

    border-radius:
        26px 8px 26px 8px;

    background:
        #eef2f6;
}


.single-post
.post-thumbnail img,
.il-article-hero img{

    width:
        100%;

    height:
        auto;

    display:block;
}


/* CONTENT COLUMN */

.single-post
.entry-content,
.il-article-content{

    max-width:
        760px;

    margin-left:
        auto;

    margin-right:
        auto;

    color:
        #344054;

    font-size:
        clamp(
            17px,
            1.25vw,
            19px
        );

    line-height:
        1.78;

    letter-spacing:
        -.008em;
}


/* PARAGRAPHS */

.single-post
.entry-content p{

    margin:
        0 0 1.45em;
}


/* ARTICLE SUBHEADINGS */

.single-post
.entry-content h2{

    margin:
        2.1em 0 .7em;

    font-size:
        clamp(
            29px,
            3vw,
            42px
        );

    line-height:
        1;

    letter-spacing:
        -.045em;
}


.single-post
.entry-content h3{

    margin:
        1.8em 0 .65em;

    font-size:
        clamp(
            23px,
            2.4vw,
            31px
        );

    line-height:
        1.05;

    letter-spacing:
        -.035em;
}


/* LINKS */

.single-post
.entry-content a{

    color:
        #155eef;

    font-weight:
        670;

    text-decoration:
        underline;

    text-decoration-thickness:
        1px;

    text-underline-offset:
        3px;
}


/* BLOCKQUOTE */

.single-post
.entry-content blockquote{

    position:relative;

    margin:
        2em 0;

    padding:
        20px 22px 20px 26px;

    border-left:
        4px solid #155eef;

    border-radius:
        0 14px 14px 0;

    background:
        #f6f9ff;

    color:
        #24324a;

    font-size:
        clamp(
            20px,
            2vw,
            27px
        );

    line-height:
        1.35;

    font-weight:
        730;

    letter-spacing:
        -.025em;
}


/* FIGURES + CAPTIONS */

.single-post
.entry-content figure{

    margin:
        2em auto;
}


.single-post
.entry-content figure img{

    border-radius:
        16px;

    display:block;

    width:
        100%;

    height:
        auto;
}


.single-post
.entry-content figcaption{

    margin-top:
        8px;

    color:
        #8a94a4;

    font-size:
        10px;

    line-height:
        1.45;

    text-align:
        left;
}


/* LISTS */

.single-post
.entry-content ul,
.single-post
.entry-content ol{

    margin:
        1.4em 0;

    padding-left:
        1.3em;
}


.single-post
.entry-content li{

    margin-bottom:
        .55em;
}


/* ARTICLE TOOLS */

.il-v3-article-tools{

    max-width:
        760px;

    margin:
        42px auto 0;

    padding:
        17px 0;

    border-top:
        1px solid rgba(15,23,42,.07);

    border-bottom:
        1px solid rgba(15,23,42,.07);

    display:grid;

    grid-template-columns:
        1fr auto;

    align-items:center;

    gap:20px;
}


.il-v3-article-tools-meta{

    display:grid;

    gap:3px;
}


.il-v3-article-tools-meta span,
.il-v3-share > span{

    color:
        #98a2b3;

    font-size:
        7px;

    font-weight:
        900;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;
}


.il-v3-article-tools-meta strong{

    color:
        #344054;

    font-size:
        12px;

    font-weight:
        800;
}


/* SHARE */

.il-v3-share{

    display:flex;

    align-items:center;

    gap:6px;
}


.il-v3-share a,
.il-v3-copy-link{

    min-height:
        34px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:
        0 10px;

    border:
        1px solid
        rgba(15,23,42,.08);

    border-radius:
        10px;

    background:
        white;

    color:
        #475467;

    font-size:
        9px;

    font-weight:
        800;

    text-decoration:
        none;

    cursor:
        pointer;
}


.il-v3-share a:hover,
.il-v3-copy-link:hover{

    border-color:
        rgba(21,94,239,.18);

    background:
        #eef4ff;

    color:
        #155eef;
}


/* PREVIOUS / NEXT */

.il-v3-story-navigation{

    max-width:
        980px;

    margin:
        42px auto;

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:
        10px;
}


.il-v3-story-prev,
.il-v3-story-next{

    min-height:
        120px;

    padding:
        17px;

    border:
        1px solid
        rgba(15,23,42,.07);

    border-radius:
        17px;

    background:
        #fff;

    display:grid;

    align-content:center;

    gap:6px;
}


.il-v3-story-next{

    text-align:
        right;
}


.il-v3-story-navigation span{

    color:
        #98a2b3;

    font-size:
        7px;

    font-weight:
        900;

    letter-spacing:
        .10em;

    text-transform:
        uppercase;
}


.il-v3-story-navigation a{

    color:
        #253248;

    font-size:
        clamp(
            15px,
            1.4vw,
            20px
        );

    font-weight:
        820;

    line-height:
        1.12;

    letter-spacing:
        -.025em;

    text-decoration:
        none;
}


.il-v3-story-navigation a:hover{

    color:
        #155eef;
}


/* TABLET */

@media(max-width:900px){

    .single-post h1,
    .il-article-title{

        font-size:
            clamp(
                38px,
                7vw,
                60px
            );
    }

}


/* MOBILE */

@media(max-width:680px){

    .single-post h1,
    .il-article-title{

        font-size:
            clamp(
                34px,
                10.5vw,
                50px
            );

        line-height:
            .98;

        letter-spacing:
            -.05em;
    }


    .single-post
    .entry-content,
    .il-article-content{

        font-size:
            16px;

        line-height:
            1.7;
    }


    .single-post
    .post-thumbnail,
    .il-article-hero{

        margin:
            20px -8px 28px;

        border-radius:
            18px;
    }


    .single-post
    .entry-content blockquote{

        margin:
            1.7em 0;

        padding:
            17px;

        font-size:
            20px;
    }


    .il-v3-article-tools{

        grid-template-columns:
            1fr;

        gap:
            14px;
    }


    .il-v3-share{

        flex-wrap:
            wrap;
    }


    .il-v3-share a,
    .il-v3-copy-link{

        min-height:
            40px;

        padding:
            0 12px;
    }


    .il-v3-story-navigation{

        grid-template-columns:
            1fr;

        gap:
            8px;
    }


    .il-v3-story-next{

        text-align:
            left;
    }


    .il-v3-story-prev,
    .il-v3-story-next{

        min-height:
            100px;
    }

}


/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

    .il-v3-reading-progress span{

        transition:none;
    }

}

/* ==========================================================
   END ARTICLE PHASE 6
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS V3 — PHASE 7
   FINAL VISUAL CONSISTENCY
   ========================================================== */

:root{

    --il-shell:
        1480px;

    --il-reading:
        760px;

    --il-space-1:
        6px;

    --il-space-2:
        10px;

    --il-space-3:
        14px;

    --il-space-4:
        18px;

    --il-space-5:
        24px;

    --il-space-6:
        32px;

    --il-space-7:
        44px;

    --il-space-8:
        64px;

    --il-radius-sm:
        10px;

    --il-radius-md:
        16px;

    --il-radius-lg:
        24px;

    --il-line:
        rgba(15,23,42,.07);

    --il-shadow-soft:
        0 8px 28px rgba(15,23,42,.055);

    --il-shadow-hover:
        0 18px 44px rgba(15,23,42,.09);

}


/* ----------------------------------------------------------
   GLOBAL SHELL
   ---------------------------------------------------------- */

.il37-shell,
.il310-home,
.il311-editorial-experience,
.il-v3-footer-shell,
.il-v3-footer-bottom,
.site-main{

    width:
        min(
            calc(100% - 32px),
            var(--il-shell)
        );

    margin-left:
        auto;

    margin-right:
        auto;
}


/* ----------------------------------------------------------
   SECTION RHYTHM
   ---------------------------------------------------------- */

.il310-feed-section,
.il311-editorial-experience,
.il310-topic-board,
.il38-authority-map,
.il39-story-timeline{

    margin-top:
        clamp(
            34px,
            5vw,
            64px
        );
}


section + section{

    scroll-margin-top:
        90px;
}


/* ----------------------------------------------------------
   CONSISTENT SURFACES
   ---------------------------------------------------------- */

.il37-card,
.il311-lane-card,
.il310-topic-board,
.il311-local,
.il38-authority-card,
.il-v3-article-cta,
.il-v3-story-prev,
.il-v3-story-next{

    border:
        1px solid
        var(--il-line);

    box-shadow:
        var(--il-shadow-soft);
}


.il37-card:hover,
.il311-lane-card:hover,
.il38-authority-card:hover{

    box-shadow:
        var(--il-shadow-hover);
}


/* ----------------------------------------------------------
   IMAGE CONSISTENCY
   ---------------------------------------------------------- */

img{

    max-width:
        100%;
}


.il37-card img,
.il311-lane-card img,
.il38-authority-card img,
.single-post figure img{

    background:
        #edf1f5;
}


/* ----------------------------------------------------------
   HEADER
   ---------------------------------------------------------- */

.il37-site-header{

    border-bottom:
        1px solid
        var(--il-line);

    box-shadow:
        0 1px 0 rgba(15,23,42,.025);
}


.il37-site-header > div{

    width:
        min(
            calc(100% - 32px),
            var(--il-shell)
        );

    margin:
        0 auto;
}


/* ----------------------------------------------------------
   PAGE HEADERS
   ---------------------------------------------------------- */

.archive h1,
.search h1,
.error404 h1{

    margin-bottom:
        var(--il-space-5);

    font-size:
        clamp(
            34px,
            5vw,
            62px
        );

    line-height:
        .96;

    letter-spacing:
        -.055em;
}


/* ----------------------------------------------------------
   ARTICLE
   ---------------------------------------------------------- */

.single-post
.entry-content{

    max-width:
        var(--il-reading);
}


.single-post
.entry-content > * + *{

    margin-top:
        1.15em;
}


/* ----------------------------------------------------------
   CATEGORY / SEARCH RHYTHM
   ---------------------------------------------------------- */

.archive .site-main,
.search .site-main{

    padding-top:
        clamp(
            24px,
            4vw,
            48px
        );

    padding-bottom:
        70px;
}


/* ----------------------------------------------------------
   404
   ---------------------------------------------------------- */

.error404
.site-main{

    min-height:
        55vh;

    display:
        grid;

    align-content:
        center;

    text-align:
        center;
}


.error404
.search-form{

    max-width:
        520px;

    margin:
        20px auto 0;
}


/* ----------------------------------------------------------
   FOOTER SPACING
   ---------------------------------------------------------- */

.il-v3-footer{

    margin-top:
        clamp(
            60px,
            8vw,
            100px
        );
}


/* ----------------------------------------------------------
   LINK INTERACTION
   ---------------------------------------------------------- */

a{

    text-underline-offset:
        3px;
}


a,
button{

    -webkit-tap-highlight-color:
        transparent;
}


/* ----------------------------------------------------------
   PERFORMANCE-FRIENDLY OFFSCREEN RENDERING
   ---------------------------------------------------------- */

.il311-editorial-experience,
.il310-topic-board,
.il38-authority-map,
.il-v3-footer{

    content-visibility:
        auto;

    contain-intrinsic-size:
        500px;
}


/* ----------------------------------------------------------
   TABLET
   ---------------------------------------------------------- */

@media(max-width:1000px){

    .il37-shell,
    .il310-home,
    .il311-editorial-experience,
    .il-v3-footer-shell,
    .il-v3-footer-bottom,
    .site-main{

        width:
            min(
                calc(100% - 26px),
                var(--il-shell)
            );
    }

}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media(max-width:680px){

    :root{

        --il-radius-md:
            14px;

        --il-radius-lg:
            18px;
    }


    .il37-shell,
    .il310-home,
    .il311-editorial-experience,
    .il-v3-footer-shell,
    .il-v3-footer-bottom,
    .site-main{

        width:
            calc(100% - 20px);
    }


    body{

        overflow-x:
            hidden;
    }


    .il37-site-header{

        backdrop-filter:
            blur(14px);
    }


    .archive .site-main,
    .search .site-main{

        padding-top:
            22px;
    }


    .error404
    .site-main{

        min-height:
            45vh;
    }

}


/* ----------------------------------------------------------
   VERY SMALL DEVICES
   ---------------------------------------------------------- */

@media(max-width:390px){

    .il37-shell,
    .il310-home,
    .il311-editorial-experience,
    .il-v3-footer-shell,
    .il-v3-footer-bottom,
    .site-main{

        width:
            calc(100% - 16px);
    }

}


/* ----------------------------------------------------------
   MOTION
   ---------------------------------------------------------- */

@media(prefers-reduced-motion:reduce){

    html{

        scroll-behavior:
            auto;
    }


    *,
    *::before,
    *::after{

        animation-duration:
            .01ms !important;

        animation-iteration-count:
            1 !important;

        transition-duration:
            .01ms !important;
    }

}

/* ==========================================================
   END PHASE 7
   ========================================================== */


/* ==========================================================
   INSIGHTLINKS V3 — PHASE 8B FINAL DESIGN LAYER
   AUTHORITATIVE VISUAL TOKENS
   ========================================================== */

:root{

    --il-shell:1480px;
    --il-reading:760px;

    --il-blue:#155eef;
    --il-blue-dark:#0d47c8;
    --il-blue-soft:#eef4ff;

    --il-ink:#101828;
    --il-body:#344054;
    --il-muted:#667085;
    --il-faint:#98a2b3;

    --il-surface:#ffffff;
    --il-surface-soft:#f8fafc;

    --il-line:rgba(15,23,42,.07);

    --il-radius-sm:10px;
    --il-radius-md:16px;
    --il-radius-lg:24px;

    --il-shadow-soft:
        0 8px 28px rgba(15,23,42,.055);

    --il-shadow-hover:
        0 18px 44px rgba(15,23,42,.09);

}


/* GLOBAL */

html{
    font-size:16px;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}


body{
    margin:0;
    color:var(--il-body);
    background:#fff;

    font-family:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    font-size:16px;
    line-height:1.55;

    overflow-x:hidden;
}


a{
    text-underline-offset:3px;
}


img{
    max-width:100%;
    height:auto;
}


/* MASTER SHELL */

.il37-shell,
.il310-home,
.il311-editorial-experience,
.site-main,
.il-v3-footer-shell,
.il-v3-footer-bottom{

    width:min(
        calc(100% - 32px),
        var(--il-shell)
    );

    margin-left:auto;
    margin-right:auto;
}


/* HEADER */

.il37-site-header{

    position:sticky;
    top:0;
    z-index:1000;

    background:
        rgba(255,255,255,.92);

    backdrop-filter:
        blur(16px);

    border-bottom:
        1px solid var(--il-line);

    box-shadow:
        0 1px 0 rgba(15,23,42,.025);
}


.il37-site-header nav a,
.main-navigation a{

    min-height:42px;

    display:inline-flex;
    align-items:center;

    padding:0 11px;

    border-radius:10px;

    color:#344054;

    font-size:12px;
    font-weight:780;

    text-decoration:none;
}


.il37-site-header nav a:hover,
.main-navigation a:hover{

    background:
        rgba(21,94,239,.06);

    color:var(--il-blue);
}


/* TYPOGRAPHY */

h1,
h2,
h3,
h4,
h5,
h6{

    color:var(--il-ink);

    font-weight:820;

    letter-spacing:-.035em;

    text-wrap:balance;
}


.site-title,
.il-site-title,
.il37-brand-name{

    font-size:
        clamp(
            28px,
            3vw,
            42px
        );

    line-height:.95;

    font-weight:900;

    letter-spacing:-.06em;
}


/* ACTIONS */

button,
input[type="submit"],
.wp-block-button__link,
.read-more,
.more-link,
.il-action{

    min-height:40px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    gap:7px;

    padding:0 16px;

    border:1px solid transparent;

    border-radius:12px;

    background:var(--il-blue);

    color:#fff !important;

    font-size:12px;
    font-weight:800;

    text-decoration:none !important;

    box-shadow:
        0 3px 9px rgba(21,94,239,.18);

    cursor:pointer;

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


button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover,
.read-more:hover,
.more-link:hover,
.il-action:hover{

    background:var(--il-blue-dark);

    transform:translateY(-1px);

    box-shadow:
        0 7px 18px rgba(21,94,239,.22);
}


/* CARDS */

.il37-card,
.il310-card,
.il311-lane-card,
.il38-authority-card{

    position:relative;

    min-width:0;

    overflow:hidden;

    border:
        1px solid var(--il-line);

    border-radius:
        var(--il-radius-md);

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

    box-shadow:
        var(--il-shadow-soft);

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}


.il37-card:hover,
.il310-card:hover,
.il311-lane-card:hover,
.il38-authority-card:hover{

    transform:translateY(-2px);

    border-color:
        rgba(21,94,239,.12);

    box-shadow:
        var(--il-shadow-hover);
}


/* CARD IMAGES */

.il37-card-media,
.il310-card-media,
.il311-lane-image{

    position:relative;

    overflow:hidden;

    aspect-ratio:16 / 10;

    background:#edf1f5;
}


.il37-card-media img,
.il310-card-media img,
.il311-lane-image img{

    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
}


/* CARD COPY */

.il37-card-copy,
.il310-card-copy,
.il311-lane-copy{

    padding:12px;
}


.il37-card h2,
.il37-card h3,
.il310-card h2,
.il310-card h3,
.il311-lane-card h4{

    margin:5px 0 7px;

    color:#172033;

    font-weight:820;

    letter-spacing:-.027em;

    text-wrap:pretty;
}


/* HOME GRID */

.il310-feed{

    display:grid;

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

    gap:11px;
}


.il310-card-wide{
    grid-column:span 2;
}


/* EDITORIAL LANES */

.il311-lane-track{

    display:grid;

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

    gap:8px;
}


/* ARTICLE */

.single-post h1,
.il-article-title{

    max-width:1040px;

    margin-left:auto;
    margin-right:auto;

    font-size:
        clamp(
            42px,
            5.6vw,
            78px
        );

    line-height:.95;

    letter-spacing:-.06em;

    font-weight:900;
}


.single-post .entry-content,
.il-article-content{

    max-width:var(--il-reading);

    margin-left:auto;
    margin-right:auto;

    font-size:
        clamp(
            17px,
            1.25vw,
            19px
        );

    line-height:1.76;

    color:#344054;
}


.single-post
.entry-content p{

    margin-bottom:1.45em;
}


/* ARTICLE LINKS */

.single-post
.entry-content a{

    color:var(--il-blue);

    font-weight:670;

    text-decoration-thickness:1px;
}


/* BLOCKQUOTE */

.single-post
.entry-content blockquote{

    margin:2em 0;

    padding:
        20px 22px 20px 26px;

    border-left:
        4px solid var(--il-blue);

    border-radius:
        0 14px 14px 0;

    background:#f6f9ff;

    font-size:
        clamp(
            20px,
            2vw,
            27px
        );

    line-height:1.35;

    font-weight:730;
}


/* PAGINATION */

.pagination .nav-links{

    display:flex;

    flex-wrap:wrap;

    gap:7px;

    margin-top:32px;
}


.pagination .page-numbers{

    min-width:40px;
    height:40px;

    display:inline-flex;

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

    padding:0 12px;

    border:
        1px solid var(--il-line);

    border-radius:11px;

    background:#fff;

    color:#344054;

    font-size:12px;
    font-weight:800;

    text-decoration:none;
}


.pagination .current{

    border-color:var(--il-blue);

    background:var(--il-blue);

    color:white;
}


/* FOOTER */

.il-v3-footer{

    margin-top:
        clamp(
            60px,
            8vw,
            100px
        );

    padding:
        54px
        clamp(18px,4vw,52px)
        20px;

    border-top:
        1px solid var(--il-line);

    background:
        linear-gradient(
            180deg,
            #fff,
            #f8fafc
        );
}


.il-v3-footer-shell{

    display:grid;

    grid-template-columns:
        minmax(260px,1.15fr)
        minmax(300px,1.65fr)
        minmax(240px,1fr)
        minmax(180px,.75fr);

    gap:
        clamp(
            28px,
            4vw,
            62px
        );
}


.il-v3-footer-logo{

    color:#101828;

    font-size:
        clamp(
            30px,
            3vw,
            44px
        );

    font-weight:900;

    line-height:.9;

    letter-spacing:-.065em;

    text-decoration:none;
}


.il-v3-footer-logo span{
    color:var(--il-blue);
}


/* TOPIC PILLS */

.il-v3-footer-topic-list{

    display:flex;

    flex-wrap:wrap;

    gap:7px;
}


.il-v3-footer-topic-list a{

    min-height:32px;

    display:inline-flex;

    align-items:center;

    padding:0 10px;

    border:
        1px solid var(--il-line);

    border-radius:999px;

    background:#fff;

    color:#475467;

    font-size:10px;
    font-weight:780;

    text-decoration:none;
}


/* MOBILE NAV */

.il-v3-mobile-nav{
    display:none;
}


/* PERFORMANCE */

.il311-editorial-experience,
.il310-topic-board,
.il38-authority-map,
.il-v3-footer{

    content-visibility:auto;

    contain-intrinsic-size:500px;
}


/* WIDE DESKTOP */

@media(min-width:1400px){

    .il310-feed{

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

}


/* TABLET */

@media(max-width:1050px){

    .il-v3-footer-shell{

        grid-template-columns:
            1fr 1fr;
    }


    .il311-lane-track{

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

}


/* MOBILE */

@media(max-width:680px){

    body{

        padding-bottom:
            calc(
                72px
                + env(safe-area-inset-bottom)
            );
    }


    .il37-shell,
    .il310-home,
    .il311-editorial-experience,
    .site-main,
    .il-v3-footer-shell,
    .il-v3-footer-bottom{

        width:
            calc(100% - 20px);
    }


    .il310-feed{

        grid-template-columns:1fr;
    }


    .il37-card,
    .il310-card{

        display:grid;

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

        min-height:118px;
    }


    .il37-card-media,
    .il310-card-media{

        height:100%;

        min-height:118px;

        aspect-ratio:auto;
    }


    .il310-card-wide,
    .il310-card-tall{

        display:block;
    }


    .il310-card-wide
    .il37-card-media,
    .il310-card-tall
    .il37-card-media{

        height:auto;

        aspect-ratio:16 / 10;
    }


    .il311-lane-track{

        display:flex;

        overflow-x:auto;

        gap:8px;

        scroll-snap-type:
            x mandatory;

        scrollbar-width:none;
    }


    .il311-lane-card{

        flex:
            0 0 68%;

        scroll-snap-align:start;
    }


    .il-v3-mobile-nav{

        position:fixed;

        z-index:9999;

        left:10px;
        right:10px;

        bottom:
            calc(
                8px
                + env(safe-area-inset-bottom)
            );

        display:grid;

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

        gap:4px;

        padding:6px;

        border:
            1px solid var(--il-line);

        border-radius:18px;

        background:
            rgba(255,255,255,.95);

        backdrop-filter:
            blur(18px);

        box-shadow:
            0 12px 32px rgba(15,23,42,.14);
    }


    .il-v3-footer-shell{

        grid-template-columns:1fr;

        gap:34px;
    }


    .single-post h1,
    .il-article-title{

        font-size:
            clamp(
                34px,
                10.5vw,
                50px
            );

        line-height:.98;
    }


    .single-post .entry-content,
    .il-article-content{

        font-size:16px;

        line-height:1.7;
    }

}


/* SMALL DEVICES */

@media(max-width:390px){

    .il37-card,
    .il310-card{

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

}


/* REDUCED MOTION */

@media(prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{

        animation-duration:
            .01ms !important;

        animation-iteration-count:
            1 !important;

        transition-duration:
            .01ms !important;
    }

}


/* ==========================================================
   END PHASE 8B FINAL DESIGN LAYER
   ========================================================== */
