body {
    color: #bfc1c8;
    font-family: Roboto, "Open Sans", sans-serif;
    font-size: 14px;
    line-height: 1.5;
    background-color: #1e202b;
}

/***********************************  Spinner   *************************************/

.spinner {
    margin: auto;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.loader {
    transform: rotateZ(45deg);
    perspective: 1000px;
    border-radius: 50%;
    width: 150px;
    height: 150px;
    color: #fff;
}

.loader:before,
.loader:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: inherit;
    height: inherit;
    border-radius: 50%;
    transform: rotateX(70deg);
    animation: 1s spin linear infinite;
}

.loader:after {
    color: #FF3D00;
    transform: rotateY(70deg);
    animation-delay: .4s;
}

@keyframes rotate {
    0% {
        transform: translate(-50%, -50%) rotateZ(0deg);
    }

    100% {
        transform: translate(-50%, -50%) rotateZ(360deg);
    }
}

@keyframes rotateccw {
    0% {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    100% {
        transform: translate(-50%, -50%) rotate(-360deg);
    }
}

@keyframes spin {

    0%,
    100% {
        box-shadow: .2em 0px 0 0px currentcolor;
    }

    12% {
        box-shadow: .2em .2em 0 0 currentcolor;
    }

    25% {
        box-shadow: 0 .2em 0 0px currentcolor;
    }

    37% {
        box-shadow: -.2em .2em 0 0 currentcolor;
    }

    50% {
        box-shadow: -.2em 0 0 0 currentcolor;
    }

    62% {
        box-shadow: -.2em -.2em 0 0 currentcolor;
    }

    75% {
        box-shadow: 0px -.2em 0 0 currentcolor;
    }

    87% {
        box-shadow: .2em -.2em 0 0 currentcolor;
    }
}

/***********************************  Spinner   *************************************/


.logo h1 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
}

.logo small {
    font-size: 10px;
    font-weight: 300;
    color: rgb(191, 193, 200);
    display: block;
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.nav-item {
    margin-left: 10px;
}

.nav-link {
    border: 2px solid transparent;
    border-radius: 30px;
    padding: 5px 25px;
    color: white;
    transition: 0.3s ease;
}

.nav-link:focus {
    color: white;
}

.nav-item:hover .nav-link,
.navbar-nav .nav-link.active {
    border-color: #009ad8;
    color: #009ad8;
}

header {
    background-image: url(../images/banner.png);
    background-size: cover;
    padding: 70px 0;
    min-height: 350px;
}

.search {
    background-color: #1e202b;
    padding: 20px 50px 20px 20px;
    color: white;
    border: 0;
    border-radius: 30px;
    width: 100%;
    outline: 0;
}

button[type="submit"] {
    top: 5px;
    right: 5px;
    bottom: 5px;
    background-color: #009ad8;
    color: white;
    border: 0;
    border-radius: 30px;
    padding: 10px 50px;
}

.btn:hover {
    background-color: #009ad8;
    color: white;
}

:not(.btn-check)+.btn:active {
    background-color: #009ad8;
    color: white;
}

.forecast {
    margin-top: -150px;
    padding: 20px 0 50px;
    border-radius: 10px;
}

.weather-card .weather {
    background-color: #323544;
}

.bgToday {
    background-image: url(../images/sun.gif);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.forecast-container {
    background-color: #323544;
    border-radius: 10px;
}

sub {
    vertical-align: super;
}

.header {
    background-color: rgba(0, 0, 0, 0.1);
    padding: 10px;
    text-align: center;
}

.content {
    padding: 30px 20px;
}

.bgToday .temperature {
    font-size: 90px;
}

.text-color {
    color: #009ad8;
}

.bgTomorrow {
    /* background-color: #262936; */
    background-image: url(../images/spring.gif);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.forecast-content {
    padding: 50px 20px 10px;
}

.bgAfterTomorrow {
    background-image: url(../images/mountains.gif);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

footer {
    background: #262936;
    padding: 50px 0;
}

footer .search {
    background-color: #1e202b;
}

footer button[type="submit"] {
    padding: 10px 15px;
}

.social-links a {
    display: inline-block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #1e202b;
    color: #009ad8;
    font-size: 20px;
    transition: 0.4s ease;
    line-height: 2;
    margin-left: 5px;
}

.social-links a:hover {
    background-color: #009ad8;
    color: white;
}