
.grid-block {
    position: relative;
    height: 200px;
    overflow: hidden;
    margin-bottom:15px;
}
.grid-block:last-of-type {
    margin-right:0px;
}
.homepage .grid-block {
    height: 150px;
}
.grid-block h4 {
    font-size: .9em;
    color: #333;
    background: #f5f5f5;
    margin: 0;
    padding: 10px;
    border: 1px solid #ddd;
}

.caption {

    position: absolute;
    top: 130px;

    left: 0;
    background: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
}
.caption h3, .caption p {
    color: #fff;
    margin: 20px;
}
.caption h3 {
    margin: 20px 20px 10px;
    font-size: 1em;
    min-height:36px;
    padding-bottom: 5px;
    border-bottom: 1px dotted;
}

.caption p {
    font-size: .75em;
    line-height: 1.5em;
    margin: 0 20px 15px;
}
.caption a.learn-more {
    padding: 5px 10px;
    background: #08c;
    color: #fff;
    border-radius: 2px;
    -moz-border-radius: 2px;
    font-weight: bold;
    text-decoration: none;
}
.caption a.learn-more:hover {
    background: #fff;
    color: #08c;
}