/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.13.651.565656447767
Updated: 2026-05-06 19:37:5455544544654

*/

@media (min-width: 921px) {
    .ast-theme-transparent-header #masthead {
        position: relative !important;
    }
}

.bdt-prime-slider-skin-general .bdt-slide-btn .bdt-slide-btn-icon {
    background: var(--ast-global-color-1) !important;
    
}
.bdt-prime-slider-skin-general .bdt-slide-btn:hover .bdt-slide-btn-icon svg * {
    stroke: #fff;
}
.elementor-image-box-title a{
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}
@media (min-width: 921px) {
    .ast-theme-transparent-header #masthead {
        position: relative !important;
    }
}

.bdt-prime-slider-skin-general .bdt-slide-btn .bdt-slide-btn-icon {
    background: var(--ast-global-color-1) !important;
    
}
.bdt-prime-slider-skin-general .bdt-slide-btn:hover .bdt-slide-btn-icon svg * {
    stroke: #fff;
}
.elementor-image-box-title a{
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}
.customer-counter .elementor-image-box-wrapper {
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    background: rgba(255, 255, 255, 0.1); /* must have transparency */
	padding:10px 10px;
	border-radius:5px;
}
.cf7-two-col {
    display: flex;
    gap: 20px;
}

.cf7-left {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cf7-right {
    flex: 1;
}

.cf7-right .wpcf7-textarea {
    width: 100%;
    height: 100%;
        max-height: 280px;
    resize: none;
    box-sizing: border-box;
}

.cf7-two-col .wpcf7-form-control:not(.wpcf7-submit) {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #d0d5e8;
    border-radius: 6px;
    background: #f8f9fc;
    color: #4a5568;
    font-size: 15px;
    box-sizing: border-box;
}

.cf7-two-col .wpcf7-form-control:focus {
    outline: none;
    border-color: #a0aec0;
}

/* Buttons row */
.cf7-btn-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}


.cf7-btn-row .wpcf7-submit {
    background-color: #e6a817;
    color: #fff;
    padding: 17px 32px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.cf7-btn-row .wpcf7-submit:hover {
    background-color: #c98f0e;
}

.cf7-quote-btn {
    display: inline-block;
    padding: 10px 24px;
    background-color: #1a3a6b;
    color: #fff;
    
    border-radius: 6px;
    text-decoration: none;
    transition: background 0.3s ease;
}

.cf7-quote-btn:hover {
    background-color: #122d55;
    color: #fff;
}

.cf7-response-note {
    width: 100%;
    text-align: left;
    font-size: 16px;
    color: #888;
    margin: 4px 0 0;
}

/* Responsive */
@media (max-width: 768px) {
    .cf7-two-col {
        flex-direction: column;
    }

    .cf7-right .wpcf7-textarea {
        min-height: 160px;
    }

    .cf7-btn-row {
        flex-direction: column;
        align-items: stretch;
        text-align: center;
    }

    .cf7-quote-btn {
        text-align: center;
    }
}
.my-custom-icon .elementor-icon-box-title {
    margin-bottom: 0;
}

/* ============================================================
   ELCOM — Single Product Page
   Add to: your-child-theme/style.css
   ============================================================ */

.elcom-product-page *,
.elcom-product-page *::before,
.elcom-product-page *::after {
    box-sizing: border-box;
}

/* ============================================================
   HERO — Full width, light blue bg, image in white card right
   ============================================================ */
.elcom-hero {
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    overflow: hidden;
    min-height: 420px;
    display: flex;
    align-items: center;
    background-image: url(https://gymcosports.com/projects/elcomltd/wp-content/uploads/2026/05/background_clean.png); /* light blue background like screenshot */
    background-position:top left;
	background-repeat:no-repeat;
	background-size:cover;
}

/* No background image layer needed */
.elcom-hero__bg {
    display: none;
}

/* Content sits above background */
.elcom-hero__inner {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 60px;
}

/* Left: text content 
.elcom-hero__content {
    flex: 1;
}*/
.elcom-hero__content {
    width: 50%;
    flex: 1;
    order: 1;
}
.elcom-hero__title {
    font-size: 32px;
    font-weight: 700;
    color: #1a3a6b;
    line-height: 1.2;
    margin: 0 0 24px;
}

.elcom-hero__subtitle {
    font-size: 15px;
    color: #4a5568;
    margin: 0 0 18px;
    font-weight: 400;
}

/* Bullets from WC short description */
.elcom-hero__bullets {
    margin-bottom: 28px;
}

.elcom-hero__bullets ul {
    list-style: none;
    padding: 0;
    margin: 0 0 28px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.elcom-hero__bullets ul li {
    padding-left: 18px;
    position: relative;
    font-size: 15px;
    color: #2d3748;
    line-height: 1.5;
}

.elcom-hero__bullets ul li::before {
    content: '•';
    color: #e6a817;
    position: absolute;
    left: 0;
    font-size: 18px;
    line-height: 1.2;
}

/* Hide plain <p> tags — only show bullets */
.elcom-hero__bullets > p {
    display: none;
}

/* CTA buttons */
.elcom-hero__btns {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    align-items: center;
}

/* Right: white card with product image + badge top right 
.elcom-hero__right {
    flex: 0 0 auto;
    width: 340px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}*/
.elcom-hero__right {
    flex: 0 0 auto;
    width: 50%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    order: 0;
}

/* White image card — like screenshot */
.elcom-hero__img-card {
    background: #ffffff;
    border-radius: 4px;
    padding: 20px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 280px;
}

/* Queen's Award badge — top far right of hero */
.elcom-hero__badge {
    position: absolute;
    top: -30px;
    right: -30px;
    z-index: 2;
}

.elcom-hero__badge img {
    width: 100px;
    height: auto;
}

/* Product featured image inside white card 
.elcom-hero__img {
    max-width: 100%;
    max-height: 300px;
    height: auto;
    object-fit: contain;
}*/

.elcom-hero__img-placeholder {
    width: 100%;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #7a96c0;
    font-size: 14px;
}

/* ============================================================
   OVERVIEW
   ============================================================ */
.elcom-overview {
    padding: 48px 0;
    background: #ffffff;
    border-bottom: 1px solid #e2e8f0;
}

.elcom-overview__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    gap: 56px;
    align-items: flex-start;
}

.elcom-overview__desc {
    flex: 1.2;
}

.elcom-overview__title {
    font-size: 20px;
    font-weight: 700;
    color: #1a6fb5;
    margin: 0 0 14px;
}

.elcom-overview__text {
    font-size: 15px;
    line-height: 1.75;
    color: #4a5568;
}

.elcom-overview__features {
    flex: 0.8;
}

.elcom-features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.elcom-features__item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    font-weight: 500;
    color: #2d3748;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 12px 16px;
}

.elcom-features__icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
}

/* ============================================================
   TABS SECTION
   ============================================================ */
.elcom-tabs-section {
    padding: 40px 0 56px;
    background: #f7f9fc;
}

.elcom-tabs-section__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
}

.elcom-tabs-nav {
    display: flex;
    border-bottom: 2px solid #d0d8e8;
}

.elcom-tabs-nav__btn {
    background: none;
    border: none;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    padding: 11px 22px;
    font-size: 15px;
    font-weight: 600;
    color: #718096;
    cursor: pointer;
    transition: color 0.2s, border-color 0.2s;
}

.elcom-tabs-nav__btn:hover {
    color: #1a3a6b;
}

.elcom-tabs-nav__btn.active {
    color: #1a3a6b;
    border-bottom-color: #1a3a6b;
    background: #ffffff;
    border-radius: 6px 6px 0 0;
}

.elcom-tab-panel {
    display: none;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-top: none;
    border-radius: 0 8px 8px 8px;
    padding: 24px;
}

.elcom-tab-panel.active {
    display: block;
}

.elcom-no-data {
    font-size: 14px;
    color: #718096;
    padding: 8px 0;
}

.elcom-specs-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.elcom-specs-table tr {
    border-bottom: 1px solid #e2e8f0;
}

.elcom-specs-table tr:last-child {
    border-bottom: none;
}

.elcom-specs-table__label {
    padding: 11px 16px;
    font-weight: 600;
    color: #2d3748;
    background: #f7f9fc;
    width: 36%;
    vertical-align: top;
}

.elcom-specs-table__value {
    padding: 11px 16px;
    color: #4a5568;
    vertical-align: top;
}

.elcom-downloads-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.elcom-download-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: #f0f4ff;
    border: 1px solid #c3d0f0;
    border-radius: 6px;
    color: #1a3a6b;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: background 0.2s;
}

.elcom-download-link:hover {
    background: #dce6ff;
    color: #1a3a6b;
}

.elcom-tabs-cta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: start;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #e2e8f0;
}

/* ============================================================
   SHARED BUTTONS
   ============================================================ */
.elcom-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 11px 22px;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 400;
    text-decoration: none;
    cursor: pointer;
    border: none;
    transition: background 0.2s ease;
}

.elcom-btn--quote {
    background: #1a3a6b;
    color: #ffffff;
}
.elcom-btn--quote:hover { background: #122d55; color: #ffffff; }

.elcom-btn--contact {
    background: #e6a817;
    color: #ffffff;
}
.elcom-btn--contact:hover { background: #c98f0e; color: #ffffff; }

.elcom-btn--samples {
    background: #1a3a6b;
    color: #ffffff;
}
.elcom-btn--samples:hover { background: #122d55; color: #ffffff; }

.elcom-btn--pdf {
    background: #c53030;
    color: #ffffff;
}
.elcom-btn--pdf:hover { background: #9b2c2c; color: #ffffff; }

/* YITH button overrides */
.elcom-hero__btns .yith-ywraq-add-to-quote-button,
.elcom-tabs-cta .yith-ywraq-add-to-quote-button {
    display: inline-flex !important;
    align-items: center !important;
    padding: 11px 22px !important;
    background: #1a3a6b !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
}
.elcom-hero__btns .yith-ywraq-add-to-quote-button:hover,
.elcom-tabs-cta .yith-ywraq-add-to-quote-button:hover {
    background: #122d55 !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media ( max-width: 1024px ) {
    .elcom-hero__inner {
        padding: 40px 30px;
        gap: 40px;
    }

    .elcom-hero__right {
        width: 280px;
    }
}

@media ( max-width: 900px ) {
    .elcom-hero__inner {
        flex-direction: column;
        padding: 32px 20px;
    }

    .elcom-hero__right {
        width: 100%;
    }

    .elcom-hero__badge {
        top: -10px;
        right: 0;
    }

    .elcom-hero__title {
        font-size: 24px;
    }

    .elcom-overview__inner {
        flex-direction: column;
        gap: 30px;
    }
}

@media ( max-width: 600px ) {
    .elcom-hero {
        min-height: auto;
    }

    .elcom-overview,
    .elcom-tabs-section {
        padding: 28px 0;
    }

    .elcom-overview__inner,
    .elcom-tabs-section__inner {
        padding: 0 16px;
    }

    .elcom-tabs-nav__btn {
        padding: 9px 12px;
        font-size: 13px;
    }

    .elcom-tabs-cta {
        flex-direction: column;
        align-items: stretch;
    }

    .elcom-btn {
        justify-content: center;
    }
}
.woocommerce .add-request-quote-button.button, .woocommerce .add-request-quote-button-addons.button, .yith-wceop-ywraq-button-wrapper .add-request-quote-button.button, .yith-wceop-ywraq-button-wrapper .add-request-quote-button-addons.button{
    text-transform: capitalize;
    display: inline-flex;
    align-items: center;
    padding: 17px 22px;
    border-radius: 6px;
    font-size: 15px !important;
    font-weight: 400;
    text-decoration: none;
    cursor: pointer;
    border: none;
    transition: background 0.2s ease;
}
.elcom-tabs-cta .yith-ywraq-add-to-quote .yith-ywraq-add-button{
	display: flex !important;
    flex-direction: column !important;
}
.elcom-tabs-cta .clear, .elcom-hero__badge, #moderncart-slide-out .moderncart-slide-out-footer .moderncart-cart-total .moderncart-cart-line-items-item{
	display:none !important;
}
.elcom-hero__btns .add-request-quote-button.button {
	padding: 12px 35px !important;
}
.woocommerce-products-header__title.page-title{
	font-size: 30px;
    font-weight: 600;
}
/*
#moderncart-floating-cart{
	display:none !important;
}*/
header .ast-header-html-1 img{
	max-width:80px;
}
header .ast-header-html-2 ul{
	margin: 0;
    list-style: none;
    display: flex;
    gap: 30px;
    justify-content: end;
}
header .ast-below-header-bar {
    background-color: #f5f5f5;
    background-image: none;
    border-bottom: 1px solid #ededed;
    padding-top: 5px !important;
    padding-bottom: 5px;
}
@media (max-width: 767px){
	header .ast-header-html-2 ul{
		gap:15px;
	}
	header .ast-header-html-2 ul li a{
		font-size:15px;
		
	}
	header .ast-builder-grid-row {
		grid-column-gap: 15px;
	}
	.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar, .ast-header-break-point #masthead .ast-mobile-header-wrap .ast-below-header-bar, .ast-header-break-point #masthead .ast-mobile-header-wrap .ast-above-header-bar {
		padding-left: 5px;
		padding-right: 5px;
	}
}

/* ── Category Sidebar Accordion ── */
.woocommerce-js ul.product-categories>li {
    padding: 10px 10px;
    border: 1px solid #0a2d79;
    background-color: #0a2d79;
    color: #fff;
}
.woocommerce-js ul.product-categories>li a{
    
    color: #fff !important;
}
.product-categories .children {
    display: none;
    padding-left: 14px;
    margin-top: 6px;
}

.product-categories .cat-parent > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.product-categories .cat-parent > a::after {
    content: '+';
    font-size: 18px;
    font-weight: 300;
    color: #fff;
    margin-left: 8px;
    flex-shrink: 0;
    transition: transform 0.2s;
}

.product-categories .cat-parent.open > a::after {
    content: '−';
}

.product-categories .children li a {
    font-size: 13px;
    padding: 4px 0;
    display: block;
}  