body {
   background: url(../img/bg-10.png) center;
   background-size: cover;
   box-sizing: border-box;
   /* font-family: Arial, Helvetica, sans-serif; */
   font-family: Ubuntu, Arial, Helvetica, sans-serif;
   font-family: 14px;   
   line-height: 1.6;
   margin: 0;
   padding: 0;
}

.alert-box {
   background-color: #FFF;
   border-radius: 6px;
   padding-bottom: 10px;
   text-align: center;
}

.alert-box .alert-button {
   background-color: #026921;
   background-size: auto 28px;
   border: 1px solid #026921;
   border-radius: 8px;
   color: #FFF;
   cursor: pointer;
   font-family: inherit;
   font-size: 1rem;
   padding: 8px 20px;
   text-transform: uppercase;
}

.alert-box .alert-content {
   box-sizing: border-box;
   font-size: 0.85rem;
   margin-bottom: 10px;
   min-height: 80px;
   padding: 10px;
   text-align: left;
   width: 360px;
}

.alert-box .alert-content > div {
   margin-bottom: 3px;
}

.alert-box .alert-title {
   background-color: #333;
   border-radius: 6px;
   color: #FFF;
   margin: 2px;
   padding: 5px;
   text-align: left;
}

.alert-stage {   
   align-items: center;
   background-color: rgba(0,0,0,0.5);
   display: flex;
   height: 100vh;
   justify-content: center;
   left: 0;
   position: fixed;
   top: 0;
   width: 100vw;
}


.box-title {
   background: url(../img/robo-iprocess.png) right -100px bottom -250px no-repeat;
   background-color: rgba(0,0,0,0.7);
   border-radius: 12px;
   box-sizing: border-box;
   color: #FFF;
   margin-bottom: 20px;
   min-height: 200px;
   padding: 20px 270px 20px 20px;
}

.box-title h1 {
   color: #FFF;
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1.3;
   margin-bottom: 10px;
}

.box-title .description {
   color: #FFF;
   margin-bottom: 20px;
}

.button-1 {
   background: url(../img/letter.png) no-repeat 10px 5px;
   background-color: #026921;
   background-size: auto 28px;
   border: 1px solid #026921;
   border-radius: 8px;
   color: #FFF;
   cursor: pointer;
   font-family: inherit;
   font-size: 1.2rem;
   padding: 10px 18px 10px 50px;
   text-transform: uppercase;
}

.button-help {
   background: url(../img/elfo.png) no-repeat 10px 5px;
   background-color: #026921;
   background-size: auto 40px;
   border: 1px solid #026921;
   border-radius: 4px;
   color: #FFF;
   cursor: pointer;
   float: right;
   font-size: 1rem;
   font-weight: bold;
   margin-top: -15px;
   padding: 15px 20px 15px 60px;
}

.button-social {
   background: center no-repeat;
   background-size: contain;
   border: 0;
   border-radius: 50%;
   cursor: pointer;
   height: 40px;
   width: 40px;
}

.button-social.download {
   background-image: url(../img/ic-social-download.png);
}

.button-social.email {
   background-image: url(../img/ic-social-email.png);
}

.button-social.facebook {
   background-image: url(../img/ic-social-facebook.png);
}

.button-social.instagram {
   background-image: url(../img/ic-social-instagram.png);
}

.button-social.linkedin {
   background-image: url(../img/ic-social-linkedin.png);
}

.button-social.whatsapp {
   background-image: url(../img/ic-social-whatsapp.png);
}

.card-main {
   background-color: #EEE;  
   border: 1px solid #000; 
   margin: 14px;
   padding: 20px 20px 80px;
   position: relative;
   width: 600px;
}

.card-main:after {
   background: url(../img/robo-iprocess.png) center top 0px no-repeat;
   background-size: 140px;
   bottom: 0;
   content: " ";
   height: 80px;
   position: absolute;
   right: 20px;
   width: 100px;
}

.card-main figure {
   background: center no-repeat;
   background-size: cover;
   border: 1px solid #000;
   height: 500px;
   width: 600px;
}

.card-main-from {
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 1rem;
   padding-left: 20px;
   padding-top: 10px;
   position: relative;
}

.card-main-link-voltar {
   max-width: 600px;
   text-align: left;
   width: 100%;
}

.card-main-message-ia {
   bottom: 15px;
   color: #FF8421;
   font-size: 0.8rem;
   left: 15px;
   line-height: 1.3;
   position: absolute;
   width: 200px;
}

.card-main-message-feliznatal {
   bottom: 5px;
   color: #FF8421;
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 1.4rem;
   right: 110px;
   line-height: 1.3;
   position: absolute;
   text-align: right;
   width: 100px;
}

.card-main-from:before {
   content: "De:";
   font-size: 0.6rem;
   font-weight: bold;
   left: 0;
   position: absolute;
   top: 5px;
}

.card-main-message {
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 1rem;
   margin-top: 30px;
}

.card-main-stage {
   align-items: center;
   display: flex;
   flex-direction: column;
   justify-content: center;
}

.card-list {
   background-color: rgba(0,0,0,0.7);
   border-radius: 10px;
   color: #FFF;
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   padding: 20px 0;
}

.card-list-box {
   background-color: #EEE;  
   border: 1px solid #000; 
   margin: 14px;
   padding: 10px 10px 20px;
   position: relative;
   width: 180px;

   -webkit-transform: rotate(-3deg);
   -moz-transform: rotate(-3deg);
   -o-transform: rotate(-3deg);
}

.card-list-box:nth-child(odd) {
   background-color: #EEE;  
   border: 1px solid #000; 
   margin: 14px;
   padding: 10px 10px 20px;
   position: relative;
   width: 180px;

   -webkit-transform: rotate(3deg);
   -moz-transform: rotate(3deg);
   -o-transform: rotate(3deg);
}

.card-list-box::before {
   background-color: #FFF;
   border: 1px solid #000;
   border-radius: 50%;
   box-sizing: border-box;
   content: " ";
   height: 15px;
   left: calc(50% - 7px);
   position: absolute;
   top: 10px;
   width: 15px;
}

.card-list-box::after {
   background: url(../img/pin-2.png) center no-repeat;
   background-size: contain;
   border-radius: 50%;
   box-sizing: border-box;
   content: " ";
   height: 40px;
   left: 95px;
   position: absolute;
   top: -15px;
   width: 40px;
}

.card-list-box figure {
   background: center no-repeat;
   background-size: cover;
   border: 1px solid #000;
   height: 180px;
   width: 180px;
}

.card-list-from {
   color: #111;
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 0.9rem;
   padding-left: 20px;
   padding-top: 10px;
   position: relative;
}

.card-list-from:before {
   content: "De:";
   font-size: 0.6rem;
   font-weight: bold;
   left: 0;
   position: absolute;
   top: 5px;
}

.card-list-search {
   display: flex;
   justify-content: flex-end;
   position: relative;
}

.card-list-search .form-field {
   max-width: 400px;
   width: 100%;
}

.card-list-search .form-field input {
   padding-right: 40px !important;
}

.button-search {
   background: url(../img/ic-search.png) center no-repeat transparent;
   background-size: contain;
   border: 0;
   border-radius: 50%;
   cursor: pointer;
   height: 30px;
   position: absolute;
   right: 2px;
   top: 2px;
   width: 30px;
}

.card-list-see-more {
   display: flex;
   justify-content: center;
   margin: 10px 0;
}

.coins-counter {
   background: url(../img/coin.png) center left no-repeat;
   background-size: auto 100%;
   line-height: 30px;
   padding-left: 30px;
   position: absolute;
   right: 10px;
   top: 35px;
   width: 180px;
}

footer {
   /* background: url(../img/logo-dark.png) center right no-repeat; */
   background-size: auto 40px;
   background-color: rgba(0,0,0,0.9);
   color: #FFF;
   min-height: 20px;
   margin: 0;
   padding: 10px 0;
   text-align: center;
   width: 100%;
}

footer nav ul {
   display: flex;
   justify-content: center;
   margin-top: 10px;
}

footer nav ul li {
   padding: 0 5px;
}

footer nav ul li a:hover {
   text-decoration: underline;
}

form {
   width: 100%;
}

.form-field {
   display: flex;
   flex-direction: column;
   margin-bottom: 30px;
}

.form-field input[type=text],
.form-field input[type=email],
.form-field textarea {
   border: 1px solid #AAA;
   border-radius: 4px;
   font-family: inherit;
   font-size: inherit;
   padding: 8px 3px;
}

.form-field textarea {
   height: 120px;
}

.form-field label {
   font-weight: bold;
}

.form-field-options {
   display: flex;
   flex-wrap: wrap;
}

.form-field-checkbox,
.form-field-radio {
   background-color: #EEE;
   border: 1px solid #AAA;
   color: #333;
   cursor: pointer;
   border-radius: 4px;
   font-size: 0.9rem;
   margin: 5px;
   padding: 8px 10px 8px 30px;
   position: relative;
}

.form-field-checkbox:before,
.form-field-radio:before {
   background-color: #FFF;
   border: 1px solid #AAA;
   content: " ";
   height: 14px;
   left: 8px;
   position: absolute;
   top: 10px;
   width: 14px;
}

.form-field-radio:before {
   border-radius: 50%;
}

.form-field-checkbox input,
.form-field-radio input {
   display: none;
}

.form-field-checlbox:not(.selected):hover,
.form-field-radio:not(.selected):hover {
   background-color: #DDD;
   border-color: #777;
   box-shadow: 0px 0px 4px #AAA;
}

.form-field-checkbox.selected,
.form-field-radio.selected {
   background-color: rgba(199, 8, 8, 0.9);
   border-color: rgba(199, 8, 8, 0.9);
   color: #FFF;
}

.form-field-checkbox.selected::before,
.form-field-radio.selected::before {
   border-color: #FFF;
   content: "\2713";
   color: rgba(199, 8, 8, 0.9);
   font-size: 14px;
   font-weight: bold;
   line-height: 14px;
   text-align: center;
}

.form-field-checkbox.selected::after,
.form-field-radio.selected::after {
   background-image: url(../img/santa-hat.png);
   background-size: contain;
   content: " ";
   height: 24px;
   position: absolute;
   right: 2px;
   top: -18px;
   width: 24px;
}

.form-field-max-chars {
   text-align: right;
}

.form-title {
   border-bottom: 1px solid #888;
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 1.5rem;
   margin-bottom: 15px;
   padding: 10px 5px;
}

header {
   align-items: center;
   background: url(../img/logo-dark.png) 30px center no-repeat;
   background-size: auto 50px;
   background-color: rgba(0,0,0,0.9);
   justify-content: center;
   display: flex;
   height: 60px;
   width: 100%;
}

header nav {
   color: #FFF;
   padding-left: 120px;
   width: 100%;
}

header nav ul {
   display: flex;
}

header nav ul li {
   margin: 0 10px
}

header nav ul li a {
   font-weight: bold
}

header nav ul li a:hover {
   border-bottom: 2px solid #026921;;
   color: rgba(199, 8, 8, 0.9);
   padding: 5px 0;
}

.form-row-button {
   text-align: center;
}

.link-1 {
   color: #FFF;
   text-decoration: underline;
}

.link-1:hover {
   text-decoration: none;
}

.link-voltar {
   color: #FFF;
   text-decoration: underline;
}

.link-voltar:hover {
   text-decoration: none;
}

.link-voltar::before {
   content: "\00AB";
   display: inline-block;
   width: 10px;
}

p {
   margin-bottom: 10px;
}

.page-text {
   background-color: rgba(0,0,0,0.85);
   border-radius: 12px;
   color: #FFF;
   font-size: 1.1rem;
   line-height: 1.5;
   padding: 20px;
}

.page-text a {
   text-decoration: underline;
}

.page-text a:hover {
   text-decoration: none;
}

.page-text figure {
   display: flex;
   justify-content: center;
   padding: 15px 10px;
}

.page-text figure img {
   max-width: 100%;
}

.page-text h1 {
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 3rem;
   font-weight: bold;
}

.page-text h2 {
   border-bottom: 1px solid #FFF;
   font-family: "Playwrite HR Lijeva", cursive;
   font-size: 1.5rem;
   font-weight: bold;
   margin-bottom: 10px;
   margin-top: 15px;
}

.page-text ol {
   list-style: decimal;
   margin-left: 30px;
}

.page-text ol li {
   margin-bottom: 10px;
}

.page-text p {
   margin-bottom: 20px;
}

.social-share-bar {
   color: #FFF;
   max-width: 640px;
   width: 100%;
}

.social-share-bar-content button {
   margin-right: 10px;
}

.social-share-bar-title {
   font-weight: bold;
   margin-bottom: 10px;
}

.stage {
   height: 100vh;
   overflow: auto;
}

.stage.dark {
   background-color: rgba(0,0,0,0.7);
}

.stage .site-content {
   box-sizing: border-box;
   display: flex;
   flex-wrap: wrap;
   overflow: auto;
   justify-content: center;
   min-height: calc(100vh - 141px);
   padding: 20px 0;
}

.stage .site-content main {
   display: flex;
   flex-direction: column;
   max-width: 940px;
   width: calc(100vw - 60px);   
}

.stage .site-content .main-form {
   background-color: rgba(0,0,0,0.7);
   /* background-color: rgba(29, 112, 4, 0.281); */
   /* border: 6px solid rgb(226, 175, 7); */
   border-radius: 12px;
   box-sizing: border-box;
   color: #FFF;
   /* height: calc(100vh - 180px);  */
   overflow: auto;
   padding: 20px;
   position: relative;
}

.loading-stage {
   align-items: center;
   background-color: rgba(0,0,0,0.7);
   display: none;
   height: 100vh;
   justify-content: center;
   left: 0;
   position: fixed;
   top: 0;
   width: 100vw;
}

body.loading .loading-stage {
   display: flex;
}

.loading-icon {
   /* change color here */
   color: #e15b64
 }
 .loading-icon,
 .loading-icon div {
   box-sizing: border-box;
 }
 .loading-icon {
   display: inline-block;
   position: relative;
   width: 80px;
   height: 80px;
 }
 .loading-icon div {
   box-sizing: border-box;
   display: block;
   position: absolute;
   width: 64px;
   height: 64px;
   margin: 8px;
   border: 8px solid currentColor;
   border-radius: 50%;
   animation: loading-icon 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
   border-color: currentColor transparent transparent transparent;
 }
 .loading-icon div:nth-child(1) {
   animation-delay: -0.45s;
 }
 .loading-icon div:nth-child(2) {
   animation-delay: -0.3s;
 }
 .loading-icon div:nth-child(3) {
   animation-delay: -0.15s;
 }

 @keyframes loading-icon {
   0% {
     transform: rotate(0deg);
   }
   100% {
     transform: rotate(360deg);
   }
 }


@media screen and (max-width: 740px) {
   .box-title {
      background: url(../img/robo-iprocess.png) right -40px bottom -150px no-repeat;
      background-color: rgba(0,0,0,0.7);
      background-size: auto 300px;
      padding: 20px 20px 100px 20px;
   }
}

@media screen and (max-width: 540px) {
   .button-help {
      background-image: none;    
      font-size: 0.8rem;
      font-weight: bold;
      margin-top: -15px;
      padding: 15px 10px 15px 10px;
   }

   .card-main {
      padding: 10px 10px 80px;
      width: calc(100% - 20px);
   }
  
   .card-main figure {
      width: 100%;
   }

   .coins-counter {
      font-size: 0.8rem;
      padding-left: 35px;
      width: 140px;
   }

   main {
      min-width: 340px;
   }

   header nav ul li a {
      line-height: 1.2;
   }

   header nav ul li a,
   footer nav ul li a {
      font-size: 0.9rem;
      display: block;     
      line-height: 1.2; 
   }
   
   .stage .site-content main {
      width: calc(100vw - 10px);
   }
}

@media screen and (max-width: 450px) {
   .card-main figure {
      height: 400px;
   }
}