

.my_grid
{
    border-top:1px solid #ede7f6;
    border-bottom:1px solid #ede7f6;
    padding:2px;
    margin-top:5px !important;
    padding-top: 10px !important;
    padding-bottom: 15px !important;
}

/*does vertical inner lines between columns*/
.my_grid > .row > div:not(:first-child)
{
    border-left:1px solid #ede7f6; ;
}

/* separates labels */
.my_grid > div > div > label:not(:first-child)
{
    padding-top: 5px;
    margin-left: -1px;
    display: block;
}

/*indents the nested divs after labels*/
.my_grid > div > div > label+div
{
    padding-left: 5px !important;
}


.grid_row_bg
{
    background-color: #fff;
}

.grid_row_bg_alt
{
    background-color: #f5fdff;
}


/*adds bottom borders when columns are stacked*/
@media only screen and (max-width: 600px) {

     /*remove border*/
    .my_grid
    {
        border-bottom:none;
    }

    /*space between labels*/
    .my_grid label
    {
        margin-bottom: 10px;
        margin-top: 10px;
    }

    /*dotted line between stacked divs*/
    .my_grid .row > div
    {
        border-bottom:1px dashed #ede7f6; ;
    }

    /* removes vertical inner lines between columns*/
    .my_grid .row > div:not(:first-child)
    {
        border-left:none;
    }

}