/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

body{
    font-size: 62.5%; 
}

h1, h2, h3, h4, h5, h6, p, ul{
    margin: 0;
    padding: 0;
    font-weight: normal;
}

ul{
    list-style: none;
}

a{
    text-decoration: none;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

input[type="checkbox"] { -webkit-appearance: checkbox; }
input[type="radio"] { -webkit-appearance: radio; }
select { -webkit-appearance:textfield; }



/* ==========================================================================
   estilos gerais
   ========================================================================== */

body{
    font-family: 'Inter', sans-serif;
    font-weight: 400;
}

.medium{
    font-weight: 500;
}

.sbold{
    font-weight: 600;
}

.bold{
    font-weight: 700;
}

.ebold{
    font-weight: 800;
}

.black{
    font-weight: 900;
}

.container{
    position: relative;
    width: 96%;
    max-width: 1160px;
    margin: 0 auto;
}

header{
    position: relative;
    width: 100%;
    height: 853px;
    background: rgb(22,74,112);
    background: linear-gradient(180deg, rgba(22,74,112,1) 0%, rgba(18,63,98,1) 30%, rgba(6,28,53,1) 100%);
    padding-top: 20px;
    
}



header .container{
    height: 100%;
}

header .container:after{
    position: absolute;
    left: -70px;
    bottom: 0;
    width: 645px;
    height: 559px;
    background: var(--url-img-topo) no-repeat center;
    background-size: 645px auto;
    content: '';
    z-index: 10;
}



header:before{
    position: absolute;
    width: 185px;
    height: 371px;
    background: var(--url-img-transicao) no-repeat center;
    background-size: 185px auto;
    left: -28px;
    bottom: -209px;
    content: '';
}


header img{
    display: block;
    width: 165px;
    height: auto;

}

header .label-unidade{
    position: absolute;
    left: 50%;
    top: 20px;
    transform: translateX(-50%);
    padding: 0 40px;
    background-color: #061C35;
    color: #009045;
    font-size: 15px;
    line-height: 45px;
    letter-spacing: 0.2em;
    text-align: center;
}


header h1{
    font-size: 50px;
    line-height: 60px;
    width: 100%;
    text-align: center;
    color: #fff;
    margin-top: 35px;
}

header h2{
    width: 100%;
    font-size: 20px;
    line-height: 24px;
    color: #44CCE9;
    margin-top: 10px;
    text-align: center;
}

header .bt-voltar{
    display: block;
    width: 278px;
    height: 56px;
    border: 1px solid #F59A47;
    background-color: #F59A47;
    color: #fff;
    font-size: 17px;
    line-height: 56px;
    letter-spacing: 0.2em;
    text-align: center;
    border-radius: 4px;
    box-shadow: 0px 3px 3px rgba(0,0,0,0.36);
    transition: all 0.3s ease-in-out;
    margin: 50px auto 0 auto;
}

header .bt-voltar:hover{
    background-color: #fff;
    color: #F59A47;
}

.formulario-texto{
    background: var(--url-img-arvores) no-repeat right -134px bottom 20px;
    background-size: auto 402px;
    background-color: #F5F5F5;
    padding-bottom: 145px;
}

.formulario-texto .texto{
    position: relative;
    width: 376px;
    padding-top: 88px;
    margin-left: 105px;
}

.formulario-texto .texto .ct-texto{
    width: 100%;
}

.formulario-texto .texto .ct-texto h2{
    font-size: 30px;
    line-height: 36px;
    width: 314px;
    color: #44CCE9;
}

.formulario-texto .texto .ct-texto h3{
    font-size: 20px;
    line-height: 24px;
    color: rgba(0,0,0,0.6);
    margin-top: 10px;
}

.formulario-texto .texto .ct-texto p.texto-intro{
    width: 278px;
    margin-top: 40px;
    font-size: 15px;
    line-height: 24px;
    color: rgba(0,0,0,0.6);
}

.formulario-texto .texto .ct-texto .lista-conteudos{
    width: 278px;
    margin-top: 40px;
    font-size: 15px;
    line-height: 24px;
    color: rgba(0,0,0,0.6);
    margin-bottom: 60px;
}

.formulario-texto .texto .ct-texto .lista-conteudos li{
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 20px;
    padding-left: 15px;
}

.formulario-texto .texto .ct-texto .lista-conteudos li:before{
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #44CCE9;
    left: 0;
    top: 10px;
    content: '';
}

.formulario-texto .texto .ct-texto img.selo-einstein{
    width: 136px;
    height: auto;
}

.formulario-texto .wrapper-formulario{
    width: 572px;
    background-color: #fff;
    padding: 59px 58px 81px 63px;
    margin-top: -495px;
}

.formulario-texto .wrapper-formulario h2.titulo-form{
    font-size: 32px;
    line-height: 39px;
    color: #164A70;
}

.formulario-texto .wrapper-formulario p.subtitulo{
    font-size: 15px;
    line-height: 24px;
    color: rgba(0,0,0,0.6);
    padding-top: 11px;
    padding-bottom: 55px;
}

.formulario-texto .wrapper-formulario form{
    position: relative;
    width: 100%;
}

.formulario-texto .wrapper-formulario .form-group{
    position: relative;
    width: 100%;
    height: 56px;
    margin-bottom: 21px;
}

.formulario-texto .wrapper-formulario .form-group.form-select .controls{
    position: relative;
    width: 100%;
    height: 100%;
    border: 1px solid rgba(0,0,0,0.12);
    border-radius: 4px;
    
    overflow: hidden;
}

.formulario-texto .wrapper-formulario .form-group.form-select.azul .controls{
    border: 2px solid #44CCE9;
}

.formulario-texto .wrapper-formulario .form-group.form-select.erro .controls{
    border: 1px solid #B00020;
}

.formulario-texto .wrapper-formulario .form-group.form-select .controls:before{
    position: absolute;
    right: 0;
    top: 0;
    width: 54px;
    height: 54px;
    background: var(--url-icon-select) no-repeat center #F5F5F5;
    background-size: 10px auto;
    content: '';
    z-index: 2;
}

.formulario-texto .wrapper-formulario .form-group.form-select.data .controls:before{
    background: var(--url-icon-agenda) no-repeat center #F5F5F5;
}

.formulario-texto .wrapper-formulario .form-group.form-select.time .controls:before{
    background: var(--url-icon-horario) no-repeat center #F5F5F5;
}

.formulario-texto .wrapper-formulario .form-group.form-select .controls .wrap-select{
    width: 100%;
    height: 100%;
}

.formulario-texto .wrapper-formulario .form-group.form-select .controls select{
    position: absolute;
    width: 110%;
    height: 100%;
    border: none;
    background-color: transparent;
    font-size: 15px;
    line-height: 54px;
    color: rgba(0,0,0,0.74);
    padding: 0 16px;
    cursor: pointer;
    z-index: 5;
    opacity: 0;
}

.formulario-texto .wrapper-formulario .form-group.form-select.focus .controls select{
    opacity: 1;
    z-index: 1;
}

.formulario-texto .wrapper-formulario .form-group.form-select.erro .controls select{
    color: #B00020;
}

.formulario-texto .wrapper-formulario .form-group label{
    position: absolute;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    left: 2px;
    top: 2px;
    background-color: #fff;
    font-weight: 400;
    font-size: 15px;
    line-height: 54px;
    color: rgba(0,0,0,0.6);
    z-index: 2;
    padding: 0 14px;
    transition: all 0.3s ease-in-out;
    cursor: text;
}

.formulario-texto .wrapper-formulario .form-group.form-select label{
    cursor: pointer;
}

.formulario-texto .wrapper-formulario .form-group.focus label{
    width: auto;
    height: auto;
    top: -12px;
    left: 14px;
    font-size: 12px;
    line-height: 16px;
    padding: 3px;
    
    letter-spacing: 0.03em;

}

.formulario-texto .wrapper-formulario .form-group.azul label{
    color: #44CCE9;
}

.formulario-texto .wrapper-formulario .form-group.erro label{
    color: #B00020;
}

.formulario-texto .wrapper-formulario .form-group input.form-control{
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid rgba(0,0,0,0.12);
    border-radius: 4px;
    padding: 0 16px;
    font-size: 15px;
    line-height: 54px;
    color: rgba(0,0,0,0.74);
    outline: none;
}

.formulario-texto .wrapper-formulario .form-group.apelido{
    display: none;
}

.formulario-texto .wrapper-formulario .form-group.focus input.form-control{
    
    
}

.formulario-texto .wrapper-formulario .form-group.azul input.form-control{
    border: 2px solid #44CCE9;
}

.formulario-texto .wrapper-formulario .form-group.erro input.form-control{
    border: 1px solid #B00020;
    color: #B00020;
}

.formulario-texto .wrapper-formulario .dia-horario{
    width: 100%;
}

.formulario-texto .wrapper-formulario .campo-data{
    width: 48.22222222222222%;
}

.formulario-texto .wrapper-formulario .campo-data:before{
    position: absolute;
    width: 54px;
    height: 54px;
    right: 1px;
    top: 1px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    background: var(--url-icon-agenda) no-repeat center #F5F5F5;
    background-size: 20px auto;
    content: '';
    z-index: 5;
}

.formulario-texto .wrapper-formulario .campo-data.focus:before{
    width: 52px;
    height: 52px;
    right: 2px;
    top: 2px;
}


.formulario-texto .wrapper-formulario .campo-hora{
    width: 48.22222222222222%;
    margin-left: 3.555555555555556%;
}

.formulario-texto .wrapper-formulario .campo-hora:before{
    position: absolute;
    width: 54px;
    height: 54px;
    right: 1px;
    top: 1px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    background: var(--url-icon-horario) no-repeat center #F5F5F5;
    background-size: 20px auto;
    content: '';
    z-index: 5;
}

.formulario-texto .wrapper-formulario .campo-hora.focus:before{
    width: 52px;
    height: 52px;
    right: 2px;
    top: 2px;
}

.formulario-texto .wrapper-formulario .bt-enviar{
    display: block;
    width: 100%;
    height: 56px;
    background-color: #F59A47;
    border-radius: 4px;
    color: #fff;
    border: 1px solid #F59A47;
    font-size: 17px;
    line-height: 56px;
    letter-spacing: 0.1em;
    font-weight: 800;
    text-transform: uppercase;
    box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.36);
    margin-top: 40px;
    transition: all 0.3s ease-in-out;
}

.formulario-texto .wrapper-formulario .bt-enviar:hover{
    background-color: #fff;
    color: #F59A47;
}

.formulario-texto .wrapper-formulario .msg-erro{
    position: absolute;
    width: 100%;
    text-align: center;
    font-size: 15px;
    line-height: 24px;
    color: #B00020;
    margin-top: 10px;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.formulario-texto .wrapper-formulario .msg-erro.aberto{
    opacity: 1;
}

/*RADIO BUTTOM*/

.ct-radio{
    margin-bottom: 24px;
}

.ct-radio p.label-radio{
    font-size: 15px;
    line-height: 24px;
    color: rgba(0,0,0,0.6);
    font-weight: 400;
    padding-bottom: 10px;
}

.wrap-radio.last{
    margin-right: 0;
}

.wrap-radio {
  display: inline-block;
  position: relative;
  padding-left: 27px;
  cursor: pointer;
  font-size: 15px;
  line-height: 20px;
  margin-right: 50px;
  margin-bottom: 8px;
  color: rgba(0,0,0,0.6);
  font-weight: 400;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.wrap-radio.perto{
    margin-right: 27px;
}

.wrap-radio.cheio{
    width: 100%;
    margin-right: 0;
}

.wrap-radio.last{
    margin-right: 0;
}

.tipo-responsavel-opts.error .wrap-radio,
.como-conheceu-opts.error .wrap-radio,
.ano-interesse-opts.error .wrap-radio,
.int-conteudo-opts.error .wrap-radio{
    color: #B00020;
}



.wrap-radio input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom radio button */
.wrap-radio .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border: 2px solid rgba(0,0,0,0.6);
  border-radius: 50%;

}

.tipo-responsavel-opts.error .wrap-radio .checkmark,
.como-conheceu-opts.error .wrap-radio .checkmark,
.ano-interesse-opts.error .wrap-radio .checkmark,
.int-conteudo-opts.error .wrap-radio .checkmark {
    border: 1px solid #FF8D6A;
}

/* On mouse-over, add a grey background color */
.wrap-radio:hover input ~ .checkmark {
   border: 2px solid #44CCE9;
}

/* When the radio button is checked, add a blue background */
.wrap-radio input:checked ~ .checkmark {
   border: 2px solid #44CCE9;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.wrap-radio .checkmark:before {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.wrap-radio input:checked ~ .checkmark:before {
  display: block;
}

/* Style the indicator (dot/circle) */
.wrap-radio .checkmark:before {
  top: 3px;
  left: 3px;
  width: 10px;
  height: 10px;
  background: #44CCE9;
  border-radius: 50%;
} 

.formulario-inativo{
    display: none;
}

footer{
    position: relative;
    width: 100%;
}

footer .infos{
    width: 100%;
    background-color: #061C35;
    padding-top: 78px;
    padding-bottom: 70px;
}

footer .infos  .ct-logo-rodape{
    width: 423px;
}

footer .infos .ct-logo-rodape img{

    width: 164px;
    height: auto;
}

footer .infos .dados-unidade{
    width: 737px;
   
}

footer .infos .dados-unidade h3{
    font-size: 15px;
    line-height: 18px;
    color: #009045;
    letter-spacing: 0.2em;
    margin-bottom: 27px;
}

footer .infos .contato-endereco{
    width: 100%;
}

footer .infos .contato-endereco .lista-rodape{
    float: left;
    width: 314px;
    margin-right: 109px;
}

footer .infos .contato-endereco.multiunidades .lista-rodape{
    margin-top: 70px;
}

footer .infos .contato-endereco .lista-rodape.ultimo{
    margin-right: 0;
}

footer .infos .contato-endereco .lista-rodape li{
    display: block;
    width: 100%;
    margin-bottom: 16px;
}

footer .infos .contato-endereco .lista-rodape li h4{
    width: 100%;
    font-size: 12px;
    line-height: 24px;
    color: #fff;

}

footer .infos .contato-endereco .lista-rodape li h5{
    width: 82px;
    font-size: 12px;
    line-height: 24px;
    color: #00602D;
    margin-right: 16px;
}

footer .infos .contato-endereco .lista-rodape li p{
    float: right;
    width: 216px;
    font-size: 12px;
    line-height: 24px;
    color: #fff;
}

footer .infos .contato-endereco .lista-rodape li p a{
    text-decoration: none;
    color: #fff;
}

footer .infos .contato-endereco .lista-rodape li p a.link{
    color: #44CCE9;
    text-decoration: underline;
}

footer .infos .contato-endereco .lista-rodape li p a:hover{
    text-decoration: underline;
}

footer .infos .contato-endereco .lista-rodape li p a.link:hover{
    text-decoration: none;
}

footer .copyright{
    width: 100%;
    height: 80px;
    background-color: #082648;
    padding-top: 32px;
}

footer .copyright a{
    font-size: 12px;
    line-height: 16px;
    color: #44CCE9;
    text-decoration: underline;
}

footer .copyright a:hover{
    text-decoration: none;
}

footer .copyright p{
    font-size: 12px;
    line-height: 16px;
    color: #fff;
}





/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* Remove padding and margin into box account */
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/*Float Classes*/

.clearBoth{
    clear: both;
}

.left{
    float: left;
}

.right{
    float: right;
}

/*Text Classes*/

.upper{
    text-transform: uppercase;
}

.image{
    text-indent: -9999px;
    white-space: nowrap;
}


/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


/* ==========================================================================
  ESTILOS DA MENSAGEM PARA NAVEGADORES DESATUALIZADOS
   ========================================================================== */


#msg-atualizacao{
    position: fixed; 
    width: 100%; 
    height: 100%;
    top: 0; 
    left: 0; 
    background-color: #FFF; 
    color: #000; 
    z-index:9999999999999999999999;
}

#msg-atualizacao div.wrapper{
    position: absolute; 
    width: 800px; 
    height: 400px; 
    top: 50%; 
    left: 50%; 
    margin: -200px 0 0 -400px; 
    font-family: Arial, sans-serif;
    text-align: center; 
}

#msg-atualizacao div.wrapper h1{
    margin-top: 0px; 
    margin-bottom: 30px; 
    font-family: inherit;
    font-size: 48px; 
    line-height: 1em;  
    font-weight: bold;
    text-transform: uppercase; 
}

#msg-atualizacao div.wrapper p{
    font-family: inherit;
    font-size: 16px; 
}

#msg-atualizacao div.wrapper hr{
    width: 70px; 
    margin: 30px auto;
    border-top: 1px solid #ccc;
}

#msg-atualizacao div.wrapper h2{
    font-family: inherit;
    font-size: 16px; 
    line-height: 1em; 
    font-weight: normal !important;
}

#msg-atualizacao div.wrapper ul{
    width: 560px;
    list-style: none; 
    font-family: inherit; 
    margin: 60px auto 0 auto;
}

#msg-atualizacao div.wrapper ul li{
    float: left;
    margin-right: 20px;
    padding-right: 20px;
    border-right: 1px solid #ccc;
}

#msg-atualizacao div.wrapper ul li.no-border{
    border-right: none;
    margin-right: 0;
    padding-right: 0;
}

#msg-atualizacao div.wrapper ul li a{
    display: block;
    color: #000;
    text-decoration: none;
    padding-top: 66px;
    text-align: center;
} 

#msg-atualizacao div.wrapper ul li a:hover{
    text-decoration: underline;
}


/* ==========================================================================
  ESTILOS CALENDÃRIO AGENDA
   ========================================================================== */

.dia-horario{
    position: relative;
}

.container-calendario{
    position: absolute;
    width: 254px;
    bottom: calc(100% + 10px);
    z-index: 20;
    display: none;
}

.container-hora{
    position: absolute;
    width: 50%;
    right: 0;
    bottom: calc(100% + 10px);
    background-color: #fff;
    z-index: 20;
    display: none;
}

.container-hora ul li{
    width: 100%;
    height: 54px;
    
}

.container-hora ul li a{
    display: block;
    text-align: center;
    width: 100%;
    height: 100%;
    font-size: 14px;
    line-height: 54px;
    background-color: #F2F2F2;
    border-bottom: 1px solid #fff;
    color: #262F40;
}

.container-hora ul li:last-child a{
    border-bottom: none;
}

.container-hora ul li a:hover{
    background-color: #262F40;
    color: #fff;
    cursor: pointer;
}

.fc-calendar-container {
position: relative;
height: 320px;
width: auto;
}

.fc-calendar {
width: 100%;
height: 100%;
}

.fc-calendar .fc-head {
height: 30px;
line-height: 30px;
background: #ccc;
color: #fff;
}

.fc-calendar .fc-body {
    position: relative;
    width: 100%;
    height: 100%;
    height: -moz-calc(100% - 35px);
    height: -webkit-calc(100% - 35px);
    height: calc(100% - 35px);
    background-color: #F2F2F2;
    padding: 10px 5px;
}

.fc-calendar .fc-row {
    width: 100%;
    background: transparent;
}

.fc-four-rows .fc-row  {
height: 25%;
}

.fc-five-rows .fc-row  {
height: 20%;
}

.fc-six-rows .fc-row {
height: 16.66%;
height: -moz-calc(100%/6);
height: -webkit-calc(100%/6);
height: calc(100%/6);
}

.fc-calendar .fc-row > div,
.fc-calendar .fc-head > div {
float: left;
height: 100%;
width:  14.28%; /* 100% / 7 */
width: -moz-calc(100%/7.1);
width: -webkit-calc(100%/7.1);
width: calc(100%/7.1);
position: relative;
}

/* IE 9 is rounding up the calc it seems */
.ie9 .fc-calendar .fc-row > div,
.ie9 .fc-calendar .fc-head > div {
width:  14.2%;
}

.fc-calendar .fc-row > div {
    overflow: hidden;
    position: relative;
}

.fc-calendar .fc-head > div {
text-align: center;
}

.fc-calendar .fc-row > div > span.fc-date {
    position: absolute;
    width: 30px;
    height: 30px;
    left: 0;
    font-size: 14px;
    line-height: 30px;
    font-weight: 400;
    color: #ddd;
    text-align: center;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    

    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;

}



.fc-calendar .fc-row > div > span.fc-weekday {
padding-left: 5px;
display: none;
}

.fc-calendar .fc-row > div.fc-today {

}

.fc-calendar .fc-row > div.fc-out {
opacity: 0.6;
}

.fc-calendar .fc-row > div:last-child,
.fc-calendar .fc-head > div:last-child {
border-right: none;
}

.fc-calendar .fc-row:last-child {
border-bottom: none;
}


.custom-calendar-wrap {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.custom-inner {
    width: 100%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.custom-inner:before,
.custom-inner:after  {
    content: '';
    width: 99%;
    height: 50%;
    position: absolute;
    background: #f6f6f6;
    bottom: -4px;
    left: 0.5%;
    z-index: -1;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.custom-inner:after {
    content: '';
    width: 98%;
    bottom: -7px;
    left: 1%;
    z-index: -2;
}

.custom-header {
    background: #262F40;
    padding: 0 20px 0 20px;
    height: 60px;
    position: relative;
}


.custom-header h2 {
    font-size: 16px;
    line-height: 60px;
    text-align: center;
    color: #fff;
}

.custom-header h3 {
    font-size: 10px;
    font-weight: 700;
    color: #b7bbc2;
}

.custom-header nav span {
    position: absolute;
    top: 19.5px;
    width: 12px;
    height: 21px;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.custom-header nav span:first-child {
    left: 20px;
}

.custom-header nav span:last-child {
    right: 20px;
}

.custom-header nav span:before {
    font-family: 'fontawesome-selected';
    color: #262F40;
    position: absolute;
    text-align: center;
    width: 100%;
}


.custom-content-reveal {
    background: #f6f6f6;
    background: rgba(246, 246, 246, 0.9);
    width: 40%;
    height: 320px;
    float: right;
    text-align: center;
}

.custom-content-reveal span.custom-content-close {
    position: absolute;
    top: 15px;
    right: 10px;
    width: 20px;
    height: 20px;
    text-align: center;
    background: #262F40;
    box-shadow: 0 1px 1px rgba(0,0,0,0.1);
    cursor: pointer;
    line-height: 13px;
    padding: 0;
}

.custom-content-reveal span.custom-content-close:after {
    content: 'x';
    font-size: 18px;
    color: #fff;
}

.custom-content-reveal a,
.custom-content-reveal span {
    font-size: 22px;
    padding: 10px 30px;
    display: block;
}

.custom-content-reveal h4 {
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 3px;
    color: #777;
    padding: 20px;
    background: #fff;
    border-bottom: 1px solid #ddd;
    border-top: 5px solid #262F40;
    box-shadow: 0 1px rgba(255,255,255,0.9);
    margin-bottom: 30px;
}

.custom-content-reveal span {
    color: #888;
}

.custom-content-reveal a {
    color: #262F40;
}

.custom-content-reveal a:hover {
    color: #333;
}

/* Modifications */

.fc-calendar-container {
    height: 260px;
    width: auto;
    padding: 0;
    background: #f6f6f6;
    box-shadow: inset 0 1px rgba(255,255,255,0.8);
}

.fc-calendar .fc-head {
    background: #fff;
    color: #262F40;
    text-transform: uppercase;
    font-size: 10px;
    height: 35px;
    line-height: 35px;
}

.fc-calendar .fc-row > div {
    background: transparent;
    cursor: pointer;
}

.fc-calendar .fc-row > div:empty {
    background: transparent;
}

.fc-calendar .fc-row > div > span.fc-date {
    text-align: center;
    margin: 0;
    color: #999999;
    font-weight: 400;
    pointer-events: none;
}

.fc-calendar .fc-row > div.fc-content > span.fc-date {
    color: #262F40;
}

.fc-calendar .fc-row > div.fc-content:hover > span.fc-date{
    background-color: #262F40;
    color: #fff;
}

.fc-calendar .fc-row > div.fc-today.fc-content:after {
    color: #b02c42;
}

.fc-calendar .fc-row > div.fc-content:hover:after{
    color: #262F40;
}

.fc-calendar .fc-row > div.fc-today.fc-content:hover:after{
    color: #fff;
}

.fc-calendar .fc-row > div > div a,
.fc-calendar .fc-row > div > div span {
    display: none;
    font-size: 22px;
}


.lb-loader{
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 100000;
    background-color: rgba(255,255,255, 0.8);
}

.ct-lb-loader{
    position: absolute;
    width: 90%;
    max-width: 347px;
    height: 353px;
    border-radius: 8px;
    background: rgb(22,74,112);
    background: linear-gradient(180deg, rgba(22,74,112,1) 0%, rgba(18,63,98,1) 30%, rgba(6,28,53,1) 100%);
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    box-shadow: 0px 0px 20px rgba(0,0,0,0.24);

}

.ct-load{
    position: absolute;
    width: 265px;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    text-align: center;
}



.ct-load h2{
    font-size: 30px;
    line-height:36px;
    color: #44CCE9;
    text-align: center;
    padding-top: 35px;
}

.ct-load h3{
    font-size: 15px;
    line-height: 24px;
    color: #fff;
    text-align: center; 
    padding-top: 10px;
}

.ct-load .wrapp-load{
    display: block;
    position: relative;
    width: 60px;
    height: 60px;
    margin: 0 auto;
}


.ball-clip-rotate-multiple {
  position: relative; }
  .ball-clip-rotate-multiple > div {
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    position: absolute;
    left: 0;
    top: 0;
    border: 2px solid #44CCE9;
    border-bottom-color: transparent;
    border-top-color: transparent;
    border-radius: 100%;
    height: calc(35px * 1.6);
    width: calc(35px * 1.6);
    -webkit-animation: rotate 1s 0s ease-in-out infinite;
            animation: rotate 1s 0s ease-in-out infinite; }
    .ball-clip-rotate-multiple > div:last-child {
      display: inline-block;
      top: 16px;
      left: 16px;
      width: calc(15px * 1.6);
      height: calc(15px * 1.6);
      -webkit-animation-duration: 0.5s;
              animation-duration: 0.5s;
      border-color: #44CCE9 transparent #44CCE9 transparent;
      -webkit-animation-direction: reverse;
              animation-direction: reverse; }

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }


/*PÃGINA CONFIRMACAO*/

body.confirmacao{
    background-color: #F5F5F5;
}

.ct-retorno{
    position: fixed;
    width: 100%;
    min-height: 100vh;
    top: 0;
    left: 0;
    z-index: 10;
    background-color: transparent;
}

.ct-retorno.oculta{
    display: none;
}

.ct-retorno .caixa-retorno{
    position: absolute;
    width: 347px;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
}

.ct-retorno .caixa-retorno .topo-caixa-ret{
    width: 100%;
    height: 250px;
    padding-top: 60px;
    text-align: center;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.ct-retorno.sucesso .caixa-retorno .topo-caixa-ret{
    background: rgb(68,204,233);
    background: linear-gradient(135deg, rgba(68,204,233,1) 0%, rgba(0,142,188,1) 100%);
}

.ct-retorno.duplicado .caixa-retorno .topo-caixa-ret{
    background: rgb(231,158,87);
    background: linear-gradient(135deg, rgba(231,158,87,1) 0%, rgba(216,98,54,1) 100%);
}

.ct-retorno.erro .caixa-retorno .topo-caixa-ret{
    background: rgb(255,54,54);
    background: linear-gradient(135deg, rgba(255,54,54,1) 0%, rgba(178,9,9,1) 100%);
}

.ct-retorno .caixa-retorno .topo-caixa-ret .icon-retorno{
    display: block;
    width: 90px;
    height: 90px;
    margin: 0 auto;
    background-size: 90px auto;
    background-repeat: no-repeat;
    background-position: center;
}

.ct-retorno .caixa-retorno .topo-caixa-ret h1{
    font-size: 30px;
    line-height: 36px;
    color: rgba(255,255,255,0.8);
    padding-top: 20px;
}

.ct-retorno .caixa-retorno .corpo-retorno{
    width: 265px;
    margin: 0 auto;
    padding-top: 42px;
    padding-bottom: 40px;
}

.ct-retorno .caixa-retorno .corpo-retorno h2{
    text-align: center;
    font-size: 20px;
    line-height: 24px;
}

.ct-retorno.sucesso .caixa-retorno .corpo-retorno h2{
    color: #164A70;
}

.ct-retorno.duplicado .caixa-retorno .corpo-retorno h2{
    color: #F59A47;
}

.ct-retorno.erro .caixa-retorno .corpo-retorno h2{
    color: #FF3636;
}

.ct-retorno .caixa-retorno .corpo-retorno p{
    font-size: 15px;
    line-height: 24px;
    color: rgba(0,0,0,0.6);
    padding-top: 20px;
}

.ct-retorno .caixa-retorno .corpo-retorno a.bt-voltar{
    display: block;
    margin-top: 30px;
    width: 100%;
    height: 56px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.6);
    text-align: center;
    font-size: 17px;
    line-height: 56px;
    color: rgba(0,0,0,0.6);
    transition: all 0.3s ease-in-out;
}

.ct-retorno .caixa-retorno .corpo-retorno a.bt-voltar:hover{
    background-color: rgba(0,0,0,0.6);
    color: #fff;
}
