.flex_wrap {width: 100%; margin-top: 10px; margin-bottom: 25px;}
.flex {
    display: flex;
    flex-flow: wrap;
    justify-content: center; 
    font-family: courier, monospace;
}

.flex_details { 
    width: 360px;
    margin: 10px;
/*    min-height: 400px;*/
    border-collapse: collapse;
    border: 4px solid;
    border-radius: 4px;
    border-color: #fff;    
    border-collapse: collapse;
    background-color: #fff;
    -moz-box-shadow: 0 0 4px #090909;
    -webkit-box-shadow: 0 0 4px #090909;
    box-shadow: 0 0 4px #090909;
}

.flex_row {
    display: table-row;
    text-align: left;    
}

.flex_row ul {height: 100%;}
.flex_row li {line-height: 2.5em; list-style-type: none;}

.flex_row_spacer {
    height: .5em;
}

.flex_cell {   
    display: table-cell;
    width: 350px;
    padding: 5px;
}

.flex_cell a {color: #090909;}

.flex_cell iframe {
    width: 330px;
    height: 275px;
    border: 0px solid;
    border-radius: 4px;
    border-color: #fff;
    -moz-box-shadow: 0 0 7px #33;
    -webkit-box-shadow: 0 0 7px #333;
    box-shadow: 0 0 7px #333;   
}

.flex_cell_header {
    text-align: center;    
    line-height: 3em;
    font-size: 1em;
    font-weight: 600;
    letter-spacing: .25em;
    color: #fff;
    background: #090909;
}

.flex_cell_data {
    padding-left: 10px;
    padding-right: 10px;
    text-align: left;
    line-height: 1.5em;    
    font-family: courier, monospace;
    font-size: 1em;
    color: #090909;
}

.flex_cell_icons  {
    width: 100%;
    text-align: center;
}

.flex_cell_icons img {
    height: 25px;
    width: 25px;
    vertical-align: middle;
}

.flex_cell_location {
    text-align: center;
    padding-bottom: 5px;
}

.flex_cell_notes {padding-left: 10px; padding-right: 10px; line-height: 2.25em; text-align: justify;}

.flex_cell_photo {
    text-align: center;
}

.flex_cell_photo img {
    width: 330px;
    height: 275px;
    border: 0px solid;
    border-radius: 4px;
    border-color: #fff;
    -moz-box-shadow: 0 0 7px #33;
    -webkit-box-shadow: 0 0 7px #333;
    box-shadow: 0 0 7px #333;   
}


@media all and (min-width: 360px) and (max-width: 480px) { 
/*    .flex_details {width: 360px; min-height: 300px; }*/
    .flex_cell_header {font-size: 1em}
    .flex_cell {font-size: .9em;}
    .flex_cell iframe {width: 300px; height: 250px;}
    .flex_cell_photo img {width: 300px; height: 250px;}
}