body {
    font-family: "calibri", sans-serif;
}

/*-----logo, navigation, homepage banner-----*/

@media screen and (max-width: 499.98px) {
#homepage-banner {
	/*background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);*/
    background: linear-gradient(-60deg, #ad58c7, #1ed1d4, #f26df0, #e3b007);
	/*background-size: 400% 400%;*/
    background-size: 300% 300%;
	animation: gradient 15s ease infinite;
	height: 80vh;
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.logo {
    padding: 20px 0 0 10px;
}

.title-1 {
    font-size: 1.8em;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    padding-top: 100px;
    font-family: "comfortaa", sans-serif;
}

.title-2 {
    font-size: 1em;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    padding-top: 50px;
    font-family: "comfortaa", sans-serif;
}
    
.gif-image {
    display: block;
    margin: 0 auto;
    width: 40px; 
    margin-top: 30px;
}
}

/*--------*/

@media screen and (min-width: 450px) {
#homepage-banner {
	/*background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);*/
    background: linear-gradient(-60deg, #ad58c7, #1ed1d4, #f26df0, #e3b007);
	/*background-size: 400% 400%;*/
    background-size: 300% 300%;
	animation: gradient 15s ease infinite;
	height: 80vh;
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.logo {
    padding: 20px 0 0 10px;
}

.title-1 {
    font-size: 2.4em;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    padding-top: 120px;
    font-family: "comfortaa", sans-serif;
}

.title-2 {
    font-size: 1.1em;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    padding-top: 50px;
    font-family: "comfortaa", sans-serif;
}
    
.gif-image {
    display: block;
    margin: 0 auto;
    width: 50px; 
    margin-top: 30px;
}
}

/*---------*/

@media screen and (min-width: 750px) {
#homepage-banner {
	/*background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);*/
    background: linear-gradient(-60deg, #ad58c7, #1ed1d4, #f26df0, #e3b007);
	/*background-size: 400% 400%;*/
    background-size: 300% 300%;
	animation: gradient 15s ease infinite;
	height: 80vh;
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.logo {
    padding: 20px 0 0 10px;
}

.title-1 {
    font-size: 3.5em;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    padding-top: 120px;
    font-family: "comfortaa", sans-serif;
}

.title-2 {
    font-size: 1.5em;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    padding-top: 50px;
    font-family: "comfortaa", sans-serif;
}
    
.gif-image {
    display: block;
    margin: 0 auto;
    width: 60px; 
    margin-top: 30px;
} 
}

/*--Navigation Bar--*/

ul {
    list-style-type: none;
}

.btn-primary {
    background-color: #000;
    color: #fff;
    border: none;
    margin: 10px;
    z-index: 8;
    padding: 5px 10px;
    font-size: 1.5em;
    top: 10px;
    right: 10px;
    transition-duration: 1s;
}

.btn-primary:hover {
    background-color: rebeccapurple;
} 

.btn-primary:focus {
    background-color: #000;
    border-color: none;
    box-shadow: none;
}

.offcanvas-start {
    width: 190px;
}

.offcanvas {
    background-color: #000;
    color: #fff;
    opacity: 0.8;
    padding: 0 0 0 20px;
}

.btn-close {
    opacity: 1;
    font-size: 3em;
}

.btn-close:focus {
    background-color: #000;
    border-color: none;
    box-shadow: none;
}

.main li {
    font-size: 2em;
    line-height: 2;
}

.main a {
    text-decoration: none;
}

.main a:hover {
    color: #42e3e0;
    transition-duration: 1s
}

.main a {
    color: #fff;
}

.social .bi {
    font-size: 2.5em;
    text-decoration-color: none;
    padding-left: 8px;
}

.social .bi:hover {
    color: #42e3e0;
}

.social a {
    color: #fff;
}

.offcanvas-title {
    padding-left: 10px;
}

/*----------about------------------------*/

#about {
    background-color: #241647;
    margin: 0px 0 15px 0;
    padding: 100px 0 120px 0;
}

.about-header {
    text-align: center;
    padding: 0 0 50px 0 ;
    font-size: 2.5em;
    color: #fff;
    font-family: "comfortaa", sans-serif;
}

#about p {
    color: #fff;
    font-size: 1.5em;
    line-height: 1.8;
}

.custom-shape-divider-bottom-1700019398 {
    position: absolute;
    bottom: 19%;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.custom-shape-divider-bottom-1700019398 svg {
    position: relative;
    display: block;
    width: calc(181% + 1.3px);
    height: 150px;
}

.custom-shape-divider-bottom-1700019398 .shape-fill {
    fill: #241647;
    opacity: 1;
}

/*--------website design------------------------*/

#website-design {
    background-color: #fff;
    margin: 0px 0 1px 0;
    padding: 100px 0 150px 0;
    box-shadow: 20px 20px 50px 15px grey;
}

.website-design-header {
    text-align: center;
    padding: 0 0 50px 0 ;
    font-size: 2.5em;
    color: #241647;
    font-family: "comfortaa", sans-serif;
}

#website-design p {
    color: #555;
    font-size: 1.5em;
    line-height: 1.8;
}

.features-header {
    margin: 100px 0 0 0;
    font-size: 2.2em;
    color: #241647;
}

#website-design p {
    margin-bottom: 10px;
}

#website-design img {
    padding: 5px;
    border: 1px solid #bfbfbf;
    box-shadow: 5px 5px 3px #aaaaaa;
    filter: brightness(100%);
}

#website-design img:hover {
    filter: brightness(120%);
}

#website-design h4 {
    margin: 50px 0 10px 0;
}

/*--------email design------------------------*/

#email-design {
    background-color: #fff;
    margin: 0px 0 50px 0;
    padding: 100px 0 120px 0;
    box-shadow: 10px 10px 25px 8px grey;
}

#email-design p {
    color: #555;
    font-size: 1.5em;
    line-height: 1.8;
}

#email-design img {
    display: block;
    height: 600px;
    /*margin: 0 auto;*/
    margin-left: 50px;
    padding: 5px;
    border: 1px solid #bfbfbf;
    box-shadow: 5px 5px 3px #aaaaaa;
    filter: brightness(100%);
}

#email-design img:hover {
    filter: brightness(110%);
}

#email-design h4 {
    text-align: left;
    margin-top: 70px;
}

#email-design li {
    list-style-type: square;
    font-size: 1.3em;
}

/*--------packages------------------------*/

#packages {
    background-color: #fff;
    padding: 100px 0 120px 0;
}

#packages h2 {
    color: #241647;
}

#packages h3 {
    color: #241647;
    margin: 50px 0 0 0;
    text-align: center;
    padding: 0 0 40px 0 ;
    font-weight: 600;
    font-size: 1.8em;
}

#packages p {
    color: #555;
    font-size: 1.5em;
    line-height: 1.5;
}

.pricing {
    text-align: center;
    font-weight: 600;
    margin-top: 40px;
}

.left-package,.right-package {
    background-color: #fff;
    border-radius: 20px;
    padding: 0 20px 30px 20px;
    width: 500px;
    margin: 50px auto;
    border: solid 1px #999;
    box-shadow: 5px 5px 3px #aaaaaa;
}

#packages img {
    display: block;
    width: 500px;
    margin: 20px auto 0;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

#packages a {
    display: block;
    color: #fff;
    text-decoration: none;
    background-color: #241647;
    font-size: 1.2em;
    padding: 5px 10px;
    border-radius: 20px;
    width: 320px;
    text-align: center;
    margin: 15px auto;
    transition-duration: 1s;
}

#packages a:hover {
    background-color: rebeccapurple;
}

/*--------demos------------------------*/

#demos {
    background-color: #fff;
    margin: 0px 0 1px 0;
    padding: 100px 0 150px 0;
    box-shadow: 20px 20px 50px 15px grey;
}

/*.website-design-header {
    text-align: center;
    padding: 0 0 50px 0 ;
    font-size: 2.5em;
    color: #241647;
    font-family: "comfortaa", sans-serif;
}*/

#demos p {
    color: #555;
    font-size: 1.5em;
    line-height: 1.8;
}

.features-header {
    margin: 100px 0 0 0;
    font-size: 2.2em;
    color: #241647;
}

#demos p {
    margin-bottom: 10px;
}

#demos img {
    padding: 5px;
    border: 1px solid #bfbfbf;
    box-shadow: 5px 5px 3px #aaaaaa;
    filter: brightness(100%);
}

#demos img:hover {
    filter: brightness(120%);
}

#demos h4 {
    margin: 50px 0 10px 0;
}

/*--------hosting------------------------*/

#hosting {
    background-color: #241647;
    padding: 100px 0 120px 0;
    box-shadow: 10px 10px 25px 8px grey;
    margin: 0 0 0px 0;
}

#hosting h2 {
    color: #fff;
}

.bi-globe-americas {
    display: block;
    font-size: 8em;
    color: #fff;
    margin: 0 auto;
    text-align: center;
}

#hosting p {
    color: #fff;
    font-size: 1.5em;
    line-height: 1.8;
}

#hosting h4 {
    text-align: center;
    font-weight: 600;
    color: #000;
    font-size: 1.5em;
    border-bottom: solid 1px #241647;
    padding-bottom: 10px;
}

.pricing-boxes {
    text-align: center;
    padding-top: 10px;
    font-size: 1em;
}

.boxes {
    border-radius: 20px;
    width: 350px;
    margin: 15px auto;
    padding: 20px 5px 0 5px;
    background-image: linear-gradient(to bottom, #1cedd8, #233dc2);
}

/*--------web app dev------------------------*/

#web-app-dev {
    padding: 150px 0 150px 0;
    background-image: linear-gradient(to bottom, #e3980e, #ba419a);
}

#web-app-dev h2 {
    color: #fff;
}

#web-app-dev p {
    font-size: 1.5em;
    line-height: 1.8;
    color: #fff;
}

.bi-laptop {
    display: block;
    font-size: 8em;
    color: #fff;
    margin: 0 auto;
    text-align: center;
}

.featured-web-apps {
    background-color: #fff;
    border-radius: 50px;
    margin: 100px auto;
    padding: 50px 15px 100px 15px;
}

#web-app-dev .fwa-sub-header {
    color: #241647;
    text-align: center;
    font-size: 2.5em;
    padding: 50px 0 0 0;
}

#web-app-dev h3 {
    color: #241647;
    text-align: center;
    margin-top: 100px;
    font-size: 2em;
}

.featured-web-apps img {
    display: block;
    margin: 25px auto;
}

#web-app-dev .fwa-text{
    color: #777;
    text-align: center;
    line-height: 1.5;
    font-size: 1.4em;
}

#web-app-dev .fwa-text-small{
    color: #777;
    text-align: center;
    line-height: 1.5;
    font-size: 1em;
}

#web-app-dev .thumbnail {
    display: inline-block;
    border: 1px solid #ddd; 
    border-radius: 4px;  
    padding: 5px; 
    width: 100px; 
    height: 60px;
    margin: 0 auto;
    
}

#web-app-dev .thumbnail-row {
    text-align: center;
}

#web-app-dev .thumbnail:hover {
    box-shadow: 0 0 2px 1px rgba(0, 140, 186, 0.5);
    
}

#web-app-dev .web-app-link {
    display: block;
    text-decoration: none;
    text-align: center;
    font-size: 1.2em;
    margin: 15px auto;
    background-color: #241647;
    color: #fff;
    width: 320px;
    border-radius: 20px;
    padding: 5px 10px;
    transition-duration: 1s;
}

#web-app-dev .web-app-link:hover {
    background-color: rebeccapurple;
}

/*--------contact us------------------------*/

#contact-us {
    background-color: #241647;
    padding: 100px 0;
    margin-bottom: 75px;
    box-shadow: 10px 10px 25px 8px grey;
}

#contact-us h2 {
    color: #fff;
}

.bi-envelope-at {
    display: block;
    font-size: 8em;
    color: #fff;
    margin: 0 auto;
    text-align: center;
}

#contact-us p {
    color: #fff;
    font-size: 1.4em;
    line-height: 1.8;
}

#contact-us a {
    text-decoration: none;
    color: #fff;
    background-color: darkcyan;
    padding: 5px 10px;
    border-radius: 10px;
    transition-duration: 1s;
}

#contact-us a:hover {
    background-color: rebeccapurple;
}

/*------------footer-----------------------*/

/*
footer {
    text-align: center;
    font-size: 1.1em;
}
*/

@media screen and (max-width: 767.98px) {
footer {
    text-align: right;
    padding: 10px 20px 10px 10px;
    background-color: #222;
    color: #fff;
}

footer p {
    font-size: 1.2em;
}

footer .btn {
    float: left;
    margin: 0 10px;
    background-color: transparent; 
    border: none;
    font-size: 1.2em;
    color: rgb(161, 240, 240);
}

footer .btn:hover {
    background-color: rebeccapurple;
}

footer h5 {
    font-size: 2em;
    color: #000;
    margin: 0 auto;
}

footer .offcanvas-header {
    border-bottom: solid 1px #000;
    margin-bottom: 50px;
}

footer .offcanvas {
    height: 93% !important;
    width: 100%;
    text-align: left; 
    padding-bottom: 50px;
    color: #000;
    background-color: #fff;
}
    
footer ul {
    list-style-type: disc;
}

#copyright {
    display: inline-block;
    text-align: center;
    margin-top: 30px;
}
}

/*---------*/

@media screen and (min-width: 768px) {
footer {
    text-align: center;
    padding: 10px 20px 10px 10px;
    background-color: #222;
    color: #fff;
}

footer p {
    font-size: 1.2em;
}

footer .btn {
    float: center;
    margin: 0 10px;
    background-color: transparent; 
    border: none;
    font-size: 1.2em;
    color: rgb(161, 240, 240);
}

footer .btn:hover {
    background-color: rebeccapurple;
    
}

footer h5 {
    font-size: 2.5em;
    color: #000;
    margin: 0 auto;
}

footer .offcanvas-header {
    border-bottom: solid 1px #000;
    margin-bottom: 50px;
}

footer .offcanvas {
    height: 93% !important;
    width: 100%;
    text-align: left; 
    padding-bottom: 50px;
    color: #000;
    background-color: #fff;
  
}

footer ul {
    list-style-type: disc;
}

#copyright {
    display: inline-block;
    text-align: center;
    margin-top: 30px;
}   
}

