@charset "utf-8";
/* ==================================================
   Typography
================================================== */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
@font-face {
 font-family: "Arial";
 src: url("../fonts/ArialMT.eot");
 src: url("../fonts/ArialMT.eot?#iefix") format("embedded-opentype"), url("../fonts/ArialMT.woff2") format("woff2"), url("../fonts/ArialMT.woff") format("woff"), url("../fonts/ArialMT.ttf") format("truetype"), url("../fonts/ArialMT.svg#ArialMT") format("svg");
 font-weight: normal;
 font-style: normal;
 font-display: swap;
}
@font-face {
 font-family: "Arial Bold";
 src: url("../fonts/Arial-BoldMT.eot");
 src: url("../fonts/Arial-BoldMT.eot?#iefix") format("embedded-opentype"), url("../fonts/Arial-BoldMT.woff2") format("woff2"), url("../fonts/Arial-BoldMT.woff") format("woff"), url("../fonts/Arial-BoldMT.ttf") format("truetype"), url("../fonts/Arial-BoldMT.svg#Arial-BoldMT") format("svg");
 font-weight: bold;
 font-style: normal;
 font-display: swap;
}
/* ==================================================
   Base
================================================== */
/** {
 will-change: transform;
}*/
body, html {
 /*min-height: 100% !important;*/
 height: 100%;
}
body {
 position: relative;
 font-family: "Arial", sans-serif;
 text-rendering: optimizeLegibility;
 overflow-x: hidden;
}
@media (min-width:0em) and (max-width:29em) {
 body {
  padding-left: 1rem;
  padding-right: 1rem;
 }
}
body > .container {
 position: relative;
 z-index: 9;
}
h1, h2, h3, h4, h5, h6 {
 font-family: "Bebas Neue", Helvetica, Arial, sans-serif;
}
ul {
 list-style-type: none;
}
ol {
 list-style-type: decimal;
}
a, a:active, a:focus, a.active {
 color: #0050AA;
 outline: none;
 cursor: pointer;
 text-decoration: underline;
}
a:hover {
 color: #0050AA;
}
textarea {
 resize: none;
 width: 100%;
 height: 120px !important;
}
hr {
 border-color: #DDD;
}
blockquote {
 border-left: 4px solid #0050AA;
}
img {
 width: 100%;
 height: auto;
 padding: 5px;
 border: 1px solid #DDD;
 background-color: #FFF;
 -webkit-border-radius: 4px;
 -moz-border-radius: 4px;
 -o-border-radius: 4px;
 border-radius: 4px;
}
.wrap {
 display: block;
}
.nowrap {
 white-space: nowrap;
}
input {
 -webkit-user-select: auto;
 -moz-user-select: auto;
 -ms-user-select: auto;
 user-select: auto;
}
/* =====================================================
   Margins, Paddings, Borders and Alignments
===================================================== */
/* Margins */
.no-margin {
 margin: 0 !important;
}
.no-left-margin {
 margin-left: 0;
}
.no-right-margin {
 margin-right: 0;
}
.no-top-margin {
 padding-top: 0;
}
.no-bottom-margin {
 margin-bottom: 0;
}
.margin-20 {
 margin-bottom: 20px;
}
.margin-30 {
 margin-bottom: 30px;
}
.margin-40 {
 margin-bottom: 40px;
}
.margin-50 {
 margin-bottom: 50px;
}
.margin-70 {
 margin-bottom: 70px;
}
.margin-80 {
 margin-bottom: 80px;
}
.margin-90 {
 margin-bottom: 90px;
}
.margin-100 {
 margin-bottom: 100px;
}
/* Paddings */
.no-padding {
 padding: 0 !important;
}
.no-left-padding {
 padding-left: 0;
}
.no-right-padding {
 padding-right: 0;
}
.no-top-padding {
 padding-top: 0;
}
.no-bottom-padding {
 padding-bottom: 0;
}
.padding-10 {
 padding-top: 10px;
 padding-bottom: 10px;
}
.padding-20 {
 padding-top: 20px;
 padding-bottom: 20px;
}
.padding-30 {
 padding-top: 30px;
 padding-bottom: 30px;
}
.padding-40 {
 padding-top: 40px;
 padding-bottom: 40px;
}
.padding-50 {
 padding-top: 50px;
 padding-bottom: 50px;
}
.padding-70 {
 padding-top: 70px;
 padding-bottom: 70px;
}
.padding-80 {
 padding-top: 80px;
 padding-bottom: 80px;
}
.padding-90 {
 padding-top: 90px;
 padding-bottom: 90px;
}
.padding-100 {
 padding-top: 100px;
 padding-bottom: 100px;
}
/* Borders */
.border {
 border: 1px solid rgba(0, 0, 0, 0.2);
}
.no-border {
 border: none !important;
}
.border-right {
 border-right: 1px solid rgba(0, 0, 0, 0.2);
}
/* Alignments */
.vcenter {
 position: relative;
 top: 50%;
 -webkit-transform: translateY(-50%);
 -moz-transform: translateY(-50%);
 -ms-transform: translateY(-50%);
 -o-transform: translateY(-50%);
 transform: translateY(-50%);
}
.hcenter {
 position: relative;
 left: 50%;
 -webkit-transform: translateX(-50%);
 -moz-transform: translateX(-50%);
 -ms-transform: translateX(-50%);
 -o-transform: translateX(-50%);
 transform: translateX(-50%);
}
.clearfix {
 display: block;
 width: 100%;
 clear: both;
}
/* ==================================================
   Animations
================================================== */
a, .btn, .form-horizontal .form-control, .form-horizontal .input-group, .form-horizontal .input-group-addon {
 -webkit-transition: all 0.25s ease;
 -moz-transition: all 0.25s ease;
 -o-transition: all 0.25s ease;
 -ms-transition: all 0.25s ease;
 transition: all 0.25s ease;
}
/*Page Loading Fade Effect */
.fade-in {
 opacity: 0;
 -webkit-animation: fadeIn ease-in 1;
 -moz-animation: fadeIn ease-in 1;
 animation: fadeIn ease-in 1;
 -webkit-animation-fill-mode: forwards;
 -moz-animation-fill-mode: forwards;
 animation-fill-mode: forwards;
 -webkit-animation-duration: 0.25s;
 -moz-animation-duration: 0.25s;
 animation-duration: 0.25s;
}
.fade-in {
 -webkit-animation-delay: 0.25s;
 -moz-animation-delay: 0.25s;
 animation-delay: 0.25s;
}
@-webkit-keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
@-moz-keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
/* ==================================================
   Common
================================================== */
.full-height {
 height: 100%;
}
/* ==================================================
   Forms
================================================== */
.form-header {
 text-align: center;
 padding-top: 1rem;
 padding-bottom: 1rem;
 color: #FFF;
 background-color: #0050AA;
}
.form-header h1 {
 margin: 0;
 line-height: 1;
}
/* Multistep settings */
#progressbar {
 position: relative;
 top: 0;
 left: 0;
 padding: 0;
 width: 100%;
 background-color: #FFF;
 border-bottom: 1px solid #CCC;
 z-index: 999;
}
#progressbar ul {
 counter-reset: step;
 text-align: center;
 margin-bottom: 0;
 padding: 35px 0;
}
#progressbar li {
 position: relative;
 display: inline-block;
 padding: 0 2%;
}
#progressbar li.active {
 z-index: 1;
}
#progressbar li:before {
 display: block;
 content: counter(step);
 counter-increment: step;
 font-weight: 700;
 line-height: 35px;
 background-color: #CCC;
 -webkit-border-radius: 100%;
 -moz-border-radius: 100%;
 -o-border-radius: 100%;
 border-radius: 100%;
 margin: 0 auto 10px;
 width: 35px;
}
#progressbar li:after {
 position: absolute;
 left: -50%;
 top: 16px;
 content: "";
 width: 100%;
 height: 4px;
 background-color: #CCC;
 z-index: -1;
}
#progressbar li:first-child:after {
 content: none;
}
#progressbar li.active:before, #progressbar li.active:after {
 background-color: #0050AA;
 color: #FFF;
}
#progressbar li.active span {
 color: #0050AA;
}
#progressbar li span {
 font-family: 'Arial', sans-serif;
}
#progressbar li a {
 text-decoration: none;
 color: inherit;
}
#progressbar .heading.title {
 color: #0050AA;
 margin-top: 0;
 margin-bottom: 0;
 line-height: 135px;
}
/* Form */
.form-horizontal {
 position: relative;
 width: 100%;
}
.form-horizontal .form-group {
 position: relative;
 margin-right: 0;
 margin-left: 0;
}
.form-horizontal fieldset {
 position: relative;
 left: 0;
 top: 0;
 border: 0 none;
 text-align: center;
 box-sizing: border-box;
 width: 100%;
}
.form-horizontal label {
 margin: 0 auto;
}
.form-horizontal fieldset:not(:first-of-type) {
 display: none;
}
.form-horizontal .title, .form-horizontal .sub-title {
 position: relative;
 margin-bottom: 40px;
}
.form-horizontal .heading.title {
 margin-top: 50px;
 color: #0050AA;
 letter-spacing: 0.5px;
}
.form-horizontal .title, .title {
 font-size: 30px;
 color: #0050AA;
}
.form-horizontal .sub-title, .sub-title {
 font-size: 24px;
 color: #0050AA;
}
.form-horizontal legend {
 border-bottom: none;
}
.form-horizontal .input-group-addon .fa {
 position: absolute;
 top: 14px;
 left: 0;
 width: 45px;
 text-align: center;
}
.form-horizontal .control-label {
 font-family: 'Arial', sans-serif;
 font-weight: normal;
}
.form-horizontal .form-control, .payment-options .form-group input {
 border-radius: 0;
}
.form-horizontal .form-control {
 height: 45px;
 padding: 10px;
 box-shadow: none;
}
.form-horizontal .form-control:focus {
 outline: 0;
 box-shadow: none;
}
.form-horizontal .form-control textarea {
 height: 150px;
}
.form-horizontal .input-group-addon:hover, .form-horizontal .input-group-addon:hover, .form-horizontal .form-control:hover, .form-horizontal .form-control:focus {
 border-color: #0050AA;
}
.form-horizontal .input-group-addon, .form-horizontal .form-control, .btn-secondary {
 -webkit-border-radius: 4px 0 0 4px;
 -moz-border-radius: 4px 0 0 4px;
 -o-border-radius: 4px 0 0 4px;
 border-radius: 4px 0 0 4px;
}
.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:first-child > .btn-group:not(:first-child) > .btn, .input-group-btn:first-child > .btn:not(:first-child), .input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle {
 -webkit-border-top-right-radius: 4px;
 -moz-border-top-right-radius: 4px;
 -o-border-top-right-radius: 4px;
 border-top-right-radius: 4px;
 -webkit-border-bottom-right-radius: 4px;
 -moz-border-bottom-right-radius: 4px;
 -o-border-bottom-right-radius: 4px;
 border-bottom-right-radius: 4px;
 -webkit-appearance: none;
}
.input-group-addon {
 position: relative;
 width: 45px;
}
.form-horizontal .input-group:hover .input-group-addon {
 background-color: #0050AA;
 border-color: #0050AA;
 color: #FFF;
}
.form-horizontal .input-group:hover .input-group-addon .fa {
 color: #FFF;
}
.form-horizontal .input-group[class*="col-"] {
 position: relative;
 float: left;
 padding-left: 5px;
 padding-right: 5px;
 margin-top: 5px;
}
@media (min-width:0em) and (max-width:29em) {
 .form-horizontal .input-group[class*="col-"] {
  padding-left: 0;
  padding-right: 0;
 }
}
.form-horizontal .input-group-info p {
 font-size: 0.95em;
 margin-top: 10px;
}
.form-horizontal .input-group[class="col-*"]:last-child {
 margin-right: 0;
}
.form-horizontal .input-group .fa-info {
 font-size: 1.5em;
}
.form-horizontal .form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
 background-color: transparent;
}
.form-horizontal .obrigatorio {
 position: relative;
 font-size: 0.7em;
 line-height: 0em;
}
.form-horizontal .obrigatorio .fa {
 position: relative;
 top: -4px;
 color: #ed1c24;
}
/* Custom radios and checkboxes: https://codepen.io/dapacreative/pen/bdzYEe */
form input[type="checkbox"], form input[type="radio"] {
 position: absolute;
 overflow: hidden;
 clip: rect(0 0 0 0);
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}
form input[type="radio"] + label {
 display: block;
 position: relative;
 text-indent: -9999px;
 background-color: #767676;
 width: 20px;
 height: 20px;
 -webkit-border-radius: 100%;
 -moz-border-radius: 100%;
 -o-border-radius: 100%;
 border-radius: 100%;
 margin-top: 10px;
 cursor: pointer;
 -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
 transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
 overflow: hidden;
}
form input[type="radio"] + label:before {
 position: absolute;
 top: 50%;
 left: 50%;
 display: block;
 content: "";
 height: 10px;
 width: 10px;
 background-color: #FFF;
 -webkit-border-radius: 100%;
 -moz-border-radius: 100%;
 -o-border-radius: 100%;
 border-radius: 100%;
 -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
 transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
 -webkit-transform: translateZ(0) translate(-50%, -50%) scale(0.8);
 transform: translateZ(0) translate(-50%, -50%) scale(0.8);
}
form input[type="radio"]:checked + label {
 background-color: #0050AA;
}
form input[type="radio"]:checked + label:before {
 -webkit-transform: translateZ(0) translate(-50%, -50%) scale(1);
 transform: translateZ(0) translate(-50%, -50%) scale(1);
}
form input[type="checkbox"] + label {
 position: relative;
 display: inline-block;
 float: right;
 text-indent: -9999px;
 background-color: #767676;
 width: 100%;
 max-width: 35px;
 height: 20px;
 margin-top: 3px;
 -webkit-border-radius: 100pc;
 -moz-border-radius: 100px;
 -o-border-radius: 100px;
 border-radius: 100px;
 cursor: pointer;
 -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
 transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
 overflow: hidden;
}
form input[type="checkbox"] + label:before {
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 display: block;
 content: "";
 background-color: #0D033F;
 -webkit-border-radius: 100%;
 -moz-border-radius: 100%;
 -o-border-radius: 100%;
 border-radius: 100%;
 -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
 transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9) 0.1s;
 -webkit-transform: translateZ(0) scale(0);
 transform: translateZ(0) scale(0);
}
form input[type="checkbox"] + label:after {
 position: absolute;
 top: 2px;
 left: 2px;
 display: block;
 content: "";
 height: 16px;
 width: 16px;
 background-color: #FFF;
 -webkit-border-radius: 100%;
 -moz-border-radius: 100%;
 -o-border-radius: 100%;
 border-radius: 100%;
 -webkit-transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
 transition: all 0.3s cubic-bezier(1, 0.1, 0, 0.9);
 -webkit-transform: translateZ(0) translateX(0);
 transform: translateZ(0) translateX(0);
}
form input[type="checkbox"]:checked + label {
 background-color: #0050AA;
}
form input[type="checkbox"]:checked + label:after {
 left: calc(100% - 19px);
 -webkit-transform: translateZ(0);
 transform: translateZ(0);
}
form input:disabled[type="checkbox"] + label {
 background-color: #CCC;
 cursor: not-allowed;
}
/* Conditional elements */
.control:checked ~ .conditional, #immigrant:checked ~ .conditional, #required-2:checked ~ .conditional #option-2:checked ~ .conditional {
 clip: auto;
 height: auto;
 margin: 0;
 overflow: visible;
 position: static;
 width: auto;
}
.control:not(:checked) ~ .conditional, #immigrant:not(:checked) ~ .conditional, #required-2:not(:checked) ~ .conditional, #option-2:not(:checked) ~ .conditional {
 border: 0;
 clip: rect(0 0 0 0);
 height: 1px;
 margin: -1px;
 overflow: hidden;
 padding: 0;
 position: absolute;
 width: 1px;
}
/* Common content */
.content-text {
 padding-left: 5%;
 padding-right: 5%;
}
.email-deliver {
 font-size: 1.2em;
 font-weight: 700;
 text-align: center;
 background-color: transparent;
 border: none;
 color: #0050AA;
 width: 100%;
}
.add-group {
 display: table;
 border-bottom: 1px dashed #DDD;
 padding-top: 35px;
 width: 100%;
}
.add-group .sub-title {
 margin-top: 0;
}
.add-group:first-child {
 padding-top: 15px;
}
.add-group:last-child {
 border-bottom: none;
}
.form-horizontal input.AdRowNum {
 position: absolute;
 top: 30px;
 right: 0;
 font-size: 2em;
 text-align: right;
 border: none;
 margin: 0;
 background-color: transparent;
}
/* Payments */
.payment > div {
 text-align: center;
}
.payment input:focus, .payment label:focus {
 outline: none;
}
.payment input {
 margin-top: 10px;
}
.payment span {
 display: inline-block;
}
.payment img {
 display: inline-block;
 max-width: 100px;
 height: auto;
 margin: 0 5px 10px;
}
/* Buttons */
.btn, .btn:focus {
 position: relative;
 display: inline-block;
 text-transform: uppercase;
 text-decoration: none;
 font-weight: 700;
 line-height: 1.25;
 color: #0050AA;
 letter-spacing: 0.5px;
 border-radius: 4px;
 border: 2px solid #0050AA;
 background-color: #FFF;
 margin-left: 0.5rem;
 margin-right: 0.5rem;
 margin-bottom: 10px;
 padding: 1.2rem 1rem;
 min-width: 160px;
 overflow: hidden;
 transition: none;
}
.btn:hover, .btn.active, .btn:active, .btn:hover, .open > .dropdown-toggle.btn {
 background-color: #0050AA;
 border-color: #0050AA;
 color: #FFF;
}
.btn-primary, .btn-primary:focus, .btn-primary:active {
 border: 2px solid #0050AA;
 background: #FFF;
 color: #0050AA;
}
.btn-primary:hover, .btn-secondary:hover, .btn-primary:active, .btn-secondary:active, .btn-secondary:active:focus {
 background-color: #0050AA;
 border: 2px solid #0050AA;
 color: #FFF;
 outline: none;
}
.btn-success, .btn-success:focus {
 color: #0050AA;
 border: 2px solid #CCC;
 pointer-events: none;
}
@media (min-width:0em) and (max-width:29em) {
 #btnGerarOperationID {
  margin-left: auto;
  margin-right: auto;
 }
}
/**/
.form-horizontal .input-group.validation:after {
 position: absolute;
 top: 0;
 left: 1rem;
 content: "Nº Correto \f00c";
 font-family: 'FontAwesome';
 font-weight: bold;
 text-transform: uppercase;
 text-align: center;
 line-height: 45px;
 color: #0050AA;
 width: 100%;
 max-width: 160px;
 height: 45px;
 background-color: #EEE;
 border: 2px solid #CCC;
 border-radius: 4px;
}
.btn-error, .btn-error:focus {
 color: #DD1408;
 border: 2px solid #DD1408;
}
/**/
.btn .fa {
 margin: 0 0 0 15px;
 color: #FFF;
}
.btn:hover .fa, .btn:focus:hover .fa {
 color: #FFF;
}
.btn:focus .fa {
 color: #0050AA;
}
.btn-custom {
 display: inline-block !important;
 float: left;
 margin-bottom: 5px;
 border-color: #0050AA;
 color: #0050AA;
}
/* Sidebar */
.form-sidebar {
 border: 1px solid #DDD;
 border-left: 4px solid #0050AA;
 background-color: transparent;
 padding-left: 25px;
 padding-right: 25px;
 padding-bottom: 10px;
}
.form-sidebar .sub-title {
 color: #0050AA;
 padding-bottom: 10px;
 margin-bottom: 30px;
}
.form-sidebar .sub-title + p {
 margin-top: 20px;
}
.form-sidebar .sub-title .fa {
 text-align: center;
 width: 20px;
}
.form-sidebar .sub-title:before {
 position: absolute;
 content: "";
 left: 0;
 right: 0;
 bottom: 0;
 width: 105%;
 height: 1px;
 background-color: #0050AA;
}
.form-sidebar .sub-title:after {
 position: absolute;
 top: 18px;
 right: -43px;
 content: "\f129";
 font-family: "FontAwesome";
 font-size: 0.9em;
 text-align: center;
 width: 35px;
 height: 35px;
 line-height: 27px;
 background-color: #FFF;
 -webkit-border-radius: 100%;
 -moz-border-radius: 100%;
 -o-border-radius: 100%;
 border-radius: 100%;
 border: 4px solid #0050AA;
}
.form-sidebar p {
 font-family: 'Arial', sans-serif;
 line-height: 1.2em;
}
.form-sidebar .form-control {
 font-size: 13px;
 padding: 7px 0;
 border: none;
 background-color: #FFF;
 height: auto;
}
.form-sidebar p .form-control.aspNetDisabled {
 border-bottom: 1px dashed #DDD;
}
.form-sidebar p:last-child .form-control.aspNetDisabled {
 border-bottom: none;
}
/* ==================================================
   Tabs
================================================== */
.tab-content {
 padding: 15px 30px;
}
.table-payment {
 max-width: 480px;
 margin-left: auto;
 margin-right: auto;
 background-color: rgba(0, 0, 0, 0.05);
 border: 1px solid rgba(0, 0, 0, 0.05);
}
.table-payment tr {
 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.table-payment td {
 padding: 10px;
}
/**/
/*.pricing-table {
 display: flex;
 text-align: center;
 width: 100%;
 padding: 5rem 2rem 2rem;
}
.pricing-table .plan {
 position: relative;
 float: left;
 background: #fff;
 border: 1px solid #ddd;
 color: #333;
 padding: 20px;
 width: 33.333333%;
 margin: 15px;
}
.pricing-table .plan:hover {
 z-index: 2;
}
.pricing-table h3 {
 padding: 5px 20px 20px;
 margin: -20px -20px 50px -20px;
 background-color: #eee;
 background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));
 background-image: -webkit-linear-gradient(#fff, #eee);
 background-image: -moz-linear-gradient(#fff, #eee);
 background-image: linear-gradient(#fff, #eee);
}
.pricing-table #most-popular h3 {
 background-color: #ddd;
 background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#ddd));
 background-image: -webkit-linear-gradient(#eee, #ddd);
 background-image: -moz-linear-gradient(#eee, #ddd);
 background-image: linear-gradient(#eee, #ddd);
 margin-top: -30px;
 padding-top: 30px;
}
.pricing-table h3 span {
 position: relative;
 display: block;
 color: #777;
 background: #fff;
 border: 5px solid #fff;
 height: 100px;
 width: 100px;
 margin: 10px auto -65px;
 -webkit-border-radius: 50%;
 -moz-border-radius: 50%;
 border-radius: 50%;
}
.pricing-table h3 span img {
 position: absolute;
 top: 50%;
 left: 50%;
 display: block;
 width: 95%;
 height: auto;
 border: 0;
 transform: translateX(-50%) translateY(-50%);
}
.pricing-table ul {
 margin: 20px 0 0 0;
 padding: 0;
 list-style: none;
}
.pricing-table li {
 border-top: 1px solid #ddd;
 padding: 10px 0;
}
.pricing-table input {
 margin-top: 5px;
}*/
/**/
/* ==================================================
   Modals
================================================== */
.modal-title {
 line-height: 1em;
}
.modal.fade .modal-dialog {
 position: absolute;
 left: 50%;
 top: 0;
 margin: 0;
 -webkit-transform: translateX(-50%);
 -moz-transform: translateX(-50%);
 -ms-transform: translateX(-50%);
 -o-transform: translateX(-50%);
 transform: translateX(-50%);
 z-index: 9999;
}
.modal-header .close {
 position: absolute;
 top: 21px;
 right: 15px;
 opacity: 0.5;
}
.modal-header .close:hover {
 opacity: 1;
}
.modal-backdrop.in {
 opacity: .9;
}
/* ==================================================
   Responsive Tables: https://codepen.io/jordyvanraaij/pen/jlAqp
================================================== */
.responstable {
 margin: 0 0 1em;
 width: 100%;
 overflow: hidden;
}
.responstable tr {
 border: 1px solid #CCC;
}
.responstable tr:nth-child(odd) {
 background-color: rgba(0, 0, 0, 0.025);
}
.responstable tr:hover, .responstable tr:nth-child(odd):hover {
 background-color: rgba(0, 0, 0, 0.05);
}
.responstable th, .responstable tr:first-child {
 border: 1px solid #0050AA;
 background-color: #0050AA;
 font-family: 'Arial', sans-serif;
 font-weight: normal;
 text-transform: uppercase;
 color: #FFF;
 padding: 1em;
}
.responstable th {
 display: none;
}
.responstable th:first-child:before, .responstable th:before {
 position: absolute;
 top: 0;
 right: -1px;
 content: "";
 width: 100%;
 height: 101%;
}
.responstable th:before {
 border-right: 1px solid rgba(255, 255, 255, 0.5);
 border-bottom: 4px solid #0050AA;
}
.responstable th:first-child {
 display: table-cell;
 text-align: center;
}
.responstable th:last-child:before {
 border-right: none;
}
.responstable th:nth-child(2) {
 display: table-cell;
}
.responstable th:nth-child(2) span {
 display: none;
}
.responstable td {
 text-align: center;
}
@media (min-width: 769px) {
 .responstable td:after {
  content: "";
 }
}
@media (min-width: 480px) {
 .responstable th:nth-child(2) span {
  display: block;
 }
}
.responstable td {
 display: block;
 word-wrap: break-word;
 border: 1px solid #CCC;
}
.responstable td:first-child {
 display: table-cell;
 font-weight: 700;
 border-right: 1px solid #CCC;
}
@media (min-width: 480px) {}
.responstable th, .responstable td {
 position: relative;
 margin: .5em 1em;
}
.responstable th {
 text-align: center;
}
@media (min-width: 480px) {
 .responstable th, .responstable td {
  display: table-cell;
  padding: 1em;
 }
}
@media (min-width:0em) and (max-width:29em) {
 .responstable tr {
  border-bottom: 4px solid #CCC;
  padding-top: 10px;
  padding-bottom: 10px;
 }
 .responstable tr:first-child {
  border-bottom: none;
 }
 .responstable th:nth-child(2):after {
  content: attr(data-th);
 }
 .responstable td:after {
  position: absolute;
  left: 0;
  top: -1px;
  content: attr(data-td);
  font-family: 'Arial', sans-serif;
  text-align: right;
  color: #666;
  padding-right: 5px;
  width: 45%;
 }
 .responstable td {
  text-align: left;
  border: none;
 }
 .responstable td span {
  position: relative;
  left: 45%;
  display: block;
  width: 65%;
 }
 .responstable td:first-child span {
  left: 0;
  width: 100%;
  text-align: center;
 }
 .responstable th:nth-child(2):before {
  content: "";
  border-right: none;
 }
}
.responstable .fa-plus-circle {
 font-size: 2em;
}
/* ==================================================
   Responsive Media Queries
================================================== */
@media only screen and (min-width:320px) and (max-width:479px) {
 .form-horizontal .input-group-addon, #progressbar li span {
  display: none;
 }
 .form-horizontal .heading.title {
  margin-top: 100px;
 }
 #progressbar ul {
  padding: 15px 0;
 }
 #progressbar li:before {
  margin-bottom: 0;
 }
 .payment > div {
  padding-top: 30px;
  padding-bottom: 30px;
 }
 .payment > div:first-child {
  border-bottom: 1px dashed #DDD;
 }
 .payment img {
  max-width: 90px;
 }
}
@media only screen and (min-width:768px) and (max-width:991px) {}
@media only screen and (min-width:992px)and (max-width:1024px) {}
/* ==================================================
   Payment forms with options
================================================== */
/*.payment {
 width: 100%;
 max-width: 580px;
 margin: 2rem auto;
 background-color: #FFF;
 box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
}
.payment .d-flex {
 display: flex;
}
.payment .d-block {
 display: block;
}
.payment.panel-group .panel {
 background-color: #FFF;
 border-radius: 0;
 margin-top: 0;
 border: none;
 border-left: 2px solid transparent;
 border-bottom: 1px solid rgba(0, 0, 0, 0.08);
 -webkit-box-shadow: none;
 box-shadow: none;
}
.payment.panel-group .panel:last-of-type {
 border-bottom: none;
}
.payment.panel-group .panel:hover, .payment.panel-group .panel.selected {
 background-color: #F6F7F9;
 border-left: 2px solid #0050AA;
}
.payment.panel-group .panel:hover {
 border-left: 2px solid #C0C0C0;
}
.payment.panel-group .panel.selected {
 border-left: 2px solid #0050AA;
}
.payment .panel-heading {
 position: relative;
 padding: 0;
 border-radius: 0;
}
.payment .panel-heading .selector_off, .payment .panel-heading .selector_on {
 position: absolute;
 top: 30px;
 left: 30px;
 font-size: 36px;
 line-height: 1;
 width: 25px;
 height: 25px;
}
.payment .panel-heading .selector_off {
 color: rgba(0, 0, 0, 0.15);
}
.payment .panel-heading .selector_on {
 color: #0050AA;
}
.payment .panel-heading a[aria-expanded="false"] .selector_off {
 display: flex;
 justify-content: center;
 align-items: center;
}
.payment .panel-heading a[aria-expanded="false"] .selector_on {
 display: none;
}
.payment .panel-heading a[aria-expanded="true"] .selector_off {
 display: none;
}
.payment .panel-heading a[aria-expanded="true"] .selector_on {
 display: flex;
 justify-content: center;
 align-items: center;
}
.payment .panel-title > a {
 position: relative;
 display: block;
 font-size: 24px;
 text-align: left;
 text-decoration: none;
 line-height: 1.2;
 color: #0050AA;
 width: 100%;
 height: 100%;
 padding: 30px 30px 30px 75px;
}
.payment .panel-title > a span:nth-of-type(3) {
 display: block;
 font-family: "Arial", sans-serif;
 font-size: 16px;
 text-align: left;
 text-decoration: none;
 color: #333;
 margin-top: 10px;
 width: 70%;
}
.payment .panel-title > a span:nth-of-type(4) {
 position: absolute;
 top: 50%;
 right: 30px;
 transform: translateY(-50%);
}
.payment .panel-title > a span:nth-of-type(4) img {
 width: 100%;
 max-width: 80px;
 height: auto;
 margin: 0;
}
.payment.panel-group .panel-heading + .panel-collapse > .list-group, .payment.panel-group .panel-heading + .panel-collapse > .panel-body {
 border-top: 1px dashed rgba(0, 0, 0, 0.2);
}
.payment .panel-body {
 text-align: left;
 padding: 30px 75px 30px 75px;
}
@media (min-width:0em) and (max-width:46em) {
 .payment .panel-body {
  padding: 30px 15px;
 }
}
.payment .panel-body .btn {
 margin-top: 10px;
 margin-left: auto;
 margin-right: auto;
 max-width: 250px;
}
.payment .panel-body .form-group {
 align-items: center;
 margin-bottom: 15px;
 width: 100%;
}
.payment .panel-body .input-group {
 float: left;
 width: 100%;
}
.payment .panel-body .input-group-addon {
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: bold;
 width: 50px;
 height: 45px;
 margin-top: 10px;
 padding: 10px;
 border-radius: 0;
}
.payment .form-control {
 height: 45px;
 margin-bottom: 10px;
 padding: 10px;
 border-radius: 0;
 box-shadow: none;
}
.payment .form-control input {
 margin-left: 2px;
 margin-right: 2px;
}
.form-control:focus {
 border-color: #0050AA;
 box-shadow: none;
}
.form-group input[type=submit]:first-of-type {
 margin-left: 0;
}
.form-group input[type=submit]:last-of-type {
 margin-right: 0;
}
.form-group input[type=submit] {
 -webkit-appearance: none;
 appearance: none;
 background-color: transparent;
 color: #777;
}
.form-group input[type=submit]:hover {
 -webkit-appearance: none;
 appearance: none;
 background-color: #0050AA;
 color: #FFF;
}
.payment .select {
 margin-top: 10px;
}
.payment .select::after {
 position: absolute;
 top: 11px;
 right: 28px;
 content: "\f107";
 font-family: "FontAwesome";
 font-size: 1.25em;
 width: 0;
 height: 0;
 pointer-events: none;
 z-index: 2;
}
.payment .send-form {
 margin-top: 30px;
}
.payment .cvc-input {
 text-align: center;
 max-width: 160px;
 margin-left: auto;
 margin-right: auto;
}*/
/* ==================================================
   Payment forms with selectors
================================================== */
/*.payment {
 padding-left: 0;
}
.payment ul {
 padding-left: 0;
}
.payment ul li {
 border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.payment ul li:last-of-type {
 border-bottom: 1px solid rgba(0, 0, 0, 0.00);
}
.payment .promo-code {
 display: block;
 position: relative;
 margin-bottom: 0;
 padding-left: 12%;
 padding-bottom: 1rem;
 user-select: none;
 width: 100%;
 height: 100%;
}
.payment .promo-code p, .payment .promo-code .form-group {
 width: 80%;
}
.payment .container {
 display: block;
 position: relative;
 margin-bottom: 0;
 padding-left: 12%;
 padding-bottom: 1rem;
 cursor: pointer;
 user-select: none;
 width: 100%;
 height: 100%;
 transition: all 0.25s ease;
}
.payment .container:hover {
 background-color: rgba(0, 0, 0, 0.05);
}
.payment .container input {
 position: absolute;
 opacity: 0;
 cursor: pointer;
 height: 0;
 width: 0;
}
.payment .container .checkmark {
 position: absolute;
 top: 22px;
 left: 4%;
 height: 20px;
 width: 20px;
 border: 2px solid #CCC;
 border-radius: 50%;
 background-color: #FFF;
}
.payment .container .checkmark:before {
 top: 50%;
 left: 50%;
 content: "";
 height: 9px;
 width: 9px;
 border: 1px solid #CCC;
 border-radius: 50%;
 background-color: #FFF;
 transform: translateX(-50%) translateY(-50%);
}
.payment .container:hover input ~ .checkmark {
 background-color: #FFF;
}
.payment .container input:checked ~ .checkmark {
 background-color: #FFF;
 border-color: #0050AA;
}
.payment .container input:checked ~ .checkmark:before {
 background-color: #0050AA;
 border-color: #0050AA;
}
.payment .checkmark:after {
 content: "";
 position: absolute;
 display: none;
}
.container input:checked ~ .checkmark:after {
 display: none;
}
.payment .container .checkmark:after {
 display: none;
 left: 9px;
 top: 5px;
 width: 5px;
 height: 10px;
 border: solid #FFF;
 border-width: 0 3px 3px 0;
 transform: rotate(45deg);
}
.payment h3 {
 color: #0050AA;
}
.payment p {
 display: block;
 font-family: "Arial", sans-serif;
 font-size: 16px;
 font-weight: normal;
 text-align: left;
 text-decoration: none;
 color: #333;
 margin-top: 10px;
 width: 70%;
}
.payment figure {
 position: absolute;
 top: 50%;
 right: 2rem;
 margin: 0;
 transform: translateY(-50%);
}
.payment img {
 margin: 0;
}
.payment button {
 border: 2px solid #0050AA;
 background-color: #FFF;
 color: #0050AA;
 margin-bottom: 4rem;
}*/
.payment-options {
 width: 100%;
}
.payment-options ul {
 position: relative;
 list-style-type: none;
 padding: 0.5rem;
 margin: 0;
}
.payment-options ul li {
 position: relative;
 margin-bottom: 10px;
 cursor: pointer;
}
.payment-options ul li input[type="radio"] {
 display: none;
}
.payment-options ul li label {
 position: absolute;
 display: inline-block;
 margin: 0;
 padding: 2rem;
 border: 2px solid rgba(0, 0, 0, 0.15);
 border-radius: 4px;
 width: 100%;
 height: 100%;
 cursor: pointer;
 text-indent: initial;
 background-color: transparent;
 z-index: 2;
}
.payment-options ul li label h3 {
 font-family: "Bebas Neue", Helvetica, Arial, sans-serif;
 font-size: 24px;
 color: #0050AA;
 margin-top: 0;
}
.payment-options ul li input[type="radio"]:checked + label {
 background-color: transparent;
 border-color: #0050AA;
}
.payment-options ul li label:before {
 display: none;
}
.payment-options .promo-code {
 padding: 0.5rem;
}
.payment-options blockquote {
 margin-left: 10%;
}
.payment-options blockquote p {
 font-size: 14px;
}
.payment-options blockquote p strong {
 display: block;
 text-transform: uppercase;
 font-family: "Bebas Neue", Helvetica, Arial, sans-serif;
 font-weight: normal;
 font-size: 125%;
}
.payment-options .form-group input {
 height: 46px;
 margin: 0;
 border-radius: 4px;
}
.payment-options .form-group input:first-of-type {
 margin-right: 1rem;
}
.payment-options .form-group input:last-of-type {
 margin-left: 0.5rem;
}
.payment-options .form-group input:focus {
 border-color: #0050AA;
 box-shadow: none;
}
.payment-options .d-flex {
 display: flex;
}
.payment-info {
 position: relative;
 top: 0;
 left: 0;
 padding: 2rem;
 z-index: 1;
}
.payment-info h3, .payment-info p {
 display: block;
 width: 100%;
 margin-top: 0;
 margin-bottom: 0;
 padding-right: 25%;
 font-weight: normal;
}
.payment-info figure {
 position: absolute;
 top: 50%;
 right: 2rem;
 display: inline-block;
 max-width: 100px;
 height: auto;
 margin: 0;
 transform: translateY(-50%);
}
/* ==================================================
   Modals
================================================== */
.modal.fade .modal-dialog {
 width: calc(100svw - 2rem);
 height: calc(100svh - 2rem);
 max-width: 1280px;
 margin: 1rem auto;
 z-index: 9999;
}
.modal-backdrop.in {
 opacity: .5;
}
.modal-content {
 height: 100%;
}
@media (min-width:0em) and (max-width:46em) {
 .modal-content {
  height: auto;
 }
}
.modal-header {
 height: 7svh;
}
@media (min-width:0em) and (max-width:46em) {
 .modal-header {
  height: auto;
 }
}
.modal-header .modal-title {
 line-height: 1em;
 color: #0050AA;
 font-size: clamp(2.5rem, 3vw, 4rem);
}
.modal-body {
 height: 83svh;
 text-align: center;
}
@media (min-width:0em) and (max-width:46em) {
 .modal-body {
  height: auto;
 }
}
.payment .modal-body img {
 display: block;
 border: none;
 width: auto;
 max-width: initial;
 height: 100%;
 margin: 0 auto;
 padding: 0;
}
.modal-footer {
 text-align: center;
 height: 8svh;
}
@media (min-width:0em) and (max-width:46em) {
 .modal-footer {
  height: auto;
 }
}
.zoom-icon {
 position: absolute;
 top: -21px;
 right: 10px;
 width: auto;
 height: 42px;
 text-align: center;
 text-transform: uppercase;
 line-height: 42px;
 padding: 3px 10px;
 background-color: #FFF;
 z-index: 1;
}
.zoom-icon .fa {
 font-size: 18px;
 -webkit-transform: scaleX(-1);
 transform: scaleX(-1);
}
/**/
.form-horizontal label a {
 display: block;
 position: relative;
}
#forma_pagamento_div .control-label {
 text-align: left;
 margin-bottom: 20px;
}
.payment.products#Forma_Pagamento img {
 display: inline-block;
 max-width: 250px;
 height: auto;
 margin: 0 0 10px;
}
.zoom-image .modal-content img {
 display: inline-block;
 width: auto;
 max-width: 100vw;
 height: 100%;
 margin: 0 0 10px;
 border: none;
}
@media (min-width:0em) and (max-width:46em) {
 .zoom-image .modal-content img {
  width: 100%;
  max-width: 100%;
  height: auto;
 }
}