/** ----------------------------------------------------------
 *
 * This stylesheet includes both generic form styles and 
 *    additional form styles for the User Defined Form Module.
 *
 ** ------------------------------------------------------- */


/* GENERIC FORMS
----------------------------------------------- */

form {
    /*max-width: 500px;*/
}
div.field {
    margin: 10px 0 15px;
    clear: both;
    width:100%;
}
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
    max-width: 100%;
    width: 100%;
}
form label {
    margin-bottom: 5px;
    font-family: Arial, Helvetica, sans-serif;
}
    form label.left {
        display: block;
        display: inline-block;
        font-size: 16px;
        width: 112px;
        text-align: left;
        margin: 7px 30px 0 0;
        float:left;
    }
    form label.right {
        font-size: 12px;
        color: #888;
    }

/* Multimedia Form Style */
/*#MultimediaForm_MultimediaForm .search input.text{
    width: 140px;
    height: 33px;
    max-height: 33px;
    border-radius: 0;
}*/
/*#MultimediaForm_MultimediaForm select.dropdown{
    width: 96px;
    margin-right: 0;
}*/
/* Multimedia Form Style */

form input.text,
form textarea,
form .textajaxuniquetext,   /* Not sure if this is used? */
form select {
    /*width: 350px;
    padding: 6px 5px;
    font-size: 15px;
    background-color: #ebebeb;
    border: 1px solid #dad9d9;
    color: #6b6363;*/
    border: none;
    background-color: #fff;
    padding: 6px 5px;
    border-radius: 0;
}

form select{
    /*-webkit-appearance: none;
    -webkit-box-shadow: none;*/
}

form input.text, form textarea{
    /*width: 338px;*/
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing: border-box;
}

form textarea{
    font-family: 'HelveticaNeueW01-55Roma';
}

    .ie7 form select { width: 400px; } /* fix for ie7's rendering of max-width property on select input */


form input.text:focus,
form textarea:focus,
form .textajaxuniquetext:focus,
form select:focus {
    outline:none;
}
form input[disabled], form textarea[disabled] {
    background-color: #f7f7f7;
    border: 1px solid #dad9d9;
}
textarea {
    resize: vertical; /* forces text area to be resized vertically only */
}


/* Radio and Checkbox */
.field .radio {
    float: left; 
    width: 13px; 
    height: 13px; 
    margin-right: 6px; 
    margin-top: 3px;
    padding: 0;
}

.field .checkbox{
    float: left;
    width: 13px;
    height: 13px;
    background-color: white;
    border: 1px solid #00547C;
    margin-right: 6px;
    margin-top: 3px;
    padding: 0;
}

.checkbox label.right,
.radio label.right {
    float: left;
}


/* Messages */
form .message {
    background-color: #fef4ba;
    padding: 5px 10px;
    border: 1px solid #e8c805;
    border-radius: 3px;
}
    form .good {
        background-color: #ecf9d0;
        border-color: #8fbe00;
    }
    form .bad, form .required {
        background-color: #f9d0d0;
        border-color: #cf0000;
        color: #b80000;
    }


#BookingForm_BookingForm .Actions {
    margin-bottom: 74px;
    position: relative;
    height: 100px;
}

#BookingForm_BookingForm_action_processBookingForm, #BookingForm_BookingForm_action_processDirectCreditForm, #BookingForm_BookingForm_action_processInvoiceForm{
    position:relative;
    float:left;
}

.ActionGroup {
    position: absolute;
    width: 285px;
    margin: auto;
    right: 0;
}

/* ACTIONS */
.Actions {
    margin-bottom: 20px;
    position:relative;
}
    a.btn, button, input[type="submit"], .Actions .action {
        background-color: #b7d5df;
	    padding: 6px 30px;
	    border-radius: 15px 0;
	    float: left;
	    text-transform: uppercase;
	    font-size: 16px;
	    color: #00547c;
	    border: none;
    }
	.Actions .action.hide {
		display: none;
	}
    a.btn:hover, button, input[type="submit"]:hover, .Actions .action:hover {
        
    }
    a.btn {
        line-height: 18px;
        margin-bottom: 10px;
    }
    a.btn:after {                     /* creates arrow in button */
        content: '\2192';
        padding-left: 10px;
    }
    .ie7 input.action {
        width: 0;                     /* IE table-cell margin fix */
        overflow: visible;
    }
    input.action[class] {             /* IE ignores [class] */
        width: auto;                  /* cancel margin fix for other browsers */
    }

    .ie7 .Actions .action {
        float: left;
    }
    .Actions:after {
        color: #B94A48;
        display: inline-block;
        font-weight: normal;
        margin-top: 9px;
    }
    #MemberLoginForm_LoginForm .Actions:after {
        display: none;
    }


/* AREA SPECIFIC */
    /* LOGIN and FORGOT PASSWORD */
    #Remember {
        
    }
    #ForgotPassword {
        clear: left;
    }
    #ForgotPassword a {
    	color: #00547c;
    	text-decoration: underline;
    }
    #MemberLoginForm_LostPasswordForm .Actions:after {
        display: none;
    }

    .shopcart-contents #MemberLoginForm_LoginForm .Actions{
		position: absolute;
		bottom: 10px;
		right: 10px;
		margin: 0;
    }
    .shopcart-contents #MemberLoginForm_LoginForm .Actions *{
		float: right;
    }





    /* Search / Login */
    .header form .middleColumn {
        /* float: none;
        width: 100% !important; */
    }




/* USER DEFINED USER FORM MODULE STYLES
----------------------------------------------- */

/*Generic and mixed*/
.FormHeading {
    clear: both;
    padding-top: 15px;
}
form .date .middleColumn input {
    /*background: transparent url(../images/icons/your_icon_here.png) no-repeat scroll 90px 5px;
    width: 114px;*/
}
.Actions input.resetformaction,
.Actions input.action-minor {                  /* Clear button */
    float: left;
    background-color: #888;
}
.Actions input.resetformaction:hover,
.Actions input.action-minor:hover {            /* Clear button */
    background-color: #aaa;
}

/* Labels */
.checkbox label.right {
    font-size: 13px;                            /* reset to default */
    color: #333;                                /* reset to default */
}
form .requiredField label.left:after { /* pseudo element adds an asterisk to a required fields label */
    color: #B94A48;
    content: "*";
    font-size: 14px;
    font-weight: normal;
    padding-left: 3px;
}

/* Radio / Checkbox */
form .checkboxset ul,
form .optionset ul {
    margin: 0;
}
    form .checkboxset li,
    form .optionset li {
        margin-bottom: 5px;
        list-style-type:none;
    }
    form div.checkbox:after { /* clearfix */
        content: ".";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden;
    }
    form .checkbox .checkbox { clear: both; }

/* Messages */
span.message {
    margin: 10px 0;
    display: block;
    max-width: 327px;
    margin-left: 142px;
    margin-top:10px;
    margin-bottom:10px;
    margin-right:0;
    clear: left;
}
div.holder-required {               /* This class needs to be changed - is used for both input and div */
    /* background-color: #f9d0d0;
    border: 1px solid #cf0000;
    padding: 10px;
    margin-left: -11px; */
}
form input.holder-required {        /* This class needs to be changed - is used for both input and div */
    border: 1px solid #cf0000; 
}

/* Error messages */
input:invalid,
textarea:invalid {
    border-radius: 1px;
    -moz-box-shadow: 0px 0px 5px red;
    -webkit-box-shadow: 0px 0px 5px red;
    box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid {
    background-color: #f0dddd
}

/* To test - potentially not needed? */
.ss-uploadfield-item-info button{
    margin-top: 4px !important;
    float: left;
}
form .creditCardField input,
form input.currency,
form input.numeric {
    width: 50px;
}
form #DMYDate-month,
form #DMYDate-day {
    width: 25px
}


/* Custom styles form styles
----------------------------------------------- */
form div.middleColumn{
    display:inline-block;
    width:100%;
    max-width: 100%;
    position: relative;
}

.registration-form-label {
    font-family: 'HelveticaNeueW01-55Roma';
    font-size: 18px;
    color: #2d4090;
    padding: 20px 24px 10px 0;
    margin: 0;
    line-height: 18px;
    background: url(../images/dotted-line.jpg) repeat-x bottom left;
    font-weight: normal;
}

#MemberLoginForm_LostPasswordForm {
    height: 150px;
}

#Form_RegistrationForm {
    height: 600px;
}

#Captcha .message.validation {
    color: #000;
    text-align: center;
}

#Form_RequestQuoteForm .Actions {
    margin-bottom: 90px;
}

a.terms-conditions:hover {
    color: red;
}
a.terms-conditions {
    text-decoration: underline;
}

#SecureLogo .middleColumn img{
    float: left;
}
#CardPolicy .middleColumn p{
    font-size: 15px;
    color: red;
}

#BookingForm_BookingForm input[type="submit"]{
	border-radius: 0;
	color: #82898b;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 22px;
	float: left;
	background: url(../images/book-arrow.png) no-repeat 93px center #e0e0e0;
	padding: 6px 40px 6px 20px;
    margin-left: 140px;
    margin-top: 40px;
}

#BookingForm_BookingForm input::-webkit-input-placeholder{
	color: #6b6363;
}

/* Booking Form Style */
#BookingForm_BookingForm input.text,
#BookingForm_BookingForm select{
    border-radius: 0;
    color: #82898b;
    float: left;
    background-color: #e0e0e0;
    padding: 6px 10px 6px 10px;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#BookingForm_BookingForm select{
    appearance: none;
    -webkit-appearance: none;
    background: url(../images/arrow-dropdown.jpg) no-repeat right center #e0e0e0;
    background-size: auto 100%;
    cursor: pointer;
}

#BookingForm_BookingForm div.middleColumn{
    width: 100%;
    max-width: 348px;
}
/* Booking Form Style */



/* Delivery Form Style
----------------------------------------------- */
#DeliveryForm_DeliveryForm {
	max-width: 100%;
}

#DeliveryForm_DeliveryForm .small-text{
    font-size: 11px;
    color: black;
}

#DeliveryForm_DeliveryForm #Island>label,
#DeliveryForm_DeliveryForm #DomesticShippingExtra>label{
    width: 188px;
}

#DeliveryForm_DeliveryForm input.text,
#DeliveryForm_DeliveryForm select{
	/*width: 210px;*/
	width: 100%;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#DeliveryForm_DeliveryForm select{
    appearance: none;
    -webkit-appearance: none;
    background: url(../images/arrow-dropdown-2.png) no-repeat right center #fff;
    background-size: auto 100%;
    cursor: pointer;
}

#DeliveryForm_DeliveryForm label.left{
	color: #00547c;
	text-align: left;
}

#CouponCode.field{
    height: 23px;
}

#CouponCode.field .middleColumn{
	float: left;
	width: auto;
}

#CouponCode label.left{
	color: #fff;
}

#DeliveryForm_DeliveryForm .Actions {
	float: right;
}

.middleColumn #CouponCode.readonly.text{
    margin: 0;
    color: #fff;
}

#DeliveryForm_DeliveryForm input#CouponCode{
    position: absolute;
    right: 10px;
    top: -4px;
    margin: 0;
    width: 210px;
}


/* Visa Option
----------------------------------------------- */
#PaymentForm_PaymentForm {
    clear: both;
    background-color: #e9f2f5;
    color: #00547c;
    float: left;
    margin-top: 20px;
    width: 100%;
    max-width: 100%;
    padding: 10px 0;
}

#PaymentForm_PaymentForm img{
    float: left;
    margin: 10px 0 0 10px;
}

#PaymentMethod {
	float: left;
	clear: none;
	width: auto;
    margin-bottom: 0;
}

#PaymentMethod ul#PaymentForm_PaymentForm_PaymentMethod{
    margin-bottom: 0;
}


#PurchaseOrderNumber {
	margin-left: 260px;
    margin-top: 0;
	max-width: 320px;
}

#PaymentForm_PaymentForm .Actions{
	float: right;
	margin:0 10px 0 0;
}

.typography .valPaymentExpressPxPay{
    list-style: none;
}


/* Contact-us Form Style */
#contact form input.text,
#contact form textarea,
#contact form .textajaxuniquetext,   /* Not sure if this is used? */
#contact form select {
    border: 1px solid #d2d2d2;
    background-color: #fff;
    padding: 6px 5px;
}

.typography form ul {
    padding: 0;
}
/* Contact-us Form Style */


.ie10 #BookingForm_BookingForm select,
.ie10 #DeliveryForm_DeliveryForm select,
.ie9 #BookingForm_BookingForm select,
.ie9 #DeliveryForm_DeliveryForm select{
    background-image: none;
}

@-moz-document url-prefix() {
    #DeliveryForm_DeliveryForm select { background-image: none; }
    #BookingForm_BookingForm select { background-image: none; }
}



/* Responsive form styles
----------------------------------------------- */
@media only screen and (max-width: 1334px){

    form div.middleColumn{
        /*width: 280px;*/
    }

    form input.text,
    form textarea,
    form .textajaxuniquetext,   /* Not sure if this is used? */
    form select {
        width: 100%;
    }

    form input.text{
        /*width: 268px;*/
    }

    #DeliveryForm_DeliveryForm.validate.delivery-form{
		width: 499px;
		margin: 0 auto;
	}

	#PaymentForm_PaymentForm {
		width: 499px;
		margin-left: auto;
		margin-right: auto;
		float: none;
		display: block;
		overflow: hidden;
	}

    #PurchaseOrderNumber{
        margin-left: 160px;
    }

}


@media only screen and (max-width: 767px){

    form label.left{
        display: none;
    }

    .left-cnt2{
        width: 100%;
    }

    form{
        /*width: 281px;*/
        margin: 0 auto;
    }

    #contact form{
        margin: 0;
    }

    #DeliveryForm_DeliveryForm input.text, 
    #DeliveryForm_DeliveryForm select {
       /* width: 260px;*/
    }

    .promo-code{
    	width: 280px;
    	float: left;
    }

	#CouponCode label.left{
		display: inline-block;
	}

    #DeliveryForm_DeliveryForm input#CouponCode {
    	width: 160px;
    }

    #DeliveryForm_DeliveryForm.validate.delivery-form{
    	width: 280px;
		margin: 0 auto;
    }

    #PaymentForm_PaymentForm {
		width: 278px;
	}

    #BookingForm_BookingForm{
        width:100%;
    }

    #BookingForm_BookingForm input[type="submit"]{
        margin-left: 0;
    }

    #PaymentMethod{
        clear: both;
        margin-bottom: 5px;
    }

    #PurchaseOrderNumber{
        margin-left: 0;
        width: 238px;
        padding: 0 20px;
        font-size: 14px;
    }

    div.field.direct-credit-memo{
        clear: both;
    }

    label.direct-credit-label{
        float: left;
        width: 200px;
        margin-left: 60px;
    }

}

input[type=submit][disabled], button[disabled] {
	display:none;
}

#InternationalShippingCarrier li{
    float:left;
}

#DomesticShippingExtra label.left{
    width:150px;
}




/*@media only screen and (max-width: 700px) { 

    /* To test - potentially not needed? 
	.header form .middleColumn {
	    float: none;
	    width: 100% !important;
	}
	form label.left,
	#MemberLoginForm_LoginForm label {
	    margin-bottom: 8px
	}
}*/

/*@media only screen and (max-width: 900px) { 
    form {
        max-width: 100%;
    }
}/*
