/**
 * ConlineWeb — Convención global: icono al lado del título en cards
 * (desktop + móvil). Carga al final del footer.
 */

:is(
    .card-svc__title-row,
    .cw-home-deliver__title-row,
    .feature-title-row,
    .contact-info-card__head,
    .card-header,
    .proc-tempo__head,
    .proc-collab__head,
    .proc-svc__head,
    .demos-price-card__head,
    .proc-tl__head,
    .cw-policy-deliv__head
) {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.75rem !important;
    text-align: left !important;
    min-width: 0;
}

:is(.feature, .contact-info-card__head) {
    align-items: flex-start !important;
}

.card-header .card-icon,
:is(.terms-card, .policy-card) .card-header .card-icon {
    flex-shrink: 0;
    margin: 0 !important;
}

.card-svc__title-row {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    grid-template-areas: "icon heading" !important;
    align-items: center !important;
    gap: 0.65rem !important;
    width: 100%;
    min-width: 0;
}

.card-svc__title-row :is(.card-icon, .improved-icon) {
    grid-area: icon !important;
    align-self: center !important;
    margin: 0 !important;
    flex-shrink: 0;
}

.card-svc__heading {
    grid-area: heading !important;
    min-width: 0;
    width: auto !important;
}

body.page-home .cards-container--rail .card-svc__title-row {
    display: flex !important;
    grid-template-columns: unset !important;
    grid-template-areas: unset !important;
    align-items: flex-start !important;
}

/* Paquetes / uso frecuente: <i> + h3 en la misma fila */
.sw-use-card:not(.cw-host-card) {
    display: grid !important;
    grid-template-columns: auto 1fr;
    column-gap: 0.65rem;
    row-gap: 0.35rem;
    align-items: start;
}

.sw-use-card:not(.cw-host-card) > i {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    margin: 0 !important;
    flex-shrink: 0;
}

.sw-use-card:not(.cw-host-card) > h3 {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    margin: 0 !important;
}

.sw-use-card:not(.cw-host-card) > :not(i):not(h3) {
    grid-column: 1 / -1;
}

/* Beneficios home: icono al lado del título en todas las vistas */
body.page-home .home-benefits__card {
    display: grid !important;
    grid-template-columns: auto 1fr;
    grid-template-areas:
        "icon title"
        "text text";
    column-gap: 0.75rem;
    row-gap: 0.45rem;
    align-items: center;
}

body.page-home .home-benefits__card-head {
    display: contents;
}

body.page-home .home-benefits__icon {
    grid-area: icon;
    align-self: center;
    margin: 0 !important;
}

body.page-home .home-benefits__card-title {
    grid-area: title;
    margin: 0 !important;
    align-self: center;
}

body.page-home .home-benefits__card-text {
    grid-area: text;
}

/* Diff cards: icono dentro del h3 */
.corp-diff-card h3 i {
    margin-right: 0.45rem;
    vertical-align: -0.05em;
}

/* NAP / canales: icono + texto en fila */
.corp-nap-channel {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0.85rem !important;
}

/* Pasos del proceso: número al lado del título (todas las vistas) */
.sw-process-step {
    display: grid !important;
    grid-template-columns: auto 1fr;
    column-gap: 0.75rem;
    row-gap: 0.4rem;
    align-items: start;
}

.sw-process-step .sw-process-num {
    grid-column: 1;
    grid-row: 1;
    align-self: center !important;
    margin: 0 !important;
    flex-shrink: 0;
}

.sw-process-step > h3 {
    grid-column: 2;
    grid-row: 1;
    align-self: center !important;
    margin: 0 !important;
}

.sw-process-step > p,
.sw-process-step > .proceso-step-time {
    grid-column: 1 / -1;
}
