html {
  	overflow-x: hidden;
}

/* typography */

p {
	margin-bottom: 30px;
}

h1, h2, h3, h4 {
	padding-bottom: 30px;
}

h1 span, h2 span, h3 span, h4 span {
	color: var(--sparkycolor3);
}

.colored {
	color: var(--sparkycolor3);
	font-weight: 700;
}

.thin {
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}

.rounded50 {
	border-radius: 50%;
	border: 10px solid var(--sparkycolor2);
}

.rounded15 {
	border-radius: 15px;
	border: 10px solid var(--sparkycolor2);
}

/* form */

a.btn, a.sparky_button,  p.readmore a.btn, button.btn {
	background: var(--sparkycolor1);
	border: 0;
	border-radius: 10px;
	color: #fff;
	font-weight: 700;
	padding: 14px 30px;
}

a.btn:hover, a.sparky_button:hover, p.readmore a.btn:hover, button.btn:hover {
	background: var(--sparkycolor1);
	border: 0;
	color: var(--sparkycolor2);
}

.input-group .form-control {
	padding: 17px;
}

/* logorow */

.logorow {
	padding-bottom: 15px;
}

.logorow > .sparky_container > .sparky_cell {
	padding-top: 0;
}

.sparky_logo_image img {
	max-height: 70px;
	margin-top: 30px;
}

.logorow ul.menu > li > a,
.logorow ul.menu > li > span {
	padding-top: 15px;
	text-transform: uppercase;
}

.logorow nav:not(.opened) ul.menu > li:last-child {
	background: var(--sparkycolor1);
	border-radius: 0 0 10px 10px;
	margin-left: 30px;
}

.logorow nav:not(.opened) ul.menu > li:last-child > a {
	color: #fff;
	padding-left: 30px;
	padding-right: 30px;
}

.logorow nav:not(.opened) ul.menu > li:last-child > a:hover {
	color: var(--sparkycolor3);
}

.logorow nav:not(.opened) ul.menu ul {
	border-radius: 0 10px 10px 10px;
}

/* carouselrow */

.carouselrow > .sparky_container > .sparky_cell {
	padding-top: 0;
	padding-bottom: 100px;
}

.flickity-page-dots {
	text-align: left !important;
	margin: 0 -8px !important;
}

.flickity-page-dots .dot {
    width: 15px !important;
    height: 15px !important;
}

/* servicesrow */

.servicesrow .mp_advert2 > .moduletable {
	background: #fff;
	box-shadow: 0 0 15px rgba(0,0,0,0.15);
	border-radius: 15px;
	margin-top: -115px;
	padding: 15px;
}

/* bottomrow */

.bottomrow {
	color: #fff;
}

.bottomrow h1, .bottomrow h2, .bottomrow h3, .bottomrow h4 {
	color: #fff;
}

.bottomrow i {
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: #fff;
	border-radius: 50%;
	text-align: center;
}

.bottomrow i:hover {
	background: var(--sparkycolor2);
}

.bottomrow .sparky_social_icons a {
	color: var(--sparkycolor1);
}

.bottomrow .sparky_social_icons a:first-child {
	padding-left: 0;
}

.bottomrow .mp_bottom2.sparky_cell {
	padding-top: 0;
}

.bottomrow .mp_bottom2 p {
	margin: 0;
}

.bottomrow .mp_bottom2 a {
	color: #fff;
}

.bottomrow .mp_bottom2 i {
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: #fff;
	border-radius: 50%;
	text-align: center;
	color: var(--sparkycolor1);
	background: var(--sparkycolor2);
}

/* footerrow */

.footerrow {
	color: #fff;
	text-align: center;
	padding: 15px 0 30px;
}

/* home page */

.sparky_home .sparky_container > .content_sparky.sparky_cell {
	padding-bottom: 0;
}

.tabrow .sparky_cell {
	padding: 10px;
}

.tabrow .sparky_cell:first-child {
	border-radius: 15px 0 0 15px;
}

.tabrow .sparky_cell:last-child {
	border-radius: 0 15px 15px 0;
}

.tabrow figure img {
	margin-bottom: 0;
	border-radius: 10px;
}

.tabrow a.sparky_icon_link {
	text-align: center;
}

.tabrow a.sparky_icon_link > i.fas {
	display: inline-block;
	background: #eee;
	color: var(--sparkycolor1);
	width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
}

.tabrow a.sparky_icon_link > i.fas:hover {
	background: var(--sparkycolor2);
}

/* pricing */

.pricing_row > .sparky_page_container > .sparky_cell {
	box-shadow: 0 0 15px rgb(0 0 0 / 15%);
	border-radius: 15px;
}

.pricing_row .colored {
	margin-bottom: 0;
}

/* services */

.services_row .colored {
	margin-bottom: 0;
}

/* sidebar */

.content_sparky.sparkle9 {
	padding-right: 50px;
}

.mp_right .moduletable {
	box-shadow: 0 0 15px rgb(0 0 0 / 15%);
	border-radius: 15px;
	margin: 50px 0;
	padding: 15px;
}

.mp_right .moduletable h3 {
	padding-bottom: 15px;
}

/* blog */

.blog-items .blog-item {
	margin: 30px 0;
}

.blog-items .blog-item .item-image img {
	border-radius: 15px;
	border: 10px solid var(--sparkycolor2);
}

.abovecontent {
    padding: 30px 0;
}

/* contact */

.com-contact.contact dt {
    float: inline-start;
    clear: both;
    padding-top: 15px;
}

.com-contact.contact dd {
    padding-inline-start: 30px;
}

.com-contact.contact dt + dd {
    padding-top: 15px;
}

@media (min-width: 992px) {

    .com-contact.contact {
        display: flex;
        flex-wrap: wrap;
    }

    .com-contact.contact .page-header,
    .com-contact.contact h1 {
        width: 100%;
    }

    .com-contact__container {
        width: 34%;
    }

    .com-contact__form.contact-form {
        width: 66%;
        margin-top: 15px;
    }

    .com-contact__form.contact-form legend {
        background: transparent;
        padding: 15px 0;
        font-size: 24px;
        line-height: 1.4;
        font-weight: 700;
        text-transform: uppercase;
    }

    .com-contact.contact > h2 {
        display: none;
    }

}

/* responsive */

@media (max-width: 1200px) {

	.hot_swipe_carousel_slides .contents {
		top: 5% !important;
	}

	.hot_swipe_carousel_slides .contents h2 {
	    font-size: 48px !important;
	}

}

@media (max-width: 991px) {

	.logorow nav:not(.opened) ul.menu {
		display: none;
	}

	.nav-toggle {
		background: url(../images/tinynav.png);
    	background-size: 42px 84px;
    	margin-top: 40px;
	}

	.nav-collapse.opened > ul,
	.nav-collapse.opened li.active,
	.nav-collapse.opened li:hover,
	.nav-collapse.opened > ul ul {
	    background: var(--sparkycolor1);
	}

	.nav-collapse.opened li a:hover, .nav-collapse.opened li span:hover {
		color: var(--sparkycolor3) !important;
	}

	.logorow ul.menu > li > a, .logorow ul.menu > li > span {
	    padding-top: 0;
	}

	.flickity-page-dots {
		display: none;
	}

	.tabrow {
		padding-left: 15px;
		padding-right: 15px;
	}

	.content_sparky.sparkle9 {
	    padding-right: 15px;
	}

	.mp_bottom2 .sparky_page_container {
		display: block;
	}

	.mp_bottom2 .sparky_page_container .sparky_cell {
		float: left;
		padding-bottom: 0;
	}

	.mp_bottom2 .sparky_page_container .sparky_cell.sparkle1 {
		width: 20%;
		clear: both;
	}

	.mp_bottom2 .sparky_page_container .sparky_cell.sparkle5 {
		width: 80%;
		padding-top: 35px;
	}

}

@media (max-width: 767px) {

	.hot_swipe_carousel_slides .contents {
		top: 0 !important;
	}

	.hot_swipe_carousel_slides .contents h2 {
	    font-size: 32px !important;
	}

	.hot_swipe_carousel_slides .contents {
		font-size: 14px !important;
	}

	.tabrow .sparky_col0 {
		padding-right: 30px !important;
	}

}

@media (max-width: 580px) {

	.hot_swipe_carousel_slides .contents h2 {
	    font-size: 24px !important;
	    padding-bottom: 10px;
	}

	.hot_swipe_carousel_slides .contents p {
		margin-bottom: 10px;
	}

	.hot_swipe_carousel_slides .contents a.btn {
		padding: 7px 20px;
	}

}

@media (max-width: 450px) {

	.servicesrow .mp_advert2 > .moduletable {
		margin-top: -60px;
	}

	.carouselrow .flickity-viewport {
		min-height: 300px;
	}

	.carouselrow > .sparky_container > .sparky_cell {
		padding-bottom: 50px;
	}

	.hot_swipe_carousel_slides .contents a.btn {
		font-size: 12px;
		font-weight: 400;
	}

}

@media (max-width: 414px) {

	.tabrow .sparky_col0 {
		padding-right: 15px !important;
	}

	.tabrow .sparky_cell:first-child {
	    border-radius: 15px 15px 0 0;
	}

	.tabrow .sparky_cell:last-child {
	    border-radius: 0 0 15px 15px;
	}

	.tabrow .sparky_cell {
		margin-bottom: 0;
	}

	.tabrow a.sparky_icon_link {
		margin: 0;
	}
}

@media (max-width: 360px) {

	.hot_swipe_carousel_slides .contents h2 {
	    font-size: 20px !important;
	}

}

/* For DEMO purposes only. Can be safely deleted */

.sparky_settings {
    position: fixed;
    z-index: 9999;
    top:70%;
    padding: 0 5px;
    background: #000;
    border-radius: 0 6px 6px 0;
    cursor: pointer;
    line-height: 1.4;
}

.sparky_settings:hover {
    background: #000;
}

.settings_content {
    display: none;
    float: left;
    padding-right: 15px;
    height: 28px;
}

.settings_content span {
    display: inline-block;
    width: 28px;
    height: 28px;
    border:3px solid #333;
    border-radius: 19px;
}

.settings_content span:hover {
    border:3px solid #fff;
}

.settings_content span.style1 {
    background: #6eefc9;
}

.settings_content span.style2 {
    background: #FCA3B0;
}

.settings_content span.style3 {
    background: #FFB039;
}

.settings_content span.style4 {
    background: #9CD4EB;
}

.settings_content span.style5 {
    background: #E7F9A9;
}

.settings_content a {
    text-decoration: none;
}

.settings_cog {
    float: left;
    width: 30px;
    height: 28px;
}

.sparky_settings i {
    font-size: 28px;
    color: #eee;
}