/*!
Theme Name: New Pace
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: pace
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Pace is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/* =========================================================
   PACE HEADER
========================================================= */

:root {
    --pace-navy: #061a4f;
    --pace-dark-blue: #061b50;
    --pace-green: #9bd52a;
    --pace-white: #ffffff;
    --pace-text: #18244b;
}


/* =========================================================
   ANNOUNCEMENT BAR
========================================================= */

.pace-announcement-bar {
    width: 100%;
    height: 24px;
    background: var(--pace-green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    color: #071d50;
    position: relative;
    z-index: 1000;
}

.pace-announcement-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    line-height: 1;
}

.pace-announcement-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #071d50;
    display: inline-block;
}


/* =========================================================
   HEADER
========================================================= */

.pace-header {
    width: 100%;
    margin-bottom: calc(-1 * var(--pace-header-overlap));
    background: linear-gradient(110deg, #061b50 0%, #082e69 45%, #0d5167 100%);
    padding: 15px 0;
    position: relative;
    z-index: 999;
}


/* =========================================================
   HEADER CONTAINER
========================================================= */

.pace-header-container {
    width: min(1280px, calc(100% - 214px));
    max-width: 1600px;
    min-height: 80px;
    padding: 16px;
    border-radius: 50px;
    height: 80px;
    margin: 0 auto;
    background: var(--pace-white);
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
}


/* =========================================================
   LOGO
========================================================= */

.pace-logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.pace-logo-link {
    display: flex;
    align-items: center;
    text-decoration: none;
}

.pace-logo-icon {
    display: block;
    width: 275px;
    height: auto;
    max-height: 52px;
    object-fit: contain;
}


/* Logo decorative lines */

.pace-logo-icon span {
    position: absolute;
    left: 6px;
    width: 26px;
    height: 5px;
    border-radius: 50%;
    background: var(--pace-navy);
    transform: skewX(25deg);
}

.pace-logo-icon span:nth-child(1) {
    top: 10px;
}

.pace-logo-icon span:nth-child(2) {
    top: 16px;
    background: var(--pace-green);
}

.pace-logo-icon span:nth-child(3) {
    top: 22px;
}


.pace-logo-text {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    font-weight: 700;
    color: var(--pace-navy);
    white-space: nowrap;
}


/* =========================================================
   NAVIGATION
========================================================= */

.pace-navigation {
    display: flex;
    align-items: center;
}

.pace-menu {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 0;
    padding: 0;
}

.pace-menu-item {
    position: relative;
}

.pace-menu-item > a {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 12px 10px;
    color: #202020;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    white-space: nowrap;
    transition: color 0.2s ease;
}

.pace-menu-item > a:hover {
    color: var(--pace-navy);
}


/* =========================================================
   DROPDOWN
========================================================= */

.pace-dropdown-arrow {
    font-size: 13px;
    margin-top: -2px;
}


.pace-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    min-width: 220px;
    padding: 8px;
    margin: 0;
    list-style: none;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition:
        opacity 0.2s ease,
        transform 0.2s ease,
        visibility 0.2s ease;
}


.pace-has-dropdown:hover .pace-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


.pace-dropdown li a {
    display: block;
    padding: 10px 12px;
    color: #00115E;
    font-size: 16px;
    text-decoration: none;
    border-radius: 6px;
    font-weight: 700;
}


.pace-dropdown li a:hover {
    background: #f2f7e8;

    color: var(--pace-navy);
}


/* =========================================================
   REQUEST DEMO BUTTON
========================================================= */

.pace-demo-item {
    margin-left: 4px;
}

.pace-demo-item a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 40px;
    background: var(--pace-green);
    color: #071d50;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.pace-demo-item a:hover {
    background: #a9df3b;
    transform: translateY(-1px);
}


/* =========================================================
   MOBILE BUTTON
========================================================= */

.pace-mobile-toggle {
    display: none;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: var(--pace-navy);
    cursor: pointer;
    padding: 10px;
}


.pace-mobile-toggle span {
    display: block;
    width: 20px;
    height: 2px;
    margin: 4px auto;
    background: #ffffff;
    border-radius: 2px;
}


/* =========================================================
   MOBILE NAVIGATION
========================================================= */

.pace-mobile-navigation {
    display: none;
    width: calc(100% - 30px);
    margin: 10px auto 0;
    background: #ffffff;
    border-radius: 15px;
    padding: 15px;
    box-sizing: border-box;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}


.pace-mobile-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
}


.pace-mobile-navigation li {
    border-bottom: 1px solid #eeeeee;
}


.pace-mobile-navigation li:last-child {
    border-bottom: none;
}


.pace-mobile-navigation a {
    display: block;
    padding: 13px 5px;
    color: var(--pace-navy);
    text-decoration: none;
    font-size: 14px;
}


.pace-mobile-demo {
    background: var(--pace-green);
    border-radius: 20px;
    text-align: center;
    margin-top: 10px;
    font-weight: 600;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 900px) {

    .pace-header-container {
        width: calc(100% - 30px);
    }

    .pace-navigation {
        display: none;
    }

    .pace-mobile-toggle {
        display: block;
    }

    .pace-mobile-navigation.is-open {
        display: block;
    }

}


@media (max-width: 600px) {

    .pace-announcement-bar {
        height: 20px;
        font-size: 8px;
        padding: 0 5px;
        text-align: center;
    }

    .pace-header {
        padding: 10px 0;
    }

    .pace-header-container {
        min-height: 48px;
        padding-left: 12px;
    }

    .pace-logo-text {
        font-size: 17px;
    }

    .pace-logo-icon {
        width: 34px;
        height: 34px;
    }

}