/**
Theme Name: Primal Challenges
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Template: astra
*/

/*-- Laptop --*/
/* @media (min-width:1200px) and (max-width: 1365px) {}  */
/*-- Tablet Landscape --*/
/* @media (min-width:1024px) and (max-width: 1199px) {}  */
/*-- Tablet Potrait --*/
/* @media (min-width:880px) and (max-width: 1023px) {}  */
/*-- Mobile Landscape --*/
/* @media (min-width:768px) and (max-width: 879px) {}  */
/*-- Mobile Potrait --*/
/* @media screen and (max-width:767px) {} */

:root {
    --color-primary: #014935;
    --color-secondary: #9FD067;
    --color-text: #4B4B4B;
    --color-accent: #55AE36;
    --color-primary-two: #002D21;
    --color-primary-three: #001610;
    --color-white: #ffffff;
    --color-white-10: #FFFFFF4D;
    --color-white-20: #FFFFFF33;
    --color-white-80: #FFFFFFCC;
    --color-white-90: #FFFFFFE5;
    --color-ash-title: #111827;
    --color-ash-two: #4B4B4B;
    --color-ash-three: #8C8C8C;
    --color-ash-four: #D0D0C8;
    --color-ash-five: #9CA3AF;
    --color-ash-six: #F3F4F6;
    --color-ash-seven: #424242;
    --color-ash-eight: #C7C7C7;
    --color-blue-two: #110649;
    --color-blue-three: #322564;
    --color-blue-72: #180035B8;

    --gradient-one: linear-gradient(135deg, #FAF5FF 0%, #FDF2F8 50%, #FFF7ED 100%);
    --gradient-two: linear-gradient(0deg, rgba(24, 0, 53, 0.9) 0%, rgba(24, 0, 53, 0.5) 50%, rgba(24, 0, 53, 0.2) 100%);

    --box-shadow-one: 0px 10px 15px -3px #0000001A;

}
@media (min-width:768px) and (max-width: 1599px) {
  .e-con {
    --container-max-width: 92%;
  }
}
h1,
.elementor-widget-heading h1.elementor-heading-title {
    line-height: 1em;
}
.hero-title span {
    font-weight: 200;
    display: block;
}
.title-h2 span {
    font-weight: 300;
}
a {
    text-decoration: none !important;
}
a:hover,
a:focus,
a:active,
a:visited,
a:focus-within,
a:focus-visible {
    outline: none!important;
}
ul, ol {
    list-style-position: inside;
    margin-left: 0;
}
ul li a, 
ol li a {
    color: var(--color-secondary);
}
body:not(.elementor-editor-active) .elementor-widget-text-editor ul li,
body:not(.elementor-editor-active) .elementor-widget-theme-post-content ul li {
    /* background: url(/wp-content/uploads/2026/02/icon-ul.svg) no-repeat left top 4px; */
    background: url(/wp-content/uploads/2026/03/icon-ul-green2.svg) no-repeat left top 6px;
    line-height: 1.7;
}
body .elementor-widget-text-editor ul li,
body .elementor-widget-theme-post-content ul li {
    padding-left: 25px;
    list-style: none;
    margin-top: 10px;
}
body .elementor-widget-text-editor ul li:first-child,
body .elementor-widget-theme-post-content ul li:first-child {
    margin-top: 0;
}
.gradient-one {
    background: var(--gradient-one)!important;
}
.gradient-two {
    background: var(--gradient-two)!important;
}
.background-blur-one {
    backdrop-filter: blur(4px)!important;
}

/*---- Brand Slider Slide Continous - CSS - START ----*/
/*---- Change Slider Settings (Content > Additional Options > Autoplay Speed = 0 & Animation Speed = 3000) ----*/
.brand-slider .swiper-wrapper {
  transition-timing-function: linear !important;
}
/*---- Brand Slider Slide Continous - CSS - END ----*/

/*---- Elementor Default Style Reset CSS - START----*/
.elementor-widget-button .elementor-button {
    background: var(--color-primary) url(/wp-content/uploads/2026/02/icon-button-right-arrow-white.svg) no-repeat right 35px center !important;
    box-shadow: var(--box-shadow-one);
}
.elementor-widget-button .elementor-button:hover {
    background-color: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
}
.elementor-widget-button.btn-transparent .elementor-button {
    background: var(--color-white-10)!important;
    border: 1px solid var(--color-white-10);
    padding-right: 70px !important;
    padding-left: 70px !important;
    box-shadow: none !important;
}
.elementor-widget-button.btn-transparent .elementor-button:hover {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}
.elementor-widget-button.btn-light-green .elementor-button {
    background: var(--color-secondary) url(/wp-content/uploads/2026/03/icon-button-right-arrow-dark-green.svg) no-repeat right 35px center !important;
    box-shadow: var(--box-shadow-one);
    border-color: var(--color-secondary) !important;
    color: var(--color-primary)!important;
}
.elementor-widget-button.btn-light-green .elementor-button:hover {
    background-color: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
    color: var(--color-white)!important;
}
.elementor-widget-button.btn-text-green .elementor-button {
    background: transparent url(/wp-content/uploads/2026/03/icon-button-right-arrow-green.svg) no-repeat right center !important;
    border: none !important;
    padding: 0 19px 0 0!important;
    box-shadow: none !important;
}
.elementor-widget-button.btn-text-green .elementor-button:hover {
    background-color: transparent !important;
    border: none !important;
}
.elementor-widget-button.btn-text-pink .elementor-button {
    background: transparent url(/wp-content/uploads/2026/02/icon-button-right-arrow-pink.svg) no-repeat right center !important;
    border: none !important;
    padding: 0 19px 0 0!important;
    box-shadow: none !important;
}
.elementor-widget-button.btn-text-pink .elementor-button:hover {
    background-color: transparent !important;
    border: none !important;
}
.elementor-widget-button.btn-book-trackers-now .elementor-button {
    background: url(/wp-content/uploads/2026/02/icon12.svg) no-repeat left 40px center, url(/wp-content/uploads/2026/02/icon-button-right-arrow-white-two.svg) no-repeat right 46px center!important;
    background-color: var(--color-primary)!important;
    font-size: 18px;
    padding: 20px 80px 20px 96px !important;
}
.elementor-widget-button.text-btn-pink .elementor-button {
    background: transparent !important;
    color: var(--color-primary) !important;
    font-size: 14px;
    font-weight: 400;
    padding: 0 !important;
    border: none;
    box-shadow: none;
}
/*-- Laptop --*/
@media (min-width:1200px) and (max-width: 1365px) {
    .elementor-widget-button.btn-transparent .elementor-button {
        padding-right: 50px !important;
        padding-left: 50px !important;
    }
}
/*-- Tablet Landscape --*/
@media (min-width:1024px) and (max-width: 1199px) {
    .elementor-widget-button.btn-transparent .elementor-button {
        padding-right: 45px !important;
        padding-left: 45px !important;
    }
}
/*-- Tablet Potrait --*/
@media (min-width:880px) and (max-width: 1023px) {
    .elementor-widget-button .elementor-button {
        background-position: right 35px center !important;
    }
    .elementor-widget-button.btn-transparent .elementor-button {
        padding-right: 40px !important;
        padding-left: 40px !important;
    }
}
/*-- Mobile Landscape --*/
@media (min-width:768px) and (max-width: 879px) {
    .elementor-widget-button .elementor-button {
        background-position: right 25px center !important;
    }
    .elementor-widget-button.btn-transparent .elementor-button {
        padding-right: 30px !important;
        padding-left: 30px !important;
    }
}
/*-- Mobile Potrait --*/
@media screen and (max-width: 767px) {
    .elementor-widget-button .elementor-button {
        background-position: right 20px center !important;
    }
    .elementor-widget-button.btn-transparent .elementor-button {
        padding-right: 25px !important;
        padding-left: 25px !important;
    }
	.elementor-widget-button.btn-book-trackers-now .elementor-button {
		font-size: 14px;
		padding: 15px 70px 15px 86px !important;
	}
}
/*---- Elementor Default Style Reset CSS - END----*/
/*---- Astra Theme Default Style Reset CSS - START----*/
.ast-separate-container {
    background-color: #fff!important;
}
.ast-container {
    max-width: 100% !important;    
    padding: 0 !important;  
    margin: 0 !important;  
    width: 100% !important;
}
 .ast-article-single {
    padding: 0 !important;
}
.ast-separate-container #primary {
    margin: 0 !important;
    padding: 0 !important;
}
.ast-container p {
    margin-bottom: 10px;
}
.ast-container p:last-child {
    margin-bottom: 0;
}
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single,
.ast-separate-container .comments-title,
.ast-separate-container .ast-archive-description {
    padding: 0;
    border: none;
}
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-single:not(.ast-related-post) {
    background-color: transparent!important;
}
#ast-scroll-top {    
    /* display: none!important; */
    background-color: var(--primary);
    color: var(--text);
}
/*---- Astra Theme Default Style Reset CSS - END ----*/
/*---- Header Style CSS - START ----*/
.header-cart .elementor-menu-cart__toggle_button {
    background-color: transparent!important;
    border: none!important;
    padding: 0!important;
}
#menu-primary-menu {
    gap: 90px;
}
#menu-primary-menu > li > a:after {
    background-color: var(--color-secondary);
    position: absolute;
    content: "";
    height: 3px;
    width: 100%;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transition: transform 0.3s ease;
}
#menu-primary-menu > li > a:hover:after,
#menu-primary-menu > li.current-menu-item > a:after {
    transform: scaleX(1);
}
.elementskit-megamenu-panel {
    z-index: -1 !important;
}
@media (min-width:1200px) and (max-width: 1499px) {
    #menu-primary-menu {
        gap: 60px;
    }
}
@media (min-width:1025px) and (max-width: 1199px) {
    #menu-primary-menu {
        gap: 30px;
    }
}
@media screen and (max-width: 1024px) {
     header .elementskit-menu-hamburger.elementskit-menu-toggler {
        padding: 0!important;
        width: 24px!important;
        border-radius: 0!important;
        line-height: 16px!important;
    }
    header .ekit-wid-con svg {
        width: 24px!important;
        height: 16px!important;
    }
}
/*---- Header Style CSS - END ----*/
.text-highlight span {
    color: var(--color-primary);
}
.your-class .elementor-widget-image a {
    display: block;
}
.event-list .elementor-loop-container .e-loop-item .e-con-full .elementor-widget-text-editor .elementor-widget-container {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.common-form .elementor-field {
    box-shadow: none !important;
    height: 58px;
    padding: 18px 28px !important;
}
.common-form .elementor-field.elementor-select-wrapper {
    padding: unset !important;
}
.common-form .elementor-field select {
    box-shadow: none !important;
    height: 58px;
    padding: 18px 28px !important;
}
.common-form textarea.elementor-field {
    height: 208px;
}
.common-form button[type="submit"] {
    margin-top: 56px;
}
.elementor.e-loop-item.event.ast-article-single {
    background-color: transparent;
}
.service-box .elementor-widget-theme-post-featured-image .elementor-widget-container > a,
.event-box .elementor-widget-theme-post-featured-image .elementor-widget-container > a {
    display: block;
}
.elementor-messag.elementor-message-svg {
    margin: 40px 0 10px 0;
}
.elementor-widget-loop-carousel.elementor-element :is(.swiper, .swiper-container) ~ .elementor-swiper-button-prev,
.elementor-widget-loop-carousel.elementor-element :is(.swiper, .swiper-container) ~ .elementor-swiper-button-next {
    z-index: 9;
}
/*---- Track What Matters Most Section CSS - START ----*/
.slider-twmm .slide-box {
    position: relative;
}
.slider-twmm .slide-box::before {
    background: var(--gradient-two)!important;
}
.slider-twmm .slide-box .slide-icon {
    border-radius: 50%;
    height: 56px;
    width: 56px;
}
.solution-slide::before {
    background: var(--gradient-two)!important;
}
/*---- Track What Matters Most Section CSS - END ----*/
/*---- Contact Form CSS - START ----*/
.contact-form #form-field-name, 
.contact-form #form-field-email,
.contact-form #form-field-phonenumber,
.contact-form #form-field-message {
    background-color: var(--color-white);
    background-repeat: no-repeat;
    background-position: left 15px top 20px;
    padding: 15px 20px 15px 42px;
}
.contact-form #form-field-name {
    background-image: url(/wp-content/uploads/2026/02/icon17.svg);
}
.contact-form #form-field-email {
    background-image: url(/wp-content/uploads/2026/02/icon18.svg);
}
.contact-form #form-field-phonenumber {
    background-image: url(/wp-content/uploads/2026/02/icon19.svg);
}
.contact-form #form-field-message {
    background-image: url(/wp-content/uploads/2026/02/icon20.svg);
}
/*---- Contact Form CSS - END ----*/
/*---- Blog Listing Box CSS - START ----*/
.blog-box .blog-excerpt {
    height: 78px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
@media screen and (max-width: 879px) {
    .blog-box .blog-excerpt {
        height: 68px;
    }
}
/*---- Blog Listing Box CSS - END ----*/
/*---- Common Table CSS - START ----*/
.table-container {
    overflow-x: auto;
}
.table-container table {
    width: 100%;
    min-width: 300px;
    border-collapse: collapse;
    background: white;
    margin: 0;
}
.table-container table th, 
.table-container table td {
    padding: 10px 15px;
    text-align: center;
    border: 1px solid #ffffff;
    white-space: nowrap;
}
.table-container table th {
    background-color: #D9D9D9;
    font-weight: 600;
    color: #000000;
    position: sticky;
    top: 0;
}
.table-container table td {
    background-color: #F3F0F0;
}
@media screen (max-width: 767px) {
    .table-container table th, 
    .table-container table td {
        padding: 8px 12px;
        font-size: 14px;
    }
}
/*---- Common Table CSS - END ----*/
/*---- Shop Page CSS - START ----*/
.shop-page-cont ul.products {
    border-top: 1px solid #A1A1A1;
    padding-top: 30px;
}
.shop-page-cont ul.products li.product .review-rating {
    display: flex;
    justify-content: center;
}
.shop-page-cont ul.products li.product a.add_to_cart_button svg {
    fill: var(--color-primary)!important;
}
@media screen and (max-width:599px) {
    .shop-page-cont ul.products {
        grid-template-columns: repeat(1, 1fr)!important;
    }
}
/*---- Shop Page CSS - END ----*/
/*---- Product Details CSS - START ----*/
.single-product-image .woocommerce-product-gallery.images {
    margin-bottom: 0!important;
}
.single-product-image .flex-viewport,
.single-product-image .flex-viewport .flex-active-slide a img {
    height: 387px !important;
}
.single-product-image .flex-viewport .flex-active-slide a img {
    aspect-ratio: 1 / 1;
    object-fit: contain;
}
.single-product-image .flex-control-nav.flex-control-thumbs li {
    margin-bottom: 10px !important;
    margin-right: 10px !important;
}
.single-product-image .flex-control-nav.flex-control-thumbs li:last-child {
    margin-right: 0 !important;
}
.single-product-image .flex-control-nav.flex-control-thumbs li img {
    height: 79px !important;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    padding: 5px;
}
.single-product-add-to-cart-cont .variations tr {
    /* display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px 10px; */
}
.single-product-add-to-cart-cont .variations th.label {
    margin-bottom: 0 !important;
}
.single-product-add-to-cart-cont .variations td.value {
    /* width: 40%;
    text-align: right; */
}
.single-product-add-to-cart-cont .variations select#pa_select-your-device-rent-plan,
.single-product-add-to-cart-cont .variations select#pa_device-name {
    border: none;
    /* text-align: right; */
    padding-right: 30px;
    padding-left: 0;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 20px;
}
.single-product-add-to-cart-cont .variations select#pa_select-your-device-rent-plan option,
.single-product-add-to-cart-cont .variations select#pa_device-name option {
    text-align: left;
}
.single-product-add-to-cart-cont .variations .reset_variations {
    color: var(--color-primary) !important;
    font-size: 14px !important;
    opacity: 1 !important;
}
.single-product-add-to-cart-cont .single_variation_wrap .woocommerce-variation-price .price {
    font-size: 36px;
    font-weight: 700;
}
.single-product-add-to-cart-cont form.cart {
    flex-wrap: wrap !important;
}
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-enquiry-block,
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-cart-dates {
    background-color: var(--color-white);
    border: 1px solid #A1A1A1;
    border-radius: 16px;
    width: 100%;
}
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-enquiry-block input[type=text],
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-enquiry-block input[type=email],
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-enquiry-block input[type=tel],
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-cart-dates input[type=text],
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-cart-dates input[type=email],
.single-product-add-to-cart-cont form.cart .wcdr-block.wcdr-cart-dates input[type=tel],
.single-product-add-to-cart-cont form.cart.variations_form select {
    border: 1px solid #A1A1A1;
    border-radius: 8px;
}
.product-detail-data-tab .woocommerce-tabs ul.tabs.wc-tabs {
    visibility: hidden;
    height: 0;
}
.product-detail-data-tab .woocommerce-tabs #tab-title-description,
.product-detail-data-tab .woocommerce-tabs #tab-title-additional_information {
    display: none !important;
}
.product-detail-data-tab .woocommerce-tabs .panel {
    border: none !important;
    padding: 0 !important;
}
/*---- Product Details CSS - END ----*/
/*---- Cart Page CSS - START ----*/
.blockUI.blockOverlay {
    z-index: 8!important;
}
.woocommerce-cart-page .product-name a {
    color: var(--color-primary) !important;
}
.woocommerce-cart-page .product-remove a {
    width: 20px !important;
}
.woocommerce-cart-page .actions .button,
.woocommerce-cart-page .coupon-col-end .button.e-apply-coupon {
    background-color: var(--color-primary) !important;
    color: var(--color-white) !important;
    border: none !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
}
.woocommerce-cart-page .woocommerce .woocommerce-error, 
.woocommerce-cart-page .woocommerce .woocommerce-info,
.woocommerce-cart-page .woocommerce .woocommerce-message {
    border-top-color: var(--color-primary)!important;
}

.woocommerce-cart-page .woocommerce .woocommerce-notices-wrapper:focus-visible, 
.woocommerce-cart-page .woocommerce .woocommerce-error:focus-visible, 
.woocommerce-cart-page .woocommerce .woocommerce-info:focus-visible,
.woocommerce-cart-page .woocommerce .woocommerce-message:focus-visible {
    /* box-shadow: none!important;
    border-right: none!important;
    border-bottom: none!important;
    border-left: none!important; */
    outline: none;
}
.woocommerce-cart-page .woocommerce .woocommerce-message::before, 
.woocommerce-cart-page .woocommerce .woocommerce-info::before {
    color: var(--color-primary)!important;
}
.woocommerce-cart-page .woocommerce .woocommerce-notices-wrapper a {
    color: var(--color-primary);
}
.woocommerce-cart-page .woocommerce .button {
    background-color: var(--color-primary)!important;
    color: var(--color-white)!important;
}
.woocommerce-cart-page .input-text.qty {
    text-align: center!important;
    border-radius: 8px!important;
    padding: 5px!important;
    min-height: 40px!important;
}
.woocommerce-cart-page #coupon_code {
    border-radius: 8px;
}
/*---- Cart Page CSS - END ----*/
/*---- Checkout Page CSS - START ----*/
.woocommerce-checkout-page .input-text,
.woocommerce-checkout-page .select2-selection__rendered {
    height: 50px;
    line-height: 50px !important;
}
.woocommerce-checkout-page textarea.input-text {
    line-height: 1.5 !important;
}
.woocommerce-checkout-page .e-show-coupon-form {
    color: var(--color-primary)!important;
}
.woocommerce-checkout-page #place_order {
    margin-top: 30px!important;
}
.woocommerce-checkout-page td.product-name, 
.woocommerce-checkout-page td.product-name {
    display: table-cell !important;
}
.woocommerce-checkout-page .woocommerce-additional-fields {    
    padding: 0!important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected], 
.select2-container--default .select2-results__option--highlighted[data-selected],
.select2-container--default .select2-results__option[aria-selected=true], 
.select2-container--default .select2-results__option[data-selected=true] {
    background-color: var(--color-primary)!important;
    color: var(--color-white)!important;
}
/*---- Checkout Page CSS - END ----*/
/*---- Mini Cart CSS - START ----*/
.elementor-menu-cart__main {
    padding-top: 40px;
}
.elementor-menu-cart__main .elementor-button.elementor-button--view-cart,
.elementor-menu-cart__main .elementor-button.elementor-button--checkout {
    padding: 10px 15px;
    box-shadow: none;
}
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item {
    grid-template-columns: 36px auto;
    padding-right: 0;
}
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item .product-name,
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item .product-price {
    padding-left: 10px;
}
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item .product-name a {
    color: var(--color-primary);
    font-weight: 600;
}
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item .product-name .variation dt,
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item .product-name .variation dd {
    line-height: 1.2;
}
.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-cart-form__cart-item.cart_item .product-name .variation dd {
    margin-right: 0;
}
/*---- Mini Cart CSS - END ----*/
/*---- 404 CSS - START ----*/
.not-found-cont h2 {
    margin-bottom: 0!important;
}
/*---- 404 CSS - END ----*/
/*---- Footer CSS - START ----*/
@media screen and (max-width: 767px) {
    .footer-menu a {
        justify-content: center;
    }
} 
/*---- Footer CSS - END ----*/
/*---- Latest Nes Slider CSS - START ----*/
@media (min-width:880px) and (max-width: 1365px) {
	.slider-latest-news .elementor-swiper-button svg {
		/* height: 40px !important;
		width: 40px !important; */
	}
} 
/*-- Mobile Landscape --*/
@media (min-width:768px) and (max-width: 879px) {
	.slider-latest-news .elementor-swiper-button svg {
		/* height: 36px !important;
		width: 36px !important; */
	}
}
/*-- Mobile Potrait --*/
@media screen and (max-width:767px) {
	.slider-latest-news .elementor-swiper-button svg {
		/* height: 30px !important;
		width: 30px !important; */
	}
} 
/*---- Latest Nes Slider CSS - END ----*/
/*---- Inner Banner Breadcrumb CSS - START ----*/
.inner-banner-breadcrumb .woocommerce-breadcrumb a:hover {
    color: var(--color-primary) !important;
}
/*---- Inner Banner Breadcrumb CSS - END ----*/