/*
Theme Name: Modern Carbon
Theme Slug: sp_modern
Theme URI: http://gravitystylespro.com/themes/
Author: Warp Lord
Author URI: http://gravitystylespro.com/author/
Version: 2.1
Description: Modern Carbon, a clean theme to go along most modern designs
Font: 16px/Josefin Sans/#808080/Google
Font Label: 14px/Josefin Sans/#9A2DB1
*/

.sp_modern button,
.sp_modern input,
.sp_modern select,
.sp_modern textarea,
.sp_modern .ginput_total,
.sp_modern .ginput_product_price,
.sp_modern .ginput_shipping_price,
.sp_modern input[type=checkbox]:not(old) + label,
.sp_modern input[type=radio   ]:not(old) + label,
.sp_modern .ginput_container {
    color: #808080;
}

.sp_modern,
.sp_modern .gfield_label,
.sp_modern .ginput_complex label,
.sp_modern .gfield_description,
.sp_modern .ginput_counter {
    color: #858585;
    color: var(--gfsp--base-color);
}
.sp_modern .ginput_complex label,
.sp_modern .ginput_counter {
        -moz-opacity: 0.75;
        -khtml-opacity: 0.75;
        filter: alpha(opacity=75);
    opacity: 0.75;
}
.sp_modern input, .sp_modern select,
.sp_modern textarea,
.sp_modern input[type="text"],
.sp_modern input[type="email"],
.sp_modern input[type="url"],
.sp_modern input[type="tel"],
.sp_modern input[type="password"],
.sp_modern input[type="number"],
.sp_modern input[type="search"],
.sp_modern textarea,
.sp_modern .chosen-choices {
    border: 1px solid silver;
    border-color: #d9d9d9;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
    border-radius: 4px;
}
.sp_modern input:focus,
.sp_modern input:hover,
.sp_modern textarea:focus,
.sp_modern textarea:hover,
.sp_modern select:focus,
.sp_modern select:hover {
    color: #7b7b7b;
    border-color: #a2a2a2;
}
.sp_modern button,
.sp_modern .button {
    color: grey;
    border: 1px solid #f8f8f8;
        -moz-box-shadow: 0.15em 0.15em 0.5em -0.15em;
        -webkit-box-shadow: 0.15em 0.15em 0.5em -0.15em;
    box-shadow: 0.15em 0.15em 0.5em -0.15em;
    border-bottom-color: #c9c9c9;
    border-right-color: #c9c9c9;
        -ms-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -o-transition: all 0.3s;
    transition: all 0.3s;
}
.sp_modern button:active,
.sp_modern .button:active {
    background: #e2e2e2;
    color: #797979;
}
.sp_modern button:hover,
.sp_modern .button:hover {
    background: #eeeeee;
        -moz-box-shadow: 0 0.55em 0.8em -0.3em;
        -webkit-box-shadow: 0 0.55em 0.8em -0.3em;
    box-shadow: 0 0.55em 0.8em -0.3em;
}

/* RADIO AND CHECKBOXES */
.sp_modern input[type=checkbox]:not(old) + label,
.sp_modern input[type=radio   ]:not(old) + label {
    line-height: 1.8;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
    border-radius: 5px;
    padding: 0 .25em 0 0;
    border: 1px solid #d9d9d9;
        -moz-opacity: 0.7;
        -khtml-opacity: 0.7;
        filter: alpha(opacity=70);
    opacity: 0.7;
    margin-top: 0.25em;
    margin-bottom: 0.25em;
        -ms-transition: all 0.4s;
        -moz-transition: all 0.4s;
        -webkit-transition: all 0.4s;
        -o-transition: all 0.4s;
    transition: all 0.4s;
    margin-left: 0;
    text-indent: 0;
}
.sp_modern input[type=checkbox]:not(old) + label:before,
.sp_modern input[type=radio   ]:not(old) + label:before{
    overflow: visible;
    background: #eaeaea;
    padding: 0.5em;
    width: auto;
    height: auto;
    -moz-border-radius: 5px 0 0 5px;
    -webkit-border-radius: 5px 0 0 5px;
    border-radius: 5px 0 0 5px;
    vertical-align: inherit;
    -moz-opacity: 0.15;
    -khtml-opacity: 0.15;
    filter: alpha(opacity=15);
    opacity: 0.15;
    -ms-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    border-right: 1px solid #d7d7d7;
    display: inline-block;
    line-height: 1;
    margin-right: 0.5em;
}
/* .sp_modern input:checked + label, */
.sp_modern input:checked + label{
	background: #fbfbfb;
}
.sp_modern input[type=checkbox]:not(old):checked + label,
.sp_modern input[type=radio   ]:not(old):checked + label{
    opacity: 1;
}
.sp_modern input[type=checkbox]:not(old):checked + label:before,
.sp_modern input[type=radio   ]:not(old):checked + label:before{
    color: black;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
    box-shadow: none;
    background: #eaeaea;
        -moz-opacity: 0.1;
        -khtml-opacity: 0.1;
        filter: alpha(opacity=100);
    opacity: 1;
}
.sp_modern input[type=checkbox]:not(old) + label:before{
    content: '\2713\fe0e';
}
.sp_modern input[type=radio]:not(old) + label:before{
    content: '\2717\fe0e';
}
.sp_modern .gfield_consent_label {
    display: inline-block;
}

.sp_modern .gfsp_toggle input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_toggle input[type=radio   ]:not(old) + label {
    padding-left: .35em;
    padding-right: .5em;
}
.gf_stylespro .gfsp_toggle input[type=checkbox]:not(old) + label:after,
.gf_stylespro .gfsp_toggle input[type=radio]:not(old) + label:after{
    left: .25em
}

.sp_modern .gfield_description {
    background: rgba(0, 0, 0, 0.02) none repeat scroll 0% 0%;
}
.sp_modern .validation_message {
    font-weight: bold;
}
.sp_modern .gfield_error .gfield_label {
    color: #f15555;
}
.sp_modern .gfield_error input,
.sp_modern .gfield_error select,
.sp_modern .gfield_error textarea,
.sp_modern .gfield_error input[type="text"],
.sp_modern .gfield_error input[type="email"],
.sp_modern .gfield_error input[type="url"],
.sp_modern .gfield_error input[type="tel"],
.sp_modern .gfield_error input[type="password"],
.sp_modern .gfield_error input[type="number"],
.sp_modern .gfield_error input[type="search"],
.sp_modern .gfield_error textarea,
.sp_modern .gfield_error .chosen-choices {
    background-color: #fff7f7;
}
.sp_modern .chosen-container-multi .chosen-choices li.search-choice {
    background: #f9f9f9;
    box-shadow: none;
    border: 1px solid #ececec;
    border-radius: 2px;
}
.sp_modern .gf_icn_bs .gfsp_icon {
    border-radius: 4px 0 0 4px;
}
.sp_modern .gf_icon_after .gfsp_icon {
    border-radius: 0 4px 4px 0;
}
.sp_modern .gf_icn_bs .has_gfsp_icn input,
.sp_modern .gf_icn_border .has_gfsp_icn input {
    border-radius: 4px 0 0 4px;
}
.sp_modern .gf_icn_bs.gf_icon_after input
.sp_modern .gf_icn_border.gf_icon_after input {
    border-radius: 4px 0 0 4px;
}
.sp_modern .gf_icn_border .gfsp_icon{
    border-color: #d9d9d9;
}
.sp_modern .gfsp_choice_img label:before,
.sp_modern .gfsp_choice_icn label:before {
    margin-left: -1.9em;
    border: 1px solid #737373;
}
.sp_modern .gfsp_choice_img :checked + label:before,
.sp_modern .gfsp_choice_icn :checked + label:before {
    border: 1px solid #e8e8e8;
}
.sp_modern .gfsp_choice_img input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_choice_img input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_choice_icn input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_choice_icn input[type=radio   ]:not(old) + label{
    margin-left: 1.8em;
}
.sp_modern .gfsp_o_frame input:checked + label{
    background: #1ba943;
}
.sp_modern .gfsp_o_shade input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_o_shade input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_ios input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_ios input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_toggle input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_toggle input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_dot input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_dot input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_draw input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_draw input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_default input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_default input[type=radio   ]:not(old) + label{
    background: none;
    border: none;
}
.sp_modern .gfsp_o_shade input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_o_shade input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_o_frame input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_o_frame input[type=radio   ]:not(old) + label,
.sp_modern .gfsp_o_list input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_o_list input[type=radio   ]:not(old) + label{
    margin-left: 0;
}
.sp_modern .gfsp_o_list input[type=checkbox]:not(old) + label,
.sp_modern .gfsp_o_list input[type=radio   ]:not(old) + label{
    border: none;
}
.sp_modern .gfsp_o_list input:checked + label{
    background: #4a92ff;
}
.sp_modern input[type=radio]:not(old) + .gchoice_other_label {
    border: none;
}

.sp_modern input[type=radio]:not(old) + .gchoice_other_label:before {
    border: 1px solid #212121
}
.sp_modern input[type=radio]:not(old):checked + .gchoice_other_label:before {
    border: 1px solid #ececec
}
/* Other Choice */
.gchoice_other_label + input {
    width: calc(100% - 2.3em);
}
.sp_modern .ginput_container_fileupload .gfsp_icon::before,
.sp_modern .ginput_container_post_image .gfsp_icon::before {
    padding: .165em 0;
    display: inline-block;
}
.sp_modern .gform_drop_area .gfsp_icon::before {
    padding: .1em;
}
.sp_modern .gform_drop_area .gfsp_icon {
    vertical-align: middle;
}
.gf_noeffect input[type=radio   ]:not(old) + label,
.gf_noeffect input[type=checkbox]:not(old) + label {
    opacity: initial;
}

.sp_modern .gfsp_o_frame input[type=checkbox]:not(old):checked + label:before,
.sp_modern .gfsp_o_frame input[type=radio   ]:not(old):checked + label:before{
    color: var(--gfsp--o-bg-text-color, white);
}


.sp_modern_wrapper {
    --gfsp--placeholder-color: rgba(191, 191, 191, 0.40);
    --gfsp--base-color: #858585;
    --gfsp--warning-color: #f15555;
}