 /*Home page*/

 .intro-text {
     display: flex;
     align-items: flex-start;
     gap: 20px;
 }

 .intro-text .text {
     flex: 2;
     color: #000;
     position: relative;
     padding: 0;
     font-size: 22px;
 }
 .intro-text .text p {
    margin-top: 0;
 }
 .intro-text .image {
     flex: 1;
     height: auto;
 }

 .intro-text .image img {
     border-radius: 4px;
 }

 .italic-bold {
     font-style: italic;
     font-weight: bold;
     margin-top: 20px;
     font-size: 24px;
 }

 .buttons {
     display: flex;
     gap: 20px;
     margin: 20px 0;
     padding: 0px 40px;
 }

 .button {
     background-color: #002f6c;
     color: white;
     padding: 12px 20px;
     text-align: center;
     font-weight: bold;
     border-radius: 4px;
     text-decoration: none;
     flex: 1;
 }

 .paragraph {
     margin-top: 20px;
     line-height: 1.6;
     font-size: 22px;
 }

 .home-content hr {
     border: 1px solid #003366;
 }

 .federal-shared-title {
     color: #0033a0 !important;
 }

 .federal-shared-description {
     margin-bottom: 20px;
     line-height: 1.6;
     font-size: 22px;
 }

 .federal-shared-description a {
     color: #003366;
     text-decoration: underline;
 }

 .federal-accordion {
     border-bottom: 1px solid #000;
     background-color: white;
 }

 .federal-accordion-header {
     background-color: #0059af;
     color: white;
     padding: 8px 20px;
     font-weight: bold;
     font-size: 21px;
     cursor: pointer;
     display: flex;
     justify-content: space-between;
     align-items: center;
 }

 .federal-accordion-content {
     display: none;
     padding: 0;
     border-bottom: 1px solid #ccc;
 }

 .federal-accordion-table {
     width: 100%;
     border-collapse: collapse;
 }

 .federal-accordion-table td {
     vertical-align: top;
     padding: 5px;
     border-right: 1px solid #ccc;
     width: 50%;
 }

 .federal-accordion-table td:last-child {
     border-right: none;
 }

 .federal-services-list {
     list-style-type: none;
     padding: 0;
     margin: 0;
 }

 .federal-services-list li::before {
     color: #003366;
     font-weight: bold;
     display: inline-block;
     width: 1em;
     margin-left: -1em;
 }

 .federal-toggle-icon {
     font-size: 22px;
     font-weight: bold;
 }

 .federal-agency-title {
     color: #003366;
     font-size: 18px;
     font-weight: bold;
     display: flex;
     gap: 10px;
 }

 .federal-agency-details strong {
     color: #333;
 }

 .federal-shared-footer {
     margin-top: 20px;
     font-size: 22px;
 }

 .federal-shared-footer a {
     color: #003366;
 }

 /*Catalog main page*/

 .title {
     font-size: 1.8rem;
     font-weight: bold;
     color: #003366;
     margin-bottom: 10px;
 }

 .subtitle {
     margin-bottom: 20px;
     line-height: 1.6;
     font-size: 22px;
 }

 .highlight {
     font-weight: bold;
     color: #000;
 }

 .boxes {
     display: flex;
     gap: 20px;
     margin: 20px 0;
     font-size: 18px;
     flex-wrap: wrap;
 }

 .box {
     background: #fff;
     border: 1px solid #ccc;
     padding: 1rem;
     flex: 1;
     border-top: 8px solid transparent;
     min-height: 100px;
     cursor: pointer;
     text-decoration: none;
     color: #000;
 }
.commercial-text {
    font-size: 22px;
}
.vendor-header .vendor-logo {
        height: 40px;
    width: auto;
}

.vendor-icons .vendor-logo {
    height: 30px;
    width: auto;
    position: relative;
    top: 5px; 
}
 .box.federal {
     border-top-color: #f9b233;
 }

 .box.commercial {
     border-top-color: #005ea2;
 }

 .box.centralized {
     border-top-color: #00a9ce;
 }

 .box h3 {
     margin-top: 0;
     font-size: 1rem;
     color: #003366;
     font-size: 19px;
 }

 .acquisition-text {
     margin-top: 20px;
     line-height: 1.6;
     font-size: 22px;
 }

 .button-wrapper {
     margin-top: 30px;
     text-align: center;
     font-size: 18px;
 }

 .gateway-button {
     background-color: #003366;
     color: white;
     padding: 12px 28px;
     text-decoration: none;
     font-weight: bold;
     border-radius: 5px;
     display: inline-block;
 }

 .gateway-button:hover {
     background-color: #005ea2;
 }

 /* Commercial*/


 .vendors-section {
     margin-top: 30px;
 }

 .vendors-section h2 {
     background: #003366;
     color: #fff !important;
     padding: 10px;
     font-size: 1.2em;
     margin-bottom: 0;
 }

 .vendor-card {
     border: 1px solid #ddd;
     margin: 20px 0;
     border-radius: 6px;
     background: #fafafa;
     padding: 15px;
 }

 .vendor-header {
     display: flex;
     align-items: center;
     gap: 20px;
 }


 .vendor-header h3 {
     margin: 0;
     color: #1a4e9a;
 }

 .vendor-content {
     margin-top: 15px;
 }

 .vendor-content p {
     margin: 5px 0;
 }

 .contacts {
     margin: 10px 0;
     display: flex;
     gap: 30px;
 }

 .contact {
     margin-bottom: 8px;
 }

 .vendor-icons {
     margin-top: 10px;
     font-size: 0.9em;
     color: #555;
 }

 .vendor-icons span {
     display: inline-block;
     margin-right: 15px;
 }

 @media (max-width: 768px) {
     .boxes {
        flex-direction: column;
     }
     .vendor-header {
         flex-direction: column;
         align-items: flex-start;
     }


     .contacts {
         display: block;
     }
     
     .intro-text {
    flex-direction: column;
  }

  .intro-text .text,
  .intro-text .image {
    flex: 1 1 100%; 
    align-self: center;
  }

  .intro-text .image img {
    width: 100%;
    height: auto;
  }
 }
 a.about-link {
    color:#43b0cd;
 }
.about-text-list {
    font-size: 21px;
}
 /* Mandatory*/

 .federal-title {
     color: #1a4e9a;
     font-size: 1.8em;
     margin-bottom: 10px;
 }

 .federal-intro {
     margin-bottom: 30px;
     font-size: 22px;
 }

 .federal-table {
     width: 100%;
     border-collapse: collapse;
     font-size: 22px;
 }

 .federal-accordion-table tbody {
     border: 1px solid #ccc;
     border-collapse: collapse;
 }

 .federal-row {
     display: flex;
     flex-wrap: wrap;
     border-bottom: 1px solid #ddd;
 }

 .federal-header {
     background: #1a4e9a;
     color: #fff;
     font-weight: bold;
 }

 .federal-cell {
     padding: 15px;
 }

 .federal-col-name {
     flex: 1 1 30%;
     border-right: 1px solid #ddd;
 }

 .federal-col-desc {
     flex: 1 1 70%;
 }

 .federal-logo {
     width: 120px;
     margin-bottom: 10px;
 }

 .federal-col-name p {
     margin: 5px 0;
 }

 .federal-col-name a,
 .federal-col-desc a {
     color: #1a4e9a;
     text-decoration: none;
 }

 .federal-col-name a:hover,
 .federal-col-desc a:hover {
     text-decoration: underline;
 }

 @media (max-width: 768px) {
     .federal-row {
         flex-direction: column;
     }

     .federal-col-name {
         border-right: none;
         border-bottom: 1px solid #ddd;
     }
      .buttons {
        flex-direction: column;
        padding: 0 20px; /* Reduce horizontal padding on small screens */
    }

    .button {
        width: 100%;
        margin-bottom: 10px;
        flex: none;
    }
 }

 /*Resources*/
 .accordion-header {
     width: 100%;
     text-align: left;
     padding: 12px 16px;
     font-weight: bold;
     background: #eaeaea;
     border: none;
     cursor: pointer;
     font-size: 16px;
     position: relative;
 }

 .accordion-header::after {
     content: '\002B';
     /* Unicode for plus (+) */
     position: absolute;
     right: 20px;
     font-size: 20px;
     transition: transform 0.3s ease;
 }

 .accordion-header.active::after {
     content: '\2212';
     /* Unicode for minus (−) */
 }

 .accordion-content {
     display: none;
 }

 .accordion-header.active {
     color: initial;
 }

 .investment-buttons {
     background: #2a297b;
     color: white;
     width: 25%;
     height: 30px;
     border: none;
 }

 button#sendEmail {
     cursor: pointer;
     background: transparent;
     border: 000;
     color: white;
 }

