/* Main Style Sheet
--------------------------------------------*/
@font-face { font-family: "FSJoeyWeb-Regular"; src: url("type/FSJoeyWeb-Regular.eot"); src: url("type/FSJoeyWeb-Regular.eot?#iefix") format("embedded-opentype"), url("type/FSJoeyWeb-Regular.woff") format("woff"); font-weight: 400; }

@font-face { font-family: "FSJoeyWeb-Medium"; src: url("type/FSJoeyWeb-Medium.eot"); src: url("type/FSJoeyWeb-Medium.eot?#iefix") format("embedded-opentype"), url("type/FSJoeyWeb-Medium.woff") format("woff"); font-weight: 500; }

@font-face { font-family: "FSJoeyWeb-Bold"; src: url("type/FSJoeyWeb-Bold.eot"); src: url("type/FSJoeyWeb-Bold.eot?#iefix") format("embedded-opentype"), url("type/FSJoeyWeb-Bold.woff") format("woff"); font-weight: 700; }

@font-face { font-family: "FSJoeyWeb-Light"; src: url("type/FSJoeyWeb-Light.eot"); src: url("type/FSJoeyWeb-Light.eot?#iefix") format("embedded-opentype"), url("type/FSJoeyWeb-Light.woff") format("woff"); font-weight: 300; }

@font-face { font-family: "FSJoeyWeb-Bold-primary"; src: url("type/FSJoeyWeb-Bold.eot"); src: url("type/FSJoeyWeb-Bold.eot?#iefix") format("embedded-opentype"), url("type/FSJoeyWeb-Bold.woff") format("woff"); font-weight: 900; }

legend, label { font-family: "FSJoeyWeb-Regular"; font-weight: 400; }

input[type="tel"], input[type="email"], input[type="text"], input[type="password"], input[type="search"], input[type="number"] { height: 50px; padding: 0 15px; }

input[type="radio"], input[type="checkbox"] { position: absolute; overflow: hidden; clip: rect(0, 0, 0, 0); vertical-align: middle; }

input[type="radio"] + label, input[type="checkbox"] + label { min-height: 23px; margin: 1px; padding: 4px 0 0 55px; background: url("../files/images/backgrounds/bkg-radio.svg") no-repeat 1px -88px; background-size: 110px 111px; }

input[type="submit"], input[type="button"], button, .btnLink { width: 100%; max-height: 50px; max-width: 180px; padding: 0.75rem 0 0.75rem 0; background: #5FA52F; border: 0; font-family: "FSJoeyWeb-Medium"; font-weight: 400; font-size: 1.5rem; color: #fff; text-align: center; cursor: pointer; transition: background-color 0.25s ease-out, color 0.25s ease-out; }

/* Defaults
--------------------------------------------*/
/* --- Block Elements --- */
html { width: 100%; height: 100%; }

body { min-height: 100%; min-width: 320px; margin: 0 auto; font-size: 1rem; }

/* --- Text Elements --- */
a { font-family: "FSJoeyWeb-Regular"; }

/* --- Header Text --- */
h1 { font-family: "FSJoeyWeb-Medium"; font-weight: 400; }

h2 { margin: 0 0 15px; line-height: 1.2; }

h2 a { font-size: 0.875rem; }

h3 { margin: 0 0 12px; line-height: 1.2; }

p { font-size: 1rem; }

strong { font-family: "FSJoeyWeb-Bold"; font-weight: 400; }

/* --- List Items --- */
ul li { padding-bottom: 5px; }

ol li { padding-bottom: 5px; }

/* --- Table  Elements --- */
th { text-align: left; vertical-align: top; }

td { vertical-align: top; }

/* --- Form/Inputs --- */
legend { color: #414042; }

label { cursor: pointer; }

label.error, label.error2, label.dateError { margin: -5px 0 10px; padding: 0; border: none; font-family: "FSJoeyWeb-Regular"; font-weight: 400; color: #cc4b37; text-align: left; }

input[type=email]::-ms-clear, input[type=text]::-ms-clear { display: none; }

/* Submit */
input[type="tel"]:hover, input[type="tel"]:focus, input[type="tel"]:active, input[type="email"]:hover, input[type="email"]:focus, input[type="email"]:active, input[type="text"]:hover, input[type="text"]:focus, input[type="text"]:active { border: 1px solid #00338D; }

input[type="tel"].focusLevel, input[type="email"].focusLevel, input[type="text"].focusLevel { border: none; outline: none; }

input[type="search"]:hover, input[type="search"]:focus, input[type="search"]:active { border: 1px solid #00338D; }

input[type="search"]:focus { outline: none; }

input[type="number"] { padding: 0; }

input[type="number"]:hover, input[type="number"]:focus, input[type="number"]:active { border: 1px solid #00338D; }

input[type="number"]:focus { outline: none; }

input[type="radio"] + label:hover, input[type="radio"] + label:focus, input[type="radio"] + label:active { background-position: -43px -44px; }

input[type="radio"] + label:focus { outline: none; }

input[type="radio"]:checked + label { background-position: -87px 0; }

input[type="checkbox"] + label { padding-left: 35px; background-image: url("../files/images/backgrounds/bkg-checkbox.svg"); }

input[type="checkbox"] + label:hover, input[type="checkbox"] + label:focus, input[type="checkbox"] + label:active { background-position: -43px -44px; }

input[type="checkbox"] + label:focus { outline: none; }

input[type="checkbox"]:checked + label { background-position: -87px 0; }

input[type="submit"]:hover, input[type="submit"]:focus, input[type="submit"]:active { background-color: #518c28; }

input[type="submit"]:focus { outline: none; }

input[type="button"], button { font-size: 1.125rem; }

input[type="button"]:hover, input[type="button"]:focus, input[type="button"]:active, button:hover, button:focus, button:active { background-color: #518c28; }

input[type="button"]:focus, button:focus { outline: none; }

input[type="submit"][disabled] { background-color: #bbbbbb; }

input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus, input[type="submit"][disabled]:active { background-color: #bbbbbb; }

input[type="submit"][disabled]:focus { outline: none; }

button[disabled] { background-color: #bbbbbb; }

button[disabled]:hover, button[disabled]:focus, button[disabled]:active { background-color: #bbbbbb; }

button[disabled]:focus { outline: none; }

.btnLink { display: inline-block; width: auto; margin: 0; border-radius: 0; }

.btnLink:hover, .btnLink:focus, .btnLink:active { color: #FFFFFF; background-color: #518c28; text-decoration: none; }

.btnLink:focus { outline: none; }

input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="button"][disabled]:active { background: #bbbbbb; text-decoration: none; }

input[type="button"][disabled]:focus { outline: none; }

/* Select */
select { height: 50px; padding: 0 15px; margin-bottom: 5px; background: #FFFFFF url("../files/images/backgrounds/select-arrow.png") no-repeat; background-position: right 10px center; background-size: 11px 5px; border-radius: 0; border: 1px solid #a7a6a8; line-height: 1; text-indent: 0.001rem; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

select:hover, select:focus, select:active { border: 1px solid #00338D; }

select:focus { outline: none; }

select + label.error, select + label.error2, select + label.dateError { margin: 0 0 10px; }

iframe { border: 0; }

/* Error/Validation */
.error { border-color: #cc4b37; color: #cc4b37; }

.error h2 { color: #414141; }

input.error, select.error { border-color: #cc4b37; color: #333333; }

.error2 { border-color: #cc4b37; }

.error2 h2 { color: #414141; }

/* End Defaults */
/* Container
--------------------------------------------*/
.outerContainer { width: 100%; margin-top: 10px; background: #FFFFFF; }

@media screen and (max-width: 59.9375em) { .outerContainer { /* Only affects large-medium screens and smaller */ padding: 0 10px; } }

@media screen and (min-width: 48em) { .outerContainer { /* Only affects medium screens and up */ margin-top: 60px; } }

/* End Container */
/* Header
-----------------------------*/
.site-header { position: relative; max-width: inherit; margin: 0; padding: 17px 0 20px 0; background: #00338D; }

.site-header .site-logo { display: block; margin: 0 auto; width: 103px; height: 71px; overflow: hidden; background: url("../files/images/logos/nrma-header.png") no-repeat 0 0; background-size: 103px 71px; }

.site-header .site-logo span { display: inline-block; width: inherit; height: inherit; text-indent: -1000px; }

/* End Headers */
/* Footer
-----------------------------*/
footer { margin-top: 50px; }

@media screen and (max-width: 47.9375em) { footer { /* Only affects medium-small screens and smaller */ margin-top: 10px; } }

footer .site-footer { margin-bottom: 0; padding: 40px 10px 60px 10px; font-family: "FSJoeyWeb-Regular"; font-weight: 400; color: #FFFFFF; background: #00338D; }

footer .site-footer a { text-decoration: underline; color: #FFFFFF; }

footer .site-footer p { font-size: 0.8125rem; }

footer .site-footer ul { margin: 0; padding: 0; }

footer .site-footer ul li { display: inline-block; float: left; font-size: 0.8125rem; }

footer .site-footer ul li:after { content: "|"; display: inline-block; padding: 0 3px; }

footer .site-footer ul li:last-of-type:after { content: none; padding: 0; }

footer .site-footer .copyright { clear: both; padding-top: 35px; text-align: center; }

/* End Footer */
/* Progress Bar
-----------------------------*/
.progress-bar { height: 40px; background-color: #29c6ca; }

.siteNavigation { overflow: hidden; margin: 0 auto; text-align: center; }

.siteNavigation ol { display: inline-block; counter-reset: item; list-style-type: none; width: 100%; margin: 0; padding: 0; font-family: "FSJoeyWeb-Medium"; font-weight: 400; text-align: center; }

@media screen and (max-width: 47.9375em) { .siteNavigation ol { /* Only affects large-medium screens and smaller */ width: auto; } }

.siteNavigation ol li { float: left; display: block; margin: 0; padding: 11px 0 0 12px; width: 20%; height: 40px; background: #29c6ca url("../files/images/backgrounds/progress-arrow.png") no-repeat 0 0; font-size: 0.9375rem; background-size: 12px 40px; }

@media screen and (max-width: 47.9375em) { .siteNavigation ol li { /* Only affects large-medium screens and smaller */ width: auto; padding-left: 5px; background: none; } }

.siteNavigation ol li:last-of-type { background-image: url("../files/images/backgrounds/progress-arrow.png"), url("../files/images/backgrounds/progress-arrow.png"); background-repeat: no-repeat, no-repeat; background-position: 0 0, 100% 0; }

@media screen and (max-width: 47.9375em) { .siteNavigation ol li:last-of-type { /* Only affects large-medium screens and smaller */ background: none; } }

.siteNavigation ol li:before { content: counter(item) "."; counter-increment: item; color: #0b9ca0; }

.siteNavigation ol li span { padding: 0; line-height: 1; color: #0b9ca0; }

@media screen and (max-width: 47.9375em) { .siteNavigation ol li span { /* Only affects large-medium screens and smaller */ display: none; } }

.siteNavigation ol li.completed { background-color: #29c6ca; }

.siteNavigation ol li.completed:before { color: #FFFFFF; }

.siteNavigation ol li.completed a { padding: 0; line-height: 1; color: #FFFFFF; }

@media screen and (max-width: 47.9375em) { .siteNavigation ol li.completed a { /* Only affects large-medium screens and smaller */ display: none; } }

@media screen and (max-width: 47.9375em) { .siteNavigation ol li.selected { /* Only affects large-medium screens and smaller */ width: auto; } }

.siteNavigation ol li.selected:before { color: #FFFFFF; }

.siteNavigation ol li.selected em { padding: 0; line-height: 1; font-style: normal; color: #FFFFFF; }

/* End Progress Bar */
/* Article
-----------------------------*/
section.body-content { margin-bottom: 40px; padding-right: 0; padding-left: 0; background: #FFFFFF; /* Only affects large-medium screens and larger */ }

@media screen and (max-width: 47.9375em) { section.body-content { /* Only affects medium-small screens and smaller */ margin-bottom: 10px; } }

section { margin-bottom: 0; padding-bottom: 0; }

section:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }

section h2 { font-size: 1.25rem; font-family: "FSJoeyWeb-Medium"; font-weight: 400; }

.purchaseList .hint { margin: 0 0 20px; font-family: "FSJoeyWeb-Regular", "FSJoeyWeb-Regular", Helvetica, Roboto, Arial, sans-serif; font-weight: 500; color: #191919; }

.disclaimer { float: none; clear: both; margin-bottom: 40px; padding: 25px 20px 0; font-size: 0.8rem; line-height: 1.5; }

/* Payment information */
.summary-list { padding: 20px; margin-bottom: 25px; border: 1px solid #cecece; background: #f7f7f7; }

.summary-list h5.plan-name { font-family: "FSJoeyWeb-Medium"; color: #00338D; }

.summary-list ul.plan-list { margin: 0; }

.summary-list ul.plan-list li { padding: 10px 0; border-bottom: 1px solid #cecece; }

.summary-list ul.plan-list li:last-of-type { border-bottom: none; padding-bottom: 0; }

.summary-list ul.plan-list li .price { float: right; }

.summary-list ul.plan-list li .total { font-family: "FSJoeyWeb-Medium"; font-size: 1.25rem; text-transform: uppercase; }

/* Loader */
.page-loading { position: fixed; width: 100%; height: 100%; margin: 0; left: 0; top: 0; z-index: 10000; background-color: rgba(229, 229, 229, 0.75); }

.page-loading .loader { display: block; width: inherit; height: inherit; }

/* Loading Spinner */
.loader { height: 330px; padding: 50px 0 0; background: url("../files/images/backgrounds/bkg-loader.gif") no-repeat 50% 50%; background-size: 94px 94px; text-align: center; }

/* End Article */
/* Trip Summary
-----------------------------*/
aside.column, aside.columns { margin-bottom: 30px; padding: 0; }

@media screen and (min-width: 48em) { aside.column, aside.columns { margin-top: 41px; } }

/* Plan Summary Container */
.planSummary { margin-bottom: 15px; background: #f7f7f7; border: 1px solid #eae8e8; /* Trip Summary */ }

.planSummary h2 { overflow: hidden; margin: 0; padding: 15px; border-top: 1px solid #eae8e8; border-bottom: 1px solid #eae8e8; font-family: "FSJoeyWeb-Medium"; /* Only affects large-medium screens and smaller */ }

.planSummary h2:first-of-type { border-top: none; }

.planSummary h2 a { float: right; font-family: "FSJoeyWeb-Medium"; font-size: 1rem; color: #009BDA; margin-top: 4px; }

.planSummary ul { margin: 15px; }

.planSummary ul li { padding: 0 0 8px 0; font-family: "FSJoeyWeb-Medium"; font-size: 0.875rem; }

.planSummary ul li a { float: right; }

/* Your Costs */
.priceTable { margin: 15px 15px 0 15px; border: 0; border-collapse: collapse; font-family: "FSJoeyWeb-Medium"; font-size: 0.875rem; }

@media screen and (max-width: 47.9375em) { .priceTable { width: calc(100% - 30px); } }

@media screen and (min-width: 48em) { .priceTable { width: 186px; } }

@media screen and (min-width: 60em) { .priceTable { width: 180px; } }

.priceTable th { width: 65%; padding: 0 0 10px 0; font-weight: 400; }

.priceTable td { width: 35%; padding: 0 0 10px 0; text-align: right; }

.priceTable .total th, .priceTable .total td { padding: 0; padding-top: 12px; padding-bottom: 10px; border-top: 1px solid #eae8e8; font-family: "FSJoeyWeb-Bold"; color: #00338D; vertical-align: middle; }

.priceTable .total th { font-size: 0.875rem; }

.priceTable .total td { font-size: 1.25rem; }

.priceTable .total thead th { padding-bottom: 25px; }

.discountRow { color: #002b78; }

/* End Trip Summery */
aside .is-stuck { width: 100%; }

/* Button Well */
.buttonWell { margin-bottom: 30px; clear: both; /* Button Link/Button */ }

.buttonWell.special-offer { text-align: center; }

.buttonWell.special-offer .plan-options-link { display: block; margin: 15px 0 0 0; font-family: "FSJoeyWeb-Medium"; font-size: 1rem; }

.buttonWell.message-page { text-align: left; }

.buttonWell .primary-link, .buttonWell .btnHome { width: auto; height: 50px; margin-right: 0; padding-top: 9px; border: 0; font-family: "FSJoeyWeb-Medium"; font-weight: 400; font-size: 1.5rem; color: #fff; text-align: center; background-color: #5FA52F; transition: background-color 0.25s ease-out, color 0.25s ease-out; border-radius: 0; cursor: pointer; }

.buttonWell .primary-link:hover, .buttonWell .primary-link:focus, .buttonWell .primary-link:active, .buttonWell .btnHome:hover, .buttonWell .btnHome:focus, .buttonWell .btnHome:active { background-color: #518c28; text-decoration: none; }

.buttonWell .primary-link:focus, .buttonWell .btnHome:focus { outline: none; }

.buttonWell .primary-link.print, .buttonWell .btnHome.print { float: right; }

.buttonWell .secondary-link { width: auto; height: 50px; margin-left: 15px; padding: 0.75rem 0 0.75rem 0; border: 1px solid #5FA52F; font-family: "FSJoeyWeb-Regular"; font-weight: 400; color: #5FA52F; text-align: center; background-color: #fff; transition: background-color 0.25s ease-out, color 0.25s ease-out; border-radius: 0; cursor: pointer; }

.buttonWell .secondary-link:hover, .buttonWell .secondary-link:focus, .buttonWell .secondary-link:active { border-color: #518c28; text-decoration: none; }

.buttonWell .secondary-link:focus { outline: none; }

.buttonWell .btnLink { padding-top: 9px; background-color: #FFFFFF; border: 1px solid #00338D; font-family: "FSJoeyWeb-Medium"; font-weight: 400; color: #00338D; transition: background-color 0.25s ease-out, color 0.25s ease-out; }

@media screen and (max-width: 47.9375em) { .buttonWell .btnLink { /* Only affects large-medium screens and smaller */ display: block; clear: both; margin: 12px auto 0 auto; width: 100%; max-width: 100%; } }

.buttonWell .btnLink[disabled]:hover, .buttonWell .btnLink[disabled]:focus, .buttonWell .btnLink[disabled]:active { background: #002b78; text-decoration: none; }

.buttonWell .btnLink[disabled]:focus { outline: none; }

.buttonWell .btnLink:hover, .buttonWell .btnLink:focus, .buttonWell .btnLink:active { background-color: #0047c4; text-decoration: none; color: #FFFFFF; }

.buttonWell .btnLink:focus { outline: none; }

.buttonWell input[type="submit"] { display: inline-block; float: right; width: auto; height: 50px; min-width: 180px; font-size: 1.5rem; }

@media screen and (max-width: 47.9375em) { .buttonWell input[type="submit"] { /* Only affects large-medium screens and smaller */ display: block; float: none; margin: 0 auto; width: 100%; max-width: 100%; } }

.buttonWell a { display: inline-block; min-width: 180px; margin-right: 15px; font-family: "FSJoeyWeb-Bold"; }

/* Forms
-----------------------------*/
.purchaseList { list-style-type: none; margin: 0; padding: 0; }

.purchaseList > li.columns { padding-left: 0; }

.purchaseList > li.columns.end { padding-right: 0; }

.purchaseList > li.start { clear: left; }

.purchaseList p { margin-top: 10px; margin-bottom: 5px; }

/* Radio/Checkbox containers */
.radioList { overflow: hidden; clear: both; margin: 0; padding: 0; }

.radioList li { display: inline-block; padding: 0 20px 0 0; }

.radioList li:last-child { padding-right: 0; }

.radioList li:last-child label { border-radius: 0; }

.radioList label { display: inline-block; margin: 0; border: 0; border-radius: 0; text-align: center; text-indent: -20px; }

.checkList { margin: 0; padding: 0; }

.checkList li { padding: 0; }

.checkList input[type="radio"] + label { min-height: 0; }

.checkList input[type="checkbox"] + label { min-height: 0; }

input.dob { position: relative; z-index: 2; background: #FFFFFF url("../files/images/backgrounds/select-arrow.png") no-repeat; background-position: right 20px center; background-size: 10px 6px; white-space: nowrap; text-overflow: ellipsis; }

/* End Forms */
/* Qtip Overrides
-----------------------------*/
.help, .ajaxHelp { overflow: hidden; display: initial; width: 18px; height: 18px; margin: 0 0 0 5px; }

.help img, .ajaxHelp img { max-width: none; width: 18px; height: 18px; margin: 0; padding: 0; }

/* Qtip Rewrites/Benefit Popups */
.qtip-help { padding: 12px; background: #FFFFFF; box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.15); border: 0; border-radius: 0; font-size: 0.875rem; line-height: 1.1; font-family: "FSJoeyWeb-Regular"; font-weight: 500; color: #414042; }

@media screen and (min-width: 48em) { .qtip-help { /* Only affects medium screens and larger */ width: 550px; max-width: 550px; } }

.qtip-help h3 { margin-bottom: 10px; font-size: 1.25rem; }

.qtip-help h4 { font-size: 1.125rem; }

.qtip-help p { margin: 0 0 5px; line-height: 1.4; }

.qtip-help div { margin: 0 0 5px; line-height: 1.4; }

.qtip-help ul { margin: 0 0 5px; line-height: 1.4; list-style-type: disc; margin-left: 20px; }

.qtip-help ol { margin: 0 0 5px; line-height: 1.4; list-style-type: decimal; margin-left: 20px; }

.qtip-help img { width: auto; max-width: 100%; height: auto; }

.qtip-help .qtip-close { right: 10px; top: 12px; width: 20px; height: 20px; background: none; border: 0; }

.qtip-help .ui-icon-close { text-indent: -9999px; width: 20px; height: 20px; background: transparent url(../files/images/links/link-close.svg) no-repeat 0 0; }

@media screen and (max-width: 47.9375em) { .qtip { width: 100%; max-width: calc(100% - 20px); } }

.qtip-content { overflow-y: scroll; max-height: 200px; max-width: calc(100% - 20px); }

.qtip .qtip-tip { clip: rect(0, 0, 0, 0); }

.popup { width: 256px; margin: 10px auto 0; padding: 12px; background: #FFFFFF; box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.15); border: 0; border-radius: 0; font-size: 1.0rem; line-height: 1.25; font-family: "FSJoeyWeb-Regular"; font-weight: 500; color: #414042; display: block; }

.infoDateTable th { padding: 5px 15px; border-bottom: 1px solid #eae8e8; font-size: 1.4rem; text-align: center; vertical-align: top; }

.infoDateTable td { width: 50%; padding: 5px 15px; vertical-align: top; font-size: 1.2rem; }

.infoDateTable p { margin-bottom: 15px; }

.infoDateTable tr:first-child th { font-size: 1.4rem; }

/* End Qtip Overrides */