/*
 Theme Name:   UAW249
 Theme URI:    https://www.spiral-staircases.com
 Description:  UAW249 theme built on the Strategy Platform.
 Author:       StrategyLLC
 Author URI:   https://strategynewmedia.com
 Template:     Strategy-Platform
 Version:      2.5
*/
html, body {
	font-family:'Muli',sans-serif;
	font-size:18px;
	font-weight:400;
}
header {
    background:#fff;
}
.menu li a {
	color:#000;
	font-weight:700;
	padding:1em 1em;
}
.menu li a:hover, .menu li:hover > a {
    background:#1d4d90;
    color:#fff;
}
.menu li.current-menu-item a, .menu li.current-menu-parent a {
    background:transparent;
    color:#1d4d90;
}
ul.sub-menu {
	border-top:0;
	top:3em;
}
.sub-menu li {
    width:300px;
}
.menu .sub-menu li a {
    background:#1d4d90;
    color:#fff;
    width:100%;
}
.menu .sub-menu li a:hover, .menu .sub-menu li.current-menu-item a, .menu .sub-menu li.current-menu-parent a {
    background:#000;
}
.widget_nav_menu .menu li a {
    display:block;
    padding:0;
    color:#1d4d90;
    background:none;
}
.widget_nav_menu .menu li a:hover {
    color:#000;
}
#top-button {
    background-color:#d71518;
}
footer {
    background:#1d4d90;
}
.topbar, .bottom-footer {
    background:#000;
    padding:.25em 0;
}
a:hover img {
    opacity:.8;
}
footer a {
    color:#fff;
	font-weight:500;
}
footer a:hover {
    color:#1d4d90;
}
.widget-title {
    font-weight:700;
    margin:0 0 .5em 0;
    color:#1d4d90;
    font-size:28px;
}
.widget-area li {
    border-bottom:0;
}
.widget-area li a {
    text-decoration:none;
    font-size:18px;
    color:#696969;
}
.widget-container .textwidget a:hover, .general-information a:hover, .widget-area li a:hover {
    color:#1d4d90;
}
.top-footer .textwidget p, .top-footer .textwidget a {
    color:#fff;
	line-height:1.25;
}
.top-footer .textwidget a {
	color:#fff;
}
.top-footer .textwidget a:hover {
    text-decoration:underline;
    color:#fff;
}
/* Typography */
h1, h2, h3, h4, h5, h6, .hero-title, .site-title, .page-title {
	font-family:'Muli',sans-serif;
    margin:0 0 1.5rem 0;
	font-weight:700;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .site-title a {
    text-decoration:none;
}
h1, .hero-title, .site-title, .page-title {
	font-size:55px;
	color:#1d4d90;
}
.site-title a {
	color:#000;
}
.site-title a:hover {
    color:#1d4d90;
}
h2 {
	font-size:44px;
	color:#696969;
}
h3 {
	font-size:40px;
	color:#1d4d90;
}
h4 {
	font-size:36px;
	color:#1d4d90;
}
h5, h6 {
	font-size:30px;
	color:#696969;
}
h6 {
	color:#000;
}
p, .archive-excerpt, .accordion-content {
    line-height:2;
    margin:0;
}
.accordion-content p {
    margin-bottom:1em;
}
p, .content p, .entry p, .entry p:last-of-type {
    margin-bottom:1.25rem;
}
.archive-excerpt,
.entry .archive-description p {
    margin:1em 0 0 0;
}
.archive-description h1 {
    margin: 0;
}
.featured-excerpt p {
    text-align:justify;
	margin:0;
}
.entry ul {
    list-style:none;
}
.entry ul, .entry ol {
    padding:0 0 0 3em;
    margin:2em 0;
}
.entry ul li, .entry ol li {
	line-height:1.5em;
    margin-bottom:1em;
}
.entry ul li:before {
    color:#1d4d90;
    left:-.75rem;
    font-size:.75rem;
}
.entry ul li:last-child {
    margin-bottom:0;
}
a {
	background-color:transparent;
	color:#1d4d90;
	font-weight:700;
	overflow:hidden;
	text-decoration:none;
}
a:hover,
.social-icons a:hover {
    color:#1d4d90;
	text-decoration:underline;
}
a:focus {
    outline:thin dotted;
}
.button, button, input[type="button"], input[type="submit"], input[type="reset"], a.load-more, .hover-text {
	font-family:'Muli',sans-serif;
    padding:.75em 1em;
    max-width:400px;
    font-size:20px;
    font-weight:600;
    background:#1d4d90;
    text-align:center;
    color:#fff;
    text-decoration:none;
    margin:1rem 0;
    cursor:pointer;
    border:0;
    line-height:1.25;
    letter-spacing:1px;
	text-transform:uppercase;
}
.button:hover, a.button:active, a.button:focus, a.load-more:hover, a.load-more:active, a.load-more:focus, a:hover .hover-text {
    background:#000;
	color:#fff;
	text-decoration:none;
}
a:hover .hover-text {
    background:#1d4d90;
}
.accordion-content .button {
	background:#000;
}
.accordion-content .button:hover {
    background:#d71518;
}
.accordion-content ul li:before {
    color:#f5ea3d;
}
blockquote {
    font-size:1.25em;
    margin:0;
    position:relative;
    padding:1.5rem 0 0 3rem;
    border-top:solid 4px #696969;
}
blockquote:before {
    content:"\201C";
    position:absolute;
    left:.5rem;
    font-size:60px;
    height:100%;
    top:1rem;
}
.dropcap {
    float:left;
    color:#696969;
    height:70px;
    font-weight:700;
    font-size:72px;
    line-height:1;
    margin:0 .75rem 0 0;
}
.nmb {
    margin-bottom:0;
}
hr {
    border-bottom:dotted 2px #c7d6e4;
    margin:2.5em 0;
}
pre {
	font-family:Courier,monospace;
	font-size:1em;
    background:#eaf1f5;
    max-width:100%;
    overflow:auto;
    padding:2rem;
}
table thead {
    background:#eaf1f5;
}
table thead th {
    font-weight:bold;
}
table td, table thead th, table th {
    padding:10px;
    text-align:left;
}
table td, table th {
    border-bottom:solid 1px #eaf1f5;
}
table tr:nth-child(even) {
    background:#eaf1f5;
}
.search-form {
	display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	font-family:'Muli',sans-serif;
}
.search-field::placeholder {
	color:#000;
}
.search-submit {
    background:#1d4d90;
    color:#fff;
    border:0;
    padding:0;
	width:3rem;
}
.search-submit:hover {
    background:#1d4d90;
}
.pilau-tabs.ui-tabs {
    padding:.5em;
    background:#eaf1f5;
}
.accordion-title, .accordion-content {
    color:#fff;
    background:#000;
}
.accordion-title {
    font-size:20px;
    margin:1rem 0 0 0;
	text-transform:uppercase;
    font-weight:700;
    letter-spacing:1px;
}
.accordion-content {
    padding:1rem;
    background:#1d4d90;
}
.accordion-content a {
    color:#fff;
	text-decoration:underline;
}
.accordion-content a:hover {
    color:#f5ea3d;
}
.post-meta a, .post-meta span, .post-cat a, .post-cat span {
    text-decoration:none;
    color:#1d4d90;
    font-weight:500;
}
.post-meta a:hover, .post-cat a:hover {
    color:#1d4d90;
}
.archive-description, figcaption.wp-caption-text {
    background-image:none;
    background-color:#f2f2f2;
}
.banner {
    background-image:none;
}
.comments-title,
.woocommerce-Reviews-title,
#reply-title {
    font-size:2rem;
    color:#1d4d90;
    margin:0 0 .5rem 0;
    line-height:1.25;
}
.comment a {
    color:#1d4d90;
}
#comment {
    width:100%;
    max-width:100%;
    text-align:left;
    min-height:100px;
    min-width:100%;
    padding:.5em;
    background-color:#f2f2f2;
    color:#1d4d90;
    border:0;
    -webkit-appearance:none;
    box-shadow:inset 0 1px 1px rgba(0,0,0,.125);
}
/* Note: Change if they have other comment systems */
#all-comment-providers,
#comment-providers-select-message {
    display:none;
}
/* GF Custom */
.gform_widget .gform_wrapper ul {
    border:1px solid #000;
}
.gform_widget .gform_wrapper ul ul {
    border:0;
}
.gform_wrapper .gform_body li.gfield_html,
.gform_wrapper .gform_body li ul li {
    margin:0;
	padding:0;
}
/* Place Customizations Here */
.entry#has-sidebar {
    width:70%;
}
aside {
    width:25%;
}
.newsletter form input::placeholder {
	font-size:16px;
	color:#000;
	text-transform:uppercase;
	font-weight:700;
}
.form-heading {
    display:block;
    background:#1d4d90;
    color:#fff;
    padding:1rem;
    text-align:center;
    font-size:24px;
    font-weight:700;
}
.grid-container {
    max-width:100%;
    width:100%;
}
.menu ul, ul.menu {
    font-size:16px;
	list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);
}
.in-header .social-icons {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:end;
	-ms-flex-pack:end;
	justify-content:flex-end;
	z-index:9;
    position:relative;
}
.in-header .extra {
    color:#000;
    margin-right:.5em;
}
a.extra:hover {
    color:#1d4d90;
}
.top-footer .alignright {
	width:auto;
}
.general-information.in-header {
    width:90%;
    margin:0 auto;
	top:5px;
}
.full-width .fluid-row {
    width:90%;
}
.full-width {
	background-color:#1d4d90;
	padding:3rem 0;
}
.full-width * {
    color:#fff;
}
.quote, .quote p {
    text-align:center;
    font-size:46px;
    line-height:1.25;
}
.banner {
    padding:1rem 0;
    background:#1d4d90;
    color:#fff;
}
.newsletter form input, .newsletter form .button {
    font-family:'Muli',sans-serif;
}
.newsletter form .button {
    background:#000;
    text-transform:uppercase;
	max-width:105px;
}
.newsletter form .button:hover {
    background:#1d4d90;
}
.full-width .fluid-row:only-child .fluid-column {
    margin:0;
}
.entry, aside {
    padding:3rem 0 0;
}
.container, .full-width .fluid-row, .boxed .banner, .boxed .full-width, .boxed .hero {
    max-width:1100px;
}
.soliloquy-outer-container .soliloquy-container {
    margin-bottom:0!important;
}
/* Custom Post Type Shortcode Styling */
.single-3d-flip-book .full-size {
    max-width:1100px;
    width:90%;
    margin:0 auto;
}
.post-type-container {
    width:100%;
    height:auto;
    clear:both;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    -ms-flex-flow:row wrap;
    flex-flow:row wrap;
    margin:0;
    padding:0;
    position:relative;
}
.post-type-container .post {
    -webkit-box-flex:1;
    -ms-flex:1;
    flex:1;
    display:inherit;
    position:relative;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-flow:column wrap;
    flex-flow:column wrap;
    overflow:hidden;
}
.overlay-link {
    position:absolute;
    top:50%;
    width:100%;
    transform:translate(0,-50%);
    color:transparent;
    margin:0;
    text-align:center;
	font-size:22px;
    text-transform:uppercase;
    padding:0 1rem;
}
.post-type-container a:hover .overlay-link {
	color:#fff;
}
.overlay-color {
    position:absolute;
    width:100%;
    height:100%;
    opacity:0;
    background-color:rgba(10,45,95,.8);
}
a:hover .overlay-color {
    opacity:1;
}
.post-type-container.halves .post {
    -ms-flex-preferred-size:47.5%;
    flex-basis:47.5%;
    max-width:47.5%;
    margin:0 5% 3rem 0;
}
.post-type-container.thirds .post {
    -ms-flex-preferred-size:32.5%;
    flex-basis:32.5%;
    max-width:32.5%;
    margin:0 1% .5rem 0;
}
.post a {
    display:block;
}
.post-type-container img {
    width:100%;
}
.halves .post:nth-child(2n),
.thirds .post:nth-child(3n) {
    margin-right:0;
}
.bottom-footer .extra {
    display:none;
}
/* Footer Fix */
.footer-padding {
    min-height:177px;
}
/* From Goddard */
.home .hero {
    min-height:600px;
}
.general-information, .general-information p, .general-information a.extra {
    font-size:20px;
}
.social-icons .fa-layers {
    width:2.25em;
    height:2.25em;
}
.social-icons .fa-circle {
    font-size:2.25em;
}
a svg.fa-circle {
    color:#000;
}
a:hover svg.fa-circle {
    color:#1d4d90;
}
.social-icons .fa-layers svg:not(.fa-circle) {
    color:#fff;
    font-size:1.375em;
}
.top-nav.container {
    padding:.5rem 0;
}
.navigation.desktop {
    padding-top:4rem;
}
button.tcon.tcon-menu--xbutterfly {
    margin-top:3rem;
}
.hero-inner {
    vertical-align:bottom;
}
.hero-title,
.soliloquy-outer-container .soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
    font-size:32px;
    color:#fff;
    text-align:center;
    display:block;
    margin:0;
    padding:1.75rem 0;
    background:rgba(10,45,95,.8);
    text-shadow:none;
	font-weight:400;
}
.hero-title strong,
.soliloquy-outer-container .soliloquy-container .soliloquy-caption .soliloquy-caption-inside strong {
    font-size:40px;
    font-weight:800;
}
.hero-title * {
    margin:0;
	line-height:1.25;
}
.fluid-column, li.product {
    margin-right:2em;
}
img.aligncenter {
    width:100%;
}
a.images {
    display:block;
    text-decoration:none;
}
.hover-text {
    font-size:30px;
    width:100%;
    display:block;
    margin:0;
    max-width:100%;
    background:#000;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:400;
	padding:.25em 1em;
}
a.images:hover .hover-text {
    background:#1d4d90;
}
a.images:hover img {
    opacity:1;
}
.top-footer .textwidget p:first-child {
    margin-bottom:1em;
}
footer .fluid-column:last-of-type {
    text-align: right;
}
footer .widget_media_image img.size-full {
    margin:1em auto;
}
footer .fluid-row:nth-of-type(n) {
    margin:1em 0 1em 0;
}
footer .fluid-column, footer .fluid-column:last-of-type {
    margin-bottom:0;
}
.tcon-plus::before, .tcon-plus::after {
    background:#fff;
}
.half-centered {
    width:60%;
    margin:0 auto;
}
ul.split {
    display:inline-block;
    width:150px;
	margin:1em 0;
}
.hero {
    min-height:55vh;
}
.envira-justified-gallery > div > div > a > .caption {
    opacity:.7!important;
    text-align:center;
    font-size:14px;
}
body .overlay-base_dark .envirabox-wrap .envirabox-title {
    padding:20px;
    font-size:24px;
    line-height:24px;
}
.desktop .search-field {
    width:30%;
}
.d-only {
	display:block;
}
/* Section Menu */
.section-submenu li {
    padding:0;
    margin-bottom:1em;
}
.section-submenu .button {
    color:#fff;
    background:#000;
    font-size:14px;
    text-align:left;
    margin:0 0 1rem 0;
}
.section-submenu a.button:hover {
    background:#1d4d90;
    color:#fff;
}
@media only screen and (max-width:1100px) {
ul.menu {
    font-size:14px;
}
}
@media only screen and (min-width:769px) {
.newsletter form input {
    width:300px;
}
}
/* End Customization */
@media only screen and (max-width:980px) {
/* Place Customizations Here */
footer .textwidget,
.top-footer .alignright,
.top-footer .alignleft,
.top-footer .aligncenter,
.top-footer .alignnone {
    text-align:center;
	margin:0 auto;
}
.d-only {
	display:none!important;
}
.banner.newsletter {
    position:static;
}
img.custom-logo {
    width:75%;
}
.hero {
    min-height:30vh;
}
/* End Customization */
}

@media only screen and (max-width:768px) {
.post-type-container.halves .post,
.post-type-container.thirds .post {
    -ms-flex-preferred-size:100%;
    flex-basis:100%;
    max-width:100%;
    margin:0 0 3rem 0;
}
aside, .boxed aside, .entry#has-sidebar {
    width:100%;
    margin-left:0;
	padding:2em 0 0 0;
}
}

@media only screen and (max-width:980px) {
ul.menu li a {
	display:block;
	color:#fff;
	background:#1d4d90;
	text-decoration:none;
	text-transform:uppercase;
	font-weight:500;
	width:100%;
	padding:.75em 5%;
	border-top:1px solid #000;
}
ul.menu .sub-menu a, ul.menu li .sub-menu li a {
	background:#1d4d90;
	padding:.75em 10%;
	width:100%;
}
ul.menu a:hover, ul.menu li.current-menu-item a, ul.menu li.current-menu-parent a, ul.menu .sub-menu li.current-menu-item a {
	background:#000;
	color:#fff;
}
/* Place Customizations Here */
.half-centered, ul.split {
    width:100%;
    display:block;
}
.half-centered {
    width:60%;
}
.home .hero {
    min-height:250px;
}
.hero-title,
.soliloquy-outer-container .soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
    font-size:20px;
}
.hero-title strong,
.soliloquy-outer-container .soliloquy-container .soliloquy-caption .soliloquy-caption-inside strong {
    font-size:26px;
}
.fluid-column, li.product {
    margin-right:0;
}
.quote, .quote p {
    text-align:center;
    font-size:30px;
    line-height:1.25;
}
/* End Customization */
}
@media only screen and (max-width: 480px) {
h1 {
	font-size:2rem;
}
h2, h3 {
	font-size:1.75rem;
}
h4, h5, h6 {
	font-size:1.5rem;
}
/* Place Customizations Here */
.entry ul, .entry ol {
    padding:0 0 0 1.5em;
    margin:1em 0;
}
/* End Customization */
}