@font-face {
	font-family: 'BCSans';
	font-style: normal;
	src: url('../fonts/BCSans/BCSans-Regular.eot');
	src: url('../fonts/BCSans/BCSans-Regular.woff') format('woff'),
	url('../fonts/BCSans/BCSans-Regular.woff2') format('woff2'),
	url('../fonts/BCSans/BCSans-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'BCSans';
	font-style: italic;
	src: url('../fonts/BCSans/BCSans-Italic.eot');
	src: url('../fonts/BCSans/BCSans-Italic.woff') format('woff'),
	url('../fonts/BCSans/BCSans-Italic.woff2') format('woff2'),
	url('../fonts/BCSans/BCSans-Italic.ttf') format('truetype');
}

@font-face {
	font-family: 'BCSans';
	font-weight: 700;
	src: url('../fonts/BCSans/BCSans-Bold.eot');
	src: url('../fonts/BCSans/BCSans-Bold.woff') format('woff'),
	url('../fonts/BCSans/BCSans-Bold.woff2') format('woff2'),
	url('../fonts/BCSans/BCSans-Bold.ttf') format('truetype');
}

@font-face {
	font-family: 'BCSans';
	font-style: italic;
	font-weight: 700;
	src: url('../fonts/BCSans/BCSans-BoldItalic.eot');
	src: url('../fonts/BCSans/BCSans-BoldItalic.woff') format('woff'),
	url('../fonts/BCSans/BCSans-BoldItalic.woff2') format('woff2'),
	url('../fonts/BCSans/BCSans-BoldItalic.ttf') format('truetype');
}

body {
    margin: 0;
    font-family: BCSans,'Noto Sans',Verdana,Arial,sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #313132;
    text-align: left;
    background-color: #fff;
    min-height: 100vh;

    /* FOR ie
    // add height that is less than the min-height 
    // it can even be 1px, as long as it is less than the min-height
    */
    height: 1px;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; 

    -webkit-box-orient: vertical; 
    -webkit-box-direction: normal; 
       -ms-flex-direction: column; 
    flex-direction: column; 

    height: 100vh;
}



p, ol, ul {
    font-size: 1rem;
}

h1 {
    font-size: 1.8rem;
}
h2 {
    font-size: 1.5rem;
}
h3 {
    font-size: 1.2rem;
}
h4 {
	font-size: 1.1rem;
}

main ul li, main ol li {
    margin-bottom: 0.3em;
}



/************************************************
    LAYOUT 
*/
.header-container, .body-container, .footer-container, .breadcrumb-container, .navigation-main > .container { 
	max-width: 1320px; 
    margin: 0 auto; 
    width: 100%;
}
header .header-container { 

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    
	height: 80px;

    -webkit-box-flex: 1;         
            -ms-flex: 1 0 100%;        
                flex: 1 0 100%;

    width: 100%;
}
main, nav.breadcrumb {
    flex: auto;
    margin: 1em 10px 50px 10px;     
}
nav.breadcrumb {
    margin: 0 10px;   
}
.main .body-container, nav .breadcrumb-container {
    width: 100%;
}
footer .footer-container {

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack:start; 
       -ms-flex-pack:start; 
    justify-content: left;


    -webkit-box-orient: vertical; 
    -webkit-box-direction: normal; 
       -ms-flex-direction: column; 
    flex-direction: column;

    text-align: left;
}


@media screen and (min-width: 35em) {
    nav.breadcrumb {
        margin-left: 1.2em;
        margin-right: 1.2em;        
    }    
    main {
        margin: 1em 1.2em 2em 1.2em;
    }
}

@media screen and (min-width: 40em) {

    footer .footer-container {

        -webkit-box-pack:center;
        -ms-flex-pack: center;
        justify-content: center;

        text-align: center;
        /* min-height keeps PROD at the usual size while letting the non-prod
           build-info row expand the footer to fit (IASP-18887). */
        min-height: 46px;
    }

}




/************************************************ 
    KEYBOARD NAVIGATION - SKIP TO CONTENT
*/

a.skip-main {
    width: 1px;
    height: 1px;
    text-indent: -500px;
}
a.skip-main:focus, a.skip-main:active {
  
    width: 100%;
    height: 30px!important;

    color: #003366;
    background-color:#FCBA25;
    
    text-indent: 0px;

    margin: 0px;
    padding:5px;
 
    text-align:center;
    font-size:1em;
    z-index:-999;
}
      
.width-30px {
	width: 30px;
}   

.width-48px {
	width: 48px;
}   

.width-140px {
	width: 140px;
}   

.width-200px {
	width: 200px;
}   

.width-300px {
	width: 300px;
}   

.max-width-200px {
	max-width: 200px;
}   

.max-width-250px {
	max-width: 250px;
}   

.max-width-412px {
	max-width: 412px;
}
.display-none {
	display:none;
}

.margin-bottom-30px {
	margin-bottom: 30px;
}

.margin-bottom-200px {
	margin-bottom: 200px;
}


/************************************************
    HEADER 
*/
header {
	background-color: #003366;
	color: #fff;
	width: 100%;
	-webkit-box-shadow: 0 6px 8px -4px #b3b1b3;
	-moz-box-shadow: 0 6px 8px -4px #b3b1b3;
	box-shadow: 0 6px 8px -4px #b3b1b3;
}

header .banner {

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0px 10px;

    -webkit-box-orient: vertical; 
    -webkit-box-direction: normal; 
       -ms-flex-direction: column; 
    flex-direction: column;

    -webkit-box-align: flex-start; 
    -ms-flex-align: flex-start; 
    align-items:flex-start;

    flex-grow: 1;
}

header .other {
    margin-left: auto;


    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center; 
    -ms-flex-align: center; 
    align-items: center;
    /*flex-grow: 1;  */
    padding-right: 10px;
}

header .banner .title {
	font-family: BCSans, "Noto Sans", Verdana, Arial, sans-serif;
	font-weight: normal; /* 400 */
	margin: 0px;
	font-size: 1.2em;
}

header .banner .title a {
	color: #ffffff;
	text-decoration: none;
}

header .banner img { 
    margin: 10px 0px 5px 0px; 
    height: 30px; 
}

header a [class^="fas fa-"] {
    color: white;
    font-size: 1.4em;
    font-weight: bold;
    line-height: 1;
    padding: 5px;
    -webkit-font-smoothing: antialiased;
}

header .nav-btn {
    display: block;
    width: auto;
    margin: 0 0 0 auto;
    cursor: pointer;
}

header .other a {
	color: #fff;
}

header .other a.nav-link {
	color: #fff;
}

.navigation-main {
    display: none;
    position: absolute;
    top: 80px;
    color: #fcba19;
    background-color: #38598a;
    width: 100%;
    -webkit-box-shadow: 0 6px 8px -4px #b3b1b3;
    -moz-box-shadow: 0 6px 8px -4px #b3b1b3;
    box-shadow: 0 6px 8px -4px #b3b1b3;
}

.navigation-main .container {
	padding: 10px 0 10px 0;
}

.navigation-main .container ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0;
	color: #fff;
	list-style: none;
	margin-left: -25px;
}

.navigation-main .container ul li {
	margin: 5px 0;
}

.navigation-main .container ul li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-weight: normal; /* 400 */
	color: #fff;
	padding: 0 15px 0 15px;
	text-decoration: none;
}

.navigation-main .container ul li a:hover {
	text-decoration: underline;
}

.navigation-main .container ul .active {
    text-decoration: underline;
    font-weight: bold;
} 

a:focus{
    outline: 4px solid #3B99FC;
    outline-offset: 1px;
}

@media screen and (max-width: 767px) {
	.nav-login {
		display: none !important;
	}
	.nav-link {
		display: none;
	}
	.logged-in-user {
		display: none !important;
	}
	.navigation-main {
    z-index: 1;
}
}

@media screen and (min-width: 768px) {
	.mobile-only {
		display: none;
	}
	.navigation-main {
		display: block !important;
		position: inherit;
		z-index:1;
	}
	header .banner {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	header .banner .title {
		margin: 5px 5px 0 18px;
		font-size: 1.5em;;
	}
	header>.header-container>.banner>img {
		height: 45px;
	}
	.navigation-main .container ul {
		flex-direction: row;
		flex-wrap: wrap;  /* When Screen size between 769 - 886, #fullNav need some wrapping */
	}
	.navigation-main .container ul li {
		margin: 0;
	}
	.navigation-main .container ul li a {
		border-right: 1px solid #9b9b9b;
		padding: 0 2em 0 2em;
	}
	nav#fullNav.navigation-main .container ul li a {
		border-right: 1px solid #9b9b9b;
		padding: 0 1em 0 1em;
	}
	.navigation-main .container ul li:first-child a {
		padding-left: 0px;
	}
	header .nav-btn {
		display: none;
		width: auto;
		margin: 0 0 0 auto;
		cursor: pointer;
	}
}


@media screen and (min-width: 768px) and (max-width: 899px) {
	header h1 {
		font-size: calc(7px + 2.2vw);
		visibility: visible;
	}
}

@media screen and (min-width: 900px) {
	header h1 {
		font-size: 2.0em;
		visibility: visible;
	}
}

/************************************************
    FOOTER 
*/
footer {
    background-color: #036;
    border-top: 2px solid #fcba19;
    color: #fff;
    font-family: BCSans, 'Noto Sans', Verdana, Arial, sans-serif;
    position: relative;
}

footer ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0;
	color: #fff;
	list-style: none;
	height: 100%;
	padding: 0px 10px;
}

footer ul li {
	padding: 10px 0px;
}

footer ul li a {
	font-weight: normal;
	color: #fff;
	padding: 0px;
	text-decoration: none;;
}

footer a:hover {
	color: #fff !important;
	text-decoration: underline;
}

footer a:focus {
	outline: 4px solid hsl(211, 97%, 61%);
	outline-offset: 1px;
	color: #fff;
}

footer a:active {
	color: #fff;
}

@media screen and (min-width: 40em) {
	footer ul {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		flex-wrap: wrap;
		margin: 0;
		color: #fff;
		list-style: none;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 100%;
	}
	footer ul li {
		padding: 0px;
	}
	footer ul li a {
		border-right: 1px solid #4b5e7e;
		padding: 0px 15px;
	}
}

/************************************************ 
    MISC ALIGNMENT 
*/
.text-center {
	text-align: center !important;
}

.w-48 {
	width: 48% !important;
}

.w-50 {
	width: 50% !important;
}

.w-max-100 {
	max-width: 100%;
}

.d-lg-w-25 {
	width: 25%;
}

.d-flex-shrink {
	flex-shrink: 0;
}

.mr-20 {
	margin-right: 20px;
}

.mb-3 {
	margin-bottom: 3em;
}

hr.big {
	margin: 25px 0px !important;
}

.d-lg-flex {
	display: block;
}

.d-flex-align-items {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.d-flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (min-width: 768px) {
    .visible-xs {
        display:none;
    }
}

.small {
	font-size: 0.8rem;
	line-height: 0.8rem;
}

@media ( min-width : 40em) {
	.flex-container {
		display: flex;
	}
	.flex-container>div {
		padding-right: 40px;
		padding-bottom: 10px;
	}
	.w-max-225px {
		max-width: 225px;
	}
}

.d-col-lg-8, .d-col-lg-4, .d-col-lg-6, .d-col-sm-12 {
	width: 100%;
}

@media ( min-width : 50em) {
	.d-col-lg-6 {
		width: 48%;
	}
	.d-col-lg-8 {
		width: 65%
	}
	.d-col-lg-4 {
		width: 30%;
	}
	.d-lg-flex {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex !important;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: space-between;
	}
	.d-lg-flex.flex-parent>* {
		flex-basis: 100%;
	}
}

@media (max-width: 30em) {
    .d-sm-center {
        text-align: center;
    }
}

/************************************************ 
    BREADCRUMB 
*/
ol.breadcrumb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0px;
    list-style: none;
    padding-left: 0px;
}
.breadcrumb > li::after, .breadcrumb > li+li::after {
    content: ">";
    padding: 0 8px;
}




/************************************************
    HYPERLINKS 
*/
a {
	color: #144878;
	/* Note: accessiblity checker was flagging the bc gov recommended colour so wonder if we should update to a darker shade here */
	color: #1a5a96;
	text-decoration-thickness: max(1px, 0.0625rem);
	text-underline-offset: 0.1em;
}

a:hover {
	text-decoration-thickness: max(1px, 0.125rem);
	color: blue;
}

i.fa-external-link-alt {
	color: #1a5a96;
}

/************************************************ 
    BUTTONS 
*/
.bcsc-button.bcsc-primary {
    background: #036;
    border-color: #036;
    color: #fff;
    min-width: 150px;
    font-weight: 600;
}
.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}

.bcsc-button.nav-login {
    background: #fff;
    color: #036;
    font-weight: 600;
    min-width: 75px;
}

.btn {
    display: inline-block;
	box-sizing: content-box;
    font-weight: 400;
    color: #313132;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0.25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}


.bcsc-button:hover {
    text-decoration: underline;
    opacity: 0.80;
}
.bcsc-button:active {
    opacity: 1;
  }
.bcsc-button:focus {
    outline: 4px solid #3B99FC;
    outline-offset: 1px;
}

.btn-pad {
    margin-bottom: 1.3em;
}



.p-extra-space{
    margin-bottom: 1.5em;
}



/************************************************
    MAIN BODY
*/
main > .body-container > section {
    margin-bottom: 100px;
}

main > .body-container hr {
    display: block; height: 1px;
    border: 0; border-top: 1px solid #ccc;
    margin: 1em 0; padding: 0;
}


.highlight {

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;


    flex-direction: column-reverse;
    width: 100%;
    margin-bottom: 50px;
}

.tagline {
    width: 100%;
}

.tagline-image img {
    width: 80px;
}

.tagline-login-image {
    display: none;
}

.tagline > h1 {
    line-height: 1.4em;
    font-size: 2em;
}
.tagline > p {
    line-height: 1.5em;
    font-size: 1.2em;
}

.tagline>ul>li {
	line-height: 1.5em;
	font-size: 1.2em;
}

.tagline-login ul li {
    margin-bottom: .25em;
}




@media screen and (min-width: 35em) {
    .highlight{

        -webkit-box-orient: horizontal; 
        -webkit-box-direction: normal; 
           -ms-flex-direction: row; 
        flex-direction: row;

        margin-top: 20px; 
    }
    .tagline {
        padding: 0px;
    }
    .tagline-image {
        padding: 5px 50px;
    }  
   
   .tagline-image img {
        width: 150px;
    }
    
    .tagline-login {
        padding-left: 0px;
    }
}


@media screen and (min-width: 60em) {
    .highlight{
        background-color: #f5f5f5;
        padding-top: 1em;
        padding-bottom: 1em;

        -webkit-box-align: center; 
        -ms-flex-align: center; 
        align-items: center;
    }
    .tagline {
        padding-left: 5em;
    }
    .tagline-image {
        padding: 0 10em;
    }  
    .tagline-image img {
        width: 180px;
    }  
    
    .tagline-login {
        padding-left: 5em;
    }
    .tagline-login-image {
        padding: 0px 5em;
        display:block;
    }  
    .tagline-login-image img {
        width: 400px;
    }
}

@media screen and (min-width: 80em) {
	.highlight {
		background-color: #f5f5f5;
		padding-top: 2em;
		padding-bottom: 2em;
	}
	.tagline {
		padding-left: 10em;
	}
	.tagline-image {
		padding: 0px 200px;
	}
	.tagline-image img {
		width: 220px;
	}
	.tagline-login {
		padding-left: 5em;
	}
	.tagline-login-image {
		padding: 0px 100px;
	}
	.tagline-login-image img {
		width: 500px;
	}
}

.steps-to-login-example {
    background-color: #e9e8e8;
    margin-bottom: 2em;
}

ol.steps-to-login {
    margin: 0;
    padding-left: 0;
    list-style: none;
    counter-reset: how-it-works-step;
}

ol.steps-to-login > li {
    position: relative;
    margin: 0 0 16px 0;
    padding-left: 1.8em;
    line-height: 1.45;
    counter-increment: how-it-works-step;
}

ol.steps-to-login > li::before {
    content: counter(how-it-works-step);
    position: absolute;
    left: 0;
    font-weight: 700;
    font-size: 1.15rem;
}




.card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-self: center;

    /* /add width 100% to the parent of the paragraph element */
    width: 100%; 
    /* /or you can set max-width 100% to the parent of the paragraph */
    max-width: 100%;

}
.card .thumbnail {
    padding-right: 10px;
    
}
.card .caption {
    /* /add width 100% to the parent of the paragraph element */
    width: 100%; 
    /* /or you can set max-width 100% to the parent of the paragraph */
    max-width: 100%;
}
.card .thumbnail img {
    max-width: 100px;
}
.card .caption  h3 {
    line-height: 1em;
    margin: 0px 0px 5px 0px;
    font-size: 1.1em;
}
.card .caption  p {
    margin: 0px 0px 10px 0px;
}
@media screen and (min-width: 30em) {
    .card .thumbnail img {
        max-width: 150px;
    }
}
@media screen and (min-width: 60em) {
    .card .thumbnail img {
        max-width: 200px;
    }
}


.privacy-highlight {
    border: solid 1px #cccccc; 
    border-radius: 25px;
    padding: 25px;
    margin-top: 80px;
    margin-left: 0px;
}
.privacy-highlight p {
    margin: 0px 0px 20px 0px;
}
@media screen and (min-width: 30em) {
    .privacy-highlight {
        margin-top: 0px;
    } 
}




/************************************************
    BANNER
*/
.bc-gov-alertbanner-warning {
    background-color: #f9f1c6;
    border-color: #faebcc;
    color: #6c4a00;
}
.bc-gov-alertbanner {
    border: 1px solid transparent;
    border-radius: 4px;
    font-weight: 700;
    margin-bottom: 1em; /*20px;*/
    padding: 1em; /* 15px;*/
	word-break: normal;
	overflow-wrap: anywhere;
}
.bc-gov-alertbanner-warning p {
    color: #6c4a00;
}
.bc-gov-alertbanner p {
    font-size: 1.1em;
    margin: 0;
    padding-left: 35px;
}
.bc-gov-alertbanner-warning a {
    color: #6c4a00;
}
.bc-gov-alertbanner a {
    text-decoration: underline;
}
.bc-gov-alertbanner-warning:before {
    content: "\f071";
}

.bc-gov-alertbanner:before {
    float: left;
    font-family: 'Font Awesome 5 Free';
    font-size: larger;
    font-style: normal;
    line-height: 1;
    margin-right: 10px;
    position: relative;
    top: 3px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

.bc-gov-alertbanner-info {
	background-color: #d9eaf7;
}

.bc-gov-alertbanner-info:before {
	content: "\f05a";
}

.bc-gov-alertbanner-info a {
	color: #1a5a96;
}


.bc-gov-alertbanner-error {
	background-color: #f2dede;
    color: #a12622;
}

.bc-gov-alertbanner-error:before {
	content: "\f06a";
}

.bc-gov-alertbanner-error a {
	color: #843534;
}

.callout {
    padding: 5px 15px;
    border-left: 10px solid #FCBA25;
    margin: 10px 0;
    background-color: #f2f2f2;
}

/**********************************************/


.alert {
  padding: 15px;  
  border: 1px solid transparent;
  border-radius: 4px;
  flex: auto; 
}

.alert h4 {
  margin-top: 0;
  color: inherit;
}

.alert .alert-link {
  font-weight: bold;
}

.alert > p,
.alert > ul {
  margin-bottom: 0;
}

.alert > p + p {
  margin-top: 5px;
}

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}

.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}

.alert-success hr {
  border-top-color: #c9e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}

.alert-info hr {
  border-top-color: #a6e1ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}

.alert-warning hr {
  border-top-color: #f7e1b5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}

.alert-danger hr {
  border-top-color: #e4b9c0;
}

.alert-danger .alert-link {
  color: #843534;
}

.alert-success:before {
  position: relative;
  top: 1px;
  margin-right: 10px;
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -moz-osx-font-smoothing: grayscale;
  content: "\f058";
  font-size: larger;
  font-weight: 900;
}

.alert-info:before {
  position: relative;
  top: 1px;
  margin-right: 10px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -moz-osx-font-smoothing: grayscale;
  content: "\e086";
  font-weight: 900;
}

.alert-warning:before {
  position: relative;
  top: 1px;
  margin-right: 10px;
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -moz-osx-font-smoothing: grayscale;
  content: "\f071";
  font-weight: 900;
}

.alert-danger:before {
  position: relative;
  top: 1px;
  margin-right: 10px;
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -moz-osx-font-smoothing: grayscale;
  content: "\f06a";
  font-weight: 900;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
button.close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
}

.close {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: .2;
}

/*********************************
 * Back to top button
 */
img.back-to-top {
	position: fixed;
	right: 10px;
	bottom: 10px;
	opacity: 0.75;
	z-index: 1100;
	cursor: pointer;
	display: none;
}

img.back-to-top.footer-overlap {
	position: absolute;
	top: -63px;
}

img.back-to-top:hover {
	opacity: 0.90;
}

/************************************
* Setup Instruction
************************************/
.small {
	font-size: 0.8rem;
	line-height: 0.8rem;
}

@media ( min-width : 40em) {
	.flex-container {
		display: flex;
	}
	
	.flex-container > div {
		padding-right: 40px;		
		padding-bottom: 10px;
	}

	.w-max-225px {
		max-width: 225px;
	}
}

.margin-bottom-10{
	margin-bottom:10px;
}

.flex-parent {
	display: flex;
	flex: 1 100%;
	row-gap: 20px;
	flex-direction: column;
}

.flex-parent>* {
	flex: 1;
}

@media screen and (min-width: 767px) {
	.flex-parent {
		justify-content: space-between;
		align-items: stretch;
		column-gap: 30px;
		flex-direction: row;
	}
	.flex-parent>* {
		flex: 1;
	}
}

button.setup-option-selection {
	border: solid 5px #1a5a96;
	border-radius: 10px;
	padding: 20px 10px;
	background-color: #ffffff;
	text-align: left;
	cursor: pointer;
	display: inherit;
}

button.setup-option-selection:hover, button.setup-option-selection:focus,
	button.setup-option-selection:active {
	color: #003366;
	border-color: #3899F9;
	outline: 4px solid #3B99FC;
}

button.setup-option-selection h3 {
	padding-top: 0px;
	margin-top: 0px;
	color: #1a5a96;
	text-decoration: underline;
	text-decoration-thickness: max(1px, 0.0625rem);
	text-underline-offset: 0.1em;
}

button.setup-option-selection h3:hover {
	color: #1a5a96;
	text-decoration: underline;
	text-decoration-thickness: max(1px, 0.0925rem);
	text-underline-offset: 0.1em;
}

button.setup-option-selection p {
	line-height: 1rem;
	color: #000000;
	margin-block-start: 0.7rem;
	margin-block-end: 0.7rem;
}

.setup-option-container {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	column-gap: 10px;
}

/**********************************
* Feedback in Account home top right
**********************************/
.topRightFeedback{
	display: flex;
	flex-direction: row;
	padding-bottom: 1em;
}
.topRightFeedback div{
	display:flex; align-items:center; margin-left: auto;
}
.topRightFeedback div img{
	width: 25px;
}

/**********************************
* Feedback section
**********************************/
.feedback{
	margin-bottom: auto !important;
}
.feedback div{
	align-items:center;	
}

.feedback-image-div{
	padding-right:20px;
}
.feedback-text-div{
	margin-right: auto;
}

.checkbox {
	display: block;
	position: relative;
	padding-left: 30px;
	margin-bottom: 12px;
	cursor: pointer;
	Font-family: 'BCSans', 'Noto Sans', Verdana, Arial, sans-serif;
	font-size: 16px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.checkbox input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.checkmark {
	position: absolute;
	top: 3px;
	left: 2px;
	height: 16px;
	width: 16px;
	outline: 2px solid #606060;
}

.checkbox input:checked ~ .checkmark {
	background-color: #606060;
}

.checkmark:after {
	content: "\2713";
	color: white;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
}

.checkbox input:checked ~ .checkmark:after {
	display: block;
}

.radio {
	display: block;
	position: relative;
	padding-left: 30px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 16px;
	font-family: 'BCSans', 'Noto Sans', Verdana, Arial, sans-serif;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.radio input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.dot {
	position: absolute;
	top: 1px;
	left: 0;
	height: 16px;
	width: 16px;
	border-radius: 50%;
	border: 2px solid #606060;
}

.radio input:checked ~ .dot {
	background-color: #ffffff;
}

.radio input:focus ~ .dot {
	outline: 4px solid #3B99FC;
	outline-offset: 1px;
}

.dot:after {
	content: "";
	position: absolute;
	display: none;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #606060;
	transform: translate(-50%, -50%);
}

.radio input:checked ~ .dot:after {
	display: block;
}

.bcsc-modal {
	display: none;
	position: fixed;
	z-index: 9999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgb(0,0,0);
	background-color: rgba(0,0,0,0.4);
}

.bcsc-modal-content {
	background-color: #fff;
	margin: 15% auto;
	padding: 20px;
	border: 1px solid #888;
	width: 80%;	
}

.bcsc-modal-close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;	
}

.bcsc-modal-close:hover, .bcsc-modal-close:focus {
	color: #000;
	text-decoration: none;
	cursor: pointer;
}

.modal-body { 
	padding: 2px 16px;
}

.bcsc-modal-header {
	padding: 2px 16px;
	background-color: #ffffff;
	color: #000;
}

.bcsc-modal-footer {
	padding: 2px 16px;
	background-color: #fff;
	color: #000;
}

lex-options-item {    padding-top: 30px;}
@media ( min-width : 64em) {
  .flex-options-container {        
    display: flex;        
    gap: 20px;    
  }    
  .flex-options-container > * { flex: 1; }    
  .flex-options-item { 
    border: solid 1px #ccc;        
    padding: 30px 50px;    
  }
}

.tou ul>li {
	padding-left: 15px;
	background: url("../Gov-2.0/images/bullet.png") no-repeat scroll 0 8px transparent;
	margin-bottom: 3px;
	list-style-type: none !important;
}

/* Bootstrap keeps .invalid-feedback hidden until an .is-invalid sibling.
   These forms mark the wrapper .has-error instead. */
.has-error .invalid-feedback {
	display: block;
}
