﻿
/* Helixa Light */
@font-face {
    font-family: 'Helixa';
    src: url('/frontend-assets/fonts/Helixa/Helixa-Light.woff2') format('woff2'),
         url('/frontend-assets/fonts/Helixa/Helixa-Light.woff') format('woff'),
         url('/frontend-assets/fonts/Helixa/Helixa-Light.ttf') format('truetype'),
         url('/frontend-assets/fonts/Helixa/Helixa-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

/* Helixa Regular */
@font-face {
    font-family: 'Helixa';
    src: url('/frontend-assets/fonts/Helixa/Helixa-Regular.woff2') format('woff2'),
         url('/frontend-assets/fonts/Helixa/Helixa-Regular.woff') format('woff'),
         url('/frontend-assets/fonts/Helixa/Helixa-Regular.ttf') format('truetype'), 
         url('/frontend-assets/fonts/Helixa/Helixa-Regular.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* Helixa Italic */
@font-face {
    font-family: 'Helixa';
    src: url('/frontend-assets/fonts/Helixa/Helixa-Italic.woff2') format('woff2'),
         url('/frontend-assets/fonts/Helixa/Helixa-Italic.woff') format('woff'),
         url('/frontend-assets/fonts/Helixa/Helixa-Italic.ttf') format('truetype'),
         url('/frontend-assets/fonts/Helixa/Helixa-Italic.otf') format('opentype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* Helixa Bold */
@font-face {
    font-family: 'Helixa';
    src: url('/frontend-assets/fonts/Helixa/Helixa-Bold.woff2') format('woff2'),
         url('/frontend-assets/fonts/Helixa/Helixa-Bold.woff') format('woff'),
         url('/frontend-assets/fonts/Helixa/Helixa-Bold.ttf') format('truetype'),
         url('/frontend-assets/fonts/Helixa/Helixa-Bold.otf') format('opentype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* Nord Light */
@font-face {
    font-family: 'Nord';
    src: url('/frontend-assets/fonts/Nord/Nord-Light.woff2') format('woff2'),
         url('/frontend-assets/fonts/Nord/Nord-Light.woff') format('woff'),
         url('/frontend-assets/fonts/Nord/Nord-Light.ttf') format('truetype'),
         url('/frontend-assets/fonts/Nord/Nord-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

/* Nord Regular */
@font-face {
    font-family: 'Nord';
    src: url('/frontend-assets/fonts/Nord/Nord-Regular.woff2') format('woff2'),
         url('/frontend-assets/fonts/Nord/Nord-Regular.woff') format('woff'),
         url('/frontend-assets/fonts/Nord/Nord-Regular.ttf') format('truetype'), 
         url('/frontend-assets/fonts/Nord/Nord-Regular.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* Nord Italic */
@font-face {
    font-family: 'Nord';
    src: url('/frontend-assets/fonts/Nord/Nord-Italic.woff2') format('woff2'),
         url('/frontend-assets/fonts/Nord/Nord-Italic.woff') format('woff'),
         url('/frontend-assets/fonts/Nord/Nord-Italic.ttf') format('truetype'),
         url('/frontend-assets/fonts/Nord/Nord-Italic.otf') format('opentype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* Nord Bold */
@font-face {
    font-family: 'Nord';
    src: url('/frontend-assets/fonts/Nord/Nord-Bold.woff2') format('woff2'),
         url('/frontend-assets/fonts/Nord/Nord-Bold.woff') format('woff'),
         url('/frontend-assets/fonts/Nord/Nord-Bold.ttf') format('truetype'),
         url('/frontend-assets/fonts/Nord/Nord-Bold.otf') format('opentype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* Asign Nord to header */
#navbarNav > ul > li > a {
    font-family: 'Nord', sans-serif;
}

/* Override font variables */
:root {
    --primary-font: 'Nord', sans-serif;
    --alt-font: 'Helixa', sans-serif;
}

/* JLT color */
.color-1 {
    color: #0768AB;
}

/* Taylor color */
.color-2 {
    color: #305D3B;
}

/* Cameron color */
.color-3 {
    color: #767F92;
}

/* Ultimizers color */
.color-4 {
    color: #2C2C40;
}

.fas.fa-file-pdf {
    font-size: 24px;
    margin-right: 8px;
    color: #d9534f;
}

/*body {
    font-size: 18px;
}*/
body {
    font-family: 'Helixa', sans-serif;
    font-weight: 500; /* Using weight 500 for regular */
    font-size: 18px;
}

h1, h2, h3 {
    font-family: 'Nord', sans-serif;
    font-weight: 500;
}

h4, h5, h6 {
    font-family: 'Helixa', sans-serif;
    font-weight: 800;
    font-size: 1.66em;
    line-height: 1.2em;
}

.grid-item .product-box {
    display: block;
    min-height: 400px;
}

    .grid-item .product-box .shop-image {
        width: auto;
        margin: auto;
        height: 220px;
        min-height: 220px;
    }

    .grid-item .product-box .shop-video {
        width: auto;
        margin: auto;
        height: 380px;
        min-height: 380px;
    }

.product-cat-nav-icon {
    width: 30%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.tinymce-content li {
    list-style-type: disc !important;
}

#tab .row > * {
    padding: 25px !important;
}

/*ul.shop-boxed .shop-box {
    width: 400px;
    height: 400px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    margin: 1px;*/  /*Space between boxes */
/*}*/

/*ul.shop-boxed .shop-image {
    width: 100%;
    height: 250px;*/ /* Fixed height for the image container */
    /*overflow: hidden;
}

ul.shop-boxed .shop-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;*/ /* Ensures image covers the container */
/*}

ul.shop-boxed .shop-footer {
    padding: 10px;
    height: 150px;*/ /* Fixed height for text container */
    /*overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

ul.shop-boxed .shop-footer a {
    font-size: 17px;
    font-weight: 600;
    color: #333;
    text-decoration: none;
}

ul.shop-boxed .shop-footer div {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    margin-top: 5px;
}*/

.shop-sidebar .shop-filter li.active .product-cb:after {
    opacity: 1;
}

@media (max-width: 768px) and (max-width: 1024px) {
    #slide-3-layer-07 {
        white-space: nowrap !important;
        /* make it fit the viewport */
        font-size: clamp(56px, 15vw, 82px) !important;
        line-height: 1.05 !important;
        /* optional: helps a bit with width */
        letter-spacing: -1px !important;
        /* safety */
        max-width: 100vw !important;
        transform: scale(0.96);
        transform-origin: center;
    }
}

@media (max-width: 768px) {
    /* UL default padding can shift the whole grid */
    ul.shop-wrapper {
        padding: 0 12px !important;
    }

    /* If the grid system adds asymmetric gutters, neutralize them */
    ul.shop-wrapper.gutter-large {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Ensure each tile centers nicely */
    ul.shop-wrapper .grid-item {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    #slide-3-layer-08 {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Center the title */
    section .row > .col span.fs-17 {
        text-align: center !important;
        margin-left: auto;
        margin-right: auto;
    }

    section .row > .col p {
        text-align: center !important;
        margin-left: auto;
        margin-right: auto;
    }

    section .row > .col {
        margin-bottom: 32px;
    }

    /* Center the bottom border under the title */
    section .row > .col span.border-bottom {
        display: inline-block;
    }
}

@media (min-width: 992px) {
    .features-grid .feature-title {
        line-height: 1.4;
        min-height: calc(1.4em * 3);
    }
}


.background-color-ultimizers {
    background-color: #34354A !important;
}