html {
  touch-action: manipulation;
}

*:not(input):not(textarea):not(div) {
 -webkit-touch-callout: none;
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

*:focus { outline: none; }

::-webkit-input-placeholder { color: #ccc; }
::-moz-placeholder { color: #ccc; }
:-ms-input-placeholder { color: #ccc; }
:-moz-placeholder { color: #ccc; }

div::-webkit-scrollbar { display: none; }

b { font-weight: 500; color: #000; }

strong { font-weight: 500; }

a { color: #DEDFE0 !important; }


@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Heavy.otf); font-weight: 700;}
@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Bold.otf); font-weight: 600;}
@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Semibold.otf); font-weight: 500;}
@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Medium.otf); font-weight: 400;}
@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Regular.otf); font-weight: 300;}
@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Light.otf); font-weight: 200;}
@font-face { font-family: SFUI; src: url(../fonts/SF-UI-Text-Ultrathin.otf); font-weight: 100;}

@font-face { font-family: OpenSans; src: url(../fonts/OpenSans-ExtraBold.ttf); font-weight: 700;}
@font-face { font-family: OpenSans; src: url(../fonts/OpenSans-Bold.ttf); font-weight: 600;}
@font-face { font-family: OpenSans; src: url(../fonts/OpenSans-Semibold.ttf); font-weight: 500;}
@font-face { font-family: OpenSans; src: url(../fonts/OpenSans-Regular.ttf); font-weight: 400;}
@font-face { font-family: OpenSans; src: url(../fonts/OpenSans-Light.ttf); font-weight: 300;}



body { padding: 0px; margin: 0px; background: #f1f1f6; font-family: 'OpenSans', sans-serif; color: #555; -webkit-overflow-scrolling: touch; line-height: 1.3;}


.corpo {

    position: fixed;
    top: 70px;
    left: 0px;
    width: 100%;
    height: calc(100% - 130px);
    text-align: left;
}

.header {

    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 70px;
    text-align: center;
    padding: 25px 15px;
    background: #000;
    z-index: 9;
    box-shadow: 0px 0px 44px -8px rgba(0,0,0,0.1);


}


.footer {

    position: fixed;
    top: calc(100% - 60px);
    left: 0px;
    width: 100%;
    height: 60px;
    text-align: center;
    padding: 0px;
    background: #fff;
    z-index: 9;
    box-shadow: 0px 0px 44px -8px rgba(0,0,0,0.1);
}

.mascara {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.7);
    z-index: 10;
    display: none;
}

.float {

    position: fixed;
    top: 100%;
    left: 0px;
    width: 100%;
    height: 100%;
    text-align: center;
    padding: 20px;
    background: #fff;
    z-index: 11;
    border-radius: 20px 20px 0px 0px;
    transition: all 0.4s ease-out;
    margin-top: 0px;
    display: none;
}


.scrollCorpo { padding-bottom: 10px; }

hr { margin: 10px 0px; }



.botao { width: 100%; padding: 15px; background: #242377; text-align: center; border-radius: 5px; font-weight: 500; font-size: 18px; color: #fff }

.iconesFoot { width: calc(50% - 4px); height: 100%; font-size: 18px; color: #999; display: inline-block; padding-top: 12px; vertical-align: top; }

ul { height: 130px; overflow-y: scroll; overflow-x: hidden; -webkit-overflow-scrolling: touch;}

li { border-bottom: 1px solid #f0f0f0 !important; height: 50px; line-height: 50px; }

.ativo { color: #fff !important; }

.titulo { font-size: 16px; font-weight: 600; color: #000; margin-bottom: 10px;}
.subtitulo { font-size: 16px; line-height: 150%; font-weight: 200; color: #666; }


.pswp__top-bar { margin-top: 20px !important; background: none !important; }
.pswp__caption__center { font-size: 16px; font-weight: 200; padding: 10px; line-height: 150% }
.hello-week { font-weight: 600 !important; }
.is-highlight { border: 1px solid #fff; background: #999999 !important; }


@media only screen and (min-device-width: 320px) and (max-device-height: 568px) and (-webkit-device-pixel-ratio: 2) { .iphone5 { font-size: 13px !important; } } /*iPhone SE*/
@media only screen and (min-device-width: 414px) and (max-device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait) {  } /*iPhone 6/6s, 7, 8, SE2*/
@media 
only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait), /*iPhone 12 Mini, iPhone 11 Pro, iPhone Xs, and iPhone X*/
only screen and (device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait), /*iPhone 12 and iPhone 12 Pro*/
only screen and (device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait), /*iPhone 12 Pro Max*/
only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation : portrait), /*iPhone 11 and iPhone XR*/
only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait)  /*iPhone 11 Pro Max and iPhone Xs Max*/ {

    /*.header { height: 95px !important; padding-top: 55px; } */
    /*.footer { height: 80px; top: calc(100% - 80px); } */
    .pswp__caption__center { font-size: 16px; font-weight: 200; padding: 10px; line-height: 150%; padding-bottom: 50px; } 
    .pswp__top-bar { margin-top: 40px !important; background: none !important; } 

}

@media
only screen and (device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait),  /*iPhone 14 Pro Max */
only screen and (device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation : portrait)  /*iphone 14 pro*/ {

    /*.header { height: 95px !important; padding-top: 60px; } */
    /*.footer { height: 80px; top: calc(100% - 80px); } */
    .pswp__caption__center { font-size: 16px; font-weight: 200; padding: 10px; line-height: 150%; padding-bottom: 50px; } 
    .pswp__top-bar { margin-top: 40px !important; background: none !important; } 

}

.card { position: relative; border-radius: 5px; display: inline-block; text-align: center; padding: 10px; background: #fff; }

.calendario { width: 13%; height: 70px; padding: 0px; padding-top: 10px; background: none; color: #fff; transition: all 0.3s ease }

.calendarioAtivo { width: 70px; border-radius: 70px; background: #fff !important; color: #f35a44 !important; }

.preload { background: linear-gradient(90deg, #ddd 20%, #f9f9f9 50%, #ddd 80%); background-size: 600% 600%; animation: animacao 1.5s linear infinite; animation-fill-mode: forwards; }
@keyframes animacao { 0%{background-position:100% 0%}; 100%{background-position:0% 100%}; }