/* =========================================================
ENTIDADES QUE VIGILAN LA GESTIÓN · IMMERSIVE ECOSYSTEM V5
Power Pages · HTML/CSS/SVG/Vanilla JS only
========================================================= */
.evx-page {
    --evx-deep:#001813;
    --evx-deep-2:#002c22;
    --evx-green:#07583f;
    --evx-green-2:#0b6a4c;
    --evx-lime:#9dcc22;
    --evx-lime-bright:#c7f45a;
    --evx-cream:#efe9dd;
    --evx-paper:#f6f3ed;
    --evx-mint:#dce9df;
    --evx-ink:#06241b;
    --evx-text:#4c5f57;
    --evx-white:#fff;
    --evx-line:rgba(0,63,47,.14);
    --evx-ease:cubic-bezier(.2,.75,.2,1);
    --evx-max:1540px;
    --evx-gutter:clamp(16px,4vw,64px);
    width:100%;
    max-width:100%;
    margin:0;
    overflow-x:hidden;
    background:var(--evx-paper);
    color:var(--evx-ink);
    font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

.evx-page,.evx-page *,.evx-page *::before,.evx-page *::after {
    box-sizing:border-box
}

.evx-page a {
    text-decoration:none!important
}

.evx-page button {
    font:inherit
}

.evx-page svg {
    display:block
}

.evx-page h1,.evx-page h2,.evx-page h3,.evx-page p {
    margin-top:0
}

.evx-shell {
    width:min(calc(100% - (var(--evx-gutter)*2)),var(--evx-max));
    margin-inline:auto
}

.evx-skip {
    position:fixed;
    z-index:10000;
    top:12px;
    left:12px;
    transform:translateY(-150%);
    padding:10px 14px;
    background:#fff;
    color:var(--evx-ink)!important;
    border-radius:8px;
    font-weight:800
}

.evx-skip:focus {
    transform:none
}

.evx-progress {
    position:fixed;
    z-index:9998;
    inset:0 0 auto;
    height:3px;
    pointer-events:none
}

.evx-progress span {
    display:block;
    width:0;
    height:100%;
    background:var(--evx-lime);
    box-shadow:0 0 16px rgba(157,204,34,.5)
}

/* side chapters */
.evx-chapters {
    position:fixed;
    z-index:9800;
    right:18px;
    top:50%;
    transform:translateY(-50%);
    display:flex;
    flex-direction:column;
    gap:7px
}

.evx-chapter-link {
    display:flex;
    flex-direction:row-reverse;
    align-items:center;
    gap:9px;
    color:#fff!important
}

.evx-chapter-link span {
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.2);
    border-radius:50%;
    background:rgba(0,24,19,.62);
    backdrop-filter:blur(10px);
    font-size:7px;
    font-weight:900;
    transition:.25s ease
}

.evx-chapter-link b {
    max-width:0;
    overflow:hidden;
    opacity:0;
    white-space:nowrap;
    color:#fff;
    font-size:7px;
    font-weight:800;
    transition:.25s ease
}

.evx-chapter-link:hover b,.evx-chapter-link[aria-current="true"] b {
    max-width:180px;
    opacity:1
}

.evx-chapter-link[aria-current="true"] span {
    background:var(--evx-lime);
    border-color:var(--evx-lime);
    color:var(--evx-deep);
    transform:scale(1.08)
}

/* HERO */
.evx-hero {
    position:relative;
    min-height:760px;
    height:min(760px,100svh);
    overflow:hidden;
    background:var(--evx-deep);
    color:#fff;
    isolation:isolate
}

.evx-hero__atmosphere {
    position:absolute;
    inset:0;
    z-index:-8;
    overflow:hidden;
    background:linear-gradient(135deg,#00130f 0%,#00392d 48%,#00110d 100%)
}

.evx-liquid {
    position:absolute;
    border-radius:50%;
    filter:blur(88px);
    mix-blend-mode:screen;
    opacity:.78;
    will-change:transform
}

.evx-liquid--a {
    width:58vw;
    height:58vw;
    left:-22vw;
    top:-26vw;
    background:radial-gradient(circle,rgba(157,204,34,.92),rgba(11,106,76,.26) 43%,transparent 72%);
    animation:evxLiquidA 15s ease-in-out infinite alternate
}

.evx-liquid--b {
    width:54vw;
    height:54vw;
    right:-20vw;
    top:-10vw;
    background:radial-gradient(circle,rgba(52,116,255,.28),rgba(28,180,154,.16) 44%,transparent 72%);
    animation:evxLiquidB 20s ease-in-out infinite alternate
}

.evx-liquid--c {
    width:48vw;
    height:48vw;
    left:37%;
    bottom:-23vw;
    background:radial-gradient(circle,rgba(199,244,90,.38),rgba(0,104,74,.2) 45%,transparent 74%);
    animation:evxLiquidC 24s ease-in-out infinite alternate
}

@keyframes evxLiquidA {
    to {
        transform:translate3d(10%,10%,0) scale(1.08)
    }
}

@keyframes evxLiquidB {
    to {
        transform:translate3d(-9%,8%,0) scale(.92)
    }
}

@keyframes evxLiquidC {
    to {
        transform:translate3d(9%,-9%,0) scale(1.06)
    }
}

.evx-noise {
    position:absolute;
    inset:0;
    opacity:.12;
    background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.18) 0 1px,transparent 1.1px),radial-gradient(circle at 72% 65%,rgba(157,204,34,.16) 0 1px,transparent 1.1px);
    background-size:43px 43px,71px 71px
}

.evx-vignette {
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 72% 48%,transparent 0 23%,rgba(0,18,13,.08) 53%,rgba(0,18,13,.62) 100%)
}

.evx-network {
    position:absolute;
    z-index:-3;
    right:-5vw;
    top:0;
    width:min(82vw,1350px);
    height:100%;
    pointer-events:none;
    will-change:transform
}

.evx-network svg {
    width:100%;
    height:100%;
    overflow:visible
}

.evx-network__rings ellipse {
    fill:none;
    stroke:rgba(157,204,34,.16);
    stroke-width:1.2;
    transform-origin:1115px 475px
}

.evx-network__rings ellipse:nth-child(1) {
    animation:evxOrbit 17s linear infinite
}

.evx-network__rings ellipse:nth-child(2) {
    animation:evxOrbitR 27s linear infinite
}

.evx-network__rings ellipse:nth-child(3) {
    animation:evxOrbit 39s linear infinite
}

@keyframes evxOrbit {
    to {
        transform:rotate(360deg)
    }
}

@keyframes evxOrbitR {
    to {
        transform:rotate(-360deg)
    }
}

.evx-network__paths path {
    stroke-width:1.15;
    stroke-dasharray:13 17;
    animation:evxDash 12s linear infinite
}

@keyframes evxDash {
    to {
        stroke-dashoffset:-280
    }
}

.evx-network__nodes circle {
    transform-box:fill-box;
    transform-origin:center;
    filter:drop-shadow(0 0 7px rgba(157,204,34,.7));
    animation:evxPulse 3.2s ease-in-out infinite
}

@keyframes evxPulse {
    50% {
        transform:scale(1.42);
        opacity:.38
    }
}

.evx-network__labels text {
    fill:rgba(255,255,255,.3);
    font-size:10px;
    font-weight:800;
    letter-spacing:2px
}

.evx-network__core circle {
    fill:rgba(0,31,24,.42);
    stroke:rgba(157,204,34,.28);
    stroke-width:1.2
}

.evx-network__core path {
    fill:none;
    stroke:var(--evx-lime);
    stroke-width:7;
    stroke-linecap:round;
    stroke-linejoin:round
}

.evx-particles {
    position:absolute;
    inset:0;
    z-index:-2;
    pointer-events:none
}

.evx-particles span {
    position:absolute;
    width:3px;
    height:3px;
    border-radius:50%;
    background:var(--evx-lime);
    box-shadow:0 0 13px rgba(157,204,34,.8);
    opacity:.35;
    will-change:transform
}

.evx-hero__content {
    position:relative;
    z-index:3;
    min-height:760px;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding-top:54px;
    padding-bottom:72px
}

.evx-hero__meta {
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:28px;
    color:rgba(255,255,255,.5);
    font-size:9px;
    font-weight:800;
    letter-spacing:.075em
}

.evx-hero__meta span {
    color:var(--evx-lime)
}

.evx-hero__meta i {
    width:70px;
    height:1px;
    background:rgba(255,255,255,.18)
}

.evx-hero__meta b {
    font-size:9px
}

.evx-hero h1 {
    max-width:1040px;
    margin:0;
    font-size:clamp(62px,6.8vw,118px);
    line-height:.84;
    letter-spacing:clamp(-2.2px,-.12vw,-.6px);
    font-weight:760
}

.evx-title-line {
    display:block;
    overflow:hidden;
    padding-bottom:.07em
}

.evx-title-line b {
    display:block
}

.evx-title-accent {
    color:var(--evx-lime);
    font-weight:330!important;
    font-style:italic
}

.evx-hero__content>p {
    max-width:620px;
    margin:24px 0 0;
    color:rgba(255,255,255,.68);
    font-size:clamp(15px,1.05vw,17px);
    line-height:1.68;
    letter-spacing:.005em
}

.evx-hero__actions {
    display:flex;
    align-items:center;
    gap:26px;
    margin-top:26px
}

.evx-primary-action {
    min-height:66px;
    display:inline-flex;
    align-items:center;
    gap:28px;
    padding:0 18px 0 24px;
    border:1px solid rgba(157,204,34,.36);
    border-radius:999px;
    background:rgba(255,255,255,.06);
    color:#fff!important;
    backdrop-filter:blur(15px);
    font-size:12px;
    font-weight:750;
    letter-spacing:.015em;
    transition:transform .18s ease,border-color .2s ease,background .2s ease
}

.evx-primary-action:hover {
    border-color:var(--evx-lime);
    background:rgba(255,255,255,.1)
}

.evx-primary-action b {
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:var(--evx-lime);
    color:var(--evx-deep);
    font-size:15px
}

.evx-hero__micro {
    display:flex;
    align-items:center;
    gap:8px
}

.evx-hero__micro strong {
    color:var(--evx-lime);
    font-size:30px;
    line-height:1
}

.evx-hero__micro span {
    color:rgba(255,255,255,.38);
    font-size:8px;
    font-weight:750;
    line-height:1.4;
    text-transform:uppercase;
    letter-spacing:.055em
}

.evx-hero__footer {
    position:absolute;
    z-index:4;
    left:50%;
    bottom:26px;
    transform:translateX(-50%);
    display:flex;
    flex-wrap:wrap;
    gap:18px
}

.evx-hero__footer span {
    position:relative;
    padding-left:10px;
    color:rgba(255,255,255,.31);
    font-size:8px;
    font-weight:750;
    letter-spacing:.055em
}

.evx-hero__footer span::before {
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:4px;
    height:4px;
    transform:translateY(-50%);
    border-radius:50%;
    background:var(--evx-lime)
}

/* INDEX */
.evx-index {
    padding:72px 0;
    background:var(--evx-cream)
}

.evx-index__layout {
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:clamp(50px,7vw,110px);
    align-items:end
}

.evx-index__statement>span,.evx-manifesto__content>span,.evx-closing__content>span {
    color:var(--evx-green);
    font-size:9px;
    font-weight:800;
    letter-spacing:.08em
}

.evx-index__statement h2 {
    max-width:860px;
    margin:16px 0 0;
    font-size:clamp(44px,5.2vw,84px);
    line-height:.98;
    letter-spacing:-.035em;
    font-weight:680
}

.evx-index__statement h2 em {
    color:var(--evx-green);
    font-style:normal;
    font-weight:300
}

.evx-index__statement p {
    max-width:720px;
    margin:24px 0 0;
    color:var(--evx-text);
    font-size:clamp(15px,1vw,17px);
    line-height:1.72;
    letter-spacing:.003em
}

.evx-index__stats {
    display:grid;
    grid-template-columns:1fr 1fr;
    border-top:1px solid var(--evx-line);
    border-left:1px solid var(--evx-line)
}

.evx-stat {
    min-height:150px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:22px;
    border-right:1px solid var(--evx-line);
    border-bottom:1px solid var(--evx-line)
}

.evx-stat strong {
    font-size:clamp(40px,3.7vw,60px);
    line-height:.95;
    letter-spacing:-.025em
}

.evx-stat span {
    margin-top:10px;
    color:var(--evx-text);
    font-size:11px;
    font-weight:650;
    line-height:1.35;
    letter-spacing:.01em
}

/* MANIFESTO */
.evx-manifesto {
    position:relative;
    min-height:620px;
    height:min(620px,82svh);
    display:flex;
    align-items:center;
    overflow:hidden;
    background:#fff
}

.evx-manifesto__word {
    position:absolute;
    left:-4vw;
    top:50%;
    transform:translateY(-50%);
    color:rgba(0,63,47,.04);
    font-size:clamp(120px,20vw,330px);
    font-weight:820;
    letter-spacing:-.045em;
    white-space:nowrap;
    will-change:transform
}

.evx-manifesto__content {
    position:relative;
    z-index:2
}

.evx-manifesto__content h2 {
    max-width:1080px;
    margin:18px 0 0;
    font-size:clamp(50px,5.8vw,92px);
    line-height:.98;
    letter-spacing:-.032em;
    font-weight:650
}

/* SCENES */
.evx-scene {
    position:relative;
    min-height:760px;
    padding:64px 0;
    overflow:hidden;
    background:var(--scene-bg,#f6f3ed);
    color:var(--scene-ink,var(--evx-ink));
    isolation:isolate
}

.evx-scene--1 {
    --scene-bg:#071f19;
    --scene-ink:#fff;
    --scene-accent:#9dcc22
}

.evx-scene--2 {
    --scene-bg:#e9dfd2;
    --scene-accent:#d86516
}

.evx-scene--3 {
    --scene-bg:#dce9e5;
    --scene-accent:#197b78
}

.evx-scene--4 {
    --scene-bg:#eee5c6;
    --scene-accent:#d6af00
}

.evx-scene--5 {
    --scene-bg:#e2eed7;
    --scene-accent:#7ca221
}

.evx-scene--6 {
    --scene-bg:#dfe6d7;
    --scene-accent:#557729
}

.evx-scene__background {
    position:absolute;
    inset:0;
    z-index:-2;
    pointer-events:none
}

.evx-scene__number {
    position:absolute;
    right:-2vw;
    top:-7vh;
    color:rgba(0,0,0,.045);
    font-size:clamp(190px,25vw,430px);
    font-weight:820;
    line-height:.85;
    letter-spacing:-.045em
}

.evx-scene--1 .evx-scene__number {
    color:rgba(255,255,255,.035)
}

.evx-scene__curve {
    position:absolute;
    left:-4vw;
    bottom:6vh;
    width:44vw;
    fill:none;
    stroke:var(--scene-accent);
    stroke-width:1.5;
    opacity:.25
}

.evx-scene__curve path {
    stroke-dasharray:9 12
}

.evx-scene__layout {
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:clamp(55px,7vw,110px);
    align-items:start
}

.evx-scene__intro {
    position:sticky;
    top:52px;
    min-height:620px;
    display:flex;
    flex-direction:column;
    justify-content:center
}

.evx-scene__eyebrow {
    display:flex;
    align-items:center;
    gap:10px;
    font-size:9px;
    font-weight:800;
    letter-spacing:.075em
}

.evx-scene__eyebrow span {
    color:var(--scene-accent)
}

.evx-scene__eyebrow i {
    width:48px;
    height:1px;
    background:currentColor;
    opacity:.22
}

.evx-scene__intro h2 {
    max-width:680px;
    margin:16px 0 0;
    font-size:clamp(44px,4.7vw,74px);
    line-height:.99;
    letter-spacing:-.03em;
    font-weight:690
}

.evx-scene__intro>p {
    max-width:560px;
    margin:20px 0 0;
    color:color-mix(in srgb,currentColor 72%,transparent);
    font-size:clamp(14px,.95vw,16px);
    line-height:1.68;
    letter-spacing:.003em
}

.evx-scene__meter {
    display:flex;
    align-items:end;
    gap:8px;
    margin-top:28px;
    padding-top:13px;
    border-top:1px solid color-mix(in srgb,currentColor 20%,transparent);
    width:150px
}

.evx-scene__meter span {
    color:var(--scene-accent);
    font-size:34px;
    line-height:1;
    font-weight:760;
    letter-spacing:-.02em
}

.evx-scene__meter b {
    font-size:9px;
    letter-spacing:.055em;
    text-transform:uppercase;
    font-weight:750;
    line-height:1.3
}

.evx-ecosystem {
    position:relative;
    min-height:620px;
    padding:18px 0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:22px
}

.evx-ecosystem__wires {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    pointer-events:none;
    opacity:.24
}

.evx-ecosystem__wires path {
    fill:none;
    stroke:var(--scene-accent);
    stroke-width:1.5;
    stroke-dasharray:12 15
}

.evx-ecosystem__wires circle {
    fill:var(--scene-accent)
}

.evx-entity {
    position:relative;
    width:min(92%,720px);
    min-height:0;
    display:grid;
    grid-template-columns:64px 1fr;
    gap:18px;
    padding:0 0 18px;
    background:transparent;
    border:0;
    border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent);
    outline:none;
    transition:transform .3s var(--evx-ease),opacity .3s ease
}

.evx-entity:nth-of-type(even) {
    margin-left:auto
}

.evx-entity:hover,.evx-entity:focus-visible {
    transform:translateX(8px)
}

.evx-entity__index {
    padding-top:8px;
    color:var(--scene-accent);
    font-size:9px;
    font-weight:800;
    letter-spacing:.055em
}

.evx-entity__body {
    position:relative;
    z-index:2
}

.evx-entity__type {
    font-size:9px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
    opacity:.68;
    line-height:1.35
}

.evx-entity h3 {
    max-width:680px;
    margin:7px 0 0;
    font-size:clamp(26px,2.35vw,39px);
    line-height:1.08;
    letter-spacing:-.018em;
    font-weight:690
}

.evx-entity__facts {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-top:14px
}

.evx-entity__facts p {
    margin:0;
    color:color-mix(in srgb,currentColor 69%,transparent);
    font-size:clamp(12px,.88vw,14px);
    line-height:1.62;
    letter-spacing:.003em
}

.evx-entity__facts b {
    display:block;
    margin-bottom:5px;
    color:currentColor;
    font-size:8px;
    letter-spacing:.06em;
    text-transform:uppercase;
    font-weight:800;
    line-height:1.35
}

.evx-official-link {
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-top:14px;
    padding-bottom:5px;
    border-bottom:1px solid currentColor;
    color:currentColor!important;
    font-size:11px;
    font-weight:750;
    letter-spacing:.01em
}

.evx-official-link span {
    color:var(--scene-accent);
    font-size:15px
}

.evx-entity__pulse {
    position:absolute;
    right:0;
    top:8px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--scene-accent);
    box-shadow:0 0 0 0 color-mix(in srgb,var(--scene-accent) 45%,transparent);
    animation:evxEntityPulse 2.8s ease-out infinite
}

@keyframes evxEntityPulse {
    70% {
        box-shadow:0 0 0 14px transparent
    }
}

.evx-entity-actions {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:7px;
    margin-top:16px
}

.evx-entity-action {
    display:grid;
    grid-template-columns:28px 1fr;
    gap:4px 8px;
    align-items:start;
    min-height:74px;
    padding:11px;
    border:1px solid color-mix(in srgb,currentColor 17%,transparent);
    background:color-mix(in srgb,var(--scene-bg) 84%,white 16%);
    color:currentColor!important;
    text-align:left;
    cursor:pointer
}

.evx-scene--1 .evx-entity-action {
    background:rgba(255,255,255,.04)
}

.evx-entity-action span {
    grid-row:1/3;
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,currentColor 20%,transparent);
    border-radius:50%;
    color:var(--scene-accent);
    font-size:8px;
    font-weight:800;
    letter-spacing:.02em
}

.evx-entity-action b {
    font-size:10px;
    font-weight:750;
    line-height:1.25;
    letter-spacing:.005em
}

.evx-entity-action small {
    font-size:8px;
    line-height:1.45;
    opacity:.68;
    letter-spacing:.002em
}

/* CLOSING */
.evx-closing {
    position:relative;
    min-height:720px;
    height:min(720px,92svh);
    display:flex;
    align-items:center;
    overflow:hidden;
    background:var(--evx-deep);
    color:#fff
}

.evx-closing__mesh {
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 12% 20%,rgba(157,204,34,.2),transparent 28%),radial-gradient(circle at 85% 75%,rgba(48,126,255,.15),transparent 30%),linear-gradient(135deg,#00150f,#003225 58%,#00140f)
}

.evx-closing__content {
    position:relative;
    z-index:2;
    padding-top:70px;
    padding-bottom:70px
}

.evx-closing__content>span {
    color:var(--evx-lime)
}

.evx-closing h2 {
    max-width:1120px;
    margin:16px 0 0;
    font-size:clamp(48px,5.5vw,86px);
    line-height:.98;
    letter-spacing:-.032em;
    font-weight:650
}

.evx-closing p {
    max-width:720px;
    margin:28px 0 0;
    color:rgba(255,255,255,.62);
    font-size:clamp(15px,1vw,17px);
    line-height:1.7;
    letter-spacing:.003em
}

.evx-closing__values {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:28px
}

.evx-closing__values b {
    padding:9px 13px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    color:rgba(255,255,255,.72);
    font-size:9px;
    letter-spacing:.04em;
    font-weight:750
}

.evx-closing__return {
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:40px;
    color:#fff!important;
    font-size:11px;
    font-weight:750;
    letter-spacing:.01em
}

.evx-closing__return i {
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:var(--evx-lime);
    color:var(--evx-deep);
    font-style:normal
}

/* MODAL */
.evx-modal[hidden] {
    display:none
}

.evx-modal {
    position:fixed;
    inset:0;
    z-index:10000;
    display:grid;
    place-items:center;
    padding:20px
}

.evx-modal__backdrop {
    position:absolute;
    inset:0;
    background:rgba(0,24,19,.84);
    backdrop-filter:blur(10px)
}

.evx-modal__dialog {
    position:relative;
    z-index:2;
    width:min(880px,100%);
    max-height:90vh;
    overflow:auto;
    padding:clamp(28px,4vw,48px);
    background:#fff;
    color:var(--evx-ink);
    box-shadow:0 34px 110px rgba(0,0,0,.34)
}

.evx-modal__dialog>span {
    color:var(--evx-green);
    font-size:9px;
    font-weight:800;
    letter-spacing:.075em
}

.evx-modal__dialog h2 {
    margin:10px 0 14px;
    font-size:clamp(34px,4.5vw,56px);
    line-height:1.04;
    letter-spacing:-.025em;
    font-weight:680
}

.evx-modal__dialog>p {
    color:var(--evx-text)
}

.evx-modal__close {
    position:absolute;
    right:14px;
    top:14px;
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
    background:var(--evx-paper);
    color:var(--evx-ink);
    font-size:24px;
    cursor:pointer
}

.evx-modal__notice {
    margin:24px 0;
    padding:15px 17px;
    border-left:3px solid var(--evx-lime);
    background:#eef5dc;
    color:var(--evx-ink);
    font-size:13px
}

.evx-document-list {
    display:grid;
    gap:10px
}

.evx-document-list article {
    display:grid;
    grid-template-columns:72px 1fr auto;
    gap:16px;
    align-items:center;
    padding:15px;
    border-top:1px solid var(--evx-line)
}

.evx-document-list article>strong {
    color:var(--evx-green);
    font-size:20px
}

.evx-document-list h3 {
    margin:0 0 3px;
    font-size:15px
}

.evx-document-list p {
    margin:0;
    color:var(--evx-text);
    font-size:11px
}

.evx-document-list a {
    padding:9px 13px;
    border-radius:999px;
    background:#edf2eb;
    color:var(--evx-text)!important;
    font-size:9px;
    font-weight:900
}

body.evx-modal-open {
    overflow:hidden
}

.evx-backtop {
    position:fixed;
    z-index:9997;
    right:18px;
    bottom:18px;
    width:46px;
    height:46px;
    border:0;
    border-radius:50%;
    background:var(--evx-ink);
    color:#fff;
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    cursor:pointer;
    transition:.2s ease
}

.evx-backtop.is-visible {
    opacity:1;
    visibility:visible;
    transform:none
}

/* REVEALS */
.evx-page.evx-motion [data-evx-reveal] {
    opacity:0;
    transform:translateY(38px);
    transition:opacity .78s var(--evx-ease),transform .78s var(--evx-ease)
}

.evx-page.evx-motion [data-evx-reveal].is-visible {
    opacity:1;
    transform:none
}

[data-evx-hero-line] {
    opacity:1;
    transform:none
}

[data-evx-hero-reveal] {
    opacity:1;
    transform:none
}

/* RESPONSIVE */
@media(max-width:1100px) {
    .evx-chapters {
        display:none
    }

    .evx-network {
        right:-28vw;
        width:115vw;
        opacity:.58
    }

    .evx-index__layout,.evx-scene__layout {
        grid-template-columns:1fr
    }

    .evx-scene__intro {
        position:relative;
        top:auto;
        min-height:auto;
        padding-bottom:50px
    }

    .evx-ecosystem {
        min-height:auto;
        padding:30px 0
    }

    .evx-ecosystem__wires {
        opacity:.14
    }
}

@media(max-width:768px) {
    .evx-hero {
        min-height:760px;
        height:auto
    }

    .evx-hero__content {
        min-height:760px;
        height:auto;
        padding-top:58px;
        padding-bottom:82px
    }

    .evx-hero h1 {
        font-size:clamp(50px,11.8vw,66px);
        line-height:.88;
        letter-spacing:-.025em
    }

    .evx-network {
        right:-70vw;
        top:22vh;
        width:180vw;
        opacity:.42
    }

    .evx-hero__meta {
        display:block
    }

    .evx-hero__meta i,.evx-hero__meta b {
        display:none
    }

    .evx-hero__actions {
        display:block
    }

    .evx-hero__micro {
        margin-top:18px
    }

    .evx-index {
        padding:82px 0
    }

    .evx-index__layout {
        gap:48px
    }

    .evx-index__statement h2 {
        font-size:48px;
        line-height:1.01;
        letter-spacing:-.025em
    }

    .evx-index__stats {
        grid-template-columns:1fr 1fr
    }

    .evx-manifesto {
        min-height:70vh
    }

    .evx-manifesto__content h2 {
        font-size:50px;
        line-height:1.02;
        letter-spacing:-.025em
    }

    .evx-scene {
        min-height:auto;
        padding:88px 0
    }

    .evx-scene__intro h2 {
        font-size:48px;
        line-height:1.02;
        letter-spacing:-.023em
    }

    .evx-scene__number {
        font-size:220px;
        right:-20px;
        top:20px
    }

    .evx-scene__curve {
        width:80vw
    }

    .evx-entity {
        width:100%;
        grid-template-columns:52px 1fr;
        gap:12px
    }

    .evx-entity:nth-of-type(even) {
        margin-left:0
    }

    .evx-entity h3 {
        font-size:32px;
        line-height:1.1;
        letter-spacing:-.015em
    }

    .evx-entity__facts {
        grid-template-columns:1fr
    }

    .evx-entity-actions {
        grid-template-columns:1fr
    }

    .evx-ecosystem__wires {
        display:none
    }

    .evx-closing h2 {
        font-size:52px;
        line-height:1.01;
        letter-spacing:-.025em
    }
}

@media(max-width:414px) {
    .evx-page {
        --evx-gutter:14px
    }

    .evx-hero {
        min-height:700px
    }

    .evx-hero__content {
        min-height:700px
    }

    .evx-hero h1 {
        font-size:45px;
        line-height:.9;
        letter-spacing:-.02em
    }

    .evx-primary-action {
        width:100%;
        justify-content:space-between
    }

    .evx-hero__footer {
        gap:8px 12px
    }

    .evx-index__stats {
        grid-template-columns:1fr
    }

    .evx-stat {
        min-height:120px
    }

    .evx-manifesto__word {
        font-size:150px
    }

    .evx-document-list article {
        grid-template-columns:1fr
    }
}

@media(max-width:360px) {
    .evx-hero h1 {
        font-size:42px;
        line-height:.92;
        letter-spacing:-.018em
    }

    .evx-scene__intro h2 {
        font-size:42px;
        line-height:1.04;
        letter-spacing:-.018em
    }

    .evx-entity h3 {
        font-size:29px;
        line-height:1.12;
        letter-spacing:-.012em
    }

    .evx-closing h2 {
        font-size:46px;
        line-height:1.03;
        letter-spacing:-.02em
    }
}

@media(max-width:320px) {
    .evx-page {
        --evx-gutter:12px
    }

    .evx-hero h1 {
        font-size:38px;
        line-height:.93;
        letter-spacing:-.015em
    }

    .evx-hero__content>p {
        font-size:14px
    }

    .evx-index__statement h2 {
        font-size:40px;
        line-height:1.04;
        letter-spacing:-.018em
    }

    .evx-manifesto__content h2 {
        font-size:43px;
        line-height:1.04;
        letter-spacing:-.018em
    }

    .evx-entity {
        grid-template-columns:42px 1fr
    }
}

@supports not (height:100svh) {
    .evx-hero {
        height:min(760px,100vh)
    }

    .evx-manifesto {
        height:min(620px,82vh)
    }

    .evx-closing {
        height:min(720px,92vh)
    }
}

@media(max-width:1366px) {
    .evx-hero h1 {
        font-size:clamp(60px,6.7vw,102px);
        line-height:.86;
        letter-spacing:-.025em
    }

    .evx-network {
        right:-12vw;
        width:88vw
    }
}

@media(max-width:1024px) {
    .evx-hero {
        min-height:720px;
        height:720px
    }

    .evx-hero__content {
        min-height:720px
    }

    .evx-manifesto {
        min-height:560px;
        height:560px
    }

    .evx-closing {
        min-height:660px;
        height:660px
    }
}

@media(max-width:576px) {
    .evx-hero {
        min-height:720px
    }

    .evx-hero__content {
        min-height:720px;
        padding-top:50px;
        padding-bottom:74px
    }

    .evx-network {
        right:-72vw;
        width:185vw;
        opacity:.31
    }

    .evx-scene {
        padding:52px 0
    }
}

@media(max-width:390px) {
    .evx-hero h1 {
        font-size:42px;
        line-height:.92;
        letter-spacing:-.018em
    }

    .evx-index__statement h2 {
        font-size:40px;
        line-height:1.04;
        letter-spacing:-.018em
    }

    .evx-scene__intro h2 {
        font-size:39px;
        line-height:1.05;
        letter-spacing:-.016em
    }
}

@media(max-width:360px) {
    .evx-page {
        --evx-gutter:13px
    }

    .evx-hero {
        min-height:680px
    }

    .evx-hero__content {
        min-height:680px
    }

    .evx-hero h1 {
        font-size:39px;
        line-height:.93;
        letter-spacing:-.016em
    }
}

@media(max-width:320px) {
    .evx-hero {
        min-height:660px
    }

    .evx-hero__content {
        min-height:660px;
        padding-top:42px;
        padding-bottom:66px
    }

    .evx-hero h1 {
        font-size:36px;
        line-height:.94;
        letter-spacing:-.014em
    }
}

/* =========================================================
TYPOGRAPHY REFINEMENT V5.2
Improved optical spacing without changing visual hierarchy.
========================================================= */
.evx-page {
    word-spacing:normal;
    font-kerning:normal;
    font-variant-ligatures:common-ligatures contextual;
}

.evx-hero h1, .evx-index__statement h2, .evx-manifesto__content h2, .evx-scene__intro h2, .evx-entity h3, .evx-closing h2, .evx-modal__dialog h2 {
    text-wrap:balance;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
}

.evx-hero__content>p, .evx-index__statement p, .evx-scene__intro>p, .evx-entity__facts p, .evx-closing p, .evx-modal__dialog>p {
    text-wrap:pretty;
}

@media(max-width:576px) {
    .evx-hero__meta, .evx-scene__eyebrow, .evx-entity__type {
        letter-spacing:.055em;
    }

    .evx-hero h1 {
        max-width:100%;
    }

    .evx-manifesto__word {
        letter-spacing:-.03em;
    }

    .evx-entity__facts p {
        font-size:13px;
        line-height:1.62;
    }
}

@media(max-width:414px) {
    .evx-hero h1 {
        font-size:clamp(40px,10.8vw,45px);
        line-height:.92;
        letter-spacing:-.016em;
    }

    .evx-index__statement h2, .evx-manifesto__content h2, .evx-scene__intro h2, .evx-closing h2 {
        letter-spacing:-.015em;
    }

    .evx-entity h3 {
        font-size:28px;
        line-height:1.13;
        letter-spacing:-.01em;
    }
}

@media(max-width:360px) {
    .evx-hero h1 {
        font-size:38px;
        line-height:.94;
        letter-spacing:-.012em;
    }

    .evx-manifesto__content h2, .evx-scene__intro h2, .evx-closing h2 {
        letter-spacing:-.012em;
    }
}

@media(max-width:320px) {
    .evx-hero h1 {
        font-size:35px;
        line-height:.96;
        letter-spacing:-.01em;
    }

    .evx-index__statement h2 {
        font-size:37px;
    }

    .evx-manifesto__content h2 {
        font-size:40px;
    }

    .evx-scene__intro h2 {
        font-size:35px;
    }

    .evx-entity h3 {
        font-size:25px;
        line-height:1.14;
    }

    .evx-closing h2 {
        font-size:38px;
    }
}

/* ACCESSIBILITY */
.evx-page :focus-visible {
    outline:3px solid var(--evx-lime);
    outline-offset:4px
}

@media(prefers-reduced-motion:reduce) {
    .evx-page *,.evx-page *::before,.evx-page *::after {
        animation:none!important;
        transition:none!important;
        scroll-behavior:auto!important
    }

    .evx-page.evx-motion [data-evx-reveal],[data-evx-hero-line],[data-evx-hero-reveal] {
        opacity:1!important;
        transform:none!important
    }
}
