/* GLOBAL STYLES
-------------------------------------------------- */

:root {
    --color-blue: #424ed1;
    --color-blue-rgb: 66, 78, 209;
    --color-orange: #f2671e;
    --color-orange-rgb: 242, 103, 30;
}


/*
BLUE
-------------------------*/

.text-blue {
    color: var(--color-blue);
}

.bg-blue {
    background-color: rgba(var(--color-blue-rgb), var(--bs-bg-opacity, 1));
}

.btn-blue {
    background-color: rgba(var(--color-blue-rgb), var(--bs-bg-opacity, 1));
    color: #ffffff;
    border: 1px solid #ffffff;
    font-weight: 300;
}

.btn-blue:hover,
.btn-blue:focus,
.btn-blue:focus-within {
    background-color: rgba(var(--color-orange-rgb), var(--bs-bg-opacity, 1));
    color: var(--bs-light);
    border: 1px solid var(--bs-light);
    text-shadow: none;
}

.text-bg-blue {
    background-color: rgba(var(--color-blue-rgb), var(--bs-bg-opacity, 1)) !important;
    color: #ffffff !important;
}

.border-blue {
    --bs-border-opacity: 1;
    border-color: rgba(var(--color-blue-rgb), var(--bs-border-opacity)) !important;
}


/*
ORANGE
-------------------------*/

.text-orange {
    color: var(--color-orange);
}

.bg-orange {
    background-color: rgba(var(--color-orange-rgb), var(--bs-bg-opacity, 1));
}

.btn-orange {
    background-color: rgba(var(--color-orange-rgb), var(--bs-bg-opacity, 1));
    color: #ffffff;
    border: 1px solid #ffffff;
    font-weight: 300;
}

.btn-orange:hover,
.btn-orange:focus,
.btn-orange:focus-within {
    background-color: rgba(var(--color-blue-rgb), var(--bs-bg-opacity, 1));
    color: var(--bs-light);
    border: 1px solid var(--bs-light);
    text-shadow: none;
}

.text-bg-orange {
    background-color: rgba(var(--color-orange-rgb), var(--bs-bg-opacity, 1)) !important;
    color: #ffffff !important;
}

.border-orange {
    --bs-border-opacity: 1;
    border-color: rgba(var(--color-orange-rgb), var(--bs-border-opacity)) !important;
}


/* HTML
-------------------------------------------------- */

html {
    scroll-behavior: smooth;
    scroll-padding-top: 120px;
}


/* BODY
-------------------------------------------------- */

body {
    font-family: 'Titillium Web', sans-serif;
    ;
    /*  font-size: 1.125rem;*/
    /*letter-spacing: 1px;
  word-spacing: 1px;*/
}


/* SELECT OPTION
-------------------------------------------------- */

select option {
    color: var(--color-dark-blue);
    background: #ffffff;
    /* hover on select */
}

select option:selected,
select:hover>option:hover {
    /*optional rendered */
    color: #ffffff;
    background-color: var(--color-dark-blue);
}


/* A LINK
-------------------------------------------------- */

a {
    color: rgba(var(--color-orange-rgb), var(--bs-link-opacity, 1));
    text-decoration: none;
}

a:hover {
    color: rgba(var(--color-blue-rgb), var(--bs-link-opacity, 1));
    text-shadow: none;
}


/*
SHADOW
-------------------------------------------------- */

.png-shadow {
    filter: drop-shadow(1px 1px 1px var(--bs-dark));
    -webkit-filter: drop-shadow(1px 1px 1px var(--bs-dark));
}

.text-shadow {
    text-shadow: 1px 1px 2px var(--bs-dark);
}

.text-white-shadow {
    text-shadow: 1px 1px 2px var(--bs-white);
}


/*
SECTION PADDING
------------------------- */
.section-padding-50 {
    padding: 50px 0;
}

.section-padding-80 {
    padding: 80px 0;
}

.section-padding-100 {
    padding: 100px 0;
}

.section-padding-150 {
    padding: 150px 0;
}


/* HOME OWL CAROUSEL
-------------------------------------------------- */

#home-carousel.owl-carousel .item {
    position: relative;
    z-index: 1;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    margin: auto;
    width: 100%;
    /*  height: 500px;*/
    height: calc(100vh - 175px);
}

#home-carousel.owl-carousel .item:before {
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-color: rgba(var(--bs-black-rgb), .45);
}

#home-carousel.owl-carousel .owl-dots {
    margin: 0;
    position: absolute;
    top: 50%;
    right: 0;
    transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
}

#home-carousel.owl-carousel .owl-dots .owl-dot span {
    width: 15px;
    height: 15px;
    margin: 5px 10px;
    background: transparent;
    border: 3px solid #fefefe;
}

#home-carousel.owl-carousel .owl-dots .owl-dot.active span,
#home-carousel.owl-carousel .owl-dots .owl-dot:hover span {
    background: #ffffff;
}

#home-carousel.owl-carousel .owl-item h1,
#home-carousel.owl-carousel .owl-item p,
#home-carousel.owl-carousel .owl-item a {
    visibility: hidden;
}

#home-carousel.owl-carousel .owl-item.active h1 {
    visibility: visible;
    -ms-animation: fadeUp 1s;
    /* Internet Explorer*/
    animation: fadeUp 1s;
}

#home-carousel.owl-carousel .owl-item.active p {
    visibility: visible;
    -ms-animation: fadeUp 2s;
    /* Internet Explorer*/
    animation: fadeUp 2s;
}

#home-carousel.owl-carousel .owl-item.active a {
    visibility: visible;
    -ms-animation: fadeUp 3s;
    /* Internet Explorer*/
    animation: fadeUp 3s;
}


/* HOME OWL CAROUSEL
-------------------------------------------------- */

#about-carousel.owl-carousel .owl-item .item {
    height: 100%;
}

#about-carousel.owl-carousel .owl-nav {
    margin: 0;
}

#about-carousel.owl-carousel .owl-nav button.owl-next,
#about-carousel.owl-carousel .owl-nav button.owl-prev {
    position: absolute;
    background: var(--color-blue);
    color: #ffffff;
    border: 1px solid var(--color-blue);
    top: 50%;
}

#about-carousel.owl-carousel .owl-nav button.owl-next:hover,
#about-carousel.owl-carousel .owl-nav button.owl-prev:hover {
    position: absolute;
    background: var(--color-orange);
    color: #ffffff;
    border: 1px solid var(--color-orange);
    text-shadow: none;
}

#about-carousel.owl-carousel .owl-nav button.owl-prev {
    left: 0;
}

#about-carousel.owl-carousel .owl-nav button.owl-next {
    right: 0;
}


/*
WAYPOINT ANIMATION
------------------------- */

.waypoint_animate .to_fade_up,
.waypoint_animate .to_fade_from_left,
.waypoint_animate .to_fade_from_right {
    visibility: hidden;
}

.waypoint_animate .fade_up {
    visibility: visible;
    -ms-animation: fadeUp 2s;
    /* Internet Explorer*/
    animation: fadeUp 2s;
}

.waypoint_animate .fade_from_left {
    visibility: visible;
    -ms-animation: fadeFromLeft 1s;
    /* Internet Explorer*/
    animation: fadeFromLeft 1s;
}

.waypoint_animate .fade_from_right {
    visibility: visible;
    -ms-animation: fadeFromRight 1s;
    /* Internet Explorer*/
    animation: fadeFromRight 1s;
}


@keyframes fadeUp {
    0% {
        filter: alpha(opacity=0);
        opacity: .1;
        transform: translateY(100px);
    }

    100% {
        filter: alpha(opacity=100);
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeFromLeft {
    0% {
        filter: alpha(opacity=0);
        opacity: .1;
        transform: translateX(-100%);
    }

    100% {
        filter: alpha(opacity=100);
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeFromRight {
    0% {
        filter: alpha(opacity=0);
        opacity: .1;
        transform: translateX(100%);
    }

    100% {
        filter: alpha(opacity=100);
        opacity: 1;
        transform: translateX(0);
    }
}


/*
NAVBAR
------------------------- */

.fixed-top {
    /*top: -120px;
  transform: translateY(120px);
  transition: transform 1s;*/
}

#main-navigation .nav-item .nav-link {
    color: var(--bs-secondary);
    font-weight: 600;
}

#main-navigation .dropdown-item {
    color: #222222;
}

#main-navigation .nav-item.active .nav-link,
#main-navigation .nav-item:hover .nav-link,
#main-navigation .dropdown.active .nav-link {
    background-color: var(--bs-light);
    color: var(--color-blue);
    border-bottom: 3px solid var(--color-blue);
}

#main-navigation .dropdown .dropdown-item:hover,
#main-navigation .dropdown.active .dropdown-item.active,
#main-navigation .dropdown.active .dropdown-item:hover {
    color: #ffffff;
    background-color: var(--color-blue);
}

@media (min-width: 768px) {
    #main-navigation .dropdown:hover .dropdown-menu {
        display: block;
    }
}


/*
PAGE TITLE
-------------------------*/

#page-title {
    position: relative;
    z-index: 1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 50px 0;
}

#page-title:before {
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-color: rgba(var(--color-blue-rgb), .5);
}


/*
SECTION BG
-------------------------*/

#section-bg {
    position: relative;
    z-index: 1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

#section-bg:before {
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-color: rgba(var(--color-blue-rgb), .5);
}


/*
COUNTER SECTION
-------------------------*/

.counterWrap .item {
    text-align: center;
}

.counterWrap .item p.number {
    font-size: 45px;
    padding: 0;
    font-weight: bold;
}

.counterWrap .item p,
.counterWrap .item big {
    /*  color: #ffffff;*/
    margin: 0;
    padding: 10px;
}

.counterWrap .item p {
    font-size: 18px;
}

.counterWrap .item sup {
    font-size: 25px;
    top: 0.7em;
}


/*
FORM CONTROL
-------------------------*/

/*.form-control, input[type="checkbox"] { --bs-border-color: var(--color-blue); }*/


/*
NAV UNDERLINE
-------------------------*/

.nav-underline .nav-link.active,
.nav-underline .show>.nav-link {
    --bs-nav-underline-link-active-color: var(--color-orange);
}


/*
FOOTER
-------------------------*/

footer .list-group a,
footer p,
footer ul.list-group li {
    color: var(--bs-secondary);
    /*  font-size: 17px;*/
    line-height: 30px;
}

footer .list-group a:hover {
    color: var(--color-orange);
}

.copyrights a,
.copyrights div {
    color: var(--bs-gray-600);
}

.copyrights a:hover {
    color: var(--color-orange);
}


/*
WHATSAPP ICON
-------------------------*/

#whatsapp-icon {
    position: fixed;
    bottom: 45px;
    left: 20px;
    z-index: 999;
    border: none;
}


/*
SCROLL TOP
-------------------------*/

#scroll-top {
    position: fixed;
    bottom: 45px;
    right: 20px;
    opacity: 0;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
    transform: scale(0.5) translateY(150px);
    z-index: 999;
    border-radius: 50%;
    border: none;
    background-color: var(--color-blue);
    color: #ffffff;
}

#scroll-top.show {
    opacity: 1;
    transform: scale(1) translateY(0);
}

#scroll-top .bi {
    transition: transform 0.3s ease-in-out;
}

#scroll-top:hover {
    background-color: var(--color-orange);
    color: #ffffff;
    transform: scale(1.1) translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

#scroll-top:hover .bi {
    transform: rotate(-180deg) scale(1.2);
}