/* ═══════════════════════════════════════════════════════
   home-features.css — bribool Capital v2
   Características (diseño original claro + parallax fondovideoblanco.png)
═══════════════════════════════════════════════════════ */

.ad-features-section {
    position: relative; overflow: hidden; padding: 78px 0 88px;
    background-color: #ffffff;
    background-image:
        linear-gradient(rgba(255,255,255,.88), rgba(255,255,255,.88)),
        url('../images/fondovideoblanco.png');
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
}
.ad-features-section > .ad-container { position: relative; z-index: 1; }
.ad-features-header { max-width: 900px; margin: 0 auto 34px; text-align: center; }
.ad-features-header span {
    display: inline-flex; align-items: center; justify-content: center; margin-bottom: 14px;
    color: #ff5f25; font-size: var(--ad-section-eyebrow-size);
    font-weight: var(--ad-section-eyebrow-weight); letter-spacing: .2px; text-transform: uppercase;
}
.ad-features-header h2 {
    margin: 0; color: #111835; font-size: var(--ad-section-title-size);
    font-weight: var(--ad-section-title-weight); letter-spacing: 0;
    line-height: var(--ad-section-title-line); text-transform: none;
}
.ad-features-header p {
    max-width: 760px; margin: 20px auto 0; color: var(--ad-text-soft);
    font-size: var(--ad-section-copy-size); font-weight: 500; line-height: var(--ad-section-copy-line);
}
.ad-features-layout {
    display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    align-items: center; gap: 42px;
}
.ad-features-visual { display: flex; align-items: center; justify-content: center; min-width: 0; }
.ad-features-visual img { width: min(100%, 550px); height: auto; object-fit: contain; filter: drop-shadow(0 24px 34px rgba(45, 14, 96, .08)); }
.ad-features-list { display: grid; gap: 18px; }
.ad-feature-card {
    display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 20px;
    align-items: center; min-height: 136px; padding: 20px 24px;
    border: 1px solid rgba(18, 25, 56, .12); border-radius: 14px;
    background: rgba(255, 255, 255, .92); box-shadow: 0 14px 32px rgba(18, 25, 56, .045);
    transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
.ad-feature-card:hover { transform: translateY(-3px); border-color: rgba(45, 14, 96, .28); box-shadow: 0 20px 40px rgba(45, 14, 96, .09); }
.ad-feature-card__icon {
    width: 78px; height: 78px; display: grid; place-items: center;
    border-radius: 50%; background: #ffffff;
    box-shadow: inset 0 0 0 8px rgba(45, 14, 96, .08), 0 14px 26px rgba(45, 14, 96, .12);
}
.ad-feature-card__icon i {
    width: 54px; height: 54px; display: grid; place-items: center;
    border-radius: 50%; color: #ffffff; font-size: 23px;
}
.ad-feature-card__icon--purple i { background: linear-gradient(135deg, var(--ad-purple), #2d0e60); }
.ad-feature-card__icon--blue { box-shadow: inset 0 0 0 8px rgba(63, 105, 255, .08), 0 14px 26px rgba(63, 105, 255, .12); }
.ad-feature-card__icon--blue i { background: linear-gradient(135deg, #16a8ff, var(--ad-blue)); }
.ad-feature-card__icon--orange { box-shadow: inset 0 0 0 8px rgba(255, 147, 33, .12), 0 14px 26px rgba(255, 147, 33, .12); }
.ad-feature-card__icon--orange i { background: linear-gradient(135deg, var(--ad-orange), #ff5f25); }
.ad-feature-card__content { min-width: 0; }
.ad-feature-card h3 {
    margin: 0 0 10px; color: #111835; font-size: clamp(19px, 1.28vw, 22px);
    font-weight: var(--ad-card-title-weight); letter-spacing: 0; line-height: 1.16; text-transform: none;
}
.ad-feature-card p { margin: 0; color: var(--ad-text-soft); font-size: 15px; font-weight: 500; line-height: 1.7; }
.ad-feature-card__link {
    display: inline-flex; align-items: center; gap: 12px; margin-top: 14px;
    color: #ff5f25; font-size: 14px; font-weight: 700; letter-spacing: .2px;
    text-transform: uppercase; transition: color .22s ease, gap .22s ease;
}
.ad-feature-card__link:hover { gap: 16px; color: var(--ad-purple); }

@media (max-width: 1100px) {
    .ad-features-layout { grid-template-columns: 1fr; gap: 34px; }
    .ad-features-visual { order: 2; }
    .ad-features-list { order: 1; }
    .ad-features-visual img { width: min(100%, 500px); }
}
@media (max-width: 768px) {
    .ad-features-section { padding: 62px 0 68px; }
    .ad-feature-card { grid-template-columns: 1fr; gap: 18px; min-height: 0; padding: 20px 18px; text-align: center; }
    .ad-feature-card__icon { margin: 0 auto; }
    .ad-feature-card h3 { font-size: 20px; }
    .ad-feature-card__link { justify-content: center; }
    .ad-features-visual img { width: min(100%, 380px); }
}
