.ribbon {
    width: 294px;
    margin: 0px auto;
    padding: 0 2px 0;
    position: relative;
    color: #444;
    background: #fff;
    border: 1px solid #d2d2d2;
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.ribbon h3 {
    font-size:12px;
    font-family:"arial";
    display: block;
    height: 15px;
    line-height: 1.3;
    width: 287px;
    margin: 0;
    padding: 5px 10px;
    position: relative;
    left: -8px;
    top: 3px;
    color: #cfcfcf;
    text-shadow: 0 1px 1px #111;
    border-top: 1px solid #363636;
    border-bottom: 1px solid #202020;
    background: #333;
    background: linear-gradient(top, #383838 0%, #262626 100%);
    border-radius: 2px 2px 0 0;
    box-shadow: 0 1px 2px rgba(0,0,0,0.3);
}
.ribbon h3::before,
.ribbon h3::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    bottom: -11px;
    z-index: -10;
    border: 5px solid;
    border-color: #242424 transparent transparent transparent;
}
.ribbon h3::before {left: 0;}
.ribbon h3::after {right: 0;}
.ribbon.round h3 {
    border-radius: 4px;
}
.ribbon.round h3::before,
.ribbon.round h3::after {
    width: 10px;
    height: 10px;
    bottom: -4px;
    border: none;
    border-radius: 10px;
}
.ribbon.round h3::before {
    background: #33aaf8;
    background: linear-gradient(left, #33aaf8 0%, #0674bb 100%);
}
.ribbon.round h3::after {
    background: #33aaf8;
    background: linear-gradient(right, #33aaf8 0%, #0674bb 100%);
}
.ribbon.blue h3 {
    color: #fff;
    text-shadow: 0 1px 1px #155b88;
    border-top: 1px solid hsl(203, 97%, 53%);
    border-bottom: 1px solid hsl(203, 71%, 48%);
    background: -webkit-gradient(linear, 0 0, 0 100%, from(#33ACFC), to(#3198DD));
    background: -webkit-linear-gradient(top, #33ACFC 0%, #3198DD 100%);
    background: -moz-linear-gradient(top, #33ACFC 0%, #3198DD 100%);
    background: -ms-linear-gradient(top, #33ACFC 0%, #3198DD 100%);
    background: -o-linear-gradient(top, #33ACFC 0%, #3198DD 100%);
    background: linear-gradient(top, #33ACFC 0%, #3198DD 100%);

    box-shadow:
        0 1px 0 rgba(255,255,255,0.08) inset,
        0 1px 2px rgba(0,0,0,0.3);
}
.ribbon.blue h3::before,
.ribbon.blue h3::after {
    border-color: #389ddd transparent transparent transparent;
}
.ribbon.round.blue h3::before {
    background: #33aaf8;
    background: -webkit-gradient(linear, 0 0, 100% 0, from(#33aaf8), to(#0674bb));
    background: -webkit-linear-gradient(left, #33aaf8 0%, #0674bb 100%);
    background: -moz-linear-gradient(left, #33aaf8 0%, #0674bb 100%);
    background: -ms-linear-gradient(left, #33aaf8 0%, #0674bb 100%);
    background: -o-linear-gradient(left, #33aaf8 0%, #0674bb 100%);
    background: linear-gradient(left, #33aaf8 0%, #0674bb 100%);
}
.ribbon.round.blue h3::after {
    background: #33aaf8;
    background: -webkit-gradient(linear, 0 0, 100% 0, from(#0674bb), to(#33aaf8));
    background: -webkit-linear-gradient(right, #33aaf8 0%, #0674bb 100%);
    background: -moz-linear-gradient(right, #33aaf8 0%, #0674bb 100%);
    background: -ms-linear-gradient(right, #33aaf8 0%, #0674bb 100%);
    background: -o-linear-gradient(right, #33aaf8 0%, #0674bb 100%);
    background: linear-gradient(right, #33aaf8 0%, #0674bb 100%);
}
.ribbon.green h3 {
    color: #fff;
    text-shadow: 0 1px 1px #060;
    border-top: 1px solid #093;
    border-bottom: 1px solid #060;
    background: -webkit-gradient(linear, 0 0, 0 100%, from(#33CC33), to(#29A329));
    background: -webkit-linear-gradient(top, #33CC33 0%, #29A329 100%);
    background: -moz-linear-gradient(top, #33CC33 0%, #29A329 100%);
    background: -ms-linear-gradient(top, #33CC33 0%, #29A329 100%);
    background: -o-linear-gradient(top, #33CC33 0%, #29A329 100%);
    background: linear-gradient(top, #33CC33 0%, #29A329 100%);

    box-shadow:
        0 1px 0 rgba(255,255,255,0.08) inset,
        0 1px 2px rgba(0,0,0,0.3);
}
.ribbon.green h3::before,
.ribbon.green h3::after {
    border-color: #006600 transparent transparent transparent;
}
.ribbon.round.green h3::before {
    background: #093;
    background: -webkit-gradient(linear, 0 0, 100% 0, from(#093), to(#007A29));
    background: -webkit-linear-gradient(left, #093 0%, #007A29 100%);
    background: -moz-linear-gradient(left, #093 0%, #007A29 100%);
    background: -ms-linear-gradient(left, #093 0%, #007A29 100%);
    background: -o-linear-gradient(left, #093 0%, #007A29 100%);
    background: linear-gradient(left, #093 0%, #007A29 100%);
}
.ribbon.round.green h3::after {
    background: #093;
    background: -webkit-gradient(linear, 0 0, 100% 0, from(#007A29), to(#093));
    background: -webkit-linear-gradient(right, #093 0%, #007A29 100%);
    background: -moz-linear-gradient(right, #093 0%, #007A29 100%);
    background: -ms-linear-gradient(right, #093 0%, #007A29 100%);
    background: -o-linear-gradient(right, #093 0%, #007A29 100%);
    background: linear-gradient(right, #093 0%, #007A29 100%);
}
