/* ELECTIONS PAGE CSS */

/* DISPLAY NONE WHEN CANDIDATES ANNOUNCED 

.election-details {
    display:none;
}*/

/* USED FOR OFFICER ELECTIONS ONLY */

#election_vote #completion-text p,
#election_vote #completion-text h2 {
    color:#fff !important;
}

#election_vote #completion-text h2 {
    color:#fff !important;
    font-weight:800;
}

#election_vote #completion-text p {
    font-size:19px;
}

#election_vote #completion-text img {
    border-radius:40px;
}

#election_vote #completion-text a {
    background: #b3db50;
    color: #000;
    margin: 10px 0px;
    transition: transform 0.3s ease;
    border-radius: 30px !important;
    padding: 15px;
    white-space: normal;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#election_vote #completion-text a:hover {
    background: #b7e34a;
    transform: translateY(-5px) scale(1.03);
    text-decoration:none;
}

@media (min-width:1200px) {
    #election_vote #completion-text p:first-child {
        display:none;
    }
}

@media (max-width:1200px) {
    #election_vote #completion-text p:nth-child(2) {
       display:none; 
    }
}

/* ----------------------- */

#confirmvote.showing #confirmvotemessage {
    padding: 3rem;
    width: 90%;
}

#confirmvote p {
    font-size: 20px;
    margin: 0 0 1rem;
    text-align: center;
}

#confirmvote input {
    font-size: 24px;
}

.deals-hide {
    display:none;
}

.msl-breadcrumb {
    display:none;
}

.elecmanifesto-bg {
    padding:20px 60px;
    background-color: #fff;
}

.elecmanifesto-block {
    background: #211c36;
    border-radius: 40px;
    padding:40px;
    padding-left:40px !important;
    padding-right:40px !important;
    margin:10px auto;
}

.election-manifesto-white-block {
    background: #fff;
    border-radius: 40px;
}

@media (max-width:992px) {
    .elecmanifesto-bg {
        padding:15px;
    }
    .elecmanifesto-block {
        padding:40px;
        padding-left:10px !important;
        padding-right:10px !important;
    }
}

.panel-col {
    margin-top:20px;
}

.survey-wb h1 {
    color:#357B73 !important;
    font-size:26px !important;
}

.roles-div .col {
    margin-bottom:30px !important;
}

.roles-div .row:first-child {
    margin-top:30px !important;
}

.roles-div h3 {
    color:#4D4085 !important;
    line-height: 30px;
    text-align: center;
}

.fas-key-dates h4 {
    margin-bottom:2px;
    font-size:22px;
}

.fas-key-dates .fas {
    font-size: 60px;
    display:block;
    margin-top: 20px;
    margin-bottom:20px;
    color: #4D4085;
    margin-left:5px;
}

.key-dates-bg {
    background:#211C36;
    color:#fff;
    padding:20px 5px;
    border-radius:5px;
}

.key-dates-bg h4 {
    color:#42B6E7 !important;
}

.key-dates-bg .fas {
    color:#fff !important;
}

.panel-with-vids h3 {
    margin-top:0px;
    font-size:22px;
}

.panel-with-vids img {
    margin-bottom: 25px !important;
}

.fa-file-alt {
    color:#4D4085;
}

@media (min-width:1020px) {
    .fas-key-dates .fas-sr {
        margin-top: 20px;
    }
}

.documents-rows .row {
    margin-top:20px;
}

.role-fas .fas, .role-fas .far {
    font-size: 80px;
    margin:20px 0px 20px 20px;
    color: #4D4085;
    display: block;
}

.fa-file-doc {
    font-size:50px !important;
}

.well-roledescrip {
    padding: 3px 5px;
}
.well-roledescrip p {
    margin-top: 10px;
}
/*.well-roledescrip a {
    text-decoration:none;
}*/
.fa-roledescrip {
    font-size:16px !important;
    color:#fff !important;
    margin: 0px !important;
    display:inline-block !important;
}

.doch4 {
    margin-bottom:5px;
}

.doch4 a {
    font-size:20px;
}

.role-well {
    min-height:520px;
    margin-bottom:10px;
}

.role-full-width .role-well {
    min-height: 0px;
    margin-bottom: 30px;
}

.role-well h4 {
    font-size:22px;
    font-weight: 600;
    margin-top:5px;
    color:#357b73 !important
}

.role-well h4 a {
    font-size:22px;
}

.more-info-panel {
    background: #ececec;
    margin: 10px 10px;
    padding: 20px;
}

@media (max-width:768px) {
    .role-well {
        min-height:200px;
    }
    
    .more-info-panel {
        background: #ececec;
        margin: 20px 0px;
        padding: 10px;
    }
}

.role-well-pt-fr {
    min-height:360px;
}

.role-well-pt {
    min-height:430px;
    margin-bottom:40px;
}

.role-full-width .role-well-pt {
    min-height: 0px;
    margin-bottom: 30px;
}

@media (max-width:768px) {
    .role-well-pt-fr, .role-well-pt  {
        min-height:280px;
    }
}

.role-well-pt-fr h4, .role-well-pt h4, .role-well-pt h4 a, .role-well-pt-fr h4 a {
    font-size:22px;
    font-weight: 600;
    margin-top:5px;
    color:#357b73 !important
}

.fa-more-info-officers {
    color: #f50707;
}

.cta-wells {
    padding:0px 30px;
}

.main-wells {
    background-image:none;
    box-shadow:none;
    border:none;
    color:#fff;
}

.main-wells h2 {
    color:#fff !important;
    margin-top:0px;
    margin-bottom:10px;
}

.register-well {
    background-color:#B74A47;
}

@media (min-width: 768px) {
    .stripes-bg-box {
        background-image: url(../png/cta-box-stripes.png);
        background-repeat: no-repeat;
        background-size: 150px;
        background-position: top -2px right -55px;
    }
    /*.main-wells {
        min-height:300px;
    }*/
}

@media (max-width: 768px) {
    .stripes-bg-box {
        background-image: url(../png/cta-box-stripes.png);
        background-repeat: no-repeat;
        background-size: 150px;
        background-position: top -2px right -55px;
    }
}

/*.stripes-bg-box {
    margin:20px 0px;
}*/

.register-well .btn-blue {
    background-color:#50bb4e;
    border-color:#50bb4e;
}

.register-well .btn-blue:hover {
    background-color:#3bce54;
}

.apply-well {
    background-color:#357b73;
}

.apps-well {
    background-color:#4C3F84;
}

.apply-well .btn-green {
    background-color:#50bb4e;
    color: #fff;
}

.apply-well .btn-green:hover {
    background-color:#3bce54;
}

.apps-well .btn-darkgreen {
    background-color:#499647;
    color: #fff;
    width:70%;
    display:block;
    margin-left:auto;
    margin-right:auto;
}

.apps-well .btn-darkgreen:hover {
    background-color:#1dbb38;
}

.apps-well .btn-green {
    background-color:#50bb4e;
    border-color:#50bb4e;
    color: #fff;
    width:80%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.apps-well .btn-green:hover {
    background-color:#3bce54;
}

.stv-img {
    margin-bottom:20px;
}

@media (max-width:768px) {
    .additional-info-well {
        margin-top:20px;
    }
    .additional-info-well ul {
        padding-left: 15px;
    }
}

.color-bg .additional-info-well p,
.color-bg .additional-info-well ul li {
    color:#fff !important;
}

.blue-bg .additional-info-well h2, 
.blue-bg .additional-info-well h3,
.blue-bg .additional-info-well h4 {
    color:#41b6e6 !important;
}


/* front page elections settings */

#election_review h2 {
    color: #211C36;
} 

.election-details .msl-election-desc {
    padding: 10px 15px;
    border: none;
    font-size: 16px;
    background: #357b73;
    margin: 0 0 1px;
    color: #fff;
}

p.disclaimer {
    margin: 20px 0px;
    font-size:16px;
}

.election > p, .election p.msl-election-organisation {
    padding: 10px 10px 10px 34px;
    border-bottom: 1px solid #0080aa;
    margin: 0;
    font-size: 16px;
    background-repeat: no-repeat;
}

.mslwidget .election h3 {
color: #b90075;
}

p.disclaimer a {
    color: #0080aa;
    font-size: inherit;
}

.msl-election-posts dl {
   background-color: #b90075;
   color: #fff;
}

.msl-election-posts a {
    color: #fff;
}

.msl-election-candidates dl, .msl-election-candidates a {
    background-color: #40b5e5;
    color: #000000;
}

.msl-election-candidates dl {
    border-color: #0080aa;
}

/* end of front page elections settings */

/* layout for main body widget elections settings */

.election-details h1 {
    color: #357b73;
}


.msl-election-stage {
    background: url(../clock.html) 8px 50% no-repeat #B74A47;
    padding: 8px 15px 8px 34px;
    color: #fff;
}

.election-navigation {
    border-bottom: 1px solid #969696;
    margin-top: 30px;
    padding-bottom: 20px;
}

@media (min-width:992px) {
    .election-navigation {
        display: flex;
        justify-content: center;
        padding-bottom: 10px;
    }
}

.election-navigation a.current {
    border-left: none;
    background-color: #211C36;
}

 .election-navigation a.current {
    border-left: 5px solid #b90075;
}

.election-navigation a:hover, .election-navigation a.current {
    background-color: #357B73;
    color: #fff;
    text-decoration: none;
    border-color: #3294c5;
    border-left: none;
}
.election-navigation a {
    border-bottom: 5px solid #e2e2e2;
    background-color: #3294c5;
    color: #fff;
    border-radius: 40px;
    padding: 10px;
    text-align: center;
    margin-bottom:5px;
}


.post_sd, .msl-post-description {
    padding: 10px 15px;
    background: #0080aa;
    border-left: none;
    margin: 0 0 10px;
    color: #fff !important;
}

.election_page .msl-post-description {
     color: #fff !important;
}

.election_page .manifesto_photo {
    display: block !important;
    border-radius:40px;
    margin-right:20px;
    margin-bottom:20px;
    text-align: center;
    margin: 0 auto;
    width:600px;
}

.election_page .msl-manifesto-text {
    clear:both;
    padding: 20px 80px;
}

@media (max-width:992px) {
    .election_page .msl-manifesto-text {
        clear:both;
        padding: 20px 0px;
    }
}

.election_page .msl-manifesto-text p {
    font-size:17px !important;
}

.election_page .msl-candidate-slogan {
    font-size:22px !important;
    display: block;
    padding: 10px 0px;
    text-align: center;
}

.election_page .msl-candidate-name {
    font-size: 80px !important;
    text-align: center;
    margin-bottom: 0px;
    font-weight:bold;
}

@media (max-width:1020px) {
    .election_page .manifesto_photo {
        display: block !important;
        margin:0 auto!important;
        float:none;
        margin-right:0px;
    }
    
    .election_page .msl-candidate-name {
        font-size: 45px !important;
        text-align:center !important;
        font-weight:bold;
    }
    
    .election_page .msl-candidate-slogan {
        text-align:center !important;
    }
}

.election_page p, .election_page ul {
    font-size:16px;
}

.election_page h2, .election_page h1 {
color: #357B73;
}

.election_page h2 a {
color: #357B73;
font-size: inherit;
}

.election_page .msl_info {
    display: block;
    clear: both;
    padding: 10px 10px;
    background:none;
    text-align: center;
    color: #211C36;
    margin: 0 auto;
    margin-bottom: 50px;
    font-size: 20px;
    border-bottom: 1px solid #000;
}

.election_page .msl_notification {
    background:none;
}

.election_page .msl_notification p {
    font-size:18px !important;
}

.election_page h1, .election_page h2, .election_page h3, .election_page h4 {
    color:#211C36 !important;
}

.election_page p, .election_page ul li {
    color:#000 !important;
}

.election_page p a {
    color:#337ab7;
}

.election_page .msl_info a {
    display:block;
    margin-top:20px;
}

.election_page ul.msl-candidates li {
    padding: 30px 10px;
    border-top: 2px solid #eaeaea;
    position: relative;
    clear: left;
}

@media (min-width:1020px) {
    .election_page ul.msl-candidates li:nth-child(4n+1) {
        clear: both;
    }
}

ul.msl-candidates li {
color: #0080aa;
}

.canvote h3 {
color: #681666;
}

ul.msl-candidates li img {
    width: 100px;
    margin-right: 20px;
}

ul.msl-candidates li .candidate-details {
    font-size: 16px;
    float:none;
}

ul.msl-candidates p span, ul.msl-candidates p.slogan {
    color: #000;
}

ul.msl-candidates p a {
    font-weight: bold;
    display:block;
    font-size:16px;
    margin:10px 0px;
}

@media (max-width:1020px) {
    ul.msl-candidates li img {
        float:none;
        margin-bottom: 10px;
        display: block;
        margin-left: auto;
        margin-right: auto !important;
    }
    
    ul.msl-candidates li .candidate-details {
        float: none;
        text-align: center;
    }
}

/*CANDIDATES WIDGET */

.election_page .msl_notification .msl_info {
    margin-bottom:0px;
    font-size: 20px;
    border-bottom: none;
    color: #fff;
}

.election_page .msl_notification {
    background: #b74a47;
    color: #fff;
}

#election_candidates .search-wrap input {
    flex-grow: 1;
    padding: 0.8rem .75rem;
    border: 1px solid #ccc;
    margin: 0;
    border-radius: 5px;
    font-size: 18px;
}

#election_candidates h2 {
    clear: both;
    padding: 20px;
    background: #211c36;
    color:#fff !important;
    font-size: 24px;
    color: #fff !important;
    display: flex;
    justify-content: center;
}

.election_page h2 a {
    color: #fff;
    font-size: 35px;
    display:block;
    text-align:center;
}

.election_page .rolenav a {
    color: #fff;
}

.msl-candidate-position {
    background: #fff !important;
}

.election_page .msl-candidate-position {
    background: #211c36 !important;
    border-radius: 40px;
    margin: 40px;
}

.rolenav {
    display: block;
    /*border:2px solid #e9aa3f;*/
    border-radius:5px;
    color: #fff;
    padding: 15px;
}

.rolenavjump {
    font-size:22px;
    font-weight:bold;
}

ul.msl-candidates {
    border-bottom: none;
}

.fptp_ballot li .candidate-details p a+a {
    font-size: 18px;
    width: 100%;
}

.election_page ul.msl-candidates li {
    padding: 0px;
    border-top: none;
    position: relative;
    clear: none;
    float: left;
    width: 23.2%;
    margin: 10px;
    min-height: 20em !important;
    border: 1px solid #eaeaea;
    border-radius: 5px;
}

@media (max-width:1200px) {
    .election_page ul.msl-candidates li {
        width: 47%;
        min-height: 850px !important;
    }
}

@media (max-width:726px) {
    .election_page ul.msl-candidates li {
        width: 96%;
        min-height: 86px !important;
    }
}

.election_page ul.msl-candidates li:last-child {
    min-height:0px;
}

ul.msl-candidates li img {
    width: 100%;
    max-height:350px !important;*/
    margin-right: 0px;
    text-align: center;
    margin: 0;
    margin-left: auto;
    display: block;
    margin-right: auto;
    margin-bottom: 10px;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}

@media (max-width:1200px) {
    ul.msl-candidates li img {
        height:auto !important;
        max-height:600px !important;*/
    }
}

@media (max-width:1200px) and (min-width:726px) {
    ul.msl-candidates li img {
        height:auto !important;
    }
}

@media (max-width:726px) {
    ul.msl-candidates li img {
        height:auto !important;
    }
}

#election_candidates a.totop {
    display: block;
    margin: 10px 0 30px;
    clear: both;
}

ul.msl-candidates p span {
    text-align: center;
    display: block;
}

ul.msl-candidates p a {
    font-weight: bold;
    display: block;
    font-size: 16px;
    margin: 10px 0px;
    text-align: center;
    font-size: 18px;
}

/* ELECTIONS PAGE VOTING STATS MODAL */

@media (min-width: 1025px) {
    #votingstats .modal-lg {
        width: 90%;
        margin:0 auto;
        margin-top:20px;
    }
}

#votingstats .modal-header {
    border-bottom: none;
    padding: 25px;
}

#votingstats .modal-header h3 {
    font-size:26px;
    font-weight:bold;
}

#votingstats .close {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #d3d3d3;
    text-shadow: none;
    opacity: 1;
}

@media (max-width: 992px) {
    #votingstats .modal-body {
        padding:0px !important;
    }
}

#votingstats .stats-box h2,
#votingstats .stats-box-demographic h2 {
    font-weight:bold;
    text-align:center;
}

#votingstats .stats-box h3 {
    font-weight:bold;
    font-size:60px;
}


#votingstats .stats-box-demographic {
    text-align:left !important;
}

#votingstats .stats-box-demographic h3 {
    font-weight:bold;
}

#votingstats .group-overall {
    display:none;
}


@media (min-width: 992px) {
    #votingstats .stripes-bg-box-appsopen {
        background-image: url(../png/stripe-bottom-left-400.png);
        background-repeat: no-repeat;
        background-size: 300px;
        background-position: bottom -2px right 0px;
    }
}

/* end of elections widget settings*/

/* Used for Manifesto */

.msl-cand-manifesto {
    display: block;
    background: #357b73;
    color: #fff;
    text-decoration: none;
    padding: 0.5rem;
    border-radius: 3px;
    transition: 0.2sease all;
    cursor: pointer;
    margin-bottom: 1rem;
}

.msl-cand-manifesto:hover {
    text-decoration:none;
    background: #2a605a;
    color: #fff;
}

.hasmanifesto:hover {
    box-shadow:none;
    
}

/*.msl-cand-manifesto:last-child {
    bottom: 2px;
    width: 95%;
    position: absolute;
    margin-bottom: 10px;
}

.msl-cand-slogan {
    font-size: 0.9rem;
    margin: 0;
    margin-bottom: 50px;
}*/

.msl-post ul li h3 {
    font-size: 22px;
    font-weight:bold;
}

#election_review .msl-post-full {
    font-size: 2.3rem !important;
    font-weight: bold !important;
}

.msl-modal-close {
    line-height: 2rem !important;
}
    
section.msl-post h2 a.msl-action {
    font-size: 1.2rem !important;
    background: #df0707 !important;
}


#election_review {
    margin: 100px auto 0;
} 

#election_review > h3 {
    font-weight: bold;
    font-size: 28px;
}

/* Elections Vote */

#election_vote a.votenow {
    background: #6A3;
    color: #ffffff;
    border-radius:40px;
    font-weight: 700 !important;
    transition: 0.2s ease all;
}

#election_vote a.votenow:hover, #election_vote a.votenow:focus {
    background: #9C3;
    border-color: #6a3;
    color: #000;
}

#election_vote .search-wrap input {
    flex-grow: 1;
    padding: 1rem;
    border: 1px solid #ccc;
    border-radius: 40px;
    margin: 0;
    font-size: 18px;
}

#election_vote ul[id*="post-wrapper"] .msl-post-info .msl-post-title {
    font-size: 18px;
}

#election_vote ul[id*="post-wrapper"] li.msl-post, ul.msl-voted li {
    padding: 1.2rem;
}

#election_vote li.msl-post > a.vote-link {
    background: #6A3;
    color: #fff;
    border-color: #360;
    font-size: 18px;
    padding: 1rem 2rem;
    border-radius: 30px;
}

#election_vote li.msl-post > a.vote-link:hover, #election_vote li.msl-post > a.vote-link:focus {
    background: #9C3;
    border-color: #6a3;
    color: #000;
    text-decoration:none;
}

#election_vote li.msl-post > span {
    font-size: 16px;
}

#election_ballot ol.cardlist p.msl-cand-name {
    display: inherit;
    margin: 0;
    margin-left: 10px;
    flex-grow: 1;
}

#election_vote #completion-text {
    background: #3F366F;
    color: #fff;
    text-align: center;
    padding: 2rem;
    border-radius: 40px;
    border: 1px solid #fc0;
    margin: 2.5rem;
}

#election_vote .post_voted {
    font-size:18px;
}

#election_vote .post_voted {
    margin-left: 5px;
    padding: 10px;
    background: #f7f7f9;
    border: 1px solid #ddd;
    font-size: 18px;
    border-radius: 3px;
}

#election_vote .change-vote a {
    background: #F29200;
    color: #000000;
    padding: 10px;
    border-radius: 40px;
    transition: 0.2s ease all;
    margin: 0px 10px;
}

#election_vote .change-vote a:hover, #election_vote .change-vote a:focus  {
    background: #dc8400;
    color: #fff;
    text-decoration:none;
}

@media (max-width:1020px) {
    #election_vote .change-vote {
        display: block;
        margin: 10px;
        margin-left: 0px;
    }
    #election_vote .change-vote a {
        background: #F29200;
        color: #000000;
        padding: 10px;
        border-radius: 40px;
        transition: 0.2s ease all;
        margin: 10px 0px;
    }
}