/* Start Navbar */
.navbar-custom {
    padding-top: 10px;
    padding-bottom: 10px;
    transition: 0.4s;
    opacity: 1;
    visibility: visible;
}

.navbar-custom.hide {
    opacity: 0;
    visibility: hidden;
}

.navbar-img {
    width: 100px;
}

.navbar-phone {
    color: #008ed2;
    font-size: 25px;
}
/* End Navbar */

/*
*   Header
*/
.header-image {
    height: 100vh;
    min-height: 500px;
    background-image: url('../landing-page-min.jpg');
    background-size: cover;
    background-repeat: no-repeat;
}

/*
*   Utility classes
*/

.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1005;
}

/* Scrollup CSS */
.scrollup {
    width: 40px;
    height: 40px;
    position: fixed;
    display: none;
    bottom: 20px;
    right: 20px;
    z-index: 99999;
    background-color: #008ed2;
    color: #ffffff;
    text-align: center;
    line-height: 40px;
    font-size: 20px;
}
.scrollup:hover {
    color: #111111;
}

.header-content h1 {
    margin: 0px;
    line-height: 35px;
}
.header-text {
    text-transform: uppercase;
    letter-spacing: -3px;
}

.header-text-alternate {
    text-transform: uppercase;
    letter-spacing: -3px;
}

.header-text-small {
    font-size: 15px;
    line-height: 30px;
    margin-bottom: 28px;
    font-family: 'Ubuntu', sans-serif;
    color: #fff;
    letter-spacing: 0.5px;
}

.text-blue {
    color: #008ed2;
}

.text-grey {
    color: #464646 !important;
}

.logo-img {
    width: 200px;
}

.service-section {
    padding: 50px 0px;
}

.banner {
    background: rgb(149, 202, 228);
    background: -moz-linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    background: -webkit-linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    background: linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#95cae4",endColorstr="#026494",GradientType=1);
    color: white;
}

.banner a {
    color: #ffc107;
}

.banner h2 {
    letter-spacing: -1px;
    font-size: 40px;
    font-weight: 600;
}

.banner p {
    font-size: 20px;
    font-weight: 500;
}

body {
    font-family: 'Ubuntu', sans-serif;
}

.children-information {
    background: url('../children-min.jpg');
    background-position: top left;
    color: black;
}

.content-column {
}

.content-column h2 {
    font-size: 40px;
    margin-bottom: 20px;
    letter-spacing: -2px;
}

p {
    line-height: 20px;
}

.advantages {
    background-image: url(https://planodesaudegeral.pt/assets/images/doctor-arms-crossed-min.jpg);
    position: relative;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.advantages h2 {
    letter-spacing: -2px;
}

.service-item img {
    width: 100px;
    display: inline-block;
    vertical-align: top;
}
.service-item .titulo1 {
    display: inline-block;
    width: 180px;
    padding-left: 20px;
    margin-top: 13px;
}

.service-item {
    margin-bottom: 25px;
    position: relative;
    background-color: #f7f7f7;
    height: 170px;
    overflow: hidden;
    cursor: default;
}
.service-item:hover .front {
    margin-top: -200px;
    transition: 0.5s;
    transition-timing-function: ease-in-out;
}
.service-item .front {
    height: 200px;
    margin-top: 0px;
    transition: 0.5s;
    transition-timing-function: ease-in-out;
    padding: 35px 0px;
}
.service-item .back {
    height: 200px;
    padding: 15px;
    background: #008ed2;
    color: white;
}
.service-item .back h3 {
    color: white;
}
.service-item i {
    font-size: 40px;
    position: absolute;
    left: 10px;
    top: 34px;
    color: #008ed2;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    border-bottom: 2px solid transparent;
    height: 80px;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
.service-item:hover i {
    opacity: 1;
    color: white;
    height: 60px;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.service-item h3 {
    font-size: 22px;
}

.frontcontainer h3 {
    color: #989898;
    font-weight: 500;
    line-height: 23px;
}
.frontcontainer {
    width: 285px;
    margin: auto;
}

.service-item .titulo1.dlinhas {
    margin-top: 26px;
}

.price-table {
    background: url(../fixing-teeth-min.jpg);
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    color: white;
}

.price-column p {
    margin-top: -15px;
    line-height: 20px;
    margin: 0;
    padding: 0;
}

.price-column h2 {
    font-size: 40px;
    line-height: 40px;
    margin-top: 0;
    padding: 0;
    font-weight: 400;
    letter-spacing: -2px;
}

a .btn-main-primary {
    text-decoration: none;
}

.btn-main-primary {
    text-decoration: none;
    background-color: #008ed2;
    border: 2px solid #008ed2;
    font-size: 14px;
    padding: 12px 42px;
    display: inline-block;
    color: #fff;
    text-transform: capitalize;
    font-weight: 600;
    letter-spacing: 0.6px;
    border-radius: 4px;
    margin-top: 40px;
}

.faq {
    padding: 50px 0px;
    background: rgb(149, 202, 228);
    background: -moz-linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    background: -webkit-linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    background: linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#95cae4",endColorstr="#026494",GradientType=1);
    color: white !important;
}

.faq-link {
    color: white !important;
}

.faq-link:focus {
    outline: none !important;
    box-shadow: none;
}

[data-toggle='collapse'] i:before {
    content: '\f146';
    margin-right: 10px;
    color: white;
}

/* [data-toggle="collapse"] i:hover, .faq-link:hover{
  -webkit-animation: vibrate 0.6s ease-in-out infinite both;
    animation: vibrate 0.6s ease-in-out infinite both;
}

[data-toggle="collapse"].collapsed i:hover, .faq-link:hover{
  -webkit-animation: vibrate 0.6s ease-in-out infinite both;
    animation: vibrate 0.6s ease-in-out infinite both;
} */

[data-toggle='collapse'].collapsed i:before {
    content: '\f0fe';
    margin-right: 10px;
    color: white;
}

.redenacional {
    background-color: #d3dde7;
    padding: 75px 0px;
    color: #464646;
}

.info-box {
    display: -ms-flexbox;
    display: flex;
    min-height: 80px;
    position: relative;
}

.info-box .info-box-icon {
    border-radius: 0.25rem;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    text-align: center;
    font-size: 45px;
    width: 50px;
    margin-bottom: 0.5rem;
}

.info-box .info-box-content {
    -ms-flex: 1;
    flex: 1;
    padding: 5px 10px;
}

.info-box .info-box-text,
.info-box .progress-description {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #464646;
    font-weight: bold;
    letter-spacing: -2px;
}

.info-box .info-box-number {
    display: block;
    font-weight: 400;
    color: #008ed2;
    letter-spacing: -2px;
}

img {
    width: 100%;
    max-width: 100%;
    height: auto;
}

/*--------------------------------
    23. Footer CSS Start
----------------------------------*/

.main-footer .col-lg-6 {
    padding-left: 90px;
    padding-right: 90px;
}

.main-footer img {
    max-width: 194px;
}
.main-footer {
    background: #363839;
    padding: 80px 0 50px;
    background-repeat: repeat;
    position: relative;
}
.main-footer:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
}

.main-footer i {
    color: white;
    font-size: 30px;
    margin-right: 20px;
}

.main-footer h3 {
    color: #8c99a9 !important;
    margin-bottom: 20px;
}

.footer-col {
    padding-bottom: 30px;
}
.footer-col img {
    margin-bottom: 30px;
}
.footer-col h3 {
    color: #008ed2;
    font-size: 22px;
}
.footer-col h3 span {
    color: #008ed2;
}
.footer-col p {
    color: #ffffff;
}
.footer-col .top-para {
    margin-bottom: 20px;
}
.footer-col ul li {
    margin-bottom: 7px;
    padding-bottom: 7px;
    border-bottom: 1px solid #b3b3b3;
}
.footer-col ul li:last-child {
    border-bottom: none;
}
.footer-col ul li a {
    display: block;
    color: #ffffff;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.footer-col ul li a:hover {
    color: #008ed2;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.post-box {
    margin-bottom: 10px;
    position: relative;
    padding-left: 85px;
}
.footer-col .post-box img {
    position: absolute;
    left: 0;
    top: 0;
    width: 70px;
    height: 70px;
}
.post-box p {
    z-index: 1;
    line-height: 24px;
}
.post-box p a {
    color: #008ed2;
}
.address-col ul {
    margin-top: 20px;
}
.address-col ul li {
    border-bottom: none;
    color: #ffffff;
}
.address-col ul li i {
    width: 25px;
}

/*--------------------------------
    24. Copyright CSS Start
----------------------------------*/
.copyright-col p {
    margin: 0;
    padding: 0;
}
.copyright-bar {
    padding: 20px 0;
    background: #313131;
}
.footer-sociai-group {
    margin-bottom: 10px;
}
.footer-sociai-group a i {
    width: 35px;
    height: 35px;
    font-size: 15px;
    color: #ffffff;
    background: rgba(27, 27, 27, 0.75);
    text-align: center;
    line-height: 35px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.footer-sociai-group a i:hover {
    color: #ffffff;
    background: #008ed2;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.copyright-col p {
    color: #bdbcbc;
}
.copyright-col p a {
    color: #008ed2;
}

.footer-logo {
    float: right;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Ubuntu', sans-serif;
    font-weight: 400;
    margin-top: 0;
    padding: 0;
    text-transform: uppercase;
}

/* Preloader CSS */
/* Preloader */



#preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 99999999;
}
#status {
    width: 200px;
    height: 200px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-image: url(https://planodesaudegeral.pt/assets/images/logo/logo-2020-c.svg);
    background-repeat: no-repeat;
    background-position: center;
    margin: -100px 0 0 -100px;
}

/* Sticky Card  */


.sticky-card {
    width: 400px;
    max-width: 400px;
    z-index: 1000;
    /*
    max-height: 670px;
    min-height: 670px;
    height: 670px;
    */
    background: rgb(149, 202, 228);
    background: -moz-linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    background: -webkit-linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    background: linear-gradient(
        162deg,
        rgba(149, 202, 228, 1) 0%,
        rgba(0, 141, 210, 1) 52%,
        rgba(2, 100, 148, 1) 100%
    );
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#95cae4", endColorstr="#026494", GradientType=1);
    color: white;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 15px 15px 5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 15px 15px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 15px 15px 5px rgba(0, 0, 0, 0.1);
}

.sticky-card.fixed {
    position: fixed;
    top: 65px;
}

.sticky-card.bottom {
    position: absolute;
    top: 1300px;
}

.sticky-card-nav {
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    text-transform:uppercase;
}

.sticker-form-tab {
    background-color: transparent !important;
    color: white !important;
    font-weight: bold !important;
    border-bottom: none;
    display: inline-block;
}

.sticker-nav-link {
    background-color: #96c9e2 !important;
    color: white !important;
    margin-right: 1px;
    padding-top: 15px;
    padding-bottom: 15px;
    border-radius: 0% !important;
}

.sticker-nav-link.active {
    background-color: #68b7df !important;
    color: white !important;
    border-bottom: none;
}

.simular-counter {
    background: transparent;
    color: #eff314;
    border: none;
    cursor: pointer;
    font-size: 40px;
    font-weight: 600;
}

.counter-label {
    font-size: 40px;
    font-weight: 600;
}

.simular-counter:focus {
    outline: 0;
}

.simular-counter:hover {
    transition: 0.4s;
    color: #152127;
}

.card-tab-content {
    padding: 20px;
}

.btn-card-white {
    font-size: 14px;
    line-height: 20px;
    padding: 15px 18px;
    background-color: #ffffff !important;
    color: #008ed2 !important;
    text-transform: uppercase;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    transition: 0.2s;
}

.btn-card-white:hover {
    background-color: #008ed2 !important;
    color: #ffffff !important;
    border: 2px solid #ffc107;
}

.content-title {
    font-size: 26px;
    line-height: 34px;
    font-weight: 800;
    margin-bottom: 10px;
    text-transform: uppercase;
    text-align: left;
}

.content-error {
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    text-align: left;
}

.content-body {
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    text-align: left;
}

.contact-icon {
    color: #008ed2;
    font-size: 25px;
}

#erroagende:after {
    content: '\200b';
}

.sticky-card .form-step {
    /*height: 575px;
    max-height: 575px;*/
}

.simulation-button {
    font-size: 60px;
    cursor: pointer;
    transition: 0.2s;
}

.simulation-button:hover {
    color: #96c9e2;
}

.simulation-result-container {
    color: black;
    padding: 2rem;
    background-color: white;
    border: 2px solid #4a97bc;
    border-radius: 0.25rem;
    padding-top: 70px;
    padding-bottom: 70px;
}

.simulation-result {
    text-align: center;
    font-size: 2.8rem;
    font-weight: 700;
}

.simulation-second-value {
    margin-top: 30px;
}

.simulation-result-per-person {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 400;
}

.simulation-description-text {
    font-size: 18px;
    line-height: 20px;
}
.monthly-detail {
    font-size: 0.9rem;
    line-height: 1rem;
    font-weight: 200;
    text-align: justify;
    text-justify: inter-word;
}
ul li.result-detail {
    margin: 0 0 6px 0;
    font-size: 0.9rem;
}

ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.header-overlay {
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    height: 100vh;
    min-height: 500px;
    width: 100%;
    position: absolute;
}

@media only screen and (max-width: 374px) {
    .nav-justified .nav-item {
        flex-basis: auto;
    }
    .sticky-card {
        height: 100% !important;
        max-height: 100% !important;
    }
    .sticky-card .form-step {
        height: 100%;
        max-height: 100%;
    }
    .sticky-card {
        position: relative;
        z-index: 100;
        width: 100%;
        margin-top: 50px;
        max-width: 100%;
        align-self: center;
        top: 30px;
    }
}

@media only screen and (min-width: 375px) and (max-width: 424px) {
    .nav-justified .nav-item {
        flex-basis: auto;
    }
    .sticky-card {
        height: 100% !important;
        max-height: 100% !important;
    }
    .sticky-card .form-step {
        height: 100%;
        max-height: 100%;
    }
    .sticky-card {
        position: relative;
        z-index: 100;
        width: 100%;
        margin-top: 50px;
        max-width: 100%;
        align-self: center;
        top: 0%;
    }
	
	.location-list {
		margin-left: 30px;	
	}
}

@media only screen and (max-width: 1199px) {
    .service-item .titulo1.ulinha {
        margin-top: 37px;
    }
    .service-item .titulo1.tlinhas {
        margin-top: 24px;
    }
}

@media only screen and (min-width: 426px) and (max-width: 1199px) {
    .sticky-card {
        position: relative;
        z-index: 100;
        width: 100%;
        margin-top: 50px;
        max-width: 100%;
        align-self: center;
        top: 10%;
    }
    .sticky-card.fixed {
        top: 30px;
        bottom: 0px;
        max-height: 100%;
    }
    .sticky-card {
        position: relative;
        z-index: 100;
        width: 100%;
        margin-top: 50px;
        max-width: 100%;
        align-self: center;
        margin-left: 0px;
        top: 0%;
    }
	
	.location-list {
		margin-left: 30px;	
	}
}

@media only screen and (max-width: 575px) {
    .service-item .titulo1.dlinhasp {
        margin-top: 24px;
    }
}

@media only screen and (max-height: 748px) and (max-width: 1199px) {
    .sticky-card.fixed {
        top: 30px;
        bottom: 0px;
        max-height: 100%;
    }
}

@media (max-height: 760px) {
    .sticky-card.fixed {
        top: 30px;
        bottom: 0px;
        max-height: 100%;
    }
}

@media only screen and (max-width: 575px) {
    .footer-logo {
        float: none;
        margin: auto;
        display: block;
    }
    .address-col {
        text-align: center;
    }
	.location-list {
		margin-left: 30px;	
    }
    .mapa-prestadores {
        margin-top: 20px!important;
    }
    .info-box .info-box-icon {
        font-size: 40px;
    }
}

.no-btn {
	background: none;
	color: inherit;
	border: none;
	padding: 0;
	font: inherit;
	cursor: pointer;
	outline: inherit;
}