body {
	overflow-x: hidden;
}

/* typography */

h1 {
	text-transform: uppercase;
}

h1 span {
	font-size: 36px;
	display: block;
}

.has-huge-font-size {
	font-size: 60px;
	font-weight: 700;
	color: var(--sparkycolor1);
}

.maxwidth700 {
	max-width: 700px;
}

.tick::after {
	content: " ";
	display: block;
	width: 50px;
	height: 2px;
	margin-top: 5px;
	background: var(--sparkycolor1);
}

.tick_center::after {
	content: " ";
	display: block;
	width: 50px;
	height: 2px;
	margin: 5px auto 0;
	background: var(--sparkycolor1);
}

.mark_bottom_left {
	margin-bottom: 100px;
}

.mark_bottom_left img {
	padding-left: 30px;
	padding-bottom: 30px;
}

.mark_bottom_left figure::after {
	content: " ";
	display: block;
	width: 50%;
	height: 140%;
	margin-top: -60%;
	background: var(--sparkycolor1);
}

.mark_bottom_right {
	margin-bottom: 100px;
}

.mark_bottom_right img {
	padding-right: 30px;
	padding-bottom: 30px;
}

.mark_bottom_right figure::after {
	content: " ";
	display: block;
	width: 50%;
	height: 123%;
	margin-top: -57%;
	margin-left: 50%;
	background: var(--sparkycolor1);
}

.sparky_page_container > .sparky_cell {
    padding: 30px;
}

/* form */

input, input.form-control, textarea, textarea.form-control, select.form-select {
    width: 100%;
    border: 1px solid #e0e0e0;
    border-radius: 0;
    padding: 10px 20px;
    margin-bottom: 15px;
}

button, button.btn, input.button, a.btn, p.readmore a.btn, a.sparky_button {
    background: var(--sparkycolor1);
    border: 0;
    border-radius: 0;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    line-height: 30px;
    padding: 7px 25px;
    text-transform: uppercase;
    transition: all 0.3s;
}

button:hover, button.btn:hover, button.btn-primary:hover, input.button:hover, a.btn:hover,
button:active, button.btn:active, button.btn-primary:active, input.button:active, a.btn:active,
button:focus, button.btn:focus, button.btn-primary:focus, input.button:focus, a.btn:focus,
p.readmore a.btn:hover, p.readmore a.btn:active, p.readmore a.btn:focus,
a.sparky_button:hover, a.sparky_button:active, a.sparky_button:focus {
    background: #000;
    border: 0;
    color: #fff !important;
    text-decoration: none;
    transition: all 0.3s;
}

.input-group .btn {
	height: 46px;
}

/* logo row */

/* change value of 365px to increase/descrease the black backgound */
.logo_row, .carousel_row {
	background: url(../images/bg.png) no-repeat top right;
	background-size: calc((100% - 1110px) / 2 + 363px) 100%;
}

.logo_row.fix_menu {
	background: var(--sparkycolor2) !important;
}

.logo_row.fix_menu .sparky_container > .sparky_cell {
    padding: 15px 30px;
}

.sparky_container > .sparky_cell.mp_logo {
	padding-left: 45px;
}

.carousel_row > .sparky_container {
	padding-bottom: 30px;
}

/* the last 3 menu items are white */
.logo_row ul.menu > li:nth-last-of-type(1) > a,
.logo_row ul.menu > li:nth-last-of-type(2) > a,
.logo_row ul.menu > li:nth-last-of-type(3) > a,
.logo_row ul.menu > li:nth-last-of-type(1) > span,
.logo_row ul.menu > li:nth-last-of-type(2) > span,
.logo_row ul.menu > li:nth-last-of-type(3) > span {
	color: #fff;
}

.logo_row.fix_menu ul.menu > li:nth-last-of-type(1) > a,
.logo_row.fix_menu ul.menu > li:nth-last-of-type(2) > a,
.logo_row.fix_menu ul.menu > li:nth-last-of-type(3) > a,
.logo_row.fix_menu ul.menu > li:nth-last-of-type(1) > span,
.logo_row.fix_menu ul.menu > li:nth-last-of-type(2) > span,
.logo_row.fix_menu ul.menu > li:nth-last-of-type(3) > span {
	color: inherit;
}

.logo_row ul.menu > li:hover > a,
.logo_row ul.menu > li:hover > span {
	color: #212121 !important;
}

.mp_logo span {
	font-weight: 400;
}

.logo_row ul.menu ul a:hover {
	font-weight: 700;
}

/* carousel row */

.carousel_row .flickity-prev-next-button {
	top: 110% !important;
	width: 30px !important;
    height: 30px !important;
    background: transparent;
}

.carousel_row .flickity-prev-next-button:hover {
	background: transparent;
}

.carousel_row .flickity-prev-next-button .arrow {
    fill: #999;
}

.carousel_row .flickity-prev-next-button:hover .arrow {
    fill: #fff;
}

/* testimonials slider */

.hot_swipe_carousel_slides_testimonials .gallery-cell {
	display: flex;
	border: 1px solid var(--sparkycolor2);
}

.hot_swipe_carousel_slides_testimonials img {
    width: 200px !important;
    height: 200px;
    margin-right: 30px;
    position: relative;
    z-index: 1;
}

.hot_swipe_carousel_slides_testimonials .contents {
    position: relative !important;
    padding-right: 30px !important;
}

.hot_swipe_carousel_slides_testimonials .contents h2 {
	padding-bottom: 0;
}

.hot_swipe_carousel_slides_testimonials .contents .rating {
	color: orange;
}

.hot_swipe_carousel_slides_testimonials .flickity-page-dots {
	position: relative;
	padding: 0 15px 0 0;
	margin-top: 60px;
}

.sparky_home .hot_swipe_carousel_slides_testimonials .flickity-page-dots {
	top: -340px !important;
	text-align: right !important;
	margin-top: 30px;
}

.hot_swipe_carousel_slides_testimonials  .flickity-page-dots .dot {
	width: 12px !important;
	height: 12px !important;
	background: #aaa !important;
}

.hot_swipe_carousel_slides_testimonials .flickity-page-dots .dot.is-selected {
	width: 12px !important;
	height: 12px !important;
	background: #000 !important;
}

/* scroller */

.scroller_row {
	background: url(../images/bg.png) no-repeat bottom left;
	background-size: 40% 180px;
}

/* contact row */

.contact_row {
	margin: 30px 0;
	padding: 50px 0 20px;
	background: var(--sparkycolor3);
}

/* blog */

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

.blog-items .blog-item .pull-left {
	margin-right: 30px;
}

.blog-items .blog-item .pull-right {
	margin-left: 30px;
}


.blog-items .blog-item .pull-left img,
.blog-items .blog-item .pull-right img,
.blog-items .blog-item .left img,
.blog-items .blog-item .right img {
	max-width: 400px;
}

.blog-items .blog-item .sparky_page_container .sparky_cell {
	padding: 5px;
}

/* from our blog module */

.blog_row {
	margin-bottom: 50px;
}

.mod-articlesnews.newsflash {
	display: flex;
	align-items: flex-start;
}

.mod-articlesnews.newsflash .mod-articlesnews__item {
	display: flex;
    flex-direction: column-reverse;
    margin: 0 15px;
	width: 100%;
}

.mod-articlesnews.newsflash .mod-articlesnews__item .newsflash-title {
	position: relative;
	margin-top: -60px;
	margin-left: 30px;
	padding: 10px;
	background: #fff;
}

.mod-articlesnews.newsflash .mod-articlesnews__item .newsflash-title a {
	font-weight: 700;
}

/* bottom row */

.bottom_row, .bottom_row a {
	color: #fff;
}

.bottom_row .sparky_page_container {
	justify-content: center;
}

.mp_bottom1.sparky_cell {
	padding-top: 60px;
}

.bottom_row h3 {
	color: #fff;
	font-weight: 400;
	text-align: center;
}

.bottom_row .input-group {
	justify-content: center;
}

.bottom_row button.btn {
	background: var(--sparkycolor2);
	color: var(--sparkycolor1);
	height: 46px;
}

.bottom_row button.btn:hover {
	color: #000 !important;
}

.bottom_row a:hover {
	color: var(--sparkycolor2);
}

/* footer row */

.footer_row {
	text-align: center;
}

.footer_row p {
	color: rgba(255,255,255,0.5);
}

/* pricing row */

.pricingrow h2 {
	padding-bottom: 0;
}

.pricingrow .has-huge-font-size {
	line-height: 1;
	margin-bottom: 0;
}

.pricingrow .sparky_cell {
	border: 1px solid var(--sparkycolor2);
	transition: all 0.3s;
}

.pricingrow .sparky_cell:hover {
	background: var(--sparkycolor1);
	transition: all 0.3s;
}

.pricingrow .sparky_cell:hover p,
.pricingrow .sparky_cell:hover h1,
.pricingrow .sparky_cell:hover h2,
.pricingrow .sparky_cell:hover h3,
.pricingrow .sparky_cell:hover h4,
.pricingrow .sparky_cell:hover ul {
	color: #fff;
}

.pricingrow .sparky_cell:hover a.sparky_button {
	background: #fff;
	color: var(--sparkycolor1);
}

.pricingrow .sparky_cell:hover a.sparky_button:hover {
	color: #000 !important;
}

/* team row */

.teamrow .sparky_cell {
	border: 1px solid var(--sparkycolor2);
}

.teamrow figure {
	position: relative;
	margin: -30px -30px 15px -30px;
    left: 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 {
        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 */

.nav-toggle {
	background: url(../images/tinynav_white.png);
    background-size: 42px 84px;
}

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

@media (max-width: 1139px) {

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

	.hot_joomla_carousel_slides .flickity-prev-next-button.next {
	    right: 180px !important;
	}

	.hot_joomla_carousel_slides .flickity-prev-next-button.previous {
	    left: 180px !important;
	}

	.logo_row ul.menu > li:hover > a,
	.logo_row ul.menu > li:hover > span {
		color: #fff !important;
	}

}

@media (max-width: 991px) {

	.carousel_row .sparky_container {
		display: flex;
		flex-direction: column-reverse;
	}

	.carousel_row .sparky_container .sparky_cell {
		width: 100%;
	}

	.hot_joomla_carousel_slides .flickity-prev-next-button.next {
	    right: 40% !important;
	}

	.hot_joomla_carousel_slides .flickity-prev-next-button.previous {
	    left: 40% !important;
	}

	.hot_swipe_carousel_slides_testimonials .gallery-cell {
		width: 99% !important;
	}

	.sparky_home .hot_swipe_carousel_slides_testimonials .flickity-page-dots {
	    top: 0px !important;
	}

}

@media (max-width: 767px) {

	.sparky_container > .sparky_cell {
	    padding: 15px;
	}

	.sparky_page_container > .sparky_cell {
	    padding: 15px;
	}

	.logo_row .sparky_cell.mp_logo {
		width: 60% !important;
	}

	.logo_row .sparky_cell.mp_top1 {
		width: 40% !important;
	}

	.carousel_row {
		background: transparent;
	}

	.logo_row {
		background: var(--sparkycolor2);
	}

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

	h1 {
		font-size: 40px;
		word-wrap: break-word;
	}

	h1 span {
		font-size: 24px;
	}

	.flickity-slider {
		background: #000;
	}

	.hot_swipe_carousel_slides_testimonials .gallery-cell {
		width: 99% !important;
	}

	.blog-items .blog-item .item-image img {
	    width: 100%;
	    max-width: 100%;
	}

	.blog-items .blog-item .pull-left,
	.blog-items .blog-item .pull-right {
	    margin-left: 0;
	    margin-right: 0;
	    float: none;
	}

	.blog-items .blog-item .sparky_page_container .sparky_cell {
	    padding: 15px;
	}

	.mark_bottom_left figure::after, .mark_bottom_right figure::after {
		display: none;
	}

	.mark_bottom_left img, .mark_bottom_right img {
	    padding-left: 0;
	    padding-right: 0;
	    padding-bottom: 0;
	}

	.mod-articlesnews.newsflash {
		flex-direction: column;
	}

	.mod-articlesnews.newsflash .mod-articlesnews__item {
		margin: 0 0 30px;
	}

	.hot_swipe_carousel_slides_testimonials .gallery-cell {
		display: block;
	}

	.hot_swipe_carousel_slides_testimonials .contents {
		background: #fff !important;
	}

	.hot_swipe_carousel_slides_testimonials img {
		width: 100% !important;
		height: auto;
		margin-right: 0;
	}

	.sparky_home .hot_swipe_carousel_slides_testimonials .flickity-page-dots {
		text-align: center !important;
	}

	.teamrow figure {
		position: relative;
		margin: -15px -15px 15px -15px;
	    left: 0;
	}

	.mark_bottom_left .sparky_cell, .mark_bottom_right .sparky_cell {
		margin-top: 0 !important;
		margin-bottom: 0 !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 5px 5px 0;
    cursor: pointer;
    line-height: 1.4;
}

.sparky_settings:hover {
    background: #000;
}

.sparky_settings .sparky_cell {
	padding: 15px;
}

.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: #212121;
}

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

.settings_content span.style3 {
    background: #041a43;
}

.settings_content span.style4 {
    background: #054304;
}

.settings_content span.style5 {
    background: #432f04;
}

.settings_content a {
    text-decoration: none;
}

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

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