/*  ==========================================================================
    07. FORMS AND BUTTONS
    ========================================================================== */
/*
    Forms
    ==================================== */

.Form-container { padding: 0 45px; }

.Form--search { float: left; width: 50%; position: relative; }
.Form--search input { width: 100%; padding-right: 50px; }
.Form--search button { position: absolute; top: 50%; right: 0; margin-top: -14px; background: none; border-left: #cbcbcb 1px solid; padding: 0 10px; }
    .Form--search button:hover { background: none; }

.Form-default {  }
.Form-default .fm_field { width: 50%; float: left; margin-bottom: 1em; padding: 0 10px; }
.Form-default .fm_textarea { width: 100%; clear: both; }
    .Form-default .fm_textarea textarea { height: 200px; }
.Form-default .fm_field label { display: block; margin-bottom: .5em; }
.Form-default .fm_actions { clear: both; padding: 0 10px; }
.Form-default .fm_desc { font-style: italic; font-size: 14px; }

.Form-actionsInline .fm_actions { clear: none; float: left; padding: 0; margin-top: 32px; }
.Form-actionsInline .fm_field { padding: 0; }

.Form-subscribe { margin-top: 3em; }
.Form-subscribe .Form-subscribe-title { border-top: #d2d0d0 1px solid; border-bottom: #d2d0d0 1px solid; padding: 1em 0; }
.Form-subscribe form { margin-top: 1em; }

/*
    Form elements
    ==================================== */

.fm_req { color: red; }

input, select, textarea { background: #fff; border: #cbcbcb 1px solid; font-family: 'open-sans-n4', 'open-sans', Arial, Tahoma, Helvetica, sans-serif; font-size: 18px; line-height: 25px; font-weight: 300; margin: 0; display: inline-block; padding: 7px; outline: none; -webkit-border-radius: none; -webkit-border-radius: 0; border-radius: 0; width: 100%; -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.1); -moz-box-shadow: 0 1px 1px rgba(0,0,0,.1); box-shadow: 0 1px 1px rgba(0,0,0,.1); }
    input:focus, select:focus, textarea:focus { -webkit-box-shadow: inset 0 0 8px #c9c9c9; -moz-box-shadow: inset 0 0 8px #c9c9c9; box-shadow: inset 0 0 8px #c9c9c9; }

button { background: #666; color: #fff; display: inline-block; border: none; width: auto; margin: 0; padding: 7px 15px; font-size: 11px; font-family: 'open-sans-n6', 'open-sans', Arial, Tahoma, Helvetica, sans-serif; font-style: normal; font-weight: 600; line-height: 26px; text-align: center; text-transform: uppercase; vertical-align: top; cursor: pointer; }
    button:hover, button:focus { background: #000; color: #fff; }


.ie7 .Form--search button { display: inline; zoom: 1; width: 50px; z-index: 100; top: 25px; }
.ie7 .Form--search input { padding-right: 0; }


.Form-default button { -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.3); -moz-box-shadow: 0 1px 1px rgba(0,0,0,.3); box-shadow: 0 1px 1px rgba(0,0,0,.3); }


.fm_error_msg { list-style: none !important; margin: .5em 0 0 0 !important; padding: 0; font-size: 14px !important; font-size:  0.875rem !important;  line-height: 1.28571 !important; color: red !important; text-align: right; font-style: italic; }
.fm_error_msg li:before { content: '' !important; }

.fm_group { border-top: 1px solid #d2d0d0; border-bottom: 1px solid #d2d0d0; padding: 20px 0 10px; margin: 10px 0 20px; }
.fm_group legend { font-size: 24px; margin-left: 10px; }
