/* BASE
================================================== */

body {
    font-size: 1rem;
    line-height: 1.875;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
}

body, input, button, textarea {
    font-family: Muli, Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    line-height: 1.125;
    margin-top: 0;
    margin-bottom: 2rem;
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 800;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span,
.h1 span, .h2 span, .h3 span, .h4 span, .h5 span, .h6 span {
    font-weight: 400;
}

p,
ul,
ol,
table,
figure,
blockquote {
    margin-bottom: 2rem;
}

a, input, textarea, button {
    -webkit-transition: color .2s ease-out, background-color .2s ease-out, border-color .2s ease-out, opacity .2s ease-out;
            transition: color .2s ease-out, background-color .2s ease-out, border-color .2s ease-out, opacity .2s ease-out;
}

a,
a:focus,
a:active,
a:hover {
    text-decoration: none;
}

*, *:focus {
    outline: none !important;
}

img {
    max-width: 100%;
}

figure img {
	width: 100%;
	height: auto;
}

ul,
ol {
    padding-left: 1.125rem;
}

li {
    margin-bottom: .5rem;
    line-height: 1.5;
}

strong,
b {
    font-weight: 900;
}

/* LAYOUT
================================================== */

/*
	Header
*/

.header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 70px;
    padding: 0 15px;
    -webkit-transition: left .5s;
            transition: left .5s;
}

    .header__logo,
	.custom-logo-link {
        display: block;
        height: 30px;
    }

    .header__logo,
    .header__logo:hover,
    .header__logo:focus,
	.custom-logo-link,
	.custom-logo-link:hover,
	.custom-logo-link:focus {
        color: inherit;
    }

        .header__logo img,
		.custom-logo-link img {
            display: block;
			width: auto;
            height: 100%;
        }

        .header__logo .blogname {
            margin: 0;
            line-height: 1;
            font-size: 30px;
            font-family: Montserrat, Arial, sans-serif;
            font-weight: 800;
        }

/*
	Footer
*/

.footer {
    font-size: .875rem;
}

.footer__top {
    padding-top: 5rem;
    padding-bottom: 2rem;
}

	.footer ul {
		padding-top: .25rem;
	}

        .footer li a {
            display: inline-block;
            border-bottom: 1px solid transparent;
        }

    .footer__logo {
        display: inline-block;
        margin-bottom: 2rem;
    }

    .footer__title {
        font-size: 1.125rem;
    }

    .footer .widget {
        margin-bottom: 2rem;
    }

    .footer .menu {
        padding-left: 0;
        list-style-type: none;
    }

		.footer .menu > li > a {
			padding-top: 0;
			padding-bottom: 0;
		}

    .copyright {
        padding: 2rem 0;
        text-align: center;
    }

        .copyright a {
            color: inherit;
            text-decoration: underline;
        }

        .copyright a:hover {
            text-decoration: none;
        }

/*
    Sidebar
*/

.widget {
    margin-bottom: 8rem;
}

	.widget ul {
		padding-left: 0;
		list-style-type: none;
	}

		.widget li {
			margin-bottom: .5rem;
			
		}

		.widget li:last-child {
			margin-bottom: 0;
		}

			.widget li a {
				display: inline-block;
				padding: .5rem 0;
				border-bottom: 1px solid transparent;
				color: inherit;
			}

/* SECTIONS
================================================== */

.section {
    padding-top: 5rem;
    padding-bottom: 3rem;
}

.section__pretitle {
    margin-bottom: 1rem;
    font-size: 1.125rem;
    opacity: .8;
}

    .section__title span {
        font-weight: 400;
    }

.section__pretitle.text-center,
.section__title.text-center,
.section__description.text-center {
	margin-left: auto;
    margin-right: auto;
}

.section__title.text-center {
	max-width: 900px
}

.section__description.text-center {
	max-width: 700px
}

.section--fullscreen {
    min-height: calc(100vh - 70px);
}

.section--middle {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    align-items: center;
}

    .section--middle__inner {
        width: 100%;
    }

/*
    Section portfolio
*/

.section--portfolio .section__title {
    max-width: none;
    margin-bottom: 2rem;
}

.section--portfolio .portfolio-box__text {
    position: relative;
    visibility: visible;
    margin-bottom: 2rem;
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
}

.section--portfolio .section__title + .portfolio-box__text {
    margin-top: -2rem;
}

/*
    Intro
*/

.intro {
    position: relative;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    text-align: center;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

    .intro__inner {
        position: relative;
        z-index: 2;
        max-width: 850px;
    }

        .intro__inner > *:last-child {
            margin-bottom: 0;
        }

    .intro__title {
        font-size: 3.5rem;
        line-height: 1;
    }

        .intro__title .section__pretitle {
            display: block;
            font-weight: 800;
        }

    .intro__bg,
    .intro__bg canvas {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .intro .input-icon .form-control {
        background-color: transparent;
    }

.intro--fullscreen {
    height: calc(100vh - 70px);
}

.intro--bg {
    background-position: left center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
}

.intro--bg:after {
    position: absolute;
    content: "";
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .7;
}

/*
    Entry
*/

.entry a {
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.entry iframe,
.entry video,
.entry audio {
	width: 100%;
}

/* MODULES
================================================== */

/*
    Carousels
*/

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin-left: 10px;
    margin-right: 10px;
}

.swiper-button-next,
.swiper-button-prev {
    width: 4.5rem;
    height: 4.5rem;
    text-align: center;
    font-size: 1.5rem;
    line-height: 4.5rem;
    margin-top: -2.25rem;
    opacity: 0;
    -webkit-transition: all .2s ease-out;
            transition: all .2s ease-out;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 0;
}

.swiper-button-prev:hover,
.swiper-container-rtl .swiper-button-next:hover {
    left: 0;
    padding-right: .5rem;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 0;
}

.swiper-button-next:hover,
.swiper-container-rtl .swiper-button-prev:hover {
    right: 0;
    padding-left: .5rem;
}

.swiper-container:hover .swiper-button-next,
.swiper-container:hover .swiper-button-prev {
    opacity: 1;
}

.swiper-pagination-bullet {
    position: relative;
    width: 20px;
    height: 20px;
    background: transparent;
    border-radius: 0;
    opacity: 1;
}

.swiper-pagination-bullet:before,
.swiper-pagination-bullet:after {
    position: absolute;
    content: "";
    z-index: -1;
    top: 50%;
    right: 0;
    left: 0;
    height: 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    -webkit-transition: all .2s ease-out;
            transition: all .2s ease-out;
}

.swiper-pagination-bullet:hover:before,
.swiper-pagination-bullet-active:before {
    margin-top: -3px;
}

.swiper-pagination-bullet:hover:after,
.swiper-pagination-bullet-active:after {
    margin-top: 3px;
}

.carousel-outer {
    overflow: hidden;
}

    .carousel-outer .swiper-container {
        overflow: initial;
    }

/*
    Carousel stepline
*/

.carousel-stepline .swiper-slide {
    opacity: .2;
    -webkit-transition: opacity .2s ease-out;
            transition: opacity .2s ease-out;
}

.carousel-stepline .swiper-slide.slide-show {
    opacity: 1;
}

.carousel-stepline .swiper-slide:last-child .icon-box__number span:after {
    display: none;
}

/*
    Carousel testimonial
*/

.carousel-testimonial.swiper-container-horizontal > .swiper-pagination-bullets {
    width: auto;
    right: 0;
    left: auto;
    bottom: 15px;
}

.carousel-testimonial blockquote {
    margin-bottom: 0;
}

/*
    Picture carousel
*/

.picture-carousel__image {
    position: relative;
    background-position: center center;
    -webkit-background-size: cover;
            background-size: cover;
}

.picture-carousel__image:after {
    display: block;
    content: "";
    padding-top: 58.9%;
}

    .picture-carousel__image img {
        position: absolute;
        visibility: hidden;
        width: 0;
        height: 0;
        opacity: 0;
    }

/*
    Cover content
*/

.cover-content {
    margin-bottom: 2rem;
    background-repeat: no-repeat;
    background-position: left center;
    -webkit-background-size: auto 100%;
            background-size: auto 100%;
}

    .cover-content__text {
        margin-top: 20px;
        margin-bottom: 20px;
        padding: 20px;
    }

        .cover-content__text > *:last-child {
            margin-bottom: 0;
        }

        .cover-content .section__title {
            margin-bottom: 3rem;
        }

.cover-content--right {
    background-position: right center;
}


/*
    Icon box
*/

.icon-box {
    position: relative;
}

    .icon-box__icon {
        position: absolute;
        top: -.3333333rem;
        left: 0;
        height: 40px;
        font-size: 40px;
        line-height: 1;
    }

        .icon-box__icon img,
        .icon-box__icon svg {
            display: block;
            width: auto;
            height: 100%;
        }

    .icon-box__title {
        font-size: 1.5rem;
    }

        .icon-box__title span {
            font-weight: 400;
        }

    .icon-box__number {
        overflow: hidden;
        margin-bottom: 2rem;
        font-size: 2.5rem;
        line-height: 1;
        font-weight: 800;
    }

        .icon-box__number span {
            position: relative;
            display: inline-block;
            padding-right: 40px;
        }

        .icon-box__number span:after {
            position: absolute;
            content: "";
            top: 1.25rem;
            left: 100%;
            width: 2000px;
            border-top-width: 1px;
            border-top-style: solid;
        }

.icon-box--icon {
    padding-left: 70px;
}

    .icon-box--icon .icon-box__title span {
        display: block;
    }

    .icon-box--icon ul,
    .icon-box--icon ol {
        margin-left: -1.125rem;
    }

.icon-box--lg .icon-box__icon {
    top: .5rem;
}

/*
    Portfolio box
*/

.portfolio-box {
    position: relative;
    display: block;
    margin-bottom: 50px;
}

    .portfolio-box .portfolio-box__icon {
        position: absolute;
        visibility: hidden;
        z-index: 1;
        top: 0;
        right: 0;
        width: 4.5rem;
        height: 4.5rem;
        padding-right: 1rem;
        text-align: center;
        font-size: 1.5rem;
        line-height: 4.5rem;
        opacity: 0;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

    .portfolio-box__figure {
        margin-bottom: .5rem;
    }

        .portfolio-box img {
            width: 100%;
            height: auto;
        }

        .portfolio-box__title {
            display: block;
            z-index: 2;
            bottom: 0;
            left: 0;
            margin: 0;
            padding-right: 1.5rem;
            font-size: 1.25rem;
        }

    .portfolio-box__text {
        display: block;
        visibility: hidden;
        list-style-type: none;
        margin: 0;
        padding: 0;
        opacity: 0;
        -webkit-transform: translate(0, 1rem);
                transform: translate(0, 1rem);
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

        .portfolio-box__text li {
            display: inline-block;
            margin-right: 1rem;
        }

.portfolio-box.has-post-thumbnail .portfolio-box__title {
    position: absolute;
    padding-top: 1.5rem;
}

.portfolio-box:hover .portfolio-box__icon {
    visibility: visible;
    opacity: 1;
    padding-right: 0;
}

.portfolio-box:hover .portfolio-box__text {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
}

/*
    Author box
*/

.author-box {
    position: relative;
    display: block;
    margin-bottom: 50px;
    text-align: center;
}

    .author-box__figure {
        position: relative;
        overflow: hidden;
        margin-bottom: 1.5rem;
    }

        .author-box__figure a {
            display: block;
        }

        .author-box img {
            width: 100%;
            height: auto;
        }

        .author-box__title {
            margin-bottom: .5rem;
            font-size: 1.25rem;
        }

    .author-box__text {
        display: block;
    }

.author-box:hover .author-box__icon {
    visibility: visible;
    opacity: 1;
    padding-right: 0;
}

.author-box .icon-list {
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
    padding-top: 1rem;
}

/*
    Counter box
*/

.counter-box {
    margin-bottom: 2rem;
    font-weight: 800;
}

    .counter-box__number {
        display: block;
        font-size: 4rem;
        line-height: 1.25;
		opacity: 0;
		-webkit-transition: opacity .2s ease-out;
		        transition: opacity .2s ease-out;
    }

	.counter-box__number.visible {
		opacity: 1;
	}

    .counter-box__text  {
        font-size: 1.125rem;
    }

        .counter-box__text span {
            font-weight: 400;
        }

/*
    Post box
*/

.post-box,
.post-box:hover,
.post-box:focus {
    color: inherit;
}

.post-box {
    display: block;
    margin-bottom: 2rem;
}

    .post-box__figure {
        position: relative;
        overflow: hidden;
        margin-bottom: 2.25rem;
    }

        .post-box__figure__list {
            list-style-type: none;
            padding: 0;
        }

        .post-box__figure img {
            width: 100%;
            height: auto;
            -webkit-transition: all .2s ease-out;
                    transition: all .2s ease-out;
        }

        .post-box__figure__list {
            position: absolute;
            display: inline-block;
            z-index: 5;
            bottom: 0;
            left: 0;
            margin: 0;
            padding: 1.5rem 1.5rem 0 0;
            line-height: 1;
            font-weight: 400;
            -webkit-transition: all .2s ease-out;
                    transition: all .2s ease-out;
        }

            .post-box__figure__list li {
                display: inline-block;
                margin-right: 2rem;
                margin-bottom: 0;
            }

            .post-box__figure__list li:last-child {
                margin-right: 0;
            }

                .post-box__figure__list time span {
                    font-weight: 800;
                }

                .post-box__figure__list li a {
                    text-decoration: underline;
                    color: inherit;
                }

                .post-box__figure__list li a:hover {
                    text-decoration: none;
                }

                .post-box__figure__list li ul {
                    padding: 0;
                }

                    .post-box__figure__list li li {
                        margin-right: .5rem;
                    }

        .post-box__meta .post-box__figure__list {
            position: relative;
            padding: 0 0 2.25rem;
        }

	.post-box .embed-responsive-21by9 {
		background-position: center center;
		-webkit-background-size: cover;
		        background-size: cover;
	}

	.post-box .embed-responsive-21by9:before {
		background: #fff;
		opacity: .5;
	}

		.post-box .embed-responsive-21by9 audio {
			position: absolute;
			display: block;
			z-index: 2;
			right: 10px;
			bottom: 10px;
			left: 10px;
			width: calc(100% - 20px);
		}

    .post-box .article-title {
        margin-bottom: 2rem;
    }

        .post-box .article-title a {
            color: inherit;
        }

    .post-box__title {
        font-size: 1.25rem;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

        .post-box__title a {
            color: inherit;
        }

.posts .post-box.sticky {
    padding: 30px;
    border: 1px solid transparent;
}

/*
    Post bar
*/

.postbar {
    position: relative;
    display: block;
    min-height: 60px;
}

    .postbar figure {
        position: absolute;
        top: 0;
        left: 0;
        width: 60px;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

        .postbar figure img {
            display: block;
            width: 100%;
            height: auto;
        }

    .postbar time {
        display: block;
        font-size: .75rem;
        margin-bottom: .25rem;
        line-height: 1;
    }

        .postbar time span {
            font-weight: 800;
        }

    .postbar__list {
        padding: 0;
        list-style-type: none;
        font-size: .75rem;
        margin-bottom: 0;
        line-height: 1;
    }

        .postbar__list li {
            display: inline-block;
            margin-right: .5rem;
            margin-bottom: .25rem;
        }

    .postbar__title {
        font-family: Montserrat, Arial, sans-serif;
        font-weight: 900;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

        .postbar__title p {
            margin: 0;
        }

.postbar.has-post-thumbnail {
    padding-left: 80px;
}

.postbar:hover figure {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
}

.postbar-list > li {
    margin-bottom: 3rem;
}

/*
    Portfolio
*/

.filter-container {
    margin-bottom: -50px;
}

/*
    Timeline
*/

.timeline__item {
    position: relative;
}

.timeline__item:after {
    position: absolute;
    content: "";
    z-index: 1;
    top: 0;
    left: 1rem;
    bottom: 0;
    border-left-width: 1px;
    border-left-style: solid;
}

.timeline__item:last-child:after {
    display: none;
}

    .timeline__number {
        position: relative;
        z-index: 2;
        margin-bottom: 2rem;
        font-size: 2.5rem;
        line-height: 1;
        font-weight: 800;
    }

    .timeline__number:before {
        position: absolute;
        z-index: -1;
        content: "";
        top: -1.25rem;
        right: 0;
        bottom: -1.25rem;
        left: 0;
    }

        .timeline__number span {
            display: inline-block;
        }

    .timeline .timeline__content {
        padding-bottom: 3rem;
        padding-left: 3rem;
    }

        .timeline__content > *:last-child {
            margin-bottom: 0;
        }

/*
    Pricing
*/

.pricing {
    border-width: 1px;
    border-style: solid;
}

    .pricing__col {
        position: relative;
        padding: 5rem 2rem;
        border-top-width: 1px;
        border-top-style: solid;
        text-align: center;
    }

    *:first-child > .pricing__col {
        border-top: 0;
    }

        .pricing__label {
            position: absolute;
            display: inline-block;
            top: 0;
            left: 50%;
            padding: 0 1rem;
            text-transform: uppercase;
            font-weight: 900;
            background: #000;
            -webkit-transform: translate(-50%, 0);
                    transform: translate(-50%, 0);
        }

        .pricing__title {
            font-size: 1.5rem;
        }

        .pricing__price {
            font-size: 1.125rem;
            margin-bottom: 3rem;
            font-weight: 400;
        }

            .pricing__value {
                font-size: 3.5rem;
                font-weight: 400;
                line-height: 1;
            }

        .pricing__description {
            margin-bottom: 5rem;
        }

        .pricing__list ul {
            margin-bottom: 5rem;
            padding: 0;
            list-style-type: none;
        }

            .pricing__list li {
                margin-bottom: 2rem;
                font-weight: 900;
            }

                .pricing__list li del {
                    font-weight: 400;
                }

/*
    Calendar
*/

.calendar_wrap {
    padding: 1rem .5rem;
    border-width: 1px;
    border-style: solid;
}

.calendar_wrap table {
    width: 100%;
    margin: 0;
    text-align: center;
}

    .calendar_wrap caption {
        padding-top: 0;
        font-family: Montserrat, Arial, sans-serif;
        font-weight: 900;
        caption-side: top;
        text-align: center;
        font-size: 1.25rem;
    }

    .calendar_wrap .today {
        font-weight: 800;
    }

        .calendar_wrap tbody a,
        .calendar_wrap tfoot a {
            display: inline-block;
            text-decoration: underline;
        }

        .calendar_wrap tbody a:hover,
        .calendar_wrap tfoot a:hover {
            text-decoration: none;
        }

        .calendar_wrap tfoot td:first-child {
            text-align: left;
            padding-left: 1rem;
        }

        .calendar_wrap tfoot td:last-child {
            text-align: right;
            padding-right: 1rem;
        }

/*
    Comment
*/

.comment {
    position: relative;
    padding-left: 50px;
    margin-bottom: 5rem;
}

    .comment__avatar {
        position: absolute;
        top: 0;
        left: 0;
        width: 30px;
    }

        .comment__avatar a {
            display: block;
        }

            .comment__avatar img {
                width: 100%;
                height: auto;
            }

    .comment__header {
        margin-bottom: .5rem;
        padding: 0;
        list-style-type: none;
    }

        .comment__header li {
            display: inline-block;
            margin: 0 2rem .5rem 0;
        }

            .comment__header a,
            .comment__header a:hover,
            .comment__header a:focus {
                color: inherit;
            }

            .comment__header a {
                text-decoration: underline;
            }

            .comment__header a:hover {
                text-decoration: none;
            }

.comment + .children {
	margin-top: -2rem;
	margin-bottom: 5rem;
}

.children .comment {
    margin-left: -30px;
    margin-bottom: 0;
}

    .children .comment .comment__header {
        margin-bottom: 0;
    }

ul.children {
	padding-left: 50px;
}

/* COMPONENTS
================================================== */

/*
	Buttons
*/

.btn {
    position: relative;
    z-index: 1;
    padding: 1.25rem 2rem;
    font-size: 1.125rem;
    font-weight: 800;
    border-radius: 0;
    color: inherit;
	-webkit-box-shadow: none !important;
	        box-shadow: none !important;
}

.btn:before {
    position: absolute;
    content: "";
    z-index: -1;
    top: 5px;
    right: 5px;
    bottom: 5px;
    left: 5px;
    opacity: 0;
    -webkit-transition: all .2s ease-out;
            transition: all .2s ease-out;
}

.btn:hover:before {
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    opacity: 1;
}

    .btn__icon {
        display: inline-block;
        vertical-align: middle;
        height: 1.25rem;
    }

.btn:hover:before {
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    opacity: 1;
}

.btn--border-primary:hover {
    border-color: transparent;
}

.btn--border-primary,
.btn--border-primary:focus {
    color: inherit;
}

.btn--icon-left .btn__icon {
    margin-right: .5rem;
}

.btn--icon-right .btn__icon {
    margin-left: .5rem;
}

.btn--border-white:hover {
    border-color: transparent;
}

/*
    Form controls
*/

.form-control::-webkit-input-placeholder { font-weight: 400; opacity: .5; }
.form-control::-moz-placeholder          { font-weight: 400; opacity: .5; }
.form-control:-ms-input-placeholder      { font-weight: 400; opacity: .5; }
.form-control:-moz-placeholder           { font-weight: 400; opacity: .5; }

.form-group {
    margin-bottom: 2rem;
}

.form-control,
.form-control:focus,
.form-control:active {
    color: inherit;
    -webkit-box-shadow: none;
            box-shadow: none;
}

.form-control {
    height: auto;
    padding: 1.25rem 1rem;
    border-width: 0 0 1px;
    font-size: 1.125rem;
    line-height: 1.5;
    border-radius: 0;
}

.input-icon {
    position: relative;
}

    .input-icon .form-control {
        padding-right: 3rem;
    }

    .input-icon .btn {
        position: absolute;
        z-index: 10;
        top: 0;
        right: 0;
        padding-left: 1rem;
        padding-right: 1rem;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

    .input-icon .btn:hover {
        -webkit-transform: scale(1.25);
                transform: scale(1.25);
    }

/*
    Menu
*/

.menuitems {
    padding: 0;
    font-weight: 800;
    list-style-type: none;
}

    .menuitems li {
        display: inline-block;
        margin: 0 10px 1rem;
    }

        .menuitems li a {
            display: block;
            border-bottom: 1px solid transparent;
        }

        .menuitems li a,
        .menuitems li a:hover,
        .menuitems li a:focus {
            color: inherit;
        }

/*
    Titles
*/

.article-title {
    margin-bottom: 3rem;
    font-size: 1.5rem;
    word-break: break-all;
}

    .article-title span {
        font-weight: 400;
    }

/*
    Lists
*/

.icon-list {
    padding-left: 0;
    list-style-type: none;
}

.icon-list--text li {
    position: relative;
    padding-left: 2rem;
}

    .icon-list--text li i {
        position: absolute;
        top: 0;
        left: 0;
        width: 1rem;
        text-align: center;
        line-height: inherit;
    }



.icon-list--inline li {
    display: inline-block;
    margin: 0 2rem 1rem 0;
}

.icon-list--inline li:last-child {
    margin-right: 0;
}

    .icon-list--inline a,
    .icon-list--inline a:focus {
        color: inherit;
    }

    .icon-list--inline a {
        display: inline-block;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

    .icon-list--inline a:hover {
        -webkit-transform: scale(1.25);
                transform: scale(1.25);
    }

    .icon-list--inline i {
        vertical-align: middle;
        font-size: 1.125rem;
    }

.icon-list--inline.text-center li {
    margin-left: 1rem;
    margin-right: 1rem;
}

.icon-list--inline.text-right li {
    margin-left: 0;
    margin-right: 2rem;
}

.list-count {
    font-weight: 800;
}

    .list-count li {
        margin-bottom: .5rem;
    }

        .list-count a,
        .list-count a:hover,
        .list-count a:focus {
            color: inherit;
        }

        .list-count a {
            display: block;
            padding: .5rem 0;
            border-bottom: 1px solid transparent;
        }

            .list-count span {
                float: right;
                font-weight: 400;
            }

.tag-list {
    padding: 0;
    list-style-type: none;
}

    .tag-list li {
        display: inline-block;
        margin-right: 1rem;
    }

        .tag-list a,
        .tag-list a:focus {
            color: inherit;
        }

        .tag-list a {
            display: block;
            padding: .25rem 1rem;
            border-width: 1px;
            border-style: solid;
            font-weight: 800;
        }

/*
    Pagination
*/

.pagination {
    flex-wrap: wrap;
    justify-content: center;
    padding: 0;
    font-size: 1.125rem;
    font-weight: 800;
    text-align: center;
}

    .page-numbers {
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        list-style-type: none;
        padding: 0;
    }

        .pagination li {
            margin-left: .25rem;
            margin-right: .25rem;
        }

            .pagination span,
            .pagination a {
                display: block;
                min-width: 4.25rem;
                padding: 1.25rem 0;
                border: 1px solid transparent;
                color: inherit;
            }

            .pagination a:hover,
            .pagination a:focus {
                color: inherit;
            }

            .pagination .dots {
                min-width: auto;
                opacity: .5;
            }

            .entry .pagination a {
                border-bottom-color: transparent;
            }

/*
    Hover effects
*/

.figure-zoom-effect__item {
    position: relative;
    overflow: hidden;
}

    .figure-zoom-effect__bg {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        -webkit-background-size: 100% auto;
                background-size: 100% auto;
        -webkit-animation: zoomOut .5s ease-out 1 forwards;
                animation: zoomOut .5s ease-out 1 forwards;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

    .figure-zoom-effect:hover .figure-zoom-effect__bg {
        -webkit-animation: zoomIn .5s ease-out 1 forwards;
                animation: zoomIn .5s ease-out 1 forwards;
    }

.figure-grey-effect__item img {
    filter: grayscale(1);
    opacity: .8;
    -webkit-transition: all .2s ease-out;
            transition: all .2s ease-out;
}

.figure-grey-effect:hover .figure-grey-effect__item img {
    filter: grayscale(0);
    opacity: 1;
}

/*
    Highlighted text
*/

.highlighted-text {
    font-size: 1.25rem;
}

    .highlighted-text__title {
        margin-bottom: .5rem;
        font-size: 1.875rem;
    }

/*
    Blockquote
*/

blockquote {
    position: relative;
    padding-left: 30px;
    font-size: 1.125rem;
    font-style: italic;
}

blockquote:before {
    position: absolute;
    content: "\201d";
    z-index: -1;
    top: -5px;
    left: 0;
    font-family: Montserrat;
    font-style: normal;
    font-size: 150px;
    line-height: 1;
    font-weight: 800;
    opacity: .05;
    color: inherit;
}

    blockquote cite {
        display: block;
        font-style: normal;
        font-size: 1rem;
    }

        blockquote cite strong {
            display: block;
            font-size: 1.25rem;
        }

blockquote.right {
    padding-left: 0;
    padding-right: 30px;
}

blockquote.right:before {
    left: auto;
    right: 0;
}

/*
    Text 404
*/

.text-404__number {
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 100px;
    line-height: 1;
    font-weight: 800;
}

.text-404__title {
    font-size: 2rem;
}

/*
    Map
*/

.map iframe {
    display: block;
    width: 100%;
    height: 250px;
    border: 0;
}

/* WORDPRESS
================================================== */

.wp-block-embed {
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	padding: 0;
}

.wp-block-embed:after {
	display: block;
	content: "";
}

.wp-embed-aspect-16-9 {
	padding-top: 56.25%;
}

.wp-embed-aspect-21-9 {
	padding-top: 42.857143%;
}

.wp-block-embed iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* GLOBALS
================================================== */

.miw--270 {
    min-width: 220px;
}

.weight--bold {
    font-weight: 800;
}

.mt--05 { margin-top: .5rem; }
.mt--10 { margin-top: 1rem; }
.mt--15 { margin-top: 1.5rem; }
.mt--20 { margin-top: 2rem; }
.mt--25 { margin-top: 2.5rem; }
.mt--30 { margin-top: 3rem; }
.mt--35 { margin-top: 3.5rem; }
.mt--40 { margin-top: 4rem; }
.mt--45 { margin-top: 4.5rem; }
.mt--50 { margin-top: 5rem; }
.mt--55 { margin-top: 5.5rem; }
.mt--60 { margin-top: 6rem; }
.mt--65 { margin-top: 6.5rem; }
.mt--70 { margin-top: 7rem; }
.mt--75 { margin-top: 7.5rem; }
.mt--80 { margin-top: 8rem; }
.mt--85 { margin-top: 8.5rem; }
.mt--90 { margin-top: 9rem; }
.mt--95 { margin-top: 9.5rem; }
.mt--100 { margin-top: 10rem; }

.mb--05 { margin-bottom: .5rem; }
.mb--10 { margin-bottom: 1rem; }
.mb--15 { margin-bottom: 1.5rem; }
.mb--20 { margin-bottom: 2rem; }
.mb--25 { margin-bottom: 2.5rem; }
.mb--30 { margin-bottom: 3rem; }
.mb--35 { margin-bottom: 3.5rem; }
.mb--40 { margin-bottom: 4rem; }
.mb--45 { margin-bottom: 4.5rem; }
.mb--50 { margin-bottom: 5rem; }
.mb--55 { margin-bottom: 5.5rem; }
.mb--60 { margin-bottom: 6rem; }
.mb--65 { margin-bottom: 6.5rem; }
.mb--70 { margin-bottom: 7rem; }
.mb--75 { margin-bottom: 7.5rem; }
.mb--80 { margin-bottom: 8rem; }
.mb--85 { margin-bottom: 8.5rem; }
.mb--90 { margin-bottom: 9rem; }
.mb--95 { margin-bottom: 9.5rem; }
.mb--100 { margin-bottom: 10rem; }

.pt--05 { padding-top: .5rem; }
.pt--10 { padding-top: 1rem; }
.pt--15 { padding-top: 1.5rem; }
.pt--20 { padding-top: 2rem; }
.pt--25 { padding-top: 2.5rem; }
.pt--30 { padding-top: 3rem; }
.pt--35 { padding-top: 3.5rem; }
.pt--40 { padding-top: 4rem; }
.pt--45 { padding-top: 4.5rem; }
.pt--50 { padding-top: 5rem; }
.pt--55 { padding-top: 5.5rem; }
.pt--60 { padding-top: 6rem; }
.pt--65 { padding-top: 6.5rem; }
.pt--70 { padding-top: 7rem; }
.pt--75 { padding-top: 7.5rem; }
.pt--80 { padding-top: 8rem; }
.pt--85 { padding-top: 8.5rem; }
.pt--90 { padding-top: 9rem; }
.pt--95 { padding-top: 9.5rem; }
.pt--100 { padding-top: 10rem; }

.pb--05 { padding-bottom: .5rem; }
.pb--10 { padding-bottom: 1rem; }
.pb--15 { padding-bottom: 1.5rem; }
.pb--20 { padding-bottom: 2rem; }
.pb--25 { padding-bottom: 2.5rem; }
.pb--30 { padding-bottom: 3rem; }
.pb--35 { padding-bottom: 3.5rem; }
.pb--40 { padding-bottom: 4rem; }
.pb--45 { padding-bottom: 4.5rem; }
.pb--50 { padding-bottom: 5rem; }
.pb--55 { padding-bottom: 5.5rem; }
.pb--60 { padding-bottom: 6rem; }
.pb--65 { padding-bottom: 6.5rem; }
.pb--70 { padding-bottom: 7rem; }
.pb--75 { padding-bottom: 7.5rem; }
.pb--80 { padding-bottom: 8rem; }
.pb--85 { padding-bottom: 8.5rem; }
.pb--90 { padding-bottom: 9rem; }
.pb--95 { padding-bottom: 9.5rem; }
.pb--100 { padding-bottom: 10rem; }

/* ANIMATIONS
================================================== */

[data-animate] {
	opacity: 0;
	-webkit-animation-duration: 1s;
			animation-duration: 1s;
	-webkit-animation-fill-mode: both;
			animation-fill-mode: both;
}

.fadeIn {
    -webkit-animation-name: fadeIn;
            animation-name: fadeIn;
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
            animation-name: fadeInUp;
}

.plain-animated,
.animated [data-animate],
.elementor-editor-active [data-animate],
.compose-mode [data-animate] {
	opacity: 1;
}

.animated [data-animate] {
    -webkit-animation: none;
            animation: none;
}

@keyframes fadeIn {
    0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes fadeIn {
    0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes fadeInUp {
    0% {
		opacity: 0;
        transform: translate(0, 30px);
	}
	100% {
		opacity: 1;
		transform: translate(0, 0);
	}
}

@-webkit-keyframes fadeInUp {
    0% {
		opacity: 0;
        -webkit-transform: translate(0, 30px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(0, 0);
	}
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale(1);
    }
    50% {
        opacity: 1;
        transform: scale(1.1);
        filter: grayscale(1);
    }
    100% {
        opacity: 1;
        transform: scale(1.05);
    }
}

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(1);
    }
    50% {
        opacity: .3;
        -webkit-transform: scale(1.1);
        -webkit-filter: grayscale(1);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1.05);
    }
}

@keyframes zoomOut {
    0% {
        opacity: 1;
        transform: scale(1.05);
    }
    100% {
        opacity: 0;
        transform: scale(1.05);
    }
}

@-webkit-keyframes zoomOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1.05);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(1.05);
    }
}

/* RESPONSIVE
================================================== */

/*
	XS
*/

@media screen and (max-width: 575px) {

    .btn {
        padding-left: 1rem;
        padding-right: 1rem;
    }

}

/*
	SM and down
*/

@media screen and (max-width: 767px) {

    .mobile-nav {
        width: 75%;
    }

    .mobile-nav-active .header,
    .mobile-nav-active .offcanvas__content,
    .mobile-nav-active .mainmenu__close {
        left: 75%;
    }

    .cover-content {
        padding-top: 100px;
        padding-bottom: 100px;
        background-position: center center;
        -webkit-background-size: cover;
                background-size: cover;
    }

    .intro__title {
        font-size: 2.25rem;
    }

    .carousel-testimonial {
        padding-bottom: 50px;
    }

        .carousel-testimonial.swiper-container-horizontal > .swiper-pagination-bullets {
            left: 0;
            bottom: 0;
        }

    .pagination span,
    .pagination a {
        min-width: 2.875rem;
        padding-top: .5rem;
        padding-bottom: .5rem;
    }
}

/*
	SM to MD
*/

@media screen and (min-width: 768px) and (max-width: 991px) {

    .icon-box--icon:not(.pl-0) .icon-box__text {
        margin-left: -50px;
    }

}

/*
	MD and down
*/

@media screen and (max-width: 991px) {

    .mt--55,
    .mt--60,
    .mt--65,
    .mt--70,
    .mt--75,
    .mt--80,
    .mt--85,
    .mt--90,
    .mt--95,
    .mt--100 { margin-top: 5rem; }

    .mb--55,
    .mb--60,
    .mb--65,
    .mb--70,
    .mb--75,
    .mb--80,
    .mb--85,
    .mb--90,
    .mb--95,
    .mb--100 { margin-bottom: 5rem; }

    .pt--55,
    .pt--60,
    .pt--65,
    .pt--70,
    .pt--75,
    .pt--80,
    .pt--85,
    .pt--90,
    .pt--95,
    .pt--100 { padding-top: 5rem; }

    .pb--55,
    .pb--60,
    .pb--65,
    .pb--70,
    .pb--75,
    .pb--80,
    .pb--85,
    .pb--90,
    .pb--95,
    .pb--100 { padding-bottom: 5rem; }

}

/*
	LG and down
*/

@media screen and (min-width: 768px) and (max-width: 1199px) {

    .mobile-nav {
        width: 40%;
    }

    .mobile-nav-active .header,
    .mobile-nav-active .offcanvas__content,
    .mobile-nav-active .mainmenu__close {
        left: 40%;
    }

}

@media screen and (max-width: 1199px) {

    /*
        Off-canvas
    */

    .offcanvas {
        overflow: hidden;
    }

    .offcanvas__content {
        position: relative;
        overflow: auto;
        z-index: 2;
        left: 0;
        padding-top: 70px;
        -webkit-transition: all .5s;
                transition: all .5s;
    }

    /*
    	mainmenu
    */

    .mobile-nav__open {
        position: relative;
        display: block;
        width: 20px;
        height: 26px;
    }

    .mobile-nav__open__line {
        position: absolute;
        display: block;
        left: 0;
        width: 100%;
        height: 2px;
        -webkit-transform-origin: center center;
                transform-origin: center center;
    }

    .mobile-nav__open__line:first-child {
        top: 0;
    }

    .mobile-nav__open__line:nth-child(2) {
        top: 50%;
        margin-top: -1px;
    }

    .mobile-nav__open__line:last-child {
        bottom: 0;
    }

    .mobile-nav {
        position: fixed;
        overflow: auto;
        z-index: 1;
        top: 0;
        bottom: 0;
        left: -30px;
        padding: .75rem 0;
        font-weight: 800;
        -webkit-transition: all .5s;
                transition: all .5s;
    }

        .mobile-nav ul {
            margin: 0;
            padding: 0;
        }

            .mobile-nav li {
                margin-bottom: 0;
            }

            .mobile-nav a {
                position: relative;
                display: block;
                padding: .75rem 40px .75rem 30px;
            }

            .mobile-nav a:before {
                position: absolute;
                content: "";
                top: 50%;
                left: 0;
                width: 0;
                border-top-width: 1px;
                border-top-style: solid;
                -webkit-transition: width .2s;
                        transition: width .2s;
            }

                .mobile-nav a i {
                    position: absolute;
                    top: 50%;
                    right: 30px;
                    font-size: .75em;
                    line-height: 1rem;
                    margin-top: -.5rem;
                    opacity: .7;
                    -webkit-transition: all .2s;
                            transition: all .2s;
                }

    /* mainmenu sub */

    .mobile-nav ul ul {
        display: none;
        padding: 0;
        font-size: .875rem;
    }

        .mobile-nav ul ul li {
            opacity: 0;
            -webkit-transition: all .2s;
                    transition: all .2s;
            -webkit-transform-origin: top center;
                    transform-origin: top center;
            -webkit-transform: scale(.5);
                    transform: scale(.5);
        }

            .mobile-nav ul ul li a {
                padding-top: .5rem;
                padding-bottom: .5rem;
            }

    .mobile-nav ul ul > li > a { padding-left: 50px; }
    .mobile-nav ul ul ul > li > a { padding-left: 70px; }
    .mobile-nav ul ul ul ul > li > a { padding-left: 90px; }

    /* mainmenu actions */

    .mobile-nav .children-active > a i {
        display: block;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg);
    }

    .mobile-nav .children-active > ul {
        display: block;
    }

    .mobile-nav .children-active > ul > li {
        opacity: 1;
        -webkit-transform: scale(1);
                transform: scale(1);
    }

    .mobile-nav .children-active > a:before { width: 10px; }
    .mobile-nav ul ul > .children-active > a:before { width: 30px; }
    .mobile-nav ul ul ul > .children-active > a:before { width: 50px; }
    .mobile-nav ul ul ul ul > .children-active > a:before { width: 70px; }

    .mobile-nav-active {
        overflow: hidden;
    }

        .mobile-nav-active .mobile-nav {
            left: 0;
        }

        .mobile-nav-active .offcanvas__content {
            overflow: hidden;
            opacity: .9;
        }

    .mobile-nav-active .mainmenu__close {
        position: fixed;
        z-index: 3;
        top: 0;
        right: 0;
        bottom: 0;
    }

}

/*
    SM and up
*/

@media screen and (min-width: 575px) {

    .col-sm-6:nth-child(2) > .pricing__col {
        border-top: 0;
    }

}

/*
    MD and up
*/

@media screen and (min-width: 992px) {

    /*
        Intro
    */

    .intro {
        font-size: 1.25rem;
    }

        .intro__title {
            font-size: 4rem;
        }

    /*
        Section
    */

    .section__title {
        font-size: 3rem;
    }

    /*
        Cover content
    */

    .cover-content__text {
        margin-top: 50px;
        margin-bottom: 50px;
        padding: 50px;
    }

    /*
        Timeline
    */

    .timeline__item:after {
        left: 50%;
    }

    .timeline__number {
        position: absolute;
        top: 0;
        left: 50%;
        margin-bottom: 0;
        -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
    }

    /*
        Counter box
    */

    .counter-box__number {
        font-size: 6rem;
    }

    /*
        Author box
    */

    .author-box .icon-list {
        visibility: hidden;
        opacity: 0;
        -webkit-transform: translate(0, 100%);
                transform: translate(0, 100%);
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
    }

    .author-box:hover .icon-list {
        visibility: visible;
        opacity: 1;
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }

    /*
        Menu items
    */

    .menuitems li {
        margin-left: 25px;
        margin-right: 25px;
    }

    /*
        Pricing
    */

    .pricing__title {
        font-size: 2.25rem;
    }

        .pricing__value {
            font-size: 4.5rem;
        }

    /*
        Map
    */

    .map iframe {
        height: 500px;
    }

    /*
        Comment
    */

    .comment {
        padding-left: 120px;
    }

        .comment__avatar {
            width: 80px;
        }

	ul.children {
		padding-left: 120px;
	}

    .children .comment {
        margin-left: 0;
        padding-left: 80px;
    }

        .children .comment .comment__avatar {
            width: 40px;
        }
	
    /*
        Blockquote
    */

    blockquote {
        padding-left: 120px;
        font-size: 1.5rem;
    }

    blockquote.right {
        padding-right: 120px;
    }

    /*
        Globals
    */

    .miw--270 {
        min-width: 270px;
    }

}

/*
	LG and up
*/

@media screen and (min-width: 1200px) {

    body {
        padding-top: 134px;
    }

    /*
        Header
    */

    .header {
        height: 134px;
        padding-top: 50px;
        padding-bottom: 20px;
    }

    /*
        mainmenu
    */

    .mainmenu,
    .mainmenu ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    .mainmenu {
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        font-weight: 800;
        line-height: 1.5;
    }

        .mainmenu li {
            position: relative;
            margin-bottom: 0;
        }

        .mainmenu li:before {
            position: absolute;
            content: "";
            bottom: 100%;
            left: 50%;
            width: 0;
            height: 50px;
            border-right-width: 1px;
            border-right-style: solid;
            -webkit-transition: all .2s ease-out;
                    transition: all .2s ease-out;
            -webkit-transform: translate(0, -100%);
                    transform: translate(0, -100%);
        }

            .mainmenu li a {
                position: relative;
                display: block;
            }

                .mainmenu li a i {
                    display: inline-block;
                    font-size: .75em;
                    opacity: .6;
                }

    /* mainmenu main */

    .mainmenu > li {
        margin-left: 50px;
        padding: 20px 0;
    }

    .mainmenu > li:before {
        bottom: 100%;
        left: 50%;
        width: 0;
        height: 50px;
        border-right-width: 1px;
        border-right-style: solid;
        -webkit-transform: translate(0, -100%);
                transform: translate(0, -100%);
    }

        .mainmenu > li > a i {
            margin-left: .5rem;
            -webkit-transform: rotate(90deg);
                    transform: rotate(90deg);
        }

    /* mainmenu sub */

    .mainmenu ul {
        position: absolute;
        visibility: hidden;
        top: 100%;
        left: 50%;
        min-width: 200px;
        padding: 20px 0;
        font-size: .875rem;
        opacity: 0;
        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
        -webkit-transform: translate(-50%, 10px) scale(.9);
                transform: translate(-50%, 10px) scale(.9);
    }

        .mainmenu li li:before {
            top: 50%;
            left: 0;
            width: 0;
            height: 0;
            border-top-width: 1px;
            border-top-style: solid;
        }

            .mainmenu ul a {
                padding: 10px 30px 10px 40px;
            }

                .mainmenu ul li > a i {
                    position: absolute;
                    top: 50%;
                    right: 20px;
                    line-height: 1rem;
                    margin-top: -.5rem;
                }


            .mainmenu ul ul {
                top: -20px;
                left: 100%;
                margin-left: -20px;
                -webkit-transform: translate(0, 0) scale(1);
                        transform: translate(0, 0) scale(1);
            }

    /* mainmenu actions */

    .mainmenu li:hover > ul {
        visibility: visible;
        opacity: 1;
    }

    .mainmenu > li:hover:before,
    .mainmenu > li.active:before {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }

        .mainmenu > li:hover > ul {
            -webkit-transform: translate(-50%, 0) scale(1);
                    transform: translate(-50%, 0) scale(1);
        }

            .mainmenu li li:hover:before,
            .mainmenu li li.active:before {
                width: 20px;
            }

                .mainmenu li li:hover > ul {
                    margin-left: 0;
                }

    /*
        Sidebar
    */

    .article-title {
        font-size: 2.25rem;
    }

    /*
        Intro
    */

    .intro {
        min-height: 580px;
    }

        .intro__title {
            font-size: 5rem;
        }

    .intro--fullscreen {
        height: calc(100vh - 134px - 100px);
    }

    /*
        Section
    */

    .section--lg {
        padding-top: 10rem;
        padding-bottom: 8rem;
    }

        .section__title {
            margin-bottom: 5rem;
            font-size: 4.5rem;
        }

        .section__description {
            margin-bottom: 5rem;
            margin-top: -2rem;
        }

    .section--fullscreen {
        min-height: calc(100vh - 134px);
    }

    /*
        Cover content
    */

    .cover-content__text {
        margin-top: 100px;
        margin-bottom: 100px;
        padding: 100px;
    }

    /*
        Counter box
    */

    .counter-box__number {
        font-size: 7.5rem;
    }

    /*
        Icon box
    */

    .icon-box--lg .icon-box__icon {
        top: 1rem;
        height: 50px;
        line-height: 50px;
        font-size: 50px;
    }

    .icon-box--lg .icon-box__title {
        font-size: 2.25rem;
    }

    .icon-box--lg.icon-box--icon {
        padding-left: 80px;
    }

    .icon-box__number {
        font-size: 3.75rem;
    }

        .icon-box__number span:after {
            top: 1.875rem;
        }

    /*
        Menu items
    */

    .menuitems {
        margin-bottom: 5rem;
    }

    /*
        Portfolio
    */

    .portfolio-box__title {
        padding-right: 2.5rem;
        font-size: 1.5rem;
    }

    .portfolio-box.has-post-thumbnail .portfolio-box__title {
        padding-top: 2.5rem;
    }

    /*
        Post box
    */

    .post-box__figure__list {
        padding: 2.5rem 2.5rem 0 0;
    }

    .post-box__title {
        font-size: 1.5rem;
    }

    /*
        Author box
    */

    .author-box__title {
        font-size: 1.5rem;
    }

    /*
        Timeline
    */

    .timeline__title {
        font-size: 1.875rem;
    }

    .timeline__number {
        font-size: 3.75rem;
    }

    /*
        Icon list
    */

    .icon-list--inline i {
        font-size: 1.5rem;
    }

    /*
        Highlighted text
    */

    .highlighted-text {
        font-size: 1.875rem;
    }

        .highlighted-text__title {
            font-size: 2.25rem;
        }

    /*
        Pricing
    */

    .col-xl-3 > .pricing__col {
        border-top: 0;
    }

    /*
        Blockquote
    */

    .carousel-testimonial blockquote {
        padding-left: 240px;
        font-size: 1.875rem;
    }

    .carousel-testimonial blockquote:before {
        top: -20px;
        font-size: 300px;
    }

        .carousel-testimonial blockquote cite strong {
            font-size: 1.5rem;
        }

    .carousel-testimonial blockquote.right {
        padding-right: 240px;
    }

    /*
        404 text
    */

    .text-404__number {
        font-size: 250px;
    }

    .text-404__title {
        margin-bottom: 5rem;
        font-size: 3rem;
    }

    /*
        Globals
    */

    .padding-x {
        padding-right: 100px;
        padding-left: 100px;
    }

    .margin-x {
        margin-right: 100px;
        margin-left: 100px;
    }

}

/*
	XL and up
*/

@media screen and (min-width: 1601px) {

    .d-xxl-block {
		display: block;
	}

    .d-xxl-none {
		display: none;
	}

    /*
        Grid
    */

    .container,
    .container-fluid {
        padding-left: 20px;
        padding-right: 20px;
    }

    .container {
		max-width: 1440px;
	}

    .container--xl {
		padding-left: 75px;
        padding-right: 75px;
	}

    .container.container--xl {
        max-width: 1550px;
    }

	.row:not(.no-gutters) {
		margin-left: -20px;
		margin-right: -20px;
	}

		.row:not(.no-gutters) > .col,
		.row:not(.no-gutters) > [class*="col-"] {
			padding-left: 20px;
			padding-right: 20px;
		}

	.row.xl-gutters {
		margin-left: -75px;
		margin-right: -75px;
	}

    .row.xl-gutters > .col,
    .row.xl-gutters > [class*="col-"],
    .row.xl-gutters > .filter-container > .col,
    .row.xl-gutters > .filter-container > [class*="col-"] {
			padding-left: 75px;
			padding-right: 75px;
		}

    /*
        Intro
    */

    .intro {
        font-size: 1.5rem;
    }

        .intro__inner {
            max-width: 850px;
        }

        .intro__title {
            font-size: 6rem;
        }

    /*
        mainmenu
    */

    .mainmenu > li {
        margin-left: 100px;
    }

    /*
        Portfolio
    */

    .portfolio-box {
        margin-bottom: 100px;
    }

    .filter-container {
        margin-bottom: -100px;
    }

    /*
        Carousels
    */

    .carousel-stepline .icon-box__text {
        padding-right: 100px;
    }

    /*
        Author box
    */

    .author-box {
        margin-bottom: 100px;
    }

}
@font-face {
    font-family: 'Oceanwide-Semibold';
    src: url('https://mvno.catalystcore.co.uk/wp-content/themes/plain/assets/webfonts/Oceanwide-Semibold.woff2') format('woff2'),
         url('https://mvno.catalystcore.co.uk/wp-content/themes/plain/assets/webfonts/Oceanwide-Semibold.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
/* General Styling for Product Box */
li.product {
    border: 2px solid #4c207a !important; /* Purple border */
    padding: 15px !important; /* Inner spacing */
    border-radius: 10px !important; /* Rounded corners */
    margin-bottom: 20px !important; /* Space between products */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1) !important; /* Subtle shadow */
    transition: transform 0.3s ease, box-shadow 0.3s ease !important; /* Hover animation */
}

/* Hover Effect for Product Box */
li.product:hover {
    transform: translateY(-5px) !important; /* Lift effect */
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2) !important; /* Enhanced shadow */
}

/* Product Title Styling */
li.product h2.woocommerce-loop-product__title {
    color: #4c207a !important; /* Purple text */
    font-size: 16px !important; /* Font size */
    font-weight: bold !important; /* Bold title */
    text-align: center !important; /* Centered text */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Font family */
}

/* Price Container Styling */
li.product .price {
    color: #4c207a !important; /* Purple text */
    font-size: 16px !important; /* Font size */
    font-weight: 600 !important; /* Semi-bold font */
    text-align: center !important; /* Centered text */
    display: block !important; /* Block layout */
    margin-top: 10px !important; /* Margin above */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Font family */
}

/* Styling for Currency Symbol */
li.product .price .woocommerce-Price-currencySymbol {
    color: #4c207a !important; /* Purple text */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Font family */
    font-weight: 600 !important; /* Semi-bold weight */
    font-size: inherit !important; /* Match parent font size */
}

/* Styling for Interval Text (e.g., "/ Month") */
li.product .price .wps_sfw_interval {
    color: #4c207a !important; /* Purple text */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Font family */
    font-weight: 600 !important; /* Semi-bold weight */
    font-size: inherit !important; /* Match parent font size */
}

/* General Styling for Purchase Button */
li.product .button {
    color: #ed82b6 !important; /* Light rose text color */
    background-color: #6f1d3b !important; /* Deep maroon background */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Oceanwide font */
    font-size: 18px !important; /* Button text size */
    line-height: 120% !important; /* Proper line height */
    letter-spacing: -0.02em !important; /* Subtle letter spacing */
    font-weight: 600 !important; /* Semi-bold font */
    border: none !important; /* No border */
    border-radius: 50px !important; /* Fully rounded corners */
    padding: 12px 24px !important; /* Padding for a button-like look */
    text-align: center !important; /* Center align text */
    display: inline-block !important; /* Proper inline display */
    width: auto !important; /* Allow flexible width */
    cursor: pointer !important; /* Pointer cursor for interaction */
    margin: 15px auto 0 !important; /* Center button with space above */
    transition: all 0.3s ease !important; /* Smooth hover transition */
    text-transform: uppercase !important; /* Ensure text is uppercase */
}

/* Hover Effect for Purchase Button */
li.product .button:hover {
    background-color: #a0305b !important; /* Slightly lighter maroon */
    color: #f5a3c5 !important; /* Slightly lighter rose text */
}

/* Responsive Styling for Mobile Devices */
@media (max-width: 768px) {
    li.product {
        padding: 10px !important; /* Reduce padding on smaller screens */
        margin-bottom: 15px !important; /* Adjust spacing */
    }

    li.product h2.woocommerce-loop-product__title {
        font-size: 14px !important; /* Smaller font for titles */
    }

    li.product .price {
        font-size: 14px !important; /* Smaller font for prices */
    }

    li.product .button {
        font-size: 11px !important; /* Slightly smaller button text */
        padding: 10px 20px !important; /* Adjust padding for mobile */
        width: 100% !important; /* Full-width button on mobile */
        text-align: center !important; /* Ensure centered text */
    }
}

/* Container Styling */
.custom-cart-container {
    font-family: "Oceanwide-Semibold", sans-serif; /* Use Oceanwide font globally */
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    border: 2px solid #ddd;
    border-radius: 10px;
    background-color: #f8f8f8;
}

/* Title Styling */
.cart-title {
    font-family: "Oceanwide-Semibold", sans-serif !important;
    font-size: 18px;
    text-align: left;
    color: #1c1c1c;
    margin-bottom: 15px;
}

/* Cart Item (Image Only) */
.cart-item {
    text-align: center;
    margin-bottom: 15px;
}

.cart-item .product-thumbnail {
    width: 330px !important; /* Set container width */
    max-width: 100%; /* Ensure responsiveness */
    margin: 0 auto; /* Center the container */
}

.cart-item .product-thumbnail img {
    width: 100% !important; /* Fill the container */
    height: auto !important; /* Maintain aspect ratio */
    display: block !important; /* Block element for proper layout */
    border-radius: 10px; /* Add rounded corners */
}

/* Coupon Section */
.cart-coupon {
    margin-bottom: 20px; /* Add spacing below the section */
    text-align: left;
}

.coupon-label {
    font-size: 14px !important;
    font-family: "Oceanwide-Semibold", sans-serif !important;
    margin-bottom: 5px;
    display: block !important; /* Ensure it stays on its own line */
    color: #1c1c1c;
}

/* Coupon Input Box Styling */
.coupon-box {
    width: 100%; /* Full width */
    padding: 12px 20px !important; /* Add padding for better spacing */
    font-size: 14px !important; /* Font size for input text */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Use Oceanwide font */
    color: #555 !important; /* Text color */
    background-color: #f9f9f9 !important; /* Light background */
    border: 2px solid #ddd !important; /* Light border color */
    border-radius: 50px !important; /* Rounded corners */
    margin-bottom: 10px !important; /* Space below input */
    outline: none !important; /* Remove outline on focus */
    box-shadow: none !important; /* Remove shadow */
    transition: border-color 0.3s ease !important; /* Smooth transition for hover/focus */
}

.coupon-box::placeholder {
    font-size: 16px !important; /* Match input text size */
    color: #aaa !important; /* Lighter placeholder color */
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Placeholder font */
}

.coupon-box:focus {
    border-color: #4c207a !important; /* Change border color on focus */
    background-color: #fff !important; /* Highlight background */
}

/* Apply Coupon Button */
.apply-coupon {
    font-family: "Oceanwide-Semibold", sans-serif !important; /* Font family */
    font-size: 12px !important; /* Font size */
    font-weight: 600 !important; /* Semi-bold weight */
    color: #757575 !important; /* Text color */
    background-color: transparent !important; /* Transparent background */
    border: 1px solid #757575 !important; /* Border color */
    padding: 8px 20px !important; /* Padding for a rounded look */
    border-radius: 50px !important; /* Fully rounded corners */
    cursor: pointer !important; /* Pointer cursor */
    transition: all 0.3s ease !important; /* Smooth transition */
    float: right !important; /* Align to the right */
}

.apply-coupon:hover {
    background-color: #757575 !important; /* Change background color on hover */
    color: #fff !important; /* White text on hover */
    border-color: #757575 !important; /* Match border color */
}

/* Total Section */
.cart-total {
    margin-top: 20px;
    text-align: right; /* Align to the right */
    clear: both; /* Ensure it clears floats above */
}

.total-label {
    font-size: 16px;
    font-weight: 600;
    color: #1c1c1c;
}

.total-price {
    font-size: 40px; /* 2.5x size of the label */
    font-weight: 600;
    color: #1c1c1c;
    margin-left: 10px;
}

/* Buttons Section */
.cart-buttons {
    text-align: center;
    margin-top: 20px;
}

.cart-buttons .button {
    display: inline-block;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    background-color: #6f1d3b;
    border: none;
    border-radius: 50px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
    text-decoration: none;
    width: 80%; /* Match button width in the design */
}

.cart-buttons .button:hover {
    background-color: #4c207a;
}

/* Align Apple Pay/Google Pay Buttons */
.cart-buttons .apple-pay-button,
.cart-buttons .google-pay-button {
    display: inline-block;
    margin-top: 10px;
    float: right;
    font-size: 12px;
    background: #ddd;
    color: #4c207a;
    border-radius: 5px;
    padding: 5px 10px;
    border: none;
    font-family: "Oceanwide-Semibold", sans-serif;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.cart-buttons .apple-pay-button:hover,
.cart-buttons .google-pay-button:hover {
    background-color: #ccc;
}

@media (max-width: 768px) {
    /* Ensure the cart container fills the screen width */
    .custom-cart-container {
        max-width: 100% !important; /* Full screen width */
        padding: 15px !important; /* Reduce padding for smaller screens */
    }

    /* Product Image Full Width */
    .custom-cart-container .cart-item .product-thumbnail {
        width: 100% !important; /* Full width of container */
        max-width: 100% !important; /* Prevent overflow */
        margin: 0 auto !important; /* Center the image */
        display: block !important; /* Block display */
    }

    .custom-cart-container .cart-item .product-thumbnail img {
        width: 100% !important; /* Scale image to container width */
        height: auto !important; /* Maintain aspect ratio */
        display: block !important; /* Ensure proper block layout */
        border-radius: 10px !important; /* Rounded corners */
    }

    /* Align Other Elements Center */
    .cart-title,
    .cart-coupon,
    .cart-total,
    .cart-buttons {
        text-align: center !important; /* Center align content */
    }

    /* Adjust Total Price Font Size */
    .cart-total .total-price {
        font-size: 30px !important; /* Slightly smaller for mobile */
        color: #4c207a !important; /* Match theme color */
    }

    /* Apply Coupon Button Full Width */
    .apply-coupon {
        width: 100% !important; /* Full width for better usability */
        float: none !important; /* Remove float */
        margin: 10px auto !important; /* Center button */
    }

    /* Proceed to Checkout Button Full Width */
    .cart-buttons .button {
        width: 100% !important; /* Full width */
        display: block !important; /* Ensure proper alignment */
        margin: 20px auto !important; /* Add spacing */
        padding: 15px !important; /* Adjust padding */
    }
}
/* General Checkout Form Styling */
.woocommerce-checkout input,
.woocommerce-checkout textarea,
.woocommerce-checkout select {
    display: block;
    width: 100%; /* Make fields take the full width of the container */
    max-width: 100%; /* Ensure no overflow */
    padding: 12px; /* Add internal padding */
    margin-bottom: 16px; /* Space between fields */
    font-size: 14px;
    color: #424242; /* Text color */
    background-color: #ffffff; /* Background color */
    border: 1px solid #e0e0e0; /* Border styling */
    border-radius: 8px; /* Rounded corners */
    box-sizing: border-box; /* Include padding and border in width */
}

/* Label Styling */
.woocommerce-checkout label {
    display: block; /* Ensure label appears above the input */
    margin-bottom: 8px; /* Add spacing between label and input */
    font-size: 14px;
    font-weight: 600;
    color: #424242;
}

/* Section Titles (e.g., Billing & Shipping) */
.woocommerce-checkout h3 {
    font-size: 24px;
    font-weight: 700;
    color: #424242;
    margin-bottom: 24px;
}

/* Adjust Two-Column Layout for Address Fields */
.woocommerce-address-fields .form-row-first,
.woocommerce-address-fields .form-row-last {
    width: 48%; /* Split the width evenly for two columns */
    float: left; /* Align side by side */
    margin-right: 4%; /* Add spacing between columns */
}

.woocommerce-address-fields .form-row-last {
    margin-right: 0; /* Remove margin from the last column */
}

.woocommerce-address-fields .form-row-wide {
    width: 100%; /* Full-width rows */
    float: none; /* Clear float for full-width rows */
}

/* Fix Alignment for Small Devices */
@media (max-width: 768px) {
    .woocommerce-address-fields .form-row-first,
    .woocommerce-address-fields .form-row-last {
        width: 100%; /* Full-width for mobile */
        float: none; /* Clear floats */
    }

    .woocommerce-checkout input,
    .woocommerce-checkout textarea,
    .woocommerce-checkout select {
        font-size: 16px; /* Increase font size for better usability */
        padding: 16px; /* Larger padding for mobile */
    }
}

/* Submit Button Styling */
.woocommerce-checkout button,
.woocommerce-checkout input[type="submit"] {
    width: 100%; /* Full-width button */
    padding: 12px;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    background-color: #ac165e;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    text-align: center;
    margin-top: 20px;
    transition: background-color 0.3s ease-in-out;
}

.woocommerce-checkout button:hover,
.woocommerce-checkout input[type="submit"]:hover {
    background-color: #931554;
}

/* Ensure Clearfix for Floats */
.woocommerce-checkout:after {
    content: "";
    display: block;
    clear: both;
}
/* General Styling for Checkout Form */
.woocommerce-billing-fields__field-wrapper p.form-row {
    width: 100%; /* Full width of the container */
    margin-bottom: 16px; /* Add spacing between fields */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Label Styling */
.woocommerce-billing-fields__field-wrapper p.form-row label {
    font-size: 14px;
    font-weight: 600;
    color: #424242; /* Text color */
    margin-bottom: 8px; /* Spacing between label and input */
}

/* Input Fields Styling */
.woocommerce-billing-fields__field-wrapper p.form-row .woocommerce-input-wrapper input,
.woocommerce-billing-fields__field-wrapper p.form-row .woocommerce-input-wrapper select,
.woocommerce-billing-fields__field-wrapper p.form-row .woocommerce-input-wrapper textarea {
    width: 100%; /* Ensure inputs take the full width */
    max-width: 100%;
    padding: 12px;
    font-size: 14px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #fff; /* White background for inputs */
    box-sizing: border-box;
    margin: 0;
}

/* Placeholder Color */
.woocommerce-billing-fields__field-wrapper p.form-row .woocommerce-input-wrapper input::placeholder {
    color: #bdbdbd;
}

/* Error Validation Styling */
.woocommerce-billing-fields__field-wrapper p.form-row input:focus,
.woocommerce-billing-fields__field-wrapper p.form-row select:focus,
.woocommerce-billing-fields__field-wrapper p.form-row textarea:focus {
    border-color: #ac165e; /* Highlight color on focus */
    outline: none;
}

/* Two-Column Fields (e.g., First Name and Last Name) */
.woocommerce-billing-fields__field-wrapper .form-row-first,
.woocommerce-billing-fields__field-wrapper .form-row-last {
    width: 48%; /* Each field takes half the row width */
    float: left; /* Align side by side */
    margin-right: 4%; /* Add spacing between the two columns */
}

.woocommerce-billing-fields__field-wrapper .form-row-last {
    margin-right: 0; /* Remove margin from the last column */
}

/* Reset Float for Wide Fields */
.woocommerce-billing-fields__field-wrapper .form-row-wide {
    width: 100%;
    float: none;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .woocommerce-billing-fields__field-wrapper .form-row-first,
    .woocommerce-billing-fields__field-wrapper .form-row-last {
        width: 100%; /* Full-width for mobile */
        float: none; /* Clear floats */
    }

    .woocommerce-billing-fields__field-wrapper p.form-row .woocommerce-input-wrapper input,
    .woocommerce-billing-fields__field-wrapper p.form-row .woocommerce-input-wrapper select {
        font-size: 16px; /* Increase font size for better usability */
        padding: 16px;
    }
}

/* Section Title Styling */
.woocommerce-billing-fields h3,
.woocommerce-additional-fields h3 {
    font-size: 20px;
    font-weight: 700;
    color: #424242;
    margin-bottom: 16px;
}

/* Checkbox Styling */
.woocommerce-billing-fields__field-wrapper input[type="checkbox"] {
    width: auto;
    margin-right: 8px;
}

/* Submit Button */
#place_order {
    background-color: #ac165e;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 20px;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    text-align: center;
    width: 100%;
    margin-top: 20px;
    transition: background-color 0.3s ease-in-out;
}

#place_order:hover {
    background-color: #931554;
}

/* Clear Fix for Floats */
.woocommerce-billing-fields__field-wrapper:after {
    content: "";
    display: block;
    clear: both;
}
/* Ensure col-1 takes up the full width of its parent */
.woocommerce-checkout .col-1 {
    width: 100% !important; /* Ensure full width */
    max-width: none !important; /* Remove any max-width limits */
    flex: 1 1 auto; /* Allow flexibility in resizing */
    display: block; /* Ensure it displays as a block */
}

/* Ensure its parent row aligns properly */
.woocommerce-checkout .woocommerce-checkout-columns {
    display: flex; /* Enable flex for alignment */
    flex-wrap: wrap; /* Allow wrapping for responsiveness */
    gap: 16px; /* Add spacing between columns */
}

/* Adjust the col-2 to avoid conflicts */
.woocommerce-checkout .col-2 {
    width: 100%; /* Default to full width */
    max-width: none; /* Ensure no limits */
    flex: 1 1 auto;
    display: block;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .woocommerce-checkout .col-1,
    .woocommerce-checkout .col-2 {
        width: 100% !important; /* Full width for mobile */
    }

    .woocommerce-checkout .woocommerce-checkout-columns {
        display: block; /* Stack columns on mobile */
    }
}
/* Hide button with the specific class */
.stripe-gateway-stripelink-modal-trigger {
    display: none !important; /* Completely hides the button */
}
/* Hide the Order Notes section */
#order_comments_field {
    display: none !important;
}
/* Ensure the wrapper spans the full width of the container */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper {
    width: 100% !important; /* Make the wrapper fill the container */
    display: block; /* Ensure it behaves like a block element */
    box-sizing: border-box; /* Include padding and border in width */
}

/* Ensure all input fields stretch across the width of the wrapper */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper .input-text {
    width: 100% !important; /* Make input fields fill their wrapper */
    box-sizing: border-box; /* Include padding and border in width */
}

/* Ensure select fields also stretch across */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper select {
    width: 100% !important;
    box-sizing: border-box;
}

/* Ensure text areas fill the width */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper textarea {
    width: 100% !important;
    box-sizing: border-box;
}
/* Add rounded corners and border to the billing fields container */
.woocommerce-billing-fields__field-wrapper {
    border: 2px solid #eeeeee; /* Light grey border */
    border-radius: 10px; /* Rounded corners */
    padding: 20px; /* Add padding for spacing inside the box */
    background-color: #fafafa; /* Light background color */
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1); /* Optional: Subtle shadow for depth */
    margin-bottom: 20px; /* Add space below the field wrapper */
}

/* Remove black lines under each form field section */
.woocommerce-billing-fields__field-wrapper p.form-row {
    border: none !important; /* Remove any borders from form-row */
    margin-bottom: 15px; /* Add space between rows */
}

/* Style input fields for better consistency */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper input,
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper select,
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper textarea {
    border: 1px solid #e0e0e0; /* Subtle border for input fields */
    border-radius: 5px; /* Rounded corners */
    padding: 12px; /* Spacing inside the input fields */
    width: 100%; /* Make fields stretch across the width of the container */
    box-sizing: border-box; /* Include padding and border in width */
    background-color: #ffffff; /* White background */
    transition: border-color 0.3s ease; /* Smooth transition on focus */
}

/* Highlight input fields on focus */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper input:focus,
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper select:focus,
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper textarea:focus {
    border-color: #6f1d3b; /* Highlight border color on focus */
    outline: none; /* Remove default outline */
}

/* Style the labels for better readability */
.woocommerce-billing-fields__field-wrapper label {
    font-family: "Oceanwide-Semibold", sans-serif; /* Match your desired font */
    font-size: 14px; /* Font size for labels */
    color: #424242; /* Text color for labels */
    margin-bottom: 5px; /* Spacing between label and input field */
    display: block; /* Ensure label is on its own line */
}

/* Remove unnecessary padding/margin for inputs inside the wrapper */
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper {
    padding: 0;
    margin: 0;
}
/* Hide Unnecessary Elements */
.woocommerce-checkout-review-order-table thead,
.woocommerce-checkout-review-order-table .cart-subtotal,
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals,
.woocommerce-checkout-review-order-table .wps_recurring_bifurcation_wrapper {
    display: none; /* Hide table headers, subtotals, and shipping details */
}

/* Style the Product Row */
.woocommerce-checkout-review-order-table .cart_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #ddd; /* Optional: add a divider between items */
}

.woocommerce-checkout-review-order-table .cart_item .product-name {
    font-weight: bold;
    font-size: 16px;
    color: #333;
    flex: 1; /* Allow product name to take the remaining space */
}

.woocommerce-checkout-review-order-table .cart_item .product-total {
    font-size: 16px;
    font-weight: bold;
    color: #424242;
    flex-shrink: 0; /* Ensure price stays aligned */
}

/* Style the Total Row */
.woocommerce-checkout-review-order-table .order-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 2px solid #ddd;
}

.woocommerce-checkout-review-order-table .order-total th {
    text-align: left;
    color: #333;
}

.woocommerce-checkout-review-order-table .order-total td {
    text-align: right;
    color: #333;
}


/* General Styling for the Payment Box */
.payment_box.payment_method_stripe {
    border: 1px solid #e0e0e0; /* Add a light border */
    border-radius: 8px; /* Rounded corners */
    padding: 20px; /* Add consistent padding */
    background-color: #f9f9f9; /* Light background color */
    margin-top: 20px; /* Add spacing above */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    display: block !important; /* Ensure the box is visible */
}

/* Ensure Stripe iframe inputs render correctly */
.payment_box iframe {
    width: 100% !important;
    height: auto !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    display: block !important; /* Force display */
}

/* Styling for Saved Payment Methods List */
.woocommerce-SavedPaymentMethods {
    list-style: none; /* Remove bullet points */
    padding: 0; /* Remove default padding */
    margin: 0; /* Remove default margin */
}

.woocommerce-SavedPaymentMethods li {
    display: flex; /* Align items horizontally */
    align-items: center;
    margin-bottom: 10px; /* Add spacing between items */
    padding: 10px 0; /* Add padding for each item */
    border-bottom: 1px solid #ddd; /* Divider between items */
}

.woocommerce-SavedPaymentMethods li:last-child {
    border-bottom: none; /* Remove border for the last item */
}

/* Styling for Radio Buttons and Labels */
.woocommerce-SavedPaymentMethods-tokenInput {
    appearance: none; /* Remove default browser styling */
    width: 20px;
    height: 20px;
    border: 2px solid #6f1d3b; /* Custom border color */
    border-radius: 50%; /* Circle shape */
    margin-right: 10px; /* Space between button and label */
    cursor: pointer; /* Pointer cursor for better UX */
    transition: all 0.3s ease; /* Smooth transition */
}

.woocommerce-SavedPaymentMethods-tokenInput:checked {
    background-color: #6f1d3b; /* Background color when selected */
    border-color: #6f1d3b; /* Border color when selected */
}

.woocommerce-SavedPaymentMethods-tokenInput:checked::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    margin: 5px auto; /* Center inner dot */
    background-color: white;
    border-radius: 50%;
}

/* Styling for Labels */
.woocommerce-SavedPaymentMethods label {
    font-family: 'Oceanwide-Semibold', sans-serif;
    font-size: 14px;
    color: #424242;
    cursor: pointer; /* Make labels clickable */
}

/* Stripe Errors Styling */
.stripe-source-errors {
    color: #d32f2f; /* Error color */
    font-size: 12px;
    margin-top: 5px;
}

/* Do NOT hide essential Stripe fieldsets */
.payment_box.payment_method_stripe fieldset {
    display: block !important; /* Ensure fieldsets are visible */
}

/* Stripe Input Field Styling */
.payment_box .p-GridCell {
    display: block !important;
    margin-bottom: 15px; /* Add spacing between fields */
}

.p-FieldLabel {
    display: inline-block !important; /* Ensure labels are visible */
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 14px;
    color: #1c1c1c !important; /* Ensure labels are consistent */
}

.payment_box .p-Input input {
    width: 100% !important;
    padding: 10px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    box-shadow: none !important;
    outline: none !important;
    margin-bottom: 10px;
}
/* Target Stripe iframe container */
.stripe-card-group iframe {
    color: #1c1c1c !important; /* Ensure text is dark */
  }
  
  .stripe-card-group input::placeholder {
    color: #888888 !important; /* Adjust placeholder text */
  }
  
  /* Target outer container of Stripe form fields */
  .p-FieldLabel.Label.Label--empty {
    color: #1c1c1c !important; /* Enforce text color */
    font-family: "Roboto", sans-serif !important;
  }
/* Style Stripe elements */
.p-FieldLabel, 
.Label, 
.Label--empty {
  color: #1c1c1c !important; /* Force dark text */
}

.Label {
    color: #1c1c1c !important;
}
.Input {
    color: #1c1c1c !important;
}
/* Ensure the label displays inline items */
.woocommerce-form__label-for-checkbox {
    display: flex; /* Arrange items in a horizontal row */
    align-items: center; /* Vertically align the checkbox and text */
    gap: 10px; /* Add spacing between the checkbox and text */
    margin: 20px 0; /* Add spacing around the checkbox section */
    line-height: 1.5; /* Ensure proper text alignment and spacing */
}

/* Style the checkbox itself */
.woocommerce-form__input-checkbox {
    appearance: none; /* Remove default browser styling */
    width: 20px; /* Checkbox size */
    height: 20px; /* Checkbox size */
    border: 2px solid #6f1d3b; /* Custom border color */
    border-radius: 4px; /* Rounded corners for the checkbox */
    cursor: pointer; /* Pointer cursor for interactivity */
    transition: all 0.3s ease; /* Smooth transition for interactions */
    display: inline-block; /* Ensure proper alignment */
}

/* Add a checkmark when the checkbox is selected */
.woocommerce-form__input-checkbox:checked {
    background-color: #6f1d3b; /* Background color when selected */
    border-color: #6f1d3b; /* Border color when selected */
}

.woocommerce-form__input-checkbox:checked::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    margin: 5px auto; /* Center the inner tick mark */
    background-color: white; /* White tick mark */
    border-radius: 2px; /* Match checkbox shape */
}

/* Style the terms and conditions text */
.woocommerce-terms-and-conditions-checkbox-text {
    font-family: 'Oceanwide-Semibold', sans-serif; /* Use your custom font */
    font-size: 14px; /* Standardize font size */
    color: #424242; /* Text color */
    line-height: 1.5; /* Improve readability */
    margin: 0; /* Remove unnecessary margin */
}

/* Style links within the terms and conditions text */
.woocommerce-terms-and-conditions-checkbox-text a {
    text-decoration: underline; /* Underline links for visibility */
    color: #6f1d3b; /* Match your theme's color scheme */
    transition: color 0.3s ease; /* Smooth color change on hover */
}

.woocommerce-terms-and-conditions-checkbox-text a:hover {
    color: #4c207a; /* Darker color on hover */
}

/* Style the required asterisk */
.woocommerce-form__label-for-checkbox .required {
    color: #d32f2f; /* Red color for required fields */
    font-size: 12px; /* Smaller size for asterisk */
    margin-left: 4px; /* Add spacing from the label text */
}

/* Ensure the label and checkbox are horizontally aligned */
.woocommerce-form__label-for-checkbox {
    display: flex !important; /* Use flexbox for alignment */
    align-items: center !important; /* Vertically align the checkbox and text */
    gap: 10px !important; /* Add space between the checkbox and text */
    line-height: 1.5 !important; /* Ensure proper line height for text */
}

/* Style the checkbox to be square and properly sized */
.woocommerce-form__input-checkbox {
    width: 20px !important; /* Set the width */
    height: 20px !important; /* Set the height */
    margin: 0 !important; /* Remove any default margins */
    padding: 0 !important; /* Remove any padding */
    display: inline-block !important; /* Ensure it's inline */
    border: 2px solid #757575 !important; /* Add a border for better visibility */
    border-radius: 4px !important; /* Optional: Add rounded corners */
    appearance: none !important; /* Remove default styles */
    cursor: pointer !important; /* Show pointer cursor for interactivity */
}

/* Add a tick mark when the checkbox is checked */
.woocommerce-form__input-checkbox:checked {
    background-color: #4c207a !important; /* Set a background color */
    border-color: #4c207a !important; /* Match border with background */
    color: white !important; /* Optional: For tick color if needed */
    position: relative !important;
}

/* Style the text beside the checkbox */
.woocommerce-terms-and-conditions-checkbox-text {
    font-family: 'Oceanwide-Semibold', sans-serif !important;
    font-size: 14px !important; /* Adjust text size */
    color: #424242 !important; /* Text color */
    margin: 0 !important; /* Reset any default margins */
}

/* Optional: Style the required asterisk */
.woocommerce-form__label-for-checkbox .required {
    color: #d32f2f !important; /* Make it red for required */
    font-size: 12px !important; /* Adjust size */
    margin-left: 4px !important; /* Add spacing */
}
/* Remove shadow or border around <p> */
p.form-row {
    box-shadow: none !important; /* Remove any shadow */
    border: none !important; /* Remove any borders */
    background: none !important; /* Remove background colors */
    margin: 0 !important; /* Reset margin */
    padding: 10px !important; /* Reset padding */
}

/* Remove any styling from the input wrapper */
.woocommerce-input-wrapper {
    box-shadow: none !important; /* Remove shadow from wrapper */
    border: none !important; /* Remove border */
    background: none !important; /* Remove background */
    margin: 0 !important; /* Reset margin */
    padding: 0 !important; /* Reset padding */
}

/* Remove box shadow or outline from inputs */
.input-text {
    box-shadow: none !important; /* Remove shadow */
    border: 1px solid #ddd !important; /* Optional: Add a subtle border */
    border-radius: 4px !important; /* Optional: Add a small border radius */
    background: #fff !important; /* Ensure white background */
    padding: 10px !important; /* Add consistent padding */
    outline: none !important; /* Remove focus outline */
}

/* Remove focus highlight from inputs */
.input-text:focus {
    border-color: #4c207a !important; /* Optional: Add focus color */
    box-shadow: none !important; /* Remove shadow on focus */
}
p.form-row label {
    margin-bottom: 10px !important; /* Ensure consistent label spacing */
    display: block; /* Ensure label stays above the field */
}

footer {
    width: 100%;
    clear: both;
    margin-top: 30px;
}
.woocommerce-checkout, .woocommerce-checkout-review-order, .woocommerce-billing-fields {
    max-width: 100%;
}
#place_order {
    width: auto; /* Automatically adjust width based on content */
    padding: 10px 20px; /* Add consistent padding */
    text-align: center; /* Center the text inside the button */
    margin-top: 20px; /* Add some space above */
    float: right; /* Align the button to the right */
}
/* Styling for Agree and Close Buttons */
/* Styling for Agree and Close Buttons */
.mypopupbuttonclass {
    display: inline-flex !important; /* Use flexbox for proper text alignment */
    align-items: center !important; /* Vertically center text */
    justify-content: center !important; /* Horizontally center text */
    padding: 15px 30px !important; /* Adjust padding for button size */
    border-radius: 25px !important; /* Rounded corners */
    background-color: #ac165e !important; /* Solid red background */
    color: #ffffff !important; /* White text */
    text-align: center !important; /* Ensure text is centered */
    text-decoration: none !important; /* Remove underline from links */
    font-family: 'Oceanwide-Semibold', sans-serif !important; /* Font styling */
    font-size: 16px !important; /* Slightly larger font size */
    font-weight: 600 !important; /* Bold font weight */
    cursor: pointer !important; /* Pointer cursor for better UX */
    transition: all 0.3s ease !important; /* Smooth hover effect */
    margin: 10px !important; /* Add space between buttons */
    border: 2px solid #8c134b !important; /* Slightly darker border */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important; /* Subtle shadow for depth */
    height: 50px !important; /* Ensure consistent button height */
    line-height: normal !important; /* Prevent text from being offset */
}

/* Hover Effect */
.mypopupbuttonclass:hover {
    background-color: #8c134b !important; /* Slightly darker red on hover */
    color: #ffffff !important; /* Keep text white */
    transform: scale(1.05) !important; /* Slightly enlarge on hover */
}
/* Styling for My Account Navigation Links */
.woocommerce-MyAccount-navigation-link a {
    display: block !important; /* Ensures links span full width */
    background-color: #f4edfc !important; /* Light purple background */
    color: #4a0d67 !important; /* Navy-like text color */
    border: 2px solid #4a0d67 !important; /* Border matches the text */
    border-radius: 12px !important; /* Rounded corners */
    padding: 10px 15px !important; /* Add padding for better spacing */
    font-family: 'Satoshi', sans-serif !important; /* Match font style */
    font-weight: 500 !important; /* Medium weight for text */
    font-size: 16px !important; /* Adjust font size for readability */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    transition: all 0.3s ease !important; /* Smooth hover effect */
}

/* Hover Effect for Links */
.woocommerce-MyAccount-navigation-link a:hover {
    background-color: #4a0d67 !important; /* Navy background on hover */
    color: #f4edfc !important; /* Light purple text on hover */
    border-color: #4a0d67 !important; /* Keep border same as background */
}

/* Styling for Active Link */
.woocommerce-MyAccount-navigation-link.is-active a {
    background-color: #4a0d67 !important; /* Navy background for active link */
    color: #f4edfc !important; /* Light purple text for active link */
    border-color: #4a0d67 !important; /* Border matches active background */
}

/* Add spacing between links */
.woocommerce-MyAccount-navigation-link {
    margin-bottom: 10px !important; /* Space between links */
}
/* Styling for the "View" Button in Orders Table */
.woocommerce-orders-table__cell .woocommerce-button.view {
    background-color: #f4edfc !important; /* Light purple background */
    color: #4a0d67 !important; /* Navy-like text color */
    border: 2px solid #4a0d67 !important; /* Border matches text color */
    border-radius: 12px !important; /* Rounded corners */
    padding: 8px 15px !important; /* Adjust padding */
    font-family: 'Satoshi', sans-serif !important; /* Font style */
    font-weight: 500 !important; /* Medium font weight */
    font-size: 16px !important; /* Font size */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    display: inline-block !important; /* Ensure it displays as a button */
    transition: all 0.3s ease !important; /* Smooth hover effect */
}

/* Hover Effect for the "View" Button */
.woocommerce-orders-table__cell .woocommerce-button.view:hover {
    background-color: #4a0d67 !important; /* Navy background on hover */
    color: #f4edfc !important; /* Light purple text on hover */
    border-color: #4a0d67 !important; /* Keep border same as background */
}
/* Styling for the Order Number Link */
.woocommerce-orders-table__cell-order-number a {
    background-color: #4a0d67 !important; /* Dark purple background */
    color: #f4edfc !important; /* Light purple text color */
    border: 2px solid #4a0d67 !important; /* Border matches background color */
    border-radius: 12px !important; /* Rounded corners */
    padding: 8px 12px !important; /* Adjust padding */
    font-family: 'Satoshi', sans-serif !important; /* Font style */
    font-weight: 500 !important; /* Medium font weight */
    font-size: 14px !important; /* Font size */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    display: inline-block !important; /* Ensure it displays as a button */
    transition: all 0.3s ease !important; /* Smooth hover effect */
}

/* Hover Effect for the Order Number Link */
.woocommerce-orders-table__cell-order-number a:hover {
    background-color: #f4edfc !important; /* Light purple background on hover */
    color: #4a0d67 !important; /* Dark purple text on hover */
    border-color: #f4edfc !important; /* Light purple border on hover */
}
/* Styling for the "Next" Button */
.woocommerce-button--next {
    background-color: transparent !important; /* Transparent background */
    color: #4a0d67 !important; /* Dark purple text color */
    border: 2px solid #4a0d67 !important; /* Dark purple border */
    border-radius: 12px !important; /* Rounded corners */
    padding: 8px 12px !important; /* Adjust padding */
    font-family: 'Satoshi', sans-serif !important; /* Font style */
    font-weight: 500 !important; /* Medium font weight */
    font-size: 14px !important; /* Font size */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    display: inline-block !important; /* Display as button */
    transition: all 0.3s ease !important; /* Smooth hover effect */
}

/* Hover Effect for the "Next" Button */
.woocommerce-button--next:hover {
    background-color: #4a0d67 !important; /* Dark purple background on hover */
    color: #ffffff !important; /* White text on hover */
    border-color: #4a0d67 !important; /* Border remains dark purple */
}
/* Styling for the "Previous" Button */
.woocommerce-button--previous {
    background-color: transparent !important; /* Transparent background */
    color: #4a0d67 !important; /* Dark purple text color */
    border: 2px solid #4a0d67 !important; /* Dark purple border */
    border-radius: 12px !important; /* Rounded corners */
    padding: 8px 12px !important; /* Adjust padding */
    font-family: 'Satoshi', sans-serif !important; /* Font style */
    font-weight: 500 !important; /* Medium font weight */
    font-size: 14px !important; /* Font size */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    display: inline-block !important; /* Display as button */
    transition: all 0.3s ease !important; /* Smooth hover effect */
}

/* Hover Effect for the "Previous" Button */
.woocommerce-button--previous:hover {
    background-color: #4a0d67 !important; /* Dark purple background on hover */
    color: #ffffff !important; /* White text on hover */
    border-color: #4a0d67 !important; /* Border remains dark purple */
}
/* General Form Styling */
.woocommerce-address-fields__field-wrapper label {
    color: #4a0d67 !important; /* Label color */
    font-weight: 500; /* Optional: Make it slightly bold */
    display: block; /* Move label above the input field */
    margin-bottom: 8px; /* Add space between label and input */
}

.woocommerce-address-fields__field-wrapper input.input-text,
.woocommerce-address-fields__field-wrapper select {
    background-color: #ffffff !important; /* White background */
    color: #1c1c1c !important; /* Black text color */
    border: 1px solid #4a0d67 !important; /* Border color */
    border-radius: 8px !important; /* Rounded corners */
    padding: 10px 12px !important; /* Add padding */
    font-size: 14px !important; /* Adjust font size */
    width: 100%; /* Ensure input fields span full width */
    box-sizing: border-box; /* Prevent overflow issues */
    transition: all 0.3s ease-in-out; /* Smooth transitions */
}

/* Dropdown Styling */
.woocommerce-address-fields__field-wrapper select {
    background-color: #ffffff !important; /* White background */
    color: #1c1c1c !important; /* Black text */
    border: 1px solid #4a0d67 !important; /* Purple border */
    border-radius: 8px !important; /* Rounded corners */
    padding: 10px !important; /* Adjust padding */
    font-family: 'Satoshi', sans-serif; /* Match font style */
    font-size: 14px !important; /* Adjust font size */
}

/* Button Styling */
.woocommerce-address-fields .button {
    background-color: #4a0d67 !important; /* Dark purple background */
    color: #ffffff !important; /* White text */
    border: 2px solid #4a0d67 !important; /* Border matches background */
    border-radius: 12px !important; /* Rounded corners */
    padding: 10px 15px !important; /* Add padding */
    font-family: 'Satoshi', sans-serif !important; /* Font style */
    font-weight: 500 !important; /* Medium font weight */
    font-size: 14px !important; /* Font size */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    display: inline-block !important; /* Ensure it displays as a button */
    transition: all 0.3s ease !important; /* Smooth hover effect */
}

/* Hover Effect for Button */
.woocommerce-address-fields .button:hover {
    background-color: #ffffff !important; /* White background */
    color: #4a0d67 !important; /* Purple text */
    border-color: #4a0d67 !important; /* Purple border */
}
/* Styling the Dropdown Select Box for Elementor WooCommerce */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single {
    background-color: #ffffff !important; /* White background */
    border: 1px solid #4a0d67 !important; /* Dark purple border */
    border-radius: 8px !important; /* Rounded corners */
    padding: 8px 12px !important; /* Add padding */
    font-family: 'Satoshi', sans-serif !important; /* Match font */
    font-size: 14px !important; /* Font size */
    color: #1c1c1c !important; /* Black text */
    box-sizing: border-box; /* Prevent overflow issues */
    appearance: none; /* Remove default browser styling */
    -webkit-appearance: none; /* For Safari */
    -moz-appearance: none; /* For Firefox */
}

/* Styling the Selected Text */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #1c1c1c !important; /* Black text */
    padding-left: 12px !important; /* Add padding to match the box */
    font-family: 'Satoshi', sans-serif !important;
    font-size: 14px !important;
}

/* Add a Custom Dropdown Arrow */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single .select2-selection__arrow {
    color: #4a0d67 !important; /* Dark purple for arrow */
    font-size: 12px;
}

/* Styling the Options in the Dropdown */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-results__option {
    background-color: #ffffff !important; /* White background */
    color: #1c1c1c !important; /* Black text */
    font-family: 'Satoshi', sans-serif !important;
    font-size: 14px !important;
}

/* Hover and Focus State for Options */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-results__option--highlighted {
    background-color: #4a0d67 !important; /* Dark purple background */
    color: #ffffff !important; /* White text */
}

/* Hover and Focus State for the Select Box */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single:focus,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single:hover {
    border-color: #6e2594 !important; /* Slightly darker purple */
    outline: none !important; /* Remove default focus outline */
}
/* Styling the select2-selection container */
.select2-selection.select2-selection--single {
    background-color: #ffffff !important; /* White background */
    border: 1px solid #4a0d67 !important; /* Dark purple border */
    border-radius: 8px !important; /* Rounded corners */
    padding: 8px 12px !important; /* Padding inside the select box */
    font-family: 'Satoshi', sans-serif !important; /* Match font */
    font-size: 14px !important; /* Font size */
    color: #1c1c1c !important; /* Black text for placeholder/selected text */
    box-sizing: border-box; /* Prevent overflow issues */
    appearance: none; /* Remove default browser styling */
    -webkit-appearance: none; /* For Safari */
    -moz-appearance: none; /* For Firefox */
}

/* Styling the rendered text inside the select box */
.select2-selection__rendered {
    color: #1c1c1c !important; /* Black text */
    padding-left: 12px !important; /* Add padding */
    padding-top: 0px !important; /* Add vertical padding */
    padding-bottom: 9px !important; /* Add vertical padding */
    font-family: 'Satoshi', sans-serif !important; /* Consistent font */
    font-size: 14px !important; /* Font size */
    line-height: 1.1 !important; /* Adjust line height for better spacing */
}


/* Custom arrow styling */
.select2-selection__arrow {
    color: #4a0d67 !important; /* Dark purple for the arrow */
    font-size: 12px !important; /* Adjust arrow size */
}

/* Styling the dropdown options */
.select2-container--default .select2-results__option {
    background-color: #ffffff !important; /* White background for options */
    color: #1c1c1c !important; /* Black text */
    font-family: 'Satoshi', sans-serif !important;
    font-size: 14px !important;
}

/* Hover and selected states for dropdown options */
.select2-container--default .select2-results__option--highlighted {
    background-color: #4a0d67 !important; /* Dark purple background */
    color: #ffffff !important; /* White text */
}

/* Hover and focus state for the select box */
.select2-selection.select2-selection--single:focus,
.select2-selection.select2-selection--single:hover {
    border-color: #6e2594 !important; /* Slightly darker purple on hover */
    outline: none !important; /* Remove default outline */
}
/* Override the background-image to remove it */
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .form-row .input-text,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .form-row select,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default .select2-selection--single,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .select2-container--default,
.select2-results__option,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab__payment-methods input[type="text"] {
    background-color: #ffffff !important; /* Set to white or your desired color */
    background-image: none !important; /* Disable background image */
    
    border-radius: 8px !important; /* Optional: Rounded corners */
    color: #1c1c1c !important; /* Black text for consistency */
    
    font-family: 'Satoshi', sans-serif !important;
}
/* Style the WooCommerce order details table */
.woocommerce-table--order-details {
    border: 1px solid #4a0d67 !important; /* Dark purple border */
    border-radius: 12px !important; /* Rounded corners */
    padding: 12px !important; /* Add padding around the table */
    background-color: #ffffff !important; /* White background */
    color: #1c1c1c !important; /* Black text */
    font-family: 'Satoshi', sans-serif !important; /* Consistent font */
}

/* Style table header */
.woocommerce-table--order-details thead th {
    color: #1c1c1c !important; /* Black text */
    background-color: #f4edfc !important; /* Light purple background */
    padding: 10px !important; /* Padding for header cells */
    text-align: left !important; /* Align text to the left */
    border-bottom: 1px solid #4a0d67 !important; /* Add border below header */
}

/* Style table rows */
.woocommerce-table--order-details tbody tr,
.woocommerce-table--order-details tfoot tr {
    border-bottom: 1px solid #4a0d67 !important; /* Dark purple border between rows */
}

/* Style table cells */
.woocommerce-table--order-details tbody td,
.woocommerce-table--order-details tfoot td {
    color: #1c1c1c !important; /* Black text for table data */
    padding: 8px 10px !important; /* Padding for table cells */
}

/* Style links in the table */
.woocommerce-table--order-details a {
    color: #4a0d67 !important; /* Dark purple for links */
    text-decoration: none !important; /* Remove underline */
    font-weight: 500 !important; /* Medium font weight */
    transition: color 0.3s ease !important; /* Smooth hover effect */
}

.woocommerce-table--order-details a:hover {
    color: #f4edfc !important; /* Light purple on hover */
}

/* Style table footer */
.woocommerce-table--order-details tfoot th,
.woocommerce-table--order-details tfoot td {
    font-weight: bold !important; /* Bold text for totals */
    padding: 10px !important; /* Padding for footer cells */
    background-color: #f4edfc !important; /* Light purple background */
    color: #1c1c1c !important; /* Black text */
    border-top: 1px solid #4a0d67 !important; /* Border above footer */
}

/* Add rounded corners to entire table */
.woocommerce-table--order-details {
    overflow: hidden !important; /* Ensure the rounded edges are visible */
    border-radius: 12px !important; /* Rounded corners for entire table */
}
body .woocommerce-table--order-details .product-name,
body .woocommerce-table--order-details .product-name a,
body .woocommerce-table--order-details .product-total,
body .woocommerce-table--order-details tfoot th,
body .woocommerce-table--order-details tfoot td {
    color: #1c1c1c !important; /* Change the text color to dark gray */
}
/* Ensure the input fields fill the entire width */
.woocommerce-address-fields__field-wrapper p.form-row {
    display: flex;
    flex-direction: column; /* Stack label above input */
    align-items: flex-start;
    width: 100%; /* Ensure full width of the container */
    margin: 0; /* Remove any default margins */
}

/* Ensure the parent container uses full width */
.woocommerce-address-fields__field-wrapper {
    padding: 0; /* Remove any default padding */
    width: 100%; /* Use full width */
    box-sizing: border-box; /* Include padding and border in width calculation */
}

/* Input and select styling */
.woocommerce-address-fields__field-wrapper p.form-row input,
.woocommerce-address-fields__field-wrapper p.form-row select {
    width: 100%; /* Input fields take up the full width of the container */
    max-width: 100%; /* Prevent overflow */
    padding: 10px; /* Add padding for usability */
    font-size: 14px; /* Adjust text size inside input fields */
    border: 1px solid #4a0d67; /* Dark purple border */
    border-radius: 5px; /* Rounded corners */
    color: #1c1c1c; /* Dark gray text color */
    background-color: #ffffff; /* White background */
    box-sizing: border-box; /* Include padding and border in width */
}

/* Add spacing between fields */
.woocommerce-address-fields__field-wrapper p.form-row:not(:last-child) {
    margin-bottom: 15px; /* Add spacing between fields */
}
/* Target the input wrapper to ensure it fills the container */
.woocommerce-input-wrapper {
    display: block; /* Ensure it behaves like a block element */
    width: 100%; /* Make it take up the full width */
    max-width: 100%; /* Prevent unintended overflow */
    box-sizing: border-box; /* Include padding and border in width calculation */
    padding: 0; /* Remove any padding */
    margin: 0; /* Remove any margins */
}

/* Ensure the input fields inside also fill the container */
.woocommerce-input-wrapper input,
.woocommerce-input-wrapper select {
    display: block; /* Ensure inputs behave properly */
    width: 100%; /* Take up the full width */
    max-width: 100%; /* Prevent overflow */
    padding: 10px; /* Add padding for usability */
    font-size: 14px; /* Adjust text size */
    border: 1px solid #4a0d67; /* Dark purple border */
    border-radius: 5px; /* Rounded corners */
    color: #1c1c1c; /* Dark gray text */
    background-color: #ffffff; /* White background */
    box-sizing: border-box; /* Include padding and border in width */
}

/* Add spacing between the fields for consistency */
.woocommerce-address-fields__field-wrapper p.form-row {
    margin-bottom: 15px; /* Add spacing between form rows */
}

/* Remove any unnecessary padding from the parent field wrapper */
.woocommerce-address-fields__field-wrapper {
    padding: 0;
    margin: 0;
    width: 100%;
    box-sizing: border-box;
}
/* Style for buttons under Elementor hidden rules */
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-EditAccountForm .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-address-fields .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button,
.elementor-515 .elementor-element.elementor-element-7199a54 #add_payment_method #payment #place_order {
    background-color: #4a0d67 !important; /* Dark purple background */
    color: #f4edfc !important; /* Light purple text */
    border: 2px solid #4a0d67 !important; /* Border matches background */
    border-radius: 12px !important; /* Rounded corners */
    padding: 10px 20px !important; /* Adjust padding */
    font-family: 'Satoshi', sans-serif !important; /* Font style */
    font-weight: 500 !important; /* Medium font weight */
    font-size: 14px !important; /* Font size */
    text-align: center !important; /* Center-align text */
    text-decoration: none !important; /* Remove underline */
    cursor: pointer !important; /* Pointer cursor for buttons */
    transition: all 0.3s ease !important; /* Smooth hover effect */
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1) !important; /* Subtle shadow for depth */
}

/* Hover effect */
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-EditAccountForm .button:hover,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-address-fields .button:hover,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button:hover,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button:hover,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button:hover,
.elementor-515 .elementor-element.elementor-element-7199a54 #add_payment_method #payment #place_order:hover {
    background-color: #f4edfc !important; /* Light purple background on hover */
    color: #4a0d67 !important; /* Dark purple text on hover */
    border-color: #f4edfc !important; /* Light purple border on hover */
    box-shadow: 0px 6px 8px rgba(0, 0, 0, 0.15) !important; /* Enhanced shadow on hover */
}

/* Ensure the buttons maintain their size */
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-EditAccountForm .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-address-fields .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button,
.elementor-515 .elementor-element.elementor-element-7199a54 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button,
.elementor-515 .elementor-element.elementor-element-7199a54 #add_payment_method #payment #place_order {
    width: auto !important; /* Allow it to adjust to content */
    min-width: 150px !important; /* Add a minimum width if needed */
    max-width: 100% !important; /* Prevent it from overflowing */
    box-sizing: border-box !important; /* Include padding and border in size */
}
.styled-button {
    background-color: #4a0d67; /* Dark purple background */
    color: #f4edfc; /* Light purple text */
    border: 2px solid #4a0d67; /* Border matches background */
    border-radius: 12px; /* Rounded corners */
    padding: 10px 20px; /* Adjust padding for consistency */
    font-family: 'Satoshi', sans-serif; /* Font style */
    font-weight: 500; /* Medium font weight */
    font-size: 14px; /* Font size */
    text-align: center; /* Center-align text */
    text-decoration: none; /* Remove underline */
    display: inline-block; /* Ensure it behaves like a button */
    cursor: pointer; /* Pointer cursor for buttons */
    transition: all 0.3s ease; /* Smooth hover effect */
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
}

.styled-button:hover {
    background-color: #f4edfc; /* Light purple background on hover */
    color: #4a0d67; /* Dark purple text on hover */
    border-color: #f4edfc; /* Light purple border on hover */
    box-shadow: 0px 6px 8px rgba(0, 0, 0, 0.15); /* Enhanced shadow on hover */
}
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .form-row label {
    color: #1c1c1c !important; /* Set label color to dark gray */
    font-family: 'Satoshi', sans-serif !important; /* Ensure consistent font */
    font-size: 14px !important; /* Adjust label font size if necessary */
    font-weight: 500 !important; /* Ensure label stands out */
}
/* Ensure the wrapper for input fields spans the full width */
.woocommerce-MyAccount-content-wrapper {
    width: 100%; /* Ensure the container occupies full width */
    box-sizing: border-box; /* Prevent padding and borders from overflowing */
    margin: 0 auto; /* Center the container */
    padding: 0 15px; /* Optional: Add some padding for better alignment */
}

/* Style the form row to align input fields properly */
.woocommerce .form-row {
    display: flex;
    flex-direction: column; /* Stack label and input */
    width: 100%; /* Ensure it occupies full width */
    box-sizing: border-box;
}

/* Ensure input fields take up full width */
.woocommerce .form-row input,
.woocommerce .form-row select {
    width: 100%; /* Full width for input fields */
    box-sizing: border-box; /* Include padding and border in width */
    padding: 10px; /* Add padding for usability */
    font-size: 14px; /* Adjust text size */
    border: 1px solid #4a0d67; /* Border color matching the design */
    border-radius: 5px; /* Add rounded corners */
    color: #1c1c1c; /* Dark gray text */
    background-color: #ffffff; /* White background */
}

/* Add spacing between form elements */
.woocommerce .form-row {
    margin-bottom: 15px; /* Add spacing between fields */
}
.select select {
    font-family: 'Arial', sans-serif; /* Ensure proper font */
    display: inline-block;
    width: 100%; /* Full width */
    cursor: pointer;
    padding: 10px 13px; /* Padding inside the dropdown */
    outline: none; /* Remove outline */
    border: 2px solid #4a0d67; /* Purple border */
    border-radius: 4px; /* Slightly rounded corners */
    background: #fff; /* White background */
    color: #1c1c1c; /* Black text */
    appearance: none; /* Remove default styles */
    -webkit-appearance: none; /* For Safari */
    -moz-appearance: none; /* For Firefox */
    position: relative; /* Ensure positioning for pseudo-element */
    transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition for hover and focus */
}

/* Add custom down arrow */
.select select::after {
    content: '\25BC'; /* Unicode for down arrow */
    font-size: 16px; /* Size of the arrow */
    color: #4a0d67; /* Dark purple arrow */
    position: absolute;
    right: 15px; /* Position it inside the select box */
    top: 50%;
    transform: translateY(-50%); /* Center it vertically */
    pointer-events: none; /* Prevent interaction */
}

/* Hover State */
.select select:hover {
    background: #f4edfc; /* Light purple background */
    color: #1c1c1c; /* Ensure text stays black */
}

/* Focus State */
.select select:focus {
    background: #f4edfc; /* Light purple background on focus */
    color: #1c1c1c; /* Ensure text stays black */
    border-color: #7400aa; /* Add a darker border when focused */
    outline: none; /* Remove focus outline */
}

/* Active State */
.select select:active {
    background: #f4edfc; /* Light purple background on active */
    color: #1c1c1c; /* Ensure text stays black */
}

/* Reset the default browser styling for dropdowns */
.select select::-ms-expand {
    display: none; /* Hide the default dropdown arrow for IE/Edge */
}
.accordion {
    background: #fff !important;
    width: 400px !important;
    }
    .btn {
        font-family: 'Satoshi', sans-serif; /* Match your button font */
        font-size: 14px; /* Adjust the font size */
        font-weight: 500; /* Medium weight for consistency */
        color: #f4edfc; /* Light purple text */
        background-color: #4a0d67; /* Dark purple background */
        border: 2px solid #4a0d67; /* Border matches background */
        border-radius: 12px; /* Rounded corners */
        padding: 10px 20px; /* Comfortable padding */
        text-align: center; /* Center-align text */
        text-decoration: none; /* Remove underline for links */
        display: inline-block; /* Ensure it behaves like a button */
        cursor: pointer; /* Pointer cursor on hover */
        transition: all 0.3s ease; /* Smooth hover effect */
    }
    
    /* Add an icon on the left if needed */
    .btn--icon-left::before {
        content: ''; /* Remove placeholder emoji */
        margin-right: 8px; /* Space between icon and text */
        display: inline-block; /* Ensure proper alignment */
    }
    
    /* Add hover effect */
    .btn:hover {
        background-color: #f4edfc; /* Light purple background */
        color: #4a0d67 !important; /* Ensure dark purple text on hover */
        border-color: #f4edfc; /* Light purple border */
    }
    
    /* Optional: Adjust simple style */
    .btn--simple {
        background-color: transparent; /* Remove background */
        color: #4a0d67; /* Dark purple text */
        border: 2px solid #4a0d67; /* Add purple border */
    }
    
    /* Hover effect for simple style */
    .btn--simple:hover {
        background-color: #4a0d67; /* Dark purple background */
        color: #f4edfc !important; /* Light purple text */
    }
    .wps_wcb_wallet_balance_container {
        background-color: #4a0d67; /* Dark purple background */
        color: #f4edfc; /* Light purple text for readability */
        padding: 20px; /* Add padding for spacing inside the container */
        border-radius: 12px; /* Rounded corners */
        box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Optional: Add a subtle shadow */
        border: 1px solid #4a0d67; /* Optional: Border matches background */
        font-family: 'Satoshi', sans-serif; /* Ensure consistent font */
        font-size: 14px; /* Adjust font size if needed */
    }
    .wallet-tabs {
        display: none;
            }
   
    .wps_wcb_content_template ul.tabs, .wps_wcb_content_template ul.tabs:last-child {
        display: none;
                }
    .tabs {

        display: none;
    }
    input[type=submit].wps-btn__filled {
        padding: 10px 25px; /* Padding for spacing */
        border-radius: 12px; /* Rounded corners to match other buttons */
        background-color: #4a0d67; /* Dark purple background */
        color: #f4edfc; /* Light purple text for readability */
        font-size: 15px; /* Font size */
        font-family: 'Satoshi', sans-serif; /* Consistent font */
        font-weight: 500; /* Medium weight for text */
        line-height: 1.5; /* Line height */
        transition: all 0.3s ease; /* Smooth hover effect */
        border: 2px solid #4a0d67; /* Border matching background */
        cursor: pointer; /* Pointer cursor on hover */
        min-height: 40px; /* Increase button height for usability */
        text-align: center; /* Center-align text */
    }
    
    /* Hover effect */
    input[type=submit].wps-btn__filled:hover {
        background-color: #f4edfc; /* Light purple background on hover */
        color: #4a0d67; /* Dark purple text on hover */
        border-color: #f4edfc; /* Light purple border on hover */
    }
    .fab.fa-twitter {
        font-family: 'FontAwesome'; /* Ensure compatibility */
        content: '\f061'; /* Hide the original FontAwesome icon */
        font-size: 0; /* Ensure the original icon is hidden */
        background-image: url('https://mvno.catalystcore.co.uk/wp-content/uploads/2024/12/x-logo.svg'); /* Replace with your X logo URL */
        background-size: contain; /* Ensure the logo scales properly */
        background-repeat: no-repeat;
        background-position: center; /* Center the logo */
        width: 16px; /* Adjust width */
        height: 16px; /* Adjust height */
        display: inline-block; /* Keep it inline for icon-like alignment */
        vertical-align: middle; /* Align with text or other icons */
        transition: none; /* Disable hover effects */
    }
    .elementor-1179 .elementor-element.elementor-element-fd051db .cart button, 
.elementor-1179 .elementor-element.elementor-element-fd051db .cart .button {
    border-style: solid;
    border-width: 2px; /* Reduced border width for consistency */
    border-color: #4a0d67; /* Dark purple border */
    background-color: #4a0d67; /* Dark purple background */
    color: #f4edfc; /* Light purple text */
    border-radius: 8px; /* Rounded corners */
    padding: 10px 20px; /* Consistent padding */
    font-family: 'Satoshi', sans-serif; /* Consistent font */
    font-weight: 500; /* Medium font weight */
    font-size: 14px; /* Standard font size */
    text-align: center; /* Center-align text */
    text-decoration: none; /* Remove text underline */
    display: inline-block; /* Ensure button-like appearance */
    cursor: pointer; /* Pointer cursor */
    transition: all 0.3s ease; /* Smooth transition */
}

.elementor-1179 .elementor-element.elementor-element-fd051db .cart button:hover, 
.elementor-1179 .elementor-element.elementor-element-fd051db .cart .button:hover {
    background-color: #7400aa; /* Darker purple background on hover */
    color: #ffffff; /* White text on hover */
    border-color: #7400aa; /* Darker purple border on hover */
}
.woocommerce-message {
    display: none !important;
}

.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-EditAccountForm .button,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-address-fields .button,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 #add_payment_method #payment #place_order {
    background-color: #4a0d67; /* Dark purple background */
    border-style: solid;
    border-width: 2px;
    border-color: #4a0d67; /* Match border to the background */
    color: #f4edfc; /* Light purple text */
    font-family: 'Satoshi', sans-serif; /* Consistent font */
    font-size: 14px;
    font-weight: 500;
    padding: 10px 20px; /* Add padding for better appearance */
    text-align: center; /* Center align text */
    border-radius: 12px; /* Rounded corners */
    cursor: pointer; /* Add pointer cursor */
    transition: all 0.3s ease; /* Smooth hover transition */
}

/* Hover Effect */
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-EditAccountForm .button:hover,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-address-fields .button:hover,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button:hover,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button:hover,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button:hover,
.elementor-515 .elementor-element.elementor-element-c9bc1a0 #add_payment_method #payment #place_order:hover {
    background-color: #f4edfc; /* Light purple background */
    color: #4a0d67; /* Dark purple text */
    border-color: #f4edfc; /* Border matches background */
}
.woocommerce-orders-table__cell .woocommerce-button.view {
    background-color: #f4edfc !important;
    color: #4a0d67 !important;
    border: 2px solid #4a0d67 !important;
    border-radius: 12px !important;
    padding: 8px 15px !important;
    font-family: 'Satoshi', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    text-align: center !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.3s ease !important;
}
.elementor-515 .elementor-element.elementor-element-c9bc1a0 {
    --tabs-normal-color: #FFFFFF;
    --tabs-border-type: solid;
    --tabs-border-color: #FFFFFF;
    --tabs-border-radius: 3px 3px 3px 3px;
    --tabs-divider-color: #FFFFFF;
    --sections-background-color: #F4EDFC;
    --sections-border-color: #000000;
    --sections-border-radius: 15px 15px 15px 15px;
    --typography-section-titles-color: #4A0D67;
    --general-text-color: #4A0D67;
    --login-messages-color: #4A0D67;
    --checkboxes-color: #4A0D67;
    --links-normal-color: #4A0D67;
    --forms-labels-color: #FFFFFF;
    --forms-fields-normal-color: #000000;
    --forms-fields-focus-color: #000000;
    --forms-fields-border-radius: 0px 0px 0px 0px;
    --forms-buttons-normal-text-color: #FFFFFF;
    }
    /* Ensure the Payment Box can expand dynamically */
.woocommerce-PaymentBox {
    display: block;
    width: 100% !important;
    min-height: 600px !important; /* Ensure the box has a minimum height */
    max-width: 100%;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
}

/* Adjust the Stripe iframe to expand and fit content */
.wc-stripe-upe-element iframe {
    width: 100% !important; /* Ensure iframe takes full width */
    min-height: 500px !important; /* Increase min-height of iframe */
    max-height: 800px !important; /* Ensure the iframe has space for all fields */
    border: none !important; /* Remove any border */
    height: auto !important; /* Let height adjust automatically */
}

/* Ensure card number, expiry, and security code inputs are responsive */
.p-GridCell--12 {
    width: 100% !important; /* Ensure each grid cell takes full width */
    margin: 10px 0 !important; /* Add space between fields */
}

.p-Input-input {
    width: 100% !important; /* Ensure the input fields are full width */
    padding: 12px !important; /* Increase padding for better spacing */
}

/* Label styling */
.p-FieldLabel {
    font-size: 14px;
    margin-bottom: 10px;
}

/* Ensure that expiration and security code are visible and have enough space */
.p-CardExpiryInput, .p-CardCvcInput {
    width: 100% !important; /* Make sure expiry and CVC inputs take up full width */
    padding: 12px !important; /* Adjust padding */
}

/* Ensure proper display of card brand and CVC icons */
.p-CardBrandChoice, .p-CardCvcIcons {
    width: 100% !important;
}

/* Ensure inputs grow properly */
.p-CardNumberInput, .p-CardExpiryInput, .p-CardCvcInput {
    margin-bottom: 15px !important; /* Ensure spacing between inputs */
}

/* Adjust input fields and container for smaller screens */
@media (max-width: 768px) {
    /* Ensure the form content fits mobile screen */
    .woocommerce-PaymentBox {
        min-height: 500px !important; /* Reduce min-height on smaller screens */
        padding: 15px !important; /* Reduce padding */
    }

    .wc-stripe-upe-element iframe {
        height: auto !important; /* Let the iframe adjust its height */
        min-height: 400px !important; /* Ensure iframe is tall enough on mobile */
    }

    .p-Input-input {
        padding: 10px !important; /* Reduce padding for mobile */
    }

    /* Adjust label text size on mobile */
    .p-FieldLabel {
        font-size: 12px !important; /* Make labels smaller on mobile */
    }

    /* Ensure expiration and CVC inputs fit properly on mobile */
    .p-CardExpiryInput, .p-CardCvcInput {
        width: 100% !important;
        margin-bottom: 15px !important;
    }
}


