.aeo-hero {
    position: relative;
    padding: 4.75rem 0 3.5rem;
    color: #ffffff;
    background: linear-gradient(135deg, var(--cg-brand-800) 0%, var(--cg-primary) 58%, #14b8a6 100%);
    overflow: hidden;
}

.aeo-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: url('/img/logoFondoTransparenteSinNombre.png') no-repeat right 8% center / min(28vw, 280px) auto;
    opacity: 0.08;
    pointer-events: none;
}

.aeo-hero .container,
.aeo-content .container {
    position: relative;
    z-index: 1;
}

.aeo-hero h1 {
    max-width: 920px;
    margin: 1rem 0 1rem;
    font-size: clamp(2.1rem, 4vw, 3.6rem);
    line-height: 1.08;
    font-weight: 700;
}

.aeo-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.92);
    font-size: 1.08rem;
    line-height: 1.7;
}

.aeo-pill,
.aeo-card-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.42rem 0.7rem;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.2;
}

.aeo-pill {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.28);
}

.aeo-card-kicker {
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
    border: 1px solid var(--cg-brand-100);
}

.aeo-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.95rem;
}

.aeo-breadcrumb a {
    color: rgba(255, 255, 255, 0.95);
    text-decoration: none;
}

.aeo-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.6rem;
}

.aeo-btn-primary,
.aeo-btn-secondary {
    border-radius: 8px;
    padding: 0.8rem 1.15rem;
    font-weight: 700;
    line-height: 1.2;
}

.aeo-btn-primary {
    color: var(--cg-brand-700);
    background: #ffffff;
    border-color: #ffffff;
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.18);
}

.aeo-btn-primary:hover,
.aeo-btn-primary:focus {
    color: var(--cg-brand-700);
    background: #f8fafc;
    border-color: #f8fafc;
}

.aeo-btn-secondary {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.72);
}

.aeo-btn-secondary:hover,
.aeo-btn-secondary:focus {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.88);
}

.aeo-content {
    padding: 3rem 0;
    background: #f8fafc;
}

.aeo-demo-panel {
    margin-bottom: 2rem;
    overflow: hidden;
    border: 1px solid var(--cg-brand-100);
    border-radius: var(--cg-radius-md);
    background: var(--cg-gray-50);
    box-shadow: var(--cg-shadow-sm);
}

.aeo-demo-panel__topbar {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.75rem 1rem;
    color: var(--cg-surface);
    background: var(--cg-brand-800);
    font-size: 0.78rem;
    font-weight: 700;
}

.aeo-demo-panel__topbar span:last-child {
    color: var(--cg-brand-100);
}

.aeo-demo-panel__body {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    min-height: 178px;
}

.aeo-demo-panel__sidebar {
    display: grid;
    align-content: start;
    gap: 0.75rem;
    padding: 1rem 0.8rem;
    background: var(--cg-brand-900);
}

.aeo-demo-panel__sidebar span {
    display: block;
    height: 9px;
    border-radius: var(--cg-radius-pill);
    background: rgba(255, 255, 255, 0.25);
}

.aeo-demo-panel__sidebar span.is-active {
    background: var(--cg-surface);
}

.aeo-demo-panel__main {
    display: grid;
    gap: 1rem;
    padding: 1rem;
}

.aeo-demo-panel__heading,
.aeo-demo-panel__metrics,
.aeo-demo-panel__activity {
    display: flex;
    gap: 0.75rem;
}

.aeo-demo-panel__heading {
    align-items: center;
    justify-content: space-between;
    color: var(--cg-text);
    font-size: 0.82rem;
}

.aeo-demo-panel__heading span {
    width: 35%;
    height: 9px;
    border-radius: var(--cg-radius-pill);
    background: var(--cg-brand-100);
}

.aeo-demo-panel__metrics > div {
    display: grid;
    flex: 1;
    gap: 0.55rem;
    padding: 0.75rem;
    border: 1px solid var(--cg-border);
    border-radius: var(--cg-radius-sm);
    background: var(--cg-surface);
}

.aeo-demo-panel__metrics small {
    color: var(--cg-text-muted);
    font-size: 0.7rem;
}

.aeo-demo-panel__metrics span {
    width: 62%;
    height: 13px;
    border-radius: var(--cg-radius-pill);
    background: var(--cg-brand-200);
}

.aeo-demo-panel__activity {
    align-items: center;
    flex-wrap: wrap;
    color: var(--cg-text-muted);
    font-size: 0.72rem;
}

.aeo-demo-panel__activity span {
    flex: 1 1 28%;
    height: 7px;
    border-radius: var(--cg-radius-pill);
    background: var(--cg-border);
}

.aeo-content__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 1.5rem;
    align-items: start;
}

.aeo-content__grid > * {
    min-width: 0;
}

.aeo-article,
.aeo-side-card,
.aeo-success-card,
.aeo-testimonial-detail {
    border: 1px solid #dbe7f3;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
}

.aeo-article {
    padding: 2rem;
}

.aeo-section + .aeo-section {
    margin-top: 2.25rem;
    padding-top: 2.25rem;
    border-top: 1px solid #e2e8f0;
}

.aeo-section h2 {
    margin-bottom: 1rem;
    color: #0f172a;
    font-size: clamp(1.45rem, 2vw, 2rem);
    line-height: 1.18;
    text-align: left;
}

.aeo-section p,
.aeo-section__lead,
.aeo-list,
.aeo-faq .accordion-body,
.aeo-comparison-table {
    color: #475569;
    font-size: 1rem;
    line-height: 1.75;
}

.aeo-section__lead {
    color: #0f766e;
    font-weight: 700;
}

.aeo-list {
    display: grid;
    gap: 0.55rem;
    margin: 1rem 0 0;
    padding-left: 1.2rem;
}

.aeo-sidebar {
    position: sticky;
    top: 96px;
}

.aeo-side-card {
    padding: 1.25rem;
}

.aeo-side-card span {
    display: block;
    margin-bottom: 1rem;
    color: #0f766e;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.aeo-side-card ul {
    display: grid;
    gap: 0.7rem;
    margin: 1.2rem 0 0;
    padding-left: 1rem;
}

.aeo-side-card a:not(.btn) {
    color: var(--cg-brand-700);
    font-weight: 700;
    text-decoration: none;
}

.aeo-table-wrap {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
}

.aeo-comparison-table {
    min-width: 720px;
    margin: 0;
}

.aeo-comparison-table th {
    color: #0f172a;
}

.aeo-comparison-table thead th {
    background: var(--cg-brand-50);
    border-bottom: 1px solid var(--cg-brand-100);
}

.aeo-faq .accordion-item {
    border-color: #dbe7f3;
}

.aeo-faq .accordion-button {
    color: #0f172a;
    font-weight: 700;
}

.aeo-faq .accordion-button:not(.collapsed) {
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
}

.faq-page__intro {
    max-width: 820px;
    margin-bottom: 2rem;
}

.faq-page__intro h2,
.faq-category > h2,
.faq-page__cta h2 {
    color: #0f172a;
    text-align: left;
}

.faq-page__intro p,
.faq-page__cta p {
    margin-bottom: 0;
    color: #475569;
    line-height: 1.75;
}

.faq-page__layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 2rem;
    align-items: start;
}

.faq-page__navigation {
    position: sticky;
    top: 96px;
    padding: 1.25rem;
    border-left: 3px solid var(--cg-primary);
    background: #ffffff;
}

.faq-page__navigation strong {
    display: block;
    margin-bottom: 0.85rem;
    color: #0f172a;
}

.faq-page__navigation nav {
    display: grid;
    gap: 0.65rem;
}

.faq-page__navigation a,
.faq-page__related-link {
    color: var(--cg-brand-700);
    font-weight: 700;
    text-decoration: none;
}

.faq-page__navigation a:hover,
.faq-page__navigation a:focus,
.faq-page__related-link:hover,
.faq-page__related-link:focus {
    text-decoration: underline;
}

.faq-page__categories {
    min-width: 0;
}

.faq-category {
    scroll-margin-top: 104px;
}

.faq-category + .faq-category {
    margin-top: 2.5rem;
    padding-top: 2.5rem;
    border-top: 1px solid #dbe7f3;
}

.faq-category > h2 {
    margin-bottom: 1.15rem;
    font-size: 1.75rem;
}

.faq-page .accordion-body p {
    margin-bottom: 0.75rem;
}

.faq-page__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 3rem;
    padding: 2rem;
    border-top: 1px solid var(--cg-brand-100);
    border-bottom: 1px solid var(--cg-brand-100);
    background: var(--cg-brand-50);
}

.faq-page__cta h2 {
    margin-bottom: 0.55rem;
    font-size: 1.55rem;
}

.faq-page__cta .aeo-btn-primary {
    flex: 0 0 auto;
    color: #ffffff;
    background: var(--cg-brand-700);
    border-color: var(--cg-brand-700);
}

.aeo-success-card {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    gap: 0;
    overflow: hidden;
}

.aeo-success-card__media {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    background: #f8fbff;
    border-right: 1px solid #e2e8f0;
}

.aeo-success-card__media img {
    max-width: 150px;
    max-height: 150px;
    border-radius: 8px;
}

.aeo-success-card__body {
    padding: 2rem;
}

.aeo-success-card__body h2 {
    margin: 1rem 0;
    color: #0f172a;
    font-size: clamp(1.6rem, 2.4vw, 2.25rem);
    text-align: left;
}

.aeo-success-card__body p {
    color: #475569;
    line-height: 1.75;
}

.aeo-success-card__body .aeo-btn-secondary {
    color: var(--cg-brand-700);
    border-color: rgba(11, 79, 130, 0.24);
}

.aeo-success-card__body .aeo-btn-secondary:hover,
.aeo-success-card__body .aeo-btn-secondary:focus {
    color: var(--cg-brand-700);
    background: #eff6ff;
}

.aeo-testimonial-detail {
    padding: 1.5rem;
}

.aeo-testimonial-detail img {
    display: block;
    width: 96px;
    height: 96px;
    object-fit: contain;
    margin-bottom: 1rem;
    border-radius: 8px;
}

.aeo-testimonial-detail h2 {
    color: #0f172a;
    font-size: 1.25rem;
    text-align: left;
}

.aeo-testimonial-detail blockquote {
    margin: 1rem 0;
    color: #1e293b;
    line-height: 1.68;
}

.aeo-testimonial-detail footer {
    display: grid;
    gap: 0.2rem;
    padding-top: 1rem;
    border-top: 1px solid #e2e8f0;
    color: #475569;
}

.aeo-testimonial-detail strong {
    color: #0f172a;
}

.segment-hero {
    color: var(--cg-surface);
    background: var(--cg-brand-800);
}

.segment-hero {
    padding: 4.75rem 0 3.5rem;
}

/* Evita que una instancia con Razor previo conserve elementos eliminados del hero segmentado. */
.segment-page .segment-breadcrumb,
.segment-page .segment-pill {
    display: none;
}

.segment-hero .container {
    max-width: 1140px;
}

.segment-hero h1 {
    max-width: 840px;
    margin: var(--cg-space-4) 0 var(--cg-space-3);
    font-size: clamp(2.2rem, 4.5vw, 3.85rem);
    line-height: 1.08;
    text-wrap: balance;
}

.segment-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: var(--cg-font-size-xl);
    line-height: 1.6;
}

.segment-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--cg-space-3);
    margin-top: var(--cg-space-6);
}

.segment-btn-primary,
.segment-btn-secondary {
    padding: 0.8rem 1.2rem;
    border-radius: var(--cg-radius-pill);
    font-weight: 700;
}

.segment-btn-primary {
    color: var(--cg-brand-700);
    background: var(--cg-surface);
    border-color: var(--cg-surface);
}

.segment-btn-primary:hover,
.segment-btn-primary:focus {
    color: var(--cg-brand-800);
    background: var(--cg-gray-50);
}

.segment-btn-secondary {
    color: var(--cg-surface);
    border-color: rgba(255, 255, 255, 0.7);
}

.segment-btn-secondary:hover,
.segment-btn-secondary:focus {
    color: var(--cg-surface);
    background: rgba(255, 255, 255, 0.12);
}

.segment-section {
    padding: 4.5rem 0;
    background: var(--cg-surface);
}

.segment-section--muted {
    background: var(--cg-surface-muted);
}

.segment-heading {
    max-width: 620px;
}

.segment-heading--centered {
    margin: 0 auto var(--cg-space-7);
    text-align: center;
}

.segment-heading h2 {
    margin: 0 0 var(--cg-space-3);
    color: var(--cg-text);
    font-size: clamp(1.7rem, 3vw, 2.5rem);
    font-weight: 700;
    line-height: 1.16;
    text-wrap: balance;
}

.segment-heading p,
.segment-card p {
    margin: 0;
    color: var(--cg-text-muted);
    font-size: var(--cg-font-size-lg);
    line-height: 1.65;
}

.segment-card {
    padding: var(--cg-space-6);
    border: 1px solid var(--cg-border);
    border-radius: var(--cg-radius-lg);
    background: var(--cg-surface);
    box-shadow: var(--cg-shadow-sm);
    transition: transform var(--cg-transition-base), box-shadow var(--cg-transition-base), border-color var(--cg-transition-base);
}

.segment-card:hover,
.segment-card:focus-within {
    border-color: var(--cg-brand-200);
    box-shadow: var(--cg-shadow-md);
    transform: translateY(-3px);
}

.segment-card__icon {
    display: inline-grid;
    width: 2.75rem;
    height: 2.75rem;
    place-items: center;
    margin-bottom: var(--cg-space-4);
    border-radius: var(--cg-radius-md);
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
    font-size: var(--cg-font-size-xl);
}

.segment-card h3 {
    margin-bottom: var(--cg-space-2);
    color: var(--cg-text);
    font-size: var(--cg-font-size-xl);
    font-weight: 700;
}

.segment-card p {
    font-size: var(--cg-font-size-base);
}

.segment-feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--cg-space-3);
    margin: var(--cg-space-5) 0 0;
    padding: 0;
    list-style: none;
}

.segment-feature-list li {
    display: flex;
    gap: var(--cg-space-2);
    color: var(--cg-text);
    line-height: 1.45;
}

.segment-feature-list i {
    color: var(--cg-brand-600);
    font-size: 1.2rem;
}

.segment-preview {
    overflow: hidden;
    border: 1px solid var(--cg-brand-100);
    border-radius: var(--cg-radius-lg);
    background: var(--cg-surface);
    box-shadow: var(--cg-shadow-lg);
}

.segment-preview--image {
    background: var(--cg-gray-50);
}

.segment-preview__image {
    display: block;
    width: 100%;
    height: auto;
}

.segment-preview__topbar {
    display: flex;
    justify-content: space-between;
    gap: var(--cg-space-3);
    padding: var(--cg-space-4) var(--cg-space-5);
    color: var(--cg-surface);
    background: var(--cg-brand-800);
    font-weight: 700;
}

.segment-preview__topbar span:last-child {
    color: var(--cg-brand-100);
    font-size: var(--cg-font-size-sm);
}

.segment-preview__body {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    min-height: 270px;
    background: var(--cg-gray-50);
}

.segment-preview__sidebar {
    display: grid;
    align-content: start;
    gap: var(--cg-space-4);
    padding: var(--cg-space-4);
    background: var(--cg-brand-900);
}

.segment-preview__sidebar span {
    height: 9px;
    border-radius: var(--cg-radius-pill);
    background: var(--cg-brand-600);
}

.segment-preview__sidebar .is-active {
    background: var(--cg-surface);
}

.segment-preview__main {
    padding: var(--cg-space-5);
}

.segment-preview__heading {
    display: flex;
    justify-content: space-between;
    gap: var(--cg-space-3);
    align-items: center;
    margin-bottom: var(--cg-space-4);
    color: var(--cg-text);
}

.segment-preview__heading span {
    width: 25%;
    height: 10px;
    border-radius: var(--cg-radius-pill);
    background: var(--cg-gray-200);
}

.segment-preview__metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--cg-space-3);
}

.segment-preview__metrics div,
.segment-preview__activity {
    padding: var(--cg-space-3);
    border: 1px solid var(--cg-border);
    border-radius: var(--cg-radius-sm);
    background: var(--cg-surface);
}

.segment-preview__metrics small,
.segment-preview__activity strong {
    display: block;
    color: var(--cg-text-muted);
    font-size: var(--cg-font-size-xs);
}

.segment-preview__metrics span {
    display: block;
    width: 58%;
    height: 13px;
    margin-top: var(--cg-space-3);
    border-radius: var(--cg-radius-pill);
    background: var(--cg-brand-100);
}

.segment-preview__activity {
    display: grid;
    gap: var(--cg-space-2);
    margin-top: var(--cg-space-3);
}

.segment-preview__activity span {
    height: 7px;
    border-radius: var(--cg-radius-pill);
    background: var(--cg-gray-100);
}

.segment-card--use-case {
    border-top: 3px solid var(--cg-brand-300);
}

.segment-card__step {
    display: block;
    margin-bottom: var(--cg-space-4);
    color: var(--cg-brand-500);
    font-size: var(--cg-font-size-2xl);
    font-weight: 700;
}

.segment-proof {
    display: grid;
    grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1.5fr);
    overflow: hidden;
    border: 1px solid var(--cg-border);
    border-radius: var(--cg-radius-lg);
    background: var(--cg-surface);
    box-shadow: var(--cg-shadow-md);
}

.segment-proof__identity {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--cg-space-4);
    padding: var(--cg-space-7);
    background: var(--cg-brand-50);
    text-align: center;
}

.segment-proof__identity img {
    width: 88px;
    height: 88px;
    padding: var(--cg-space-2);
    border: 1px solid var(--cg-brand-100);
    border-radius: var(--cg-radius-md);
    background: var(--cg-surface);
    object-fit: contain;
}

.segment-proof__identity span,
.segment-proof__quote p span {
    color: var(--cg-text-muted);
}

.segment-proof__identity h2 {
    margin: var(--cg-space-2) 0 0;
    color: var(--cg-text);
    font-size: var(--cg-font-size-xl);
}

.segment-proof__quote {
    padding: var(--cg-space-7);
}

.segment-proof__quote > i {
    color: var(--cg-brand-300);
    font-size: 2rem;
}

.segment-proof__quote blockquote {
    margin: var(--cg-space-2) 0 var(--cg-space-4);
    color: var(--cg-text);
    font-size: var(--cg-font-size-lg);
    line-height: 1.65;
}

.segment-proof__quote p {
    display: grid;
    gap: var(--cg-space-1);
}

.segment-faq {
    max-width: 900px;
}

.segment-faq .accordion-item {
    border-color: var(--cg-border);
}

.segment-faq .accordion-button:not(.collapsed) {
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
}

.public-contact-section {
    padding: 4rem 0;
    background: var(--cg-surface);
    scroll-margin-top: calc(var(--cg-public-header-height) + var(--cg-space-3));
}

.public-contact-section__details {
    padding-top: var(--cg-space-2);
}

.public-contact-section__details h2 {
    margin: var(--cg-space-2) 0 var(--cg-space-3);
    color: var(--cg-text);
}

.public-contact-section__lead {
    max-width: 560px;
    margin-bottom: 0;
    font-size: var(--cg-font-size-lg);
}

.public-contact-details {
    display: grid;
    gap: var(--cg-space-4);
    margin: var(--cg-space-6) 0 0;
    padding: 0;
    list-style: none;
}

.public-contact-details li {
    display: flex;
    align-items: center;
    gap: var(--cg-space-3);
    color: var(--cg-text);
    font-size: var(--cg-font-size-lg);
}

.public-contact-details i {
    width: 1.25rem;
    color: var(--cg-brand-600);
    text-align: center;
}

.public-contact-details a {
    color: inherit;
    text-decoration: none;
}

.public-contact-details a:hover,
.public-contact-details a:focus-visible {
    color: var(--cg-brand-700);
    text-decoration: underline;
}

.public-contact-form {
    margin: 0;
}

.public-contact-form .form-control {
    border-color: var(--cg-border);
    border-radius: var(--cg-radius-pill);
}

.public-contact-form textarea.form-control {
    border-radius: var(--cg-radius-md);
}

.public-contact-form__footer {
    display: grid;
    gap: var(--cg-space-3);
    margin-top: var(--cg-space-3);
}

.public-contact-form__alert {
    order: 2;
}

.public-contact-form__alert:empty {
    display: none;
}

.public-contact-form__footer .btn {
    width: 100%;
    order: 1;
    border-radius: var(--cg-radius-pill);
    font-weight: 700;
}

.home-segment-card {
    display: flex;
    flex-direction: column;
    padding: var(--cg-space-5);
    border: 1px solid var(--cg-border);
    border-radius: var(--cg-radius-md);
    color: var(--cg-text);
    background: var(--cg-surface);
    box-shadow: var(--cg-shadow-sm);
    text-decoration: none;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.home-segment-card:hover,
.home-segment-card:focus-visible {
    border-color: var(--cg-brand-200);
    box-shadow: var(--cg-shadow-md);
    transform: translateY(-3px);
}

.home-segment-card__icon {
    display: inline-grid;
    width: 2.6rem;
    height: 2.6rem;
    place-items: center;
    margin-bottom: var(--cg-space-3);
    border-radius: var(--cg-radius-sm);
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
    font-size: 1.2rem;
}

.home-segment-card h3 {
    margin-bottom: var(--cg-space-2);
    color: var(--cg-text);
    font-size: 1.2rem;
}

.home-segment-card p {
    margin-bottom: var(--cg-space-3);
    color: var(--cg-text-muted);
    line-height: 1.65;
}

.home-segment-card__link {
    margin-top: auto;
    color: var(--cg-brand-700);
    font-weight: 700;
}

/* Ajustes exclusivos para la landing de academias: conserva el sistema visual y reduce altura sin retirar contenido. */
.segment-page--academies .segment-hero {
    padding: 2rem 0;
    background: linear-gradient(135deg, var(--cg-brand-800), var(--cg-primary) 58%, var(--cg-brand-400));
}

.segment-page--academies .segment-hero .container {
    max-width: 1320px;
    text-align: center;
}

.segment-page--academies .segment-hero h1 {
    max-width: 1260px;
    margin: 0 auto var(--cg-space-2);
    font-size: clamp(2.25rem, 4vw, 3.5rem);
}

.segment-page--academies .segment-actions {
    justify-content: center;
    margin-top: var(--cg-space-4);
}

.segment-page--academies .segment-hero p {
    max-width: 1260px;
    margin-right: auto;
    margin-left: auto;
    line-height: 1.5;
}

.segment-page--academies .segment-section {
    scroll-margin-top: calc(var(--cg-public-header-height) + var(--cg-space-3));
}

.segment-page--academies .segment-section {
    padding: 3.5rem 0;
}

.segment-page--academies .segment-heading--centered {
    margin-bottom: var(--cg-space-6);
}

.segment-page--academies .segment-card {
    padding: var(--cg-space-5);
}

.segment-page--academies .segment-card__icon {
    margin-bottom: var(--cg-space-3);
}

.segment-page--academies .segment-card--use-case {
    padding-top: var(--cg-space-4);
    padding-bottom: var(--cg-space-4);
}

.segment-page--academies .segment-card__step {
    margin-bottom: var(--cg-space-2);
    font-size: var(--cg-font-size-xl);
}

.segment-page--academies .segment-proof__identity,
.segment-page--academies .segment-proof__quote {
    padding: var(--cg-space-6);
}

.segment-page--academies .segment-proof__quote blockquote {
    margin-bottom: var(--cg-space-3);
    font-size: var(--cg-font-size-base);
    line-height: 1.55;
}

.segment-page--academies .segment-preview__metric-value {
    width: auto;
    height: auto;
    margin-top: var(--cg-space-1);
    color: var(--cg-text);
    background: transparent;
    font-size: var(--cg-font-size-xl);
    font-weight: 700;
    line-height: 1.2;
}

.segment-page--academies .segment-preview__body {
    min-height: 230px;
}

.segment-page--gyms .segment-hero,
.segment-page--trainers .segment-hero {
    padding: 2rem 0;
    background: linear-gradient(135deg, var(--cg-brand-800), var(--cg-primary) 58%, var(--cg-brand-400));
}

.segment-page--gyms .segment-hero .container,
.segment-page--trainers .segment-hero .container {
    max-width: 1320px;
    text-align: center;
}

.segment-page--gyms .segment-hero h1,
.segment-page--trainers .segment-hero h1 {
    max-width: 1260px;
    margin: 0 auto var(--cg-space-2);
    font-size: clamp(2.25rem, 4vw, 3.5rem);
}

.segment-page--gyms .segment-actions,
.segment-page--trainers .segment-actions {
    justify-content: center;
    margin-top: var(--cg-space-4);
}

.segment-page--gyms .segment-hero p,
.segment-page--trainers .segment-hero p {
    max-width: 1260px;
    margin-right: auto;
    margin-left: auto;
    line-height: 1.5;
}

.segment-page--gyms .segment-section,
.segment-page--trainers .segment-section {
    scroll-margin-top: calc(var(--cg-public-header-height) + var(--cg-space-3));
}

.segment-page--gyms .segment-section,
.segment-page--trainers .segment-section {
    padding: 3.5rem 0;
}

.segment-page--gyms .segment-heading--centered,
.segment-page--trainers .segment-heading--centered {
    margin-bottom: var(--cg-space-6);
}

.segment-page--gyms .segment-card,
.segment-page--trainers .segment-card {
    padding: var(--cg-space-5);
}

.segment-page--gyms .segment-card__icon,
.segment-page--trainers .segment-card__icon {
    margin-bottom: var(--cg-space-3);
}

.segment-page--gyms .segment-card--use-case,
.segment-page--trainers .segment-card--use-case {
    padding-top: var(--cg-space-4);
    padding-bottom: var(--cg-space-4);
}

.segment-page--gyms .segment-card__step,
.segment-page--trainers .segment-card__step {
    margin-bottom: var(--cg-space-2);
    font-size: var(--cg-font-size-xl);
}

.segment-page--gyms .segment-preview__metric-value,
.segment-page--trainers .segment-preview__metric-value {
    width: auto;
    height: auto;
    margin-top: var(--cg-space-1);
    color: var(--cg-text);
    background: transparent;
    font-size: var(--cg-font-size-xl);
    font-weight: 700;
    line-height: 1.2;
}

.segment-page--gyms .segment-preview__body,
.segment-page--trainers .segment-preview__body {
    min-height: 230px;
}

.segment-page--gyms .segment-preview__example-label,
.segment-page--trainers .segment-preview__example-label {
    width: auto;
    height: auto;
    padding: var(--cg-space-1) var(--cg-space-2);
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
    font-size: var(--cg-font-size-xs);
    font-weight: 700;
}

.segment-page--academies .segment-preview__example-label {
    width: auto;
    height: auto;
    padding: var(--cg-space-1) var(--cg-space-2);
    color: var(--cg-brand-700);
    background: var(--cg-brand-50);
    font-size: var(--cg-font-size-xs);
    font-weight: 700;
}

@media (max-width: 767.98px) {
    .segment-page--academies .segment-hero {
        padding: 2rem 0;
    }

    .segment-page--academies .segment-section {
        padding: 2.5rem 0;
    }

    .segment-page--gyms .segment-hero,
    .segment-page--trainers .segment-hero {
        padding: 2rem 0;
    }

    .segment-page--gyms .segment-section,
    .segment-page--trainers .segment-section {
        padding: 2.5rem 0;
    }

    .public-contact-section {
        padding: 2.5rem 0;
    }

    .public-contact-form__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .public-contact-form__footer .btn {
        width: 100%;
    }
}

@media (max-width: 991.98px) {
    .aeo-content__grid,
    .aeo-success-card,
    .faq-page__layout {
        grid-template-columns: 1fr;
    }

    .aeo-sidebar,
    .faq-page__navigation {
        position: static;
    }

    .faq-page__navigation nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aeo-success-card__media {
        border-right: 0;
        border-bottom: 1px solid #e2e8f0;
    }

    .segment-proof {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .aeo-hero {
        padding: 3.5rem 0 2.5rem;
    }

    .aeo-actions .btn,
    .aeo-side-card .btn {
        width: 100%;
    }

    .aeo-article,
    .aeo-success-card__body,
    .aeo-testimonial-detail {
        padding: 1.25rem;
    }

    .aeo-demo-panel__metrics {
        gap: 0.45rem;
    }

    .aeo-demo-panel__metrics > div {
        padding: 0.55rem;
    }

    .faq-page__navigation nav {
        grid-template-columns: 1fr;
    }

    .faq-category > h2 {
        font-size: 1.5rem;
    }

    .faq-page__cta {
        align-items: stretch;
        flex-direction: column;
        padding: 1.25rem;
    }

    .faq-page__cta .btn {
        width: 100%;
    }

    .segment-hero,
    .segment-section {
        padding: 3.25rem 0;
    }

    .segment-actions .btn {
        width: 100%;
    }

    .segment-feature-list,
    .segment-preview__metrics {
        grid-template-columns: 1fr;
    }

    .segment-preview__body {
        grid-template-columns: 52px minmax(0, 1fr);
    }

    .segment-preview__main,
    .segment-proof__identity,
    .segment-proof__quote {
        padding: var(--cg-space-4);
    }

}

/* El bloque inicial resume beneficios: se compacta para que el hero y sus tres tarjetas se lean como una unidad al abrir cada landing. */
.segment-page .segment-hero + .segment-section,
.segment-page .segment-section--benefits {
    padding: var(--cg-space-8) 0;
}

.segment-page .segment-hero + .segment-section .segment-heading--centered,
.segment-page .segment-section--benefits .segment-heading--centered {
    margin-bottom: var(--cg-space-4);
}

.segment-page .segment-hero + .segment-section .segment-card,
.segment-page .segment-section--benefits .segment-card {
    padding: var(--cg-space-4);
}

.segment-page .segment-hero + .segment-section .segment-card__icon,
.segment-page .segment-section--benefits .segment-card__icon {
    margin-bottom: var(--cg-space-2);
}

.segment-page .segment-hero + .segment-section .segment-card h3,
.segment-page .segment-section--benefits .segment-card h3 {
    margin-bottom: var(--cg-space-1);
}

.segment-page .segment-hero + .segment-section .segment-card p,
.segment-page .segment-section--benefits .segment-card p {
    line-height: 1.45;
}

/* Los encabezados de secciones repetibles comparten una columna más amplia para disminuir saltos de línea sin perder su lectura centrada. */
.segment-page .segment-heading--centered {
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
}

@media (max-width: 767.98px) {
    .segment-page .segment-hero + .segment-section,
    .segment-page .segment-section--benefits {
        padding: var(--cg-space-6) 0;
    }
}
