
/**
 * Table of Contents:
 *
 * 1.0 - Global Styles
 * 2.0 - Homepage Styles
 * 3.0 - Candidate Lists
 * 4.0 - Default Content Pages
 * 5.0 - Candidate Pages
 * 6.0 - Voter Guide Pages
 * 7.0 - Survey Pages
 * 8.0 - Misc Content Pages
 * 9.0 - ReCaptcha - Custom Theme
 * -----------------------------------------------------------------------------
 */

/**
 * 1.0 Global Styles
 * -----------------------------------------------------------------------------
 */
 
.printonly
{
    display: none;
}
 
html, body, form
{
    padding: 0px;
    margin: 0px;
    font-family: "proxima-nova",helvetica,arial,sans-serif;
}

body
{
    height: auto;
    min-height: 100%;
    padding-bottom: 218px;
    font-size: 16px;
}

img
{
    border: 0px;
}

table
{
    border-collapse: collapse;
}

a:hover
{
    color: #d92c33;
}

form input[type='text'], form input[type='email']
{
    font-size: 16px;
}

th,td,tbody
{
    padding: 0px;
    vertical-align: top;
}

h1, h2, h3, h4, h5, h6
{
    font-family: "proxima-nova",helvetica,arial,sans-serif;
}

section h1
{
    font-size: 42px;
    font-weight: bold;
    color: #004776;
}

section h2
{
    font-size: 22px;
    font-weight: bold;
}

section h3
{
    font-size: 18px;
    font-weight: bold;
}

body#page-homepage>header{
	display:none;
}
header
{
    padding-bottom: 10px;
}

header a
{
    color: #004776;
    font-size: 18px;
    font-weight: bold;
}

header h1
{
    margin: 10px;
    margin-bottom: 15px;
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 10px;
    padding-right: 10px;
    text-indent: -5000px;
    height: 95px;
    width: 100%;
    display: block;
}

header h1 a
{
    display: block;
    text-align: center;
    height: 95px;
    width: 100%;
    text-indent: -5000px;
    background: url(/images/voter-guide-home.png) no-repeat center; 
    background-size: contain;
}

form.candidate-search input
{
    margin: 0px;
    border: 1px solid #c8c8c8 !important;
}

@media only screen and (min-width: 1025px)
{
    header .row.links
    {
        margin-top: 35px;
    }
}

header .row.links .columns
{
    margin-bottom: 10px;
}


header .upcomingleader {
    text-align: right;
}

header .upcomingleader h2,
header .upcomingleader h3 {
    margin: 0;
    padding: 0;
}


header .upcomingleader h2 {
    font-size: 18px;
    line-height: 1.1em;
    text-transform: uppercase;
    font-weight: bold;
    color: #004976;
    margin-top: 20px;
}

header .upcomingleader h3 {
    font-size: 28px;
    line-height: 1.1em;
    text-transform: uppercase;
    font-weight: 100;
    color: #ab2328;
}

header .headersearch {margin-top: 10px;}

@media only screen and (max-width: 960px)
{
    header .upcomingleader
    {
        text-align: center;
    }
}
     
#flags
{
    position: absolute !important;
    right: 30px !important;
    top: 20px !important;
    z-index: 10;
    width: 40px;
    float: none;
}

@media only screen and (max-width: 960px)
{
    #flags
    {
        width: 100%;
        position: absolute !important;
        left: 0 !important;
        padding-left: 30%;
        top: 0px !important;
        background: #fff;
        height: 20px;
    }

    #flags a
    {
        float: left;
    }

    header
    {
        padding-top: 20px;
    }
}

#flags a
{
    display: block;
    height: 25px;
    line-height: 12px;
    width: 60px;
    background: #fff;
    padding: 5px;
}

#flags a img
{
    display: none;
}

#flags #English > a:after
{
    content: "English";
    font-family: "proxima-nova", "proxima nova", sans-serif;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    text-align: right
}

#flags #Spanish > a:after
{
    content: "Spanish";
    font-family: "proxima-nova", "proxima nova", sans-serif;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    text-align: right
}

.breadcrumbs
{
    background-color: transparent;
    border: 0px;
    padding-top: 20px;
    padding-bottom: 10px;
    line-height: 20px;
}

.breadcrumbs a,.breadcrumbs span
{
    font-size: 16px;
    line-height: inherit;
    text-transform: none;
}

.breadcrumbs a
{
    text-decoration: underline;
}

a i.fa
{
    vertical-align: middle;
}

a i[class^='icon-large-']
{
    display: block;
    width: 200px;
    height: 200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    background-repeat: no-repeat;
    background-position: center top;
}

[data-toggle]
{
    cursor: pointer;
}

footer
{
    width: 100%;
    padding-top: 40px;
    padding-bottom: 40px;
    position: absolute;
    bottom: 0px;
}
footer .footer-vg-link {
    font-size: 32px;
    color: #fff;
    text-transform: uppercase;
    display: block;
    text-align: center;
    text-decoration: none;
    padding-top: 25px;
    padding-bottom: 25px;
}
footer .org-logo-link{
	display: block;
    text-align: center;
    height: 95px;
    width: 100%;
    text-indent: -5000px;
    background: url(/images/footerLogo.png) no-repeat center; 
    background-size: contain;
}
@media only screen and (max-width: 640px)
{   
        footer {position: inherit !important;}
}

footer, section.blue
{
    background-color: #003056;
}
form.blackalpha{
    padding: 6px;
    border-radius: 5px;
}
section.blackalpha,form.blackalpha{
    background:url(/images/black-alpha-54.png) repeat transparent;
}
section.blue
{
    background-color: #004976;
}

footer a, section.tan a
{
    color: #fff;
}

section.blue a:hover
{
    color: #be750f;
}

footer a
{
    font-size: 14px;
}

footer span
{
    line-height: 50px;
    color: #fff;
}

footer i.icon
{
    display: inline-block;
    width: 140px;
    height: 80px;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
}

section.blue.content-title h1, section.blue.content-title h2
{
    color: #ffffff;
}

section.footerbars
{
    background-repeat: no-repeat;
    background-position: center bottom;
    padding-bottom: 50px;
}

.alert-box.hide
{
    display: none;
}

@media only screen and (max-width: 640px)
{
    .small-left { float: left !important; }
    .small-right { float: right !important; }
    .small-hide { display: none !important; }
    
}

@media only screen and (min-width: 641px)
{
    .medium-left { float: left !important; }
    .medium-right { float: right !important; }
    .medium-show { display: inherit !important; }
}

@media only screen and (min-width: 1025px)
{   
    [class*="block-grid-"] {margin: 0px !important;}  /* Fixes some left / right scroll on phones */
    .large-left { float: left !important; }
    .large-right { float: right !important; }
    .large-show { display: inherit !important; }
}

@media only screen and (min-width: 1441px)
{
    .xlarge-left { float: left !important; }
    .xlarge-right { float: right !important; }
    .xlarge-show { display: inherit !important; }
}

/**
 * 2.0 Homepage
 * -----------------------------------------------------------------------------
 */
 
body.home form input[type='text'], body.home form input[type='email']
{
    border: 0px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}    
 
body.home article
{
    background-image: url(/images/homeBG.jpg);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: cover;
}

body.home article img
{
    margin-bottom: 40px;
    margin-top: 20px;
}

body.home article form label:first-child
{
    color: #fff;
}

body.home article form label.error
{
    color: #f55;
    font-weight: bold;
}

body.home article form input[type='checkbox']
{
    line-height: 21px;
    margin-bottom: 2px;
    margin-right: 4px;
    vertical-align: middle;
}

body.home article form .button
{
    margin-top: 20px;
    background-color: #ffffff;
    color: #a63820;
    font-size: 22px;
    font-weight: bold;
    line-height: 32px;
    vertical-align: middle;
}

body.home article form .button:hover 
{
    background-color: #a63820;
    color: #ffffff;
}

body.home article form .button i
{
    vertical-align: middle;
    margin-right: 15px;
}

body.home section.icons .columns
{
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 30px;
    padding-bottom: 30px;
}

body.home section.icons a
{
    display: block;
    text-align: center;
    border-right: 1px solid #2A80C3;
    line-height: 32px;
    font-size: 20px;
    font-weight: 400;
    color:#fff;
}
body.home section.icons a:link,body.home section.icons a:visited{color:#fff}
body.home section.icons a:focus,body.home section.icons a:hover{color:#fafafa}


body.home section.icons a:last-child
{
    border: 0px;
}

body.home section.icons a i
{
    margin-right: 10px;
}

body.home section.footerbars .columns
{
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 0px;
    padding-right: 0px;
}
body.home{
	background-color:#333;
}
body.home section.dkgray{
	background-color:#333;
}
body.home section.white a
{
    color: #404041;
}
body.home section.dkgray a
{
    color: #fff;
	text-decoration:none;
}
body.home section.dkgray .fa{
	color:#333 !important;
	margin: auto;
}
.home-lg-uc{
	text-transform:uppercase;
	display:block;
	padding:10px;
	font-size:30px;
}
.ballot .home-lg-uc {
  min-height: 112px;
}
body.home section.footerbars a{
	display: block;
    text-align: center;
    font-size: 18px;
    font-weight: 400;
}

i.icon-large-envelope
{
   background-image: url(img/icons/icon-large-envelope.png);
   background-size: 70%;
   
}

i.icon-large-city {
   background-image: url(img/icons/cityicon.jpg);
   background-size: 80%;
   background-position: center center;
}

i.icon-large-download
{
   background-image: url(img/icons/icon-large-download.png);
   background-size: 80%;
}

i.icon-large-questions
{
   background-image: url(img/icons/icon-large-questions.png);
   background-size: 70%;
}

.primaryicons a i 
{
    position: relative;
    top: 0px;
    -webkit-transition: all .35s ease-in;
    -moz-transition: all .35s ease-in;
    -ms-transition: all .35s ease-in;
    -o-transition: all .35s ease-in;
    transition: all .35s ease-in
}
    
.primaryicons a:hover i { top: 6px; }

.secondaryicons { text-align: center; }

.secondaryicons i
{
    font-size: 60px;
    width: 95%;
    display: block;
    height: 130px;
    margin-bottom: 10px;
    background-color: #eee;
    border: 1px solid #d2d2d2;
    padding: 30px 0;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -ms-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}
        
.secondaryicons i.icon-small-blog
{
    background-image: url(img/icons/icon_check_dark.png);
    background-repeat:no-repeat;
    background-position: center center;
}
        
.secondaryicons i:hover, .secondaryicons a:hover i
{
    background-color: #ccc;
}
        
.secondaryicons a:hover { color: #111; }

.form-processing
{
    position: absolute;
    width: 100%;
    left: 0px;
    background-color: #333333;
    opacity: 0.6;
    z-index: 999;
}

.form-processing i
{
    position: absolute;
    left: 50%;
    top: 50%;
    color: #d92c33;
    margin-left: -35px;
    margin-top: -40px;
}

@media only screen and (max-width: 1240px)
{
    body.home article
    {
        padding-left: 20px;
        padding-right: 20px;
    }
    body.home article form .button
    {
        font-size: 16px;
    }
    body.home article form input[type='checkbox']
    {
        line-height: 14px;
    }
    body.home article form input[type='checkbox'] + span
    {
        font-size: 12px;
    }    
}

@media only screen and (max-width: 640px)
{
    body.home article
    {
        padding-left: 0px;
        padding-right: 0px;
    }
}

/**
 * 3.0 Candidate Lists
 * -----------------------------------------------------------------------------
 */

section.candidate-names h4
{
    margin-top: 20px;
    margin-bottom: 0px;
    font-size: 16px;
}

section.candidate-names ul
{
    margin-left: 10px;
    margin-top: 20px;
    margin-bottom: 40px;
}

section.candidate-names h4 + ul
{
    margin-top: 4px;
    margin-bottom: 0px;
}


section.candidate-names ul li
{
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 0px;
    padding-right: 0px;
    line-height: 20px;
}

section.candidate-names h1
{
    margin-top: 0px;
    margin-bottom: 4px;
}

/**
 * 4.0 Default Content Pages
 * -----------------------------------------------------------------------------
 */

section.page-content
{
    margin-top: 40px;
}

section.page-content .columns:first-child > *
{
    margin-left: 12px;
    margin-right: 12px;
}

section.page-content .columns:last-of-type
{
    padding: 5px;
}


.page-content ul {margin: 10px 0 15px;}
.page-content li {margin-left: 25px; list-style-type: square; margin-bottom: 5px;}

/**
 * 5.0 Candidiate Pages
 * -----------------------------------------------------------------------------
 */
 
section.candidate
{
    margin-top: 40px;
}

section.candidate p > img
{
    max-width: 90%;
}

section.candidate .inline-list
{
    line-height: inherit;
    margin-bottom: 0px;
    margin-left: 0px;
    margin-right: 0px;
}

section.candidate .inline-list > li
{
    width: 27px;
    text-align: center;
    margin-left: 0px;
    margin-right: 0px;
    padding-left: 0px;
    padding-right: 0px;
    border-left: 1px solid #c8c8c8;
}

section.candidate .inline-list > li:last-child
{
    border-right: 1px solid #c8c8c8;
}

section.candidate .inline-list > li > a,section.candidate .inline-list > li > sup
{
    display: inline-block;
    top: -2px
}

section.candidate .row.blue
{
    background-color: #004776;
    color: #ffffff;
}

section.candidate .row.blue .inline-list > li
{
    border: 0px;
}

section.candidate .row.blue a
{
    color: #ffffff;
}

section.candidate .row.survey-responses
{
    padding-top: 12px;
    padding-bottom: 12px;
}

.row.survey-responses li > span[data-tooltip]
{
    display: inline-block;
    color: #ffffff;
}

section.candidate .row.survey-responses:last-of-type
{
    margin-bottom: 40px;
}

section.candidate .candidate-info p > span
{
    font-weight: bold;
    margin-right: 6px;
}

@media only screen and (max-width: 640px)
{
    section.candidate .row .inline-list
    {
        margin-top: 12px;
    }
    section.candidate .row .inline-list > li
    {
        width: 37px;
        margin-bottom: 10px;
    }
}

section.candidate .connect-grid, section.candidate .share-widget
{
    line-height: 30px;
}

section.candidate .connect-grid
{
    padding-right: 15px;
}

section.candidate .connect-grid > li
{
    text-align: center;
    padding: 0px;
    padding-bottom: 10px;
    height: auto;
    line-height: inherit;
}

section.candidate .connect-grid > li > a
{
    color: #626366;
}

section.candidate .connect-grid > li > a:hover
{
    color: #005d97;
}

section.candidate .row.connect h2, section.candidate .row.share h2
{
    color: #626366;
}

section.candidate .row.share
{
    margin-top: 20px;
    margin-bottom: 40px;
}

section.candidate div.question-list
{
    display: none;
}

section.voter-guide div.question-list
{
    display: block;
}

.click-to-expand
{
    font-size: 12px;
    line-height: 30px;
}

.commentnote {
    font-weight: bold;
    font-style: italic;
}

.response-legend span
{
    display: inline-block;
    width: 24px;
    text-align: center;
    font-weight: bold;
    margin-right: 10px;
}

section.candidate ul.comments > li, section.candidate ul.notes > li
{
    line-height: 20px;
    margin-top: 10px;
}

section.candidate ul.comments > li > span, section.candidate ul.notes > li > span
{
    font-weight: bold;
}

.row.survey-number-note
{
    padding: 4px;
}

span.question-tip
{
    display: inline-block;
    border-bottom: 1px dotted #ffffff;
}

.question-tip-modal
{
    position: absolute;
    display: none;
    top: auto;
    left: 50%;
    bottom: auto;
    right: auto;
    width: 400px;
    margin: auto;
    min-width: auto;
    max-width: auto;
    margin-left: -200px;    
    background-color: rgb(51,51,51);
    color: #ffffff;
    padding: 20px;
    font-size: 16px;
    line-height: 20px;
}

@media only screen and (max-width: 500px)
{
    .question-tip-modal
    {
        width: 250px;
        margin-left: -125px;        
    }  
}

form.candidate-search
{
    margin: 15px;
}

form.candidate-search .columns
{
    padding: 0px;
}

form.candidate-search input
{
    margin: 0px;
    border: 1px solid #c8c8c8;
}

form.candidate-search .button
{
    margin: 0px;
    line-height: 13px;
    font-size: 13px;
    border: 1px solid #c8c8c8;
    background-color: #ffffff;
    color: #be750f;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    position: relative;
    left: -1px;
    white-space: nowrap;
}

form.candidate-search .button:hover
{
    
    background-color: #be750f;
    color: #ffffff;  
}

form.candidate-search .button .fa
{
    position: relative;
    top: -2px;
}


/**
 * 6.0 Voter Guide Pages
 * -----------------------------------------------------------------------------
 */

#ie7 .largeCheckBox {width: 50px;height: 50px;background-color: #afafaf;}

 
section.content-title h1
{
    line-height: 50px;
}
 
section.content-title .districts
{
    margin-top: 20px;
    margin-bottom: 40px;
}

section.content-title .districts h2
{
    margin-top: 4px;
    margin-bottom: 4px;
}

.voter-guide div.state-office
{
    margin-bottom: 50px;
}


h2 a.surveyExpand
{
    font-size: 14px;
    float: right;
    padding-top: 4px;
}

h2 a.surveyExpand .fa { padding-right: 5px; }

.voter-guide div.question-list
{
    margin-bottom: 30px;
}

.voter-guide div.state-office h1, .voter-guide div.question-list h1
{
    font-size: 24px;
    margin-top: 0px;
}

div.question-list ul li > span
{
    margin-right: 10px;
    font-weight: bold;
}

.panel.guide-menu
{
    padding: 20px;
    background-color: rgb(242,242,242);
    z-index: 2000;
}

.panel.guide-menu ul.state-offices li { margin: 0; padding: 0; }

.panel.guide-menu ul.state-offices, .panel.guide-menu ul.response-legend
{
    margin-bottom: 25px;
}

.panel.guide-menu ul.state-offices li a
{
    padding: 4px;
    text-decoration: underline;
}

.tooltip
{
    width: 400px;
    min-width: auto;
    max-width: auto;
    margin-left: -200px;
}

.tooltip.active
{
    display: inline-block !important;
}

.tooltip > .nub
{
    left: 50%;
    margin-left: -5px;
}

@media only screen and (max-width: 500px)
{
    .tooltip
    {
        width: 250px;
        min-width: auto;
        max-width: auto;
        margin-left: -125px;        
    }
    .tooltip > .nub
    {
    
    }    
}

.row.no-response
{
    margin-top: 10px;
    padding-top: 10px;
    background-color: rgb(242,242,242);
    border: 1px solid rgb(216,216,216);
}

.row.no-response h5
{
    line-height: 15px;
    color: #626366;
}

.row.no-response p
{
    line-height: 15px;
    color: #626366;
}

.row.no-response .button
{
    margin-top: 20px;
}
 
/**
 * 7.0 Survey Pages
 * -----------------------------------------------------------------------------
 */
 
section.survey ul
{
    text-align: left;
    margin-left: auto;
    margin-right: auto;
    max-width: 98%;
} 
 
section.survey ul li
{
    line-height: 18px;
    margin-top: 20px;
    margin-left: 25px;
    text-indent: -31px;
}

section.survey ul li > span
{
    display: inline-block;
    width: 25px;
    font-weight: bold;
    text-align: right;
    margin-right: 6px;
}


/**
 * 8.0 Misc Content Pages
 * -----------------------------------------------------------------------------
 */
 
 /* Common Questions landng page:  .page-id-28  */
 
 .page-id-28 .page-content
 {
     margin-bottom: 25px;
 }
 
.page-id-28 .page-content li a
{
    display: block;
    font-size: 20px;
    padding: 50px 20px;
    width: 100%;
    height: 100%;
    text-align: center;
    font-weight: bold;
    background: #eee;
    border: 1px solid #d7d7d7;
}


/* FAQ pages */
.page-id-28 li { margin-left: 0px; }

.faqitems
{
    margin-bottom: 20px
}
.faqitems h3
{
    margin: 0 0 5px 30px;
    text-indent: -12px;
    color: #005d97;
}
.faqitems h3 i
{
    padding-right: 5px
}
.faqitems .item_status_closed h3
{
    color: #005d97;
    font-weight: 100;
}
.faqitems .item_status_closed h3 i.closed
{
    display: inline-block
}
.faqitems .item_status_closed h3 i.open
{
    display: none
}
.faqitems .item_status_open h3 i.open
{
    display: inline-block
}
.faqitems .item_status_open h3 i.closed
{
    display: none
}
.faqitems p
{
    margin: 0 0 0 35px
}
.faqitems p a.top
{
    font-size: 12px;
    line-height: 30px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1.5px;
    color: #00A99C;
    display: block;
    padding-bottom: 25px;
}

/* Download Items Grid */
.downloadable_items li
{
        height: 220px;
        padding: 25px;
        margin-left: 0px;
        overflow: hidden;
}
        
.downloadable_items li a
{
    display: block;
    text-align: center;
}
    
.downloadable_items li a img
{
    height: 145px;
    width: auto;
    margin: 0 auto 10px;
}
    
.downloadable_items li a p
{
    text-transform: capitalize;
    font-weight: bold;
    font-size: 13px;
}
    
/**
 * 9.0 ReCaptcha - Custom Theme
 * -----------------------------------------------------------------------------
 */
 
 #recaptcha_widget
 {
    margin-left: auto;
    margin-right: auto;
 }
 
 #recaptcha_widget label
 {
    margin-top: 10px;
    margin-bottom: 4px;
 }
 
 #recaptcha_image, #recaptcha_challenge_image
 {
    width: 100%;
    max-width: 100%;
 }
