/* Colors */

:root {
    --black: #000000;
    --dark-gray: #222222;
    --gray: #0B0B0B;
    --medium-gray: #CFCFCF;
    --light-gray: #9f9f9f;
    --off-white: #f7f7f7;
    --blue: #0b4ff2;
    --yellow: hsl(57, 99%, 51%);
    --teal: #004545;
    --dark-teal: #003232;
    --white: #ffffff;
}

/* BG Colors */

.bg-off-white {
    background-color: var(--off-white);
}

.bg-medium-gray {
    background-color: var(--medium-gray);
}

.bg-black {
    background-color: var(--black);
}

.bg-yellow {
    background-color: var(--yellow);
}

.bg-gradient-yellow {
    background-image: linear-gradient(var(--white), var(--yellow));
}

.bg-gradient-yellow-to-bottom-right {
    background-image: linear-gradient(172deg, var(--yellow), rgba(254, 241, 4, 0) 50%);
}

.bg-gradient-yellow-to-bottom-right-light {
    background-image: linear-gradient(172deg, rgba(254, 241, 4, 0.5), rgba(254, 241, 4, 0) 50%);
}

.bg-gradient-yellow-to-top-right {
    background-image: linear-gradient(to top right, rgba(254,241,4,0.55), rgba(254,241,4,0) 50%);
}

.bg-gradient-teal-to-bottom-right {
    background-image: linear-gradient(172deg, var(--teal), var(--dark-teal));
}

/* Text Colors */

.text-white {
    color: var(--white);
}

.text-black {
    color: var(--black);
}

.text-yellow {
    color: var(--yellow);
}

.font-body-color {
    color: var(--black) !important;
}

/* Buttons */

.btn {
    position: relative;
    background: var(--yellow);
    border: none;
    border-radius: 0;
    display: inline-block;
    padding: 0.85rem;
    padding-right: 3.2rem;
    position: relative;
    font-size: var(--fs-xs);
    font-variation-settings: var(--font-expanded); 
    font-weight: 900;
    white-space: normal;
    transition: all .25s;

    &:before {
        font-family: 'Font Awesome Kit';
        font-weight: 400;
        -webkit-font-smoothing: antialiased;
        content: '\e000';
        font-size: var(--fs-xs);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 0.7rem;
    }

    &:hover, &:active, &:focus {
        background: var(--yellow);
        padding-right: 5rem;
    }

    &.btn-black {
        background: var(--black);
        color: var(--white);
    }

    &.btn-white {
        background: var(--white);
        color: #222;

        &:hover {
            background: var(--blue);
        }
    }

    &.remove-arrow {
        padding: 0.7rem;
        &:before {
            display: none;
        }
    }
}

button {
    transition: all .25s;
    cursor: pointer;
}

.link {
    position: relative;
    font-size: var(--fs-xs);
    font-variation-settings: var(--font-expanded); 
    font-weight: 900;
    text-decoration: none;
    padding-right: 2.8em;
    transition: all .25s;

    &:before {
        font-family: 'Font Awesome Kit';
        font-weight: 400;
        -webkit-font-smoothing: antialiased;
        content: '\e000';
        font-size: var(--fs-xs);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 0;
    }

    &:hover {
        padding-right: 4rem;
    }
}

.link-big {
    margin-bottom: 1.2em;
    padding-bottom: 0.75em;
    text-decoration: none;
    border-bottom: 1px solid var(--medium-gray);
    display: flex;
    align-items: center;

    span {
        font-variation-settings: var(--font-condensed); 
        font-weight: 300;
        font-size: var(--fs-3xl);
        line-height: var(--leading-tight);

        @media (max-width:1399px) {
            font-size: var(--fs-2xl);
        }
    }

    i {
        font-size: var(--fs-xl);
        transition: 0.25s;
        opacity: 0;
    }

    &:hover {
        i {
            opacity: 1;
        }
    }
}

.link-logo, .link-arrow-right {
    display: flex;
    align-items: center;
    text-decoration: none;

    i {
        font-size: var(--fs-md);
        transition: 0.25s;
        opacity: 0;
    }

    &:hover {
        i {
            opacity: 1;
        }
    }
}

.link-logo img, .logo-row img {
    max-height: 34px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .sidebar-item .link-logo img, .logo-row img {
        max-height: 28px;
    }
}

.link-arrow-right span {
    font-weight: 700;
    font-variation-settings: var(--font-expanded);
    font-size: var(--fs-sm);
    padding-right: 1.5em;
}

/* Header */

.header-margin {
    margin-top: 62px;
}

.header-padding {
    padding-top: 62px;
}

@media (min-width:992px) {
    .header-margin {
        margin-top: 73px;
    }
    
    .header-padding {
        padding-top: 73px;
    }
}

@media (min-width:1200px) {
    .header-margin {
        margin-top: 91px;
    }
    
    .header-padding {
        padding-top: 91px;
    }
}

.anchor-margin {
    padding-top: 63px;
    margin-top: -63px;

    @media (min-width:992px) {
            padding-top: 73px;
            margin-top: -73px;
    }
}

.anchor-margin-big {
    padding-top: 120px;
    margin-top: -120px;
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 1rem;
        padding-left: 1rem;
    }
}

.navbar {
    background-color: transparent;
    transition: all .35s !important;
    padding: 16px 0;
    font-variation-settings: var(--font-condensed);

    @media (min-width:1200px) {
        padding: 25px 0;
    }

    .logo-white {
        display: none;
    }

    .nav-item {
        .nav-link, .dropdown-item {
            color: var(--black);
        }

        .dropdown-item {
            &:hover {
                background-color:transparent;
            }
        }
    }

    .dropdown-menu {
        border-radius: 0;
        border: 0;
        
        .dropdown-item {
            @media (min-width:992px) {
                &:hover {
                    background-color:var(--off-white);
                }
            }
        }
    }
}

body:not(#p-phillips-power) .navbar {
    .dropdown-item:hover {
        @media (min-width:992px) {
            background-color:var(--off-white);
        }
    }
    .dropdown-menu {
        @media (min-width:992px) {
            box-shadow: 0 4px 6px -2px rgba(0,0,0,.25);
        }
        @media (max-width:991px) {
            border-top: 1px solid var(--medium-gray);
        }
    }
}

body#p-phillips-power .navbar .dropdown-menu {
    border-top: 1px solid var(--medium-gray);
}

    .navbar.scrolled {
        background-color: var(--yellow);
        padding: 16px 0;
        -webkit-box-shadow: 0 4px 6px -2px rgba(0,0,0,.25);
        -moz-box-shadow: 0 4px 6px -2px rgba(0,0,0,.25);
        box-shadow: 0 4px 6px -2px rgba(0,0,0,.25);
    }

.header-reverse {
    @media (min-width:992px) {
        .navbar:not(.scrolled) {
            .nav-item {
                .nav-link {
                    color: var(--white);
                }
            }
        }
    }

    .navbar:not(.scrolled) .navbar-toggler-icon {
        background-color: var(--white) !important;

        &::before,
        &::after {
            background-color: var(--white) !important;
        }
    }

    .logo-white {
        display: block;
    }

    .logo-black {
        display: none;
    }

    .navbar.scrolled {
        .logo-white {
            display: none;
        }
        .logo-black {
            display: block;
        }
    }
}

.anchor-nav {
    li {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        padding-right: 1rem !important;
        padding-left: 1rem !important;

        a {
            text-decoration: none;
        }
    }
}

/* Offcanvas Menu */

.offcanvas {
    background-color: var(--white);
}

/* Header Search */

#searchForm {
    position: absolute;
    top: -1px;
    right: 6.75rem;
    width: 18rem;
    text-align: right;
    visibility: hidden;
    opacity: 0;
    z-index: 1000;

    &.active {
        visibility: visible;
        opacity: 1;
        margin: 0 auto;
        text-align: center;
        background: transparent;
    }

    input {
        padding-top: 4px;
        padding-bottom: 4px;
        margin: 0;
        border: 0;
        background-color: transparent;
        color: var(--white);
        font-size: var(--fs-sm);
        outline: 0;
        text-align: right;

        &::placeholder {
        color: var(--white);
        opacity: 0.65; /* Firefox */
        }

        &::-ms-input-placeholder { /* Edge 12 -18 */
        color: var(-white);
        }
    }

    button {
        width: 30px;
        border: 0;
        background-color: transparent;
        color: white;
        height: 100%;
        outline: 0;
        transition: all .15s;
        float: right;
        padding: 13px 0;
        height: 100%;
        text-align: right;
    }
}
  
.search-toggle {
    background-color: transparent;
    color: inherit;
    border: 0;
    width: 28px;
    height: 100%;

    &.active:before {
        content: "\f00d";
    }
}

/* Custom hamburger menu */

.navbar-toggler {
    border: none;
    padding: 0;
    width: 30px;
    height: 20px;
    position: relative;

    &:focus {
        box-shadow: none;
    }

    .navbar-toggler-icon {
        background-image: none !important;
        background-color: var(--black);
        height: 2px;
        width: 100%;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);

        &::before,
        &::after {
            content: '';
            background-color: var(--black);
            height: 2px;
            width: 100%;
            position: absolute;
            left: 0;
        }

        &::before {
            top: -8px;
        }

        &::after {
            bottom: -8px;
        }
    }
}

/* Logo */

.logo, .logo-white {
    display: block;
    width: 174px;
    opacity: 1;
    transition: all 0.35s;
}

/* Footer */

.footer {
    ul li a {
        text-decoration: none;
    }

    a:hover {
        text-decoration: underline;
    }

    ul.copyright {
        font-weight: 800;
    }
}
