/* ==========================================================
   01 • VARIABLES
========================================================== */

:root {

    /* ======================================================
       BRAND
    ====================================================== */
color-scheme:light;
    --color-brand-900:#0F172A;
    --color-brand-800:#16213B;
    --color-brand-700:#1E3A5F;
    --color-brand-600:#2563EB;
    --color-brand-500:#3B82F6;

    /* ======================================================
       SURFACE
    ====================================================== */

    --color-surface-primary:#FFFFFF;
    --color-surface-secondary:#F8FAFC;
    --color-surface-tertiary:#EEF2F7;

    /* ======================================================
       BACKGROUND
    ====================================================== */

    --color-page:#FFFFFF;
    --color-section:#F8FAFC;
    --color-soft:#F3F6FA;

    /* ======================================================
       TEXT
    ====================================================== */

    --color-text:#0F172A;
    --color-text-light:#475569;
    --color-text-muted:#64748B;
    --color-text-white:#FFFFFF;

    /* ======================================================
       STATUS
    ====================================================== */

    --color-success:#16A34A;
    --color-warning:#D97706;
    --color-danger:#DC2626;
    --color-info:#2563EB;

    /* ======================================================
       BORDER
    ====================================================== */

    --color-border:#E2E8F0;
    --color-border-light:#EDF2F7;
    --color-border-strong:#CBD5E1;

    /* ======================================================
       SHADOW
    ====================================================== */

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

    --shadow-sm:0 8px 24px rgba(15,23,42,.06);

    --shadow-md:0 18px 40px rgba(15,23,42,.08);

    --shadow-lg:0 32px 70px rgba(15,23,42,.12);

    /* ======================================================
       RADIUS
    ====================================================== */

    --radius-xs:4px;
    --radius-sm:8px;
    --radius-md:12px;
    --radius-lg:18px;
    --radius-xl:24px;
    --radius-pill:999px;

    /* ======================================================
       SPACING
    ====================================================== */

    --space-4:.25rem;
    --space-8:.50rem;
    --space-12:.75rem;
    --space-16:1rem;
    --space-20:1.25rem;
    --space-24:1.5rem;
    --space-32:2rem;
    --space-40:2.5rem;
    --space-48:3rem;
    --space-56:3.5rem;
    --space-64:4rem;
    --space-80:5rem;
    --space-96:6rem;
    --space-120:7.5rem;

    /* ======================================================
       TYPOGRAPHY
    ====================================================== */

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

    --font-display-xl:clamp(3rem,6vw,4.5rem);

    --font-display-lg:clamp(2.6rem,5vw,3.5rem);

    --font-h1:clamp(2.2rem,4vw,3rem);

    --font-h2:clamp(1.75rem,3vw,2.3rem);

    --font-h3:1.4rem;

    --font-body-lg:1.15rem;

    --font-body:1rem;

    --font-small:.90rem;

    /* ======================================================
       TRANSITIONS
    ====================================================== */

    --transition-fast:.20s;

	--transition:.35s ease;

	--transition-slow:.60s ease;

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

    --container-width:1320px;
	
	--content-width:820px;

	--reading-width:760px;

	--hero-width:920px;

}
/* ==========================================================
   02 • RESET
========================================================== */

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

    margin:0;

    padding:0;

    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

    text-size-adjust:100%;
	
	scroll-padding-top:120px;
	
	overflow-y:scroll;

}

body{

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

    color:var(--color-text);

    background:var(--color-page);

    line-height:1.8;

    overflow-x:hidden;

    text-rendering:optimizeLegibility;

    -webkit-font-smoothing:antialiased;

}

img{

    display:block;

    max-width:100%;

    height:auto;

}

picture{

    display:block;

}

svg{

    display:block;

}

a{

    color:inherit;

    text-decoration:none;

    transition:var(--transition);

}

.insight button{

    font:inherit;

    cursor:pointer;

    border:none;

    background:none;

}

.insight ul,
.insight ol{

    list-style:none;

}

.insight table{

    border-collapse:collapse;

}
/* ==========================================================
   03 • BASE
========================================================== */

body.insight-page{

    background:var(--color-page);

}

.container{

    width:min(100% - 48px,var(--container-width));

    margin-inline:auto;

}

.insight section{

    position:relative;

}

.insight h1,
.insight h2,
.insight h3,
.insight h4{

    line-height:1.2;

    color:var(--color-brand-900);

    font-weight:700;

}

.insight p{

    color:var(--color-text-light);

    font-size:var(--font-body);

}

.insight strong{

    color:var(--color-brand-900);

}
/* ==========================================================
   04 • LAYOUT
========================================================== */

.insight{

    position:relative;

}

.insight-layout{

    padding-block:var(--space-80);

}

.insight-layout__grid{

    display:grid;

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

    gap:72px;

    align-items:start;

}

/* ==========================================================
   05 • UTILITIES
========================================================== */

.visually-hidden{

    position:absolute;

    width:1px;

    height:1px;

    overflow:hidden;

    clip:rect(0 0 0 0);

}

.text-center{

    text-align:center;

}

.mb-0{

    margin-bottom:0;

}

.mt-0{

    margin-top:0;

}
/* ==========================================================
   06 • HEADER (INSIGHTS)
========================================================== */

.site-header{

    position:sticky;

    top:0;

    left:0;

    right:0;

    z-index:1000;

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

    backdrop-filter:blur(14px);

    border-bottom:1px solid var(--color-border-light);

}

.site-header.is-scrolled{

    box-shadow:var(--shadow-sm);

}

/* ==========================================================
   07 • READING PROGRESS
========================================================== */

.insight-progress{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:4px;

    z-index:1200;

    background:transparent;

}

.insight-progress__bar{

    display:block;

    width:0;

    height:100%;

    background:linear-gradient(
        90deg,
        var(--color-brand-700),
        var(--color-brand-500)
    );

    transition:width .08s linear;

}

/* ==========================================================
   08 • BREADCRUMB
========================================================== */

.insight-breadcrumb{

    background:var(--color-surface-secondary);

    border-bottom:1px solid var(--color-border-light);

}

.insight-breadcrumb .container{

    padding-block:18px;

}

.insight-breadcrumb__list{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    align-items:center;

    font-size:.90rem;

    color:var(--color-text-muted);

}

.insight-breadcrumb__list li{

    display:flex;

    align-items:center;

    gap:12px;

}

.insight-breadcrumb__list li:not(:last-child)::after{

    content:"/";

    color:var(--color-border-strong);

}

.insight-breadcrumb a{

    transition:var(--transition-fast);

}

.insight-breadcrumb a:hover{

    color:var(--color-brand-600);

}

/* ==========================================================
   09 • HERO
========================================================== */

.insight-hero{

    position:relative;

    overflow:hidden;

    padding-top:96px;

    padding-bottom:88px;

    background:

        radial-gradient(circle at top right,
        rgba(37,99,235,.08),
        transparent 45%),

        linear-gradient(
        180deg,
        #ffffff,
        #f8fafc
        );

}

.insight-hero::after{

    content:"";

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    height:1px;

    background:var(--color-border-light);

}

.insight-hero__content{

    max-width:var(--hero-width);

}

.insight-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 18px;

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

    background:#E8F0FF;

    color:var(--color-brand-700);

    font-size:.78rem;

    font-weight:600;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.insight-meta{

    display:flex;

    flex-wrap:wrap;

    align-items:center;

    gap:14px;

    margin-top:28px;

    color:var(--color-text-muted);

    font-size:.95rem;

}

.insight-meta__separator{

    opacity:.4;

}

.insight-title{

    margin-top:28px;

    font-size:var(--font-display-lg);

    font-weight:700;

    line-height:1.08;

    letter-spacing:-.03em;

    color:var(--color-brand-900);

    max-width:var(--hero-width);

}

.insight-lead{

    margin-top:28px;

    font-size:1.30rem;

    line-height:1.8;

    max-width:var(--reading-width);

    color:var(--color-text-light);

}

.insight-hero__footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:24px;

    flex-wrap:wrap;

    margin-top:48px;

    padding-top:28px;

    border-top:1px solid var(--color-border-light);

}

.insight-publish{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    color:var(--color-text-muted);

    font-size:.95rem;

}

.insight-author-brand{

    font-weight:700;

    color:var(--color-brand-900);

}

.insight-author h2 {
    font-size: var(--font-h2);
    margin-bottom: 15px;
    margin-top: 15px;
}

/* ==========================================================
   10 • EXECUTIVE SUMMARY
========================================================== */

.insight-summary{

    padding-block:80px;

}

.insight-section-header{

    margin-bottom:48px;

}

.insight-section-eyebrow{

    display:inline-block;

    margin-bottom:14px;

    color:var(--color-brand-600);

    text-transform:uppercase;

    letter-spacing:.10em;

    font-size:.80rem;

    font-weight:700;

}

.insight-section-header h2{

    font-size:var(--font-h2);

    margin-bottom:15px;
	
	margin-top:15px;

}

.insight-summary__grid{

    display:grid;

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

    gap:28px;

}

.insight-summary-card{

    position:relative;

    padding:36px;

    background:var(--color-surface-primary);

    border:1px solid var(--color-border-light);

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

    transition:var(--transition);

    box-shadow:var(--shadow-xs);

}

.insight-summary-card:hover,
.insight-summary-card:focus-within{



    transform:translateY(-6px);

    box-shadow:var(--shadow-md);

}

.insight-summary-card header{

    margin-bottom:18px;

    font-weight:700;

    color:var(--color-brand-900);

    font-size:1rem;

}

.insight-summary-card p{

    margin:0;

    font-size:.98rem;

    line-height:1.8;

    color:var(--color-text-light);

}
/* ==========================================================
   11 • SIDEBAR
========================================================== */

.insight-sidebar{

    position:relative;

}

.insight-sidebar__sticky{

    position:sticky;

    top:120px;

    display:flex;

    flex-direction:column;

    gap:32px;

    padding:32px;

    background:var(--color-surface-primary);

    border:1px solid var(--color-border-light);

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

    box-shadow:var(--shadow-xs);

}

.insight-sidebar__eyebrow{

    display:block;

    font-size:.78rem;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.12em;

    color:var(--color-brand-600);

}

.insight-sidebar__title{

    font-size:1.20rem;

    line-height:1.3;

    color:var(--color-brand-900);

}

.insight-sidebar__nav{

    display:flex;

    flex-direction:column;

}

.insight-sidebar__menu{

    display:flex;

    flex-direction:column;

    gap:8px;

}

.insight-sidebar__menu li{

    margin:0;

}

.insight-sidebar__menu a{

    display:flex;

    align-items:center;

    gap:12px;

    padding:12px 14px;

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

    color:var(--color-text-muted);

    font-size:.95rem;

    font-weight:500;

    transition:var(--transition-fast);

}

.insight-sidebar__menu a::before{

    content:"";

    width:6px;

    height:6px;

    border-radius:50%;

    background:transparent;

    transition:var(--transition-fast);

}

.insight-sidebar__menu a:hover{

    background:var(--color-soft);

    color:var(--color-brand-700);

}

.insight-sidebar__menu a.is-active{

    background:#EAF2FF;

    color:var(--color-brand-700);

    font-weight:600;

}

.insight-sidebar__menu a.is-active::before{

    background:var(--color-brand-600);

}

.insight-sidebar__footer{

    padding-top:24px;

    border-top:1px solid var(--color-border-light);

}

.insight-reading{

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:.90rem;

}

.insight-reading__label{

    color:var(--color-text-muted);

}

/* ==========================================================
   12 • ARTICLE
========================================================== */

.insight-article{

    display:flex;

    flex-direction:column;

    gap:96px;

    min-width:0;

}

.insight-section{

    scroll-margin-top:120px;

}

.insight-section__header{

    margin-bottom:40px;

}

.insight-section__title{

    max-width:var(--hero-width);

}

.insight-section__lead{

    margin-top:20px;

    max-width:var(--content-width);

    font-size:1.15rem;

    color:var(--color-text-light);

}

.insight-section__body{

    display:flex;

    flex-direction:column;

    gap:32px;

}

/* ==========================================================
   13 • TYPOGRAPHY
========================================================== */

.insight-article h2{

    font-size:var(--font-h2);

    line-height:1.2;

    letter-spacing:-.02em;
	
	padding: 15px 0;

}

.insight-article h3{

    font-size:var(--font-h3);

    margin-bottom:12px;

    color:var(--color-brand-900);

}

.insight-article h4{

    font-size:1.05rem;

    margin-bottom:10px;

}

.insight-article p{

    font-size:1.05rem;

    line-height:1.95;

    color:var(--color-text-light);

}

.insight-article p+p{

    margin-top:8px;

}

.insight-article strong{

    font-weight:700;

    color:var(--color-brand-900);

}

.insight-article em{

    font-style:italic;

}

.insight-article a{

    color:var(--color-brand-600);

    font-weight:600;

}

.insight-article a:hover{

    color:var(--color-brand-700);

}

/* ==========================================================
   14 • LISTS
========================================================== */

.insight-article ul{

    display:flex;

    flex-direction:column;

    gap:14px;

    margin:0;

}

.insight-article li{

    position:relative;

    padding-left:28px;

    color:var(--color-text-light);

    line-height:1.8;

}

.insight-article li::before{

    content:"";

    position:absolute;

    left:0;

    top:.72em;

    width:10px;

    height:10px;

    border-radius:50%;

    background:var(--color-brand-600);

}

/* ==========================================================
   15 • ANCHORS
========================================================== */

[id]{

    scroll-margin-top:120px;

}

:target{

    animation:targetHighlight .8s ease;

}

/* ==========================================================
   16 • HORIZONTAL RULE
========================================================== */

.insight-divider{

    height:1px;

    background:var(--color-border-light);

    margin-block:64px;

}

/* ==========================================================
   17 • TABLES
========================================================== */

.insight-article table{

    width:100%;

    border-collapse:collapse;

    overflow:hidden;

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

    border:1px solid var(--color-border);

    background:#fff;

}

.insight-article th{

    background:var(--color-brand-900);

    color:#fff;

    padding:18px;

    text-align:left;

    font-weight:600;

}

.insight-article td{

    padding:18px;

    border-top:1px solid var(--color-border-light);

}

.insight-article tr:nth-child(even){

    background:var(--color-soft);

}
/* ==========================================================
   18 • COMPONENTS
========================================================== */

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

.insight-quote{

    position:relative;

    margin:16px 0;

    padding:40px;

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

    border:1px solid var(--color-border-light);

    border-left:6px solid var(--color-brand-600);

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

    box-shadow:var(--shadow-xs);

}

.insight-quote__body{

    font-size:1.35rem;

    line-height:1.7;

    font-weight:500;

    color:var(--color-brand-900);

}

.insight-quote__footer{

    margin-top:28px;

    font-size:.90rem;

    font-weight:600;

    color:var(--color-text-muted);

}

/* ==========================================================
   HIGHLIGHT
========================================================== */

.insight-highlight{

    padding:40px;

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

    background:#EFF6FF;

    border:1px solid #BFDBFE;

}

.insight-highlight__header{

    margin-bottom:18px;

    color:var(--color-brand-700);

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.08em;

    font-size:.82rem;

}

.insight-highlight__body{

    font-size:1.20rem;

    line-height:1.8;

    font-weight:500;

    color:var(--color-brand-900);

}

/* ==========================================================
   CALLOUT
========================================================== */

.insight-callout{

    padding:32px;

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

    border:1px solid var(--color-border-light);

    background:#ffffff;

}

.insight-callout header{

    margin-bottom:14px;

    font-size:1rem;

    font-weight:700;

}

.insight-callout--info{

    border-left:5px solid var(--color-info);

}

.insight-callout--success{

    border-left:5px solid var(--color-success);

}

.insight-callout--warning{

    border-left:5px solid var(--color-warning);

}

/* ==========================================================
   WARNING
========================================================== */

.insight-warning{

    padding:32px;

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

    background:#FFF7ED;

    border:1px solid #FED7AA;

}

.insight-warning header{

    margin-bottom:14px;

    font-weight:700;

    color:#B45309;

}

.insight-warning div{

    color:#92400E;

}

/* ==========================================================
   NOTE
========================================================== */

.insight-note{

    padding:28px;

    border-left:4px solid var(--color-brand-500);

    background:var(--color-soft);

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

}

/* ==========================================================
   CHECKLIST
========================================================== */

.insight-checklist{

    padding:36px;

    background:#ffffff;

    border:1px solid var(--color-border-light);

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

}

.insight-checklist__header{

    margin-bottom:24px;

    font-size:1.15rem;

    font-weight:700;

    color:var(--color-brand-900);

}

.insight-checklist ul{

    gap:18px;

}

.insight-checklist li{

    padding-left:42px;

}

.insight-checklist li::before{

    width:20px;

    height:20px;

    top:4px;

    border-radius:50%;

    background:var(--color-success);

}

.insight-checklist li::after{

    content:"✓";

    position:absolute;

    left:5px;

    top:0;

    color:#fff;

    font-size:.80rem;

    font-weight:700;

}

/* ==========================================================
   FRAMEWORK
========================================================== */

.insight-framework{

    display:flex;

    flex-direction:column;

    gap:28px;

}

.insight-framework__header h3{

    margin:0;

}

.insight-framework__grid{

    display:grid;

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

    gap:24px;

}

.insight-framework__item{

    padding:32px;

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

    background:#ffffff;

    border:1px solid var(--color-border-light);

    transition:var(--transition);

}

.insight-framework__item:hover,
.insight-framework__item:focus-within{

    transform:translateY(-5px);

    box-shadow:var(--shadow-md);

}

.insight-framework__item h4{

    margin-bottom:14px;

}

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

.insight-grid{

    display:grid;

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

    gap:24px;

}

.insight-stat{

    padding:32px;

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

    background:#ffffff;

    border:1px solid var(--color-border-light);

    transition:var(--transition);

}

.insight-stat:hover,
.insight-stat:focus-within{

    transform:translateY(-4px);

    box-shadow:var(--shadow-sm);

}

.insight-stat h3{

    margin-bottom:16px;

}

.insight-stat p{

    margin:0;

}

/* ==========================================================
   DECISION BOX
========================================================== */

.insight-decision{

    padding:42px;

    background:linear-gradient(
        180deg,
        #ffffff,
        #F8FAFC
    );

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

    border:1px solid var(--color-border);

}

.insight-decision header{

    margin-bottom:18px;

    font-size:1.10rem;

    font-weight:700;

    color:var(--color-brand-900);

}

/* ==========================================================
   COMPARISON
========================================================== */

.insight-comparison{

    display:grid;

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

    gap:24px;

}

.insight-comparison__column{

    padding:36px;

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

    background:#fff;

    border:1px solid var(--color-border-light);

}

.insight-comparison__column h3{

    margin-bottom:20px;

}

/* ==========================================================
   TIMELINE
========================================================== */

.insight-timeline{

    position:relative;

    display:flex;

    flex-direction:column;

    gap:36px;

    padding-left:42px;

}

.insight-timeline::before{

    content:"";

    position:absolute;

    left:11px;

    top:0;

    bottom:0;

    width:2px;

    background:var(--color-border);

}

.insight-timeline__item{

    position:relative;

}

.insight-timeline__item::before{

    content:"";

    position:absolute;

    left:-36px;

    top:8px;

    width:18px;

    height:18px;

    border-radius:50%;

    background:var(--color-brand-600);

    border:4px solid #fff;

    box-shadow:0 0 0 2px var(--color-brand-600);

}

.insight-timeline__title{

    margin-bottom:8px;

    font-weight:700;

    color:var(--color-brand-900);

}

.insight-timeline__text{

    color:var(--color-text-light);

}
/* ==========================================================
   19 • EXECUTIVE CTA
========================================================== */

.insight-cta{

    position:relative;

    padding-block:120px;

    background:linear-gradient(
        180deg,
        #F8FAFC 0%,
        #EEF4FB 100%
    );

    overflow:hidden;

}

.insight-cta::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        radial-gradient(circle at top right,
        rgba(37,99,235,.10),
        transparent 45%);

    pointer-events:none;

}

.insight-cta .container{

    position:relative;

    z-index:2;

}

.insight-cta__content{

    max-width:860px;

    margin-inline:auto;

    text-align:center;

}

.insight-cta h2{

    margin-top:28px;

    font-size:clamp(2rem,4vw,3rem);

    line-height:1.15;

    letter-spacing:-.03em;

}

.insight-cta p{

    max-width:720px;

    margin:32px auto 0;

    font-size:1.15rem;

    line-height:1.9;

}

.insight-cta .btn{

    margin-top:48px;

}

/* ==========================================================
   BUTTONS
========================================================== */

.insight .btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    padding:18px 34px;

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

    font-weight:600;

    transition:var(--transition);

    cursor:pointer;

}

.btn-primary{

    color:#fff;

    background:linear-gradient(
        135deg,
        var(--color-brand-700),
        var(--color-brand-500)
    );

    box-shadow:var(--shadow-sm);

}

.btn-primary:hover,
.btn-primary:focus-within{

    transform:translateY(-3px);

    box-shadow:var(--shadow-lg);

}

.btn-secondary{

    background:#fff;

    color:var(--color-brand-700);

    border:1px solid var(--color-border);

}

.btn-secondary:hover{

    background:var(--color-soft);

}

.btn-ghost{

    color:var(--color-brand-700);

}

.btn-ghost:hover{

    background:var(--color-soft);

}

/* ==========================================================
   20 • INSIGHT SEQUENCE
========================================================== */

.insight-sequence{

    display:grid;

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

    gap:24px;

    margin:72px 0 56px;

}

.insight-sequence__item{

    display:flex;

    flex-direction:column;

    gap:10px;

    padding:32px;

    background:#fff;

    border:1px solid var(--color-border-light);

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

    box-shadow:var(--shadow-xs);

    transition:var(--transition);

}

a.insight-sequence__item{

    color:inherit;

    text-decoration:none;

}

a.insight-sequence__item:hover{

    transform:translateY(-4px);

    border-color:var(--color-brand-300);

    box-shadow:var(--shadow-md);

}

.insight-sequence__item--disabled{

    opacity:.65;

    cursor:default;

    background:var(--color-soft);

}

.insight-sequence__label{

    display:block;

    font-size:.75rem;

    font-weight:600;

    letter-spacing:.08em;

    text-transform:uppercase;

    color:var(--color-text-muted);

}

.insight-sequence__item strong{

    display:block;

    font-size:1.125rem;

    line-height:1.5;

    font-weight:600;

    color:var(--color-heading);

}

.insight-sequence__item p{

    margin:0;

    font-size:.95rem;

    color:var(--color-text);

    line-height:1.7;

}

@media (max-width:768px){

    .insight-sequence{

        grid-template-columns:1fr;

        margin:56px 0 48px;

    }

    .insight-sequence__item{

        padding:24px;

    }

}

/* ==========================================================
   20 • RELATED INSIGHTS
========================================================== */

.insight-related{

    padding-block:96px;

    background:#fff;

    border-top:1px solid var(--color-border-light);

}

.insight-related__header{

    max-width:760px;

    margin:0 auto 56px;

    text-align:center;

}

.insight-related__description{

    margin:20px auto 0;

    max-width:680px;

    font-size:1.05rem;

    line-height:1.8;

    color:var(--color-text);

}

.insight-related__grid{

    display:grid;

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

    gap:32px;

}

.insight-card{

    display:flex;

    flex-direction:column;

    justify-content:space-between;

    gap:24px;

    padding:36px;

    background:#fff;

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

    border:1px solid var(--color-border-light);

    transition:var(--transition);

}

.insight-card:hover,
.insight-card:focus-within{

    transform:translateY(-8px);

    box-shadow:var(--shadow-md);

}

.insight-card__category{

    display:inline-flex;

    align-self:flex-start;

    padding:8px 16px;

    border-radius:999px;

    background:#EEF4FF;

    color:var(--color-brand-700);

    font-size:.80rem;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:.08em;

}

.insight-card h3{

    font-size:1.35rem;

    line-height:1.4;

    margin:0;

}

.insight-card p{

    margin:0;

}

.insight-card a{

    margin-top:auto;

    font-weight:600;

    color:var(--color-brand-600);

}

.insight-card a:hover{

    color:var(--color-brand-700);

}

/* ==========================================================
   21 • FOOTER
========================================================== */

.site-footer{

    border-top:1px solid var(--color-border-light);

}

/* ==========================================================
   22 • ANIMATIONS
========================================================== */

@keyframes targetHighlight{

    0%{

        background:#EAF2FF;

    }

    100%{

        background:transparent;

    }

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(30px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

@keyframes fadeIn{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

.reveal{

    opacity:0;

    animation:fadeUp .8s ease forwards;

}

/* ==========================================================
   23 • RESPONSIVE
========================================================== */

@media (max-width:1200px){

    .insight-layout__grid{

        grid-template-columns:280px 1fr;

        gap:48px;

    }

    .insight-summary__grid{

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

    }

    .insight-related__grid{

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

    }

}

@media (max-width:992px){

    .insight-layout__grid{

        grid-template-columns:1fr;

    }

    .insight-sidebar{

        display:none;

    }

    .insight-grid{

        grid-template-columns:1fr;

    }

    .insight-framework__grid{

        grid-template-columns:1fr;

    }

    .insight-comparison{

        grid-template-columns:1fr;

    }

    .insight-related__grid{

        grid-template-columns:1fr;

    }

    .insight-summary__grid{

        grid-template-columns:1fr;

    }

    .insight-hero{

        padding-top:72px;

        padding-bottom:72px;

    }

    .insight-title{

        font-size:var(--font-display-lg);

    }

}

@media (max-width:768px){

    .container{

        width:min(100% - 32px,var(--container-width));

    }

    .insight-hero__footer{

        flex-direction:column;

        align-items:flex-start;

    }

    .insight-meta{

        gap:8px;

    }

    .insight-summary-card{

        padding:28px;

    }

    .insight-quote{

        padding:28px;

    }

    .insight-highlight{

        padding:28px;

    }

    .insight-callout{

        padding:24px;

    }

    .insight-warning{

        padding:24px;

    }

    .insight-decision{

        padding:28px;

    }

    .insight-card{

        padding:28px;

    }

}

/* ==========================================================
   24 • PRINT
========================================================== */

@media print{

    .site-header,

    .site-footer,

    .insight-sidebar,

    .insight-cta,

    .insight-related,

    .insight-progress{

        display:none !important;

    }

    body{

        background:#fff;

        color:#000;

    }

    .insight .container{

        width:100%;

        max-width:none;

    }

    .insight-layout{

        padding:0;

    }

    .insight-layout__grid{

        display:block;

    }

    .insight-article{

        display:block;

    }

    .insight a{

    text-decoration:none;

}

.insight-article a{

    text-decoration:underline;

    text-decoration-thickness:.08em;

    text-underline-offset:.20em;

}

}
/* ==========================================================
   ANCHOR LINKS
========================================================== */

.insight-section__title{

    position:relative;

    display:inline-flex;

    align-items:center;

    gap:12px;

}

.insight-anchor{

    opacity:0;

    transition:var(--transition);

    font-size:.8em;

    color:var(--color-brand-500);

}

.insight-section__title:hover .insight-anchor{

    opacity:1;

}

.insight-anchor.is-copied{

    color:var(--color-success);

}

.reduce-motion *{

    animation:none !important;

    transition:none !important;

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

    html{

        scroll-behavior:auto;

    }

    *{

        animation:none !important;

        transition:none !important;

    }

}
/* ==========================================================
   ACCESSIBILITY • FOCUS
========================================================== */

:focus{

    outline:none;

}

:focus-visible{

    outline:3px solid var(--color-brand-500);

    outline-offset:4px;

    border-radius:6px;

}
/* ==========================================================
   SKIP LINK
========================================================== */

.skip-link{

    position:absolute;

    left:-9999px;

    top:16px;

    z-index:3000;

    padding:14px 20px;

    background:var(--color-brand-900);

    color:#fff;

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

}

.skip-link:focus{

    left:24px;

}
button:focus-visible,

.btn:focus-visible,

a:focus-visible{

    box-shadow:

        0 0 0 4px rgba(37,99,235,.18);

}

.insight-section{

    content-visibility:auto;

    contain-intrinsic-size:1200px;

}
.insight-summary-card,

.insight-framework__item,

.insight-stat,
