body
{
   font-family: 'PP Neue Montreal', sans-serif;
   color: #595959;
   background-color: #fff;
   margin: 0;
   padding: 0;
}

.invest-hero
{
   background: linear-gradient(to right, #595959, #2f2f2f);
   color: white;
   text-align: center;
   padding: 90px 20px 80px;
}

.invest-hero h1
{
   font-size: 2.8rem;
   margin-bottom: 20px;
   letter-spacing: -0.5px;
}

.invest-hero p
{
   max-width: 700px;
   margin: 0 auto 30px;
   font-size: 1.25rem;
   line-height: 1.7;
}

.btn
{
   background: white;
   color: #2f2f2f;
   text-decoration: none;
   padding: 12px 25px;
   border-radius: 5px;
   font-weight: 600;
   transition: 0.3s;
}

.btn:hover
{
   background: #f3f3f3;
}

.btn-primary
{
   background: white;
   color: #2f2f2f;
   text-decoration: none;
   padding: 12px 25px;
   border-radius: 5px;
   font-weight: 600;
   transition: 0.3s;
}

.btn-primary:hover
{
   background: #2f2f2f;
   color: #f3f3f3;
}

.opportunities
{
   padding: 80px 20px;
   text-align: center;
}

.opportunities h2
{
   font-size: 2.2rem;
   margin-bottom: 50px;
   color: #2f2f2f;
}

.opportunity-grid
{
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
   gap: 35px;
   max-width: 1100px;
   margin: 0 auto;
}

.card
{
   background: #f8f8f8;
   border-radius: 10px;
   padding: 35px 25px;
   transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card:hover
{
   transform: translateY(-5px);
   box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

.icon
{
   font-size: 3rem;
   margin-bottom: 15px;
}

.card h3
{
   font-size: 1.3rem;
   margin-bottom: 12px;
   color: #2f2f2f;
}

.card p
{
   font-size: 1rem;
   line-height: 1.6;
}

.cta
{
   background: #2f2f2f;
   color: white;
   text-align: center;
   padding: 70px 20px;
}

.cta h2
{
   font-size: 2rem;
   margin-bottom: 20px;
}

.cta p
{
   font-size: 1.1rem;
   margin-bottom: 30px;
   max-width: 600px;
   margin-left: auto;
   margin-right: auto;
}

.cta .btn
{
   background: white;
   color: #2f2f2f;
   font-weight: 600;
}