﻿/* code snippets
     
rgba(var(--blue-hue), 0.3);
var(--blue-hue);

/* =====================================================================
	ACCESSIBLE - RESPONSIVE FLUID / 1023px
===================================================================== */
.screenreader-text {
    position: absolute;
    left: -999px;
    top: -999px;
    width: 100%;
    height: 1px;
    overflow: hidden;
    box-sizing: border-box;
}

.screenreader-text:focus, .screenreader-text:active {
    display: inline-block;
    vertical-align: middle;
    left: 0 !important;
    top: 0 !important;
    background-color: #ff0000;
    font-family: 'Source Sans Pro', Arial, sans-serif;
    font-display: swap;
    height: 54px;
    color: var(--white);
    width: 100%;
    margin: 0;
    overflow: hidden;
    padding: 16px 0;
    text-align: center;
    font-size: 20px;
    z-index: 1000;
    text-decoration: none;
}

.setfixposcontent {
    z-index: 4
}

.divider {
    clear: both;
    display: block;
    height: 1px;
    margin: 4px 0;
    background-color: rgba(70,152,203,.5)
}

.baserow {
    clear: both;
    position: relative;
    box-sizing: border-box
}

.basewidth {
    position: relative;
    margin: 0 auto;
    box-sizing: border-box
}

.contentwidth {
    position: relative;
    margin: 0 auto
}

.social a {
    display: inline-block;
    color: #4698cb;
    font-size: 15px;
    position: relative;
    line-height: 30px;
    margin: 0;
    padding: 0 10px 0 10px;
    text-decoration: none;
    transition: all .5s ease
}

/* =====================================================================
	WRAPPER - RESPONSIVE FLUID / 1023px
===================================================================== */
.site-wrap {
    display: grid;
    margin: 0 auto;
    font-family: var(--font-default);
    width: 100%;
    max-width: var(--site-full-width);
    font-size: 24px;
    line-height: 1.3em;
    font-variant-numeric: lining-nums;
    font-feature-settings: "lnum" 1;
    font-weight: 300;
    grid-template-columns: [full-start] minmax(var(--site-padding), 1fr) [content-start] minmax(0, var(--content-max-width)) [content-end] minmax(var(--site-padding), 1fr) [full-end];
    color: var(--body-text);
}

header, main, footer, section {
    grid-column: full;
    display: grid;
    grid-template-columns: inherit;
}


.animateheader.baserow {
    grid-column: full;
    align-items: center;
    transition: all .3s ease;
}

.animateheader .logo {
    grid-column: content-start;
    transition: all .3s ease;
}

.animateheader .navd {
    grid-column: content-end;
    justify-self: end;
    transition: all .3s ease;
}

/* =====================================================================
	HEADER - RESPONSIVE FLUID / 1023px
===================================================================== */
header.animateheader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 199;
    background-color: var(--white);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

header.animateheader .header-inner {
    max-width: var(--site-full-width);
    margin: 0 auto;
    background-color: var(--white);
    box-shadow: 0 4px 4px rgba(var(--black-hue),.15);
    display: grid;
    grid-template-columns: [full-start] minmax(var(--site-padding), 1fr) [content-start] minmax(0, var(--content-max-width)) [content-end] minmax(var(--site-padding), 1fr) [full-end];
}

header.animateheader .logo {
    grid-column: content-start;
    position: relative;
    align-self: center;
    transition: all .3s ease;
}

header.animateheader .logo img {
    width: 250px;
    height: auto;
    display: block;
}

header.animateheader .logosmall {
    grid-column: content-start;
    position: absolute;
    top: 54%;
    transform: translateY(-54%);
    opacity: 0;
    visibility: hidden;
    transition: all .3s ease;
}

header.animateheader .navd {
    grid-column: content-end;
    justify-self: end;
    align-self: center;
    position: relative;
    z-index: 103;
    transition: all .3s ease;
}

/* =====================================================================
	UTILITY - RESPONSIVE FLUID / 1023px
===================================================================== */
.utility {
    position: relative;
    grid-column: full;
    display: grid;
    grid-template-columns: inherit;
    height: 38px;
    z-index: 4;
    transition: all .3s ease;
    opacity: 1;
    visibility: visible;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
}

.utilitycontainer {
    grid-column: full;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    transition: all .3s ease;
    height: 38px;
    padding: 20px;
}

.utilitymenu {
    display: flex;
    align-items: center;
}

.utilitymenu a {
    margin-left: 12px;
    text-decoration: none;
    color: var(--blue);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .08em;
    transition: all 1s ease;
    text-transform: uppercase;
    /* Center text and icon vertically */
    display: inline-flex;
    align-items: center;
}

.utilitymenu a i {
    margin-left: 6px;
    font-size: 10px;
    line-height: 1;
    display: inline-block;
    margin-top: -2px;
}

/* =====================================================================
	LOGO MENU WRAP - RESPONSIVE FLUID / 1023px
===================================================================== */
.logo-menu-wrap {
    position: relative;
    grid-column: full;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100px;
    transition: all 0.2s cubic-bezier(0.2, 0, 0.2, 1);
    transition: all .2s ease;
    z-index: 3;
    padding: 20px;
}

/* State when scrolled down */
header.animateheader.smaller .logo-menu-wrap {
    height: 80px;
}

header.animateheader.smaller .logo img {
    transition: all 0.4s ease;
}

.logo, .logosmall {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}


header.animateheader .logo {
    opacity: 1;
    visibility: visible;
}

header.animateheader .logosmall {
    opacity: 0;
    visibility: hidden;
}


/* Animation States -------------------------------------------- */
header.animateheader {
    --header-h: 36px;
    height: var(--header-h);
}

header.animateheader.smaller {
    --header-h: 54px;
    height: var(--header-h);
}

header.animateheader.smaller .utility {
    height: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-50px);
}

header.animateheader.smaller .logo-menu-wrap {
    height: 80px;
    transition: all .3s ease;
}

header.animateheader.smaller .logo {
    opacity: 0;
    visibility: hidden;
}

header.animateheader.smaller .logosmall {
    opacity: 1;
    visibility: visible;
}

.navd {
    grid-column: content-start / content-end;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
}

.mainnav {
    position: relative;
    z-index: 105;
    display: block;
}

/* =====================================================================
	GLOBAL CLASS  - RESPONSIVE FLUID / 1023px
===================================================================== */
main [class^="l-"] {
    display: grid;
    grid-template-columns: inherit;
    grid-column: full;
    width: 100%;
    margin-top: var(--setfixposcontent);
}

main [class^="l-"] div.brand-name {
    color: var(--warm-white);
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
}

main [class^="l-"] div.brand-name.blue {
    color: var(--blue);
}

main [class^="l-"] div.parent-title, main [class^="l-"] div.parent-title h1 {
    font-family: var(--font-serif);
    font-size: 50px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 0;
    margin: 0;
}

/* ===== Banners — Suppress rise animation within same section ===== */
html.banner-no-anim .splitbleed-banner-wrap .parent-title-part .brand-name,
html.banner-no-anim .splitbleed-banner-wrap .parent-title-part .parent-title {
    animation: none;
    transform: none;
    opacity: 1;
}

main [class^="l-"] div.hero-description {
    font-size: 18px;
    line-height: 1.2;
    font-weight: 300;
    letter-spacing: .02em;
    padding: 0;
    margin: 0;
}

.splitbleed-banner-wrap .parent-title-part .copy-limit .brand-name-risewrap {
    overflow: hidden;
}

.splitbleed-banner-wrap .parent-title-part .parent-title-risewrap {
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    padding-bottom: 4px;
    height: 60px;
}

.splitbleed-banner-wrap .parent-title-part .parent-title {
    width: 100%;
    margin: 0;
    padding: 0;
    animation: riseUp .6s ease both;
    animation-delay: .2s;
}

.splitbleed-banner-wrap .parent-title-part .brand-name,
.splitbleed-banner-wrap .parent-title-part .parent-title {
    margin: 0;
    padding: 0;
}

.splitbleed-banner-wrap .parent-title-part .brand-name {
    animation: riseUp .6s ease forwards;
}

.splitbleed-banner-wrap .parent-title-part .parent-title {
    animation: riseUp .8s ease both;
    animation-delay: .1s;
}

@keyframes riseUp {
    from {
        transform: translateY(100%);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* =====================================================================
	GLOBAL H TAGS - RESPONSIVE FLUID / 1023px
===================================================================== */
section h3 {
    color: var(--blue);
    font-size: 38px;
    font-weight: 900;
    letter-spacing: -.01em;
}

section h3.makeserif {
    font-family: var(--font-serif);
    color: var(--blue);
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 0;
}

section p {
    color: var(--body-text);
    font-size: var(--section-p);
    line-height: var(--section-p-lheight);
    padding: .25em 0;
    margin: 0;
}

/* =====================================================================
	GLOBAL READ MORE LINKS - RESPONSIVE FLUID / 1023px
===================================================================== */

section .readmore {
    position: relative;
    margin: 16px 0;
}

section .readmore a {
    display: inline-flex;
    margin-top: auto;
    align-items: center;
    gap: 8px;
    color: var(--blue);
    font-size: 16px;
    padding: 14px 12px;
    border-radius: 7px;
    line-height: 1;
    text-decoration: none !important;
    letter-spacing: .04em;
    font-weight: 600;
    transition: all .4s ease;
}

section .readmore a:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    content: "\f061";
    font-size: .7em;
    transition: all .4s ease;
    position: relative;
    top: 1px;
}

section .readmore a:hover {
    transform: translateX(12px);
}

section .readmore a:hover:after {
    transform: translateX(5px);
}

/* CIRCLED ARROW — ring is 1em, same height as the type */
section .readmore.circle a:after {
    font-size: .5em;
    width: 2.1em;
    height: 2.1em;
    border-radius: 50%;
    border: 1px solid currentColor;
}

/* NO ARROW */
section .readmore.noarrow a:after {
    content: none;
}

/* CASE */
section .readmore.upper a {
    text-transform: uppercase;
    letter-spacing: .06em;
}

/* EXTRA PADDING */
section .readmore.xlpadding a {
    padding: 14px 20px;
}

section .readmore.xxlpadding a {
    padding: 18px 32px;
}

/* NO BG, FLUSH LEFT */
section .readmore.flush a {
    padding-left: 0;
}

/* COLORS */

/* WHITE ------------------------------------ */
section .readmore.white a {
    background-color: var(--white);
    color: var(--blue);
}

section .readmore.white a:hover {
    background-color: var(--blue);
    color: var(--white);
}

section .readmore.white a:active {
    background-color: rgba(var(--sky-hue), .5);
    color: var(--blue);
}

/* WHITE ON DARK ------------------------------------ */
section .readmore.white a {
    background-color: var(--white);
    color: var(--blue);
}

section .readmore.white.ondark a:hover {
    background-color: rgba(var(--sky-hue), .5);
    color: var(--white);
}

section .readmore.white.ondark a:active {
    background-color: rgba(var(--blue-tint-hue), .5);
    color: var(--blue);
}


/* MARIGOLD TINT ------------------------------------ */

section .readmore.marigold a {
    background-color: rgba(var(--marigold-hue), .2);
    color: var(--blue);
}

section .readmore.marigold a:hover {
    background-color: rgba(var(--sage-hue), 1);
    color: var(--white);
}

section .readmore.marigold a:active {
    background-color: rgba(var(--marigold-hue), .6);
    color: rgba(var(--green-hue), .6);
}

/* BLUE TINT ------------------------------------ */
section .readmore.bluetint a {
    background-color: rgba(var(--blue-tint-hue), .2);
    color: var(--blue);
    /*    outline: 1px solid rgba(var(--lite-blue-hue), .6);
    outline-offset: 3px;*/
}

section .readmore.bluetint a:hover {
    background-color: rgba(var(--blue-hue), 1);
    /*    outline: 1px solid rgba(var(--blue-hue), .5);*/
    color: var(--white);
}

section .readmore.bluetint a:active {
    background-color: rgba(var(--sky-hue), .9);
    color: var(--white);
}

/* SKY HUE ------------------------------------ */
section .readmore.sky a {
    background-color: rgba(var(--sky-hue), .2);
    color: var(--blue);
    /*    outline: 1px solid rgba(var(--lite-blue-hue), .6);
    outline-offset: 3px;*/
}

section .readmore.sky a:hover {
    background-color: rgba(var(--blue-hue), 1);
    /*    outline: 1px solid rgba(var(--blue-hue), .5);*/
    color: var(--white);
}

section .readmore.sky a:active {
    background-color: rgba(var(--sky-hue), .8);
    color: var(--white);
}

section .readmore.mustard a {
    background-color: rgba(var(--mustard-hue), .2);
    color: var(--blue);
}

section .readmore.mustard a:hover {
    background-color: rgba(var(--green-hue), .7);
    color: var(--white);
}

section .readmore.mustard a:active {
    background-color: rgba(var(--mustard-hue), .6);
    color: rgba(var(--green-hue), .6);
}

section .readmore.blue a {
    background-color: var(--blue);
    color: var(--white);
}

section .readmore.blue a:hover {
    background-color: var(--white);
    color: var(--blue);
}

section .readmore.blue a:active {
    background-color: var(--lite-blue);
    color: var(--blue);
}

section .readmore.liteblue a {
    background-color: rgba(var(--lite-blue-hue), .2);
    color: var(--blue);
    /*    outline: 1px solid rgba(var(--lite-blue-hue), .6);
    outline-offset: 3px;*/
}

section .readmore.liteblue a:hover {
    background-color: rgba(var(--blue-hue), 1);
    /*    outline: 1px solid rgba(var(--blue-hue), .5);*/
    color: var(--white);
}

section .readmore.liteblue a:active {
    background-color: rgba(var(--lite-blue-hue), .8);
    color: var(--white);
}

section .readmore.govertical {
    display: flex !important;
    flex-direction: column;
    gap: 20px;
}

/* Card Readmore */
.readmore.card-readmore {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding-top: 1rem;
}

.readmore.card-readmore a {
    color: var(--blue);
    padding-left: 0 !important
}

.readmore.card-readmore a:hover {
    color: var(--sage-shade);
}

/* Support Card Readmore */
.readmore.supportcard-readmore {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding-top: 1rem;
}

.readmore.supportcard-readmore a {
    color: var(--blue);
}

.readmore.supportcard-readmore a:hover {
    color: var(--sage-shade);
}

/* OUTLINE - white bg, blue border, hovers to blue ------------------------------------ */
section .readmore.outline a {
    background-color: var(--white);
    color: var(--blue);
    border: 1px solid var(--blue);
}

section .readmore.outline a:hover {
    border: 1px solid rgba(var(--blue-hue), .4) !important;
    color: var(--white);
}

section .readmore.outline a:active {
    background-color: rgba(var(--sky-hue), .9);
    color: var(--white);
}

/* OUTLINE LITE - white bg, blue border, hovers to lite blue ------------------------------------ */
section .readmore.outline.lite a:hover {
    background-color: var(--lite-blue);
    color: var(--blue);
}

section .readmore.outline.lite a:active {
    background-color: rgba(var(--lite-blue-hue), .6);
    color: var(--blue);
}

/* BLUE ON WHITE - hovers to lite blue, no expand ------------------------------------ */
section .readmore.blueonwhite a {
    background-color: var(--blue);
    color: var(--white);
}

section .readmore.blueonwhite a:hover {
    background-color: rgba(var(--lite-blue-hue), .3) !important;
    color: var(--blue);
}

section .readmore.blueonwhite a:active {
    background-color: rgba(var(--lite-blue-hue), .6) !important;
    color: var(--blue);
}

section .readmore.blueonwhite a:hover {
    background-color: var(--lite-blue);
    color: var(--blue);
    transform: none;
    margin-left: 0;
}


/* =====================================================================
	GLOBAL WRAP - RESPONSIVE FLUID / 1023px
===================================================================== */
.gbl-contact-wrap {
    position: relative;
    padding: 4em 0;
    background-color: rgba(var(--warm-white-hue), .8);
    color: var(--blue);
    font-size: 18px;
    letter-spacing: .02em;
    text-align: center;
}

.gbl-contact-wrap .left-part {
    grid-column: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-right: calc((var(--site-max-width) - var(--content-max-width)) / 2);
    padding-left: var(--gap);
}

/* =====================================================================
	SUB NAV - RESPONSIVE FLUID / 1023px
===================================================================== */
.subnav-part {
    margin-bottom: 125px;
}

.subnav-header-wrap {
    position: relative;
    background-color: rgba(var(--stone-hue), 0.4);
    padding-top: var(--contenttopspacer);
    padding-left: var(--gap);
    border-bottom: 1px solid rgba(var(--stone-hue), 1);
}

p.subnav-title {
    color: var(--sage-shade);
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    letter-spacing: .1em;
    padding: 0;
    margin: 0;
    text-transform: uppercase;
}

.subnav-menu-wrap {
    background-color: rgba(var(--sky-hue), .1);
    border-bottom: 12px solid rgba(var(--stone-hue), 0.4);
}

.subnav-menu-wrap nav .subnav-level01 a {
    position: relative;
    display: block;
    padding: 10px 0;
    letter-spacing: .04em;
    padding-left: var(--gap);
    padding-right: 30px;
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    color: var(--blue);
    font-weight: 600;
    line-height: 18px;
    transition: all .5s ease;
    border-bottom: 1px solid var(--white);
}

.subnav-menu-wrap nav .subnav-level01 a:hover {
    background-color: rgba(var(--sky-hue), 0.2);
}

/* Hover Arrow Indicator */
.subnav-menu-wrap nav .subnav-level01 a:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    line-height: 1;
    content: "\f061";
    font-size: .7em;
    transition: all .4s ease;
    position: absolute;
    width: 25px;
    height: 20px;
    top: 12px;
    right: 30px;
    opacity: 0;
}


.subnav-menu-wrap nav .subnav-level01 a:hover:after {
    opacity: 1;
    right: 10px;
    color: rgba(var(--slate-hue), 0.8);
}

.subnav-menu-wrap nav .subnav-level01.select a {
    color: rgba(var(--sage-shade-hue), 0.85);
    background-color: var(--white) !important;
    border-top: 1px solid rgba(var(--sage-hue), 0.3) !important;
}

.subnav-menu-wrap nav .subnav-level01.select a:after {
    opacity: 1;
    right: 0px;
    width: 20px;
    color: rgba(var(--sage-shade-hue), 0.5);
}

.subnav-menu-wrap nav .subnav-level01.selectchildren a {
    background-color: var(--white) !important;
    border-top: 1px solid rgba(var(--green-dark-hue), 0.4);
}

.subnav-menu-wrap nav .subnav-level01.selectchildren a:after {
    opacity: 1;
    right: -10px;
    width: 20px;
}

.subnav-menu-wrap nav .subnav-level02-background {
    background-color: var(--white) !important;
}

.subnav-menu-wrap nav .subnav-level02 {
    position: relative;
    display: block;
    border-top: 1px solid rgba(var(--green-dark-hue), 0.4);
    padding: 2px 0 2px 0 !important;
}

.subnav-menu-wrap nav .subnav-level02:last-child {
    padding: 2px 0 10px 0 !important;
    border-bottom: 1px solid rgba(var(--green-dark-hue), 0.4);
}

.subnav-menu-wrap nav .subnav-level02 a {
    position: relative;
    display: block;
    padding: 5px 0;
    padding-left: calc(var(--gap) + 16px);
    padding-right: 40px;
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    color: var(--green-dark);
    font-weight: 300;
    letter-spacing: 0;
    transition: all .5s ease;
}

.subnav-menu-wrap nav .subnav-level02.selected a {
    position: relative;
    display: block;
    padding: 5px 0;
    padding-left: calc(var(--gap) + 16px);
    padding-right: 40px;
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    color: var(--blue);
    font-weight: 300;
    letter-spacing: 0;
    transition: all .5s ease;
}

.subnav-menu-wrap nav .subnav-level02 a:before {
    content: "";
    position: absolute;
    top: 13px;
    left: 50px;
    width: 5px;
    height: 1px;
    background-color: rgba(var(--blue-hue), 1);
    opacity: 1;
    transition: all .4s ease;
}

.subnav-menu-wrap nav .subnav-level02 a:hover:before {
    left: 60px;
    width: 5px;
    opacity: 0;
    transition: all .4s ease;
}

.subnav-menu-wrap nav .subnav-level02 a:after {
    content: "";
    position: absolute;
    top: 14px;
    right: 50px;
    width: 15px;
    height: 1px;
    background-color: rgba(var(--blue-hue), .4);
    opacity: 0;
    transition: all .4s ease;
}

.subnav-menu-wrap nav .subnav-level02 a:hover:after {
    right: 10px;
    opacity: 1;
    transition: all .4s ease;
}

/* =====================================================================
	SUB HORIZONTAL NAV - RESPONSIVE FLUID / 1023px
===================================================================== */
.subnavhorizontal-menu-wrap {
    display: flex;
    z-index: 4;
    background-color: rgba(var(--warm-white-hue), 1);
    color: var(--white);
    font-weight: 600;
    font-size: 1rem;
    min-height: 44px;
    align-items: center;
    padding-left: var(--leftside-content-gap);
    padding-right: var(--gap);
}

.horizontalnav-part {
    display: flex;    
    width: 100%;
    max-width: var(--section-max-width);
    margin: 0 auto;
}

.horizontalnav-part .subnavlevel01 {
    display: block;
    margin-left: -14px;
}

.horizontalnav-part .subnavlevel01 a {
    position: relative;
    display: inline-flex;
    gap: 0;
    background-color: rgba(var(--warm-white-hue), 1);
    align-items: center;
    justify-content: center;
    flex-direction: row;
    letter-spacing: .02em;
    font-size: 16px;
    padding: 0 12px;
    min-width: 75px;
    text-decoration: none;
    color: var(--blue);
    font-weight: 600;
    line-height: 44px;
    transition: all .5s ease;
    border-right: 1px solid rgba(var(--stone-hue), .5);
}

.horizontalnav-part .subnavlevel01 a:hover {
    background-color: rgba(var(--stone-hue), 0.5) !important;
    color: var(--blue);
}

.horizontalnav-part .subnavlevel01 a.selected, .horizontalnav-part .subnavlevel01 a:hover.selected {
    color: var(--blue);
    background-color: rgba(var(--sky-hue), .3);
}




/* =====================================================================
	BADGE FOOTER WRAP - RESPONSIVE FLUID / 1023px
===================================================================== */
.badge-wrap {
    position: relative;
    height: 120px;
    background-color: rgba(var(--sky-hue), 0.2);
    color: var(--blue);
    font-size: 14px;
    letter-spacing: .02em;
    z-index: 6;
}
/* =====================================================================
	FOOTER WRAP - RESPONSIVE FLUID / 1023px
===================================================================== */

footer.footer-wrap {
    grid-column: full;
    display: grid;
    grid-template-columns: inherit;
    background-color: var(--blue);
    min-height: 200px;
    color: var(--white);
    font-size: 12px;
    letter-spacing: .06em;
    font-weight: 400;
    text-transform: uppercase;
    padding-bottom: 50px;
}

footer.footer-wrap a {
    color: var(--white);
    text-decoration: none;
}

footer.footer-wrap *,
footer.footer-wrap a {
    font-variant-numeric: lining-nums;
    font-feature-settings: "lnum" 1;
}

/* FOOTER NAV WRAP -------------------------------------------- */

.footernav-wrap {
    border-bottom: 1px solid rgba(var(--sky-hue), .2);
    padding-left: var(--gap);
    padding-left: var(--gap);
    gap: 22px !important;
}

.footernav-wrap a {
    position: relative;
    color: var(--warm-white) !important;
    font-weight: 600;
    letter-spacing: .09em;
    font-size: 11px !important;
    padding: 10px 0;
}

.footernav-wrap a:hover {
    color: var(--lite-blue-lite) !important;
}

.footernav-wrap a:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -11px;
    top: 30%;
    height: 40%;
    width: 1px;
    background-color: rgba(var(--sky-hue), .2);
}

/* INFO WRAP -------------------------------------------- */

.info-wrap {
    padding-top: 12px;
}

.info-wrap .copyright-part {
    width: 100%;
    border-bottom: 1px solid rgba(var(--sky-hue), .2);
    margin-bottom: 8px;
}

.contact-part {
    height: auto;
    line-height: 20px;
    letter-spacing: .09em;
}

.contact-part .label-item {
    color: rgba(var(--stone-hue), 1) !important;
}

.info-wrap .extralinks-part {
    width: 100%;
    border-top: 1px solid rgba(var(--sky-hue), .2);
    margin-top: 8px;
    gap: 16px !important;
}


.extralinks-part a {
    color: rgba(var(--sky-hue), 1) !important;
    font-weight: 600;
    letter-spacing: .09em;
}

.extralinks-part a:hover {
    color: var(--white) !important;
}

/* SOCIAL MEDIA WRAP -------------------------------------------- */

.sm-wrap {
    padding-top: 12px;
}

.sm-wrap a {
    position: relative;
    font-size: 20px;
    color: rgba(var(--sky-hue), 1) !important;
    padding-left: 22px;
}

.sm-wrap a:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -13px;
    top: 0;
    height: 90%;
    width: 1px;
    background-color: rgba(var(--lite-blue-hue), .3);
}
