/* =========================================
   BASIC RESETS
   ========================================= */
   * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  body {
    font-family: Arial, sans-serif;
    color: #333;
    line-height: 1.5;
  }
  
  /* =========================================
     HEADER / NAVBAR
     ========================================= */
  .ai_platform_header {
    background-color: #ffffff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  }
  
  .ai_platform_navbar-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0.5rem;
    position: relative;
  }
  
  .ai_platform_logo-section {
    display: flex;
    align-items: center;
    gap: 1rem;              /* space between logos/text */
  }
  
  .ai_platform_nsf-logo {
    height: 70px;
    width: auto;
  }
  
  .ai_platform_award-text {
    font-size: 1rem;
  }
  
  /* =========================================
     HAMBURGER MENU (MOBILE)
     ========================================= */
  .ai_platform_menu-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
  }
  
  .ai_platform_hamburger-bar {
    display: block;
    width: 25px;
    height: 3px;
    background-color: #333;
    border-radius: 2px;
    transition: background-color 0.3s;
  }
  
  /* =========================================
     NAVIGATION MENU
     ========================================= */
  .ai_platform_nav {
    margin-right: 2rem;
  }
  
  .ai_platform_nav-list {
    display: flex;
    list-style: none;
    gap: 1rem;
    transition: max-height 0.3s ease;
  }
  
  .ai_platform_nav-list li a {
    text-decoration: none;
    color: #333;
    font-weight: 500;
    transition: color 0.2s ease-in-out;
  }
  
  .ai_platform_nav-list li a:hover {
    color: #f57c00;
  }
  
  .ai_platform_nav-list li a.active {
    color: #f57c00;
    font-weight: bold;
  }
  /* FOOTER
   ========================================= */
   .ai_platform_footer {
    background-color: #f8f8f8;
    padding: 1rem 2rem;
    margin-top: 2rem;
  }
  
  .ai_platform_footer-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    /* center the single contact block now that it's the only item */
    justify-content: center;
  }
  
  /* CONTACT BLOCK */
  .footer-contact {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  
  .ai_platform_connect-icon {
    width: 50px;
    height: 50px;
  }
  
  .ai_platform_contact-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  
  .ai_platform_contact-title {
    font-size: 1rem;
  }
  
  .ai_platform_contact-email {
    color: #f57c00;
    font-weight: bold;
    font-size: 1rem;
  }
  


  /* Partner logos—smaller than NSF logo */
  .ai_platform_partner-logo {
    height: 40px;      
    width: auto;
  }

  .ai_platform_contact-line {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  /* -----------------------------------------
     Main content area
     ----------------------------------------- */

  /* constrain content and center */

  /* Button Centering Container */
  .homepage_project-info-action {
    text-align: center;
    margin-top: 1rem;
  }
  
  /* CTA Button */
  .homepage_cta-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background-color: #f57c00;
    color: #fff;
    padding: 0.75rem 1.5rem;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    transition: background-color 0.2s ease-in-out;
  }
  
  .homepage_cta-button:hover {
    background-color: #333;
  }
  
  /* Arrow icon styling */
  .homepage_arrow-icon {
    width: 16px;
    height: auto;
  }
  
.ai_platform_main-content {
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 2rem;
  }
  
  /* hero flex container */
  .ai_platform_hero-container {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
  
  /* left text block = 70% */
  .ai_platform_hero-text {
    flex: 0 0 70%;
  }
  
  /* right image block = 30% */
  .ai_platform_hero-image {
    flex: 0 0 30%;
    text-align: right;
  }
  
/* Hero title: overall size, weight, black by default */
.ai_platform_hero-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #000;      /* black */
    margin-bottom: 1rem;
  }
  
  /* Highlight only the “AI-Powered” line in orange */
  .ai_platform_hero-title--highlight {
    color: #f57c00;   /* your orange */
  }
  
  /* Hero paragraph styling */
  .ai_platform_hero-paragraph {
    background-color: #f0f0f0;
    text-align: left;
    padding: 1.5rem;
    border-radius: 0.5rem;
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    margin-bottom: 2rem;
  }
  
  /* Make sure the illustration scales */
  .ai_platform_hero-image img {
    max-width: 100%;
    height: auto;
    display: inline-block;
  }
  /* =========================================
   FEATURES SECTION
   ========================================= */
.ai_platform_features-section {
    max-width: 1200px;
    margin: 3rem auto;
    padding: 0 1rem;
  }
  
  .ai_platform_features-container {
    display: flex;
    gap: 2rem;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  
  .ai_platform_feature {
    flex: 1 1 45%;               /* two columns, wrap on narrow screens */
    text-align: center;
    padding: 1rem;
  }
  
  .ai_platform_feature-title {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: #000;
  }
  
  .ai_platform_feature-icon {
    width: 100px;
    height: 100px;
    margin-bottom: 1rem;
  }
  
  .ai_platform_feature-text {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    text-align: justify;
  }

  .ai_architecture_simple {
    max-width: 1200px;
    margin: 3rem auto;
    padding: 0 1rem;
    text-align: center;
  }
  
  .ai_architecture_simple-title {
    color: #f57c00;      /* orange */
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
  }
  
  .ai_architecture_simple-image img {
    max-width: 100%;
    height: auto;
    display: inline-block;
  }


  /* =========================================
   MOBILE LAYOUT OVERRIDES (up to 768px)
   ========================================= */
@media (max-width: 768px) {

  /* — HEADER & NAV — */
  .ai_platform_header {
    padding: 0.8rem 0.8rem;        /* was 0.5rem, now 1rem top/bottom */
  }
  .ai_platform_menu-toggle {
    display: flex;
    margin-left: auto;
  }
  .ai_platform_navbar-container {
    flex-wrap: nowrap;

  }
  .ai_platform_nav-list {
    display: none;
    position: absolute;
    top: 3.5rem;        /* just below header */
    right: 1rem;
    width: 180px;
    max-height: 0;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    border-radius: 4px;
    transition: max-height 0.3s ease;
  }
  .ai_platform_nav-list.ai_platform_show-nav {
    display: block;
    max-height: 500px;
  }
  .ai_platform_nav-list li {
    border-bottom: 1px solid #eee;
  }
  .ai_platform_nav-list li:last-child {
    border-bottom: none;
  }
  .ai_platform_nav-list li a {
    display: block;
    padding: 0.75rem 1rem;
  }

  /* Shrink partner logos */
  .ai_platform_partner-logo {
    display: none;
  }
  /* Bump NSF logo & award text */
  .ai_platform_nsf-logo {
    height: 80px;
  }
  .ai_platform_award-text {
    font-size: 0.9rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  /* — MAIN HERO — */
  .ai_platform_hero-container {
    display: flex;
    flex-direction: column; /* force vertical stack */
    align-items: center;
    gap: 1rem;
  }
  .ai_platform_hero-image {
    order: 0;    /* image first */
    width: 70%; /* full-width */
    text-align: center;
    margin-bottom: 0; 
  }
  .ai_platform_hero-text {
    order: 1;    /* text below */
    width: 100%;
    text-align: center;
  }
  .ai_platform_hero-title {
    font-size: 1.75rem;
    text-align: center;
  }
  .ai_platform_hero-paragraph {
    font-size: 0.95rem;
    padding: 1rem;
  }

  /* — CTA BUTTON — */
  .homepage_project-info-action {
    margin: 1rem 0;
  }
  .homepage_cta-button {
    width: 100%;
    justify-content: center;
  }

  /* — FEATURES GRID — */
  .ai_platform_features-container {
    flex-direction: column;
    gap: 2rem;
  }
  .ai_platform_feature {
    flex: 1 1 100%;
  }
  .ai_platform_feature-title {
    font-size: 1.5rem;
  }
  .ai_platform_feature-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 0.75rem;
  }
  .ai_platform_feature-text {
    font-size: 0.95rem;
  }

  /* — TASK OVERVIEW (if you re-enable it) — */
  .ai_architecture_simple,
  .ai_architecture_simple-image img {
    max-width: 100%;
  }

  /* — FOOTER — */
  .ai_platform_footer-container {
    flex-direction: column;
    row-gap: 1rem;
  }
  .ai_platform_connect-icon {
    width: 40px;
    height: 40px;
  }
}
