* { box-sizing: border-box; }
.customer-container { margin-top: 5px; }
body { margin: 0; background-color: #f2f2f2; }
.main-container 
{
    position: relative;
    margin-top: 10px;
    background: #8a017e;
    border-radius: 12px;
    overflow: hidden;
    height: auto;
    min-height: 0;
}
.customer-container { display: grid; }
.customer-card
{
    background-color: rgb(247, 245, 206);
    border-radius: 10px;
    padding: 10px;
    padding-bottom: 2.5px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.15);
    border-left: 5px solid #3498db;
}
.customer-name { font-size: 1.2rem; font-weight: bold; margin-bottom: 1.5px; color: #3015ca; }   
.customer-address { font-size: 1.05rem; margin-bottom: 12px; color: black; }
.customer-phone { font-size: 1.05rem; margin-bottom: 2px; color: black; }
.start-date { font-size: 1.05rem; color: black; }
p { position: relative;}

/* --------------------- Screen Sizes --------------------- */

@media(max-width: 460px)
{
    .main-container 
    {
        height: auto;
        min-height: 0;
        margin-top: 10px;
        margin-bottom: 20px;
        overflow: visible;
    }
    .lblCustomers {font-size: 0.9rem; font-weight: 700; margin-top: 1.8%; margin-left: 18%;}
    #systemsList 
    { font-size: 0.7rem; margin-left: 17%; font-weight: 700; margin-bottom: 0; width: 57%;
    position: relative; top: -20px;
    }
    #tCustomers {margin-left: 78%; margin-top: 1.2%;}
    .customer-container 
    {
        grid-template-columns: repeat(1, 1fr); gap: 15px; width: 96.2%; position: relative;
        margin-bottom: 10px; margin-left: 1.8%; margin-top: -4px; overflow: visible;
    }
}
@media(min-width: 461px) and (max-width: 576px)
{
    .main-container 
    { max-width: 95%; width: 95%; top: 65px;
    margin-left: 2.6%; grid-template-rows: 0.98fr 1.02fr; margin-bottom: 40px;
    }
    .lblCustomers {font-size: 0.9rem; font-weight: 700; margin-top: 2.4%; margin-left: 3.5%; }
    #systemsList { font-size: 0.9rem; margin-left: 26%; margin-top: 2.5%; font-weight: 700; width: 54%;}
    #tCustomers {margin-left: 82%;}
    .customer-container 
    {
        grid-template-columns: repeat(1, 1fr); gap: 15px; width: 96.2%;
        margin-top: 7px; margin-bottom: 20px; margin-left: 1.8%;
    }
}
@media(min-width: 577px) and (max-width: 767px)
{
    .main-container 
    { max-width: 95%; width: 95%; top: 60px;
    margin-left: 2.6%; margin-bottom: 40px;
    }
    .lblCustomers {font-size: 1.2rem; font-weight: 700; margin-top: 2.7%; margin-left: 3.5%; }
    #systemsList { font-size: 1.2rem; margin-left: 25%; margin-top: 2.5%; font-weight: 700; width: 54%;}
    #tCustomers {margin-left: 81%;}
    .customer-container 
    {
        grid-template-columns: repeat(2, 1fr); gap: 15px; width: 96.2%;
        margin-top: 7px; margin-bottom: 20px; margin-left: 1.8%;
    }
}
@media(min-width: 768px) and (max-width: 991px)
{
    .main-container
    { max-width: 74%; width: 74%; margin-left: 24%; margin-bottom: 15px;
    margin-top: 15px; }
    .lblCustomers {font-size: 1.2rem; font-weight: 700; margin-top: 2.7%; margin-left: 3.5%; }
    #systemsList { font-size: 1.2rem; margin-left: 24.5%; margin-top: 2.5%; font-weight: 700; width: 56.5%;}
    #tCustomers {margin-left: 83%;}
    .customer-container 
    {
        grid-template-columns: repeat(2, 1fr); gap: 15px; width: 96.2%;
        margin-top: 7px; margin-bottom: 20px; margin-left: 1.8%;
    }
}
@media(min-width: 992px) and (max-width: 1199px)
{
    .main-container
    { max-width: 78.1%; width: 78.1%; margin-left: 20%; margin-bottom: 15px;
    margin-top: 15px; }
    .lblCustomers {font-size: 1.2rem; font-weight: 700; margin-top: 2.7%; margin-left: 3.5%; }
    #systemsList { font-size: 1.2rem; margin-left: 28%; margin-top: 2.5%; font-weight: 700;}
    #tCustomers {margin-left: 73%;}
    .customer-container 
    {
        grid-template-columns: repeat(2, 1fr); gap: 15px; width: 96.2%;
        margin-top: 7px; margin-bottom: 20px; margin-left: 1.8%;
    }
}
@media(min-width: 1200px) and (max-width: 1399px)
{
    .main-container 
    { min-height: 565px; max-width: 83%; width: 83%; margin-left: 15.7%; 
    margin-bottom: 18px; margin-top: 20px;
    }
.lblCustomers {font-size: 1.1rem; font-weight: 700; margin-top: 2.4%; margin-left: 3.5%; }
#systemsList { font-size: 0.9rem; margin-left: 15.5%; margin-top: 2.5%; font-weight: 700;}
#tCustomers {margin-left: 42.5%;}
.customer-container 
    {
        grid-template-columns: repeat(3, 1fr); gap: 15px; width: 96.2%;
        margin-top: 22px; margin-bottom: 20px; margin-left: 1.8%;
    }
}
@media(min-width: 1400px)
{
    .main-container 
    { min-height: 565px; max-width: 83%; width: 83%; margin-left: 15.7%; 
    margin-bottom: 18px; margin-top: 20px;
    }
.lblCustomers {font-size: 1.1rem; font-weight: 700; margin-top: 2.4%; margin-left: 3.5%; }
#systemsList { font-size: 0.9rem; margin-left: 13.5%; margin-top: 2.5%; font-weight: 700;}
#tCustomers {margin-left: 37.5%;}
.customer-container 
    {
        grid-template-columns: repeat(3, 1fr); gap: 15px; width: 96.2%;
        margin-top: 22px; margin-bottom: 20px; margin-left: 1.8%;
    }
}