@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap');
/* Utility Classes */

.alignnone{margin:0.25rem 1.5rem 0 0;}
.aligncenter,
div.aligncenter{display:block;margin:0.25rem auto 0.25rem auto;}
.alignright{float:right;margin:0.25rem 0 1.5rem 1.5rem;}
.alignleft{float:left;margin:0.25rem 1.5rem 1.5rem 0;}
.uppercase{text-transform:uppercase;}
.margin-none{margin:0;}
.attachment-featured-image{margin-bottom:1rem;}
.add-margin-top-_5rem{margin-top:.5rem;}
.add-margin-top-1rem{margin-top:1rem;}
.add-margin-top-2rem{margin-top:2rem;}
.add-margin-top-4rem{margin-top:4rem;}
.add-margin-bottom-1rem{margin-bottom:1rem;}
.add-margin-bottom-2rem{margin-bottom:2rem;}
.add-margin-bottom-4rem{margin-bottom:4rem;}
.add-padding-top-1rem{padding-top:1rem;}
.add-padding-top-2rem{padding-top:2rem;}
.rounded{border-radius:.5rem;}
strong, .strong{font-weight:bold;}
.fg-white{color:#FFF;}
.larger{font-size:1.4em;}
.display-block{display:block;}
.inline-list{display:inline;list-style:none;}
.inline-list li{display:inline;}
#contentarea ul, #contentarea ol{list-style-position:inside;}
.videoWrapper{position:relative;padding-bottom:56.25%;padding-top:0.5rem;height:0;margin-bottom:1.5rem;}
.videoWrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;}
.row.inset{padding:2rem 0;}
.bg-white{background:#FFF;}


.grid-container {
    max-width: 95rem;
}

.flex-center {
    display: flex;
    align-items: center;
    height: 100%;
}

.container {
	overflow: hidden;
}

.container.padded {
	padding: 1rem;
}


form .formmessage {
    display: none;
}

#fbm-showcase-entry-form .formmessage.success {
    background-color: #3d53c1;
    color: #FFF;
    font-weight: bold;
}

.button.loading:after {
    font-family: "Font Awesome 5 Free";
    content: "\f110";
    font-weight: 900;
    animation: fa-spin 1s infinite linear;
    display: inline-block; /* Required for transform to apply */
    margin-left: 8px;
}


/* Hide the radio buttons */
#fbm-rate-product .fbm-voting-radio {
    display: none;
}

/* Style the label as a button */
#fbm-rate-product .fbm-voting-label {
    display: block;
    cursor: pointer;
    text-align: left;
    transition: all 0.2s ease;
    padding: 1rem;
    position: relative;
    border-radius: 10px;
    color: #FFF;
}

.fbm-voting-label .row.collapse {
    z-index: 10;
    position: relative;
}

.fbm-voting-radio-percentage {
    height: 100%;
    position: absolute;
    background-color: rgba(0,0,0,.5);
    top: 0;
    left: 0;
    z-index: 0;
    transition: width 0.8s ease-in-out;
    border-radius: 10px;
}

.fbm-voting-item-components {
    z-index: 10;
    position: relative
}

.showcase-criteria-icon {
    color: #FFF;
}

/* Style for selected button */
#fbm-rate-product .fbm-voting-radio:checked + .fbm-voting-label .fa-circle::before {
    content: "\f058";
}

#fbm-rate-product .fbm-voting-radio:checked + .fbm-voting-label {
    font-weight: 600;
}

#fbm-rate-product .fbm-voting-radio:checked + .fbm-voting-label .fa-circle {
    background-color: #000;
    border-radius: 50%;
}

.fbm-voting-label .fas {
    font-size: 1.5em;
    vertical-align: middle
}

.fbm-voting-label .fa-circle {
    color: #FFF;
    text-shadow: 0 0 1px rgba(0,0,0,.6);
}

.fbm-voting-label {
    position: relative;
}

.badge.fbm-voting-score-container {
    background-color: #FFF;
    height: 45px;
    width: 45px;
    overflow: hidden;
    font-size: .7em;
    position: absolute;
    display: block;
    top: 50%;
    right: 0;
    text-align: center;
    padding: .8rem 0;
    font-family: 'Open Sans', sans-serif;
    color: #3d53c1;
    font-weight: bold;
    transform: translate(-50%,-50%);
}

#showcase-would-you-buy {
    margin-top: 4rem;
        margin-bottom: 4rem;
    }

#showcase-would-you-buy label {
    font-weight: bold;
    margin-right: 2rem;
    color: #FFF;
}

#showcase-would-you-buy .fas {
    font-size: 3em;
    vertical-align: middle;
    margin-right: .5rem;
}

#showcase-would-you-buy input {
    margin-bottom: 0;
}

p.voting-instruction {
    margin-top: -1rem;
    margin-bottom: 2rem;
}

.callout.share-showcase-header {
    background-color: rgba(0,0,0,.25);
    color: #FFF;
    margin-top: -2rem;
    margin-bottom: -2rem;
    padding: 0.5rem;
}


    .callout.share-showcase-header img {
        height: 200px;
    }

.title-section.bg-showcase-gradient h1 {
    margin-bottom: 1.5rem;
}


label.inline {
    display: inline;
}

.callout.showcase-entry-listing {
    background-color: #FFF;
    border-radius: 10px;
    margin-bottom: 2rem;
}

.showcase-image-container {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    background-color: #999;
    background-position: center;
    background-size: cover;
    height: 25rem;
    display: flex;
    justify-content: center;
    align-items: center;
}


/* blurred background */
.showcase-image-container::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    transform: scale(1.12);
    filter: blur(5px) brightness(0.9);
    pointer-events: none;
}

/* foreground image */
.showcase-image-container img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
    position: relative;
    box-shadow: 5px 5px 5px rgba(0,0,0,.5);
}



#showcase-introduction .price {
    display: inline-block;
    padding: 1rem 2rem;
    background-color: #EEE;
    border-radius: 2rem;
    margin-bottom: 2rem;
}

.showcase-entry-listing h3 {
    color: #3d53c1;
}

.showcase-entry-listing .school-name {
    margin-top: -.5rem;
}

.showcase-entry-listing .showcase-entry-short-description {
    padding: 1rem;
    background-color: #F5F5F5;
    border-radius: 10px;
    margin-bottom: 1rem;
}

.showcase-entry-listing .showcase-entry-short-description p:last-child {
    margin-bottom: 0;
}

.showcase-image-container a#showcase_image_delete {
    margin-top: 1rem;
    display: inline-block;
}

.callout.showcase-entry-accolades {
    background-color: transparent;
    padding: 0.75rem;
    color: #FFF;
}

.showcase-entry-accolade i {
    font-size: 2em;
    vertical-align: middle;
    margin-right: .5rem;
}

.showcase-entry-accolade {
    display: inline-block;
    padding: .5rem;
    margin: .25rem;
    border-radius: 6px;
    font-size: 0.7em;
}

#team-enjoyment {
    background-color: rgba(0,0,0,.1);
    margin-top: 2rem;
    margin-bottom: 2rem;
}

#showcase-introduction h2 {
    margin-bottom: 1rem;
}

#showcase-introduction .school-name {
    margin-top: -0.5rem;
    margin-bottom: 2rem;
}

#fbm-showcase-entry-form #team-enjoyment label {
    background-color: transparent;
}

#fbm-rate-product h2 {
    margin-bottom: 2rem;
}

.bg-showcase-gradient .showcase-image-container {
    margin-bottom: 0;
    width: 100%;
    max-height: 25rem;
    overflow: hidden;
}

.bg-showcase-gradient .showcase-image-container img {
    margin-bottom: 0;
    overflow: visible;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.bg-showcase-gradient hr {
    border-color: #FFF;
    margin: 2rem 2rem 2rem 0;
}

.showcase-featured-image {
    background-color: #FFF;
    border-radius: 10px;
}


@media screen and (max-width:39.9375em){
    .small-text-center{text-align:center!important;}
.small-text-left{text-align:left!important;}
#contentarea img.alignleft, #contentarea img.alignright{width:100%;float:none;margin:0 auto 1.5rem;}
.small-padded-bottom{padding-bottom:4rem;}



}

/* End of utility classes */

.row {
    max-width: 80rem;
}

.overflow-hidden {
    overflow: hidden;
}

.position-relative {
    position: relative;
}

.add-padding-top-4rem {
    padding-top: 4rem
}

.body-section a {
    font-weight: 600;
    text-decoration: underline;
    color: #3d53c1;
}

a.button {
    color: #FFF;
    text-decoration: none;
    font-size: 1.17em;
}

blockquote, blockquote p {
    color: #3d53c1;
}

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.body-section select:invalid, .organisation-filter select option:disabled {
    color: #DDD !important;
}

.body-section option {
    color: #000;
}

body {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #333;
    line-height: 1.2;
    font-size: 16px;
}

body p {
    line-height: 1.4;
}

a {
    color: #3d53c1;
}

a:hover {
    color: #1a2878;
}

img.circle-image {
    border-radius: 50%;
}

.body-section {
    position: relative;
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.body-section.less-padding {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.body-section.nudge-up {
    padding-top: 6rem;
    margin-top: -6rem
}

.body-section h2, .body-section h1 {
    color: #3d53c1;
    font-size: 2em;
    font-weight: 500;
}

.body-section h2.smaller-margin {
    margin-bottom: 2.5rem;
}

.body-section.fg-white h2, .row.call-to-action h2 {
    color: #FFF;
}

#site-header {
    position: relative;
    z-index: 100;
}

.z-10 {
    position: relative;
    z-index: 10;
}

.large-text {
    font-size: 1.3em;
}

.vertical-align {
    position: relative;
}

.vertical-align .pb-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.pb-content {
    z-index: 10;
    position: relative;
}

.body-section.call-to-action {
    padding-top: 3rem;
    padding-bottom: 3rem;
    background-image: url("../images/fbm/bg-cta.png");
    background-repeat: no-repeat;
    background-size: auto 120%;
    background-position: 100% 22%;
}

.body-section .cta-left h2 {
    margin-bottom: 1.5rem;
    font-size: 1.75em;
}

.body-section hr {
    margin: 4rem 0 3rem;
}

.body-section hr.equal-spacing {
    margin: 4rem 0;
}

.body-section.two-column .cell img {
    max-width: 85%;
    height: auto;
}

.body-section.page-title {
    padding: 3rem 0
}

.page-title p {
    font-size: 1.33em
}

#site-header .top-bar, #site-header .top-bar ul {
    background-color: transparent;
    font-weight: 600;
}

#site-header .top-bar ul a {
    color: #FFF;
}

#site-header .top-bar ul a:hover {
    color: #EEE;
}

#main-menu .fa-solid.fa-house {
    font-size: 1.5em;
    margin-top: -.5rem;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    letter-spacing: .01em;
    line-height: 1.2;
}

h3 {
    font-size: 1.5em;
}

.callout {
    border: none;
    border-radius: 0;
}

#site-header #logo {
    display: block
}

.partners {
    display: block;
    margin-bottom: 1rem;
    margin-right: 1rem;
    text-align: right;
}

.partners img {
    max-height: 3rem
}

#back-to-durham-startups {
    float: left;
    background-color: #F5F5F5;
    padding: 0.5rem;
    font-size: 0.8em;
    border-radius: 10px;
}

#back-to-durham-startups:hover {
    background-color: #EEE;
}

#back-to-durham-startups img {
    height: 2rem;
    margin-left: 0.5rem;
}

#logo img {
    max-height: 6.5rem;
}

.button.disabled, .button.disabled:focus, .button.disabled:hover, .button[disabled], .button[disabled]:focus, .button[disabled]:hover {
    background: #f7219c;
}

#site-header .top-bar .highlight a, #mobileMenu .highlight a, .button {
    color: #FFF;
    background: #f7219c;
    border-radius: 10px;
    padding: 0.75rem 1.5rem;
    margin-top: 0.1rem;
    font-family: "Poppins", sans-serif;
    border-bottom: none!important;
    font-size: 1em;
}

#site-header .top-bar .highlight a:hover, #mobileMenu .highlight a:hover, .button:hover {
    background: #c01576;
}

#site-header .top-bar .highlight a {
    margin-top: -0.2rem;
    font-size: 1.17em;
}

[data-dropdown-menu] ul, [data-responsive-menu] ul, [data-responsive-toggle] ul {
    display: none;
}

.dropdown.menu > li > a {
    padding: .7rem 2rem;
}

#site-header .top-bar ul.is-dropdown-submenu {
    border: none;
    background-color: #FFF;
    padding: 1rem 2rem 1.5rem;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, .2);
    min-width: 20rem;
    z-index: 100;
}

#site-header .top-bar ul.is-dropdown-submenu a {
    color: #3d53c1;
}

#site-header .top-bar ul.is-dropdown-submenu a:hover {
    color: #1a2878;
}

#site-header .dropdown.menu > li.is-dropdown-submenu-parent > a::after {
    border-color: #F7219C transparent transparent;
}

#site-header .dropdown.menu > li.is-active > a {
    color: #F7219C;
}

#mobile-header {
    padding-bottom: 1rem;
}

#mobile-header #mobile-logo img {
    max-width: 4rem;
}

#mobile-header #mobile-nav-opener img {
    max-width: 1.8rem;
}

#mobileMenu {
    background-color: #3d53c1;
    color: #FFF;
    z-index: 101;
}

#mobileMenu .is-drilldown {
    margin-top: 3rem;
    overflow: visible;
}

#mobileMenu li {
    width: 100%;
}

#mobileMenu a {
    display: block;
    width: 100%;
    white-space: inherit;
    font-weight: 600;
    color: #FFF;
}

.drilldown a {
    padding: .7rem 1rem;
    background: transparent;
    color: #FFF;
}

.drilldown .is-drilldown-submenu {
    background-color: #3d53c1;
}


#mobileMenu a:hover {
    background: #444;
}

#mobileMenu .close-button {
    color: #333;
}

#mobileMenu .drilldown .is-drilldown-submenu {
    margin-top: 0rem !important;
}

#mobileMenu li.highlight {
    margin: .5rem 1rem;
}

#mobileMenu li.highlight a {
    font-size: 1.3em;
}

#back-to-durham-startups-footer {
    margin-left: 1rem;
}


.drilldown .is-drilldown-submenu-parent > a::after {
    border-color: transparent transparent transparent #F7219C;
}

.drilldown .js-drilldown-back > a::before {
    border-color: transparent #F7219C transparent transparent;
}

.dropdown.menu .is-active > a, .dropdown.menu .is-active > a:hover {
    color: #F7219C;
}

p#tagcloud-post_tag.the-tagcloud a {
    font-size: 1em !important;
}

#footer-partners.partners {
    text-align: center;
    margin-bottom: 2rem;
}

footer#site-footer {
    background-color: #333;
    padding: 4rem 0 4rem;
    color: #FFF;
    position: relative;
}

footer#site-footer a {
    color: #FFF;
}

footer#site-footer .menu a {
    padding: 0;
    margin-right: 3rem;
    text-decoration: underline;
}

footer#site-footer .menu a:hover {

}

#site-footer #dcc-logo {
    max-height: 5rem;
}

#site-footer #bd-logo {
    max-height: 3.5rem;
    margin-right: 2rem;
}

.title-section {
    padding: 3.5rem 0;
    text-align: center;
}

.bg-blue-gradient.fg-white, .bg-showcase-gradient.fg-white {
    text-shadow: 0 0 20px #000
}



.ripped-edge {
    width: 100%;
    height: 5px;
    background-repeat: repeat-x;
    position: absolute;
}

.white-rip-top {
    background-image: url("../images/fbm/white-rip-top.png");
    top: 0;
}

.white-rip-bottom {
    background-image: url("../images/fbm/white-rip-bottom.png");
    bottom: 0;
}

.grey-rip-top {
    background-image: url("../images/fbm/grey-rip-top.png");
    top: 0;
}

.grey-rip-bottom {
    background-image: url("../images/fbm/grey-rip-bottom.png");
    bottom: 0;
}

#fbm-introduction h2 {
    margin-bottom: 1rem
}

.callout.benefit-box {
    padding: 0 0 4rem;
    margin-bottom: 2rem;
    border-bottom: none;
    border-radius: 10px;
    background-repeat: no-repeat;
    background-size: 50%;
    overflow: hidden;
}

.callout.benefit-box#benefit-box-1 {
    background-image: url("../images/fbm/shape-blue.png");
    background-position: 110% 158%;
}

.callout.benefit-box#benefit-box-2 {
    background-image: url("../images/fbm/shape-pink.png");
    background-position: 10% 172%;
}

.callout.benefit-box#benefit-box-3 {
    background-image: url("../images/fbm/shape-purple.png");
    background-position: 129% 163%;
}

.callout.benefit-box#benefit-box-4 {
    background-image: url("../images/fbm/shape-blue.png");
    background-position: -20% 172%;
}

.callout.benefit-box .benefit-content {
    padding: 1rem 2rem;
}


.testimonials .orbit-container {
    margin: 0 6rem;
}

.testimonial blockquote {
    font-size: 1.5em;
    border-left: none;
    color: #062938;
}

.testimonial blockquote cite {
    font-style: normal;
    margin-top: 1rem;
    font-size: 0.75em;
    font-width: 600;
    line-height: 1;
}

.testimonial .cite-block, .testimonial cite {
    color: #333;
}


.testimonial blockquote cite:before {
    content: "";
}

.testimonial blockquote p {
    font-family: "Poppins", sans-serif;
    font-size: 1.2em;
    line-height: 1.1;
}

.testimonial img {
    margin: auto;
    display: block
}

.testimonials .orbit .orbit-controls button, .slickslider .orbit-controls button {
    border-radius: 50%;
    cursor: pointer;
}

.testimonials .orbit .orbit-controls button:hover, .slickslider .orbit-controls button:hover {
    background-color: #062938;
}

.bg-quote {
    width: 4rem;
    height: 4rem;
    background-size: 4rem;
    background-repeat: no-repeat;
    position: absolute;
}

.bg-quote.leftquote {
    top: 0;
    left: 0;
    background-image: url("../images/fbm/leftquote-pink.png");
}

.bg-quote.rightquote {
    bottom: 0;
    right: 0;
    background-image: url("../images/fbm/rightquote-pink.png");
}

.slickslider {
    position: relative;
}

.slickslider .slick-slider {
    margin: 0 5rem;
}

.slickslider .partner-logo-container {
    position: relative;
    width: 150px;
    height: 150px;
}

.slickslider .partner-logo-container img {
    width: 65%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.accordion {
    background: transparent;
}

.body-section .accordion-title {
    font-size: 1.2em;
    background-color: #3d53c1;
    color: #FFF;
    border: none;
    border-radius: 10px;
    font-weight: 600;
    font-family: "Poppins", sans-serif;
    text-decoration: none;
}

.body-section .accordion-content {
    border: none;
}

:last-child:not(.is-active) > .accordion-title, .accordion-item:first-child > :first-child {
    border-radius: 10px;
}

.body-section .accordion-title:hover, .body-section .accordion-item.is-active .accordion-title {
    background-color: #1a2878;
}

.body-section .accordion-title::before {
    margin-top: -0.8rem;
}

.body-section .accordion-item {
    margin-bottom: .5rem;
}

#fbm-about-bd-logo {
    width: 65%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.body-section label, .body-section input, .body-section select, .body-section textarea {
    font-size: 1em;
    color: #333;
}

.body-section textarea {
    min-height: 10rem
}

.button.large i {
    font-size: 0.7em;
    margin-left: .5rem;
}

.body-section fieldset.row {
    margin-bottom: .75rem
}

.body-section fieldset.row legend {
    margin-top: 0.5rem;
}


input#accepted_terms {
    float: left;
    margin-right: 0.26rem
}

label#accepted_terms_label {
    float: left;
    display: inline-block;
    width: 85%;
    margin-top: -.5rem;
    line-height: 1.2em;
}

.blogpost {
    margin-bottom: 1rem;
    z-index: 10;
}

.body-section .blogpost a {
    background-color: #333;
    color: #FFF;
    display: block;
    overflow: hidden;
    border-bottom: none;
    padding-bottom: 1rem;
}

.body-section .blogpost a:hover {
    border-bottom: none;
    background-color: #222;
}


.blogpost .blogpost-content {
    padding: 1rem 2rem 0;
}

.blogpost .blogpost-link {
    padding: 0 2rem 0.1rem;
}


.blogpost .blogpost-content h3 {
    font-size: 1.7em;
}
.blogpost-image {
    position: relative;
}
.blogpost-image .blog-category {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 1.4em;
    padding: 0.3rem 2rem;
    border-radius: 1rem;
    font-family: "Poppins", sans-serif;
}
.blogpost .blogpost-content .date {
    color: #FFF;
    margin-top: -0.5rem;
    font-weight: 300;
}

.blogpost .blogpost-content .blogpost-excerpt {
    font-weight: 300;
}

.blogpost a h3 {
    color: #FFF;
}

.blogpost .blogpost-link .button {
    font-size: 1.4em;
}

.blogpost a:hover .blogpost-link .button {
    background: #FFF!important;
    color: #333!important;
}

.bg-blue-gradient.fg-white a {
    color: #eb3825;
}

.bg-blue-gradient.fg-white a:hover {
    color: #FFF;
    text-decoration: underline;
}

ul.social-share-links {
    display: inline;
    list-style: none;
    margin: 0;
}

ul.social-share-links li {
    display: inline;
}

.social-share-icon {
    font-size: 0.7em
}

.body-section .widget a, .body-section .social-share-icon, .tabs a {
    border-bottom: none
}

.widget_categories ul {
    margin: 0;
}

.single-fbm_blog .widget .callout ul {
    list-style: none;
}

h5.widgettitle {
    font-size: 1.6em;
    padding: 1rem;
    margin: -1rem -1rem 1rem!important;
    color: #FFF;
}
.widget_categories .callout {
    background-color: #F5F5F5;
}

.body-section #blog-category-buttons .button {
    margin: 0 0.25rem 0.25rem;
    min-width: 5rem;
}

.callout#fbm-login-form {
    padding: 2rem;
    box-shadow: 0 0 2rem #AAA;
    border-radius: 10px;
}

.body-section input.button {
    color: #FFF;
    font-size: 1.5em;
}

a.callout.fbm-year-item-box {
    display: block;
    text-align: center;
    font-family: "Poppins", sans-serif;
    background-color: #3d53c1;
    color: #FFF;
    text-decoration: none;
    padding: 0 0 1rem;
    margin-bottom: 0;
}

a.fbm-year-item-box span {
    font-size: 1.2em;
    padding: 0.5rem 0;
    display: block;
}


a.fbm-year-item-box:hover {
    background-color: #1a2878;
}


a.callout.challenge-download {
    display: block;
    background-color: #3d53c1;
    color: #FFF;
    border-bottom: none;
    border-radius: 10px;
}

a.callout.challenge-download:hover {
    background-color: #1a2878;
}

a.callout.challenge-download img {
    width: 35%;
}

a.callout.challenge-download .file-meta {
    font-size: 0.7em
}

.callout.upload-challenge {
    border: solid 2px #EEE;
    padding: 2rem;
}

.challenge-image {
    position: relative;
}

.challenge-locked-padlock {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.callout.evidence-pr-upload-container {
    border: solid 1px #CCC;
}


.body-section label.button {
    color: #FFF;
}

.evidence-upload-field label.button, p#evidence-upload-buttons {
    margin-bottom: 0
}

p#evidence-upload-buttons button {
    margin-top: 2rem;
}

p#evidence-upload-buttons button {
    margin-top: 2rem;
}


label.uploaded {
    display: inline;
    vertical-align: initial;
    margin-right: 0.5rem;
}

.fbm_leaderboard_logo {
    width: 2rem;
    height: 2rem;
    float: left;
    margin-right: 1rem;
}

.fbm_leaderboard_logo img {
    vertical-align: middle;
}

#fbm_leaderboard thead tr {
    background-color: #3d53c1;
    color: #FFF;
}


#fbm_leaderboard {
    position: relative;
}

#fbm_leaderboard:before {
    content: "";
    background-image: url("../images/fbm/leaderboard-top.png");
    background-repeat: no-repeat;
    height: 2rem;
    width: 100%;
    display: block;
    position: absolute;
    top: -1.9rem;
    background-position: right bottom;
    background-size: contain;
}

#fbm_leaderboard:after {
    content: "";
    background-image: url("../images/fbm/leaderboard-bottom.png");
    background-repeat: no-repeat;
    height: 3rem;
    width: 100%;
    display: block;
    position: absolute;
    bottom: -2.9rem;
    background-position: center top;
    background-size: contain;
}

.g-recaptcha {
    margin: 2rem auto;
    display: inline-block;
}

.body-section label.is-invalid-label {
    color: #c60f13
}

.body-section input[type="checkbox"].is-invalid-input {
    border-color: #c60f13!important;
}

.form-error.checkbox-form-error {
    clear: both;
    margin-left: 5%;
    padding-top: 1rem;
}

.body-section .button:focus, .button.disabled:focus, .button[disabled]:focus, .top-bar .highlight a:focus  {
    outline: solid 2px red!important;
}

.highlight a {
    margin-left: 3rem;
}

.contact-form input, .contact-form select, .contact-form textarea, .dabs-newsletter input {
    border: solid 3px #3d53c1;
    border-radius: 10px;
    padding: 1.5rem 1.5rem;
}

#loginform input {
    border-radius: 10px;
}

.contact-form input[type="checkbox"], .contact-form input[type="radio"], #loginform input[type="checkbox"] {
    outline: 1px solid #062938;
    border: 1px solid #062938;
    background-color: #FFF
}

.contact-form input[type="checkbox"]:focus, .contact-form input[type="radio"]:focus, #loginform input[type="checkbox"]:focus {
    outline: 1px solid #FF0000;
    border: 1px solid #FF0000;
}

#fbm-showcase-entry-form {
    background: linear-gradient(to right, #3d53c1 33%, #F5F5F5 33%);
    box-shadow: 0 0 12px #DDD;
    border-radius: 10px;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

#fbm-showcase-entry-form .fbm-showcase-field {
    padding: 1rem;
}

#fbm-showcase-entry-form .showcase-image-container img {
    border-radius: 10px;
    overflow: hidden;
}

#fbm-showcase-entry-form label {
    color: #FFF;
    background-color: #3d53c1;
    font-weight: bold;
    padding-right: 2rem;
}

#fbm-showcase-entry-form .fbm-help-tip {
    color: #c7cdf3;
    vertical-align: middle;
}

#fbm-showcase-entry-form input, #fbm-showcase-entry-form textarea {
    border: solid 2px #3d53c1;
    border-radius: 10px;
}


.callout.share-this-showcase {
    margin-bottom: 6rem;
}

.callout.share-this-showcase img {
    margin: 1rem 0 0;
    max-height: 200px;
    border-radius: 10px;
    box-shadow: 0 0 10px #333;
}

.callout.share-this-showcase a {
    color: #FFF;
}

.callout.share-this-showcase a:hover {
    color: #DDD;
}


.fbm-help-tip, .fbm-help-url {
    color: #333;
}

.fbm-tooltip {
    display: none;
    position: absolute;
    background-color: rgba(0, 0, 0, .95);
    padding: 10px;
    color: #fff;
    margin-right: 2rem;
    z-index: 10;
    max-width: 350px;
}


/* Base button styles */
.would-you-buy-item {
    display: inline-block;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    padding: 0.75rem 3rem;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease;
    background: #ddd; /* Default button background */
    color: #333;
    border: none;
    margin-top: 1rem;
}


/* Hide the actual radio button */
.would-you-buy-item input {
    display: none;
}

/* Alternative approach to apply styling directly to label */
.would-you-buy-item:has(input:checked) {
    background: #2ba6cb; /* Default selected background */
}

/* Different colours for thumbs up and down */
.would-you-buy-item:has(input[value="1"]) {
    background: #3bcb2b; /* Blue for Yes */
}

.would-you-buy-item:has(input[value="0"]) {
    background: #d9534f; /* Red for No */
}

/* Different colours for thumbs up and down */
.would-you-buy-item:has(input:checked[value="1"]) {
    background: #3bcb2b; /* Blue for Yes */
    box-shadow: 0 0 8px rgba(255,255,255,1);
    border: solid 1px #FFF;
}

.would-you-buy-item:has(input:checked[value="0"]) {
    background: #d9534f; /* Red for No */
    box-shadow: 0 0 8px rgba(255,255,255,1);
    border: solid 1px #FFF;
}



#candle-field {
    display: none;
}

.bg-showcase-gradient, #showcase-would-you-buy, .share-this-showcase {
    background: #3d53c1;
    color: #FFF;
    border-radius: 10px;
}

#fbm-showcase-entry-form .showcase-image-container {
    background: transparent;
}

#fbm-showcase-entry-form .showcase-image-container .profile-photo-container {
    position: relative;
    width: 80%;
    height: 100%;
    margin-top: 2rem;
}


#showcase-would-you-buy img {
    margin-top: -3rem;
    margin-bottom: -3rem;
    margin-left: -3rem;
    max-width: 120%;
}

#showcase-would-you-buy p {
    margin-bottom: 0;
}

.showcase-entry-listing-content {
    padding: 0 2rem;
}

.showcase-entry-listing-content h3 a {
    border-bottom: none;
    font-weight: 500;
}


#fbm_reports .tabs {
    border: none;
    border-bottom: solid 1px #e6e6e6;
}


#fbm_reports .tabs-title {
    border: solid 1px #e6e6e6;
    border-bottom: none;
    margin-right: .5rem;
}


#fbm_reports .tabs-title a {
    color: #333;
}

#fbm_reports table .fas {
    font-size: 1.5em;
    vertical-align: middle;
    margin-right: 1rem;
}

#fbm_reports table thead td, #fbm_reports table thead th {
    background-color: #3d53c1;
    color: #FFF;
}

#fbm_reports .tabs-title.is-active, #fbm_reports .tabs-title.is-active > a[aria-selected="true"] {
    background-color: #eb3825;
    color: #FFF;
}

#fbm_reports .tabs-content {
    padding: 2rem
}

#fbm_reports .tabs-content h4 {
    margin-bottom: 1.5rem;
}

#fbm_reports .tabs-content table {
    margin-bottom: 2rem;
}


.fbm-product-meta {
    background-color: #3d53c1;
    padding: 2rem;
    margin-top: 3rem;
    margin-right: 2rem;
    border-radius: 10px;
}

.fbm-product-meta p {
    margin-bottom: 0
}

.fbm-product-meta .school-name {
    font-weight: bold;
    font-size: 1.2em;
}

.price .price-item {
    margin-top: .5rem;
    display: inline-block;
}

.title-section .fbm-product-details h1 {
    margin-bottom: 0;
}

.title-section .fbm-product-details h2 {
    margin-bottom: 1rem;
    margin-top: 1rem;
}

.card.previous-winner-quote {
    background-color: #9600f5;
    color: #FFF;
    border: none;
    border-radius: 10px;
    margin: 3rem 0 0;
    position: relative;
    overflow: visible;
}

.card.previous-winner-quote:before {
    content: "";
    background-image: url("../images/fbm/leftquote-pink.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    position: absolute;
    top: -12px;
    left: -25px;
    z-index: 1;
}

.card.previous-winner-quote .card-section {
    padding: 2rem;
}

.card.previous-winner-quote .card-section blockquote, .card.previous-winner-quote .card-section blockquote p {
    color: #FFF;
    padding: 0;
    border-left: none;
    font-style: italic;

}

.card.previous-winner-quote .card-section blockquote cite {
    font-weight: 600;
    font-style: normal;
    color: #FFF;
}

.previous-winner-image {
    margin-top: -2rem
}

.wavy {
    position: relative;
    width: 100%;
    aspect-ratio: 291 / 137.64;
    overflow: hidden;
    margin-bottom: 2rem;
}

.wavy img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-mask: url("../images/fbm/shape-mask.svg?v=1.1") center/contain no-repeat;
    mask: url("../images/fbm/shape-mask.svg?v=1.1") center/contain no-repeat;
    display: block;
}

.card.register-form {
    border-radius: 10px;
    border: none;
    margin-top: 4rem;
}

.card.register-form .card-section {
    padding: 1rem 2rem;
}

.callout.benefit-box.challenge-link {
    padding: 0!important;
}

.title-section.bg-purple-feature img {
    border-radius: 10px;
}

ul.fbm-styled-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

ul.fbm-styled-list li {
    background: url("../images/fbm/styled-bullet.png") no-repeat 0 0.4em;
    background-size: 16px 16px;        /* Adjust to match your bullet size */
    padding-left: 28px;               /* Should be slightly larger than the bullet width */
    line-height: 1.5;                 /* Helps multiline spacing look clean */
    margin-bottom: 0.5em;
}

.is-invalid-input { box-shadow: 0 0 0 3px rgba(255,0,0,0.08); }

.challenge-link .benefit-content h2 {
    color: #FFF;
    font-size: 1.2em;
}

/* Colours */

.bg-blue {
    background-color: #3d53c1;
}

.bg-purple {
    background-color: #9600F5;
}

.bg-pink {
    background-color: #F7219C;
}

.bg-lightblue {
    background-color: #2BE1F9;
}

.bg-lightgrey {
    background-color: #F0EEE2;
}

.bg-white {
    background-color: #FFF;
}

.bg-darkgrey {
    background-color: #333;
}

.fg-blue {
    color: #3d53c1;
}

.fg-purple {
    color: #9600F5;
}

.fg-pink {
    color: #F7219C;
}

.fg-lightblue {
    color: #2BE1F9;
}

.fg-lightgrey {
    color: #F0EEE2;
}

.fg-white {
    color: #FFF;
}

.fg-darkgrey {
    color: #333;
}

.bg-purple-feature {
    background-color: #391247;
    background-image: url("../images/fbm/purple-feature-top.jpg"),
    url("../images/fbm/purple-feature-bottom.jpg");
    background-repeat: no-repeat, no-repeat;
    background-position: top center, bottom center;
    background-size: 100% auto, 100% auto;
    padding-top: 8rem;
    padding-bottom: 8rem;
    min-height: 40rem;
}

.bg-lightgrey-pattern {
    background-color: #F0EEE2;
    background-image: url("../images/fbm/bg-pattern-right-side-grey.png"),
    url("../images/fbm/bg-pattern-left-side-grey.png");
    background-repeat: repeat-y, repeat-y;
    background-position: top right, top left;
    background-size: 10% auto, 10% auto;
}

.title-section.bg-purple-feature {
    background-position: center -20%, center 160%;
    min-height: inherit;
}


/* Medium Screens */
@media print, screen and (min-width: 40em) and (max-width: 70em) {

    body {
        font-size: 16px;
    }

    .partners {
        text-align: right;
        margin: 2rem 0 0;
        display: block;
        clear: both;
    }

    .partners img {
        max-height: 2rem;
    }

    #logo img {
        max-width: 100%;
    }

    .dropdown.menu > li > a {
        padding: .7rem .7rem;
    }

    .testimonial blockquote {
        font-size: 1.2em;
    }

    footer#site-footer {
        font-size: 0.8em;
    }

}


/* Small Screens */
@media screen and (max-width: 39.9375em) {
    body {
        font-size: 14px;
    }

    footer#site-footer .menu a {
        margin-right: 1rem;
    }

    .parters#footer-partners {
        padding: 0 1rem;
    }

    .body-section {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    footer#site-footer {
        font-size: 0.8em;
    }

    #mobile-header .partners {
        padding: 0;
        margin: 1rem auto 0;
        display: block;
        clear: both;
    }

    #mobile-header .partners img {
        display: block;
        margin: auto;
        max-height: 2rem;
    }

    #menu-footer-menu li {
        display: inline-block;
    }

    .body-section hr {
        margin: 2rem 0;
    }

    .page-title p {
        font-size: 1em;
    }

    .testimonial blockquote {
        position: relative;
        top: 0;
        transform: inherit;
        font-size: 1em;
        width: 100%;
    }

    .testimonials .orbit-container {
        margin: 0 2.5rem;
    }

    .testimonial img {
        max-width: 60%;
        display: block;
        margin: auto;
    }

    .bg-quote {
        display: none;
    }



    .testimonials .orbit .orbit-controls button, .slickslider .orbit-controls button {
        font-size: 0.8rem;
        padding: 0.8rem;
    }

    .body-section h2 {
        font-size: 2em;
    }


    #site-footer #dcc-logo, #site-footer #bd-logo {
        max-height: 3rem;
        margin-top: 2rem;
    }

    .slickslider .partner-logo-container {
        position: inherit;
    }

    .slickslider .partner-logo-container img {
        width: inherit;
        max-width: 65%;
        position: relative;

    }

    .slickslider .slick-slider {
        margin: 0;
    }

    .fbm-benefits-for-x img {
        display: block;
        width: 50%;
        margin: 1rem auto;
    }

    #fbm-about-bd-logo {
        position: relative;
        top: inherit;
        left: inherit;
        transform: none;
        display: block;
        margin: 2rem auto;
    }


    #footer-partners img {
        display: block;
        margin: auto;
        max-height: 2rem;
    }

    ul.social-share-links {
    display: block;
        margin-top: 1rem;
    }

    #fbm-showcase-entry-form {
        background: #3d53c1;
    }

    #fbm-showcase-entry-form .fbm-showcase-field {
        padding: 0 0 0.5rem;
    }

    #fbm-showcase-entry-form .text-right {
        text-align: left;
    }

    #fbm-showcase-entry-form #team-enjoyment p {
        color: #FFF;
    }

    .showcase-entry-listing {
        background-image: none;
        padding: 1rem;
    }

    .showcase-entry-listing-content {
        padding: 0;
    }

    .callout.showcase-entry-listing .showcase-image-container, #showcase-introduction .showcase-image-container {
        height: 200px;
        margin-bottom: 1rem;
    }

    .share-this-showcase {
        padding-right: 2rem;
    }

    .share-this-showcase .text-right {
        text-align: center;
    }

    .flex-center {
        display: block;
    }

    .fbm-product-meta, .fbm-product-details hr {
        margin-right: 0;
    }

    .fbm-product-meta {
        margin-bottom: 2rem;
    }

    #showcase-would-you-buy {
        text-align: center;
        padding-bottom: 2rem;
    }

    #showcase-would-you-buy img {
        width: 30%;
        margin: 0 auto 1.5rem auto;
        display: block;
    }

    #fbm-rate-product .fbm-voting-label {
        margin-left: 0;
        margin-right: 0;
    }

    #fbm-rate-product .fbm-voting-label .small-10 {
        font-size: 12px;
        padding-right: 1rem;
        padding-left: 1rem;
    }

    .callout#fbm-rate-product {
        padding: 0;
    }

    #team-enjoyment {
        padding: 2rem 0;
    }

    .bg-lightgrey-pattern {
        background-color: #F0EEE2;
        background-image: none;
    }

    #main-menu-nav-opener {
        font-size: 2em;
        margin-top: 0.5rem;
    }

    .callout.benefit-box#benefit-box-1 {
        background-position: 110% 140%;
    }

    .callout.benefit-box#benefit-box-2 {
        background-position: 10% 135%;
    }

    .callout.benefit-box#benefit-box-3 {
        background-position: 129% 130%;
    }

    .callout.benefit-box#benefit-box-4 {
        background-position: -20% 135%;
    }

    .card.previous-winner-quote::before {
        left: 50%;
        transform: translate(-50%,-25%);
    }

    .body-section.call-to-action {
        background-size: auto 6rem;
        background-position: right bottom;
    }

    .accordion {
        margin-top: -1.75rem;
    }

    .body-section .accordion-title {
        font-size: 1.1em;
    }

    .card.register-form .card-section {
        padding: 1rem;
    }

    .highlight a {
        margin-left: 0;
    }

}

@keyframes fa-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}