@charset "utf-8";

/* ALIGNIFY WEBSITE STYLES
   Version 2.0 — consolidated navy + gold design system
   Legacy green and teal accents removed. */

* , *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

:root {
  /* Core brand palette */
  --alignify-navy: #082A4A;
  --alignify-navy-dark: #051E35;
  --alignify-deep-navy: #041F42;
  --alignify-navy-light: #17486B;
  --alignify-blue: #234F82;

  --alignify-gold: #B78B2D;
  --alignify-gold-dark: #926E22;
  --alignify-gold-light: #D7B15A;
  --alignify-gold-soft: #F6F0E3;

  /* Neutral surfaces and typography */
  --white: #FFFFFF;
  --alignify-white: #FFFFFF;
  --off-white: #F7F9FA;
  --surface-light: #EEF2F4;
  --alignify-light-blue: #EDF4FA;
  --alignify-surface: #FFFFFF;
  --alignify-background: #FAFAF8;
  --alignify-light: #F7F9FC;

  --text-dark: #17222B;
  --text-body: #3E4A53;
  --text-muted: #6B7780;
  --alignify-text: #10294B;
  --alignify-muted: #5E6B7B;

  --border-light: #DCE3E7;
  --border-medium: #BAC5CB;
  --alignify-border: #D9DEE5;

  /* Semantic roles */
  --primary: var(--alignify-navy);
  --primary-hover: var(--alignify-navy-light);
  --secondary: var(--alignify-gold);
  --secondary-hover: var(--alignify-gold-dark);
  --accent: var(--alignify-gold);
  --accent-hover: var(--alignify-gold-dark);
  --background: var(--white);
  --background-alt: var(--off-white);
  --text: var(--text-body);
  --heading: var(--alignify-navy);

  /* Typography */
  --alignify-serif: Georgia, "Times New Roman", serif;
  --alignify-sans: Inter, Arial, Helvetica, sans-serif;
  --font-heading: var(--alignify-sans);
  --font-body: var(--alignify-sans);
  --font-size-base: 18px;
  --line-height-body: 1.7;
  --line-height-heading: 1.15;

  /* Layout */
  --container: 1200px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 88px;
  --space-10: 120px;

  /* Shape, depth, and motion */
  --radius-small: 10px;
  --radius-medium: 12px;
  --radius-large: 20px;
  --radius-pill: 999px;
  --shadow-small: 0 4px 14px rgba(8, 42, 74, 0.08);
  --shadow-medium: 0 12px 32px rgba(8, 42, 74, 0.12);
  --shadow-large: 0 20px 50px rgba(8, 42, 74, 0.16);
  --transition-fast: 180ms ease;
  --transition-standard: 280ms ease;
}

body {
  overflow-x: hidden;
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-body);
  color: var(--text);
  background: var(--background);
}

h1,h2,h3,h4,h5,h6 {
  margin-bottom: var(--space-5);
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: var(--line-height-heading);
  color: var(--heading);
}
h1 { font-size: clamp(3rem,5vw,5rem); letter-spacing: -.04em; }
h2 { font-size: clamp(2.25rem,4vw,3.5rem); letter-spacing: -.03em; }
h3 { font-size: clamp(1.6rem,2.5vw,2.15rem); letter-spacing: -.02em; }
h4 { font-size: 1.35rem; }
p { max-width: 70ch; margin-bottom: var(--space-5); }
a { color: var(--secondary); text-decoration: none; transition: color var(--transition-fast); }
a:hover { color: var(--secondary-hover); }
strong { color: var(--heading); }
.container { width: min(90%, var(--container)); margin-inline: auto; }

/* NAVIGATION */
.site-header { position: sticky; top: 0; z-index: 1000; background: var(--white); border-bottom: 1px solid var(--border-light); }
.navigation-container { display: grid; grid-template-columns: auto 1fr auto; gap: var(--space-6); align-items: center; min-height: 84px; }
.site-logo { display: inline-flex; align-items: flex-start; font: 800 2rem/1 Arial,Helvetica,sans-serif; letter-spacing: .02em; text-transform: uppercase; color: var(--alignify-navy); }
.site-logo:hover,.site-logo:visited,.site-logo:focus { color: var(--alignify-navy); }
.site-logo span { position: relative; top: 1px; font-size: .40em; font-weight: 700; color: var(--alignify-gold); }
.primary-navigation { justify-self: center; }
.navigation-list { display: flex; gap: var(--space-5); align-items: center; list-style: none; }
.navigation-list a { position: relative; display: inline-block; padding: 30px 0; font-size: .92rem; font-weight: 600; line-height: 1; color: var(--alignify-navy); }
.navigation-list a::after { position: absolute; right: 0; bottom: 22px; left: 0; height: 2px; content: ""; background: var(--alignify-gold); transform: scaleX(0); transition: transform var(--transition-fast); }
.navigation-list a:hover { color: var(--alignify-gold); }
.navigation-list a:hover::after { transform: scaleX(1); }
.navigation-cta { min-height: 46px; padding: 12px 22px; font-size: .9rem; }

/* BUTTONS */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); min-height: 52px; padding: 14px 32px; border: 2px solid transparent; border-radius: 10px; font: 600 1rem/1 Arial,Helvetica,sans-serif; white-space: nowrap; cursor: pointer; transition: background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast); }
.btn:hover { transform: translateY(-2px); box-shadow: var(--shadow-small); }
a.btn.btn-primary,a.btn.btn-primary:visited { color: var(--white); background: var(--alignify-navy); border-color: var(--alignify-navy); }
a.btn.btn-primary:hover,a.btn.btn-primary:focus { color: var(--white); background: var(--alignify-navy-light); border-color: var(--alignify-navy-light); }
a.btn.btn-outline,a.btn.btn-outline:visited { color: var(--alignify-navy); background: var(--white); border-color: var(--alignify-navy); }
a.btn.btn-outline:hover,a.btn.btn-outline:focus { color: var(--white); background: var(--alignify-navy); }

/* HERO */
.hero-section,.hero-preview { position: relative; overflow: hidden; padding: 40px 0 110px; background: var(--off-white); }
.hero-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(420px,.85fr); gap: var(--space-9); align-items: center; }
.hero-content { max-width: 720px; }
.hero-eyebrow { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; width: max-content; max-width: 100%; margin-bottom: 28px; }
.hero-category,.hero-theme { display: block; }
.hero-category { font-size: .75rem; font-weight: 700; line-height: 1.2; letter-spacing: .16em; color: var(--alignify-gold-dark); text-transform: uppercase; }
.hero-theme { font-size: .95rem; font-weight: 600; line-height: 1.3; color: var(--alignify-navy); }
.hero-content h1 { max-width: 760px; margin-bottom: var(--space-5); font-size: clamp(3rem,5vw,4.8rem); }
.hero-lead { max-width: 640px; margin-bottom: 28px; font-size: 1.18rem; line-height: 1.8; color: var(--text-body); }
.hero-actions { display: flex; flex-wrap: wrap; gap: var(--space-4); margin-bottom: var(--space-5); }
.hero-supporting-text { margin-bottom: 0; font-size: .92rem; font-weight: 600; letter-spacing: .02em; color: rgba(62,74,83,.62); }
.hero-visual { display: flex; align-items: center; justify-content: center; min-height: 560px; }
.hero-framework { position: relative; width: 490px; height: 490px; background: var(--white); border: 1px solid var(--border-light); border-radius: 50%; box-shadow: var(--shadow-medium); }
.hero-framework::before,.hero-framework::after { position: absolute; inset: 50% auto auto 50%; content: ""; background: var(--border-light); transform: translate(-50%,-50%); }
.hero-framework::before { width: 75%; height: 1px; }
.hero-framework::after { width: 1px; height: 75%; }
.framework-center { position: absolute; top: 50%; left: 50%; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 190px; height: 190px; padding: var(--space-5); color: var(--white); text-align: center; background: var(--alignify-navy); border: 2px solid var(--alignify-navy-dark); border-radius: 50%; box-shadow: var(--shadow-small); transform: translate(-50%,-50%); }
.framework-center span { margin-bottom: var(--space-2); font-size: .75rem; font-weight: 700; letter-spacing: .12em; color: var(--alignify-gold-soft); }
.framework-center strong { font-size: 1.1rem; line-height: 1.25; color: var(--white); }
.framework-item { position: absolute; z-index: 3; display: flex; align-items: center; justify-content: center; width: 150px; min-height: 72px; padding: 16px 18px; font: 600 .9rem/1.25 Arial,Helvetica,sans-serif; color: var(--alignify-navy); text-align: center; background: var(--white); border: 2px solid var(--border-light); border-radius: 10px; box-shadow: var(--shadow-small); }
.framework-item-one { top: 20px; left: 50%; transform: translateX(-50%); }
.framework-item-two { top: 50%; right: -18px; transform: translateY(-50%); }
.framework-item-three { bottom: 20px; left: 50%; transform: translateX(-50%); }
.framework-item-four { top: 50%; left: -18px; transform: translateY(-50%); }

/* CHALLENGE */
.challenge-section { padding: 120px 0; background: var(--white); }
.section-heading { max-width: 900px; margin-bottom: 72px; }
.section-heading-centered {
    margin-right: 0;
    margin-left: 0;
    text-align: left;
}
.section-category { display: block; margin-bottom: 18px; font-size: .78rem; font-weight: 700; line-height: 1.2; letter-spacing: .16em; color: var(--alignify-gold-dark); text-transform: uppercase; }
.section-heading h2 { margin-bottom: 26px; font-size: clamp(2.6rem,4.2vw,4rem); line-height: 1.08; letter-spacing: -.035em; color: var(--alignify-navy); }
.section-introduction {
    max-width: 620px;

    margin-right: 0;
    margin-left: 0;

    font-size: 1.08rem;
    line-height: 1.8;
}
.challenge-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 36px;

    margin-top: 72px;
    margin-bottom: 110px;
}
.challenge-card { position: relative; min-height: 340px; padding:52px 44px 44px; 
	overflow: hidden; background: var(--off-white); border: 1px solid var(--border-light);
	border-radius: 14px; 
	box-shadow: 0 10px 30px rgba(8,42,74,.08); transition: transform var(--transition-standard), box-shadow var(--transition-standard), border-color var(--transition-standard); }
.challenge-card:hover { border-color: var(--alignify-gold-soft); box-shadow: var(--shadow-medium); transform: translateY(-5px); }
.challenge-number {
	 position:absolute;

    top:20px;

    right:22px;

    margin:0;

    display:block;

    margin-bottom:56px;

    color: rgba(183, 139, 45, 0.70);
    font-size:2.4rem;
	opacity:.10;

    font-weight:600;

    letter-spacing:.18em;

    text-transform:uppercase;

}
.challenge-card h3 { 
	margin-bottom: 30px;
	 margin-top:10px;
	font-size: 1.55rem; line-height: 1.2; letter-spacing: -.02em; color: var(--alignify-navy); }
.challenge-card p { margin-bottom: 0; 
	font-size: 1rem; line-height: 1.7; color: var(--text-body); }
.challenge-line { position: absolute; right: 34px; bottom: 28px;
	left: 40px; height: 3px; background: var(--alignify-gold);
	width:60px;
	transform: none; transform-origin: left; transition: transform var(--transition-standard); }
.challenge-card:hover .challenge-line { transform: scaleX(1); }
.challenge-statement { max-width: 940px; margin-right: auto; margin-left: auto; text-align: center; }
.challenge-statement p { max-width: none; }
.challenge-statement-opening { margin-bottom: 12px; font-size: 1.1rem; font-weight: 600; color: var(--text-muted); }
.challenge-statement-emphasis { margin-bottom: 0; font-size: clamp(2rem,3.2vw,3.1rem); font-weight: 700; line-height: 1.18; letter-spacing: -.03em; color: var(--alignify-navy); }

/* ==========================================
   INSTITUTIONAL CAPABILITY
========================================== */

.capability-section{

    padding:140px 0;

    background:var(--alignify-light);

}

.capability-introduction{

    max-width:860px;

    margin:0 auto 72px;

    text-align:center;

}
.capability-introduction-text {
    max-width: 680px;
    margin: 0 auto;

    color: var(--text-body);

    font-size: 1.08rem;
    line-height: 1.8;
}

.capability-highlight {
    max-width: 850px;
    margin: 22px auto 30px;

    color: var(--alignify-gold-dark);

    font-size: clamp(2.35rem, 3.8vw, 3.7rem);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -0.025em;

    text-align: center;
}

.capability-framework{

    min-height:500px;

    margin-bottom:90px;

}

/* Principles */

.capability-principles{

    display:grid;

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

    gap:50px 70px;

    margin-bottom:100px;

}

.capability-principles article{

    border-top:3px solid var(--alignify-gold);

    padding-top:26px;

}

.capability-principles h3{

    margin-bottom:18px;

}

.capability-principles p{

    max-width:none;

}
/* Framework */

.capability-model {
    position: relative;

    width: 760px;
    height: 760px;
    margin: 0 auto 80px;
}

.capability-model-ring {
    position: absolute;
    top: 50%;
    left: 50%;

    width: 540px;
    height: 540px;

    border: 1px solid rgba(8, 42, 74, 0.18);
    border-radius: 50%;

    background-color: rgba(255, 255, 255, 0.42);

    transform: translate(-50%, -50%);
}


/* Connecting lines */

.capability-model::before,
.capability-model::after {
    content: "";

    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;

    background-color: rgba(8, 42, 74, 0.18);

    transform: translate(-50%, -50%);
}

.capability-model::before {
    width: 550px;
    height: 1px;
}

.capability-model::after {
    width: 1px;
    height: 550px;
}


/* Center */

.capability-model-center {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    width: 270px;
    height: 270px;
    padding: 36px;

    color: var(--white);
    text-align: center;

    background-color: var(--alignify-navy);
    border: 3px solid var(--alignify-navy-dark);
    border-radius: 50%;

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

    transform: translate(-50%, -50%);
}

.model-brand {
    margin-bottom: 14px;

    color: var(--alignify-gold-soft);

    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.16em;
}

.capability-model-center strong {
    color: var(--white);

    font-size: 1.8rem;
    line-height: 1.18;
}




/* Framework nodes */

.capability-node {
    position: absolute;
    z-index: 4;

    display: flex;
    flex-direction: column;
    justify-content: center;

    width: 270px;
    min-height: 170px;
    padding: 30px 32px;

    background-color: var(--white);
    border: 1px solid var(--border-light);
    border-radius: 14px;

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

.capability-node-number {
    margin-bottom: 18px;

    color: rgba(183, 139, 45, 0.55);

    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.18em;
}

.capability-node strong {
    margin-bottom: 12px;

    color: var(--alignify-navy);

    font-size: 1.25rem;
    line-height: 1.2;
}

.capability-node p {
    max-width: none;
    margin-bottom: 0;

    color: var(--text-body);

    font-size: 0.92rem;
    line-height: 1.55;
}


/* Node positioning */

.capability-node-top {
    top: -20px;
    left: 50%;

    transform: translateX(-50%);
}

.capability-node-right {
    top: 50%;
    right: -20px;

    transform: translateY(-50%);
}

.capability-node-bottom {
    bottom: -20px;
    left: 50%;

    transform: translateX(-50%);
}

.capability-node-left {
    top: 50%;
    left: -20px;

    transform: translateY(-50%);
}

/* Closing */

.capability-closing {
    max-width: 900px;
    margin: 0 auto;

    text-align: center;
}

.capability-closing p {
    max-width: none;
    margin: 0 auto 12px;

    color: var(--text-muted);

    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.5;

    text-align: center;
}

.capability-closing h3 {
    max-width: none;
    margin: 0 auto;

    color: var(--alignify-navy);

    font-size: clamp(2rem, 3.2vw, 3.2rem);
    line-height: 1.18;
    letter-spacing: -0.03em;

    text-align: center;
}


/* GENERIC CARDS */
.card { padding: var(--space-6); background: var(--white); border: 1px solid var(--border-light); border-radius: var(--radius-medium); box-shadow: var(--shadow-small); transition: transform var(--transition-standard), box-shadow var(--transition-standard); }
.card:hover { box-shadow: var(--shadow-medium); transform: translateY(-4px); }
.card h3 { margin-bottom: var(--space-3); }

/* RESPONSIVE PLACEHOLDERS */
@media (max-width: 960px) {
  .challenge-grid { grid-template-columns: 1fr; }
}
/* ==========================================
   SHARED METHODOLOGY
========================================== */

.methodology-section {
    background: #ffffff;
    color: #062849;
    padding: 110px 32px 0;
    overflow: hidden;
}

.methodology-container {
    width: min(1380px, 100%);
    margin: 0 auto;
}


/* Header */

.methodology-header {
    max-width: 1040px;
    margin: 0 auto 64px;
    text-align: center;
}

.methodology-eyebrow-row,
.methodology-next-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
}

.methodology-eyebrow-row span,
.methodology-next-eyebrow span {
    width: 210px;
    height: 1px;
    background: rgba(184, 133, 31, 0.45);
}

.methodology-eyebrow-row p,
.methodology-next-eyebrow p {
    margin: 0;
    color: #b47f17;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.methodology-title {
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5.6rem);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.035em;
    color: #071f46;
}

.methodology-highlight {
    margin: 6px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.4rem, 5vw, 4.9rem);
    font-weight: 500;
    line-height: 1.05;
    color: #b7831c;
}

.methodology-title .trademark,
.methodology-next .trademark {
    position: relative;
    top: -0.8em;
    margin-left: 4px;
    font-family: Arial, sans-serif;
    font-size: 0.26em;
    font-weight: 700;
}

.methodology-title-line {
    width: 68px;
    height: 3px;
    margin: 24px auto 20px;
    background: #b7831c;
}

.methodology-introduction {
    max-width:1120px;
    margin: 0 auto;
    color: #23334c;
    font-size: 1.08rem;
    line-height: 1.75;
}


/* Perspectives */

.perspectives-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
    margin-bottom: 26px;
}

.perspectives-grid::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 7%;
    right: 7%;
    height: 2px;
    background:
        repeating-linear-gradient(
            90deg,
            #bc871e 0,
            #bc871e 4px,
            transparent 4px,
            transparent 10px
        );
    transform: translateY(-50%);
    z-index: 0;
}

.perspective-card {
    position: relative;
    z-index: 1;
   min-height:220px;
    display: flex;
    align-items: center;
    gap: 22px;
    padding:36px 30px;
    background: #ffffff;
    border: 1px solid rgba(7, 31, 70, 0.18);
    border-radius: 14px;
    box-shadow: 0 16px 38px rgba(7, 31, 70, 0.07);
    transition:
        transform 220ms ease,
        box-shadow 220ms ease,
        border-color 220ms ease;
}

.perspective-card:hover {
    transform: translateY(-5px);
    border-color: rgba(183, 131, 28, 0.6);
    box-shadow: 0 20px 44px rgba(7, 31, 70, 0.12);
}

.perspective-icon,
.principle-icon {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 50%;
}

.perspective-icon {
    width: 78px;
    height: 78px;
    background: #f2f6fb;
    border: 1px solid rgba(7, 31, 70, 0.12);
}

.perspective-icon svg {
    width: 46px;
    height: 46px;
    fill: none;
    stroke: #071f46;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.perspective-card h4 {
    margin: 0 0 10px;
    color: #071f46;
    font-size: 1.18rem;
    line-height: 1.2;
}

.perspective-card p {
    margin: 0;
    color: #27364e;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1rem;
    font-style: italic;
    line-height: 1.45;
}


/* Shared Language Divider */

.shared-language-divider {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 28px;
    margin: 22px 0 32px;
}

.divider-line {
    height: 1px;
    background: rgba(183, 131, 28, 0.75);
}

.shared-language-label {
    text-align: center;
}

.shared-language-arrow {
    display: block;
    margin-bottom: 4px;
    color: #b7831c;
    font-size: 2rem;
    line-height: 0.7;
}

.shared-language-label p {
    margin: 0;
    color: #b7831c;
    font-size: 0.98rem;
    font-weight: 700;
    letter-spacing: 0.28em;
}


/* Principles */

.methodology-principles {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-bottom: 54px;
}

.methodology-principle {
    display: flex;
    gap: 22px;
    min-height: 190px;
    padding: 22px 34px;
    border-right: 1px solid rgba(7, 31, 70, 0.13);
}

.methodology-principle:first-child {
    padding-left: 0;
}

.methodology-principle:last-child {
    padding-right: 0;
    border-right: 0;
}

.principle-icon {
    width: 76px;
    height: 76px;
    border: 1px solid rgba(183, 131, 28, 0.65);
}

.principle-icon svg {
    width: 42px;
    height: 42px;
    fill: none;
    stroke: #071f46;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.methodology-principle h4 {
    margin: 0 0 12px;
    color: #071f46;
    font-size: 1.08rem;
}

.methodology-principle p {
    margin: 0;
    color: #344159;
    font-size: 0.97rem;
    line-height: 1.65;
}


/* Closing Quote */

.methodology-closing {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 28px;
    max-width: 1220px;
    margin: 0 auto 74px;
    padding: 30px 48px;
    background: #fffdfa;
    border: 1px solid rgba(183, 131, 28, 0.35);
    border-radius: 14px;
}

.methodology-closing p {
    max-width: none;
    margin: 0;
    color: #071f46;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.6rem, 3vw, 2.35rem);
    line-height: 1.32;
    text-align: center;
}

.methodology-closing strong {
    display: block;
    color: #b7831c;
    font-weight: 500;
}

.quote-mark {
    color: rgba(183, 131, 28, 0.75);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 4rem;
    line-height: 1;
}


/* Next Capability */

.methodology-next {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 38px 32px 34px;
    background: #f4f7fb;
    text-align: center;
}

.methodology-next-eyebrow span {
    width: 110px;
    background: rgba(7, 31, 70, 0.25);
}

.methodology-next-eyebrow p {
    color: #071f46;
}

.methodology-next h3 {
    margin: 10px 0 8px;
    color: #071f46;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    font-weight: 500;
}

.methodology-next > p {
    max-width: 700px;
    margin: 12px auto 0;
    color: #344159;
    font-size: 1rem;
    line-height: 1.7;
    text-align: center;
}

.methodology-next-arrow {
    display: block;
    margin-top: 6px;
    color: #b7831c;
    font-size: 2rem;
    line-height: 1;
}


/* Responsive */

@media (max-width: 1100px) {

    .perspectives-grid,
    .methodology-principles {
        grid-template-columns: repeat(2, 1fr);
    }

    .perspectives-grid::before {
        display: none;
    }

    .methodology-principle {
        border-right: 0;
        border-bottom: 1px solid rgba(7, 31, 70, 0.13);
        padding: 28px;
    }

    .methodology-principle:first-child,
    .methodology-principle:last-child {
        padding: 28px;
    }

    .methodology-principle:nth-last-child(-n + 2) {
        border-bottom: 0;
    }

}

@media (max-width: 700px) {

    .methodology-section {
        padding: 82px 20px 0;
    }

    .methodology-eyebrow-row span,
    .methodology-next-eyebrow span {
        width: 42px;
    }

    .methodology-eyebrow-row {
        gap: 14px;
    }

    .methodology-eyebrow-row p {
        font-size: 0.67rem;
        letter-spacing: 0.16em;
    }

    .methodology-introduction {
        font-size: 1rem;
        line-height: 1.65;
    }

    .perspectives-grid,
    .methodology-principles {
        grid-template-columns: 1fr;
    }

    .perspective-card {
        min-height: 0;
    }

    .shared-language-divider {
        grid-template-columns: 44px auto 44px;
        gap: 12px;
    }

    .shared-language-label p {
        font-size: 0.72rem;
        letter-spacing: 0.18em;
    }

    .methodology-principle,
    .methodology-principle:first-child,
    .methodology-principle:last-child {
        padding: 26px 0;
        border-bottom: 1px solid rgba(7, 31, 70, 0.13);
    }

    .methodology-principle:last-child {
        border-bottom: 0;
    }

    .methodology-closing {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 28px 22px;
    }

    .quote-mark {
        display: none;
    }
}

/* ==========================================================
   Executive Insight Narrative Bridge
========================================================== */

.executive-insight-bridge{

    padding:65px 20px;

    border-top:1px solid rgba(8,42,74,.06);

    border-bottom:1px solid rgba(8,42,74,.06);

    background:#fff;

}

.executive-insight-bridge__inner{

    max-width:1180px;

    margin:0 auto;

    display:grid;

    grid-template-columns:1fr 1fr;

    column-gap:120px;

    row-gap:28px;

    align-items:end;

}

.executive-insight-bridge__item{

    text-align:center;

}

.executive-insight-bridge__item h3{

    margin:0;

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

    font-weight:500;

    color:var(--alignify-navy);

    letter-spacing:-.03em;

}

.executive-insight-bridge__item p{

    margin-top:14px;

    font-size:1.35rem;

    color:var(--alignify-gold);

    font-weight:300;
	text-align:center;

}

.executive-insight-bridge__line{

    grid-column:1 / span 2;
	 margin-top:-12px;

    display:flex;

    justify-content:center;

}

.executive-insight-bridge__line span{

    position:relative;

    width:260px;

    height:3px;

    background:var(--alignify-gold);

}

.executive-insight-bridge__line span::after{

    content:"";

    position:absolute;

    left:50%;

    top:50%;

    width:10px;

    height:10px;

    border-radius:50%;

    background:var(--alignify-gold);

    transform:translate(-50%,-50%);

}
/* ==========================================
   EXECUTIVE INSIGHT
========================================== */

/* Design tokens are consolidated in the primary :root block above. */

.executive-insight {
  overflow: hidden;
  background: var(--alignify-background);
  color: var(--alignify-text);
}

.executive-insight *,
.executive-insight *::before,
.executive-insight *::after {
  box-sizing: border-box;
}

.executive-insight__container {
  width: min(1440px, calc(100% - 48px));
  margin: 0 auto;
}

.executive-insight__hero {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(620px, 1.22fr);
  gap: clamp(48px, 6vw, 96px);
  align-items: center;
  padding: clamp(84px, 9vw, 140px) 0 72px;
}

.executive-insight__content {
  max-width: 610px;
}

.section-eyebrow {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 28px;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  white-space: nowrap;
}

.section-eyebrow__line {
  width: 96px;
  height: 1px;
  background: var(--alignify-gold);
}

.executive-insight__title {
  margin: 0;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: clamp(3.8rem, 5.6vw, 5.2rem);
  font-weight: 500;
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.trademark {
  margin-left: 0.06em;
  font-family: var(--alignify-sans);
  font-size: 0.25em;
  vertical-align: top;
}

.executive-insight__headline {
  margin: 28px 0 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-serif);
  font-size: clamp(2.1rem, 3.1vw, 3.45rem);
  font-weight: 400;
  line-height: 1.14;
  letter-spacing: -0.025em;
}

.executive-insight__accent-line {
  display: block;
  width: 64px;
  height: 2px;
  margin: 28px 0 24px;
  background: var(--alignify-gold);
}

.executive-insight__intro {
  max-width: 590px;
  margin: 0;
  font-family: var(--alignify-sans);
  font-size: 1.05rem;
  line-height: 1.75;
}

.executive-insight__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 192px;
  margin-top: 38px;
  padding: 17px 24px;
  border-radius: 7px;
  background: var(--alignify-navy);
  color: #fff;
  font-family: var(--alignify-sans);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
  box-shadow: 0 14px 30px rgba(4, 31, 66, 0.16);
  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.executive-insight__button:hover {
  transform: translateY(-2px);
  background: #0c376a;
  box-shadow: 0 18px 36px rgba(4, 31, 66, 0.22);
}

.executive-insight__button:focus-visible {
  outline: 3px solid rgba(196, 149, 49, 0.55);
  outline-offset: 4px;
}

/* Executive Briefing */

.executive-briefing {
  position: relative;
  padding: 28px;
  border: 1px solid rgba(16, 41, 75, 0.12);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(250,251,252,0.96));
  box-shadow:
    0 28px 70px rgba(17, 35, 58, 0.14),
    0 4px 12px rgba(17, 35, 58, 0.07);
}

.executive-briefing::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 36px;
  width: 120px;
  height: 3px;
  border-radius: 999px;
  background: var(--alignify-gold);
}

.executive-briefing__header {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: flex-start;
  margin-bottom: 22px;
}

.executive-briefing__identity {
  display: flex;
  align-items: center;
  gap: 18px;
}

.executive-briefing__seal {
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  border-radius: 50%;
  background: var(--alignify-light-blue);
  color: var(--alignify-navy);
}

.executive-briefing__seal svg {
  width: 48px;
  height: 48px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.executive-briefing__identity h3 {
  margin: 0;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: clamp(1.8rem, 2.3vw, 2.5rem);
  font-weight: 600;
  letter-spacing: -0.025em;
}

.executive-briefing__identity p {
  margin: 5px 0 0;
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.executive-briefing__date {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  font-family: var(--alignify-sans);
  font-size: 0.8rem;
}

.executive-briefing__date strong {
  color: var(--alignify-deep-navy);
}

.executive-briefing__date span {
  color: var(--alignify-muted);
}

.executive-briefing__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.briefing-card {
  min-width: 0;
  padding: 18px 22px;
  border: 1px solid var(--alignify-border);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.82);
}

.briefing-card--health {
  grid-column: span 1;
}

.briefing-card__label {
  margin: 0 0 14px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.briefing-card__metric {
  display: flex;
  align-items: center;
  gap: 20px;
}

.briefing-card__icon {
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  border-radius: 50%;
}

.briefing-card__icon--green {
  background: var(--alignify-gold-soft);
  color: var(--alignify-gold-dark);
}

.briefing-card__icon--blue {
  background: var(--alignify-light-blue);
  color: var(--alignify-navy);
}

.briefing-card__icon svg,
.executive-outcome__icon svg,
.insight-pathway__icon svg {
  width: 31px;
  height: 31px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.briefing-card__number {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: clamp(2.9rem, 4vw, 4.2rem);
  font-weight: 600;
  line-height: 0.9;
  letter-spacing: -0.055em;
}

.briefing-card__number--fraction {
  color: var(--alignify-deep-navy);
}

.briefing-card__number--fraction span {
  font-size: 0.48em;
  font-weight: 500;
  letter-spacing: -0.025em;
}

.briefing-card__status {
  margin: 10px 0 0;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: 1rem;
}

.briefing-card__status--green {
  color: var(--alignify-gold);
}

.briefing-card__change,
.briefing-card__description {
  margin: 7px 0 0;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 0.72rem;
}

.briefing-card__change span {
  color: var(--alignify-gold);
}

/* Health metrics */

.health-metrics {
  display: grid;
  gap: 13px;
}

.health-metric {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) 44px minmax(95px, 0.7fr);
  gap: 12px;
  align-items: center;
  font-family: var(--alignify-sans);
  font-size: 0.74rem;
}

.health-metric__name {
  display: flex;
  align-items: center;
  gap: 8px;
}

.health-metric__mini-icon {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--alignify-light-blue);
  color: var(--alignify-navy);
  font-size: 0.7rem;
}

.health-metric strong {
  color: var(--alignify-deep-navy);
  text-align: right;
}

.health-metric__bar {
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8eaed;
}

.health-metric__bar span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--alignify-gold);
  transition: width 1.1s cubic-bezier(.2,.7,.3,1);
}

.executive-briefing.is-visible .health-metric__bar span {
  width: var(--progress);
}

.institutional-focus {
  display: flex;
  align-items: center;
  gap: 22px;
}

.institutional-focus ul {
  margin: 0;
  padding-left: 18px;
  font-family: var(--alignify-sans);
  font-size: 0.78rem;
  line-height: 1.8;
}

.executive-briefing__note {
  margin: 12px 0 0;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 0.68rem;
}

/* Executive outcomes */

.executive-outcomes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding: 34px 0 58px;
}

.executive-outcome {
  display: grid;
  grid-template-columns: 86px 1fr;
  gap: 22px;
  min-width: 0;
  padding: 0 46px;
  border-right: 1px solid var(--alignify-border);
}

.executive-outcome:first-child {
  padding-left: 12px;
}

.executive-outcome:last-child {
  padding-right: 12px;
  border-right: 0;
}

.executive-outcome__icon {
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  border-radius: 50%;
}

.executive-outcome__icon--green {
  background: var(--alignify-gold-soft);
  color: var(--alignify-deep-navy);
}

.executive-outcome__icon--blue {
  background: var(--alignify-light-blue);
  color: var(--alignify-deep-navy);
}

.executive-outcome h3 {
  margin: 0 0 8px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: 1.45rem;
  letter-spacing: -0.02em;
}

.executive-outcome p {
  margin: 0;
  font-family: var(--alignify-sans);
  font-size: 0.95rem;
  line-height: 1.55;
}

/* Quote */

.executive-clarity {
  position: relative;
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 120px;
  align-items: center;
  min-height: 190px;
  padding: 42px max(24px, calc((100vw - 1320px) / 2));
  overflow: hidden;
  background:
    radial-gradient(circle at center, rgba(17, 77, 129, 0.34), transparent 52%),
    linear-gradient(110deg, #062344, #073563 55%, #05284f);
  color: #fff;
}

.executive-clarity::before,
.executive-clarity::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 140px;
  border: 1px solid rgba(55, 147, 204, 0.22);
  border-radius: 50%;
  transform: rotate(-8deg);
}

.executive-clarity::before {
  left: -160px;
  bottom: -70px;
}

.executive-clarity::after {
  right: -160px;
  bottom: -70px;
}

.executive-clarity__quote {
  position: relative;
  z-index: 1;
  color: #e0aa37;
  font-family: var(--alignify-serif);
  font-size: 5rem;
  line-height: 1;
  text-align: center;
}

.executive-clarity blockquote {
  position: relative;
  z-index: 1;
  margin: 0;
  text-align: center;
}

.executive-clarity blockquote span,
.executive-clarity blockquote strong {
  display: block;
  font-family: var(--alignify-serif);
  font-size: clamp(2rem, 3.2vw, 3.25rem);
  font-weight: 400;
  line-height: 1.14;
  letter-spacing: -0.025em;
}

.executive-clarity blockquote strong {
  margin-top: 5px;
  color: #e0aa37;
}

.executive-clarity blockquote strong::after {
  content: "";
  display: block;
  width: 120px;
  height: 2px;
  margin: 18px auto 0;
  background: #e0aa37;
}

/* Insight pathway */

.insight-pathway {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(24px, 4vw, 64px);
  padding: 40px 24px 52px;
  background: #fff;
}

.insight-pathway__item {
  display: grid;
  justify-items: center;
  gap: 10px;
  min-width: 96px;
}

.insight-pathway__icon {
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: var(--alignify-gold-soft);
  color: var(--alignify-deep-navy);
}

.insight-pathway__icon--blue {
  background: var(--alignify-light-blue);
}

.insight-pathway__item span {
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: 1.12rem;
  font-weight: 600;
}

.insight-pathway__connector {
  width: clamp(68px, 9vw, 150px);
  border-top: 2px dotted var(--alignify-navy);
}

/* Transition */

.capability-transition {
  padding: 76px 24px 96px;
  background: #fff;
  text-align: center;
}

.capability-transition > span {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.28em;
}

.capability-transition h2 {
  margin: 16px 0 10px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: clamp(2.7rem, 4vw, 4.6rem);
  font-weight: 500;
  letter-spacing: -0.04em;
}

.capability-transition p {
  margin: 0;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 1rem;
}

/* Responsive */

@media (max-width: 1180px) {
  .executive-insight__hero {
    grid-template-columns: 1fr;
  }

  .executive-insight__content {
    max-width: 780px;
  }

  .executive-briefing {
    max-width: 900px;
  }

  .executive-outcomes {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .executive-outcome,
  .executive-outcome:first-child,
  .executive-outcome:last-child {
    max-width: 760px;
    padding: 0;
    border-right: 0;
  }
}

@media (max-width: 760px) {
  .executive-insight__container {
    width: min(100% - 32px, 1440px);
  }

  .executive-insight__hero {
    padding-top: 72px;
  }

  .section-eyebrow {
    gap: 12px;
    white-space: normal;
  }

  .section-eyebrow__line {
    width: 38px;
  }

  .executive-insight__headline br {
    display: none;
  }

  .executive-briefing {
    padding: 22px 16px;
    border-radius: 14px;
  }

  .executive-briefing__header {
    flex-direction: column;
  }

  .executive-briefing__date {
    align-items: flex-start;
  }

  .executive-briefing__grid {
    grid-template-columns: 1fr;
  }

  .health-metric {
    grid-template-columns: 1fr 42px;
  }

  .health-metric__bar {
    grid-column: 1 / -1;
  }

  .executive-outcome {
    grid-template-columns: 64px 1fr;
  }

  .executive-outcome__icon {
    width: 60px;
    height: 60px;
  }

  .executive-clarity {
    grid-template-columns: 1fr;
    min-height: 260px;
  }

  .executive-clarity__quote {
    display: none;
  }

  .insight-pathway {
    flex-direction: column;
    gap: 18px;
  }

  .insight-pathway__connector {
    width: 2px;
    height: 34px;
    border-top: 0;
    border-left: 2px dotted var(--alignify-navy);
  }
}

@media (prefers-reduced-motion: reduce) {
  .executive-insight__button,
  .health-metric__bar span {
    transition: none;
  }
}

/* ==========================================
   EXECUTIVE INSIGHT — REFINED CLOSING
========================================== */

/* Give the Executive Briefing greater visual priority. */
.executive-insight__hero {
  grid-template-columns: minmax(330px, 0.72fr) minmax(680px, 1.28fr);
  gap: clamp(48px, 5vw, 84px);
}

/* Replace the quote banner with a contained leadership progression. */
.executive-progression {
  padding: 58px 24px;
  background:
    radial-gradient(circle at center, rgba(17, 77, 129, 0.28), transparent 55%),
    linear-gradient(110deg, #062344, #073563 55%, #05284f);
}

.executive-progression__inner {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: clamp(20px, 3vw, 42px);
}

.executive-progression__inner p {
  max-width: none;
  margin: 0;
  color: #ffffff;
  font-family: var(--alignify-serif);
  font-size: clamp(1.45rem, 2.25vw, 2.25rem);
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
}

.executive-progression__inner p:nth-of-type(2) {
  color: #e0aa37;
}

.executive-progression__inner span {
  width: 46px;
  height: 1px;
  background: rgba(224, 170, 55, 0.72);
}

/* The fourth capability now begins as its own contained section. */
.continuous-intro {
  padding: 72px 24px 94px;
  background: #ffffff;
  overflow: hidden;
}

.continuous-intro__container {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.continuous-intro__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-bottom: 34px;
}

.continuous-intro__eyebrow span {
  width: 110px;
  height: 1px;
  background: rgba(196, 149, 49, 0.62);
}

.continuous-intro__eyebrow p {
  max-width: none;
  margin: 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.28em;
  text-align: center;
}

.continuous-intro .insight-pathway {
  width: 100%;
  padding: 18px 0 42px;
  background: transparent;
}

.continuous-intro__heading {
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}

.continuous-intro__heading h2 {
  margin: 0 0 12px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: clamp(2.7rem, 4vw, 4.6rem);
  font-weight: 500;
  letter-spacing: -0.04em;
}

.continuous-intro__heading p {
  max-width: 700px;
  margin: 0 auto;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 1rem;
  line-height: 1.7;
  text-align: center;
}

@media (max-width: 1180px) {
  .executive-insight__hero {
    grid-template-columns: 1fr;
  }

  .executive-briefing {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
  }
}

@media (max-width: 820px) {
  .executive-progression__inner {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .executive-progression__inner span {
    width: 1px;
    height: 26px;
    margin: 0 auto;
  }

  .continuous-intro__eyebrow {
    gap: 12px;
  }

  .continuous-intro__eyebrow span {
    width: 42px;
  }

  .continuous-intro__eyebrow p {
    font-size: 0.67rem;
    letter-spacing: 0.18em;
  }
}
/* ==========================================
   CONTINUOUS IMPROVEMENT
========================================== */

.continuous-improvement {
  overflow: hidden;
  background: #ffffff;
  color: var(--alignify-text);
}

.continuous-improvement__container {
  width: min(1380px, calc(100% - 64px));
  margin: 0 auto;
  padding: 112px 0 96px;
}


/* Header */

.continuous-improvement__header {
  max-width: 960px;
  margin: 0 auto 86px;
  text-align: center;
}

.continuous-improvement__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
}

.continuous-improvement__eyebrow span {
  width: 150px;
  height: 1px;
  background: rgba(196, 149, 49, 0.65);
}

.continuous-improvement__eyebrow p {
  max-width: none;
  margin: 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

.continuous-improvement__header h2 {
  margin: 18px 0 8px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: clamp(3.3rem, 5.4vw, 5.7rem);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.045em;
}

.continuous-improvement__header h3 {
  margin: 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-serif);
  font-size: clamp(2.1rem, 3.7vw, 3.8rem);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.03em;
}

.continuous-improvement__title-line {
  width: 68px;
  height: 2px;
  margin: 28px auto 24px;
  background: var(--alignify-gold);
}

.continuous-improvement__header > p {
  max-width: 840px;
  margin: 0 auto;
  color: var(--alignify-text);
  font-family: var(--alignify-sans);
  font-size: 1.06rem;
  line-height: 1.8;
}


/* Growth path */

.growth-path {
  position: relative;

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

  align-items: stretch;
  gap: 12px;

  margin-bottom: 108px;
  padding-top: 70px;
}

.growth-stage {
  position: relative;
  
  display: flex;
  flex-direction: column;
  padding: 32px 24px 32px;
  background: #ffffff;
  border: 1px solid rgba(7, 31, 70, 0.15);
  border-radius: 14px;
  box-shadow: 0 16px 38px rgba(7, 31, 70, 0.07);
}
.growth-stage h4 {
    min-height: 58px;
    margin: 0 0 16px;

    color: var(--alignify-deep-navy);
    font-family: var(--alignify-serif);
    font-size: 1.35rem;
    font-weight: 600;
    line-height: 1.1;
}

.growth-stage p {
    margin: 0;

    color: var(--alignify-muted);
    font-family: var(--alignify-sans);
    font-size: 0.92rem;
    line-height: 1.65;
}

.growth-stage--one,
.growth-stage--two,
.growth-stage--three,
.growth-stage--four,
.growth-stage--five {
  transform: none;
}

.growth-stage__number {
  position: absolute;
  top: 18px;
  right: 20px;
  color: rgba(7, 31, 70, 0.16);
  font-family: var(--alignify-sans);
  font-size: 1.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

/* ==========================================
   CONTINUOUS IMPROVEMENT — FINAL REFINEMENTS
========================================== */

/* Slightly larger icon circles */

.growth-stage__icon {
  display: grid;
  place-items: center;

  width: 74px;
  height: 74px;

  margin-bottom: 24px;

  border-radius: 50%;

  background: var(--alignify-gold-soft);
  color: var(--alignify-deep-navy);
}

.growth-stage__icon--blue {
  background: var(--alignify-light-blue);
}

.growth-stage__icon--gold {
  background: rgba(196, 149, 49, 0.13);
  color: var(--alignify-gold);
}

.growth-stage__icon svg {
  width: 42px;
  height: 42px;

  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}


/* Final card emphasis */

.growth-stage--five {
  transform: none;

  border: 1px solid rgba(196, 149, 49, 0.55);

  box-shadow:
    0 16px 42px rgba(6, 35, 68, 0.08),
    0 0 24px rgba(196, 149, 49, 0.12);
}


/* Architectural step connectors */

.growth-path__connector {
  position: relative;

  width: 34px;
  height: 340px;
}

/* ==========================================
   CONTINUOUS GROWTH CONNECTOR
========================================== */


/* ==========================================
   UPSIDE-DOWN Z STEP CONNECTORS
========================================== */

.growth-path__connector {
  --step-bottom: 92px;

  position: relative;
  flex: 0 0 42px;

  width: 42px;
  height: 430px;
}

/* Lower horizontal line plus vertical rise */
.growth-path__connector::before {
  content: "";

  position: absolute;
  left: 0;
  bottom: var(--step-bottom);

  width: 22px;
  height: 26px;

  background: transparent;

  border-bottom: 1.5px solid rgba(196, 149, 49, 0.9);
  border-right: 1.5px solid rgba(196, 149, 49, 0.9);
}

/* Upper horizontal line */
.growth-path__connector::after {
  content: "";

  position: absolute;
  left: 22px;
  bottom: calc(var(--step-bottom) + 26px);

  width: 20px;
  height: 0;

  background: transparent;
  border-top: 1.5px solid rgba(196, 149, 49, 0.9);
}

/* Each connector sits progressively higher */

.growth-path__connector--one {
  --step-bottom: 94px;
}

.growth-path__connector--two {
  --step-bottom: 136px;
}

.growth-path__connector--three {
  --step-bottom: 178px;
}

.growth-path__connector--four {
  --step-bottom: 220px;
}


/* Connector positions */

.growth-path__connector--one::before {
    bottom: 84px;
}

.growth-path__connector--one::after {
    bottom: 110px;   /* before bottom + before height */
}

.growth-path__connector--two::before {
    bottom: 126px;
}

.growth-path__connector--two::after {
    bottom: 152px;
}

.growth-path__connector--three::before {
    bottom: 168px;
}

.growth-path__connector--three::after {
    bottom: 194px;
}

.growth-path__connector--four::before {
    bottom: 210px;
}

.growth-path__connector--four::after {
    bottom: 236px;
}

/* Improvement disciplines */

.improvement-disciplines {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  max-width: 1180px;
  margin: 0 auto 92px;
  border-top: 1px solid rgba(7, 31, 70, 0.15);
  border-bottom: 1px solid rgba(7, 31, 70, 0.15);
}

.improvement-discipline {
  display: grid;
  grid-template-columns: 62px 1fr;
  gap: 22px;
  min-height: 190px;
  padding: 38px 46px;
}

.improvement-discipline:nth-child(odd) {
  border-right: 1px solid rgba(7, 31, 70, 0.15);
}

.improvement-discipline:nth-child(-n + 2) {
  border-bottom: 1px solid rgba(7, 31, 70, 0.15);
}

.improvement-discipline > span {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.improvement-discipline h4 {
  margin: 0 0 12px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: 1.45rem;
}

.improvement-discipline p {
  max-width: none;
  margin: 0;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 0.94rem;
  line-height: 1.7;
}


/* Closing */

.continuous-improvement__closing {
  max-width: 970px;
  margin: 0 auto;
  text-align: center;
}

.continuous-improvement__closing p {
  max-width: none;
  margin: 0 0 12px;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 1.05rem;
}

.continuous-improvement__closing h3 {
  margin: 0;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-serif);
  font-size: clamp(2.1rem, 3.5vw, 3.55rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: -0.03em;
}


/* Platform transition */

.platform-transition {
  padding: 78px 24px 86px;
  background:
    radial-gradient(
      circle at center,
      rgba(17, 77, 129, 0.25),
      transparent 55%
    ),
    linear-gradient(
      110deg,
      #062344,
      #073563 55%,
      #05284f
    );
  color: #ffffff;
}

.platform-transition__inner {
  max-width: 960px;
  margin: 0 auto;
  text-align: center;
}

.platform-transition__inner > span {
  color: #e0aa37;
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.28em;
}

.platform-transition h2 {
  margin: 16px 0 14px;
  color: #ffffff;
  font-family: var(--alignify-serif);
  font-size: clamp(2.9rem, 4.6vw, 4.9rem);
  font-weight: 500;
  letter-spacing: -0.04em;
}

.platform-transition p {
  max-width: 760px;
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.84);
  font-family: var(--alignify-sans);
  font-size: 1.03rem;
  line-height: 1.75;
}


/* Responsive */

@media (max-width: 1180px) {

  .growth-path {
    grid-template-columns: repeat(5, minmax(210px, 1fr));
    overflow-x: auto;
    align-items: stretch;
    padding: 18px 4px 34px;
  }

  .growth-stage {
    transform: none;
  }

  .growth-path__connector {
    display: none;
  }

}

@media (max-width: 820px) {

  .continuous-improvement__container {
    width: min(100% - 32px, 1380px);
    padding-top: 88px;
  }

  .continuous-improvement__eyebrow {
    gap: 12px;
  }

  .continuous-improvement__eyebrow span {
    width: 44px;
  }

  .continuous-improvement__eyebrow p {
    font-size: 0.67rem;
    letter-spacing: 0.17em;
  }

  .growth-path {
    grid-template-columns: 1fr;
    overflow: visible;
  }

  .growth-stage {
    min-height: 0;
  }

  .improvement-disciplines {
    grid-template-columns: 1fr;
  }

  .improvement-discipline,
  .improvement-discipline:nth-child(odd),
  .improvement-discipline:nth-child(-n + 2) {
    border-right: 0;
    border-bottom: 1px solid rgba(7, 31, 70, 0.15);
  }

  .improvement-discipline:last-child {
    border-bottom: 0;
  }
}

/* ==========================================
   HEADING FONT CONSISTENCY
   Shared Methodology through Platform
========================================== */

/* Shared Methodology */

.methodology-title,
.methodology-highlight,
.methodology-next h3,
.perspective-card h4,
.methodology-principle h4 {
  font-family: var(--alignify-sans);
}


/* Executive Insight */

.executive-insight__title,
.executive-insight__headline,
.executive-briefing__identity h3,
.executive-outcome h3,
.capability-transition h2,
.executive-progression__inner p {
  font-family: var(--alignify-sans);
}


/* Continuous Improvement */

.continuous-improvement__header h2,
.continuous-improvement__header h3,
.growth-stage h4,
.improvement-discipline h4,
.continuous-improvement__closing h3 {
  font-family: var(--alignify-sans);
}


/* Platform transition */

.platform-transition h2 {
  font-family: var(--alignify-sans);
}

/* ==========================================
   CAPABILITY TITLE STANDARDIZATION
========================================== */

.methodology-title,
.executive-insight__title,
.continuous-improvement__header h2 {

    font-size: clamp(4rem, 6vw, 5.6rem);

    font-weight: 300;

    line-height: .95;

    letter-spacing: -.045em;

}
/* ==========================================
   EXECUTIVE INSIGHT TRANSITION
========================================== */

.capability-transition h2 {
    font-family: var(--alignify-sans);
    font-size: clamp(4rem, 6vw, 5.6rem);
    font-weight: 300;
    line-height: .95;
    letter-spacing: -.045em;
    color: var(--alignify-deep-navy);
}
/* ==========================================
   MEANINGFUL EVIDENCE
========================================== */

.meaningful-evidence {
  overflow: hidden;
  background: #ffffff;
  color: var(--alignify-text);
}

.meaningful-evidence__container {
  width: min(1320px, calc(100% - 64px));
  margin: 0 auto;
  padding: 112px 0 102px;
}


/* Header */

.meaningful-evidence__header {
  max-width: 940px;
  margin: 0 auto 84px;
  text-align: center;
}

.meaningful-evidence__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
}

.meaningful-evidence__eyebrow span {
  width: 150px;
  height: 1px;
  background: rgba(196, 149, 49, 0.65);
}

.meaningful-evidence__eyebrow p {
  max-width: none;
  margin: 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.28em;
}

.meaningful-evidence__header h2 {
  margin: 18px 0 8px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: clamp(4rem, 6vw, 5.6rem);
  font-weight: 300;
  line-height: 0.95;
  letter-spacing: -0.045em;
}

.meaningful-evidence__header h3 {
  margin: 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: clamp(2.2rem, 4vw, 3.9rem);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -0.035em;
}

.meaningful-evidence__title-line {
  width: 68px;
  height: 2px;
  margin: 28px auto 24px;
  background: var(--alignify-gold);
}

.meaningful-evidence__header > p {
  max-width: 840px;
  margin: 0 auto;
  color: var(--alignify-text);
  font-family: var(--alignify-sans);
  font-size: 1.06rem;
  line-height: 1.8;
}


/* Alignment spine */

.alignment-spine {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
  margin-bottom: 92px;
}

.alignment-spine::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 7%;
  right: 7%;
  height: 1px;
  background: rgba(196, 149, 49, 0.48);
}

.alignment-level {
  position: relative;
  z-index: 1;
  min-height: 330px;
  padding: 34px 30px 30px;
  background: #ffffff;
  border: 1px solid rgba(7, 31, 70, 0.15);
  border-radius: 14px;
  box-shadow: 0 16px 38px rgba(7, 31, 70, 0.07);
}

.alignment-level--four {
  border-color: rgba(196, 149, 49, 0.5);
  box-shadow:
    0 18px 42px rgba(7, 31, 70, 0.08),
    0 0 24px rgba(196, 149, 49, 0.1);
}

.alignment-level__number {
  position: absolute;
  top: 20px;
  right: 22px;
  color: rgba(7, 31, 70, 0.15);
  font-family: var(--alignify-sans);
  font-size: 1.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.alignment-level__icon {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  margin-bottom: 26px;
  border-radius: 50%;
  background: var(--alignify-gold-soft);
  color: var(--alignify-deep-navy);
}

.alignment-level__icon--blue {
  background: var(--alignify-light-blue);
}

.alignment-level__icon--gold {
  background: rgba(196, 149, 49, 0.13);
  color: var(--alignify-gold);
}

.alignment-level__icon svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.alignment-level__content > span {
  display: block;
  margin-bottom: 8px;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.alignment-level h4 {
  min-height: 54px;
  margin: 0 0 16px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: 1.42rem;
  font-weight: 600;
  line-height: 1.15;
}

.alignment-level p {
  max-width: none;
  margin: 0;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 0.92rem;
  line-height: 1.65;
}

.alignment-spine__connector {
  display: none;
}


/* Evidence principles */

.evidence-principles {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  max-width: 1180px;
  margin: 0 auto 92px;
  border-top: 1px solid rgba(7, 31, 70, 0.14);
  border-bottom: 1px solid rgba(7, 31, 70, 0.14);
}

.evidence-principles article {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 18px;
  min-height: 180px;
  padding: 36px 30px;
  border-right: 1px solid rgba(7, 31, 70, 0.14);
}

.evidence-principles article:last-child {
  border-right: 0;
}

.evidence-principles article > span {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.evidence-principles h4 {
  margin: 0 0 10px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: 1.18rem;
}

.evidence-principles p {
  max-width: none;
  margin: 0;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 0.9rem;
  line-height: 1.65;
}


/* Closing */

.meaningful-evidence__closing {
  max-width: 940px;
  margin: 0 auto;
  text-align: center;
}

.meaningful-evidence__closing p {
  max-width: none;
  margin: 0 0 14px;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 1rem;
}

.meaningful-evidence__closing h3 {
  margin: 0;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: clamp(2.2rem, 3.7vw, 3.65rem);
  font-weight: 300;
  line-height: 1.14;
  letter-spacing: -0.035em;
}


/* Shared Methodology transition */

.meaningful-evidence__transition {
  padding: 60px 24px 64px;
  background: #f4f7fb;
}

.meaningful-evidence__transition-inner {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.meaningful-evidence__transition-inner > span {
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.28em;
}

.meaningful-evidence__transition h2 {
  margin: 14px 0 10px;
  color: var(--alignify-deep-navy);
  font-family: var(--alignify-sans);
  font-size: clamp(3rem, 4.5vw, 4.6rem);
  font-weight: 300;
  letter-spacing: -0.04em;
}

.meaningful-evidence__transition p {
  max-width: 700px;
  margin: 0 auto;
  color: var(--alignify-muted);
  font-family: var(--alignify-sans);
  font-size: 1rem;
  line-height: 1.7;
}


/* Responsive */

@media (max-width: 1050px) {
  .alignment-spine,
  .evidence-principles {
    grid-template-columns: repeat(2, 1fr);
  }

  .alignment-spine::before {
    display: none;
  }

  .evidence-principles article:nth-child(2) {
    border-right: 0;
  }

  .evidence-principles article:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(7, 31, 70, 0.14);
  }
}

@media (max-width: 700px) {
  .meaningful-evidence__container {
    width: min(100% - 32px, 1320px);
    padding-top: 88px;
  }

  .meaningful-evidence__eyebrow {
    gap: 12px;
  }

  .meaningful-evidence__eyebrow span {
    width: 44px;
  }

  .meaningful-evidence__eyebrow p {
    font-size: 0.67rem;
    letter-spacing: 0.17em;
  }

  .alignment-spine,
  .evidence-principles {
    grid-template-columns: 1fr;
  }

  .alignment-level {
    min-height: 0;
  }

  .evidence-principles article,
  .evidence-principles article:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgba(7, 31, 70, 0.14);
  }

  .evidence-principles article:last-child {
    border-bottom: 0;
  }
}
/* ==========================================
   THE ALIGNIFY PLATFORM
========================================== */

.alignify-platform {
  overflow: hidden;
  background:
    radial-gradient(
      circle at 50% 36%,
      rgba(74, 137, 167, 0.12),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #071f46 0%,
      #0a2a58 55%,
      #071f46 100%
    );
  color: #ffffff;
}

.alignify-platform__container {
  width: min(1320px, calc(100% - 64px));
  margin: 0 auto;
  padding: 118px 0 112px;
}


/* Header */

.alignify-platform__header {
  max-width: 980px;
  margin: 0 auto 90px;
  text-align: center;
}

.alignify-platform__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
}

.alignify-platform__eyebrow span {
  width: 150px;
  height: 1px;
  background: rgba(196, 149, 49, 0.7);
}

.alignify-platform__eyebrow p {
  max-width: none;
  margin: 0;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.25em;
}

.alignify-platform__header h2 {
  margin: 20px 0 10px;
  color: #ffffff;
  font-family: var(--alignify-sans);
  font-size: clamp(4rem, 6vw, 5.6rem);
  font-weight: 300;
  line-height: 0.95;
  letter-spacing: -0.045em;
}

.alignify-platform__header h3 {
  max-width: 940px;
  margin: 0 auto;
  color: #d9e8f0;
  font-family: var(--alignify-sans);
  font-size: clamp(2rem, 3.6vw, 3.5rem);
  font-weight: 300;
  line-height: 1.1;
  letter-spacing: -0.035em;
}

.alignify-platform__title-line {
  width: 70px;
  height: 2px;
  margin: 30px auto 26px;
  background: var(--alignify-gold);
}

.alignify-platform__header > p {
  max-width: 850px;
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.78);
  font-family: var(--alignify-sans);
  font-size: 1.05rem;
  line-height: 1.8;
}


/* Platform Architecture */

.platform-architecture {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 34px;
  max-width: 1180px;
  margin: 0 auto 108px;
  padding: 0 120px;
}

.platform-architecture::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(196, 149, 49, 0.22);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.platform-architecture::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 370px;
  height: 370px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.platform-architecture__center {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: 275px;
  height: 275px;
  padding: 26px;
  border: 1px solid rgba(196, 149, 49, 0.65);
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      rgba(196, 149, 49, 0.14),
      rgba(7, 31, 70, 0.96) 66%
    );
  box-shadow:
    0 0 55px rgba(196, 149, 49, 0.12),
    0 24px 50px rgba(0, 0, 0, 0.22);
  transform: translate(-50%, -50%);
  text-align: center;
}

.platform-architecture__brand > span {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.28em;
}

.platform-architecture__brand h3 {
  margin: 12px 0 14px;
  color: #ffffff;
  font-family: var(--alignify-sans);
  font-size: 1.55rem;
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -0.02em;
}

.platform-architecture__brand p {
  max-width: 210px;
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.68);
  font-family: var(--alignify-sans);
  font-size: 0.78rem;
  line-height: 1.55;
}


/* Capability Cards */

.platform-capability {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 62px 1fr;
  gap: 22px;
  min-height: 225px;
  padding: 34px 30px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.055);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.14);
  backdrop-filter: blur(12px);
}

.platform-capability--one,
.platform-capability--three {
  margin-right: 100px;
}

.platform-capability--two,
.platform-capability--four {
  margin-left: 100px;
}

.platform-capability__number {
  position: absolute;
  top: 22px;
  right: 24px;
  color: rgba(255, 255, 255, 0.16);
  font-family: var(--alignify-sans);
  font-size: 1.45rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.platform-capability__icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: rgba(109, 182, 204, 0.14);
  color: #a9d3df;
}

.platform-capability__icon--gold {
  background: rgba(196, 149, 49, 0.16);
  color: var(--alignify-gold);
}

.platform-capability__icon svg {
  width: 33px;
  height: 33px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.platform-capability div > span {
  display: block;
  margin-bottom: 8px;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.platform-capability h4 {
  margin: 0 0 14px;
  color: #ffffff;
  font-family: var(--alignify-sans);
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1.18;
}

.platform-capability p {
  max-width: none;
  margin: 0;
  color: rgba(255, 255, 255, 0.68);
  font-family: var(--alignify-sans);
  font-size: 0.89rem;
  line-height: 1.65;
}

/* ==========================================================
   INTERACTIVE PLATFORM SHOWCASE
========================================================== */

.platform-showcase {
    max-width: 1240px;
    margin: 0 auto 108px;
}


/* Workspace navigation */

.platform-showcase__tabs {
    position: relative;
    z-index: 3;

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

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 14px 14px 0 0;

    background: rgba(255, 255, 255, 0.045);
}

.platform-showcase__tab {
    position: relative;

    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 14px;
    align-items: center;

    min-height: 104px;
    padding: 22px 24px;

    color: rgba(255, 255, 255, 0.72);
    text-align: left;

    background: transparent;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.11);

    cursor: pointer;

    transition:
        background-color 180ms ease,
        color 180ms ease;
}

.platform-showcase__tab:last-child {
    border-right: 0;
}

.platform-showcase__tab::after {
    position: absolute;
    right: 24px;
    bottom: 0;
    left: 24px;

    height: 3px;

    content: "";

    background: var(--alignify-gold);

    transform: scaleX(0);
    transform-origin: center;

    transition: transform 220ms ease;
}

.platform-showcase__tab:hover,
.platform-showcase__tab:focus-visible {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.055);
}

.platform-showcase__tab.is-active {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.075);
}

.platform-showcase__tab.is-active::after {
    transform: scaleX(1);
}

.platform-showcase__tab-number {
    color: var(--alignify-gold);
    font-family: var(--alignify-sans);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.14em;
}

.platform-showcase__tab strong {
    display: block;

    margin-bottom: 6px;

    color: inherit;
    font-family: var(--alignify-sans);
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.2;
}

.platform-showcase__tab small {
    display: block;

    color: rgba(255, 255, 255, 0.48);
    font-family: var(--alignify-sans);
    font-size: 0.7rem;
    line-height: 1.3;
}


/* Main workspace panel */

.platform-showcase__stage {
    position: relative;

    overflow: hidden;

    min-height: 690px;

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-top: 0;
    border-radius: 0 0 18px 18px;

    background:
        radial-gradient(
            circle at 74% 44%,
            rgba(65, 142, 183, 0.14),
            transparent 36%
        ),
        rgba(255, 255, 255, 0.04);

    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.18);
}

.platform-showcase__panel {
    display: grid;
    grid-template-columns: minmax(290px, 0.72fr) minmax(0, 1.55fr);
    gap: 58px;
    align-items: center;

    min-height: 690px;
    padding: 64px 54px;

    animation: platform-panel-enter 320ms ease both;
}

.platform-showcase__panel[hidden] {
    display: none;
}

@keyframes platform-panel-enter {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Workspace copy */

.platform-showcase__copy {
    position: relative;
    z-index: 2;
}

.platform-showcase__eyebrow {
    display: block;

    margin-bottom: 18px;

    color: var(--alignify-gold);
    font-family: var(--alignify-sans);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.platform-showcase__copy h3 {
    max-width: 430px;
    margin: 0 0 20px;

    color: #ffffff;
    font-family: var(--alignify-sans);
    font-size: clamp(2.2rem, 3.5vw, 3.6rem);
    font-weight: 300;
    line-height: 1;
    letter-spacing: -0.04em;
}

.platform-showcase__lead {
    max-width: 440px;
    margin: 0 0 30px;

    color: rgba(255, 255, 255, 0.72);
    font-family: var(--alignify-sans);
    font-size: 0.98rem;
    line-height: 1.75;
}

.platform-showcase__features {
    display: grid;
    gap: 14px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.platform-showcase__features li {
    position: relative;

    padding-left: 30px;

    color: rgba(255, 255, 255, 0.79);
    font-family: var(--alignify-sans);
    font-size: 0.88rem;
    line-height: 1.5;
}

.platform-showcase__features li::before {
    position: absolute;
    top: 2px;
    left: 0;

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    content: "✓";

    color: var(--alignify-gold);
    font-size: 0.7rem;

    border: 1px solid rgba(196, 149, 49, 0.65);
    border-radius: 50%;
}


/* Screenshot presentation */

.platform-showcase__visual {
    position: relative;

    min-width: 0;
}

.platform-showcase__visual::before {
    position: absolute;
    inset: 12% -8% -12% 16%;
    z-index: 0;

    content: "";

    background:
        radial-gradient(
            circle,
            rgba(196, 149, 49, 0.13),
            transparent 64%
        );

    filter: blur(12px);
}

.platform-showcase__screen {
    position: relative;
    z-index: 1;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 14px;

    background: #ffffff;

    box-shadow:
        0 28px 65px rgba(0, 0, 0, 0.28),
        0 0 34px rgba(196, 149, 49, 0.07);

    transform: perspective(1500px) rotateY(-2deg);
    transform-origin: center;
}

.platform-showcase__screen::before {
    display: block;

    height: 22px;

    content: "";

    background:
        radial-gradient(
            circle at 18px 50%,
            rgba(255, 255, 255, 0.42) 0 3px,
            transparent 3.5px
        ),
        radial-gradient(
            circle at 32px 50%,
            rgba(255, 255, 255, 0.29) 0 3px,
            transparent 3.5px
        ),
        radial-gradient(
            circle at 46px 50%,
            rgba(255, 255, 255, 0.19) 0 3px,
            transparent 3.5px
        ),
        #102d54;
}

.platform-showcase__screen img {
    display: block;

    width: 100%;
    height: auto;

    object-fit: contain;
}


/* Responsive */

@media (max-width: 1050px) {

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

    .platform-showcase__tab:nth-child(2) {
        border-right: 0;
    }

    .platform-showcase__tab:nth-child(-n + 2) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.11);
    }

    .platform-showcase__panel {
        grid-template-columns: 1fr;
        gap: 46px;

        padding: 58px 42px;
    }

    .platform-showcase__stage,
    .platform-showcase__panel {
        min-height: 0;
    }

    .platform-showcase__copy {
        max-width: 720px;
    }

    .platform-showcase__screen {
        transform: none;
    }

}

@media (max-width: 700px) {

    .platform-showcase {
        margin-bottom: 76px;
    }

    .platform-showcase__tabs {
        grid-template-columns: 1fr;

        border-radius: 12px 12px 0 0;
    }

    .platform-showcase__tab,
    .platform-showcase__tab:nth-child(2) {
        min-height: 82px;

        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.11);
    }

    .platform-showcase__tab:last-child {
        border-bottom: 0;
    }

    .platform-showcase__panel {
        padding: 44px 24px;
    }

    .platform-showcase__copy h3 {
        font-size: clamp(2.2rem, 10vw, 3.1rem);
    }

}

/* Platform Foundation */

.platform-foundation {
  max-width: 1180px;
  margin: 0 auto 104px;
  padding: 70px 62px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.045);
}

.platform-foundation__intro {
  max-width: 780px;
  margin-bottom: 52px;
}

.platform-foundation__intro > span {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.22em;
}

.platform-foundation__intro h3 {
  margin: 14px 0 0;
  color: #ffffff;
  font-family: var(--alignify-sans);
  font-size: clamp(2rem, 3.3vw, 3.2rem);
  font-weight: 300;
  line-height: 1.12;
  letter-spacing: -0.03em;
}

.platform-foundation__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.platform-foundation__grid article {
  min-height: 200px;
  padding: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-right: 1px solid rgba(255, 255, 255, 0.12);
}

.platform-foundation__grid article:last-child {
  border-right: 0;
}

.platform-foundation__grid article > span {
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.platform-foundation__grid h4 {
  margin: 18px 0 12px;
  color: #ffffff;
  font-family: var(--alignify-sans);
  font-size: 1.1rem;
}

.platform-foundation__grid p {
  max-width: none;
  margin: 0;
  color: rgba(255, 255, 255, 0.64);
  font-family: var(--alignify-sans);
  font-size: 0.86rem;
  line-height: 1.65;
}


/* Platform Outcomes */

.platform-outcomes {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 90px;
  max-width: 1120px;
  margin: 0 auto;
  align-items: center;
}

.platform-outcomes__statement p {
  max-width: none;
  margin: 0 0 14px;
  color: var(--alignify-gold);
  font-family: var(--alignify-sans);
  font-size: 0.9rem;
  font-weight: 700;
}

.platform-outcomes__statement h3 {
  margin: 0;
  color: #ffffff;
  font-family: var(--alignify-sans);
  font-size: clamp(2rem, 3.2vw, 3.1rem);
  font-weight: 300;
  line-height: 1.16;
  letter-spacing: -0.03em;
}

.platform-outcomes__list {
  display: grid;
  gap: 20px;
}

.platform-outcomes__list div {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 16px;
  align-items: start;
}

.platform-outcomes__list span {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
  margin-top: 2px;
  border: 1px solid rgba(196, 149, 49, 0.65);
  border-radius: 50%;
}

.platform-outcomes__list span::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 8px;
  width: 5px;
  height: 9px;
  border-right: 1.5px solid var(--alignify-gold);
  border-bottom: 1.5px solid var(--alignify-gold);
  transform: rotate(45deg);
}

.platform-outcomes__list p {
  max-width: none;
  margin: 0;
  color: rgba(255, 255, 255, 0.75);
  font-family: var(--alignify-sans);
  font-size: 0.96rem;
  line-height: 1.55;
}


/* Responsive */

@media (max-width: 1100px) {
  .platform-architecture {
    padding: 0;
  }

  .platform-architecture__center,
  .platform-architecture::before,
  .platform-architecture::after {
    display: none;
  }

  .platform-capability--one,
  .platform-capability--two,
  .platform-capability--three,
  .platform-capability--four {
    margin: 0;
  }

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

  .platform-foundation__grid article:nth-child(2) {
    border-right: 0;
  }

  .platform-foundation__grid article:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  }
}

@media (max-width: 760px) {
  .alignify-platform__container {
    width: min(100% - 32px, 1320px);
    padding: 90px 0;
  }

  .alignify-platform__eyebrow {
    gap: 12px;
  }

  .alignify-platform__eyebrow span {
    width: 42px;
  }

  .alignify-platform__eyebrow p {
    font-size: 0.64rem;
    letter-spacing: 0.15em;
  }

  .platform-architecture,
  .platform-foundation__grid,
  .platform-outcomes {
    grid-template-columns: 1fr;
  }

  .platform-capability {
    grid-template-columns: 50px 1fr;
    min-height: 0;
    padding: 28px 24px;
  }

  .platform-capability__icon {
    width: 48px;
    height: 48px;
  }

  .platform-capability__icon svg {
    width: 28px;
    height: 28px;
  }

  .platform-foundation {
    padding: 48px 24px;
  }

  .platform-foundation__grid article,
  .platform-foundation__grid article:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  }

  .platform-foundation__grid article:last-child {
    border-bottom: 0;
  }

  .platform-outcomes {
    gap: 50px;
  }
}
/*==========================================================
    JOURNEY
==========================================================*/

.journey-section{

    background:var(--alignify-light);

    padding:180px 8%;
}

.journey-container{

    max-width:1400px;

    margin:auto;
}

.section-label{

    display:block;

    margin-bottom:28px;

    color:var(--alignify-gold);

    letter-spacing:.25em;

    font-size:.8rem;

    font-weight:600;

    text-transform:uppercase;
}

.journey-heading{

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

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

    font-weight:300;

    line-height:.95;

    max-width:900px;

    margin-bottom:30px;

    color:var(--alignify-navy);
}

.journey-intro{

    max-width:820px;

    font-size:1.2rem;

    line-height:1.9;

    color:#536173;

    margin-bottom:110px;
}

/* timeline */

.journey-timeline{

    display:grid;

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

    gap:40px;

    position:relative;

    margin-bottom:180px;
}

.journey-timeline::before{

    content:"";

    position:absolute;

    top:42px;

    left:0;

    right:0;

    height:2px;

    background:#d6dde7;

    z-index:0;
}

.journey-step{

    position:relative;

    z-index:2;
}

.journey-number{

    width:84px;

    height:84px;

    border-radius:50%;

    background:var(--white);

    border:3px solid #b78b2d;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:1.2rem;

    font-weight:700;

    color:var(--alignify-navy);

    margin-bottom:35px;

    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.journey-step h3{

    font-size:1.7rem;

    color:var(--alignify-navy);

    margin-bottom:10px;
}

.journey-step h4{

    color:var(--alignify-gold);

    margin-bottom:20px;

    font-weight:600;

    line-height:1.4;
}

.journey-step p{

    color:#566679;

    line-height:1.8;
}

/* philosophy */

.journey-philosophy{

    text-align:center;

    max-width:900px;

    margin:auto;
}

.journey-small{

    text-transform:uppercase;

    letter-spacing:.2em;

    color:var(--alignify-gold);

    font-size:.95rem;

    margin-bottom:25px;
}

.journey-philosophy h2{

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

    font-size:clamp(3.4rem,5vw,5.4rem);

    font-weight:300;

    line-height:.95;

    color:var(--alignify-navy);

    margin-bottom:30px;
}

.journey-description{

    font-size:1.25rem;

    line-height:1.9;

    color:#556678;

    max-width:760px;

    margin:auto;
}

/* responsive */

@media (max-width:1100px){

    .journey-timeline{

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

    .journey-timeline::before{

        display:none;
    }

}

@media (max-width:700px){

    .journey-timeline{

        grid-template-columns:1fr;
    }

}

/* =========================================
   THE ALIGNIFY DIFFERENCE
========================================= */
.alignify-difference {
  padding: 120px 0;
  background: #f7f9fb;
}

.alignify-difference__container {
  max-width: 1280px;
}

.alignify-difference__header {
  max-width: 860px;
  margin-bottom: 58px;
}

.alignify-difference__header h2 {
  margin: 0;
  color: #082a4a;
  font-size: clamp(2.8rem, 4.8vw, 5rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
}

.alignify-difference__header p {
  max-width: 790px;
  margin: 26px 0 0;
  color: #4f6071;
  font-size: 1.08rem;
  line-height: 1.75;
}

.alignify-difference__figure {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.alignify-difference__figure a {
  display: block;
}

.alignify-difference__figure img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid rgba(8, 42, 74, 0.12);
  border-radius: 18px;
  box-shadow: 0 28px 68px rgba(8, 42, 74, 0.14);
  transition: transform 260ms ease, box-shadow 260ms ease;
}

.alignify-difference__figure a:hover img,
.alignify-difference__figure a:focus-visible img {
  transform: translateY(-4px);
  box-shadow: 0 34px 78px rgba(8, 42, 74, 0.18);
}

.alignify-difference__figure figcaption {
  margin-top: 18px;
  color: #748191;
  font-size: 0.84rem;
}

.alignify-difference__takeaways {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 58px;
}

.alignify-difference__takeaways article {
  padding: 34px 30px;
  background: #fff;
  border: 1px solid rgba(8, 42, 74, 0.12);
  border-radius: 14px;
  box-shadow: 0 12px 32px rgba(8, 42, 74, 0.06);
}

.alignify-difference__takeaways article > span {
  display: block;
  margin-bottom: 26px;
  color: #b7831c;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.alignify-difference__takeaways h3 {
  margin: 0 0 14px;
  color: #082a4a;
  font-size: 1.38rem;
  line-height: 1.25;
}

.alignify-difference__takeaways p {
  margin: 0;
  color: #5a6877;
  line-height: 1.65;
}

@media (max-width: 900px) {
  .alignify-difference__takeaways {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .alignify-difference {
    padding: 84px 0;
  }

  .alignify-difference__header {
    margin-bottom: 40px;
  }

  .alignify-difference__figure img {
    border-radius: 10px;
  }
}
