/* Illumim Enterprise Coherence experience on Blocksy */

:root {
    --ill-bg: #f7f8f5;
    --ill-ink: #17343d;
    --ill-muted: #596e77;
    --ill-line: #cadbdd;
    --ill-soft: #e2eff0;
    --ill-dark: #17343d;
    --ill-white: #ffffff;
    --ill-gold: #d1aa55;
    --ill-gold-soft: #f4ead2;
    --ill-water: #315d68;
    --ill-water-deep: #10272f;
    --ill-teal: #18a6b3;
    --ill-aqua: #72d5db;
}

/*:root {
    --ill-bg: #f7f7f3;
    --ill-ink: #171d1f;
    --ill-muted: #60686a;
    --ill-line: #d8dcd8;
    --ill-soft: #eceeea;
    --ill-dark: #171d1f;
    --ill-white: #ffffff;
    --ill-gold: #bd9d5b;
    --ill-gold-soft: #f6f0e3;
    --ill-water: #10282d;
    --ill-water-deep: #07181c;
}*/

/* Let Blocksy own header/footer. Let Illumim own the homepage canvas. */
body.home .site-main,
body.home #main-container,
body.home .ct-container-full {
    width: 100%;
    max-width: none;
}

body.home .entry-header,
body.home .hero-section[data-type="type-1"] {
    display: none;
}

.illumim-site {
    background: var(--ill-bg);
    color: var(--ill-ink);
    overflow: hidden;
}

.illumim-site *,
.illumim-site *::before,
.illumim-site *::after {
    box-sizing: border-box;
}

.illumim-site h1,
.illumim-site h2,
.illumim-site h3 {
    letter-spacing: -0.035em;
    line-height: 1.03;
    margin: 0 0 0.55em;
}

.illumim-site h1 {
    font-size: clamp(3.2rem, 7vw, 6.9rem);
    line-height: .94;
}

.illumim-site h2 {
    font-size: clamp(2.2rem, 4.5vw, 4.8rem);
}

.illumim-site h3 {
    font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.illumim-site p {
    color: var(--ill-muted);
    font-size: 1.03rem;
    line-height: 1.67;
}

.illumim-site strong {
    color: var(--ill-ink);
}

.ill-wrap {
    width: min(1180px, calc(100% - 42px));
    margin-inline: auto;
}

.ill-narrow {
    width: min(860px, calc(100% - 42px));
}

.ill-center {
    text-align: center;
}

.ill-max {
    max-width: 850px;
}

.ill-section {
    position: relative;
    padding: 112px 0;
}

.ill-soft {
    background: var(--ill-soft);
}

.ill-dark {
    background: var(--ill-dark);
    color: var(--ill-white);
}

.ill-dark h1,
.ill-dark h2,
.ill-dark h3,
.ill-dark strong {
    color: var(--ill-white);
}

.ill-dark p,
.ill-light-copy {
    color: #c8cecb !important;
}

.ill-eyebrow {
    display: block;
    margin-bottom: 1rem;
    color: var(--ill-gold);
    font-size: .76rem;
    font-weight: 750;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.ill-eyebrow.ill-light {
    color: #cdb77f;
}

.ill-lead {
    font-size: clamp(1.1rem, 1.7vw, 1.3rem) !important;
    line-height: 1.55 !important;
}

.ill-emphasis {
    color: var(--ill-ink) !important;
    font-size: 1.22rem !important;
    font-weight: 750;
}

.ill-gold,
.ill-big-gold,
.ill-gold-text {
    color: var(--ill-gold) !important;
}

.ill-big-gold {
    font-size: clamp(1.45rem, 2.6vw, 2.2rem) !important;
    line-height: 1.35 !important;
    font-weight: 750;
    max-width: 1000px;
}

.ill-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin-top: 12px;
    padding: .82rem 1.25rem;
    border: 1px solid transparent;
    border-radius: 999px;
    text-decoration: none !important;
    font-weight: 750;
    transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

.ill-button:hover {
    transform: translateY(-2px);
}

.ill-button-dark {
    background: var(--ill-dark);
    color: #fff;
}

.ill-button-light {
    background: #fff;
    color: var(--ill-dark);
}

.ill-button-outline {
    border-color: var(--ill-ink);
    color: var(--ill-ink);
    background: transparent;
}

.ill-button-gold {
    background: var(--ill-gold);
    color: var(--ill-dark);
}

.ill-split,
.ill-contact-grid,
.ill-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(42px, 6vw, 84px);
    align-items: center;
}
#fragmentation .ill-split {
    grid-template-columns: minmax(0, 0.48fr) minmax(0, 0.52fr); gap: 22px; }
#fragmentation h2 {font-size; clamp(44px, 4.2vw, 66px); line-height: 1.05;}
@media (min-width: 981px) {
    #fragmentation .ill-split > :last-child {
        align-self: end; 
		transform: none;
		position: relative;
		left: 28px;
		top: 8px;
    }
}

/* HERO — logo/light/water identity */
.ill-hero {
    min-height: min(900px, calc(100vh - 72px));
    display: flex;
    align-items: center;
    background:
        linear-gradient(90deg, rgba(247,247,243,.98) 0%, rgba(247,247,243,.98) 46%, rgba(247,247,243,.78) 62%, rgba(247,247,243,.15) 100%),
        linear-gradient(180deg, #f7f7f3 0%, #eff2ee 100%);
}

.ill-water {
    position: absolute;
    inset: auto 0 0 48%;
    height: 56%;
    overflow: hidden;
    pointer-events: none;
    opacity: .96;
    background:
        radial-gradient(ellipse at 45% 0%, rgba(151,211,219,.40), transparent 33%),
        linear-gradient(180deg, rgba(23,64,69,.12), rgba(7,24,28,.96)),
        var(--ill-water);
    clip-path: polygon(8% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.ill-water::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        repeating-radial-gradient(
            ellipse at 48% 6%,
            rgba(255,255,255,.22) 0 1px,
            transparent 2px 24px
        );
    opacity: .42;
    transform: scaleY(.36);
    transform-origin: top;
}

.ill-water-glow {
    position: absolute;
    left: 34%;
    top: -15%;
    width: 280px;
    height: 115%;
    background: linear-gradient(
        180deg,
        rgba(246,238,206,.62),
        rgba(171,218,222,.18) 38%,
        rgba(91,176,187,.07) 75%,
        transparent
    );
    filter: blur(22px);
    transform: perspective(520px) rotateX(8deg);
    opacity: .75;
}

.ill-water-line {
    position: absolute;
    left: 10%;
    width: 80%;
    height: 16px;
    border-top: 1px solid rgba(220,248,247,.25);
    border-radius: 50%;
    animation: ill-water-drift 6s ease-in-out infinite alternate;
}
.water-1 { top: 18%; }
.water-2 { top: 37%; animation-delay: -.9s; }
.water-3 { top: 57%; animation-delay: -2.1s; }
.water-4 { top: 77%; animation-delay: -3.4s; }

@keyframes ill-water-drift {
    from { transform: translateX(-1.5%) scaleX(.96); opacity: .35; }
    to { transform: translateX(1.5%) scaleX(1.03); opacity: .8; }
}

.ill-hero-copy {
    position: relative;
    z-index: 5;
    padding: 28px 0;
}

.ill-logo-water-stage {
    position: relative;
    min-height: 610px;
    z-index: 4;
}

.ill-logo-glow {
    position: absolute;
    left: 50%;
    top: 13%;
    z-index: 6;
    transform: translateX(-50%);
    width: min(320px, 70%);
    text-align: center;
    filter: drop-shadow(0 0 18px rgba(255,248,218,.55));
}

.ill-logo-glow img {
    max-width: 250px;
    height: auto;
}

.ill-logo-glow .custom-logo-link {
    display: inline-block;
}

.illumim-wordmark {
    color: #f7f0d9 !important;
    font-size: clamp(2.25rem, 4vw, 3.6rem);
    font-weight: 800;
    letter-spacing: .08em;
    text-decoration: none !important;
    text-shadow:
        0 0 16px rgba(255,244,204,.92),
        0 0 42px rgba(166,226,230,.55);
}

.ill-light-column {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 18%;
    width: 240px;
    height: 450px;
    transform: translateX(-50%);
    clip-path: polygon(40% 0%, 60% 0%, 96% 100%, 4% 100%);
    background: linear-gradient(
        180deg,
        rgba(255,250,225,.58),
        rgba(188,232,231,.22) 48%,
        rgba(130,204,208,.05)
    );
    filter: blur(6px);
    opacity: .86;
}

.ill-systems {
    position: absolute;
    inset: 170px 0 0;
}

.ill-node,
.ill-rel-node,
.ill-orbit-node {
    position: absolute;
    z-index: 4;
    padding: .68rem .92rem;
    border: 1px solid rgba(191,198,194,.75);
    border-radius: 999px;
    background: rgba(255,255,255,.92);
    box-shadow: 0 12px 30px rgba(20,26,28,.07);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .035em;
    backdrop-filter: blur(6px);
}

.ill-systems .n1 { left: 4%; top: 9%; }
.ill-systems .n2 { left: 45%; top: 5%; }
.ill-systems .n3 { right: 1%; top: 20%; }
.ill-systems .n4 { left: 10%; top: 48%; }
.ill-systems .n5 { left: 54%; top: 57%; }
.ill-systems .n6 { left: 34%; bottom: 3%; }
.ill-systems .n7 { right: 1%; bottom: 2%; }

.ill-network {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.ill-network line {
    stroke: rgba(212,221,218,.65);
    stroke-width: 1.4;
    stroke-dasharray: 7 8;
}

/* Relationships */
.ill-statement-list p {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--ill-line);
}

.ill-relationship-stage {
    position: relative;
    min-height: 540px;
}

.ill-stage-label {
    position: absolute;
    top: 0;
    right: 0;
    color: var(--ill-gold);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.ill-rel-node.r1 { left: 3%; top: 10%; }
.ill-rel-node.r2 { left: 47%; top: 8%; }
.ill-rel-node.r3 { right: 1%; top: 24%; }
.ill-rel-node.r4 { left: 12%; top: 47%; }
.ill-rel-node.r5 { left: 53%; top: 57%; }
.ill-rel-node.r6 { left: 29%; bottom: 4%; }

.ill-relationship-stage svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.ill-rel {
    stroke: #aeb6b2;
    stroke-width: 2;
    opacity: 0;
    transition: opacity 1s ease;
}

.ill-rel.conflict {
    stroke: var(--ill-gold);
    stroke-dasharray: 10 8;
}

.ill-relationship-stage.active .ill-rel {
    opacity: 1;
}

.ill-statement-section {
    padding: 145px 0;
}

/* Enterprise Coherence reveal */
.ill-definition {
    color: #fff !important;
    font-size: clamp(1.35rem, 2.2vw, 1.7rem) !important;
    max-width: 690px;
}

.ill-secondary-links {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 22px;
}

.ill-secondary-links a {
    color: #cfd5d2;
    text-decoration: none;
    border-bottom: 1px solid #596260;
    padding-bottom: 3px;
    font-size: .86rem;
}

.ill-secondary-links a:hover {
    color: var(--ill-gold);
}

.ill-coherence-orbit {
    position: relative;
    min-height: 550px;
}

.ill-coherence-orbit svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.ill-coherence-orbit svg line {
    stroke: var(--ill-gold);
    stroke-width: 1.6;
    opacity: .7;
}

.ill-orbit-center {
    position: absolute;
    z-index: 4;
    left: 50%;
    top: 50%;
    width: 150px;
    height: 150px;
    transform: translate(-50%, -50%);
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--ill-gold);
    color: var(--ill-dark);
    text-align: center;
    font-weight: 850;
}

.ill-orbit-node {
    background: #22292b;
    border-color: #485052;
    color: #fff;
}
.ill-orbit-node.o1 { left: 5%; top: 17%; }
.ill-orbit-node.o2 { right: 4%; top: 17%; }
.ill-orbit-node.o3 { left: 0; top: 56%; }
.ill-orbit-node.o4 { left: 38%; bottom: 2%; }
.ill-orbit-node.o5 { right: 0; top: 56%; }
.ill-orbit-node.o6 { right: 4%; bottom: 10%; }

/* Cards, rows, explanatory components */
.ill-cards {
    display: grid;
    gap: 20px;
    margin-top: 40px;
}

.ill-cards.six,
.ill-cards.ill-insights {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ill-card {
    min-height: 190px;
    padding: 28px;
    border: 1px solid var(--ill-line);
    border-radius: 22px;
    background: #fff;
}

.ill-card small {
    color: var(--ill-gold);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.ill-card h3 a {
    color: var(--ill-ink);
    text-decoration: none;
}

.ill-text-link {
    color: var(--ill-ink);
    font-size: .88rem;
    font-weight: 750;
    text-decoration: none;
}

.ill-discipline-row,
.ill-chips,
.ill-three-pill {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.ill-discipline-row span,
.ill-chips span,
.ill-three-pill span {
    padding: .62rem .9rem;
    border: 1px solid var(--ill-line);
    border-radius: 999px;
    background: #fff;
    font-size: .82rem;
    font-weight: 750;
}

.ill-dark .ill-chips span {
    background: #232a2c;
    border-color: #3f4748;
    color: #fff;
}

.ill-quote-panel {
    padding: 28px 0 28px 34px;
    border-left: 3px solid var(--ill-gold);
}

.ill-quote-panel p {
    color: var(--ill-ink);
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    line-height: 1.4;
}

.ill-questions p {
    margin: 0;
    padding: 15px 0;
    border-bottom: 1px solid var(--ill-line);
    color: var(--ill-ink);
    font-size: clamp(1.05rem, 1.7vw, 1.25rem);
    font-weight: 750;
}

/* knowledge hub */
.ill-hub {
    position: relative;
    min-height: 520px;
}

.ill-hub-center {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 150px;
    height: 150px;
    transform: translate(-50%, -50%);
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--ill-dark);
    color: #fff;
    text-align: center;
    font-weight: 850;
}

.ill-hub > span,
.ill-agent-ring > span {
    position: absolute;
    padding: .57rem .76rem;
    border: 1px solid var(--ill-line);
    border-radius: 999px;
    background: #fff;
    color: var(--ill-ink);
    font-size: .7rem;
    font-weight: 800;
}

.ill-hub .h1 { left: 5%; top: 16%; }
.ill-hub .h2 { left: 40%; top: 5%; }
.ill-hub .h3 { right: 1%; top: 18%; }
.ill-hub .h4 { left: 0; top: 52%; }
.ill-hub .h5 { right: 0; top: 50%; }
.ill-hub .h6 { left: 9%; bottom: 9%; }
.ill-hub .h7 { left: 45%; bottom: 1%; }
.ill-hub .h8 { right: 6%; bottom: 12%; }

/* continuous improvement */
.ill-rhythm {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 38px 0;
}

.ill-rhythm > div {
    padding: 22px;
    border: 1px solid #3f4748;
    border-radius: 18px;
    background: #202729;
}

.ill-rhythm strong {
    display: block;
    color: var(--ill-gold);
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ill-rhythm span {
    display: block;
    margin-top: 8px;
    color: #d4d9d6;
}

.ill-intervention-flow {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: center;
    margin: 38px 0;
}

.ill-intervention-flow span {
    padding: .68rem .92rem;
    border: 1px solid var(--ill-line);
    border-radius: 999px;
    background: #fff;
    font-weight: 750;
}

.ill-intervention-flow span.active {
    background: var(--ill-dark);
    color: #fff;
}

.ill-intervention-flow i {
    color: var(--ill-gold);
    font-style: normal;
}

/* continuity over time */
.ill-intelligence-teaser {
    background:
        radial-gradient(circle at 50% 20%, rgba(189,157,91,.11), transparent 38%),
        var(--ill-bg);
}

.ill-continuity-section {
    background: linear-gradient(180deg, var(--ill-bg) 0%, #f1f2ee 100%);
}

.ill-continuity-visual {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ill-continuity-item {
    padding: 18px 20px;
    border: 1px solid var(--ill-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(20,25,27,.035);
}

.ill-continuity-item strong {
    display: block;
}

.ill-continuity-item span {
    display: block;
    margin-top: 4px;
    color: var(--ill-muted);
    font-size: .92rem;
}

.ill-continuity-item.active {
    border-color: var(--ill-gold);
    background: var(--ill-gold-soft);
}

.ill-continuity-arrow {
    color: var(--ill-gold);
    text-align: center;
    font-size: 1.4rem;
    line-height: 1;
}

/* enterprise intelligence */
.ill-intelligence-section {
    overflow: hidden;
}

.ill-intelligence-section::before {
    content: "";
    position: absolute;
    width: 620px;
    height: 620px;
    right: -180px;
    top: -180px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(189,157,91,.15), rgba(189,157,91,0) 68%);
    pointer-events: none;
}

.ill-intelligence-questions {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 38px 0 30px;
}

.ill-intelligence-questions button {
    appearance: none;
    padding: 18px 20px;
    border: 1px solid #465052;
    border-radius: 18px;
    background: #22292b;
    color: #fff;
    text-align: left;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.ill-intelligence-questions button:hover,
.ill-intelligence-questions button.active {
    transform: translateY(-2px);
    border-color: var(--ill-gold);
    background: #282f31;
}

.ill-intelligence-response {
    position: relative;
    z-index: 2;
    padding: 30px;
    border: 1px solid #465052;
    border-radius: 24px;
    background: rgba(32,39,41,.82);
}

.ill-response-chain {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-top: 22px;
}

.ill-response-chain span {
    padding: .6rem .8rem;
    border: 1px solid #586163;
    border-radius: 999px;
    color: #fff;
    font-size: .82rem;
    font-weight: 750;
}

.ill-response-chain i {
    color: var(--ill-gold);
    font-style: normal;
}

.ill-intelligence-close {
    margin-top: 28px;
    font-size: 1.15rem !important;
}

/* AI */
.ill-agent-ring {
    position: relative;
    min-height: 520px;
}

.ill-agent {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 135px;
    height: 135px;
    transform: translate(-50%, -50%);
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--ill-dark);
    color: #fff;
    text-align: center;
    font-weight: 850;
}

.ill-agent-ring .a1 { left: 40%; top: 4%; }
.ill-agent-ring .a2 { right: 2%; top: 18%; }
.ill-agent-ring .a3 { right: 0; top: 57%; }
.ill-agent-ring .a4 { left: 39%; bottom: 3%; }
.ill-agent-ring .a5 { left: 0; top: 58%; }
.ill-agent-ring .a6 { left: 3%; top: 18%; }

/* About / engagement */
.ill-mission-panel {
    padding: 42px;
    border-radius: 28px;
    background: var(--ill-dark);
    color: #fff;
}

.ill-mission-panel p {
    color: #cbd1ce;
}

.ill-mission-panel hr {
    border: 0;
    border-top: 1px solid #3b4345;
    margin: 32px 0;
}

.ill-contact-prompts {
    padding-left: 18px;
    color: #cbd1ce;
}

.ill-contact-prompts li {
    margin: 12px 0;
}

.ill-contact-form {
    display: grid;
    gap: 14px;
}

.ill-contact-form label {
    color: #b4bbb8;
    font-size: .76rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.ill-contact-form input,
.ill-contact-form textarea {
    width: 100%;
    margin-top: 6px;
    padding: 14px;
    border: 1px solid #485052;
    border-radius: 14px;
    background: #22292b;
    color: #fff;
    font: inherit;
}

.ill-contact-form small {
    color: #909996;
}

.ill-form-message {
    margin-bottom: 18px;
    padding: 14px 16px;
    border-radius: 12px;
    font-weight: 700;
}

.ill-form-message.success {
    background: rgba(128,190,153,.14);
    color: #c9f0d7;
    border: 1px solid rgba(128,190,153,.32);
}

.ill-form-message.error {
    background: rgba(213,120,120,.12);
    color: #f4cccc;
    border: 1px solid rgba(213,120,120,.28);
}

/* Responsive */
@media (max-width: 980px) {
    .ill-split,
    .ill-contact-grid,
    .ill-hero-grid {
        grid-template-columns: 1fr;
        gap: 56px;
    }
    #fragmentation .ill-split {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    #fragmentation .ill-relationship-stage img {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
    }
	
    .ill-hero {
        padding-top: 78px;
    }

    .ill-water {
        inset: 47% 0 0 0;
        height: 53%;
        clip-path: none;
    }

    .ill-logo-water-stage {
        min-height: 540px;
    }

    .ill-cards.six,
    .ill-cards.ill-insights,
    .ill-rhythm {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .ill-section {
        padding: 78px 0;
    }

    .ill-wrap,
    .ill-narrow {
        width: min(100% - 28px, 1180px);
    }

    .ill-cards.six,
    .ill-cards.ill-insights,
    .ill-rhythm,
    .ill-intelligence-questions {
        grid-template-columns: 1fr;
    }

    .ill-logo-water-stage,
    .ill-relationship-stage,
    .ill-coherence-orbit,
    .ill-hub,
    .ill-agent-ring {
        min-height: 410px;
    }

    .ill-response-chain {
        gap: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto !important;
    }

    .ill-water-line {
        animation: none !important;
    }

    .ill-button,
    .ill-intelligence-questions button {
        transition: none !important;
    }

    .ill-rel {
        opacity: 1 !important;
    }
}

/* Illumim color refinement */
.illumim-site h1,
.illumim-site h2 {
    color: #284f5d;
}

.illumim-site h3 {
    color: #315d68;
}

.illumim-site p,
.illumim-site li {
    color: #506872;
}

.illumim-site .ill-eyebrow {
    color: #a27d37;
}

#how {
    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(114, 213, 219, 0.16),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            #f7f8f5 0%,
            #eef6f6 100%
        );
}

#continuous-improvement {
    background:
        radial-gradient(
            circle at 78% 18%,
            rgba(24, 166, 179, 0.18),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #10272f 0%,
            #17343d 58%,
            #234f5a 100%
        );
}

.illumim-site .ill-dark h2,
.illumim-site .ill-dark h3 {
    color: #f8fbfa;
}

.illumim-site .ill-dark p,
.illumim-site .ill-dark li {
    color: #dce9eb;
}

.illumim-site .ill-dark .ill-eyebrow,
.illumim-site .ill-dark .ill-big-gold {
    color: #dfbd70;
}

.ill-rhythm > div {
    background: rgba(49, 93, 104, 0.55);
    border-color: rgba(114, 213, 219, 0.32);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 12px 28px rgba(5, 24, 30, 0.18); }

#header .menu > li > a {
    color: #315d68 !important;
}

#header .menu > li > a:hover,
#header .menu > li.current-menu-item > a {
    color: #18a6b3 !important;
}

/* Illumim interactive accents */
.ill-button:not(.ill-button-light):not(.ill-button-gold) {
    background: var(--ill-teal);
    border-color: var(--ill-teal);
    color: #ffffff;
}

.ill-button:not(.ill-button-light):not(.ill-button-gold):hover {
    background: var(--ill-water-deep);
    border-color: var(--ill-water-deep); }

.ill-button-outline {
    background: transparent !important;
    border-color: var(--ill-teal) !important;
    color: var(--ill-water) !important;
}

.ill-button-outline:hover {
    background: var(--ill-teal) !important;
    color: #ffffff !important;
}

#header [data-id="logo"] img,
#header .site-logo-container img {
    opacity: 1;
    filter: contrast(1.2);
}

/* Restore contrast inside the mission panel */ .ill-mission-panel h3 {
    color: #dff1f2 !important;
}

.ill-mission-panel p {
    color: #f2f7f7 !important;
}

.ill-mission-panel .ill-eyebrow {
    color: #dfbd70 !important;
}

.ill-mission-panel hr {
    border-color: rgba(114, 213, 219, 0.28); } 

/* Improve the primary contact action */ .ill-button-gold {
    background: #d1aa55 !important;
    border-color: #d1aa55 !important;
    color: #17343d !important;
    font-weight: 800;
}

.ill-button-gold:hover {
    background: #e0c274 !important;
    border-color: #e0c274 !important;
    color: #10272f !important;
}

.ill-form-privacy {
    margin: 0 0 16px;
    font-size: 0.82rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.82);
}

.ill-form-privacy a {
    color: #f1d28a;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.ill-form-privacy a:hover {
    color: #ffffff;
}

/* =========================================================
   ILLUMIM ORIGIN HERO — WATER + ILLUMINATION
   ========================================================= */

.ill-hero-origin {
    position: relative !important;
    display: block !important;
    min-height: calc(100svh - 80px) !important;
    padding: 0 !important;
    overflow: hidden;
    isolation: isolate;
    background: #10272f !important;
    color: #ffffff;
}

/* Original water image, inverted so the light rises toward the logo */ .ill-hero-origin .ill-origin-water {
    position: absolute;
    inset: -4%;
    z-index: 0;
    background-image: url("https://illumimcorp.com/staging/8858/wp-content/uploads/2021/02/water-light180.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transform: scale(1.08);
    filter: saturate(0.9) contrast(1.06) brightness(0.82); }

/* Keeps the water visible while giving the message contrast */ .ill-hero-origin::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            to bottom,
            rgba(10, 39, 48, 0.04) 0%,
            rgba(10, 39, 48, 0.10) 42%,
            rgba(10, 39, 48, 0.78) 100%
        );
}

.ill-hero-origin .ill-origin-inner {
    position: relative;
    z-index: 2;
    min-height: calc(100svh - 80px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding-top: clamp(38px, 7vh, 80px);
    padding-bottom: clamp(45px, 8vh, 85px);
    text-align: center;
}

.ill-hero-origin .ill-origin-logo {
    width: clamp(280px, 34vw, 470px);
    max-width: 90%;
}

.ill-hero-origin .ill-origin-logo svg,
.ill-hero-origin .ill-origin-logo img {
    display: block;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 18px 32px rgba(7, 24, 30, 0.28)); }

.ill-hero-origin .ill-origin-copy {
    width: min(820px, 92%);
    margin-inline: auto;
    text-align: center;
}

.ill-hero-origin .ill-eyebrow {
    color: #f4d68d !important;
}

.ill-hero-origin h1 {
    margin: 12px 0 18px !important;
    color: #ffffff !important;
    font-size: clamp(48px, 6vw, 82px) !important;
    line-height: 0.94 !important;
    letter-spacing: -0.035em;
    text-shadow: 0 3px 24px rgba(7, 24, 30, 0.35); }

.ill-hero-origin .ill-origin-copy p {
    max-width: 670px;
    margin: 0 auto 25px;
    color: rgba(255, 255, 255, 0.91) !important;
    font-size: clamp(17px, 1.5vw, 21px);
    line-height: 1.55;
}

.ill-hero-origin .ill-button {
    background: #d1aa55 !important;
    border-color: #d1aa55 !important;
    color: #17343d !important;
}

/* Mobile */
@media (max-width: 767px) {
    .ill-hero-origin {
        min-height: calc(100svh - 70px) !important;
    }

    .ill-hero-origin .ill-origin-water {
        inset: -3%;
        background-position: center;
        transform: scale(1.08);
    }

    .ill-hero-origin .ill-origin-inner {
        min-height: calc(100svh - 70px);
        padding: 32px 20px 45px;
    }

    .ill-hero-origin .ill-origin-logo {
        width: min(78vw, 350px);
    }

    .ill-hero-origin h1 {
        font-size: clamp(43px, 13vw, 60px) !important;
    }

    .ill-hero-origin .ill-origin-copy p {
        font-size: 17px;
    }
}
/* Coherence image — desktop only */
@media (min-width: 769px) {
    .ill-coherence-model img {
        width: 120%;
        max-width: none;
    }
}

