/* Block: aap-feature-grid
 * Extracted from css/product-solutions-v2.css + css/agent-accounts-2026.css
 * Variables and the legacy section-padding neutralizer are scoped to the
 * block root (.aap__features) so each block is self-contained and configurable.
 */

.aap__features {
      --pp-black: #000000;
      --pp-dark: #151515;
      --pp-dark-card: #212121;
      --pp-dark-bg: #1f1f1f;
      --pp-border-dark: #404040;
      --pp-border-light: #d8d8d8;
      --pp-green: #1ea482;
      --pp-green-bold: #0b9b8a;
      --pp-gray: #8e8e8e;
      --pp-gray-light: #d8d8d8;
      --pp-white: #ffffff;
      --pp-beige: #FAFAFA;
      --pp-content-max: 1200px;
      --pp-font-heading: 'Manrope', sans-serif;
      --pp-font-body: 'Inter', sans-serif;
      --pp-font-mono: 'Inconsolata', 'JetBrains Mono', monospace;
      --aap-bg:          #ffffff;
      --aap-ink:         #000000;
      --aap-ink-muted:   #8e8e8e;
      --aap-rule-light:  #d8d8d8;
      --aap-rule-dark:   #404040;
      --aap-dark:        #000000;
      --aap-card-dark:   #212121;
      --aap-code-dark:   #151515;
      --aap-accent:      #0b9b8a;
      --aap-accent-bri:  #1ea482;
      --aap-pink:        #e01be0;
      --aap-text-on-dk:  #d8d8d8;
      --aap-rail:        1200px;
      --aap-rail-pad:    100px;
      --aap-side-strip:  146px;
      --aap-font-head:   'Manrope', 'Inter', system-ui, sans-serif;
      --aap-font-body:   'Inter', system-ui, sans-serif;
      --aap-font-mono:   'JetBrains Mono', 'Fira Code', 'Menlo', monospace;

    background: var(--aap-bg);
    color: var(--aap-ink);
    font-family: var(--aap-font-body);
}

.aap__features:not(.container) {

      padding: var(--pp-section-pad, 0px) !important;
}

.aap__features .aap__eyebrow {
    display: inline-block;
    font-family: var(--aap-font-body);
    font-weight: 600;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.aap__features .aap__eyebrow--accent { color: var(--aap-accent); font-weight: 700; }

.aap__features .aap__eyebrow--muted  { color: var(--aap-ink-muted); }

.aap__features {
    background: var(--aap-dark);
    color: #fff;
    padding: 0 var(--aap-rail-pad) 60px;
}

.aap__features .aap__dark-rail {
    max-width: var(--aap-rail);
    margin: 0 auto;
    padding: 40px 0 0;
    border-left: 1px solid var(--aap-rule-dark);
    border-right: 1px solid var(--aap-rule-dark);
}

.aap__features .aap__dark-rail--bordered {
    border-top: 1px solid var(--aap-rule-dark);
}

.aap__features {
    /* Tighter dark-on-dark transition between sections 2 & 3. */
    padding-top: 0;
}

.aap__features .aap__dark-rail {
    padding-top: 60px;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 28px;
    border-bottom: 1px solid var(--aap-rule-dark);
}

.aap__features-header {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    text-align: center;
    padding: 60px 24px 30px;
    border-top: 1px solid var(--aap-rule-dark);
}

.aap__features-title,
.aap__features-header h2 {
    margin: 0;
    font-family: var(--aap-font-head);
    font-weight: 600;
    font-size: 35px;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: #fff;
    max-width: 950px;
}

.aap__features-desc {
    margin: 0;
    font-family: var(--aap-font-head);
    font-size: 18px;
    line-height: 1.55;
    color: var(--aap-text-on-dk);
    max-width: 639px;
}

.aap__features-grid {
    list-style: none;
    margin: 0;
    padding: 0 32px 72px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.aap__feature-card {
    background: var(--aap-card-dark);
    border: 1px solid var(--aap-rule-dark);
    border-radius: 6px;
    padding: 24px;
    min-height: 230px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.aap__feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 33px;
    height: 32px;
    border-radius: 4px;
    background: rgba(142,142,142,0.18);
    border: 1px solid #8e8e8e;
    color: #d6d6d6;
}

.aap__feature-icon svg { width: 18px; height: 18px; }

.aap__feature-title {
    margin: 8px 0 0;
    font-family: var(--aap-font-head);
    font-weight: 600;
    font-size: 20px;
    line-height: 1.3;
    color: #fff;
    letter-spacing: -0.01em;
}

.aap__feature-desc {
    margin: 0;
    font-family: var(--aap-font-body);
    font-size: 14px;
    line-height: 1.55;
    color: var(--aap-text-on-dk);
}

@media (max-width: 1280px) {
      .aap__features {
          padding-left: 40px;
          padding-right: 40px;
      }

}

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

}

@media (max-width: 768px) {
      .aap__features {
          padding-left: 24px;
          padding-right: 24px;
      }

  .aap__features-grid {
          grid-template-columns: 1fr;
          padding: 0 16px 24px;
      }

  .aap__features-title,
  .aap__features-header h2 { font-size: 28px; }

}
