/* Font sizes (3/4 ratio)
7px
9px
12px
16px
21px
28px
38px
51px
67px
90px
*/


/* Global */

body {
    font-family: 'Roboto', Arial, sans-serif;
}

p {
    font-size: 21px;
    font-weight: 300;
    text-align: left;
    margin-bottom: 20px;
}

.col {
    padding-top: 15px;
    padding-bottom: 15px;
}

li::marker {
    color: #ffb700;
  }


li {
    font-size: 21px;
    font-weight: 300;
    text-align: left;
}

strong {
    font-weight: 700;
}

a {
    color: #ffb700;
    font-weight: 400;
    text-decoration: none;
}

a:hover {
    color: #ffb700;
}

::selection {
    background: #ffb700; /* WebKit/Blink Browsers */
    color: white;
  }
  ::-moz-selection {
    background: #ffb700; /* Gecko Browsers */
    color: white;
  }

.alert {
    border-radius: 0;
    border-color: white;
}

.alert ul {
    list-style-type: none;
    padding-left: 0;
}


/* Navbar */

.nav-colored { 
    background-color: rgb(0 ,0,0,.8); 
}

.nav-transparent { 
    background-color:transparent;
}

.navbar-nav>ul>li>a {
    align-items: center;
}

.navbar a {
    color: white;
    font-size: 16px;
    font-weight: 600;
    margin-right: 3rem;
    display: flex;
}

.dropdown-menu {
    border: none;
    border-radius: 0;
    min-width: 210px;
}

.dropdown-menu a {
    color: black;
    font-size: 15px;
    margin-left: 20px;
    margin-right: 20px;
    line-height: 20px;
}

.dropdown-menu a:hover {
    text-decoration: underline;
}

.menu-link:hover, .menu-link-right:hover {
    color: #ffb700;
    text-decoration: none;
}

.navbar-toggler {
    background-color: white;
}

.navbar-nav a {
    padding-top: 5px;
    padding-bottom: 5px;
}

.account-links a {
    margin-right: 1rem;
}

@media (min-width: 2000px) {
    .collapse {
        display: none !important;
    }
} 


/* Banner and page headings */

    /* General */

    .banner {
        min-height: 500px;
        background-size: cover;
        background-repeat: no-repeat;
        background-attachment: fixed;
        background-position: center top;
        color: white;
        
    }

    h1 {
        margin-top: 2rem;
        margin-bottom: 2rem;
        text-align: center;
        font-size: calc(30px + 1.2vw);
        font-weight: 600;
    }

    /* Home page */

    .home-banner {
        height: 70vh;
        background-color: #171717; 
    }

    .banner p {
        font-size: calc(16px + 0.4vw);
        font-weight: 300;
        max-width: 860px;
        text-align: center;
    }

    /* Main pages */

    .main-banner {
        height: 50vh;
        background-color: #fdbd37; 
    }
    
    .main-banner:before {
        min-height: 500px;
        height: 50vh;
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-image: linear-gradient(to top right, #ffb120, #ffa600);
        opacity: .9;
    }

    /* User pages */

    .user-banner {
        height: 160px;
        background-color: #fdbd37; 
        background-image: linear-gradient(to top right, #ffb120, #ffa600);
    }

    .user-content h1 {
        margin-top: 3rem;
        margin-bottom: 1rem;
        font-size: 38px;
        font-weight: 500;
        text-align: left;
    }


/* Body */

    /* General */

    .intro h2 p {
        text-align: center;
    }
    
    .intro>.container>.row>.col {
        margin-top: -30px;
    }
    
    h2, h2 p {
        font-size: 38px;
        font-weight: 600;
        text-align: left;
        margin-bottom: 40px;
    }

    h2 a, h2 a:hover, h2 b {
        color: #ffb700;
        text-decoration: none;
    }

    .intro h2 {
        margin-top: 0;
    }

    h3 {
        font-size: 28px;
        font-weight: 400;
    }

    .dash {
        background-color: #f84a2b; 
        height: 3px; 
        width: 100px; 
        margin-left: auto; 
        margin-right: auto;
        margin-bottom: 40px;
    }

    .name {
        font-size: 16px;
        font-weight: 600;
        text-align: left;
        padding-top: 16px;
        margin-bottom: 0px;
    }

    .tagline {
        font-size: 16px;
        font-weight: 300;
        color: #525050;
        text-align: left;
    }

    .action-link {
        background-color: #ff611b;
        background-image: linear-gradient(to right, #ff4d00 0%, #ff611b 100%);
        color: white;
        padding: 2px 5px 3px 5px;
    }

    .action-link:hover {
        color: white;
    }

    .settings-link a {
        text-decoration: None;
    }

    .form-control {
        border-radius: 0;
    }

    .logos {
        padding-bottom: 25px;
    }

    #map {
        height: 700px;
        width: 100%;
    }

    
    /* Home page */

    .home-page p {
        text-align: center;
    }
    
    /* Program pages */

    .subheading {
        font-size: 15px !important;
        font-weight: 700 !important;
        color: #f84a2b;
    }

    .criteria p {
        font-size: 16px !important;
        padding-bottom: 21px;
    }

    /* Blog */

    .blog-index a, .blog-index a:hover {
        color: black;
        text-decoration: none;
    }

    .post-date {
        font-size: 16px !important;
        font-weight: 500 !important;
        color: #918383;
        padding-top: 20px;
    }

    .blog-index h2 {
        font-size: 26px;
        font-weight: 600;
        text-align: left;
        margin-top: 10px;
    }

    .blog-index h2:hover {
        color: #ffb700;
    }

    .blog-content p {
        text-align: left;
    }

    .blog-intro {
        font-size: 28px;
    }

    /* Events */

    .event-index a, .blog-index a:hover {
        color: black;
        text-decoration: none;
    }

    .event-date {
        font-size: 16px !important;
        font-weight: 500 !important;
        color: #918383;
        padding-top: 20px;
    }

    .event-index h3 {
        font-size: 26px !important;
        font-weight: 600 !important;
        text-align: left;
        margin-top: 10px;
    }

    .event-index h3:hover {
        color: #ffb700;
    }

    /* About pages */

    .list h3 {
        text-align: left;
        font-size: 21px;
    }

    .list a {
        text-align: left;
    }

    .list h4 {
        text-align: left;
        padding-top: 21px;
        font-size: 21px;
        font-weight: 600;
    }


    /* User pages */

    .user-content>.container>.row>.col {
        margin-top: -100px;
    }


/* Diagonal stripes, alternating background colours and section padding */

div.content>div:nth-of-type(4n+3) {
    background: #f5f5f5;
}

div.content>div:nth-of-type(4n+1)>.container>.row>.card-deck>.card,
div.content>div:nth-of-type(4n+1)>.container>.row>.col>.card,
div.content>div:nth-of-type(4n+1)>.container>.row>.card-deck>.card>.card-footer,
div.content>div:nth-of-type(4n+1)>.container>.row>.col>.card>.card-footer {
    background:#f5f5f5;
}

div.content>div.divider {
    position: relative; 
    height: 100px; 
    background: #f5f5f5;
}

div.content>div.divider {
    background: linear-gradient(2deg, #f5f5f5 calc(50% - 1px), #ffffff 50%);
}

div.content>div.divider:last-of-type {
    background: linear-gradient(2deg, #171717 calc(50% - 1px), #ffffff 50%);
}

div.content>div.divider:nth-of-type(4n+2) + div + div.last {
    background: linear-gradient(2deg, #171717 calc(50% - 1px), #f5f5f5 50%) !important;
}

div.content>div.divider:nth-of-type(4n) {
    background: linear-gradient(2deg, #ffffff calc(50% - 1px), #f5f5f5 50%);
}

div.content>div.divider:nth-of-type(4n) + div + div.last {
    background: linear-gradient(2deg, #171717 calc(50% - 1px), #ffffff 50%) !important;
}

.strip {
    padding-top: 20px;
    padding-bottom: 20px;
}


/* Cards */

.card-col {
    margin-bottom: 16px;
}

.icon {
    padding-bottom: 21px;
}

.card, .card-footer {
    border-radius: 0;
    border: none;
    background-color: white;
}

.card h3 {
    font-size: 21px;
    font-weight: 600;
    margin-bottom: 16px;
}

.card p {
    text-align: left;
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 10px;
}

.card-body {
    padding-top: 30px;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 10px;
}

.card-footer {
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 20px;
}


/* Buttons */


.btn {
    font-weight: 700;
    border-radius: 30px;
    padding-left: 50px;
    padding-right: 50px;
    padding-top: 15px;
    padding-bottom: 15px;
    outline: none !important;
}

.btn-primary, 
.btn-primary:hover, 
.btn-primary:focus, 
.btn-primary:active
{
    color: #ffffff;
    background-color: #f85c40 !important;
    border-color: #f85c40 !important;
    outline: none !important;
    box-shadow: 4px 7px 5px -1px rgba(156,156,156,0.78);
    -webkit-box-shadow: 4px 7px 5px -1px rgba(156,156,156,0.78);
    -moz-box-shadow: 4px 7px 5px -1px rgba(156,156,156,0.78);
}

.btn-primary:hover {
    background-color: #f84a2b !important;
    border-color: #f84a2b !important;
}

.btn-primary.active, .btn-primary:active {
    box-shadow: none;
}


.submit-button {
    text-align: right;
    padding-top: 10px;
}

/* This stops the blue line from appearing around buttons and FAQ headings when clicked */
.btn-primary:not(:disabled):not(.disabled):active:focus, 
.show > .btn-primary.dropdown-toggle:focus,
.btn.focus, .btn:focus {
    box-shadow: none;
}

.btn:hover, .btn:active, .btn:focus {
    background-color: #f84a2b;
    border-color: #f84a2b;
}

.section-btn {
    margin-top: 20px;
    text-align: center;
}

.card-btn {
    font-size: 14px;
    font-weight: 700;
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.navbar-button {
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 14px;
    margin-top: 0px;
    margin-top: 0px;
}

.btn.focus, .btn:focus {
    outline: 0;
}

.btn-link:hover, .btn-link, .btn-link:focus{
    text-decoration:none;
 }

 
 /* Testimonials */

 .quote {
    font-size: 21px !important;
    font-weight: 400 !important;
 }

 .quotation-mark {
    font-size: 21px !important;
    font-weight: 400 !important;
 }

 .testimonial-footer {
    display: flex;
    align-items: center;
 }

 .profile-photo {
    border-radius: 50%;
    margin-right: 16px;
 }


/* FAQ section */

.faq h2 {
    margin-bottom: 20px;
}

.accordion > .card {
    border-bottom-color: #f5f5f5;
    border-top-color: #f5f5f5;
}

.accordion button, .accordion button:hover, .accordion button:focus  {
    background-color: white;
    border-color: white;
    text-decoration: none;
    color: black;
    font-size: 24px;
    font-weight: 600;
    padding: 0;
    margin: 0;
}

.accordion button .btn:focus {
    outline: none;
    box-shadow: none;
}

.accordion > .card > .card-header {
    background-color: rgb(255, 255, 255);
    border: none;
    padding-top: 20px;
    padding-bottom: 20px;
}

.accordion button i {
    padding-right: 10px;
}

.accordion button[aria-expanded="false"] i.fa-minus,
.accordion button[aria-expanded="true"] i.fa-plus  {
    display: none;
}

.accordion button[aria-expanded="true"] i.fa-minus,
.accordion button[aria-expanded="false"] i.fa-plus {
    display: inline;
}

.answer p {
    font-size: 20px;
    font-weight: 300;
    padding-left: 20px;
    padding-right: 20px;
    margin-top: -30px;
    padding-bottom: 0px;
}


/* Account views */

.account.card {
    background-color:#f5f5f5;
    margin-bottom: 30px;
    box-shadow: 5px 10px 12px #888888;
}

.account.card:active {
    box-shadow: none;
}

.account.card-body {
    text-align: center;
}

.account.card-body h2 {
    text-align: center;
    padding-top: 20px;
    margin-bottom: 20px;
    font-size: 28px;
}

.account.card-body p {
    text-align: center !important;
    font-size: 16px;
    margin-bottom: 0px;
}


.settings-cards a {
    color: black;
    text-decoration: None;
}

.row.settings-cards > .col-12 {
    margin-bottom: 30px;
}


/* Founder list */

.row.user-details {
    padding-bottom: 15px;
}

.user-details h3 {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    padding-top: 24px;
    padding-bottom: 12px;
}

.user-name {
    font-weight: 700;
    margin-bottom: 4px;
}

.user-tagline {
    margin-bottom: 4px;
}

.user-link {
    margin-bottom: 12px;
}

.user-details p {
    font-size: 16px;
}

.user-bio {
    margin-left: -15px;
}

.user-details a {
    font-size: 16px;
}

.list-image>img, .list-image>svg {
    margin-bottom: 16px;
    margin-right: 16px;
}

.offer-to-help-link a {
    font-size: 16px;
    font-weight: 600;
}

/* Footer */

.footer {
    font-size: 14px;
    color: white;
    background: #171717;
}

.footer-link {
    color: white;
}

.footer-link:hover {
    color: white;
}

.footer a {
    font-size: 14px;
    font-weight: 300;
    text-align: left;
    margin-bottom: 0;
    color: white;
}

.footer a:hover {
    text-decoration: none;
    color: #ffb700;
}

.footer h4 {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    text-align: left;
    margin-bottom: 12px;
}

.footer ul {
    list-style-type: none;
    padding-left: 0;
}

.footer li {
    line-height: 80%;
}

.legal {
    color: #525252;
    font-size: 12px;
    font-weight: 300;
}
