/* Features Grid Block Styles */
.featuresGrid {
    position: relative;
    overflow: hidden;
    padding: 75px 0;
  }
  
  .featuresGrid__container {
    /* Use full container width like other prominent blocks */
  }
  
  /* Padding variants */
  .featuresGrid--padding-top-small { padding-top: 32px; }
  .featuresGrid--padding-top-medium { padding-top: 64px; }
  .featuresGrid--padding-top-large { padding-top: 96px; }
  .featuresGrid--padding-top-none { padding-top: 0; }
  
  .featuresGrid--padding-bottom-small { padding-bottom: 32px; }
  .featuresGrid--padding-bottom-medium { padding-bottom: 64px; }
  .featuresGrid--padding-bottom-large { padding-bottom: 96px; }
  .featuresGrid--padding-bottom-none { padding-bottom: 0; }
  
  /* Header styles */
  .featuresGrid__header {
    text-align: left;
    margin-bottom: 60px;
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
  }
  
  .featuresGrid__title {
    font-size: 56px;
    line-height: 1.2;
    margin-bottom: 25px;
    font-weight: 500;
    font-family: "Pastiche Grotesque", "Open Sans", sans-serif;
  }
  
  .featuresGrid__subtitle {
    font-size: 26px;
    line-height: 1.4;
    margin-bottom: 0;
  }
  
  /* Grid layout */
  .featuresGrid__grid {
    display: grid;
    gap: 50px 80px;
    align-items: start;
    max-width: 1600px;
    margin: 0 auto;
  }
  
  /* Column variants */
  .featuresGrid--cols-1 .featuresGrid__grid {
    grid-template-columns: 1fr;
    max-width: 600px;
    margin: 0 auto;
  }
  
  .featuresGrid--cols-2 .featuresGrid__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .featuresGrid--cols-3 .featuresGrid__grid {
    grid-template-columns: repeat(3, 1fr);
  }
  
  .featuresGrid--cols-4 .featuresGrid__grid {
    grid-template-columns: repeat(4, 1fr);
  }
  
  /* Feature item styles */
  .featuresGrid__item {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    text-align: left;
  }
  
  .featuresGrid__itemIcon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 4px;
  }
  
  .featuresGrid__itemIcon svg {
    width: 40px;
    height: 40px;
    display: block;
  }
  
  .featuresGrid__customIcon {
    width: 40px;
    height: 40px;
    object-fit: contain;
  }
  
  .featuresGrid__itemContent {
    flex: 1;
  }
  
  .featuresGrid__itemTitle {
    font-size: 28px;
    line-height: 1.3;
    margin-bottom: 12px;
    font-weight: 500;
    font-family: "Pastiche Grotesque", "Open Sans", sans-serif;
  }
  
  .featuresGrid__itemDescription {
    font-size: 22px;
    line-height: 1.5;
    margin-bottom: 0;
  }
  
  /* WYSIWYG content styling for descriptions */
  .featuresGrid__itemDescription p {
    font-size: inherit;
    line-height: inherit;
    margin-bottom: 8px;
  }
  
  .featuresGrid__itemDescription p:last-child {
    margin-bottom: 0;
  }
  
  .featuresGrid__itemDescription strong,
  .featuresGrid__itemDescription b {
    font-weight: 700;
  }
  
  .featuresGrid__itemDescription em,
  .featuresGrid__itemDescription i {
    font-style: italic;
  }
  
  /* Footer styles */
  .featuresGrid__footer {
    margin-top: 70px;
    padding-top: 50px;
    text-align: left;
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
  }
  
  .featuresGrid__footerNotes {
    font-size: 20px;
    line-height: 1.5;
  }
  
  .featuresGrid__footerNotes p {
    margin-bottom: 15px;
  }
  
  .featuresGrid__footerNotes p:last-child {
    margin-bottom: 0;
  }
  
  /* Text color themes */
  .featuresGrid--text-dark {
    color: #000000;
  }
  
  .featuresGrid--text-dark .featuresGrid__title,
  .featuresGrid--text-dark .featuresGrid__itemTitle {
    color: #000000;
  }
  
  .featuresGrid--text-light {
    color: #ffffff;
  }
  
  .featuresGrid--text-light .featuresGrid__title,
  .featuresGrid--text-light .featuresGrid__itemTitle {
    color: #ffffff;
  }
  
  /* Medium screens */
  @media (max-width: 1300px) {
    .featuresGrid__grid {
      gap: 45px 65px;
    }
    
    .featuresGrid__title {
      font-size: 48px;
    }
    
    .featuresGrid__subtitle {
      font-size: 24px;
    }
    
    .featuresGrid__itemIcon {
      width: 36px;
      height: 36px;
    }
    
    .featuresGrid__itemIcon svg {
      width: 36px;
      height: 36px;
    }
    
    .featuresGrid__customIcon {
      width: 36px;
      height: 36px;
    }
    
    .featuresGrid__itemTitle {
      font-size: 24px;
    }
    
    .featuresGrid__itemDescription {
      font-size: 20px;
    }
    
    .featuresGrid__itemDescription p {
      font-size: inherit;
    }
    
    .featuresGrid__footerNotes {
      font-size: 18px;
    }
  }
  
  /* Tablet and below */
  @media (max-width: 767px) {
    .featuresGrid {
      padding: 45px 0;
    }
    
    .featuresGrid--padding-top-small { padding-top: 30px; }
    .featuresGrid--padding-top-medium { padding-top: 50px; }
    .featuresGrid--padding-top-large { padding-top: 70px; }
    
    .featuresGrid--padding-bottom-small { padding-bottom: 30px; }
    .featuresGrid--padding-bottom-medium { padding-bottom: 50px; }
    .featuresGrid--padding-bottom-large { padding-bottom: 70px; }
    
    .featuresGrid__header {
      margin-bottom: 40px;
    }
    
    .featuresGrid__title {
      font-size: 38px;
    }
    
    .featuresGrid__subtitle {
      font-size: 20px;
    }
    
    .featuresGrid__grid {
      gap: 35px;
    }
    
    .featuresGrid__item {
      gap: 20px;
    }
    
    .featuresGrid__itemIcon {
      width: 32px;
      height: 32px;
    }
    
    .featuresGrid__itemIcon svg {
      width: 32px;
      height: 32px;
    }
    
    .featuresGrid__customIcon {
      width: 32px;
      height: 32px;
    }
    
    .featuresGrid__itemTitle {
      font-size: 22px;
    }
    
    .featuresGrid__itemDescription {
      font-size: 18px;
    }
    
    .featuresGrid__itemDescription p {
      font-size: inherit;
    }
    
    .featuresGrid__footer {
      margin-top: 45px;
      padding-top: 30px;
    }
    
    .featuresGrid__footerNotes {
      font-size: 16px;
    }
    
    /* Force single column on mobile for all layouts */
    .featuresGrid--cols-2 .featuresGrid__grid,
    .featuresGrid--cols-3 .featuresGrid__grid,
    .featuresGrid--cols-4 .featuresGrid__grid {
      grid-template-columns: 1fr;
    }
  }
  
  /* Small mobile */
  @media (max-width: 480px) {
    .featuresGrid__title {
      font-size: 32px;
    }
    
    .featuresGrid__subtitle {
      font-size: 18px;
    }
    
    .featuresGrid__item {
      gap: 16px;
    }
    
    .featuresGrid__itemIcon {
      width: 28px;
      height: 28px;
    }
    
    .featuresGrid__itemIcon svg {
      width: 28px;
      height: 28px;
    }
    
    .featuresGrid__customIcon {
      width: 28px;
      height: 28px;
    }
    
    .featuresGrid__itemTitle {
      font-size: 18px;
    }
    
    .featuresGrid__itemDescription {
      font-size: 16px;
    }
    
    .featuresGrid__itemDescription p {
      font-size: inherit;
    }
    
    .featuresGrid__footerNotes {
      font-size: 16px;
    }
  }
  
  /* Accessibility and animation support */
  @media (prefers-reduced-motion: reduce) {
    .featuresGrid__grid [data-aos] {
      transform: none !important;
      opacity: 1 !important;
    }
  }
  
  /* High contrast mode support */
  @media (prefers-contrast: high) {
    .featuresGrid__item {
      border: 1px solid currentColor;
      padding: 16px;
      border-radius: 8px;
    }
  }
  
  /* Bottom spacing utility classes */
  .featuresGrid--bottom-small { margin-bottom: 32px; }
  .featuresGrid--bottom-medium { margin-bottom: 64px; }
  .featuresGrid--bottom-large { margin-bottom: 96px; }
  .featuresGrid--bottom-xlarge { margin-bottom: 120px; }
  .featuresGrid--bottom-none { margin-bottom: 0; }
  
  /* Responsive bottom spacing adjustments */
  @media (max-width: 767px) {
    .featuresGrid--bottom-small { margin-bottom: 24px; }
    .featuresGrid--bottom-medium { margin-bottom: 40px; }
    .featuresGrid--bottom-large { margin-bottom: 60px; }
    .featuresGrid--bottom-xlarge { margin-bottom: 80px; }
  } 