@charset "UTF-8";
/* Web Solutions 4.0 Compatible */

h1, h2, h3, h4, h5, h6 {line-height: 120%}
h1 {font-size: 1.75rem;}
h2 {font-size: 1.65rem;}
h3 {font-size: 1.5rem;}
p {font-size: 1em; line-height: 1.5; margin-bottom: 1.5em}
.content ul {margin-bottom: 1em}
.content ul li {font-size: 1em; margin-top: 1em; line-height: 1.5}
.content ul li:before {left: 0.5em}

/* addon classes */
.twoCol, .threeCol, .resCol{
-webkit-column-rule:1px outset rgba(0,0,0,.15);
   -moz-column-rule:1px outset rgba(0,0,0,.15);
        column-rule:1px outset rgba(0,0,0,.15);
-webkit-columns: auto;
   -moz-columns: auto;
        columns: auto;
-webkit-column-width: 13em;
   -moz-column-width: 13em;
        column-width: 13em;}

/* list */
.content ul li {padding-left: 1.5em;}
/* forms */
.formTable, .formTable table{width:100%;display: block}
.formTable tbody{display: block}
.formTable tr{display: block}
.formTable td{display: block;width:100%;padding: 0}
.formTable input[type="text"], .formTable input[type="password"], .formTable input[type="tel"], .formTable input[type="number"], .formTable input[type="email"], .formTable input[type="url"], .formTable textarea{margin-bottom:1em}

/* nav */
#navContainer{position: fixed;left: 100%;top:0; height: 100%; overflow: auto; padding-bottom: 3em; bottom:0;width: 75%;background-color:#182837;z-index:4;-webkit-transition: left 200ms ease;transition: left 200ms ease}
.slideNav #navContainer{left: 25%; box-shadow: 0 0 120px 80px rgba(255,255,255,0.95)}
#navContainer nav{display: inline}
#navContainer ul{display: block;float: left;width: 100%;margin: 0;padding-left: 0}
#navContainer li{display:block;float: left;width: 100%; position: relative}
#navContainer #mainnav>ul>li{border-bottom: 1px solid rgba(255,255,255,0.25)}
#navContainer #mainnav>ul>li>a{color: #F1C40F; font-weight: 600;}
#navContainer #mainnav>ul>li>ul>li>a,
#navContainer #mainnav>ul>li>.megaMenu>ul>li>a{color: #fff; font-weight: 600;}
#navContainer a, #navContainer .menu{color:#ccc;line-height:3em;padding:0 1rem;display:block;float: left;width: 100%}
#navContainer li li a{line-height: 2.25em; font-size: 1.125em}
#navContainer .menu:before {content: '\2039';position: relative;top: -1px; left: -4px}
#navContainer a:hover,#navContainer .menu:hover,
#navContainer #mainnav>ul>li.on>a{color: #3498DB}
#navContainer li.open{background-color: rgba(0,0,0,0.25)}
#navContainer li>span{color: #fff; display: block; transform: rotate(90deg); position: absolute; right: 0; top: 0; line-height: 3em; width: 3em; text-align: center; -webkit-transition: transform .2s ease; transition: transform .2s ease;}
#navContainer li>span:hover, #navContainer li.on>span{opacity: .3}
#navContainer li>span:before{content: "\25B8"}
#navContainer li.open>span{transform: rotate(-90deg)}
#navContainer ul ul {font-size: .8em;}
#navContainer ul ul a {padding-left: 1.5rem; line-height: 130%; padding-top: 0.5em; padding-bottom: 0.5em;}
#navContainer ul ul ul a {padding-left: 2.25rem; position: relative}
#navContainer ul ul ul a:before {content: "-"; position: absolute; left:1.75rem}
#navContainer #mainnav>ul>li>.megaMenu>ul>li{padding: 0.5em 0}
#navContainer #mainnav>ul>li>.megaMenu>ul>li>ul>a:before{content: "-"}

#mobilenav{background-color: #3498DB; border-bottom: 1px solid #fff; float: left;width: 100%;text-align: center;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;}
#mobilenav a, #mobilenav span{color: #fff;line-height: 3em; text-align: center;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;}
#mobilenav a:hover, #mobilenav span:hover{color: #fff;background-color:#f03c5e}
#mobilenav *+*{border-left: 1px solid #fff}
.hamburger{height: 2em;width: 2em;display: block;position: fixed;right: 0;top:0;opacity: .5;background: url(/images/m/hamburger.svg);background-size: cover;z-index:1;opacity: 0}
.hamburger.on{opacity: .3}
#mainnav p {margin: 0;padding: 0;display: none}
#mainnav .search input {float: right;display: inline-block;background-color: #fff;width: calc(100% - 50px);border: none;border-radius: 0;height:3rem}
#mainnav .search input::-webkit-input-placeholder {font-style: italic;color: #aaa}
#mainnav .search input::-moz-placeholder{font-style: italic;color: #aaa}
#mainnav .search button {float: left;display: inline-block;width:50px;padding-left: 0;padding-right: 0;height: 3rem;border-radius: 0}
#mainnav .search button:after {content: '\203A';position: relative;top: -1px; left: -2px}
#mainnav .search p {display: none}

#sidenav ul {margin: 0}

/* content */
.photoright{margin:0 0 .75em 1em;}
.photoleft{margin:0 1em .75em 0;}
#intHeader {display: none}
.breadcrumb {margin-top: 1em}
main>.wrap{padding-top:1em;padding: 0 1em}
main>div>aside {margin: 4em 0 1em}

#alertApp h2 {font-size: 1rem;color: #fff}

/* main */
main{}
#brand {margin: .5rem auto}

/*Homepage */
#homeEvents>div>h2 {text-align: center; display: block}
#homeTop h2 {color: #D3D4D8;font-style: italic;font-weight: 400;line-height: 1.25;font-size: 1.2rem}
#homeTop h2 span {font-style: normal;color: #fff;font-weight: 700;font-size: 1.75rem}
#homeTop:after {height: 60%;width: 200px;background-position: center}
.callBub {width: 100%;padding: 0 4em}

#homeCallBubbles {padding: 3em 1em;}

#homeCallBubbles .wrap {
  max-width: 40em;
  --ws-column-count: 3;
  --ws-gap: clamp(1.25rem, 0.807rem + 1.97vw, 2rem); /* 360 - 970 */
}

#homeCallBubbles p {font-size: 1rem;}
.homeAnnts {width: 100%;padding: 1em 0}
#homeAnnounce p {margin: 0.25rem 0 0}
#homeAnnounce>div:nth-child(2) {padding: 3em .5em}
#homeAnnounce .gldBtn {margin-top: 1.5em}

#homeEvents #calBtns .evtBtn {margin-top: 1em}
#homeEvents {padding: 3em 1em; text-align: center}
#homeEvents h1 {text-align: center}
#homeEvents i {padding: 0 .75em; font-size: 1.25em}
#homeEvents section h2 {font-weight: 600; color: #F05D5D; font-size: 1em;}
#homeEvents #calBtns .evtBtn {margin: 2em 0 0; font-size: 0.8em; padding: 1em 1em 1em 3.5em;}
#homeEvents #calBtns .evtBtn+.evtBtn {margin: 0.75em 0}
.homeCalDay li:before {display: none}
.homeCalDay a {color: #F05D5D;line-height: 120%;display: block;margin: 0.25em 0;}
.homeCalDay a time {margin: 0.5em 0 0}
.homeCalDay h3 {padding-bottom: 5px; border: 0; margin:0; background: #D3D4D8;}
.homeCalDay { width: 100%; padding: .5em 1em; overflow: auto; float: none; display: block; margin-bottom: 1em;}
#homeEvents .wrap {overflow: auto}

.newsItem {width: 100%;padding-bottom: 1em}
#homeNews {padding: 3em 1em 4em;}
#homeNews .wrap {padding: 0.25em 0 2em}
#homeNews .gldBtn {position: relative; transform: none; left: auto}
#homeNews article {width: 100%}
#homeNews article+article {margin-top: 2em}
.newsItem img {margin-bottom: 0.5em}

#homePrograms {padding: 3em 1em 4em}
#homePrograms .turBtn {margin-top: 2.5em}
.progCallout {width: 100%; display: block; margin: 0 0 1em;}
#homeWel {padding: 2.5em 1em}
body>footer{padding: 2em 0 0 0;}

#alertApp {position: relative}

.tax-dollar-calc label,
.tax-dollar-calc label:nth-child(2) {display: block; width: 100%; text-align: center; padding: 0}
.tax-dollar-calc [type="submit"] {width: 100%}

#chart1 {display: none}

.mobileTable th, .mobileTable tr.mobileHide {display: none}
.mobileHide {display: none !important}
.mobileTable {margin-bottom: 1em}
.mobileTable tr {display: block; width: 100%; border-top: 1px dashed #ccc; padding:1em 0; overflow: auto;}
.mobileTable td {display: block; padding: 0.125em 0; width: 100% !important; text-align: right; float: left}
.mobileTable td:before {content: attr(data-attribute)":"; margin: 0 1em 1em 0; float: left; opacity: 0.7; font-size: 0.875em}
.mobileTable td.total:before {display: none}
.mobileTable + script + hr {display: none}

.library .topLinks {overflow: auto; margin: 2em 0}
.library .topLinks .button {display: block; width: 49%; margin: 0; float: left; text-align: center; padding: .4em 1em; background: #A10301; border: 1px solid transparent;}
.library .topLinks .button+.button {margin-left: 2%}
.library .topLinks .button:after {display: none}


/* footer */
body>footer #subFooter {padding: 1.25em 1em 0}
#subFooter .left,
#subFooter .right {display: block; width:100%; text-align: center; float: left; clear: both}
#subFooter .left a[href="/translation-disclaimer/"] {display: block; margin-top: 0.75em}
#subFooter .right>a {margin: 0.75em 0.25em 2em; display: inline-block;}
body>footer .fatFooter+.wrap nav {display: block}
body>footer .wrap{
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
#web-solutions-exposure{
	-webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
}
body>footer .wrap nav a+span:before {content: "|"; margin: 0 0.5em}


/* MODAL ------------------------------ */
.modal-content {
  padding: 2rem;
  top: 1rem;
  -webkit-transform: translate(-50%,0);
  -ms-transform: translate(-50%,0);
  transform: translate(-50%,0);
  width: 45rem;
}

/* 500px */
@media (max-width: 31.25em) {
  #homeCallBubbles .wrap {
    --ws-column-count: 2;
  }

}


/* 400px */
@media (max-width: 25em) {
  #homeCallBubbles .wrap {
    max-width: 12em;
    --ws-column-count: 1;
  }

}
