/*
Theme Name:   Quanta OPU Child Theme
Author:       Carimus
Author URI:   https://www.carimus.com
Template:     quanta-core
Version:      1.0.0
*/

@import url(https://use.typekit.net/diz0xgp.css);

/* Globals */

.container-wrap {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

.cta-card {
    .h-full {
        margin-left: auto;
        margin-right: auto;
    }

    &&.border-black {
        border-color: var(--wp--preset--color--primary);
    }

    .cta-card-content {
        .p-8 {
            padding-right: 0;
        }
        h2 {
            font-size: clamp(4rem, 10vw, 9.375rem);
            letter-spacing: 1.5px;
        }
        .cta-pretitle {
            font-size: clamp(1rem, 6vw, 1.125rem) !important;
            &&.text-white {
                color: var(--wp--preset--color--black);
            }
        }
        .btn {
            font-family: var(--wp--preset--font-family--proxima-nova);
        }
    }
}

.cta-variant {
    h2 {
        max-width: 45%;
        font-size: clamp(1rem, 10vw, 4.375rem) !important;
        letter-spacing: 7px !important;
        color: var(--wp--preset--color--primary);
    }
    p {
        max-width: 90%;
        line-height: 2;
    }
}

.info-landing {
    .inner {
        text-align: center;
        .section-title {
            font-size: clamp(1.5rem, 6vw, 3.125rem) !important;
            font-weight: bold;
            margin: 0 80px 0 80px;
        }
        p {
            margin: 0 120px 0 120px;
        }
    }
}

.spacing-40 {
    > * {
        margin-bottom: 40px;
    }
}

.width-70 {
    > * {
        max-width: 70%;
    }
}

.home {
    .styled-header {
        min-height: 100vh;
    }
    .header-content {
        max-width: 45% !important;
        h1 {
            font-size: clamp(4rem, 7vw, 8.125rem) !important;
            letter-spacing: 1.3px;
        }
    }
}

header {
    .styled-header {
        &&::before {
            background: unset;
        }
    }
    .header-content {
        h1 {
            font-size: clamp(2rem, 7vw, 5rem) !important;
            letter-spacing: 0.8px !important;
        }
    }
}

h4.pre-title {
    font-weight: bold;
    letter-spacing: 3.2px;
    color: var(--wp--preset--color--gray-1000);
    background: var(--wp--preset--color--primary);
    max-width: fit-content;
    padding: 8px 36px 8px 36px;
    margin-bottom: 30px;
}

h2.section-title {
    font-size: clamp(2rem, 6vw, 5rem) !important;
    font-weight: bold;
}

.cap-card {
    &&::before {
        background: unset;
    }
    .cap-card__body {
        h3 {
            max-width: 60%;
            font-size: clamp(1.5rem, 6vw, 28px) !important;
            font-weight: bold;
            padding-bottom: 20px;
        }
    }

    .cap-card__body--details {
        position: relative;
        padding-bottom: 20px;
    }

    .cap-card__body--details .btn {
        position: absolute;
        left: 0;
        bottom: 0;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
    }

    .btn.btn-primary {
        padding-top: 20px;
    }
}

.cap-card:hover .cap-card__body--details .btn {
    opacity: 1;
    visibility: visible;
}

.cap-card__body {
    transform: translateY(0) !important;
    transition: transform 0.5s ease;
}

.cap-card:hover .cap-card__body {
    transform: translateY(-20px) !important;
}

.quanta-card--crew {
    .btn {
        display: none !important;
    }
}

.quanta-slide__dot.active {
    background: var(--wp--preset--color--white);
}

.navigation-wrapper {
    .quanta-slide_prev, .quanta-slide_next {
        background: var(--wp--preset--color--gray-500);
        color: var(--wp--preset--color--black);
    }
}

.history-slider__wrap {
    .active {
        font-weight: bold;
        color: var(--wp--preset--color--primary);
        border-right-color: var(--wp--preset--color--primary); 
    }
    .history-slide__content {
        > * {
            margin-bottom: 40px;
            max-width: 25rem;
        }
        .slide-title {
            font-weight: bold;
        }
        .slide-sub-title {
            font-size: var(--wp--preset--font-size--meidum);
        }
        p {

        }
    }
}

.list-style-disc {
    list-style: disc;
    list-style-position: inside;
    > li {
        margin-bottom: 10px;

        &&::before {
            content: "" !important;
            position: relative;
            display: inline-block;
            height: 2px;
            bottom: 0.25rem;
        }

        &&::marker {
            font-size: .6em;
        }
    }
}

.list-style-dash {
    list-style: none;
    > li {
        margin-bottom: 20px;

        &&::before {
            content: "" !important;
            position: relative;
            display: inline-block;
            left: 0;
            width: 1rem;
            height: 2px;
            background: var(--wp--preset--color--primary);
            bottom: 0.25rem;
            margin-right: 0.75rem;
        }
    }
}

.contact {
    font-family: var(--wp--preset--font-family--proxima-nova);
    font-size: clamp(1rem, 6vw, 1.125rem) !important;
    letter-spacing: 3.6px;
    font-weight: bold;
}

.gform_wrapper {
    .gform_title {
        text-transform: uppercase;
        font-weight: bold;
        margin-bottom: 40px;
        letter-spacing: 4.8px;
    }
    .gfield_label {

    }
    .gfield_required {
        color: white !important;
    }
    .gform_required_legend {
        display: none;
    }
    .gfield_description {
        display: none;
    }
    .gform_footer {
        &&.top_label {
            justify-content: end;

            .btn {
                font-family: var(--wp--preset--font-family--proxima-nova);
            }
        }
    }
}

footer {
    .col3 {
        ul > li {
            font-weight: bold;
        }
    }
    
    .footerTel {
        margin: 3rem 0 3rem 0 !important;
    }
}

.font-proxima-nova {
    font-family: var(--wp--preset--font-family--proxima-nova);
}

.job-listings {
    > li {
        margin-bottom: 50px;
    }
}

.gap-675 {
    column-gap: 6.75rem;
}

.w-70 {
    max-width: 70%;
}

.mt-16 {
    margin-top: 4rem;
}

.mt-28 {
    margin-top: 7rem;
}