/* layout */

body {
    overflow-x: hidden;
}

/* typography */

h4 {
    text-transform: uppercase;
}

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

.intro_row {
    background: var(--sparkycolor2) url(../images/intro_bg.png);
    background-size: 512px 512px;
    padding-top: 30px;
    padding-bottom: 60px;
    margin-top: -115px;
}

.intro_row h1 {
    text-shadow: 3px 3px white;
}

.intro_row p {
    color: #000;
    text-shadow: 2px 2px white;
}

p.colored + h1,
p.colored + h2,
p.colored + h3,
p.colored + h4 {
    padding-top: 0;
}

.thin {
    max-width: 600px;
    margin: 15px auto;
}

.has-huge-font-size {
    font-weight: 700;
}

/* form */

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

input::placeholder, textarea::placeholder {
    color: #888;
}

button, button.btn, input.button, a.btn, p.readmore a.btn, a.sparky_button {
    background: var(--sparkycolor1);
    border:1px solid var(--sparkycolor1);
    border-radius: 23px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 35px;
    padding: 5px 30px;
    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:1px solid #000;
    color: #fff !important;
    text-decoration: none;
    transition: all 0.3s;
}

a.sparky_button.outline {
    background: transparent;
    border:1px solid var(--sparkycolor1);
    color: var(--sparkycolor1);
}

a.sparky_button.outline:hover {
    background: transparent;
    border:1px solid #000;
    color: #000 !important;
}

.input-group .btn {
    height: 46px;
    line-height: 1;
    margin-left: -7px !important;
    padding: 10px 15px;
}

.btn-group {
    margin-bottom: 30px;
}

.btn-group input {
    margin-bottom: 0;
}

/* logorow */

.logorow p {
	margin-bottom: 0;
}

.logorow nav:not(.opened) ul.menu > li:not(.parent):hover {
    border-radius: 23px;
}

.logorow nav:not(.opened) ul.menu > li.parent:hover {
    border-radius: 23px 23px 0 0;
}

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

.logorow a.sparky_icon_link {
    margin: 0;
}

.logorow a.sparky_icon_link:hover i {
    color: var(--sparkycolor1) !important;
}

.logorow .sparky_page_container a {
    color: #777;
    font-weight: 400;
}

.logorow .sparky_page_container a:hover {
    color: var(--sparkycolor1);
}

/* contentrow */

.sparky_inner .contentrow {
    background: url(../images/header_bg2.png) top center no-repeat;
    background-size: 100%;
    padding-top: 60px;
    padding-bottom: 50px;
}

.page-header {
    margin: 50px 0;
}

.login .contentrow > .sparky_container,
.register .contentrow > .sparky_container  {
    max-width: 600px;
    margin: 0 auto;
}

/* carouselrow */

.carouselrow > .sparky_container > .sparky_cell {
	padding: 0;
}

.carouselrow .contents * {
	max-width: 50%;
}

.carouselrow h2 {
	padding-bottom: 30px;
}

.carouselrow a.btn {
	margin-top: 20px;
}

.flickity-prev-next-button {

}

.flickity-prev-next-button:hover {

    border: 0 !important;
}

.flickity-prev-next-button:hover .arrow {
    fill: var(--sparkycolor1) !important;
}

/* introduction_row */

.introduction_row {
    position: relative;
    border-radius: 50px;
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.3);
}

.introduction_row figure img {
    border-radius: 50px 0 0 50px;
    margin-bottom: 0;
}

.introduction_row p,
.introduction_row h1,
.introduction_row h2,
.introduction_row h3,
.introduction_row h4,
.introduction_row hr {
    max-width: 400px;
}

/* counters */

.counter_container .counter_field {
    text-align: initial !important;
    margin-top: 0 !important;
    margin-bottom: 15px !important;
    padding-inline-end: 50px !important;
}

.counter_container .counter_number {
    color: var(--sparkycolor1) !important;
    font-family: 'Playfair Display', serif;
    font-weight: bold;
    margin: 0 0 15px !important;
}

.counter_container .counter_text {
    font-weight: bold;
}

/* aroma */

.aroma_row .sparky_col1 {
    display: block;
}

.aroma_row .sparky_col1 figure {
    max-width: 120px;
    float: left;
    margin-right: 30px;
    margin-bottom: 15px;
}

.aroma_row .sparky_col1 h4 {
    padding-top: 5px;
}

.aroma_pic {
    border-radius: 50%;
}

.aroma_row .sparky_col1 hr {
    clear: both;
    color: transparent;
    margin: 0;
}

/* products_row */

.products_row {
    position: relative;
    background: #fff;
    border-radius: 50px;
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.3);
}

.products_row::after {
    content: " ";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: -120px;
    right: -120px;
    width: 300px;
    height: 300px;
    background: url(../images/leaves.png) no-repeat;
    background-size: contain;
}

/* teamrow */

.teamrow .rounded {
    border-radius: 50% !important;
}

/* pricingrow */

.pricingrow .sparky_cell {
    background: var(--sparkycolor2);
    border-radius: 30px;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
}

.pricingrow figure {
    margin: -15px;
}

.pricingrow figure img {
    width: 100%;
    margin-bottom: 30px;
    border-radius: 30px 30px 0 0;
}

/* testimonialrow */

.testimonialrow1 {
    border-radius: 50px 0 0 50px;
}

.testimonialrow2 {
    border-radius: 0 50px 50px 0;
}

.testimonialrow1 .sparkle4, .testimonialrow2 .sparkle4 {
    background: var(--sparkycolor2);
    border-radius: 30px;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
}

/* blog */

.blog-items {
    justify-content: flex-start;
    margin-left: -30px;
    margin-right: -30px;
}

.blog-items.columns-3 .blog-item {
    width: calc(33.33% - 60px);
    margin: 0 30px 50px;
}

.blog-items .page-header {
    margin: 0;
}

/* contact */

.com-contact.contact dt {
    float: inline-start;
    clear: both;
    padding-top: 15px;
    padding-inline-end: 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;
    }

}

/* bottomrow */

.bottomrow {
    padding: 2px 0;
}

.bottomrow h3 {
    color: #777;
    font-family: 'Nunito', sans-serif;
    font-size: 16px;
    font-weight: 700;
    margin-top: 15px;
}

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

.bottomrow .sparky_social_icons a:hover {
    color: #000;
}

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

.bottomrow ul.menu {
    margin-top: 10px;
}

.bottomrow ul.menu li {
    width: 50%;
}

/* footerrow */

.footerrow {
    padding-bottom: 30px;
    text-align: center;
}

.footerrow p.copyright {
    font-size: 14px;
    border-top: 1px solid #fff;
    padding-top: 30px;
    margin-bottom: 0;
}

/* responsive */

@media (max-width: 1130px) {

    .hot_swipe_carousel_slides .contents {
        top: 20% !important;
        left: 10% !important;
    }

}

@media (max-width: 991px) {

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

    .hot_swipe_carousel_slides .contents {
        width: 720px !important;
        top: 10% !important;
        margin: 0 !important;
        background: rgba(255,255,255,0.5) !important;
    }

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

    .carouselrow .contents * {
        max-width: 80%;
    }

    .noid .counter_number {
        font-size: 24px !important;
    }

    .introduction_row > .sparky_page_container > .sparky_cell:first-child {
        justify-content: flex-start !important;
    }

}

@media (max-width: 767px) {

    .introduction_row {
        margin-top: 0 !important;
    }

    .blog-items {
        margin-left: 0;
        margin-right: 0;
    }

    .blog-items.columns-3 .blog-item {
        width: 100%;
        margin: 0 0 50px;
    }

    .products_row::after {
        right: 0;
    }

}

@media (max-width: 600px) {

    .logorow.one > .sparky_container > .mp_logo {
        width: 70% !important;
        padding-bottom: 0;
    }

    .logorow.one > .sparky_container > .mp_top1 {
        width: 30% !important;
        padding-bottom: 0;
    }

    .logorow.one > .sparky_container > .mp_top2 {
        width: 100% !important;
        padding-top: 0;
        padding-bottom: 0;
    }

    .logorow.one > .sparky_container > .mp_top2 p {
        text-align: initial !important;
    }

    .logorow .sparky_page_container .sparky_cell {
        margin-bottom: 0;
    }

    .hot_swipe_carousel_slides .contents {
        padding-top: 15px !important;
        left: 0 !important;
    }

    .flickity-prev-next-button {
        display: none;
    }

}

@media (max-width: 414px) {

    .counter_container .counter_field {
        padding-inline-end: 0 !important;
    }

    .noid .counter_number {
        font-size: 40px !important;
        text-align: center;
    }

    .counter_container .counter_text {
        text-align: center;
    }

    .introduction_row a.sparky_button {
        margin-left: auto;
        margin-right: auto;
    }

    h1, h1 a {
        font-size: 40px;
    }

}


/* 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: #269b29;
}

.settings_content span.style2 {
    background: #267b9b;
}

.settings_content span.style3 {
    background: #9b2626;
}

.settings_content span.style4 {
    background: #97269b;
}

.settings_content span.style5 {
    background: #9b7026;
}

.settings_content a {
    text-decoration: none;
}

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

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


