:root {
    --aw-blue-900: #0e76bc;
    --aw-blue-800: #176aa4;
    --aw-blue-700: #1f5d8f;
    --aw-cyan-600: #1498db;
    --aw-cyan-500: #1ea7d8;
    --aw-aqua-500: #17b7c9;
    --aw-aqua-400: #11c3d3;
    --aw-aqua-300: #22c7d6;

    --aw-ink-900: #1e1e1e;
    --aw-ink-800: #2a2a2a;
    --aw-ink-700: #435160;
    --aw-ink-600: #617386;

    --aw-bg-0: #ffffff;
    --aw-bg-1: #f4f8fb;
    --aw-bg-2: #edf6fa;
    --aw-bg-3: #e6f3f8;

    --aw-line: #d7e7f0;
    --aw-line-strong: #c3d9e5;

    --aw-success: #0fae8d;
    --aw-warning: #f4a524;
    --aw-danger: #d9534f;

    --aw-shadow-sm: 0 8px 24px rgba(11, 47, 74, 0.06);
    --aw-shadow-md: 0 16px 40px rgba(11, 47, 74, 0.10);
    --aw-shadow-lg: 0 24px 64px rgba(11, 47, 74, 0.14);

    --aw-radius-xs: 10px;
    --aw-radius-sm: 14px;
    --aw-radius-md: 20px;
    --aw-radius-lg: 28px;
    --aw-radius-xl: 36px;

    --aw-space-1: 8px;
    --aw-space-2: 12px;
    --aw-space-3: 16px;
    --aw-space-4: 20px;
    --aw-space-5: 24px;
    --aw-space-6: 32px;
    --aw-space-7: 40px;
    --aw-space-8: 56px;
    --aw-space-9: 72px;

    --aw-max: 1280px;

    --aw-text: clamp(15px, 0.95vw, 17px);
    --aw-small: clamp(13px, 0.8vw, 14px);
    --aw-h1: clamp(34px, 4.3vw, 64px);
    --aw-h2: clamp(28px, 3vw, 44px);
    --aw-h3: clamp(22px, 2vw, 30px);
    --aw-h4: clamp(18px, 1.4vw, 22px);
}

.aw-page {
    background:
        radial-gradient(circle at top right, rgba(34, 199, 214, .10), transparent 24%),
        radial-gradient(circle at top left, rgba(14, 118, 188, .08), transparent 18%),
        linear-gradient(180deg, #f8fcff 0%, #f4f8fb 50%, #ffffff 100%);
    color: var(--aw-ink-800);
    overflow-x: hidden;
}

.aw-content-wrap {
    position: relative;
}

.aw-page .container {
    max-width: var(--aw-max);
}

.aw-page .section {
    position: relative;
    padding: clamp(58px, 7vw, 104px) 0;
}

.aw-page .nobg {
    background: transparent;
}

.justificarTextos,
.aw-page p,
.aw-page li {
    color: var(--aw-ink-700);
    font-size: var(--aw-text);
    line-height: 1.78;
    letter-spacing: .01em;
}

.aw-page a {
    transition: all .22s ease;
}

.aw-heading-block {
    margin-bottom: var(--aw-space-6);
}

.aw-eyebrow,
.aw-section-kicker,
.aw-panel-kicker,
.aw-compare-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--aw-blue-800);
    background: linear-gradient(180deg, rgba(20, 152, 219, .10), rgba(17, 195, 211, .10));
    border: 1px solid rgba(20, 152, 219, .18);
    padding: 10px 14px;
    border-radius: 999px;
    margin-bottom: 18px;
}

.aw-hero-title,
.aw-section-title {
    color: var(--aw-ink-900);
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: 1.04;
    margin: 0 0 16px;
}

.aw-hero-title {
    font-size: var(--aw-h1);
    max-width: 12ch;
}

.aw-section-title {
    font-size: var(--aw-h2);
}

.aw-section-title-sm {
    font-size: clamp(24px, 2.2vw, 34px);
}

.aw-hero-subtitle,
.aw-section-subtitle,
.aw-support-text,
.aw-microcopy,
.aw-panel-note {
    color: var(--aw-ink-600);
}

.aw-hero-subtitle,
.aw-section-subtitle {
    display: block;
    font-size: clamp(17px, 1.2vw, 20px);
    line-height: 1.72;
    max-width: 75ch;
}

/* =========================
     HERO
     ========================= */

.aw-hero {
    padding-top: clamp(42px, 5vw, 86px);
    padding-bottom: clamp(46px, 7vw, 96px);
}

.aw-hero-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
    gap: clamp(24px, 3.5vw, 48px);
    align-items: center;
    padding: clamp(24px, 3vw, 38px);
    border-radius: var(--aw-radius-xl);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(244, 248, 251, .84));
    border: 1px solid rgba(255, 255, 255, .75);
    box-shadow: var(--aw-shadow-lg);
    backdrop-filter: blur(10px);
    position: relative;
    overflow: hidden;
}

.aw-hero-shell::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, rgba(20, 152, 219, .18), rgba(34, 199, 214, .10), rgba(14, 118, 188, .14));
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}

.aw-hero-copy {
    position: relative;
    z-index: 2;
    min-width: 0;
}

.aw-hero-text {
    max-width: 72ch;
    margin-bottom: 16px;
}

.aw-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}

.aw-hero-media {
    position: relative;
    min-width: 0;
}

.aw-hero-image-wrap {
    position: relative;
    padding: 28px;
    border-radius: var(--aw-radius-xl);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(244, 248, 251, .84));
    border: 1px solid rgba(255, 255, 255, .7);
    box-shadow: var(--aw-shadow-lg);
    backdrop-filter: blur(10px);
}

.aw-hero-image-wrap::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, rgba(20, 152, 219, .22), rgba(34, 199, 214, .10), rgba(14, 118, 188, .18));
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}

.aw-hero-image {
    display: block;
    width: min(100%, 540px);
    margin-inline: auto;
    filter: drop-shadow(0 14px 30px rgba(14, 118, 188, .12));
    transition: transform .28s ease;
    will-change: transform;
}

.aw-hero-statbar {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.aw-stat-card {
    padding: 18px 18px 16px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 251, 253, .92));
    border: 1px solid rgba(20, 152, 219, .12);
    box-shadow: var(--aw-shadow-sm);
}

.aw-stat-card strong {
    display: block;
    margin-bottom: 6px;
    color: var(--aw-blue-800);
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.1;
}

.aw-stat-card span {
    display: block;
    color: var(--aw-ink-600);
    font-size: 13px;
    line-height: 1.5;
}

/* =========================
     BOTONES
     ========================= */

.aw-btn,
.aw-page .button {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 22px;
    border-radius: 999px !important;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .01em;
    text-decoration: none !important;
    transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
    box-shadow: var(--aw-shadow-sm);
    border: 1px solid transparent;
}

.aw-btn:hover,
.aw-page .button:hover {
    transform: translateY(-2px);
    box-shadow: var(--aw-shadow-md);
}

.aw-btn-primary,
.button-blue {
    color: #fff !important;
    background: linear-gradient(135deg, var(--aw-blue-900), var(--aw-aqua-400)) !important;
}

.aw-btn-secondary,
.button-border {
    color: var(--aw-blue-800) !important;
    background: rgba(255, 255, 255, .82) !important;
    border-color: rgba(23, 106, 164, .18) !important;
    backdrop-filter: blur(10px);
}

.aw-btn-accent,
.button-green {
    color: #fff !important;
    background: linear-gradient(135deg, #109a93, #22c7d6) !important;
}

.button-dark {
    color: #fff !important;
    background: linear-gradient(135deg, #284a5c, #0e76bc) !important;
}

/* =========================
     ANCHOR NAV
     ========================= */

.aw-anchor-nav-section {
    padding: 10px 0 26px;
    z-index: 6;
}

.aw-anchor-nav {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    padding: 14px;
    border-radius: 20px;
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(23, 106, 164, .12);
    box-shadow: var(--aw-shadow-sm);
    backdrop-filter: blur(12px);
}

.aw-anchor-link {
    color: var(--aw-ink-700);
    font-weight: 700;
    font-size: 14px;
    padding: 10px 14px;
    border-radius: 999px;
    transition: all .22s ease;
    white-space: nowrap;
}

.aw-anchor-link:hover,
.aw-anchor-link:focus {
    color: var(--aw-blue-900);
    background: rgba(20, 152, 219, .10);
    text-decoration: none;
}

.aw-anchor-link.is-active {
    color: #fff;
    background: linear-gradient(135deg, var(--aw-blue-900), var(--aw-aqua-400));
    box-shadow: 0 10px 24px rgba(14, 118, 188, .18);
}

.aw-section-conversation-note {
    background:
        radial-gradient(circle at top left, rgba(17, 195, 211, .06), transparent 20%),
        radial-gradient(circle at bottom right, rgba(14, 118, 188, .05), transparent 24%),
        linear-gradient(180deg, rgba(255, 255, 255, .28), rgba(244, 248, 251, .62));
}

.aw-conversation-shell {
    max-width: 980px;
    margin: 0 auto;
    padding: clamp(24px, 3vw, 38px);
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(246, 250, 252, .96));
    border: 1px solid rgba(20, 152, 219, .12);
    box-shadow: var(--aw-shadow-lg);
    position: relative;
    overflow: hidden;
}

.aw-conversation-shell::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg,
            rgba(20, 152, 219, .14),
            rgba(34, 199, 214, .08),
            rgba(14, 118, 188, .10));
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}

.aw-section-conversation-note .aw-conversation-box {
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    margin-bottom: 24px;
}

.aw-section-conversation-note .aw-conversation-box p {
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
}

.aw-footnote-inline {
    padding: 20px 22px;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(244, 248, 251, .96), rgba(237, 246, 250, .96));
    border: 1px solid rgba(195, 217, 229, .9);
    box-shadow: var(--aw-shadow-sm);
}

.aw-footnote-inline h4 {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.aw-footnote-inline h4 i {
    color: var(--aw-blue-800);
    font-size: .95em;
}

.aw-footnote-inline p {
    margin-bottom: 0;
    color: var(--aw-ink-600);
    font-size: 14px;
    line-height: 1.75;
}

@media (max-width: 767px) {
    .aw-conversation-shell {
        border-radius: 22px;
        padding: 20px;
    }

    .aw-footnote-inline {
        border-radius: 16px;
        padding: 18px;
    }
}

/* =========================
     IMÁGENES Y BLOQUES
     ========================= */

.aw-section-media img,
.aw-fluid-image {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 26px;
    box-shadow: var(--aw-shadow-md);
}

.aw-image-caption {
    margin-top: 14px;
    color: var(--aw-ink-600);
}

.aw-mini-card,
.aw-feature-card,
.aw-info-card,
.aw-use-card,
.aw-actor-card,
.aw-solution-card,
.aw-role-card,
.aw-ticket-card,
.aw-result-card,
.aw-score-card,
.aw-split-card,
.aw-compare-card,
.aw-dayzero-box,
.aw-conversation-box,
.aw-footnote-box,
.aw-market-panel,
.aw-simulator-box,
.aw-stat-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(247, 251, 253, .95));
    border: 1px solid var(--aw-line);
    border-radius: 24px;
    box-shadow: var(--aw-shadow-sm);
}

.aw-mini-card,
.aw-feature-card,
.aw-info-card,
.aw-use-card,
.aw-actor-card,
.aw-solution-card,
.aw-role-card,
.aw-ticket-card,
.aw-split-card,
.aw-dayzero-box {
    height: 100%;
    padding: 24px;
}

.aw-feature-card,
.aw-use-card,
.aw-actor-card,
.aw-solution-card,
.aw-role-card,
.aw-mini-card,
.aw-ticket-card,
.aw-compare-card,
.aw-result-card,
.aw-score-card {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.aw-feature-card:hover,
.aw-use-card:hover,
.aw-actor-card:hover,
.aw-solution-card:hover,
.aw-role-card:hover,
.aw-mini-card:hover,
.aw-ticket-card:hover,
.aw-compare-card:hover,
.aw-result-card:hover,
.aw-score-card:hover,
.is-hovered {
    transform: translateY(-4px);
    border-color: rgba(20, 152, 219, .26);
    box-shadow: var(--aw-shadow-md);
}

.aw-page h3,
.aw-page h4 {
    color: var(--aw-ink-900);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 10px;
}

.aw-page h3 {
    font-size: var(--aw-h3);
}

.aw-page h4 {
    font-size: var(--aw-h4);
}

.aw-feature-icon {
    width: 72px;
    height: 72px;
    display: grid;
    place-items: center;
    margin: 0 auto 18px;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(20, 152, 219, .12), rgba(34, 199, 214, .12));
    border: 1px solid rgba(20, 152, 219, .16);
}

.aw-feature-icon img {
    max-width: 42px;
    max-height: 42px;
}

.aw-callout,
.aw-microcopy,
.aw-support-text,
.aw-vision-statement,
.aw-closing {
    padding: 18px 22px;
    border-left: 4px solid var(--aw-aqua-400);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(17, 195, 211, .08), rgba(14, 118, 188, .04));
    color: var(--aw-ink-700);
    font-weight: 600;
}

.aw-section-identity {
    background:
        radial-gradient(circle at top left, rgba(17, 195, 211, .08), transparent 22%),
        radial-gradient(circle at bottom right, rgba(14, 118, 188, .07), transparent 24%),
        linear-gradient(180deg, rgba(255, 255, 255, .72), rgba(244, 248, 251, .92));
}

.aw-identity-shell {
    padding: clamp(28px, 3vw, 42px);
    border-radius: var(--aw-radius-xl);
    background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(246, 250, 252, .96));
    border: 1px solid rgba(20, 152, 219, .12);
    box-shadow: var(--aw-shadow-lg);
    position: relative;
    overflow: hidden;
}

.aw-identity-shell::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, rgba(20, 152, 219, .16), rgba(34, 199, 214, .08), rgba(14, 118, 188, .12));
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}

.aw-identity-row {
    align-items: stretch;
}

.aw-identity-copy {
    height: 100%;
    padding-right: 8px;
}

.aw-identity-points .aw-mini-card h4,
.aw-section-identity .aw-vision-statement,
.aw-section-identity .aw-closing,
.aw-section-identity .aw-section-kicker,
.aw-section-identity .aw-panel-kicker,
.aw-section-identity .aw-btn i {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.aw-section-identity .aw-vision-statement,
.aw-section-identity .aw-closing {
    justify-content: center;
}

.aw-identity-points .aw-mini-card h4 i,
.aw-section-identity .aw-vision-statement i,
.aw-section-identity .aw-closing i,
.aw-section-identity .aw-section-kicker i,
.aw-section-identity .aw-panel-kicker i,
.aw-section-identity .aw-btn i {
    color: var(--aw-blue-800);
    font-size: .95em;
}

.aw-section-identity .aw-btn-primary i,
.aw-section-identity .button-blue i,
.aw-section-identity .button-green i,
.aw-section-identity .button-dark i {
    color: #fff;
}

.aw-identity-points .aw-mini-card {
    min-height: 100px;
}

.aw-section-identity .aw-about-lead {
    max-width: 100%;
    text-align: left;
}

.aw-section-identity .aw-about-text {
    text-align: left;
}

@media (max-width: 991px) {
    .aw-identity-copy {
        padding-right: 0;
        margin-bottom: 18px;
    }
}

.aw-market-panel {
    padding: 26px;
    position: relative;
    overflow: hidden;
}

.aw-market-panel::after {
    content: "";
    position: absolute;
    top: -80px;
    right: -80px;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(34, 199, 214, .12) 0%, transparent 70%);
    pointer-events: none;
}

.aw-market-panel-head h3 {
    margin-bottom: 8px;
}

.aw-market-list {
    display: grid;
    gap: 12px;
    margin: 24px 0 24px;
}

.aw-market-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 14px 16px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--aw-line);
}

.aw-market-row span {
    color: var(--aw-ink-700);
    font-weight: 600;
}

.aw-market-row strong {
    color: var(--aw-blue-800);
    text-align: right;
}

.aw-score-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.aw-score-card {
    padding: 16px;
    text-align: center;
}

.aw-score-card span {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--aw-ink-600);
    margin-bottom: 8px;
}

.aw-score-card strong {
    font-size: 24px;
    line-height: 1;
    color: var(--aw-blue-800);
}

/* =========================
     SIMULADORES
     ========================= */

.aw-section-simulators .heading-block {
    margin-bottom: 38px;
}

.aw-simulator-box {
    padding: 28px;
    margin-bottom: 28px;
    position: relative;
    overflow: hidden;
}

.aw-simulator-box:last-child {
    margin-bottom: 0;
}

.aw-simulator-box::after {
    content: "";
    position: absolute;
    top: -100px;
    right: -80px;
    width: 240px;
    height: 240px;
    background: radial-gradient(circle, rgba(17, 195, 211, .10) 0%, transparent 72%);
    pointer-events: none;
}

.aw-simulator-form {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.aw-simulator-form-modern {
    margin-top: 8px;
}

.aw-horizontal-fields {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 4px 2px 10px;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: rgba(14, 118, 188, .32) rgba(215, 231, 240, .5);
}

.aw-horizontal-fields::-webkit-scrollbar {
    height: 10px;
}

.aw-horizontal-fields::-webkit-scrollbar-track {
    background: rgba(215, 231, 240, .5);
    border-radius: 999px;
}

.aw-horizontal-fields::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, rgba(14, 118, 188, .55), rgba(17, 195, 211, .55));
    border-radius: 999px;
}

.aw-control-card {
    flex: 0 0 240px;
    min-width: 240px;
    padding: 18px;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .97), rgba(245, 250, 252, .96));
    border: 1px solid var(--aw-line);
    box-shadow: var(--aw-shadow-sm);
}

.aw-control-card label {
    display: block;
    margin-bottom: 10px;
    color: var(--aw-ink-700);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .02em;
    line-height: 1.4;
}

.aw-simulator-form input,
.aw-simulator-form select,
.aw-control-card input,
.aw-control-card select {
    width: 100%;
    min-height: 52px;
    padding: 12px 14px;
    border: 1px solid var(--aw-line-strong);
    border-radius: 14px;
    background: #fff;
    color: var(--aw-ink-900);
    box-shadow: none;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
    font-size: 15px;
    font-weight: 700;
}

.aw-simulator-form input:focus,
.aw-simulator-form select:focus,
.aw-control-card input:focus,
.aw-control-card select:focus {
    outline: none;
    border-color: rgba(20, 152, 219, .46);
    box-shadow: 0 0 0 4px rgba(20, 152, 219, .10);
    background: #fff;
}

.aw-control-card input[type="number"] {
    appearance: textfield;
    -moz-appearance: textfield;
}

.aw-control-card input[type="number"]::-webkit-outer-spin-button,
.aw-control-card input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.aw-result-card {
    padding: 22px;
    height: 100%;
}

.aw-result-card span {
    display: block;
    color: var(--aw-ink-600);
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: .06em;
    margin-bottom: 8px;
}

.aw-result-card strong {
    display: block;
    color: var(--aw-blue-800);
    font-size: clamp(26px, 2vw, 36px);
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: 1.05;
    word-break: break-word;
}

.aw-alert {
    margin-bottom: 16px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid rgba(244, 165, 36, .24);
    background: rgba(244, 165, 36, .10);
    color: #7a5a00;
    font-weight: 700;
}

.aw-alert.is-error {
    border-color: rgba(217, 83, 79, .22);
    background: rgba(217, 83, 79, .08);
    color: #8d2e2b;
}

.aw-alert.is-success {
    border-color: rgba(15, 174, 141, .24);
    background: rgba(15, 174, 141, .10);
    color: #0a6c58;
}

/* =========================
     LISTAS Y COMPARATIVAS
     ========================= */

.aw-split-card h4,
.aw-compare-card h3,
.aw-ticket-card h4 {
    margin-bottom: 12px;
}

.aw-list-clean {
    list-style: none;
    margin: 0;
    padding: 0;
}

.aw-list-clean li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 10px;
}

.aw-list-clean li::before {
    content: "";
    position: absolute;
    top: .72em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--aw-blue-900), var(--aw-aqua-400));
    transform: translateY(-50%);
}

.aw-compare-card {
    padding: 28px;
    height: 100%;
}

.aw-compare-old {
    border-color: #d8e2ea;
    background: linear-gradient(180deg, #ffffff, #f7fafc);
}

.aw-compare-new {
    border-color: rgba(17, 195, 211, .24);
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(235, 249, 251, .95));
    box-shadow: var(--aw-shadow-md);
}

.aw-role-card-highlight {
    background: linear-gradient(135deg, rgba(14, 118, 188, .96), rgba(17, 195, 211, .90));
    color: #fff;
    border-color: transparent;
}

.aw-role-card-highlight h4,
.aw-role-card-highlight p {
    color: #fff;
}

/* =========================
     DÍA 0 / CIERRE / BLOG
     ========================= */

.aw-dayzero-panel {
    padding: 24px;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(245, 249, 251, .95));
    border: 1px solid var(--aw-line);
    box-shadow: var(--aw-shadow-md);
}

.aw-dayzero-image img {
    width: min(100%, 420px);
    margin-inline: auto;
    display: block;
}

.aw-dayzero-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
}

.aw-about-lead {
    max-width: 860px;
    margin: 0 auto 18px;
    font-size: clamp(20px, 1.45vw, 24px);
    line-height: 1.6;
    color: var(--aw-ink-800);
}

.aw-about-text {
    max-width: 760px;
    margin: 0 auto;
}

.aw-conversation-box,
.aw-footnote-box {
    padding: 30px;
}

.aw-blog-entry {
    background: #fff;
    border: 1px solid var(--aw-line);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--aw-shadow-sm);
    transition: transform .2s ease, box-shadow .2s ease;
}

.aw-blog-entry:hover {
    transform: translateY(-4px);
    box-shadow: var(--aw-shadow-md);
}

.aw-blog-entry .entry-image img {
    aspect-ratio: 16 / 10;
    object-fit: cover;
    width: 100%;
}

.aw-blog-entry .entry-title,
.aw-blog-entry .entry-meta {
    padding-inline: 20px;
}

.aw-blog-entry .entry-title {
    padding-top: 18px;
}

.aw-blog-entry .entry-title h2 {
    font-size: 20px;
    line-height: 1.3;
    margin: 0;
}

.aw-blog-entry .entry-title h2 a {
    color: var(--aw-ink-900);
}

.aw-blog-entry .entry-title h2 a:hover {
    color: var(--aw-blue-800);
    text-decoration: none;
}

.aw-blog-entry .entry-meta {
    padding-bottom: 18px;
    margin-top: 10px;
}

/* =========================
     ESTADOS VISUALES JS
     ========================= */

[data-reveal] {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .55s ease, transform .55s ease;
}

[data-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
}

.js-ready .aw-page {
    opacity: 1;
}

/* =========================
     FONDOS DE SECCIÓN
     ========================= */

.aw-section-reality,
.aw-section-signals,
.aw-section-rights,
.aw-section-model,
.aw-section-dayzero,
.aw-section-participate,
.aw-section-about {
    background: linear-gradient(180deg, rgba(255, 255, 255, .30), rgba(255, 255, 255, .65));
}

/* =========================
     RESPONSIVE
     ========================= */

@media (max-width: 1199px) {
    .aw-score-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aw-control-card {
        flex-basis: 220px;
        min-width: 220px;
    }
}

@media (max-width: 991px) {
    .aw-hero-shell {
        grid-template-columns: 1fr;
    }

    .aw-hero-title {
        max-width: unset;
    }

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

    .aw-dayzero-columns {
        grid-template-columns: 1fr;
    }

    .aw-anchor-nav {
        overflow: auto;
        flex-wrap: nowrap;
        scrollbar-width: none;
    }

    .aw-anchor-nav::-webkit-scrollbar {
        display: none;
    }

    .aw-simulator-box {
        padding: 22px;
    }
}

@media (max-width: 767px) {
    .aw-page .section {
        padding: 48px 0;
    }

    .aw-hero-actions,
    .aw-page .topmargin-sm .button,
    .aw-page .topmargin .button {
        display: grid;
        grid-template-columns: 1fr;
    }

    .aw-btn,
    .aw-page .button {
        width: 100%;
    }

    .aw-mini-card,
    .aw-feature-card,
    .aw-info-card,
    .aw-use-card,
    .aw-actor-card,
    .aw-solution-card,
    .aw-role-card,
    .aw-ticket-card,
    .aw-result-card,
    .aw-split-card,
    .aw-dayzero-box,
    .aw-market-panel,
    .aw-simulator-box,
    .aw-compare-card {
        border-radius: 20px;
        padding: 20px;
    }

    .aw-market-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .aw-market-row strong {
        text-align: left;
    }

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

    .aw-horizontal-fields {
        gap: 12px;
    }

    .aw-control-card {
        flex: 0 0 86%;
        min-width: 86%;
    }

    .aw-result-card strong {
        font-size: clamp(22px, 7vw, 30px);
    }
}

@media (max-width: 480px) {
    .aw-score-grid {
        grid-template-columns: 1fr;
    }

    .aw-feature-icon {
        width: 64px;
        height: 64px;
    }

    .aw-control-card {
        flex: 0 0 92%;
        min-width: 92%;
    }

    .aw-hero-shell,
    .aw-hero-image-wrap {
        border-radius: 24px;
    }
}