/* Minification failed. Returning unminified contents.
(50,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1821,23): run-time error CSS1038: Expected hex color, found '#0000'
(1835,33): run-time error CSS1046: Expect comma, found '0'
(1835,37): run-time error CSS1046: Expect comma, found '/'
 */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
:root {
    --pink: #A6144B;
}
body {
	font-size:15px;
	font-family: Arial, Helvetica, sans-serif;
	color: #666;
    background:#fff;
    margin:0;
    line-height:1.3em;
}

#right-nav {
    float:right;
    width:300px;
    margin-left:20px;
}
#right-nav + .grid {
    clear:none;
}
h1 {
    color:#A6144B;
    font-family:serif;
    font-size:24px;
    line-height:130%;
}
h1 span, h2.pink span {
    color:#025E73;
}

h2 {
    font-size: 20px;
    color: #A5134B;
    margin: 10px 0;
    line-height: 120%;
    font-family: serif;
}

ol {
    list-style:decimal;
    padding-left:20px;
}
ol li {
    list-style-type:decimal;
    background:none;
    padding:0.25em 0;
}

h3  {
    font-size:20px;
    color:#005E72;
    font-family:serif;
        line-height: 120%;
    margin:10px 0;
}
hr {
    background:#ccc;
    border-style:solid;
    border-color:#ccc;
    margin:2rem 0;
}
.right-nav {
    font-size: 14px;
}
.flex {
    display:flex;
}
.pt-3 {
    padding-top: 1rem;
}
.pt-2 {
    padding-top: 0.5rem;
}
.py-4 {
    padding: 1.5rem 0;
}
.flex-even-columns {
    display: flex;
    flex-wrap: wrap;
}
.flex-even-columns > * {
    flex: 1;
    justify-content: space-between;
    padding: 0 20px;
}
.flex-even-columns > *:first-child {
    padding-left:0;
}
.flex-even-columns > *:last-child {
    padding-right: 0;
}

.flex img, .flex-even-columns img {
    max-width: 100%;
}
img.pink-shadow {
    box-shadow: 20px 20px #701a33;
    margin-right:20px;
    margin-bottom:20px;
}
img.white-shadow {
    box-shadow: 20px 20px #fff;
    margin-right: 20px;
    margin-bottom: 20px;
}


.right-nav h2 {
    font-size: 18px;
}

/* right nav / training nav */

.rn-section {
    margin-bottom: 22px;
    padding-bottom: 22px;
}

.rn-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.rn-heading {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: #A6144B;
    margin: 0 0 12px 0;
    padding-bottom: 8px;
    border-bottom: 1px solid #E7CECE;
}

.rn-map {
    width: auto;
    max-width: 100%;
    max-height: 105px;
    display: block;
    margin-bottom: 10px;
    border-radius: 4px;
    object-fit: cover;
}

.rn-media {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.rn-seal {
    width: 58px;
    height: auto;
    flex-shrink: 0;
    border-radius: 3px;
}

.rn-media > div {
    flex: 1;
    min-width: 0;
}

.rn-link-more {
    display: inline-block;
    font-size: 13px;
    color: #025E73;
    font-weight: 600;
    margin-top: 6px;
    text-decoration: none;
    transition: color 0.15s ease;
}

.rn-link-more:hover {
    color: #A6144B;
}

.rn-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.rn-links li {
    padding: 0;
    margin: 0;
    background: none;
}

.rn-links a {
    font-size: 14px;
    color: #025E73;
    text-decoration: none;
    transition: color 0.15s ease;
    line-height: 1.3;
}

.rn-links a:hover,
.rn-links .rn-link-more:hover {
    color: #A6144B;
}

.rn-training-panel {
    background: #f8f9f9;
    border: 1px solid #e4ecee;
    border-radius: 8px;
    padding: 14px !important;
}

.rn-training-media {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.rn-training-media img {
    width: 200px;
    height: auto;
    flex-shrink: 0;
    border-radius: 5px;
    box-shadow: 0 1px 0 rgba(0,0,0,0.08), 0 8px 18px rgba(2,94,115,0.08);
}

.rn-training-media span {
    display: block;
    color: #666;
    font-size: 12px;
    line-height: 1.35;
    margin-top: 3px;
}

.rn-training-primary {
    color: #025E73;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
}

.rn-training-primary:hover {
    color: #A6144B;
}

.rn-training-links {
    gap: 7px;
}

.rn-training-links a {
    display: block;
    padding: 7px 9px;
    background: #fff;
    border-radius: 4px;
}

.rn-training-links a:hover {
    background: #eef4f5;
}

.rn-label {
    display: block;
    font-size: 10px;
    font-weight: 700;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 2px;
}

.rn-toggle {
    display: block;
    font-size: 14px;
    color: #025E73;
    text-decoration: none;
    padding: 7px 10px;
    background: #f0f3f4;
    border-radius: 4px;
    border-left: 3px solid #025E73;
    transition: background 0.15s ease;
    line-height: 1.35;
}

.rn-toggle:hover {
    background: #e3ecee;
    color: #025E73;
}

.rn-state-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-top: 10px;
    padding: 8px 10px;
    background: #f8f9f9;
    border-radius: 4px;
    border: 1px solid #e4ecee;
}

.rn-state-list a {
    font-size: 12px;
    color: #025E73;
    text-decoration: none;
    display: block !important;
    margin: 0 !important;
    padding: 3px 4px;
    transition: color 0.15s ease;
}

.rn-state-list a:hover {
    color: #A6144B;
}

.rn-cta {
    background: linear-gradient(135deg, #014d5e 0%, #025E73 100%);
    border-radius: 8px;
    padding: 16px 18px 18px;
    color: #fff;
    margin-bottom: 22px;
    overflow: hidden;
}

.rn-cta .rn-heading {
    color: rgba(255,255,255,0.58);
    border-color: rgba(255,255,255,0.12);
}

.rn-cta::after {
    content: '';
    display: table;
    clear: both;
}

.rn-cta p {
    font-size: 14px;
    color: rgba(255,255,255,0.82);
    line-height: 1.55;
    margin: 0 0 14px 0;
}

.rn-cta-img {
    float: right;
    width: 68px;
    height: auto;
    margin: 0 0 10px 14px;
}

.rn-cta-btn {
    display: inline-block;
    font-size: 12px;
    padding: 6px 14px;
    background: rgba(255,255,255,0.13);
    border: 1px solid rgba(255,255,255,0.28);
    border-radius: 4px;
    color: #fff;
    text-decoration: none;
    transition: background 0.15s ease;
    white-space: nowrap;
}

.rn-cta-btn:hover {
    background: rgba(255,255,255,0.22);
    color: #fff;
}

.rn-input-group {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.rn-input-group input[type="text"] {
    height: 34px;
    font-size: 13px;
    padding: 0 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    width: 100%;
    box-sizing: border-box;
    color: #333;
    transition: border-color 0.15s ease;
}

.rn-input-group input[type="text"]:focus {
    outline: none;
    border-color: #025E73;
    box-shadow: 0 0 0 2px rgba(2,94,115,0.1);
}

.rn-input-group input[type="submit"] {
    height: 34px;
    background: #A6144B;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
    transition: background 0.15s ease;
    width: 100%;
}

.rn-input-group input[type="submit"]:hover {
    background: #be1a57;
}

.rn-resources {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rn-resources li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    background: none;
    padding: 0;
}

.rn-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    color: #A6144B;
}

.rn-icon svg {
    width: 18px;
    height: 18px;
}

.rn-resources a {
    font-size: 14px;
    color: #025E73;
    text-decoration: none;
    transition: color 0.15s ease;
}

.rn-resources a:hover {
    color: #A6144B;
}
.contentBox {
    border: 1px solid #E2ACC4;
    padding: 8px;
    background: #fff url(../images/contentBoxBack.gif) repeat-x bottom;
    margin-bottom: 20px;
    font-size: 11px;
    line-height: 15px;
}
.header {
    border-bottom:2px solid #DED8A0;
    padding-bottom:15px;
    margin-bottom:15px;
    font-size:150%;
    font-family:sans-serif;
}
.left {
    float:left;
    display: inline;
    margin: 5px 10px 7px 0;
}
img.right {
    float: right;
    display: inline;
    margin: 5px 0 7px 10px;
}
.uppercase {
    text-transform:uppercase;
}
.serif {
    font-family:serif;
}
.pink{
    color:#A6144B;
}
h1.green {
    color:#025E73
}
.black{
    color:#111;
}
h2.serif {margin-top:20px;}
.header + h3 {
    font-family:sans-serif;
}

.hero h1 {
    font-size:48px;
}
.hero.pink {
    background: #701B33;
    padding:20px;
    color:white;
}
.hero.pink .button {
    color: #701B33;
    background:white;
}
header + .hero {
    margin-top: -15px;
    margin-bottom: 30px;
}
.text-center {
    text-align:center;
}


#header #eNav {
    float: right;
    margin-top: 0;
    font-size: 12px;
    text-align: right;
    width: 300px;
}
.centered{
    text-align:center;
}
div.note {
    color:#999;
    font-size:80%;
}

input[type="text"]:not(.form-control), input[type="password"], input[type="email"], input[type="date"] {
    padding: 5px;
    border: 1px solid #C4C781;
    margin: 2px 2px;
}

button:disabled {
    opacity:0.5;
    color:#ccc;
    cursor:not-allowed;
}

a.button, button, input[type="submit"] {
    background:#A6144B;
    border-radius:6px;
    border:none;
    color:white;
    text-align:center;
    padding:0px 30px;
    text-decoration:none;
    font-size:20px;
    line-height: 34px;
    height:34px;
    display:inline-block;
    margin:2px 0;
}
input[type="submit"]:disabled {
    opacity:0.5;
}
a.button.full-width {
    width: 100%;
    box-sizing: border-box;
}
a.button:hover, input[type=submit]:hover {
    color:white;
    background:#CB2565;
    cursor:pointer;
}
a.button.gray, a.button.white, a.button.gray:hover, a.button.white:hover {
    background:#FFFFFF;
    color:#025E73;
}
a.button.gray, a.button.gray:hover  {
    background-color:#eee;
    color:#025E73;
}
a.button.green, a.button.green:hover {
    border:1px solid #025E73;
    background:#fff;
    color:#025E73;
}
a.button.prev {
    background-image: url('/images/arrow-left.png');
    background-position: 10% 50%;
    background-repeat:no-repeat;
    text-align:left;
    padding-left:30px;
    padding-right: 20px;
}
a.button.next {
    background-image: url('/images/arrow-right.png');
    background-position: 90% 50%;
    background-repeat:no-repeat;
    text-align:right;
    padding-left:20px;
    padding-right: 30px;
}
a.button + a.button {
    margin-left: 5px;
    margin-right: 5px;
}

a.button.small {
    font-size: 100%;
    padding: 4px 10px;
    line-height: 1em;
    height: 1em;
}

input[type="text"] + a.button {
    height: 25px;
    font-size: 14px;
    line-height: 25px;
    padding: 0px 20px;
}

a.new-window {
    padding-right: 22px;
    background: url(/images/target-link.png) no-repeat right;
}
input[type="text"] + input[type="submit"], input[type="email"] + input[type="submit"] {
    font-size:16px;
    height:auto;
    padding:0px 10px;
    line-height:27px;
}
ul {
    padding:0;
    margin:1em 0;
}
/*
li {
    background:url(/images/bullet.png) 0 50% no-repeat;
    padding-left:20px;
    list-style-type:none;
    margin:4px 0;
}
    */
.pagination li {
    background:none;
    padding:0;
    margin:0;
}


.blue-box, .beige-box {
    margin:2em auto;
    background:#025E73;
    color:white;
    border:2px solid #DED8A0;
    border-radius:10px;
    padding:10px 30px;
    width:80%;
}
.beige-box {
    background:#F5F3E2;
    color:#333;
    border-color:#E4B9C9;
    text-align:center;
}
    .beige-box h1 {
        color:#9D034F;
        font-size:130%;
    }
    .beige-box a.button {
        background:#fff;
        border:1px solid #025E73;
        font-weight:bold;
        color:#025E73;
    }
p {
    margin-bottom:1em;
    line-height:1.4em;
}
p.large {
    font-family:serif;
    font-size:120%;
}
p.extra-large{
    font-size:36px;
}
small {
    font-size:80%;
}
em {
	font-style:italic;
}
strong {
	font-weight:bold;
}
a {
	color: #025E73;
	text-decoration:none;
}

.heart-line {
    margin:1em 0;
    position:relative;
    background:url(/images/heart-line.png) 50% 50% no-repeat;
    height:21px;
}
.heart-line:before {
    border-top: 1px solid #E7CECE;
    content: "";
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: -1;
}

a.social-icons {
	display:inline-block;
	width:39px;
	height:39px;
	line-height: 39px;
	vertical-align: top;
	background-image:url(/images/social-icons-new.png);
	border-radius:50%;
	background-color:rgba(255,255,255,0.1);
	transition:background-color 0.15s ease;
}

div.main-search .search-box {
    width: 154px;
    font-size: 15px;
    color: #333;
    padding-left: 28px;
    background: #fff url(/images/search.png) 4px 50% no-repeat;
    margin-right:0;
    margin-bottom:5px;
}

/* footer */

footer {
    background: #025E73;
    color: rgba(255,255,255,0.82);
    font-size: 14px;
    margin-top: 60px;
}

footer a {
    color: rgba(255,255,255,0.72);
    text-decoration: none;
    transition: color 0.15s ease;
}

footer a:hover {
    color: #ffffff;
}

.footer-main {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    padding: 48px 40px 36px;
    max-width: 1100px;
    margin: 0 auto;
    box-sizing: border-box;
}

.footer-col {
    flex: 1;
    min-width: 150px;
}

.footer-brand {
    flex: 1.5;
    min-width: 180px;
}

.footer-site-name {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.02em;
    font-family: Georgia, serif;
    display: block;
    margin-bottom: 10px;
}

.footer-tagline {
    font-size: 13px;
    line-height: 1.65;
    color: rgba(255,255,255,0.55);
    margin: 0 0 20px 0;
    max-width: 230px;
}

.footer-social {
    display: flex;
    gap: 6px;
    align-items: center;
}

a.social-icons:hover {
    background-color: rgba(255,255,255,0.22);
}

.footer-heading {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.42);
    margin: 0 0 14px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.footer-nav {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.footer-nav a {
    font-size: 14px;
    line-height: 1.3;
}

.footer-logos {
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: flex-start;
}

.footer-logos img {
    max-height: 48px;
    max-width: 130px;
    opacity: 0.8;
    transition: opacity 0.15s ease;
}

.footer-logos img:hover {
    opacity: 1;
}

.footer-newsletter p {
    font-size: 13px;
    line-height: 1.6;
    color: rgba(255,255,255,0.55);
    margin: 0 0 14px 0;
}

.footer-input-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.footer-input-group input[type="text"] {
    width: 100%;
    box-sizing: border-box;
    height: 38px;
    font-size: 13px;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,0.22);
    border-radius: 5px;
    background: rgba(255,255,255,0.08);
    color: #fff;
}

.footer-input-group input[type="text"]::placeholder {
    color: rgba(255,255,255,0.35);
}

.footer-input-group input[type="text"]:focus {
    outline: none;
    border-color: rgba(255,255,255,0.45);
    background: rgba(255,255,255,0.13);
}

footer a.button {
    display: inline-block;
    color: #fff;
    background: #A6144B;
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 5px;
    padding: 9px 20px;
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
    transition: background 0.15s ease;
    text-align: center;
}

footer a.button:hover {
    background: #be1a57;
    color: #fff;
}

.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 40px 18px;
    border-top: 1px solid rgba(255,255,255,0.1);
    max-width: 1100px;
    margin: 0 auto;
    box-sizing: border-box;
}

.footer-search {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

.footer-search input[type="text"] {
    height: 34px;
    font-size: 13px;
    padding: 0 12px 0 34px;
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 5px;
    background: rgba(255,255,255,0.08) url(/images/search.png) 9px 50% no-repeat;
    color: #fff;
    width: 210px;
}

.footer-search input[type="text"]::placeholder {
    color: rgba(255,255,255,0.35);
}

.footer-search input[type="text"]:focus {
    outline: none;
    border-color: rgba(255,255,255,0.38);
    background-color: rgba(255,255,255,0.13);
}

#copyright {
    font-size: 12px;
    color: rgba(255,255,255,0.42);
    margin: 0;
}

#copyright a {
    color: rgba(255,255,255,0.55);
}

#copyright a:hover {
    color: #fff;
}

.clearfix { clear: both; }

@media (max-width: 767.98px) {
    .footer-main {
        flex-direction: column;
        padding: 32px 20px 24px;
        gap: 28px;
    }

    .footer-brand .footer-tagline {
        max-width: none;
    }

    .footer-nav {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 9px 20px;
    }

    .footer-search input[type="text"] {
        width: 100%;
        flex: 1;
    }

    .footer-search {
        width: 100%;
    }

    .footer-bottom {
        padding: 14px 20px 18px;
    }
}


.validation-summary-errors {
    border:2px solid #A6144B;
    padding:5px;
    color:#A6144B;
    border-radius:5px;
    background:#E7CECE;
}

th {
    text-align:left;
    font-weight:normal;
    padding:6px 10px;
    font-size:22px;
    color:#005E72;
    border-bottom:2px solid #DED8A0;
    padding-bottom:10px;
    font-family:sans-serif;
    font-size:100%;
    vertical-align:middle;
}
td {
    padding:6px 10px;
    vertical-align:middle;
}

.tip-sheet {
    border:2px solid #025E73;
    padding:5px;
    padding-left:60px;
    background:url(/images/tip-light.png) 10px 10px no-repeat;
}


#section-list {
    margin-top:0;
}
#section-list li {
    padding-left:4px;
	margin:0;
	background: #e9ead5; /* Old browsers */
	background: -moz-linear-gradient(top,  #e9ead5 0%, #ffffff 26%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e9ead5), color-stop(26%,#ffffff)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #e9ead5 0%,#ffffff 26%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #e9ead5 0%,#ffffff 26%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #e9ead5 0%,#ffffff 26%); /* IE10+ */
	background: linear-gradient(to bottom,  #e9ead5 0%,#ffffff 26%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e9ead5', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */


	height:40px;
	line-height:40px;
	border-top:1px solid #c3c67f;
}
#section-list li.current {
	background: #e9ead5; /* Old browsers */
	background: -moz-linear-gradient(top,  #e9ead5 0%, #ffffff 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e9ead5), color-stop(100%,#ffffff)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #e9ead5 0%,#ffffff 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #e9ead5 0%,#ffffff 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #e9ead5 0%,#ffffff 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #e9ead5 0%,#ffffff 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e9ead5', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

 
#section-list li.current a {
	background: url(/images/arrow-right.png) 100% 50% no-repeat;
	color: #575C2E;
}

#section-list li.passed a {
	background: url(/images/quiz-passed.png) 100% 50% no-repeat;
	color: #575C2E;
}

#section-list li.failed a {
	background: url(/images/quiz-failed.png) 100% 50% no-repeat;
	color: #575C2E;
}




td.label {
	width:auto;
	text-align:right;
}
input[type="submit"].button {
	padding: 4px 5px 4px 5px;
}
#section-list li  a {
	text-decoration:none;
	font-family:Georgia;
	font-size:16px;
	display:block;
	margin-right:5px;
    padding-left:20px;

}
#section-list li.pending a {
}
#section-list li.completed:not(.current) a {
    background: url(/images/check.png) 0 40% no-repeat;
    text-decoration:line-through;
}
.jp-audio  {
    padding:5px;
    background:url(/images/sectionDiv.png);
}
.jp-controls li {
    list-style-type:none;
    background:none;
    padding:0;
}
.jp-controls .button {
    width: 100%;
    background-color:#E8E8E8;
    border: 1px solid #C2C2C2;
    color:#333;
    font-size:15px;
    height:25px;
    padding:0;
    line-height:12px;
    background-position:0% 50%;
    background-repeat:no-repeat;
}
.button.gray.jp-play {

    background-image: url(/images/button-play.png);

    padding-right: 20px;
}

.button.gray.jp-pause {
    background-image: url(/images/button-pause.png);
    padding-right: 20px;
}

.jp-progress {
    border: 2px solid #ABAA57;
    border-radius: 2px;
    height: 20px;
    cursor: pointer;
}
.jp-seek-bar {
    background: #F5F6EC;
    height: 20px;
}
.jp-play-bar {
    height: 20px;
    background: #C3C67F;
    width:0%;
}



/************** SECTIONS & CONTENT BOXES *****************/

.section {
	border-top: 1px solid #C3C67F;
	background: url(../images/sectionBack.gif) repeat-x top;
	padding: 12px 0 0 0;
	/*font-size: 12px;*/
}
.contentBox {
	border: 1px solid #E2ACC4;
	padding: 8px;
	background: #fff url(../images/contentBoxBack.gif) repeat-x bottom;
	margin-bottom: 20px;
	font-size:11px;
	line-height:15px;
}
.contentBox.tall {
	background-image: url(../images/contentBoxBack-tall.png);
	padding: 20px;
	font-size:13px;
}

.askExpert {
	background:#F5F6EC url(../images/questionIcon.gif) no-repeat 8px 8px;
	border: 1px solid #C3C67F;
	padding: 0 10px 0 43px;
	margin-bottom: 10px;
	clear: both;
}

.questionCommentBox {
	background: #E9EAD5;
	border-top: 1px solid #D9DBB3;
	border-bottom: 1px solid #D9DBB3;
	padding: 20px 12px 20px 12px;
}

.featuredSection {
	border-top: 1px solid #C3C67F;
	background: #E9EAD5;
	padding: 10px 10px 12px 10px;
	font-size: 12px;
	margin: 0 0 10px 0;

}

.backCheckBox {
	background:#F5F6EC;
	border: 1px solid #C3C67F;
	padding: 10px 0;
	clear: both;
	width:260px;
	margin: 0 0 10px 0;
}
.backCheckBox div {
	margin: 0 10px 0 10px;
}




.review-question {
    width:33%;
    display:inline-block;
    margin:10px 0;
    font-size:20px;
    color: #78792C;
}

.button-bar {
    background:#A6144B;
    color:#fff;
}

    .button-bar a {
        display:block;
        width:50%;
        color:#fff;
        margin:10px auto;
        border-radius:8px;
        border:1px solid #fff;
        padding:10px 20px;
        font-size:18px;
    }
        .button-bar a:hover {
            background:#CB2565;
        }

.green-quote, .white-quote {
    background-color:#B3A627 ;
    background-image: url(/images/open-quote.png) , url(/images/close-quote.png) ;
    background-position: 8px 8px, 98% 96%;
    background-repeat:no-repeat;
    border-radius: 10px 20px;
    padding: 10px 40px;
    color:#000;
    font-size:18px;
    text-align:left;
    line-height:20px;
    font-family:serif;
    margin:20px 0;
    position:relative;
}
.white-quote {
    background-color:#fff;
}
.white-quote.border {
    background-color:#fff;
    border:1px solid #025E73;
}
.green-quote + p, .white-quote + p, .quote-author {
    margin-left:35px;
    text-align:left;
}

a.next:after{
    content: '>';
    margin-left:5px;
}

.white-quote-arrow {
    background:url(/images/white-quote-arrow.png);
    width:26px;
    height:17px;
    position: absolute;
    margin-top: -21px;
    margin-left: 24px;
}


#btnMenu {
    float:left;
    margin-top: 6px;
	border:1px solid #fff;
	border-radius: 5px;
	padding:6px 8px;
	padding-left:36px;
	background: url(../images/menu-button.png) 8px 50% no-repeat;
}


#mobile-menu {
    display:none;
	overflow:hidden;
	transition: max-height 0.5s ease;
}
#mobile-menu a {
	display:block;
	padding:10px  20px;
	line-height:20px;
}
#mobile-menu a:hover {
	background:#DFEBEE;
}
#mobile-menu.open {
	max-height:130px;
}


.green-box {
    background:#025E73;
    color:white;
    font-size:250%;
    line-height:120%;
    border:4px solid #C3C67F;
    border-radius:5px;
    padding:10px 20px;
}
.green-box .button {
    vertical-align:middle;
    margin:20px;

}
th.sorted {
    padding-right:22px;
}
th.sortable {
    background:url(/images/sortable.png) 100% 50% no-repeat;
    padding-right:14px;
}
th.sorted.asc {
    background:url(/images/sort-asc.png) 100% 50% no-repeat;
}
th.sorted.desc {
    background:url(/images/sort-desc.png) 100% 50% no-repeat;
}


.highlight {
    background: #fff6f6;
    border: 1px solid #e8c9bc;
    border-left: 4px solid #A6144B;
    padding: 18px 20px;
    margin: 1em 0 30px;
    clear: both;
    overflow: hidden;
}

/* =====================================================
   Screen-reader utility
   ===================================================== */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* =====================================================
   Journey / Numbered Steps Component
   Three-step horizontal process strip.
   Usage: <div class="journey-steps"><div class="journey-step">…</div></div>
   ===================================================== */
.journey-steps {
    display: flex;
    margin: 20px 0 28px;
    border: 1px solid #dfe9ec;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.journey-step {
    flex: 1;
    padding: 20px 16px 18px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.journey-step + .journey-step {
    border-left: 1px solid #dfe9ec;
}

.journey-step .rn-link-more {
    margin-top: auto;
    padding-top: 10px;
}

@media (max-width: 600px) {
    .journey-steps {
        flex-direction: column;
    }
    .journey-step + .journey-step {
        border-left: none;
        border-top: 1px solid #dfe9ec;
    }
    .journey-step .rn-link-more {
        margin-top: 8px;
        padding-top: 0;
    }
}

.journey-step__num {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #A6144B;
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    font-family: Georgia, serif;
    margin: 0 auto 10px;
}

.journey-step__title {
    font-family: Georgia, serif;
    font-size: 17px;
    color: #025E73;
    font-weight: 700;
    margin: 0 0 8px;
    line-height: 1.2;
}

.journey-step__desc {
    font-size: 13px;
    color: #666;
    line-height: 1.5;
    margin: 0;
}

/* =====================================================
   CTA Band
   Full-width crimson call-to-action strip.
   Buttons inside get a white-on-crimson inversion:
     .cta-band a.button { background:#fff; color:#A6144B; }
   ===================================================== */
.cta-band {
    background: #A6144B;
    border-radius: 8px;
    padding: 22px 26px;
    margin: 0 0 28px;
    color: #fff;
}

.cta-band a.button {
    background: #fff;
    color: #A6144B;
}

.cta-band a.button:hover {
    background: #f5e8ee;
    color: #A6144B;
}

.portrait {
    border-radius:100%;
    width:200px;
}
.missing-image {
    width:200px; height:200px;
    background:gray;
}
/* =====================================================
   Trust Strip
   Horizontal row of trust badges / feature highlights.
   ===================================================== */
.trust-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    padding: 14px 18px;
    background: #f5f9fa;
    border: 1px solid #c8e3e8;
    border-left: 4px solid #025E73;
    border-radius: 0 6px 6px 0;
    margin: 20px 0 24px;
}

.trust-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    color: #333;
    white-space: nowrap;
}

.trust-item__icon {
    font-size: 14px;
    line-height: 1;
}

.trust-item__text {
    font-weight: 600;
}

/* =====================================================
   Pricing Cards
   Side-by-side product pricing options.
   --featured variant has crimson accent top.
   ===================================================== */
.pricing-card {
    border: 1px solid #dfe9ec;
    border-top: 4px solid #025E73;
    border-radius: 0 0 8px 8px;
    background: #fff;
    padding: 22px 20px 20px;
    display: flex;
    flex-direction: column;
}

.pricing-card--featured {
    border-top-color: #A6144B;
    box-shadow: 0 4px 16px rgba(166, 20, 75, 0.1);
}

.pricing-card__label {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #025E73;
    margin-bottom: 6px;
}

.pricing-card--featured .pricing-card__label {
    color: #A6144B;
}

.pricing-card__price {
    font-family: Georgia, serif;
    font-size: 38px;
    font-weight: 700;
    color: #22313a;
    line-height: 1;
    margin-bottom: 16px;
}

.pricing-card__features {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
}

.pricing-card__features li {
    background: none;
    padding: 4px 0 4px 20px;
    margin: 0;
    font-size: 14px;
    color: #555;
    line-height: 1.4;
    position: relative;
}

.pricing-card__features li::before {
    content: '\2713';
    position: absolute;
    left: 0;
    color: #025E73;
    font-weight: 700;
}

.pricing-card--featured .pricing-card__features li::before {
    color: #A6144B;
}

.pricing-card .button {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    font-size: 16px;
    margin-top: auto;
}

.pricing-card__note {
    margin-top: 8px;
    font-size: 12px;
    color: #888;
    text-align: center;
}

/* =====================================================
   Testimonial Card
   Quote + author attribution.
   ===================================================== */
.testimonial-card {
    border: 1px solid #edd3dc;
    border-left: 4px solid #A6144B;
    border-radius: 0 6px 6px 0;
    background: #fff;
    padding: 12px 16px 16px;
    margin-bottom: 12px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.testimonial-card::before {
    content: '\201C';
    position: absolute;
    top: -14px;
    left: 10px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 90px;
    line-height: 1;
    color: #A6144B;
    opacity: 0.13;
    pointer-events: none;
    user-select: none;
}

.testimonial-quote {
    font-style: italic;
    font-size: 14px;
    line-height: 1.65;
    color: #444;
    margin: 18px 0 10px;
    flex: 1;
}

.testimonial-author {
    font-weight: 700;
    font-size: 13px;
    color: #A6144B;
    margin: 0;
}

/* =====================================================
   FAQ List
   Styled question/answer accordion-style list.
   ===================================================== */
.faq-list {
    border-top: 2px solid #DED8A0;
}

.faq-item {
    border-bottom: 1px solid #e8e8d8;
    padding: 14px 0;
}

.faq-q {
    font-family: Georgia, serif;
    font-size: 16px;
    font-weight: 700;
    color: #025E73;
    margin-bottom: 6px;
    line-height: 1.35;
}

.faq-a {
    font-size: 14px;
    line-height: 1.65;
    color: #555;
}

.faq-a a {
    color: #025E73;
    font-weight: 600;
}

/* adsense settings */
.footerad {
    max-height: 120px;
    text-align: center;
}
@media(min-width: 500px) { .footerad { height: 60px; } }
@media(min-width: 800px) { .footerad { height: 90px; } }

@media(max-width: 500px) {
    .hero h1 {
        font-size: 24px;
        max-width:90%;
    }
    .large-margins {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    @media screen and (max-width:990px) {
        .flex-even-columns {
            flex-wrap:wrap;
        }

        .flex-even-columns > * {
            flex-basis: 100%;
            padding-left:0;
            padding-right:0;
        }
    }
}



.form-control, input.form-control, select.form-control {
    height: auto;
    font-family:Arial;
    padding: .375rem .75rem;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    box-sizing:border-box;
}
.form-control[type="date"] {
    padding: 0.313rem 0.75rem;
}
select.form-control {
    padding: 0.525rem .75rem;
}
.form-row * {
    box-sizing:border-box;
}
.form-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;

}
.form-row.nowrap {
    flex-wrap:nowrap;
}
.form-row > .col, .form-row > [class*=col-] {
    padding-right: 5px;
    padding-left: 5px;
}
.form-row label {
    display: block;
    margin-bottom: .5rem;
}
.form-row input {
    min-width:0;
}
.form-group {
    margin-bottom: 1rem;
    flex-grow: 1;
}
.form-row .form-control {
    display: block;
    width:100%;
    box-sizing:border-box;

}
.d-inline {
    display: inline !important;
    width: auto !important;
}
.d-flex {
    display: flex;
}


.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.alert {
    position: relative;
    padding: .75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid #0000;
    border-radius: .25rem;
}

.input-field label {
    display:block;
}
.input-field .form-control {
    display:block;
    width:100%;
    font-size:16px;
}
.form-control.error, .input-validation-error.form-control  {
    border-color: red;
    box-shadow: 0 0 5px rgb(255 0 0 / 50%);
}
.form-control.inline {
    width:auto;
    display:inline-block;
}
.pt-0 {
    padding-top:0 !important;
}
.mb-1 {
    margin-bottom: 0.25rem !important;
}
.mb-2 {
    margin-bottom: 0.5rem !important;
}
.mb-4 {
    margin-bottom: 1.5rem !important;
}
.mt-4 {
    margin-top: 1.5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: 0.5rem;
}
.list-group-item {
    position: relative;
    display: block;
    padding: 0.5rem 1.5rem;
    color: #262626;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #00000020;
}
.list-group-item + .list-group-item {
    border-top-width: 0;
}
.list-group-item.active {
    background: #025E73;
    color: #fff;
}
a.list-group-item:hover:not(.active) {
    background: #3A8192;
    color:#fff;
    
}
.border-0 {
    border: 0 !important;
}
.border-bottom-0 {
    border-bottom: 0 !important;
}
.border-top-0 {
    border-top: 0 !important;
}
.border-start-0 {
    border-left: 0 !important;
}
.border-end-0 {
    border-right: 0 !important;
}
.text-success {
    color:rgb(0, 183, 74)  ;
}

/* ===== 404 NOT FOUND ===== */
.not-found {
    text-align: center;
    padding: 60px 20px 80px;
}
.not-found-code {
    font-size: 96px;
    font-weight: 700;
    color: #025E73;
    line-height: 1;
    margin: 0 0 -8px;
    font-family: Georgia, serif;
    letter-spacing: -4px;
    opacity: 0.22;
}
.not-found h1 {
    font-size: 26px;
    color: #333;
    margin: 0 0 12px;
    font-family: Georgia, serif;
}
.not-found p {
    color: #666;
    font-size: 15px;
    max-width: 400px;
    margin: 0 auto 28px;
    line-height: 1.6;
}
.not-found-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

/* ===== STATE RESOURCES CONTROL ===== */
.sr-columns {
    display: flex;
    gap: 28px;
    margin-bottom: 20px;
}
.sr-col {
    flex: 1 1 0;
    min-width: 0;
}
@media (max-width: 500px) {
    .sr-columns { flex-direction: column; gap: 0; }
}

/* =====================================================
   Callout Box
   General-purpose callout/panel with color variants.
   Usage: <div class="callout callout--teal">…</div>
   Variants: callout--teal (info), callout--pink (important),
             callout--sage (tip), callout--neutral (default)
   ===================================================== */
.callout {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 18px 20px;
    margin: 1em 0 28px;
    border-radius: 0 6px 6px 0;
    clear: both;
}
.callout-body {
    flex: 1;
    min-width: 0;
}
.callout-body p {
    margin: 0 0 12px;
    font-size: 15px;
    line-height: 1.6;
}
.callout-body p:last-child {
    margin-bottom: 0;
}
.callout-icon {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 17px;
    margin-top: 1px;
}
.callout--teal {
    background: #f5f9fa;
    border: 1px solid #c8e3e8;
    border-left: 4px solid #025E73;
}
.callout--teal .callout-icon { background: #025E73; }
.callout--pink {
    background: #fff6f6;
    border: 1px solid #e8c9bc;
    border-left: 4px solid #A6144B;
}
.callout--pink .callout-icon { background: #A6144B; }
.callout--sage {
    background: #f7f8ee;
    border: 1px solid #d4d6a0;
    border-left: 4px solid #787B2F;
}
.callout--sage .callout-icon { background: #787B2F; }
.callout--neutral {
    background: #f7f7f7;
    border: 1px solid #ddd;
    border-left: 4px solid #999;
}
.callout--neutral .callout-icon { background: #999; }

/* =====================================================
   Plain List
   Removes the global bullet.png background from li.
   Usage: <ul class="plain-list">…</ul>
   ===================================================== */
.plain-list li {
    background: none !important;
    padding-left: 0 !important;
    list-style-type: disc;
    list-style-position: inside;
}

/* =====================================================
   Checklist
   Checkmark-bullet list, overrides global bullet.png.
   Usage: <ul class="checklist">…</ul>
   ===================================================== */
.checklist {
    list-style: none;
    padding: 0;
    margin: 0 0 1em;
}
.checklist li {
    background: none !important;
    padding-left: 24px !important;
    position: relative;
    margin-bottom: 5px;
    line-height: 1.5;
}
.checklist li::before {
    content: '\2713';
    position: absolute;
    left: 0;
    top: 1px;
    color: #025E73;
    font-weight: 700;
    font-size: 15px;
}

/* =====================================================
   Quote Block
   Styled pull-quote with optional cite.
   Usage: <blockquote class="quote-block">
            <p>…</p><cite>- Name, Title</cite>
          </blockquote>
   ===================================================== */
.quote-block {
    border-left: 4px solid #A6144B;
    background: #fff6f6;
    margin: 1em 0 24px;
    padding: 16px 20px;
    border-radius: 0 6px 6px 0;
}
.quote-block p {
    font-style: italic;
    font-size: 15px;
    line-height: 1.65;
    color: #444;
    margin: 0 0 8px;
}
.quote-block p:last-of-type {
    margin-bottom: 0;
}
.quote-block cite {
    display: block;
    font-style: normal;
    font-weight: 700;
    font-size: 13px;
    color: #A6144B;
    margin-top: 10px;
}

/* =====================================================
   Page Intro Lead
   Larger introductory paragraph text.
   Usage: <p class="page-intro">…</p>
   ===================================================== */
.page-intro {
    font-size: 16px;
    line-height: 1.65;
    color: #444;
    margin-bottom: 1.2em;
}

/* =====================================================
   Content Columns
   Two-column layout for long content lists (e.g. vocab).
   Usage: <ul class="content-cols plain-list">…</ul>
   ===================================================== */
.content-cols {
    column-count: 2;
    column-gap: 28px;
}
@media (max-width: 600px) {
    .content-cols { column-count: 1; }
}
.content-cols li {
    break-inside: avoid;
}

/* =====================================================
   button2 alias
   Legacy button class used in older content views.
   ===================================================== */
a.button2, .button2 {
    display: inline-block;
    background: #A6144B;
    color: #fff !important;
    border-radius: 5px;
    padding: 9px 18px;
    font-size: 14px;
    font-family: Arial, sans-serif;
    text-decoration: none;
    margin: 4px 6px 4px 0;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    height: auto;
}
a.button2:hover, .button2:hover {
    background: #8f103f;
    color: #fff !important;
}
.validation-summary-errors {
    background: none;
    border: 0;
    padding: 0;
}

.validation-summary-errors li {
    background: none;
    padding: 0;
}

/* =====================================================
   Data Table
   Full-width tabular data with teal header, alternating
   rows, and right-aligned numeric columns.

   Usage:
     <div class="data-table-toolbar">
       <span class="data-table-label">Section Title</span>
       [optional sort form]
     </div>
     <table class="data-table">…</table>

   - Toolbar connects flush to table top via border-radius
   - First column is left-aligned and teal; all others
     are right-aligned with tabular-nums
   - Add .note to a <td> for grey italic annotation cells
   ===================================================== */
.data-table-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f5f3e2;
    border: 1px solid #DED8A0;
    border-radius: 6px 6px 0 0;
    padding: 11px 16px;
    flex-wrap: wrap;
    gap: 8px;
}
.data-table-label {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    color: #787B2F;
}
.data-table-sort {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #666;
    font-weight: bold;
}
.data-table-sort select {
    border: 1px solid #B8BA7C;
    border-radius: 4px;
    padding: 5px 28px 5px 10px;
    font-size: 14px;
    color: #444;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23787B2F'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 9px;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
}
.data-table-sort select:focus {
    outline: none;
    border-color: #025E73;
    box-shadow: 0 0 0 2px rgba(2,94,115,0.15);
}
.data-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    border: 1px solid #DED8A0;
    border-top: none;
}
.data-table thead th {
    background: #6b6d2b;
    color: #fff;
    padding: 11px 14px;
    font-weight: bold;
    font-size: 13px;
    text-align: right;
    line-height: 1.35;
    border-right: 1px solid rgba(255,255,255,0.15);
}
.data-table thead th:first-child {
    text-align: left;
}
.data-table thead th:last-child {
    border-right: none;
}
.data-table tbody tr:nth-child(even) td {
    background: #fafaf3;
}
.data-table tbody tr:hover td {
    background: #eef5f7;
    color: #025E73;
}
.data-table tbody td {
    padding: 9px 14px;
    border-bottom: 1px solid #E8EAD5;
    border-right: 1px solid #f0efe6;
    color: #444;
    text-align: right;
    font-variant-numeric: tabular-nums;
}
.data-table tbody td:first-child {
    text-align: left;
}
.data-table tbody td:last-child {
    border-right: none;
}
.data-table tbody tr:last-child td {
    border-bottom: none;
}
.data-table td.note {
    color: #888;
    font-style: italic;
    font-size: 13px;
    font-weight: normal;
    text-align: left;
}
@media (max-width: 768px) {
    .data-table-toolbar { flex-direction: column; align-items: flex-start; }
    .data-table { font-size: 12px; }
    .data-table thead th,
    .data-table tbody td { padding: 7px 7px; }
    .data-table thead th { font-size: 11px; }
}


/* Page hero band */
.page-hero {
    position: relative;
    overflow: hidden;
    height: 320px;
}

.page-hero-img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    display: block;
}

.page-hero-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
}

.page-hero-overlay--teal {
    background: linear-gradient(to right, rgba(2,94,115,0.78) 0%, rgba(2,94,115,0.45) 55%, transparent 100%);
}

.page-hero-overlay--olive {
    background: linear-gradient(135deg, rgba(120,123,47,0.88) 0%, rgba(2,94,115,0.72) 60%, rgba(2,94,115,0.30) 100%);
}

.page-hero-text {
    padding: 0 48px;
    max-width: 580px;
}

.page-hero-text h1 {
    color: #fff;
    font-size: 32px;
    line-height: 1.25;
    margin: 0 0 8px;
    font-family: Georgia, serif;
    font-weight: normal;
    text-shadow: 0 1px 4px rgba(0,0,0,0.35);
}

.page-hero-text p {
    color: rgba(255,255,255,0.88);
    font-size: 17px;
    margin: 0;
    text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.page-hero-gradient {
    height: 180px;
    display: flex;
    align-items: center;
}

@media (max-width: 768px) {
    .page-hero {
        height: 180px;
    }

    .page-hero-img {
        height: 180px;
    }

    .page-hero-text {
        padding: 0 20px;
    }

    .page-hero-text h1 {
        font-size: 22px;
    }

    .page-hero-text p {
        font-size: 14px;
    }
}

nav.with-menu {
    padding-bottom: 0;
}


nav li.login-link:after {
    display:none;
}
nav li.login-link{
    float:right;
    margin-left:15px;
}
nav a.login-link {
    background:url(/images/login-link.png) 0 50% no-repeat;
    padding: 4px 0 4px 25px;
    display:inline-block;
    text-align:left;
}




header + .full-width {
    margin-top : -1em;
}

nav li:after {
    content : "|";
    color:#ccc;
    padding:0 10px;
}
nav li.no-separator:after {
    display:none;
}
nav li:last-child::after, nav li.no-border::after {
    display:none;
}

nav ul ul li::after {
    display:none;
}

nav {
    background:#025E73;
    margin-bottom:1em;
}
nav input[type="text"] {
    border:1px solid #ccc;
    padding:3px
}
nav ul {
    background:#025E73;
    padding:0;
    margin:0;
}
nav a {
    color:#fff;
    text-decoration:none;
}

nav a:last-child {
    border-right:none;
    margin-right:0;
}

nav .grid .unit {
    padding:0;
    background:#025E73;
}
   nav li  {
        display:inline-block;
        list-style-type:none;
        background:none;
        padding:0;
    }
   nav li.bold {
       font-weight:bold;
   }
   nav li.right{
       float:right;
   }

   nav ul a {
       padding:10px 0;
        display: inline-block;
   }
nav li ul  {
    display:none;
}
    nav ul li:hover a, nav ul li.current a {
        color: #E4FC86;
    }
nav ul li:hover ul {
    display:block;
    min-width:220px;
    position:absolute;
    z-index:3;
    background:#025E73;
    margin-top:0px;
    margin-left:-10px;
    padding-top:0;
    box-shadow:3px 3px 4px rgba(0,0,0,0.3);
}
    nav ul li:hover ul li {
        display:block;
        margin:0;
    }
    nav ul li:hover ul li a {
        display:block;
        background:none;
        padding:5px;
        padding-right:20px;
        padding-left:10px;
        color:#fff;
        border-top: 1px solid rgba(128,128,128,0.4);
    }
    nav ul li:hover ul li a:hover {
        background:#3A8192;
    }


.header-links {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.header-links > div {
    padding: 20px;
    display: flex;
    align-items: center;
}
.header-links a {
    color: #A6144B;
    margin-left:20px;
}
.header-links a.login-link:hover {
    text-decoration:underline;
}
.header-links .header-icon {
    fill: none;
    height: 1.1em;
    margin-right: 4px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    vertical-align: -0.18em;
    width: 1.1em;
}
.header-links .header-icon-search {
    height: 18px;
    margin-right: 0;
    width: 18px;
}

.red-button {
    background: #A6144B;
    padding: 5px 12px;
    border-radius: 4px;
    border: 1px solid transparent;
    color: #fff !important;
}

nav.flex-nav {
    background: #fff;
    display: flex;
    position: relative;
    z-index: 50;
}
nav.flex-nav a {
    color: #000;
    display: inline-block;
    text-decoration: none;
}
nav.flex-nav .flex-nav-group {
    flex-grow: 1;
    background: #025E73;
    box-shadow: inset -1px 0 rgba(255,255,255,0.18);
}
nav.flex-nav .flex-nav-group:last-child {
    box-shadow: none;
}
nav.flex-nav .flex-nav-group > span {
    text-transform: uppercase;
    color: #A6144B;
    font-size: 18px;
    font-weight: bold;
    display: block;
    padding: 10px 20px;
    background: #fff;
    outline: 1px solid #fff;
}

nav.flex-nav .flex-nav-items {
    background: #025E73;
    display: flex;
    align-items: stretch;
    min-height: 44px;
}

nav.flex-nav .flex-nav-items a {
    color: #fff;
    padding: 12px 20px;
    height: 100%;
    box-sizing: border-box;
    font-size:14px;
    line-height: 20px;
    transition: background-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
}

.flex-nav-items > div:hover > a,
.flex-nav-items > div:focus-within > a,
nav.flex-nav .flex-nav-items a:hover,
nav.flex-nav .flex-nav-items a:focus {
    background: #014d5e;
    color: #fff;
    outline: none;
    box-shadow: inset 0px 0px 4px 0px #00222a;
}
nav.flex-nav .flex-nav-links {
    background: #fff;
    border: 1px solid #e0e0e0;
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
    min-width: 200px;
    width: auto;
    padding: 0;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 100;
    transform: translateY(-4px);
    transition: opacity 150ms ease, transform 150ms ease, visibility 0s linear 150ms;
}
.flex-nav-items > div:hover .flex-nav-links,
.flex-nav-items > div:focus-within .flex-nav-links {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition: opacity 150ms ease, transform 150ms ease, visibility 0s linear 0s;
}
nav.flex-nav .flex-nav-links > div:first-child {
    display: block;
    padding: 6px 0;
}
nav .menu-transparent {
    display: none;
}

.flex-nav-items > div {
    display: inline-block;
    position: relative;
}
nav.flex-nav .flex-nav-links a {
    background: none;
    border: none;
    border-radius: 0;
    color: #333;
    display: block;
    font-size: 14px;
    height: auto;
    padding: 9px 20px;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}
nav.flex-nav .flex-nav-links a:hover {
    background: #FEF0F4;
    color: #A6144B;
    box-shadow: inset 3px 0 0 #A6144B;
    transform: none;
}
nav.flex-nav .flex-nav-links a:focus {
    background: #FEF0F4;
    color: #A6144B;
    box-shadow: inset 3px 0 0 #A6144B;
    outline: none;
}
nav.flex-nav a.nav-button {
    text-transform: uppercase;
    white-space: nowrap;
    color: white;
    height: auto;
    padding: 0;
    margin: 12px 20px;
}

nav.flex-nav a.nav-button span {
    background: #A6144B;
    padding: 3px 12px;
    border-radius:4px;
    border:1px solid transparent;
    transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}
nav.flex-nav a.nav-button:hover {
    color:#fff;
}
nav.flex-nav a.nav-button:hover span {
    border-color:#fff;
    background: #870036;
}
nav.flex-nav a.nav-button:active span,
nav.flex-nav .flex-nav-items > div > a:active {
    transform: scale(0.96);
}

#nav-search {
    width:0;
    padding:0;
    transition:width ease-in-out 0.25s;
    border:none;

}
#nav-search.active {
    width: 100px;
    padding: 5px;
    border: 3px solid #A6144B;
    outline:0;
}


/* mobile nav */
.mobile-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
}
.mobile-nav a {
    flex-grow:1;
}
#menu-toggle {
    width: 30px;
    max-width:30px;
    height: 30px;
    margin-right: 20px;
    display: inline-block;
}
#menu-toggle svg {
    display:none;
}
.mobile-nav-items {
    display:none;
}

#menu-toggle svg:first-child {
    display: inline-block;
}
.mobile-nav.open #menu-toggle svg:last-child {
    display:inline-block;
}
.mobile-nav.open #menu-toggle svg:first-child {
 
}
.mobile-nav.open + .mobile-nav-items {
    display:block;
}
#mobile-logo {
    max-width: 80%;
}

@media(max-width: 900px) {
    .header-links, .flex-nav {
        display: none !important;
    }
}
@media(min-width: 901px) {
    .mobile-nav {
    display: none !important;
    }
}


.mobile-nav-items, .mobile-child-links {
    margin: 0;
    padding: 0;
}

.mobile-nav-items li {
    background: none;
    padding-left: 20px;
    list-style-type: none;
    margin: 0;
}

.mobile-nav-items .mobile-category  {
    text-transform:uppercase;
    color:#000;
    font-size:20px;
}
.mobile-nav-items a {
    padding:9px 0;
    display:block;
    color:#666;
}

.mobile-nav-items a.has-items:after {
    content: "+";
    float: right;
    font-size: 25px;
    margin-right: 20px;
}
.mobile-nav-items a.has-items.open:after{
    content:"-";
}

.mobile-child-links {
    display: none;
}

.mobile-nav-items a.has-items.open + .mobile-child-links {
    display:block;
}

/*
 * Gridism
 * A simple, responsive, and handy CSS grid by @cobyism
 * https://github.com/cobyism/gridism
 */

/* Preserve some sanity */
.grid,
.unit {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* Set up some rules to govern the grid */
.grid {
  display: block;
  clear: both;
}
.grid .unit {
  float: left;
  width: 100%;
  padding: 10px;
}
.large-margins {
	padding-left: 100px;
	padding-right: 100px;
}
.unit > h2:first-child { margin-top:0; }

/* This ensures the outer gutters are equal to the (doubled) inner gutters. */
.grid .unit:first-child { padding-left: 20px; }
.grid .unit:last-child { padding-right: 20px; }

/* Nested grids already have padding though, so let�s nuke it */
.unit .unit:first-child { padding-left: 0; }
.unit .unit:last-child { padding-right: 0; }
.unit .grid:first-child > .unit { padding-top: 0; }
.unit .grid:last-child > .unit { padding-bottom: 0; }

/* Let people nuke the gutters/padding completely in a couple of ways */
.no-gutters .unit,
.unit.no-gutters {
  padding: 0 !important;
}

/* Wrapping at a maximum width is optional */
.wrap .grid,
.grid.wrap {
  max-width: 1000px;
  margin: 0 auto;
}

/* Width classes also have shorthand versions numbered as fractions
 * For example: for a grid unit 1/3 (one third) of the parent width,
 * simply apply class="w-1-3" to the element. */
.grid .whole,          .grid .w-1-1 { width: 100%; }
.grid .half,           .grid .w-1-2 { width: 50%; }
.grid .one-third,      .grid .w-1-3 { width: 33.3332%; }
.grid .one-sixth,      .grid .w-1-3 { width: 16.6665%; }
.grid .five-sixths,      .grid .w-1-3 { width: 83.3333%; }
.grid .two-thirds,     .grid .w-2-3 { width: 66.6665%; }
.grid .one-quarter,
.grid .one-fourth,     .grid .w-1-4 { width: 25%; }
.grid .three-quarters,
.grid .three-fourths,  .grid .w-3-4 { width: 75%; }
.grid .one-fifth,      .grid .w-1-5 { width: 20%; }
.grid .two-fifths,     .grid .w-2-5 { width: 40%; }
.grid .three-fifths,   .grid .w-3-5 { width: 60%; }
.grid .four-fifths,    .grid .w-4-5 { width: 80%; }
.grid .golden-small,   .grid .w-g-s { width: 38.2716%; } /* Golden section: smaller piece */
.grid .golden-large,   .grid .w-g-l { width: 61.7283%; } /* Golden section: larger piece */

/* Clearfix after every .grid */
.grid {
  *zoom: 1;
}
.grid:before, .grid:after {
  display: table;
  content: "";
  line-height: 0;
}
.grid:after {
  clear: both;
}

/* Utility classes */
.align-center { text-align: center; }
.align-left   { text-align: left; }
.align-right  { text-align: right; }
.pull-left    { float: left; }
.pull-right   { float: right; }

/* A property for a better rendering of images in units: in
   this way bigger pictures are just resized if the unit
   becomes smaller */
.unit img {
  max-width: 100%;
}

/* Responsive Stuff */
@media screen and (max-width: 568px) {
  /* Stack anything that isn�t full-width on smaller screens
     and doesn't provide the no-stacking-on-mobiles class */
  .grid:not(.no-stacking-on-mobiles) > .unit {
    width: 100% !important;
    padding-left: 20px;
    padding-right: 20px;
  }
  .unit .grid .unit {
    padding-left: 0px;
    padding-right: 0px;
  }

  /* Sometimes, you just want to be different on small screens */
  .center-on-mobiles {
    text-align: center !important;
  }
  div.center-on-mobiles {
	  width:100%;
  }
  .hide-on-mobiles, .hide-mobile {
    display: none !important;
  }
}
.show-narrow { display:none;}
/* small screens */
@media screen and (max-width: 930px) {
	.hide-narrow {
		display: none ;
	}
    .show-narrow {
        display:block;
    }
	.whole {
		min-width:0px !important;
	}
}


/* big screens */
@media screen and (min-width: 931px) {
	.hide-wide {
		display: none !important;
	}
}


/* Expand the wrap a bit further on larger screens */
@media screen and (min-width: 1180px) {
  .wider .grid,
  .grid.wider {
    max-width: 1180px;
    margin: 0 auto;
  }
}

/* css grid */
.d-grid
{
	display:grid;
	gap:1rem;
}
@media only screen and (max-width: 720px) {
	.d-grid.responsive {
		grid-template-columns: 1fr !important;
	}
}

.container-flex {
	padding-left:20px;
	padding-right:20px;
}


/* old grid*/


.columnOneHalf {
	float: left;
	width:47%;
	margin: 0 15px 20px 0;
}

.columnOneHalfLight {
	float: left;
	width: 49%;
	
	box-sizing: border-box;
	
	background: #fff6f6;
	border: 1px solid #e8c9bc;
	border-left: 4px solid #A6144B;
	padding: 18px 20px;
	margin: 1em 0 30px;
	
}
.columnOneHalfLight2 {
	float: left;
	width: 49%;
	margin-left: 2%;
	
	box-sizing: border-box;
	background: #fff6f6;
	border: 1px solid #e8c9bc;
	border-left: 4px solid #A6144B;
	padding: 18px 20px;
	margin: 1em 0 30px;
}


.column50 {
	float: left;
	width:49%;
	margin: 0 15px 20px 0;
}

.columnDouble
{
	width: 100%;
	clear:both;
}
