@import url("https://use.typekit.net/ixe8xte.css");


/* ================================================================
   BASE
   ================================================================ */

html, body {
    overflow-x: hidden;
}


/* ================================================================
   UTILITIES
   ================================================================ */

.bordered {
    border: 1px solid #ffffff77;
    border-right: 0;
    border-bottom: 0;
    border-top: 0;
    z-index: 1;
}

.rounded-corner {
    width: 100px;
    height: 100px;
    position: absolute;
    right: 98px;
    top: -2px;
    z-index: 1;
    opacity: 1 !important;
}


/* ================================================================
   TYPOGRAPHY — FONT FAMILIES
   ================================================================ */

.motor {
    font-family: "motor", monospace !important;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
}

.abril {
    font-family: "abril-text", serif;
    font-weight: 300;
    font-style: normal;
}

.abril-display {
    font-family: "abril-display", serif;
    font-weight: 900;
    font-style: normal;
    line-height: 1.2;
}

.halyard-display {
    font-family: "halyard-display", sans-serif;
    font-weight: 900;
    font-style: normal;
}

p, .dm-sans, li {
    font-family: "halyard-display", sans-serif;
    font-weight: 500;
    font-style: normal;
}

/* Font family overrides for nested elements */
.motor li         { font-family: "motor", monospace !important; }
.abril-display li { font-family: "abril-display", serif !important; }


/* ================================================================
   TYPOGRAPHY — ELEMENTS
   ================================================================ */

hr {
    border-top: 1px solid #ffffff77;
}

h4 {
    color: #faea44 !important;
    text-transform: uppercase;
    font-family: "motor";
    border-bottom: 1px solid #faea44;
    padding: 0 1rem 1rem 1rem;
}

h5 {
    color: #faea44 !important;
    /* text-transform: uppercase; */
    font-family: "Halyard-Display";
    /* border-bottom: 1px solid #faea44; */
    padding: 0 1rem 0 1rem;
    margin-top: 0;
    margin-bottom: 0;
}


/* ================================================================
   TYPOGRAPHY — COLOR UTILITIES
   ================================================================ */

.red {
    color: #F15F61 !important;
    border-color: #F15F61;
}

.lightblue {
    color: #83c6d5 !important;
    border-color: #83c6d5;
}

.yellow {
    color: #ece742 !important;
    border-color: #ece742;
}

.uk-button-yellow {
    background-color: #ece742;
    color: #005f7e !important;
    font-family: "halyard-display";
    font-weight: 900;
    font-size: 1.1rem;
}

.uk-button-yellow:hover {
    color: #fff !important;
    background-color: #b9b533;
}

h3 {
    color: #fff !important;
    font-family: "halyard-display" !important;
    font-weight: 900 !important;
    padding: 0 1rem;
    line-height: 1 !important;
}

h3.uk-heading-small {
    font-size: 3rem;
}

.uk-section-muted h3 {
    color: #005f7e !important;
}

.purple {
    color: #28003E !important;
    border-color: #28003E;
}

.blue, .blue p, p.blue {
    color: #005f7e !important;
    border-color: #005f7e !important;
}

p {
    padding: 0 1rem;
}

.dark {
    color: #222 !important;
}

.quote, .testimonial {
    text-indent: -0.4rem;
    background-color: #F15F61;
    border-radius: 1.5rem;
    padding: 2rem;
    color: #fff;
    font-weight: 700;
    position: relative;
}
.testimonial {
    background-color: #f8f8f8;
    color: #005f7e;
    text-indent: 0;
}
.testimonial p {
    margin: 0.5rem 0;
}
.testimonial .triangle-down {
    border-top-color: #f8f8f8;
}


/* ================================================================
   LAYOUT
   ================================================================ */

.columns {
    column-count: 2;
    column-gap: 3rem;
}

.large-columns {
    column-count: 2;
    column-gap: 3rem;
}


/* ================================================================
   COMPONENTS
   ================================================================ */

.sticker {
    position: absolute;
    right: -25px;
    top: -25px;
    transform: rotate(4deg);
    background-color: #f15e61;
    border-radius: 50%;
    width: 100px;
    height: 100px;
    color: white;
    font-family: "halyard-display";
    font-weight: 900;
    text-align: center;
    vertical-align: center;
    line-height: 25px;
    font-size: 17px;
    padding-top: 20px;
    box-sizing: border-box;
    z-index: 1;
    /* cursor: help; */
    transition: all 0.2s ease-in-out;
}

.sticker:hover {
    transform: rotate(0deg) translateY(-3px);
}

.portrait {
    border: 3px solid rgba(255, 255, 255, 0.75);
    box-shadow: 3px 10px 10px rgba(0, 0, 0, 0.15);
    max-width: 200px;
    width: 100%;
    margin: 0 auto;
}

.bioPhoto {
    width: 175px;
    border-radius: 50%;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.25);
    margin: 1rem;
    float: right;
    clear: left;
}

.lines {
    background-image: url("../images/lines.png");
    background-repeat: no-repeat;
    background-position: 50% 275px;
    background-size: contain;
}

.icon-bullet {
    background-color: #eee;
    display: block;
    font-family: "dm-sans", sans-serif;
    font-style: normal;
    font-weight: 600;
    padding: 1rem 1rem 1rem 25%;
    border-top-right-radius: 40px;
    margin-bottom: 2rem;
    background-position: left 50%;
    background-repeat: no-repeat;
    background-size: contain;
}

.bullet1 { background-image: url("../images/icon1.png"); }
.bullet2 { background-image: url("../images/icon4.png"); }
.bullet3 { background-image: url("../images/icon6.png"); }

.triangle {
    width: 0; 
    height: 0; 
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; 
    border-right: 10px solid #83c6d5;
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
}

.triangle-down {
    width: 0; 
    height: 0; 
    border-left: 10px solid transparent;
    border-right: 10px solid transparent; 
    border-top: 20px solid #F15F61;
    position: absolute;
    left: 25%;
    bottom: -20px;
    transform: translateX(-50%);
}


.callout-box {
    background-color: #83c6d5;
    padding: 1rem;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 500;
    position: absolute;
    top: 25%;
    right: 0;
    max-width: 150px;
    display: block;
}

.jacket {
    max-width: 400px;
    margin: 0 auto;
    position: relative;
}

.uk-dotnav>*>* {
    display: block;
    box-sizing: border-box;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background: 0 0;
    background-color: #83c6d5;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    border: 0;
    transition: .2s ease-in-out;
    transition-property: background-color, border-color;
}
.uk-dotnav>.uk-active>* {
    background-color: #ece742;
    border-color: transparent;
}
.uk-dotnav>:hover>* {
    background-color: #fff;
    border-color: transparent;
}

.marker-circle {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 0.5rem;
    border: 4px solid #fff;
    margin-top: calc(-0.25rem - 2px);
    background-color: #ece742;
    margin-left: 10%;
}


/* ================================================================
   NAVIGATION
   ================================================================ */

#mainNavigation li:not(.uk-dropdown *) {
    height: 2rem;
    line-height: 2rem;
    max-width: 250px;
}

#mainNavigation a:not(.uk-dropdown *) {
    text-decoration: none;
    position: relative;
    height: 2rem;
    /* line-height: 1; */
    display: inline-block;
    width: auto;
    padding: 0.25rem 0.5rem;
    transition: all 0.1s ease-in-out;
    border-radius: 3px;
    color: #005f7e;
    z-index: 2;
    white-space: nowrap;
}

#mainNavigation a:hover:not(.uk-dropdown *) {
    text-decoration: none;
    color: white;
    background-color: #F15F61;
    scale: 1.1;
}

#mainNavigation a:hover:not(.uk-dropdown *)::before {
    content: "\279D";
    color: #005f7e;
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
    right: -2rem;
    text-align: center;
    position: absolute;
}

#mainNavigation a.menu:hover         { color: #fff !important; }
#mainNavigation a.menu:hover::before { content: "\2935"; }

/* Dropdown */
#mainDropdown {
    text-align: left;
    font-family: 'motor';
}

#mainDropdown li.uk-nav-header {
    font-size: 1.25rem;
    font-family: 'motor';
    color: #F15F61;
}

#mainDropdown li a {
    /* text-transform: capitalize; */
    font-size: 1.25rem;
    color: #005f7e;
}

#mainDropdown .uk-nav li > a:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.uk-dropdown-nav .uk-nav-divider {
    border-color: #F15F61;
    margin-left: -0.5rem;
}

.uk-nav-default li a {
    color: #005f7e !important;
    justify-content: flex-end;
}

.uk-nav-default.main li {
    text-align: right !important;
}


/* ================================================================
   BACKGROUNDS
   ================================================================ */

#mission-bg {
    background-image: url("../images/corner.jpg");
    background-repeat: no-repeat;
    background-position-y: bottom;
    background-position-x: right;
    background-size: cover;
    padding-bottom: 470px;
}

.personal_bg {
    background-image: url("../images/personal_bg2.jpg");
    background-repeat: no-repeat;
    background-position-y: 50%;
    background-position-x: 100%;
    background-size: auto 100%;
}

.whatwedo_bg {
    background-image: url("../images/crossed_arms_bg.png");
    background-repeat: no-repeat;
    background-position-y: 100%;
    background-position-x: 100px;
    background-size: auto;
}


/* ================================================================
   RESPONSIVE
   ================================================================ */

/* Small — max 640px */
@media screen and (max-width: 640px) {
    .columns {
        column-count: 1;
    }

    .uk-nav-default li a {
        justify-content: flex-start;
    }

    #mission-bg {
        background-image: url("../images/corner.jpg");
        background-repeat: no-repeat;
        background-position-y: bottom;
        background-position-x: 75%;
        background-size: cover;
        padding-bottom: 600px;
    }

    .whatwedo_bg {
        background-image: none !important;
    }
}

/* Medium — max 980px */
@media screen and (max-width: 980px) {
    .large-columns {
        column-count: 1;
        padding-bottom: 5rem;
    }

    .whatwedo_bg {
        background-image: none !important;
    }
}

/* Large — max 1600px */
@media screen and (max-width: 1600px) {
    .whatwedo_bg {
        background-position-x: -200px;
    }
}


/* ================================================================
   UIKIT OVERRIDES
   ================================================================ */

strong {
    font-weight: 900 !important;
}
