/* general */
body {
    color: #343a40;
    font-size: 1.0rem; /* general font-size */
    overflow-x:hidden !important;
}

/* navbar header */
.navbar-header a.nav-link {
    color: #45bcec !important;
    text-decoration: none;
    background-color: transparent;
    border-bottom:1px solid transparent;
    padding: 0 0 0 0 !important;
    margin: 0 0 0 20px;
    font-weight:bold !important;
}
.navbar-header a.nav-link:hover {
    color: #45bcec !important;
    border-bottom:1px solid #45bcec;
}
.navbar-header .dropdown:hover > .dropdown-menu {
    display: block;
}
.navbar-header .dropdown-menu {
    border: 0;
    border-top: 10px solid #ebebeb;
    font-size: 90%;
    background: #45bcec;
    border-radius: unset !important;
    margin-top:0;
    padding-top:10px !important;
}
.navbar-header a.dropdown-item {
    color: #f8f9fa !important;
    background-color: transparent;
    border: 0;
    padding: 6px 20px 6px 20px !important;
}
.navbar-header ul li.active a.nav-link {
    border-bottom:1px solid #45bcec;
}
/* fin navbar header */

.container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1368px;
}

.logo-link img  {
    width: 100% !important;
    max-width:155px !important;
    padding-left:10px;
    height: auto !important;
}
/* end general */

/* bootstrap navbar */
.toolbar {
    height:56px;
}
.navbar {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.3);
    z-index: 999;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right:20px;
}
.fixed-top {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    animation: smoothScroll 0.5s forwards;
}
/* end bootstrap navbar */
@keyframes smoothScroll {
    0% {opacity:0;}
    100% {opacity:1;}
}
.fixed-top .logo {
    width:150px !important;
}
/* end bootstrap navbar */

/* backgrounds color */
a, a.btn {
    transition: .3s;
}
.bg-primary {
    background-color: #343a40 !important;
    color: #ebebeb;
}
.bg-primary a {
    text-decoration: none;
    color: #ffffff;
}
.bg-primary a:hover {
    text-decoration: none;
    color: #45bcec;
}
.bg-primary .text-muted {
    color: #f4f5f5 !important
}
.bg-primary hr {
    background: transparent !important;
    border-bottom:1px solid #45bcec;
}
.bg-secondary, .cc-window {
    background-color: #ebebeb !important;
}
.bg-secondary a {
    text-decoration: none;
    color: #45bcec;
}
.bg-secondary a:hover {
    text-decoration: none;
}
.bg-light a:not(a.btn-primary), a {
    text-decoration: none;
    color: #45bcec !important;
}
.bg-light a:hover, a:hover {
    text-decoration: none;
    opacity: 0.7;
}

/* end background color */

/* end carousel & page header */
.carousel-home .carousel-item {
    background-position: center center !important;
    background-attachment: scroll !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    padding-top:150px;
    padding-bottom:150px;
    max-height:500px !important; /* cancel jQuery */
}
.page-header {
    background-position: center center !important;
    background-attachment: scroll !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    height:250px;
}
.carousel-posts .card-img, .carousel-posts .card-img-top, .card-footer:last-child, .card {
    border-radius: 0 !important;
}
.carousel-posts .carousel-indicators {
    position: unset !important;
    margin-top: 20px !important;
}




/* end carousel & page header */

/* buttons */
.btn, .cc-btn {
    min-width: unset !important;
    border: none !important;
    padding: 12px 30px 12px 30px !important;
    border-radius: 25px !important;
}
.btn-primary, .cc-btn  {
    background-color: #45bcec !important;
    color: #ffffff !important;

}
.btn-secondary  {
    background-color: #ffc107 !important;
    color: #343a40 !important;
}
.btn-primary, .btn-secondary, .cc-btn {
    font-weight: 700 !important;
    font-size: unset;
}
/* end buttons

/* texts and links */
.text-reading {
    text-align:justify;
    padding-left: 250px;
    padding-right:250px;
}
.text-shadow  {
    text-shadow: 0 0 15px rgba(0,0,0,0.6), 0 0 10px rgba(0,0,0,0.6);
}
.cc-window {
    font-size: unset;
    color:#ffffff !important;
}
h1, h2, h3, h4 {
    font-weight: 700 !important;
}
h1 {
    font-size: 2.8em;
    padding-bottom:20px;
}
h2 {
    font-size: 2.0em;
    padding-top: 30px;
    padding-bottom: 30px;
}
h3 {
    font-size: 1.6em;
}
h4 {
    font-size: 1.4em;
}

.carousel-home h4, .page-header h4 {
    color: #ffffff !important;
    font-size: 3.3em;
    padding-left: 10px;
    padding-right: 10px;
}
ul {
    /*list-style-type: "> ";*/
    margin: 0 0 15px 15px;
    padding: 0 0 0 0;
}
.widget_archive a {
    text-transform: capitalize !important;
}
.pagination .page-numbers, .pagination .nav-previous a span i, .pagination .nav-next a span i  {
    display: inline-block;
    padding: 5px 10px;
    margin: 0 2px 0 0;
    border: 1px solid #eee;
    line-height: 1;
    border-radius: 2px;
}
.pagination .nav-next  {
    position:absolute;
    right:0;
    margin-right:12px;
}
.pagination .nav-next a span i {
    margin: 0 0 0 8px;
}
.pagination .page-numbers.current, .pagination a.page-numbers:hover  {
    text-decoration: none;
}

.carousel-home .carousel-indicators li {
}
.carousel-posts .carousel-indicators li {
    background-color:#343a40 !important;
}
.carousel-indicators li {
    height: 25px !important;
    width: 25px !important;
    border-radius: 50% !important;
    display: inline-block !important;
}
.wp-block-cover.is-light .wp-block-cover__inner-container {
    color: #ffffff !important;
}
.cc-message {
    color:#343a40 !important;
}
/* texts and links */
/* forms */
input, textarea, select, .btn, .wpcf7-response-output {
    /*border-radius: 25px !important;*/
}
.wpcf7-response-output {
    border-radius: 10px !important;
    margin:0 !important;
}
input, textarea, select {
    border:1px solid #dadada;
}
input[type="text"], input[type="tel"], input[type="email"], input[type="search"], select {
    height: 45px;
    padding-left:20px;
    padding-right:20px;
}
input[type="text"], input[type="tel"], input[type="email"] {
    height: 45px;
    padding-left:20px;
    padding-right:20px;
}
input[type="file"] {
    border-radius: 10px !important;
    padding:20px;
}
textarea {
    padding:10px 20px 10px 20px;
    resize: none;
    box-sizing:border-box !important;
    width:100% !important;
}
.wpcf7-form label, .wpcf7-form input:not(.btn), .wpcf7-form select {
    width:100%;
}
.wpcf7-form label br {
    margin-bottom:5px;
}
.wpcf7-form span[role="alert"] {
    margin-top:5px;
}

.wpcf7-quiz-label {
    display:block;
    margin-bottom:5px;
}
/* end forms */

/* hacks */
.screen-reader-text {
    display:none;
}
.single.single-post table td {
    box-sizing: border-box;
    padding:10px !important;
    border:1px solid #626363 !important;
}
/* end hacks */

.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

@media (min-width: 0px) and (max-width: 575px) {
    /*html:before { content: 'xs'; }*/
}
@media (min-width: 576px) and (max-width: 767px) {
    /*html:before { content: 'sm'; }*/
}
@media (min-width: 768px) and (max-width: 991px) {
    /*html:before { content: 'md'; }*/
}
@media (max-width: 992px) {
    .navbar-header ul {
        margin-top: 20px;
    }
    h1, .carousel h4 {
        font-size: 1.9em;
    }
    .text-reading {
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media (max-width: 992px) {
    .navbar-header a.nav-link {
        border:0;
        color:#ffffff;
        margin: 0;
        padding: 10px 15px 10px 15px !important;
    }
    .navbar-header a.nav-link:hover {
        border:0;
    }
    .navbar-header .dropdown-menu {
        border: 0;
        padding: 8px 0 10px 0 !important;
        font-size: 95%;
        background: #ffffff;
    }
    .navbar-header a.dropdown-item {
        padding: 5px 8px 5px 15px !important;
        color: #21546b !important;
    }
    .navbar-header .menu-item:not(:last-child) {
        /*border-bottom:1px solid #626363;*/
    }
}
