/* Transparent and frameless, and the basis of all the other form styles */
/* Version 14.01 (##005##) (##base##014##) */

.fcp_wrapper *, .fcp_wrapper *:after, .fcp_wrapper *:before
    {box-sizing:border-box !important; box-shadow:none; border:none; outline:none; background-color:transparent;}
.fcp_wrapper div, .fcp_wrapper span, .fcp_wrapper input, .fcp_wrapper select, .fcp_wrapper textarea,
.fcp_wrapper fieldset, .fcp_wrapper legend, .fcp_wrapper label, .fcp_wrapper img
    {margin:0; padding:0; line-height:normal; float:none; vertical-align:baseline; opacity:1; }
.fcp_wrapper input, .fcp_wrapper label, .fcp_wrapper select, .fcp_wrapper textarea, .fcp_wrapper span, .fcp_wrapper img
    {display:inline;}
.fcp_wrapper div, .fcp_wrapper form, .fcp_wrapper fieldset
    {display:block;}

/* Colours */

div.fcp_wrapper {color:#3e3e3e;}
div.fcp_border  {border:1px solid lightgray; border-radius:4px; padding:0; margin:0;}

div.fcp_line input[type="text"], div.fcp_line input[type="email"], div.fcp_line input[type="number"],
div.fcp_line input[type="password"], div.fcp_line input[type="file"], div.fcp_line textarea, div.fcp_line select
    {background-color:#fefefe; box-shadow: 0 0 1px rgba(0,0,0,0.2); transition:box-shadow .2s; }

div.fcp_line input[type="text"]:hover, div.fcp_line input[type="email"]:hover, div.fcp_line input[type="number"]:hover,
div.fcp_line input[type="password"]:hover, div.fcp_line input[type="file"]:hover, div.fcp_line textarea:hover, div.fcp_line select:hover
    {box-shadow:0 0 0 2px #b5b8b9;  border:none; outline:none;}

div.fcp_line input[type="text"]:focus, div.fcp_line input[type="email"]:focus, div.fcp_line input[type="number"]:focus,
div.fcp_line input[type="password"]:focus, div.fcp_line input[type="file"]:focus, div.fcp_line textarea:focus, div.fcp_line select:focus
    {box-shadow:0 0 0 2px #1b98e0;  border:none; outline:none;}

div.fcp_line input.fcp_error_field[type="text"], div.fcp_line input.fcp_error_field[type="email"], div.fcp_line input.fcp_error_field[type="number"],
div.fcp_line input.fcp_error_field[type="password"], div.fcp_line input.fcp_error_field[type="file"],
div.fcp_line textarea.fcp_error_field, div.fcp_line select.fcp_error_field
    {background-color:#fbdbdf;}

div.fcp_line input.fcp_error_field[type="text"]:focus, div.fcp_line input.fcp_error_field[type="email"]:focus, div.fcp_line input.fcp_error_field[type="number"]:focus,
div.fcp_line input.fcp_error_field[type="password"]:focus, div.fcp_line input.fcp_error_field[type="file"]:focus,
div.fcp_line textarea.fcp_error_field:hover, div.fcp_line select.fcp_error_field:focus
    {box-shadow:0 0 0 2px #e9322d;}

div.fcp_line input::placeholder, div.fcp_line textarea::placeholder {color:#b1b0b0;}

.fcp_error_text {color:red;}

.tooltip-inner {color:#333 !important; background-color:#f6fcff !important; border:1px solid gray;border-radius:3px;}
.tooltip.top .tooltip-arrow {border-top-color:black !important;}
    
/* Fonts */

div.fcp_wrapper           {font-family:Helmet, Freesans, Helvetica, Arial, sans-serif; font-size:14px; font-style:normal; font-weight:normal;}
div.fcp_line label        {font-family:Verdana, Geneva, sans-serif; font-size:100%; font-style:normal; font-weight:normal;}
.fcp_fieldset legend      {font-family:Verdana, Geneva, sans-serif; font-size:110%; font-style:normal; font-weight:normal;}
div.fcp_line input, div.fcp_line select, div.fcp_line textarea      {font-family:inherit; font-size:120%; font-style:normal; font-weight:normal;}
div.fcp_line input::placeholder, div.fcp_line textarea::placeholder {font-family:inherit; font-size:80%;}
.fcp_fixed_heading        {font-family:Verdana, Geneva, sans-serif; font-size:200%; font-style:normal; font-weight:normal; }
.tooltip                  {font-family:Arial, sans-serif; font-size:95% !important; font-style:normal; font-weight:normal;}
.fcp_error_text           {font-family:Arial, sans-serif; font-size:90%; font-style:normal; font-weight:normal; text-shadow:0 1px 0 #fff;}
.fcp_form input.button    {font-family:Verdana, Geneva, sans-serif; font-size:140%; font-style:normal; font-weight:normal;}
.fcp_helptext             {font-family:Arial, sans-serif; font-size:90%; font-style:normal; font-weight:normal;} 
#fcp_spinner.fcp_error_msg .fcp_error_text {font-family:inherit; font-size:100%; font-style:normal; font-weight:normal;}

/* Text error messages */

span.fcp_error_text       {display:block; }
#fcp_spinner.fcp_error_msg .fcp_error_text  {margin-left:0;}

/* Icon error messages */

.fcp_error_icon
    {display:inline-block; position:absolute; top:6px; right:5px; cursor:pointer;
        background:url('css_images/error-yellow-20.png') left center no-repeat; height:20px; width:20px; }
.fcp_list .fcp_error_icon, .fcp_captcha .fcp_error_icon  {right:-20px;}
.fcp_checkbox  .fcp_error_icon     {top:-15px;}
.fcp_checkbox_m .fcp_error_icon    {right:-15px;}
.fcp_error_icon2 {background:url('css_images/error-red-20.png') left center no-repeat;}

/* Popover error messages */

.fcp_error_over  {position:absolute; top:0; right:0}
.popover-content {display:none !important;}
.popover-title   {color:#f90600 !important; background-color:white !important; padding:0 !important; border-radius:3px !important;
    line-height:1 !important; border-bottom:none !important; background-image:none !important;}

/* Mandatory fields */

.fcp_req>label:after {display:inline-block; content:""; width:8px; height:8px; padding:0 0 12px 12px; 
    background:transparent url(css_images/star-16-black.png) center top / 8px no-repeat; } 

/* Structure and size */

div.fcp_wrapper     {max-width:calc(100% - 20px); min-height:100px; padding:10px; margin:0 auto;}
.fcp_form           {margin:0;}
div.fcp_line        {clear:left; padding:.5em 0;}
div.fcp_line label  {display:block; text-align:left; margin:0; padding:3px 0;}

div.fcp_inline      {display:inline-block; vertical-align:top; margin-right:0; padding:2px; white-space:nowrap; overflow:hidden;}
div.fcp_inline_rm   {margin-right:1%;}
div.fcp_inline_lm   {margin-left:1%;}
div.fcp_inline_right  {float:right; margin-right:0;}

div.fcp_error_outer {display:inline; vertical-align:top; position:relative;}
div.fcp_error_outer > span {vertical-align:top;}

div.fcp_line input[type="text"], div.fcp_line input[type="email"], div.fcp_line input[type="number"],
div.fcp_line input[type="password"], div.fcp_line input[type="file"], div.fcp_line textarea
                      {width:100%; height:32px; padding:1px 3px; border-radius:2px; margin:0;}
div.fcp_line select   {height:32px; width:auto; min-width:160px; border-radius:2px; }
div.fcp_line textarea {width:100%; height:auto; min-height:32px; padding:8px 3px;}
div.fcp_line input[type="file"] {line-height:normal !important; height:auto !important; padding:6px; font-size:initial;}

/* radio button and checkbox structures */

div.fcp_line input[type="checkbox"], div.fcp_line input[type="radio"]
    {width:auto; margin:0 5px 0 0; height:auto;}

span.fcp_radio_h            {display:inline-block; margin:0 10px 0 0; white-space:nowrap;}
div.fcp_radio_h_inner       {display:inline-block; padding:0 5px;}    
div.fcp_radio_h_inner .fcp_radio_h label  {display:inline-block; width:auto; vertical-align: middle; white-space:nowrap;}
div.fcp_radio_h > label     {vertical-align:top  !important; }

span.fcp_radio_v            {display:block; margin:3px; white-space:nowrap;}
div.fcp_radio_v_inner label {display:inline-block; vertical-align: middle;}

div.fcp_checkbox label      {display:inline-block; padding:4px; vertical-align:middle;}
span.fcp_checkbox_m         {display:inline-block; margin-left:10px; white-space:nowrap; }
div.fcp_checkbox_inner      {display:inline-block; width:auto; padding:0 5px;}
div.fcp_checkbox_m > label  {vertical-align:top !important; }
span.fcp_checkbox_m label   {vertical-align:middle !important; width:auto; }

div.fcp_checkbox_l input.fcp_lcb {margin-left:5px; }
div.fcp_checkbox_l label.fcp_lcb {width:auto; text-align:left; }

div.fcp_checkbox_r label     {display:inline-block; width:auto; }

/* fixed texts */

div.fcp_fixed_text       {border-bottom:1px solid lightgray; margin-bottom:8px; width:100%;}
div.fcp_fixed_heading    {text-align:left; background-color:transparent; color:#516b77;}

/* magic word */

div.fcp_captcha           {text-align:center;}
div.fcp_magic_inner       {display:inline-block; min-width:30%; padding:3px 10px 10px 10px; border:1px solid lightgray; border-radius:3px;}
div.fcp_magic_inner input {width:15em !important;}
div.fcp_magic_prompt      {text-align:left; padding:5px 0;}
div.fcp_magic_prompt span.fcp_info {float:right;}

/* secure-image captcha */

div.fcp_captcha input     {display:inline-block; vertical-align:middle; }
div.fcp_captcha_inner     {display:inline-block; padding:3px 10px 10px 10px; border:1px solid lightgray; border-radius:3px;}
img.fcp_captcha_img       {display:inline-block; vertical-align:middle; margin:0 5px; border:1px solid lightgray; border-radius:3px;}
span.fcp_captcha_reload   {display:inline-block; vertical-align:middle; height:34px; width:34px; 
                           background:#25b7d3 url('css_images/reload-32.png') center center no-repeat; cursor:pointer;
                           border-radius:50%;}
div.fcp_captcha_prompt    {text-align:left; padding:5px 0;}
.fcp_ani span.fcp_captcha_reload {transform:rotate(-90deg); transition:transform .2s ease;}
.fcp_ani span.fcp_captcha_reload:hover {transform:rotate(0deg);}
                         
/* image captcha */

div.fcp_image_inner       {display:inline-block; padding:3px 10px; border:1px solid lightgray; border-radius:5px; }
div.fcp_image_inner img   {display:inline; vertical-align:middle; cursor:pointer; transition:border 0.7s;}
img.fcp_inactive          {border:2px solid transparent;}
img.fcp_active            {border:2px solid #0079C1 !important; border-radius:3px;}
div.fcp_image_prompt      {text-align:left; padding:5px 0; text-shadow:0 1px 0 #fff;}
.fcp_ani .fcp_inactive:hover {transform:rotate(360deg); transition:transform .2s ease; }

/* recaptcha */

div.fcp_nocaptcha .fcp_error_msg  {margin-left:0;}
div.g-recaptcha                   {display:inline-block;}

/* fieldsets */

fieldset.fcp_fieldset            {display:inline-block; margin:5px; padding:5px; vertical-align:top;}
fieldset.fcp_fieldset.fcp_border {border:1px solid lightgray; border-radius:3px;}
fieldset.fcp_fieldset legend     {width:auto; padding:3px;}
fieldset.fcp_wide                {display:block;}

/* Send Button */

.fcp_form input.button
    {display:inline-block; float:right; width:auto !important; height:auto !important; cursor:pointer;
        text-align:center; text-decoration:none; text-shadow:0 0 1px black; color:white;
        padding:10px 30px; margin:2px; border-radius:3px; 
        background-color:#2d80b7; background-image:none; }
.fcp_form input.button:hover,
.fcp_form input.button:focus
    {background:#3fa1ec; color:white; text-decoration:none; border:none; box-shadow:none; outline:none;}
.fcp_form input.button:disabled 
	{background-color:#b7b6b6; cursor:not-allowed; }

#fcp_spinner {float:right; margin:8px 15px;}
.fcp_spinner {background:url('css_images/spinner.gif') no-repeat left center !important; height:16px; width:16px;}

/* help text */

.fcp_wrapper span.fcp_info {display:inline-block; margin:0 5px; vertical-align:bottom;
           background:#25b7d3 url('css_images/question-16.png') left center no-repeat; height:18px; width:18px;
           border:1px solid #25b7d3; border-radius:50%; }
.fcp_helptext {color:#2d8aef; text-shadow:none; overflow:hidden;}           

/* Tooltips */

.tooltip       {padding:4px; position:absolute; z-index:9999; max-width:400px; border-radius:3px !important;
                background:transparent !important; }
.tooltip-inner {padding:4px !important;}
.tooltip.in    {opacity:1 !important;}
.tooltip-arrow {position:absolute; width:0; height:0; border-color:transparent; border-style:solid;}		   
.tooltip.top .tooltip-arrow {bottom:-1px; left:50%; margin-left:-5px; border-width:6px 6px 0; border-top-color:gray !important;}

/* Responsive */

@media screen and (max-width:800px) 
{
    div.fcp_inline
        {display:block; width:auto !important; margin-right:0;}
    div.fcp_checkbox_l input[type="checkbox"]
        {margin-left:0;}
    div.fcp_line input:not([type="radio"]):not([type="checkbox"]),
    div.fcp_line textarea, div.fcp_line select
        {width:100% !important; }
    div.fcp_line label
        {display:block; width:100%; text-align:left; box-shadow:none !important; background-color:transparent !important; margin:0; }
    fieldset.fcp_fieldset legend
        {box-shadow:none !important; background-color:transparent !important;}
    div.fcp_radio_v_inner label,
    div.fcp_checkbox_inner label,
    div.fcp_checkbox_l label,
    div.fcp_checkbox_r label,
    div.fcp_checkbox_m label,
    div.fcp_radio_h_inner .fcp_radio_h label
        {display:inline; width:auto; white-space:normal;}
    div.fcp_checkbox_m > label {display:block;}
    div.fcp_radio_h_inner
        {width:100%;}
    span.fcp_radio_h
        {display:block; margin:3px;}
    fieldset.fcp_fieldset
        {display:block; width:auto !important;}
    div.fcp_width_wrapper {max-width:100% !important;}
    div.fcp_inline_right  {float:none;}
    div.fcp_inline_rm     {margin-right:0;}
    div.fcp_inline_lm     {margin-left:0;}
}

/* Bootstrap Popover support */

.popover {position:absolute; top:0;	left:0;	z-index:1010; display:none;	max-width:276px; padding:1px; text-align:left;
	background-color:#fff; background-clip:padding-box;	border:1px solid #ccc; border:1px solid rgba(0,0,0,0.2);
	border-radius:6px; box-shadow:0 5px 10px rgba(0,0,0,0.2); white-space:normal;}
.popover.top    {margin-top:-10px;}
.popover.right  {margin-left:10px;}
.popover.bottom {margin-top:10px;}
.popover.left   {margin-left:-10px;}
.popover-title  {margin:0; padding:8px 14px; font-size:100%; font-weight:normal; line-height:18px; background-color:#f7f7f7;
	border-bottom:1px solid #ebebeb; border-radius:5px 5px 0 0;}
.popover-title:empty {display:none;}
.popover-content {padding:9px 14px;}
.popover .arrow, .popover .arrow:after {position:absolute; display:block; width:0; height:0; border-color:transparent; border-style:solid;}
.popover .arrow {border-width:11px;}
.popover .arrow:after {border-width:10px; content:"";}
.popover.top .arrow {left:50%; margin-left:-11px; border-bottom-width:0; border-top-color:#999;	border-top-color:rgba(0,0,0,0.25); bottom:-11px;}
.popover.top .arrow:after {bottom:1px; margin-left:-10px; border-bottom-width:0; border-top-color:#fff;}
.popover.right .arrow {top:50%;	left:-11px;	margin-top:-11px; border-left-width:0; border-right-color:#999;	border-right-color:rgba(0,0,0,0.25);}
.popover.right .arrow:after {left:1px; bottom:-10px; border-left-width:0; border-right-color:#fff;}
.popover.bottom .arrow {left:50%; margin-left:-11px; border-top-width:0; border-bottom-color:#999; border-bottom-color:rgba(0,0,0,0.25); top:-11px;}
.popover.bottom .arrow:after {top:1px; margin-left:-10px; border-top-width:0; border-bottom-color:#fff;}
.popover.left .arrow {top:50%; right:-11px;	margin-top:-11px; border-right-width:0;	border-left-color:#999;	border-left-color:rgba(0,0,0,0.25);}
.popover.left .arrow:after {right:1px; border-right-width:0; border-left-color:#fff; bottom:-10px;}

/* Custom Checkboxes */

.fcp_ccr .fcp_checkbox input {position:absolute; opacity:0;}
.fcp_ccr .fcp_checkbox label {position:relative; display:inline-block; padding:7px 5px 7px 25px; vertical-align:middle;}
.fcp_ccr .fcp_checkbox label::before {position:absolute; top:6px; left:0; content:""; background-color:#fefefe; background-image:none;
    display:inline-block; height:20px; width:20px; border:2px solid gray; border-radius:3px; margin:0; cursor:pointer;}
.fcp_ccr .fcp_checkbox label::after {position:absolute; left:3px; top:8px; content:'\2714'; display:inline-block;
    margin:0; color:#0079c1; font-size:16px; line-height:16px; opacity:0; transition:all .25s ease; background-image:none; padding:0; width:auto;}
.fcp_ccr .fcp_checkbox label.fcp_checked::before {border-color:#0079c1;}
.fcp_ccr .fcp_checkbox label.fcp_checked::after {opacity:1;}
.fcp_ccr .fcp_checkbox input:focus ~ label::before {box-shadow:0 0 3px #aaa; }
.fcp_ccr .fcp_checkbox label:hover::before {box-shadow:0 0 2px #4c4b4b inset; }
.fcp_ccr div.fcp_checkbox_m > label {padding:7px 3px 7px 0;}
.fcp_ccr div.fcp_checkbox_m > label::before {content:none;}
.fcp_ccr .fcp_checkbox_r label {padding-left:0 !important; padding-right:30px !important;}
.fcp_ccr .fcp_checkbox_r label::before {left:auto; right:0;}
.fcp_ccr .fcp_checkbox_r label::after  {left:auto; right:3px;}

/* Custom Checkbox Animation */

.fcp_ccr.fcp_ani .fcp_checkbox label::after {transform:rotate(-270deg);}
.fcp_ccr.fcp_ani .fcp_checkbox label.fcp_checked::after {transform:rotate(0) !important; color:#fff !important;}
.fcp_ccr.fcp_ani .fcp_checkbox label.fcp_checked::before {background-color:#1976D2 !important; border-color:#1976D2 !important;}

/* Custom Radio Buttons */

.fcp_ccr .fcp_radio input {position:absolute; opacity:0;}
div.fcp_ccr .fcp_radio label {position:relative; display:inline-block; padding:7px 5px 7px 25px; vertical-align:middle;}
.fcp_ccr div.fcp_radio > label {padding:7px 1% 7px 0;}
.fcp_ccr .fcp_radio input + label:before {position:absolute; bottom:6px; left:0; content:""; background-color:#fefefe;
	border:2px solid gray; height:20px; width:20px; border-radius:50%;}
.fcp_ccr .fcp_radio input + label:after {position:absolute; left:4px; bottom:10px; content:""; background-color:#1976D2;
	border:none; height:12px; width:12px; border-radius:50%; opacity:0; transition:all .25s ease;}
.fcp_ccr .fcp_radio input:checked + label:before {border:2px solid #1976D2;}
.fcp_ccr .fcp_radio input:checked + label:after  {opacity:1;}
.fcp_ccr .fcp_radio input:hover + label:before   {box-shadow:0 0 2px #4c4b4b inset;}

/* Custom Radio Button Animation */

.fcp_ccr.fcp_ani .fcp_radio input + label:after {height:0; width:0;}
.fcp_ccr.fcp_ani .fcp_radio input:checked + label:after  {height:12px; width:12px;}
